blob: 05c4e1089d2ae32ba672154afafec0b1a63b2289 [file] [log] [blame]
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001/*
Kiran Kumar Lokeredecad512017-12-15 15:43:32 -08002 * Copyright (c) 2012-2018 The Linux Foundation. All rights reserved.
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003 *
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004 * 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
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080019#ifndef WLAN_QCT_WMA_H
20#define WLAN_QCT_WMA_H
21
22#include "ani_global.h"
23
24#include "wma_api.h"
25#include "wma_tgt_cfg.h"
26#include "i_cds_packet.h"
27
28#define IS_MCC_SUPPORTED 1
Manikandan Mohan1dd8b5d2017-04-18 15:54:09 -070029#define IS_FEATURE_SUPPORTED_BY_FW(feat_enum_value) \
30 wma_get_fw_wlan_feat_caps(feat_enum_value)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080031
32#define IS_ROAM_SCAN_OFFLOAD_FEATURE_ENABLE 1
33
34#define IS_IBSS_HEARTBEAT_OFFLOAD_FEATURE_ENABLE 1
35
36#ifdef FEATURE_WLAN_TDLS
37#define IS_ADVANCE_TDLS_ENABLE 0
38#endif
39
Anurag Chouhanfb54ab02016-02-18 18:00:46 +053040#define WMA_NVDownload_Start(x) ({ QDF_STATUS_SUCCESS; })
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080041
42#define DPU_FEEDBACK_UNPROTECTED_ERROR 0x0F
43
44#define WMA_GET_RX_MAC_HEADER(pRxMeta) \
45 (tpSirMacMgmtHdr)(((t_packetmeta *)pRxMeta)->mpdu_hdr_ptr)
46
47#define WMA_GET_RX_MPDUHEADER3A(pRxMeta) \
48 (tpSirMacDataHdr3a)(((t_packetmeta *)pRxMeta)->mpdu_hdr_ptr)
49
50#define WMA_GET_RX_MPDU_HEADER_LEN(pRxMeta) \
51 (((t_packetmeta *)pRxMeta)->mpdu_hdr_len)
52
53#define WMA_GET_RX_MPDU_LEN(pRxMeta) \
54 (((t_packetmeta *)pRxMeta)->mpdu_len)
55
56#define WMA_GET_RX_PAYLOAD_LEN(pRxMeta) \
57 (((t_packetmeta *)pRxMeta)->mpdu_data_len)
58
59#define WMA_GET_RX_TSF_DELTA(pRxMeta) \
60 (((t_packetmeta *)pRxMeta)->tsf_delta)
61
62#define WMA_GET_RX_MAC_RATE_IDX(pRxMeta) 0
63
64#define WMA_GET_RX_MPDU_DATA(pRxMeta) \
65 (((t_packetmeta *)pRxMeta)->mpdu_data_ptr)
66
67#define WMA_GET_RX_MPDU_HEADER_OFFSET(pRxMeta) 0
68
69#define WMA_GET_RX_UNKNOWN_UCAST(pRxMeta) 0
70
71#define WMA_GET_RX_CH(pRxMeta) \
72 (((t_packetmeta *)pRxMeta)->channel)
73
74#define WMA_IS_RX_BCAST(pRxMeta) 0
75
76#define WMA_GET_RX_FT_DONE(pRxMeta) 0
77
78#define WMA_GET_RX_DPU_FEEDBACK(pRxMeta) \
79 (((t_packetmeta *)pRxMeta)->dpuFeedback)
80
81#define WMA_GET_RX_BEACON_SENT(pRxMeta) 0
82
83#define WMA_GET_RX_TSF_LATER(pRxMeta) 0
84
85#define WMA_GET_RX_TIMESTAMP(pRxMeta) \
86 (((t_packetmeta *)pRxMeta)->timestamp)
87
88#define WMA_IS_RX_IN_SCAN(pRxMeta) \
89 (((t_packetmeta *)pRxMeta)->scan)
90
91#define WMA_GET_OFFLOADSCANLEARN(pRxMeta) \
92 (((t_packetmeta *)pRxMeta)->offloadScanLearn)
93#define WMA_GET_ROAMCANDIDATEIND(pRxMeta) \
94 (((t_packetmeta *)pRxMeta)->roamCandidateInd)
95#define WMA_GET_SESSIONID(pRxMeta) \
96 (((t_packetmeta *)pRxMeta)->sessionId)
97#define WMA_GET_SCAN_SRC(pRxMeta) \
98 (((t_packetmeta *)pRxMeta)->scan_src)
99
100#ifdef FEATURE_WLAN_EXTSCAN
101#define WMA_IS_EXTSCAN_SCAN_SRC(pRxMeta) \
102 ((((t_packetmeta *)pRxMeta)->scan_src) == WMI_MGMT_RX_HDR_EXTSCAN)
103#define WMA_IS_EPNO_SCAN_SRC(pRxMeta) \
104 ((((t_packetmeta *)pRxMeta)->scan_src) & WMI_MGMT_RX_HDR_ENLO)
105#endif /* FEATURE_WLAN_EXTSCAN */
106
107#define WMA_GET_RX_SNR(pRxMeta) \
108 (((t_packetmeta *)pRxMeta)->snr)
109
110#define WMA_GET_RX_RFBAND(pRxMeta) 0
111
Deepak Dhamdhere68929ec2015-08-05 15:16:35 -0700112#define WMA_MAX_TXPOWER_INVALID 127
113/* rssi value normalized to noise floor of -96 dBm */
114#define WMA_GET_RX_RSSI_NORMALIZED(pRxMeta) \
115 (((t_packetmeta *)pRxMeta)->rssi)
116
117/* raw rssi based on actual noise floor in hardware */
118#define WMA_GET_RX_RSSI_RAW(pRxMeta) \
119 (((t_packetmeta *)pRxMeta)->rssi_raw)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800120
Yingying Tang95409972016-10-20 15:16:15 +0800121/*
122 * the repeat_cnt is reserved by FW team, the current value
123 * is always 0xffffffff
124 */
125#define WMI_WOW_PULSE_REPEAT_CNT 0xffffffff
126
127
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800128/* WMA Messages */
129#define WMA_MSG_TYPES_BEGIN SIR_HAL_MSG_TYPES_BEGIN
130#define WMA_ITC_MSG_TYPES_BEGIN SIR_HAL_ITC_MSG_TYPES_BEGIN
131#define WMA_RADAR_DETECTED_IND SIR_HAL_RADAR_DETECTED_IND
132
133#define WMA_ADD_STA_REQ SIR_HAL_ADD_STA_REQ
134#define WMA_ADD_STA_RSP SIR_HAL_ADD_STA_RSP
135#define WMA_ADD_STA_SELF_RSP SIR_HAL_ADD_STA_SELF_RSP
136#define WMA_DELETE_STA_REQ SIR_HAL_DELETE_STA_REQ
137#define WMA_DELETE_STA_RSP SIR_HAL_DELETE_STA_RSP
138#define WMA_ADD_BSS_REQ SIR_HAL_ADD_BSS_REQ
139#define WMA_ADD_BSS_RSP SIR_HAL_ADD_BSS_RSP
140#define WMA_DELETE_BSS_REQ SIR_HAL_DELETE_BSS_REQ
Deepak Dhamdhere2dae1bd2016-10-27 10:58:29 -0700141#define WMA_DELETE_BSS_HO_FAIL_REQ SIR_HAL_DELETE_BSS_HO_FAIL_REQ
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800142#define WMA_DELETE_BSS_RSP SIR_HAL_DELETE_BSS_RSP
Deepak Dhamdhere2dae1bd2016-10-27 10:58:29 -0700143#define WMA_DELETE_BSS_HO_FAIL_RSP SIR_HAL_DELETE_BSS_HO_FAIL_RSP
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800144#define WMA_SEND_BEACON_REQ SIR_HAL_SEND_BEACON_REQ
145#define WMA_SEND_PROBE_RSP_TMPL SIR_HAL_SEND_PROBE_RSP_TMPL
146
147#define WMA_SET_BSSKEY_REQ SIR_HAL_SET_BSSKEY_REQ
148#define WMA_SET_BSSKEY_RSP SIR_HAL_SET_BSSKEY_RSP
149#define WMA_SET_STAKEY_REQ SIR_HAL_SET_STAKEY_REQ
150#define WMA_SET_STAKEY_RSP SIR_HAL_SET_STAKEY_RSP
151#define WMA_UPDATE_EDCA_PROFILE_IND SIR_HAL_UPDATE_EDCA_PROFILE_IND
152
153#define WMA_UPDATE_BEACON_IND SIR_HAL_UPDATE_BEACON_IND
154#define WMA_UPDATE_CF_IND SIR_HAL_UPDATE_CF_IND
155#define WMA_CHNL_SWITCH_REQ SIR_HAL_CHNL_SWITCH_REQ
156#define WMA_ADD_TS_REQ SIR_HAL_ADD_TS_REQ
157#define WMA_DEL_TS_REQ SIR_HAL_DEL_TS_REQ
158
159#define WMA_MISSED_BEACON_IND SIR_HAL_MISSED_BEACON_IND
160
161#define WMA_ENTER_PS_REQ SIR_HAL_ENTER_PS_REQ
162#define WMA_EXIT_PS_REQ SIR_HAL_EXIT_PS_REQ
163
Kiran Kumar Lokere5798bfa2017-04-27 20:49:39 -0700164#define WMA_HIDDEN_SSID_RESTART_RSP SIR_HAL_HIDDEN_SSID_RESTART_RSP
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800165#define WMA_SWITCH_CHANNEL_RSP SIR_HAL_SWITCH_CHANNEL_RSP
166#define WMA_P2P_NOA_ATTR_IND SIR_HAL_P2P_NOA_ATTR_IND
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800167#define WMA_PWR_SAVE_CFG SIR_HAL_PWR_SAVE_CFG
168#define WMA_REGISTER_PE_CALLBACK SIR_HAL_REGISTER_PE_CALLBACK
169
170#define WMA_IBSS_STA_ADD SIR_HAL_IBSS_STA_ADD
Manikandan Mohan1dd8b5d2017-04-18 15:54:09 -0700171#define WMA_TIMER_ADJUST_ADAPTIVE_THRESHOLD_IND SIR_HAL_TIMER_ADJUST_ADAPTIVE_THRESHOLD_IND
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800172#define WMA_SET_LINK_STATE SIR_HAL_SET_LINK_STATE
173#define WMA_SET_LINK_STATE_RSP SIR_HAL_SET_LINK_STATE_RSP
174#define WMA_SET_STA_BCASTKEY_REQ SIR_HAL_SET_STA_BCASTKEY_REQ
175#define WMA_SET_STA_BCASTKEY_RSP SIR_HAL_SET_STA_BCASTKEY_RSP
176#define WMA_ADD_TS_RSP SIR_HAL_ADD_TS_RSP
177#define WMA_DPU_MIC_ERROR SIR_HAL_DPU_MIC_ERROR
178#define WMA_TIMER_CHIP_MONITOR_TIMEOUT SIR_HAL_TIMER_CHIP_MONITOR_TIMEOUT
179#define WMA_TIMER_TRAFFIC_ACTIVITY_REQ SIR_HAL_TIMER_TRAFFIC_ACTIVITY_REQ
180#define WMA_TIMER_ADC_RSSI_STATS SIR_HAL_TIMER_ADC_RSSI_STATS
181#define WMA_TIMER_TRAFFIC_STATS_IND SIR_HAL_TRAFFIC_STATS_IND
182
183#ifdef WLAN_FEATURE_11W
184#define WMA_EXCLUDE_UNENCRYPTED_IND SIR_HAL_EXCLUDE_UNENCRYPTED_IND
185#endif
186
187#ifdef FEATURE_WLAN_ESE
188#define WMA_TSM_STATS_REQ SIR_HAL_TSM_STATS_REQ
189#define WMA_TSM_STATS_RSP SIR_HAL_TSM_STATS_RSP
190#endif
191
Sandeep Puligillae0875662016-02-12 16:09:21 -0800192#define WMA_HT40_OBSS_SCAN_IND SIR_HAL_HT40_OBSS_SCAN_IND
193
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800194#define WMA_SET_MIMOPS_REQ SIR_HAL_SET_MIMOPS_REQ
195#define WMA_SET_MIMOPS_RSP SIR_HAL_SET_MIMOPS_RSP
196#define WMA_SYS_READY_IND SIR_HAL_SYS_READY_IND
197#define WMA_SET_TX_POWER_REQ SIR_HAL_SET_TX_POWER_REQ
198#define WMA_SET_TX_POWER_RSP SIR_HAL_SET_TX_POWER_RSP
199#define WMA_GET_TX_POWER_REQ SIR_HAL_GET_TX_POWER_REQ
200
201/* Messages to support transmit_halt and transmit_resume */
202#define WMA_TRANSMISSION_CONTROL_IND SIR_HAL_TRANSMISSION_CONTROL_IND
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800203
204#define WMA_ENABLE_UAPSD_REQ SIR_HAL_ENABLE_UAPSD_REQ
205#define WMA_DISABLE_UAPSD_REQ SIR_HAL_DISABLE_UAPSD_REQ
206
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800207/* / PE <-> HAL statistics messages */
208#define WMA_GET_STATISTICS_REQ SIR_HAL_GET_STATISTICS_REQ
209#define WMA_GET_STATISTICS_RSP SIR_HAL_GET_STATISTICS_RSP
210#define WMA_SET_KEY_DONE SIR_HAL_SET_KEY_DONE
211
212/* / PE <-> HAL BTC messages */
213#define WMA_BTC_SET_CFG SIR_HAL_BTC_SET_CFG
214#define WMA_HANDLE_FW_MBOX_RSP SIR_HAL_HANDLE_FW_MBOX_RSP
215
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800216#define WMA_SET_MAX_TX_POWER_REQ SIR_HAL_SET_MAX_TX_POWER_REQ
217#define WMA_SET_MAX_TX_POWER_RSP SIR_HAL_SET_MAX_TX_POWER_RSP
Kiran Kumar Lokere6d3a30d2018-01-15 18:18:29 -0800218#define WMA_SET_DTIM_PERIOD SIR_HAL_SET_DTIM_PERIOD
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800219
220#define WMA_SET_MAX_TX_POWER_PER_BAND_REQ \
221 SIR_HAL_SET_MAX_TX_POWER_PER_BAND_REQ
222
223/* / PE <-> HAL Host Offload message */
224#define WMA_SET_HOST_OFFLOAD SIR_HAL_SET_HOST_OFFLOAD
225
226/* / PE <-> HAL Keep Alive message */
227#define WMA_SET_KEEP_ALIVE SIR_HAL_SET_KEEP_ALIVE
228
229#ifdef WLAN_NS_OFFLOAD
230#define WMA_SET_NS_OFFLOAD SIR_HAL_SET_NS_OFFLOAD
231#endif /* WLAN_NS_OFFLOAD */
232#define WMA_ADD_STA_SELF_REQ SIR_HAL_ADD_STA_SELF_REQ
233#define WMA_DEL_STA_SELF_REQ SIR_HAL_DEL_STA_SELF_REQ
234
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800235#ifdef FEATURE_WLAN_TDLS
236#define WMA_SET_TDLS_LINK_ESTABLISH_REQ SIR_HAL_TDLS_LINK_ESTABLISH_REQ
237#define WMA_SET_TDLS_LINK_ESTABLISH_REQ_RSP SIR_HAL_TDLS_LINK_ESTABLISH_REQ_RSP
238#endif
239
240#define WMA_WLAN_SUSPEND_IND SIR_HAL_WLAN_SUSPEND_IND
241#define WMA_WLAN_RESUME_REQ SIR_HAL_WLAN_RESUME_REQ
242#define WMA_MSG_TYPES_END SIR_HAL_MSG_TYPES_END
243
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800244#define WMA_AGGR_QOS_REQ SIR_HAL_AGGR_QOS_REQ
245#define WMA_AGGR_QOS_RSP SIR_HAL_AGGR_QOS_RSP
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800246
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800247#define WMA_CSA_OFFLOAD_EVENT SIR_CSA_OFFLOAD_EVENT
248
Srinivas Girigowda515a9ef2015-12-11 11:00:48 -0800249#ifdef FEATURE_WLAN_ESE
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800250#define WMA_SET_PLM_REQ SIR_HAL_SET_PLM_REQ
251#endif
252
253#define WMA_ROAM_SCAN_OFFLOAD_REQ SIR_HAL_ROAM_SCAN_OFFLOAD_REQ
254
255#ifdef WLAN_FEATURE_ROAM_OFFLOAD
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800256#define WMA_ROAM_OFFLOAD_SYNCH_IND SIR_HAL_ROAM_OFFLOAD_SYNCH_IND
257#define WMA_ROAM_OFFLOAD_SYNCH_FAIL SIR_HAL_ROAM_OFFLOAD_SYNCH_FAIL
258#endif
259
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800260#define WMA_8023_MULTICAST_LIST_REQ SIR_HAL_8023_MULTICAST_LIST_REQ
Qiwei Cai4505fc62018-05-17 18:35:19 +0800261
262#ifdef WLAN_FEATURE_PACKET_FILTERING
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800263#define WMA_RECEIVE_FILTER_SET_FILTER_REQ SIR_HAL_RECEIVE_FILTER_SET_FILTER_REQ
264#define WMA_PACKET_COALESCING_FILTER_MATCH_COUNT_REQ SIR_HAL_PACKET_COALESCING_FILTER_MATCH_COUNT_REQ
265#define WMA_PACKET_COALESCING_FILTER_MATCH_COUNT_RSP SIR_HAL_PACKET_COALESCING_FILTER_MATCH_COUNT_RSP
266#define WMA_RECEIVE_FILTER_CLEAR_FILTER_REQ SIR_HAL_RECEIVE_FILTER_CLEAR_FILTER_REQ
267#endif /* WLAN_FEATURE_PACKET_FILTERING */
268
269#define WMA_DHCP_START_IND SIR_HAL_DHCP_START_IND
270#define WMA_DHCP_STOP_IND SIR_HAL_DHCP_STOP_IND
271
Rajeev Kumar8e3e2832015-11-06 16:02:54 -0800272#define WMA_TX_FAIL_MONITOR_IND SIR_HAL_TX_FAIL_MONITOR_IND
273
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800274#define WMA_HIDDEN_SSID_VDEV_RESTART SIR_HAL_HIDE_SSID_VDEV_RESTART
275
276#ifdef WLAN_FEATURE_GTK_OFFLOAD
277#define WMA_GTK_OFFLOAD_REQ SIR_HAL_GTK_OFFLOAD_REQ
278#define WMA_GTK_OFFLOAD_GETINFO_REQ SIR_HAL_GTK_OFFLOAD_GETINFO_REQ
279#define WMA_GTK_OFFLOAD_GETINFO_RSP SIR_HAL_GTK_OFFLOAD_GETINFO_RSP
280#endif /* WLAN_FEATURE_GTK_OFFLOAD */
281
282#define WMA_SET_TM_LEVEL_REQ SIR_HAL_SET_TM_LEVEL_REQ
283
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800284#define WMA_UPDATE_OP_MODE SIR_HAL_UPDATE_OP_MODE
285#define WMA_UPDATE_RX_NSS SIR_HAL_UPDATE_RX_NSS
286#define WMA_UPDATE_MEMBERSHIP SIR_HAL_UPDATE_MEMBERSHIP
287#define WMA_UPDATE_USERPOS SIR_HAL_UPDATE_USERPOS
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800288
289#ifdef WLAN_FEATURE_NAN
290#define WMA_NAN_REQUEST SIR_HAL_NAN_REQUEST
291#endif
292
293#define WMA_START_SCAN_OFFLOAD_REQ SIR_HAL_START_SCAN_OFFLOAD_REQ
294#define WMA_STOP_SCAN_OFFLOAD_REQ SIR_HAL_STOP_SCAN_OFFLOAD_REQ
295#define WMA_UPDATE_CHAN_LIST_REQ SIR_HAL_UPDATE_CHAN_LIST_REQ
296#define WMA_RX_SCAN_EVENT SIR_HAL_RX_SCAN_EVENT
gaoleze5108942017-03-31 16:56:42 +0800297#define WMA_RX_CHN_STATUS_EVENT SIR_HAL_RX_CHN_STATUS_EVENT
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800298#define WMA_IBSS_PEER_INACTIVITY_IND SIR_HAL_IBSS_PEER_INACTIVITY_IND
299
300#define WMA_CLI_SET_CMD SIR_HAL_CLI_SET_CMD
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800301
302#ifndef REMOVE_PKT_LOG
303#define WMA_PKTLOG_ENABLE_REQ SIR_HAL_PKTLOG_ENABLE_REQ
304#endif
305
306#ifdef FEATURE_WLAN_LPHB
307#define WMA_LPHB_CONF_REQ SIR_HAL_LPHB_CONF_IND
308#endif /* FEATURE_WLAN_LPHB */
309
310#ifdef FEATURE_WLAN_CH_AVOID
311#define WMA_CH_AVOID_UPDATE_REQ SIR_HAL_CH_AVOID_UPDATE_REQ
312#endif /* FEATURE_WLAN_CH_AVOID */
313
314#ifdef FEATURE_WLAN_AUTO_SHUTDOWN
315#define WMA_SET_AUTO_SHUTDOWN_TIMER_REQ SIR_HAL_SET_AUTO_SHUTDOWN_TIMER_REQ
316#endif
317
318#define WMA_ADD_PERIODIC_TX_PTRN_IND SIR_HAL_ADD_PERIODIC_TX_PTRN_IND
319#define WMA_DEL_PERIODIC_TX_PTRN_IND SIR_HAL_DEL_PERIODIC_TX_PTRN_IND
320
321#define WMA_TX_POWER_LIMIT SIR_HAL_SET_TX_POWER_LIMIT
322
323#define WMA_RATE_UPDATE_IND SIR_HAL_RATE_UPDATE_IND
324
Kiran Kumar Lokerebc87bec2018-02-27 20:06:42 -0800325#define WMA_SEND_ADDBA_REQ SIR_HAL_SEND_ADDBA_REQ
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800326#define WMA_INIT_THERMAL_INFO_CMD SIR_HAL_INIT_THERMAL_INFO_CMD
327#define WMA_SET_THERMAL_LEVEL SIR_HAL_SET_THERMAL_LEVEL
Rajeev Kumar8e3e2832015-11-06 16:02:54 -0800328#define WMA_RMC_ENABLE_IND SIR_HAL_RMC_ENABLE_IND
329#define WMA_RMC_DISABLE_IND SIR_HAL_RMC_DISABLE_IND
330#define WMA_RMC_ACTION_PERIOD_IND SIR_HAL_RMC_ACTION_PERIOD_IND
331
332/* IBSS peer info related message */
333#define WMA_GET_IBSS_PEER_INFO_REQ SIR_HAL_IBSS_PEER_INFO_REQ
334
335#define WMA_IBSS_CESIUM_ENABLE_IND SIR_HAL_IBSS_CESIUM_ENABLE_IND
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800336
Poddar, Siddarth5a91f5b2016-04-28 12:24:10 +0530337#define WMA_INIT_BAD_PEER_TX_CTL_INFO_CMD SIR_HAL_BAD_PEER_TX_CTL_INI_CMD
338
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800339#ifdef FEATURE_WLAN_TDLS
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800340#define WMA_UPDATE_TDLS_PEER_STATE SIR_HAL_UPDATE_TDLS_PEER_STATE
341#define WMA_TDLS_SHOULD_DISCOVER_CMD SIR_HAL_TDLS_SHOULD_DISCOVER
342#define WMA_TDLS_SHOULD_TEARDOWN_CMD SIR_HAL_TDLS_SHOULD_TEARDOWN
343#define WMA_TDLS_PEER_DISCONNECTED_CMD SIR_HAL_TDLS_PEER_DISCONNECTED
344#define WMA_TDLS_SET_OFFCHAN_MODE SIR_HAL_TDLS_SET_OFFCHAN_MODE
Kabilan Kannan14ec97f2016-05-16 23:48:25 -0700345#define WMA_TDLS_CONNECTION_TRACKER_NOTIFICATION_CMD SIR_HAL_TDLS_CONNECTION_TRACKER_NOTIFICATION
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800346#endif
347#define WMA_SET_SAP_INTRABSS_DIS SIR_HAL_SET_SAP_INTRABSS_DIS
348
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800349/* Message to indicate beacon tx completion after beacon template update
350 * beacon offload case
351 */
352#define WMA_DFS_BEACON_TX_SUCCESS_IND SIR_HAL_BEACON_TX_SUCCESS_IND
353#define WMA_DISASSOC_TX_COMP SIR_HAL_DISASSOC_TX_COMP
354#define WMA_DEAUTH_TX_COMP SIR_HAL_DEAUTH_TX_COMP
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800355
Will Huanga9814592017-05-24 15:47:58 +0800356#define WMA_GET_PEER_INFO SIR_HAL_GET_PEER_INFO
357#define WMA_GET_PEER_INFO_EXT SIR_HAL_GET_PEER_INFO_EXT
358
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800359#define WMA_MODEM_POWER_STATE_IND SIR_HAL_MODEM_POWER_STATE_IND
360
361#ifdef WLAN_FEATURE_STATS_EXT
362#define WMA_STATS_EXT_REQUEST SIR_HAL_STATS_EXT_REQUEST
363#endif
364
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800365#define WMA_GET_TEMPERATURE_REQ SIR_HAL_GET_TEMPERATURE_REQ
Manikandan Mohan80dea792016-04-28 16:36:48 -0700366#define WMA_SET_WISA_PARAMS SIR_HAL_SET_WISA_PARAMS
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800367
368#ifdef FEATURE_WLAN_EXTSCAN
369#define WMA_EXTSCAN_GET_CAPABILITIES_REQ SIR_HAL_EXTSCAN_GET_CAPABILITIES_REQ
370#define WMA_EXTSCAN_START_REQ SIR_HAL_EXTSCAN_START_REQ
371#define WMA_EXTSCAN_STOP_REQ SIR_HAL_EXTSCAN_STOP_REQ
372#define WMA_EXTSCAN_SET_BSSID_HOTLIST_REQ SIR_HAL_EXTSCAN_SET_BSS_HOTLIST_REQ
373#define WMA_EXTSCAN_RESET_BSSID_HOTLIST_REQ SIR_HAL_EXTSCAN_RESET_BSS_HOTLIST_REQ
374#define WMA_EXTSCAN_SET_SIGNF_CHANGE_REQ SIR_HAL_EXTSCAN_SET_SIGNF_CHANGE_REQ
375#define WMA_EXTSCAN_RESET_SIGNF_CHANGE_REQ SIR_HAL_EXTSCAN_RESET_SIGNF_CHANGE_REQ
376#define WMA_EXTSCAN_GET_CACHED_RESULTS_REQ SIR_HAL_EXTSCAN_GET_CACHED_RESULTS_REQ
377#define WMA_SET_EPNO_LIST_REQ SIR_HAL_SET_EPNO_LIST_REQ
378#define WMA_SET_PASSPOINT_LIST_REQ SIR_HAL_SET_PASSPOINT_LIST_REQ
379#define WMA_RESET_PASSPOINT_LIST_REQ SIR_HAL_RESET_PASSPOINT_LIST_REQ
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800380
381#endif /* FEATURE_WLAN_EXTSCAN */
382
383#ifdef WLAN_FEATURE_LINK_LAYER_STATS
384#define WMA_LINK_LAYER_STATS_CLEAR_REQ SIR_HAL_LL_STATS_CLEAR_REQ
385#define WMA_LINK_LAYER_STATS_SET_REQ SIR_HAL_LL_STATS_SET_REQ
386#define WMA_LINK_LAYER_STATS_GET_REQ SIR_HAL_LL_STATS_GET_REQ
387#define WMA_LINK_LAYER_STATS_RESULTS_RSP SIR_HAL_LL_STATS_RESULTS_RSP
Zhang Qian73c348a2017-03-13 16:15:55 +0800388#define WDA_LINK_LAYER_STATS_SET_THRESHOLD SIR_HAL_LL_STATS_EXT_SET_THRESHOLD
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800389#endif /* WLAN_FEATURE_LINK_LAYER_STATS */
390
391#define WMA_LINK_STATUS_GET_REQ SIR_HAL_LINK_STATUS_GET_REQ
392
393#ifdef WLAN_FEATURE_EXTWOW_SUPPORT
394#define WMA_WLAN_EXT_WOW SIR_HAL_CONFIG_EXT_WOW
395#define WMA_WLAN_SET_APP_TYPE1_PARAMS SIR_HAL_CONFIG_APP_TYPE1_PARAMS
396#define WMA_WLAN_SET_APP_TYPE2_PARAMS SIR_HAL_CONFIG_APP_TYPE2_PARAMS
397#endif
398
399#define WMA_SET_SCAN_MAC_OUI_REQ SIR_HAL_SET_SCAN_MAC_OUI_REQ
Manikandan Mohan976e7562016-03-15 16:33:31 -0700400#define WMA_TSF_GPIO_PIN SIR_HAL_TSF_GPIO_PIN_REQ
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800401
402#ifdef DHCP_SERVER_OFFLOAD
403#define WMA_SET_DHCP_SERVER_OFFLOAD_CMD SIR_HAL_SET_DHCP_SERVER_OFFLOAD
404#endif /* DHCP_SERVER_OFFLOAD */
405
406#ifdef WLAN_FEATURE_GPIO_LED_FLASHING
407#define WMA_LED_FLASHING_REQ SIR_HAL_LED_FLASHING_REQ
408#endif
409
410/* Message posted by wmi when wmi event is received from FW */
411#define WMA_PROCESS_FW_EVENT SIR_HAL_PROCESS_FW_EVENT
412
413#ifdef FEATURE_AP_MCC_CH_AVOIDANCE
414#define WMA_UPDATE_Q2Q_IE_IND SIR_HAL_UPDATE_Q2Q_IE_IND
415#endif /* FEATURE_AP_MCC_CH_AVOIDANCE */
416#define WMA_SET_RSSI_MONITOR_REQ SIR_HAL_SET_RSSI_MONITOR_REQ
417
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800418#define WMA_OCB_SET_CONFIG_CMD SIR_HAL_OCB_SET_CONFIG_CMD
419#define WMA_OCB_SET_UTC_TIME_CMD SIR_HAL_OCB_SET_UTC_TIME_CMD
420#define WMA_OCB_START_TIMING_ADVERT_CMD SIR_HAL_OCB_START_TIMING_ADVERT_CMD
421#define WMA_OCB_STOP_TIMING_ADVERT_CMD SIR_HAL_OCB_STOP_TIMING_ADVERT_CMD
422#define WMA_OCB_GET_TSF_TIMER_CMD SIR_HAL_OCB_GET_TSF_TIMER_CMD
423#define WMA_DCC_GET_STATS_CMD SIR_HAL_DCC_GET_STATS_CMD
424#define WMA_DCC_CLEAR_STATS_CMD SIR_HAL_DCC_CLEAR_STATS_CMD
425#define WMA_DCC_UPDATE_NDL_CMD SIR_HAL_DCC_UPDATE_NDL_CMD
Ryan Hsu3c8f79f2015-12-02 16:45:09 -0800426#define WMA_SET_IE_INFO SIR_HAL_SET_IE_INFO
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800427
Ryan Hsu3c8f79f2015-12-02 16:45:09 -0800428#define WMA_LRO_CONFIG_CMD SIR_HAL_LRO_CONFIG_CMD
Ravi Joshi61c3c7a2015-11-09 18:41:20 -0800429#define WMA_GW_PARAM_UPDATE_REQ SIR_HAL_GATEWAY_PARAM_UPDATE_REQ
Gupta, Kapil4cb1d7d2016-04-16 18:16:25 -0700430#define WMA_ADD_BCN_FILTER_CMDID SIR_HAL_ADD_BCN_FILTER_CMDID
431#define WMA_REMOVE_BCN_FILTER_CMDID SIR_HAL_REMOVE_BCN_FILTER_CMDID
Gupta, Kapil96c7f2f2016-04-25 19:13:41 +0530432#define WMA_SET_ADAPT_DWELLTIME_CONF_PARAMS SIR_HAL_SET_ADAPT_DWELLTIME_PARAMS
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800433
Nachiket Kukadee547a482018-05-22 16:43:30 +0530434#define WDA_APF_GET_CAPABILITIES_REQ SIR_HAL_APF_GET_CAPABILITIES_REQ
435#define WDA_APF_SET_INSTRUCTIONS_REQ SIR_HAL_APF_SET_INSTRUCTIONS_REQ
Arun Khandavalli2476ef52016-04-26 20:19:43 +0530436
Kiran Kumar Lokere666bf852016-05-02 12:23:02 -0700437#define WMA_SET_PDEV_IE_REQ SIR_HAL_SET_PDEV_IE_REQ
Masti, Narayanraddiab712a72016-08-04 11:59:11 +0530438#define WMA_UPDATE_WEP_DEFAULT_KEY SIR_HAL_UPDATE_WEP_DEFAULT_KEY
Selvaraj, Sridharebda0f22016-08-29 16:05:23 +0530439#define WMA_SEND_FREQ_RANGE_CONTROL_IND SIR_HAL_SEND_FREQ_RANGE_CONTROL_IND
Sridhar Selvarajdc400d22016-10-18 17:18:03 +0530440#define WMA_POWER_DEBUG_STATS_REQ SIR_HAL_POWER_DEBUG_STATS_REQ
Rajeev Kumar Sirasanagandla996e5292016-11-22 21:20:33 +0530441#define WMA_GET_RCPI_REQ SIR_HAL_GET_RCPI_REQ
Sridhar Selvarajdc400d22016-10-18 17:18:03 +0530442
Nitesh Shahf9a09ff2017-05-22 15:46:25 +0530443#define WMA_SET_DBS_SCAN_SEL_CONF_PARAMS SIR_HAL_SET_DBS_SCAN_SEL_PARAMS
444
Yingying Tang95409972016-10-20 15:16:15 +0800445#define WMA_SET_WOW_PULSE_CMD SIR_HAL_SET_WOW_PULSE_CMD
446
Kapil Gupta5cda2252016-12-29 18:44:26 +0530447#define WMA_SET_PER_ROAM_CONFIG_CMD SIR_HAL_SET_PER_ROAM_CONFIG_CMD
448
Anurag Chouhan3920c0f2017-09-11 17:10:56 +0530449#define WMA_SET_ARP_STATS_REQ SIR_HAL_SET_ARP_STATS_REQ
450#define WMA_GET_ARP_STATS_REQ SIR_HAL_GET_ARP_STATS_REQ
Ganesh Kondabattini35739572017-06-21 16:26:39 +0530451#define WMA_SET_LIMIT_OFF_CHAN SIR_HAL_SET_LIMIT_OFF_CHAN
Arif Hussainee10f902017-12-27 16:30:17 -0800452#define WMA_OBSS_DETECTION_REQ SIR_HAL_OBSS_DETECTION_REQ
453#define WMA_OBSS_DETECTION_INFO SIR_HAL_OBSS_DETECTION_INFO
Vignesh Viswanathan694e28e2018-01-18 20:53:57 +0530454#define WMA_INVOKE_NEIGHBOR_REPORT SIR_HAL_INVOKE_NEIGHBOR_REPORT
Arif Hussain05fb4872018-01-03 16:02:55 -0800455#define WMA_OBSS_COLOR_COLLISION_REQ SIR_HAL_OBSS_COLOR_COLLISION_REQ
456#define WMA_OBSS_COLOR_COLLISION_INFO SIR_HAL_OBSS_COLOR_COLLISION_INFO
Anurag Chouhan3920c0f2017-09-11 17:10:56 +0530457
Rajeev Kumar Sirasanagandla4f20b672018-03-12 13:52:50 +0530458#define WMA_GET_ROAM_SCAN_STATS SIR_HAL_GET_ROAM_SCAN_STATS
459
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800460/* Bit 6 will be used to control BD rate for Management frames */
461#define HAL_USE_BD_RATE2_FOR_MANAGEMENT_FRAME 0x40
462
463#define wma_tx_frame(hHal, pFrmBuf, frmLen, frmType, txDir, tid, pCompFunc, \
Naveen Rawat296a5182017-09-25 14:02:48 -0700464 pData, txFlag, sessionid, channel_freq, rid) \
Anurag Chouhanfb54ab02016-02-18 18:00:46 +0530465 (QDF_STATUS)( wma_tx_packet( \
Anurag Chouhan6d760662016-02-20 16:05:43 +0530466 cds_get_context(QDF_MODULE_ID_WMA), \
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800467 (pFrmBuf), \
468 (frmLen), \
469 (frmType), \
470 (txDir), \
471 (tid), \
472 (pCompFunc), \
473 (pData), \
474 (NULL), \
475 (txFlag), \
476 (sessionid), \
477 (false), \
Naveen Rawat296a5182017-09-25 14:02:48 -0700478 (channel_freq), \
479 (rid)))
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800480
481#define wma_tx_frameWithTxComplete(hHal, pFrmBuf, frmLen, frmType, txDir, tid, \
482 pCompFunc, pData, pCBackFnTxComp, txFlag, sessionid, tdlsflag, \
Naveen Rawat296a5182017-09-25 14:02:48 -0700483 channel_freq, rid) \
Anurag Chouhanfb54ab02016-02-18 18:00:46 +0530484 (QDF_STATUS)( wma_tx_packet( \
Anurag Chouhan6d760662016-02-20 16:05:43 +0530485 cds_get_context(QDF_MODULE_ID_WMA), \
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800486 (pFrmBuf), \
487 (frmLen), \
488 (frmType), \
489 (txDir), \
490 (tid), \
491 (pCompFunc), \
492 (pData), \
493 (pCBackFnTxComp), \
494 (txFlag), \
495 (sessionid), \
496 (tdlsflag), \
Naveen Rawat296a5182017-09-25 14:02:48 -0700497 (channel_freq), \
498 (rid)))
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800499
500
501#define WMA_SetEnableSSR(enable_ssr) ((void)enable_ssr)
502
503/**
504 * struct sUapsd_Params - Powersave Offload Changes
505 * @bkDeliveryEnabled: BK delivery enabled flag
506 * @beDeliveryEnabled: BE delivery enabled flag
507 * @viDeliveryEnabled: VI delivery enabled flag
508 * @voDeliveryEnabled: VO delivery enabled flag
509 * @bkTriggerEnabled: BK trigger enabled flag
510 * @beTriggerEnabled: BE trigger enabled flag
511 * @viTriggerEnabled: VI trigger enabled flag
512 * @voTriggerEnabled: VO trigger enabled flag
513 */
514typedef struct sUapsd_Params {
515 uint8_t bkDeliveryEnabled:1;
516 uint8_t beDeliveryEnabled:1;
517 uint8_t viDeliveryEnabled:1;
518 uint8_t voDeliveryEnabled:1;
519 uint8_t bkTriggerEnabled:1;
520 uint8_t beTriggerEnabled:1;
521 uint8_t viTriggerEnabled:1;
522 uint8_t voTriggerEnabled:1;
Kiran Kumar Lokere830ba162016-03-11 17:28:28 -0800523 bool enable_ps;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800524} tUapsd_Params, *tpUapsd_Params;
525
526/**
527 * struct sEnablePsParams - Enable PowerSave Params
528 * @psSetting: power save setting
529 * @uapsdParams: UAPSD Parameters
530 * @bssid: mac address
531 * @sessionid: sme session id / vdev id
532 * @bcnDtimPeriod: beacon DTIM Period
533 * @status: success/failure
534 */
535typedef struct sEnablePsParams {
536 tSirAddonPsReq psSetting;
537 tUapsd_Params uapsdParams;
538 tSirMacAddr bssid;
539 uint32_t sessionid;
540 uint8_t bcnDtimPeriod;
541 uint32_t status;
542} tEnablePsParams, *tpEnablePsParams;
543
544/**
545 * struct sDisablePsParams - Disable PowerSave Params
546 * @psSetting: power save setting
547 * @bssid: mac address
548 * @sessionid: sme session id / vdev id
549 * @status: success/failure
550 */
551typedef struct sDisablePsParams {
552 tSirAddonPsReq psSetting;
553 tSirMacAddr bssid;
554 uint32_t sessionid;
555 uint32_t status;
556} tDisablePsParams, *tpDisablePsParams;
557
558/**
559 * struct sEnableUapsdParams - Enable Uapsd Params
560 * @uapsdParams: UAPSD parameters
561 * @bssid: mac address
562 * @sessionid: sme session id/ vdev id
563 * @status: success/failure
564 */
565typedef struct sEnableUapsdParams {
566 tUapsd_Params uapsdParams;
567 tSirMacAddr bssid;
568 uint32_t sessionid;
569 uint32_t status;
570} tEnableUapsdParams, *tpEnableUapsdParams;
571
572/**
573 * struct sDisableUapsdParams - Disable Uapsd Params
574 * @bssid: mac address
575 * @sessionid: sme session id/ vdev id
576 * @status: success/failure
577 */
578typedef struct sDisableUapsdParams {
579 tSirMacAddr bssid;
580 uint32_t sessionid;
581 uint32_t status;
582} tDisableUapsdParams, *tpDisableUapsdParams;
583
Himanshu Agarwal2fdf77a2016-12-29 11:41:00 +0530584/**
585 * wma_tx_dwnld_comp_callback - callback function for TX dwnld complete
586 * @context: global pMac pointer
587 * @buf: buffer
588 * @bFreeData: to free/not free the buffer
589 *
590 * callback function for mgmt tx download completion.
591 *
592 * Return: QDF_STATUS_SUCCESS in case of success
593 */
594typedef QDF_STATUS (*wma_tx_dwnld_comp_callback)(void *context, qdf_nbuf_t buf,
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800595 bool bFreeData);
596
Himanshu Agarwal2fdf77a2016-12-29 11:41:00 +0530597/**
598 * wma_tx_ota_comp_callback - callback function for TX complete
599 * @context: global pMac pointer
600 * @buf: buffer
601 * @status: tx completion status
602 * @params: tx completion params
603 *
604 * callback function for mgmt tx ota completion.
605 *
606 * Return: QDF_STATUS_SUCCESS in case of success
607 */
608typedef QDF_STATUS (*wma_tx_ota_comp_callback)(void *context, qdf_nbuf_t buf,
609 uint32_t status, void *params);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800610
Rajeev Kumar8e3e2832015-11-06 16:02:54 -0800611typedef void (*wma_txFailIndCallback)(uint8_t *, uint8_t);
612
Jeff Johnson8abc5932018-06-02 22:51:37 -0700613/* generic callback for updating parameters from target to HDD */
614typedef void (*wma_tgt_cfg_cb)(hdd_handle_t handle, struct wma_tgt_cfg *cfg);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800615
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800616/**
617 * struct wma_cli_set_cmd_t - set command parameters
618 * @param_id: parameter id
619 * @param_value: parameter value
620 * @param_sec_value: parameter sec value
621 * @param_vdev_id: parameter vdev id
622 * @param_vp_dev: is it per vdev/pdev
623 */
624typedef struct {
625 uint32_t param_id;
626 uint32_t param_value;
627 uint32_t param_sec_value;
628 uint32_t param_vdev_id;
629 uint32_t param_vp_dev;
630} wma_cli_set_cmd_t;
631
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800632#ifdef FEATURE_WLAN_TDLS
633/**
634 * enum WMA_TdlsPeerState - TDLS PEER state
635 * @WMA_TDLS_PEER_STATE_PEERING: peer is making connection
636 * @WMA_TDLS_PEER_STATE_CONNECTED: peer is connected
637 * @WMA_TDLS_PEER_STATE_TEARDOWN: peer is teardown
Kabilan Kannan421714b2015-11-23 04:44:59 -0800638 * @WMA_TDLS_PEER_ADD_MAC_ADDR: add peer into connection table
639 * @WMA_TDLS_PEER_REMOVE_MAC_ADDR: remove peer from connection table
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800640 */
Manikandan Mohan1dd8b5d2017-04-18 15:54:09 -0700641enum WMA_TdlsPeerState {
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800642 WMA_TDLS_PEER_STATE_PEERING,
643 WMA_TDLS_PEER_STATE_CONNECTED,
644 WMA_TDLS_PEER_STATE_TEARDOWN,
Kabilan Kannan421714b2015-11-23 04:44:59 -0800645 WMA_TDLS_PEER_ADD_MAC_ADDR,
646 WMA_TDLS_PEER_REMOVE_MAC_ADDR,
Manikandan Mohan1dd8b5d2017-04-18 15:54:09 -0700647};
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800648
649/**
650 * enum wma_tdls_off_chan_mode - modes for WMI_TDLS_SET_OFFCHAN_MODE_CMDID
651 * @WMA_TDLS_ENABLE_OFFCHANNEL: enable off channel
652 * @WMA_TDLS_DISABLE_OFFCHANNEL: disable off channel
653 */
Manikandan Mohan1dd8b5d2017-04-18 15:54:09 -0700654enum wma_tdls_off_chan_mode {
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800655 WMA_TDLS_ENABLE_OFFCHANNEL,
656 WMA_TDLS_DISABLE_OFFCHANNEL
Manikandan Mohan1dd8b5d2017-04-18 15:54:09 -0700657};
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800658
659#endif /* FEATURE_WLAN_TDLS */
660
Naveen Rawat296a5182017-09-25 14:02:48 -0700661enum rateid {
662 RATEID_1MBPS = 0,
663 RATEID_2MBPS,
664 RATEID_5_5MBPS,
665 RATEID_11MBPS,
666 RATEID_6MBPS,
667 RATEID_9MBPS,
668 RATEID_12MBPS,
669 RATEID_18MBPS,
670 RATEID_24MBPS,
671 RATEID_36MBPS,
672 RATEID_48MBPS = 10,
673 RATEID_54MBPS,
674 RATEID_DEFAULT
675};
676
Jeff Johnsone88dd752018-06-07 22:57:54 -0700677QDF_STATUS wma_post_ctrl_msg(tpAniSirGlobal pMac, struct scheduler_msg *pMsg);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800678
Jeff Johnsone88dd752018-06-07 22:57:54 -0700679QDF_STATUS u_mac_post_ctrl_msg(void *pSirGlobal, tSirMbMsg *pMb);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800680
Anurag Chouhanfb54ab02016-02-18 18:00:46 +0530681QDF_STATUS wma_set_idle_ps_config(void *wma_ptr, uint32_t idle_ps);
682QDF_STATUS wma_get_snr(tAniGetSnrReq *psnr_req);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800683
Paul Zhang99fe8842017-12-08 14:43:46 +0800684/**
685 * wma_set_wlm_latency_level() - set latency level to FW
686 * @wma_ptr: wma handle
687 * @latency_params: latency params
688 *
689 * Return: QDF_STATUS
690 */
691QDF_STATUS wma_set_wlm_latency_level(void *wma_ptr,
692 struct wlm_latency_level_param *latency_params);
693
Anurag Chouhanfb54ab02016-02-18 18:00:46 +0530694QDF_STATUS
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800695wma_ds_peek_rx_packet_info
696 (cds_pkt_t *vosDataBuff, void **ppRxHeader, bool bSwap);
697
698
699void wma_tx_abort(uint8_t vdev_id);
700
Anurag Chouhanfb54ab02016-02-18 18:00:46 +0530701QDF_STATUS wma_tx_packet(void *pWMA,
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800702 void *pFrmBuf,
703 uint16_t frmLen,
704 eFrameType frmType,
705 eFrameTxDir txDir,
706 uint8_t tid,
Himanshu Agarwal2fdf77a2016-12-29 11:41:00 +0530707 wma_tx_dwnld_comp_callback pCompFunc,
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800708 void *pData,
Himanshu Agarwal2fdf77a2016-12-29 11:41:00 +0530709 wma_tx_ota_comp_callback pAckTxComp,
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800710 uint8_t txFlag, uint8_t sessionId, bool tdlsflag,
Naveen Rawat296a5182017-09-25 14:02:48 -0700711 uint16_t channel_freq, enum rateid rid);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800712
bings482bae22018-01-17 16:25:31 +0800713/**
714 * wma_open() - Allocate wma context and initialize it.
715 * @psoc: Psoc pointer
Arunk Khandavallia6305a32018-01-25 11:19:18 +0530716 * @pTgtUpdCB: tgt config update callback fun
bings482bae22018-01-17 16:25:31 +0800717 * @cds_cfg: mac parameters
718 * @target_type: Target type
719 *
Arunk Khandavallia6305a32018-01-25 11:19:18 +0530720 * Return: QDF_STATUS
bings482bae22018-01-17 16:25:31 +0800721 */
Jeff Johnsonff6addf2017-09-13 10:06:03 -0700722QDF_STATUS wma_open(struct wlan_objmgr_psoc *psoc,
bings482bae22018-01-17 16:25:31 +0800723 wma_tgt_cfg_cb pTgtUpdCB, struct cds_config_info *cds_cfg,
724 uint32_t target_type);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800725
Dustin Brownec2c92e2017-07-26 11:13:49 -0700726/**
727 * wma_vdev_init() - initialize a wma vdev
728 * @vdev: the vdev to initialize
729 *
730 * Return: None
731 */
732void wma_vdev_init(struct wma_txrx_node *vdev);
733
734/**
735 * wma_vdev_deinit() - de-initialize a wma vdev
736 * @vdev: the vdev to de-initialize
737 *
738 * Return: None
739 */
740void wma_vdev_deinit(struct wma_txrx_node *vdev);
741
Himanshu Agarwal2fdf77a2016-12-29 11:41:00 +0530742QDF_STATUS wma_register_mgmt_frm_client(void);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800743
Himanshu Agarwal2fdf77a2016-12-29 11:41:00 +0530744QDF_STATUS wma_de_register_mgmt_frm_client(void);
Varun Reddy Yeturubbbbe232016-02-29 14:01:57 -0800745#ifdef WLAN_FEATURE_ROAM_OFFLOAD
Jeff Johnsona9b66572017-09-02 12:41:21 -0700746QDF_STATUS wma_register_roaming_callbacks(
Varun Reddy Yeturu88f123c2017-03-14 18:24:32 -0700747 QDF_STATUS (*csr_roam_synch_cb)(tpAniSirGlobal mac,
Varun Reddy Yeturud5939f82015-12-24 18:14:02 -0800748 roam_offload_synch_ind *roam_synch_data,
Varun Reddy Yeturuf907f912016-03-21 15:06:22 -0700749 tpSirBssDescription bss_desc_ptr,
750 enum sir_roam_op_code reason),
Anurag Chouhanfb54ab02016-02-18 18:00:46 +0530751 QDF_STATUS (*pe_roam_synch_cb)(tpAniSirGlobal mac,
Varun Reddy Yeturud5939f82015-12-24 18:14:02 -0800752 roam_offload_synch_ind *roam_synch_data,
Varun Reddy Yeturub5d858e2017-12-15 16:08:13 -0800753 tpSirBssDescription bss_desc_ptr,
754 enum sir_roam_op_code reason));
Varun Reddy Yeturubbbbe232016-02-29 14:01:57 -0800755#else
Jeff Johnsona9b66572017-09-02 12:41:21 -0700756static inline QDF_STATUS wma_register_roaming_callbacks(
Varun Reddy Yeturu88f123c2017-03-14 18:24:32 -0700757 QDF_STATUS (*csr_roam_synch_cb)(tpAniSirGlobal mac,
Varun Reddy Yeturubbbbe232016-02-29 14:01:57 -0800758 roam_offload_synch_ind *roam_synch_data,
Varun Reddy Yeturuf907f912016-03-21 15:06:22 -0700759 tpSirBssDescription bss_desc_ptr,
760 enum sir_roam_op_code reason),
Kiran Kumar Lokere830ba162016-03-11 17:28:28 -0800761 QDF_STATUS (*pe_roam_synch_cb)(tpAniSirGlobal mac,
Varun Reddy Yeturubbbbe232016-02-29 14:01:57 -0800762 roam_offload_synch_ind *roam_synch_data,
Varun Reddy Yeturub5d858e2017-12-15 16:08:13 -0800763 tpSirBssDescription bss_desc_ptr,
764 enum sir_roam_op_code reason))
Varun Reddy Yeturubbbbe232016-02-29 14:01:57 -0800765{
Kiran Kumar Lokere830ba162016-03-11 17:28:28 -0800766 return QDF_STATUS_E_NOSUPPORT;
Varun Reddy Yeturubbbbe232016-02-29 14:01:57 -0800767}
768#endif
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800769
770#endif