blob: 834f88f68829c177357f434e06c5c502498e0162 [file] [log] [blame]
Mukul Sharmad75a6672017-06-22 15:40:53 +05301/*
2 * Copyright (c) 2017 The Linux Foundation. All rights reserved.
3 *
4 * Permission to use, copy, modify, and/or distribute this software for
5 * any purpose with or without fee is hereby granted, provided that the
6 * above copyright notice and this permission notice appear in all
7 * copies.
8 *
9 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
10 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
11 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
12 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
13 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
14 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
15 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
16 * PERFORMANCE OF THIS SOFTWARE.
17 */
18/**
19 * DOC: Target interface file for pmo component to
20 * Implement api's which shall be used by pmo component
21 * in target if internally.
22 */
23
24#include "target_if_pmo.h"
25#include "wlan_pmo_common_public_struct.h"
26
27void target_if_pmo_register_tx_ops(struct wlan_pmo_tx_ops *pmo_tx_ops)
28{
29 if (!pmo_tx_ops) {
30 target_if_err("pmo_tx_ops is null");
31 return;
32 }
33
34 pmo_tx_ops->send_arp_offload_req =
35 target_if_pmo_send_arp_offload_req;
36 pmo_tx_ops->send_conf_hw_filter_req =
37 target_if_pmo_conf_hw_filter;
38 pmo_tx_ops->send_ns_offload_req =
39 target_if_pmo_send_ns_offload_req;
40 pmo_tx_ops->send_enable_wow_wakeup_event_req =
41 target_if_pmo_enable_wow_wakeup_event;
42 pmo_tx_ops->send_disable_wow_wakeup_event_req =
43 target_if_pmo_disable_wow_wakeup_event;
44 pmo_tx_ops->send_add_wow_pattern =
45 target_if_pmo_send_wow_patterns_to_fw;
Mukul Sharma0c1c3792017-11-02 17:08:23 +053046 pmo_tx_ops->del_wow_pattern =
47 target_if_pmo_del_wow_patterns_to_fw;
Mukul Sharmad75a6672017-06-22 15:40:53 +053048 pmo_tx_ops->send_enhance_mc_offload_req =
49 target_if_pmo_send_enhance_mc_offload_req;
50 pmo_tx_ops->send_set_mc_filter_req =
51 target_if_pmo_set_mc_filter_req;
52 pmo_tx_ops->send_clear_mc_filter_req =
53 target_if_pmo_clear_mc_filter_req;
Poddar, Siddarthf7c49e72017-09-28 17:13:25 +053054 pmo_tx_ops->get_multiple_mc_filter_support =
55 target_if_pmo_get_multiple_mc_filter_support;
56 pmo_tx_ops->send_set_multiple_mc_filter_req =
57 target_if_pmo_set_multiple_mc_filter_req;
58 pmo_tx_ops->send_clear_multiple_mc_filter_req =
59 target_if_pmo_clear_multiple_mc_filter_req;
Mukul Sharmad75a6672017-06-22 15:40:53 +053060 pmo_tx_ops->send_ra_filter_req =
61 target_if_pmo_send_ra_filter_req;
62 pmo_tx_ops->send_gtk_offload_req =
63 target_if_pmo_send_gtk_offload_req;
64 pmo_tx_ops->send_get_gtk_rsp_cmd =
65 target_if_pmo_send_gtk_response_req;
66 pmo_tx_ops->send_action_frame_pattern_req =
67 target_if_pmo_send_action_frame_patterns;
68 pmo_tx_ops->send_lphb_enable =
69 target_if_pmo_send_lphb_enable;
70 pmo_tx_ops->send_lphb_tcp_params =
71 target_if_pmo_send_lphb_tcp_params;
72 pmo_tx_ops->send_lphb_tcp_filter_req =
73 target_if_pmo_send_lphb_tcp_pkt_filter;
74 pmo_tx_ops->send_lphb_upd_params =
75 target_if_pmo_send_lphb_udp_params;
76 pmo_tx_ops->send_lphb_udp_filter_req =
77 target_if_pmo_send_lphb_udp_pkt_filter;
78 pmo_tx_ops->send_vdev_param_update_req =
79 target_if_pmo_send_vdev_update_param_req;
80 pmo_tx_ops->send_vdev_sta_ps_param_req =
81 target_if_pmo_send_vdev_ps_param_req;
82 pmo_tx_ops->psoc_update_wow_bus_suspend =
83 target_if_pmo_psoc_update_bus_suspend;
84 pmo_tx_ops->psoc_get_host_credits =
85 target_if_pmo_psoc_get_host_credits;
86 pmo_tx_ops->psoc_get_pending_cmnds =
87 target_if_pmo_psoc_get_pending_cmnds;
88 pmo_tx_ops->update_target_suspend_flag =
89 target_if_pmo_update_target_suspend_flag;
90 pmo_tx_ops->psoc_send_wow_enable_req =
91 target_if_pmo_psoc_send_wow_enable_req;
92 pmo_tx_ops->psoc_send_supend_req =
93 target_if_pmo_psoc_send_suspend_req;
94 pmo_tx_ops->psoc_set_runtime_pm_in_progress =
95 target_if_pmo_set_runtime_pm_in_progress;
96 pmo_tx_ops->psoc_get_runtime_pm_in_progress =
97 target_if_pmo_get_runtime_pm_in_progress;
98 pmo_tx_ops->psoc_send_host_wakeup_ind =
99 target_if_pmo_psoc_send_host_wakeup_ind;
100 pmo_tx_ops->psoc_send_target_resume_req =
101 target_if_pmo_psoc_send_target_resume_req;
Will Huang3cd2b7c2017-11-17 13:16:56 +0800102 pmo_tx_ops->psoc_send_d0wow_enable_req =
103 target_if_pmo_psoc_send_d0wow_enable_req;
104 pmo_tx_ops->psoc_send_d0wow_disable_req =
105 target_if_pmo_psoc_send_d0wow_disable_req;
Mukul Sharmad75a6672017-06-22 15:40:53 +0530106 pmo_tx_ops->send_set_pkt_filter =
107 target_if_pmo_send_pkt_filter_req;
108 pmo_tx_ops->send_clear_pkt_filter =
109 target_if_pmo_clear_pkt_filter_req;
110
111}
112