blob: 26968c48fd08d4f2bd28092aee0cbff6274835e1 [file] [log] [blame]
Jeff Johnson295189b2012-06-20 16:38:30 -07001/*
Kiet Lam1ed83fc2014-02-19 01:15:45 -08002 * Copyright (c) 2012-2013 The Linux Foundation. All rights reserved.
3 *
4 * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
5 *
6 *
7 * Permission to use, copy, modify, and/or distribute this software for
8 * any purpose with or without fee is hereby granted, provided that the
9 * above copyright notice and this permission notice appear in all
10 * copies.
11 *
12 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
13 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
14 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
15 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
16 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
17 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
18 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19 * PERFORMANCE OF THIS SOFTWARE.
20 */
21
22/*
Kiet Lamaa8e15a2014-02-11 23:30:06 -080023 * Copyright (c) 2012-2013 Qualcomm Atheros, Inc.
24 * All Rights Reserved.
25 * Qualcomm Atheros Confidential and Proprietary.
Kiet Lam1ed83fc2014-02-19 01:15:45 -080026 *
Gopichand Nakkala92f07d82013-01-08 21:16:34 -080027 */
Kiet Lam1ed83fc2014-02-19 01:15:45 -080028
29
Jeff Johnson295189b2012-06-20 16:38:30 -070030#ifndef WLAN_QCT_WDI_I_H
31#define WLAN_QCT_WDI_I_H
32
33/*===========================================================================
34
35 W L A N D E V I C E A B S T R A C T I O N L A Y E R
36 I N T E R N A L A P I F O R T H E
37 D A T A P A T H
38
39
40DESCRIPTION
41 This file contains the internal API exposed by the DAL Control Path Core
Kiet Lam1ed83fc2014-02-19 01:15:45 -080042 module to be used by the DAL Data Path Core.
Jeff Johnson295189b2012-06-20 16:38:30 -070043===========================================================================*/
44
45
46/*===========================================================================
47
48 EDIT HISTORY FOR FILE
49
50
51 This section contains comments describing changes made to the module.
52 Notice that changes are listed in reverse chronological order.
53
54
55 $Header:$ $DateTime: $ $Author: $
56
57
58when who what, where, why
59-------- --- ----------------------------------------------------------
6010/05/11 hap Adding support for Keep Alive
6108/19/10 lti Created module.
62
63===========================================================================*/
64
65#include "wlan_qct_pal_type.h"
66#include "wlan_qct_pal_api.h"
67#include "wlan_qct_pal_list.h"
68#include "wlan_qct_pal_sync.h"
69#include "wlan_qct_pal_timer.h"
70#include "wlan_qct_wdi_cts.h"
71#include "wlan_qct_wdi_bd.h"
72
73#include "wlan_hal_msg.h"
74#include "wlan_status_code.h"
75#include "wlan_qct_dev_defs.h"
76/*----------------------------------------------------------------------------
77 * Preprocessor Definitions and Constants
78 * -------------------------------------------------------------------------*/
79
80/*Assert macro - redefined for WDI so it is more flexible in disabling*/
81#define WDI_ASSERT(_cond) WPAL_ASSERT(_cond)
82
83/*Error codes that can be returned by WDI - the HAL Error codes are not
84 propagated outside WDI because they are too explicit when refering to RIVA
85 HW errors - they are masked under dev internal failure*/
86#define WDI_ERR_BASIC_OP_FAILURE 0
87#define WDI_ERR_TRANSPORT_FAILURE 1
88#define WDI_ERR_INVALID_RSP_FMT 2
89#define WDI_ERR_RSP_TIMEOUT 3
90#define WDI_ERR_DEV_INTERNAL_FAILURE 4
91
92/*In prima 12 HW stations are supported including BCAST STA(staId 0)
93 and SELF STA(staId 1) so total ASSOC stations which can connect to Prima
94 SoftAP = 12 - 1(Self STa) - 1(Bcast Sta) = 10 Stations. */
Gopichand Nakkala976e3252013-01-03 15:45:56 -080095
96#ifdef WLAN_SOFTAP_VSTA_FEATURE
Yathish Hanumapuradoddi Shivanna64dfc472013-03-08 10:48:34 -080097#define WDI_MAX_SUPPORTED_STAS 41
Gopichand Nakkala976e3252013-01-03 15:45:56 -080098#else
Yathish Hanumapuradoddi Shivanna64dfc472013-03-08 10:48:34 -080099#define WDI_MAX_SUPPORTED_STAS 12
Gopichand Nakkala976e3252013-01-03 15:45:56 -0800100#endif
Jeff Johnson295189b2012-06-20 16:38:30 -0700101#define WDI_MAX_SUPPORTED_BSS 5
102
103/* Control transport channel size*/
104#define WDI_CT_CHANNEL_SIZE 4096
105
106/*Invalid BSS index ! TO DO: Must come from the HAL header file*/
107#define WDI_BSS_INVALID_IDX 0xFF
108
Jeff Johnson295189b2012-06-20 16:38:30 -0700109#define WDI_FTM_MAX_RECEIVE_BUFFER 6500
Jeff Johnson295189b2012-06-20 16:38:30 -0700110
111/*---------------------------------------------------------------------------
112 DAL Control Path Main States
113---------------------------------------------------------------------------*/
114typedef enum
115{
116 /* Transition in this state made upon creation and when a close request is
117 received*/
118 WDI_INIT_ST = 0,
119
120 /* Transition happens after a Start response was received from HAL (as a
121 result of a previously sent HAL Request)*/
122 WDI_STARTED_ST,
123
124 /* Transition happens when a Stop request was received */
125 WDI_STOPPED_ST,
126
127 /* Transition happens when a request is being sent down to HAL and we are
128 waiting for the response */
129 WDI_BUSY_ST,
130
131 /* Transition happens when 'SSR' shutdown request is recieved.*/
132 WDI_SHUTDOWN_ST,
133
134 WDI_MAX_ST
135}WDI_MainStateType;
136
137
138/*---------------------------------------------------------------------------
139 DAL Control Path Scan States
140---------------------------------------------------------------------------*/
141typedef enum
142{
143 /*The flag will be set to this state when init is called. Once the flag has
144 this value the only two scanning API calls allowed are Scan Start and
145 Scan Finished*/
146 WDI_SCAN_INITIALIZED_ST = 0,
147
148 /*The flag will be set to this value once the Start Scan API is called.
149 When the flag has this value only Scan End API will be allowed. */
150 WDI_SCAN_STARTED_ST = 1,
151
152 /*The flag will be set to this value when End Scan API is called. When the
153 flag is set to this value the only two Scan APIs allowed are Start and
154 Finish. */
155 WDI_SCAN_ENDED_ST = 2,
156
157 /*The flag will be set to this value in the beginning before init is called
158 and after the Finish API is called. No other scan APIs will be allowed
159 in this state until Scan Init is called again. */
160 WDI_SCAN_FINISHED_ST = 3,
161
162 WDI_SCAN_MAX_ST
163}WDI_ScanStateType;
164
165/*---------------------------------------------------------------------------
166 WLAN DAL BSS Session Type - used to allow simulatneous association
167 and keep track of each associated session
168 ---------------------------------------------------------------------------*/
169#define WDI_MAX_BSS_SESSIONS 10
170
171typedef enum
172{
173 /*Init state*/
174 WDI_ASSOC_INIT_ST,
175
176 /*Joining State*/
177 WDI_ASSOC_JOINING_ST,
178
179 /*Associated state*/
180 WDI_ASSOC_POST_ST,
181
182 WDI_ASSOC_MAX_ST
183}WDI_AssocStateType;
184
185/*---------------------------------------------------------------------------
186 WLAN DAL Supported Request Types
187 ---------------------------------------------------------------------------*/
188typedef enum
189{
190 /*WLAN DAL START Request*/
191 WDI_START_REQ = 0,
192
193 /*WLAN DAL STOP Request*/
194 WDI_STOP_REQ = 1,
195
196 /*WLAN DAL STOP Request*/
197 WDI_CLOSE_REQ = 2,
198
199
200 /*SCAN*/
201 /*WLAN DAL Init Scan Request*/
202 WDI_INIT_SCAN_REQ = 3,
203
204 /*WLAN DAL Start Scan Request*/
205 WDI_START_SCAN_REQ = 4,
206
207 /*WLAN DAL End Scan Request*/
208 WDI_END_SCAN_REQ = 5,
209
210 /*WLAN DAL Finish Scan Request*/
211 WDI_FINISH_SCAN_REQ = 6,
212
213
214 /*ASSOCIATION*/
215 /*WLAN DAL Join Request*/
216 WDI_JOIN_REQ = 7,
217
218 /*WLAN DAL Config BSS Request*/
219 WDI_CONFIG_BSS_REQ = 8,
220
221 /*WLAN DAL Del BSS Request*/
222 WDI_DEL_BSS_REQ = 9,
223
224 /*WLAN DAL Post Assoc Request*/
225 WDI_POST_ASSOC_REQ = 10,
226
227 /*WLAN DAL Del STA Request*/
228 WDI_DEL_STA_REQ = 11,
229
230 /*Security*/
231 /*WLAN DAL Set BSS Key Request*/
232 WDI_SET_BSS_KEY_REQ = 12,
233
234 /*WLAN DAL Remove BSS Key Request*/
235 WDI_RMV_BSS_KEY_REQ = 13,
236
237 /*WLAN DAL Set STA Key Request*/
238 WDI_SET_STA_KEY_REQ = 14,
239
240 /*WLAN DAL Remove STA Key Request*/
241 WDI_RMV_STA_KEY_REQ = 15,
242
243 /*QOS and BA*/
244 /*WLAN DAL Add TSpec Request*/
245 WDI_ADD_TS_REQ = 16,
246
247 /*WLAN DAL Delete TSpec Request*/
248 WDI_DEL_TS_REQ = 17,
249
250 /*WLAN DAL Update EDCA Params Request*/
251 WDI_UPD_EDCA_PRMS_REQ = 18,
252
253 /*WLAN DAL Add BA Session Request*/
254 WDI_ADD_BA_SESSION_REQ = 19,
255
256 /*WLAN DAL Delete BA Request*/
257 WDI_DEL_BA_REQ = 20,
258
259 /* Miscellaneous Control */
260 /*WLAN DAL Channel Switch Request*/
261 WDI_CH_SWITCH_REQ = 21,
262
263 /*WLAN DAL Config STA Request*/
264 WDI_CONFIG_STA_REQ = 22,
265
266 /*WLAN DAL Set Link State Request*/
267 WDI_SET_LINK_ST_REQ = 23,
268
269 /*WLAN DAL Get Stats Request*/
270 WDI_GET_STATS_REQ = 24,
271
272 /*WLAN DAL Update Config Request*/
273 WDI_UPDATE_CFG_REQ = 25,
274
275 /* WDI ADD BA Request */
276 WDI_ADD_BA_REQ = 26,
277
278 /* WDI Trigger BA Request */
279 WDI_TRIGGER_BA_REQ = 27,
280
281 /*WLAN DAL Update Beacon Params Request*/
282 WDI_UPD_BCON_PRMS_REQ = 28,
283
284 /*WLAN DAL Send Beacon template Request*/
285 WDI_SND_BCON_REQ = 29,
286
287 /*WLAN DAL Send Probe Response Template Request*/
288 WDI_UPD_PROBE_RSP_TEMPLATE_REQ = 30,
289
290 /*WLAN DAL Set STA Bcast Key Request*/
291 WDI_SET_STA_BCAST_KEY_REQ = 31,
292
293 /*WLAN DAL Remove STA Bcast Key Request*/
294 WDI_RMV_STA_BCAST_KEY_REQ = 32,
295
296 /*WLAN DAL Set Max Tx Power Request*/
297 WDI_SET_MAX_TX_POWER_REQ = 33,
298
299 /* WLAN DAL P2P GO Notice Of Absence Request */
300 WDI_P2P_GO_NOTICE_OF_ABSENCE_REQ = 34,
301
302 /*WLAN DAL Enter IMPS Request*/
303 WDI_ENTER_IMPS_REQ = 35,
304
305 /*WLAN DAL Exit IMPS Request*/
306 WDI_EXIT_IMPS_REQ = 36,
307
308 /*WLAN DAL Enter BMPS Request*/
309 WDI_ENTER_BMPS_REQ = 37,
310
311 /*WLAN DAL Exit BMPS Request*/
312 WDI_EXIT_BMPS_REQ = 38,
313
314 /*WLAN DAL Enter UAPSD Request*/
315 WDI_ENTER_UAPSD_REQ = 39,
316
317 /*WLAN DAL Exit UAPSD Request*/
318 WDI_EXIT_UAPSD_REQ = 40,
319
320 /*WLAN DAL Set UAPSD Param Request*/
321 WDI_SET_UAPSD_PARAM_REQ = 41,
322
323 /*WLAN DAL Update UAPSD Param (SoftAP mode) Request*/
324 WDI_UPDATE_UAPSD_PARAM_REQ = 42,
325
326 /*WLAN DAL Configure RXP filter Request*/
327 WDI_CONFIGURE_RXP_FILTER_REQ = 43,
328
329 /*WLAN DAL Configure Beacon filter Request*/
330 WDI_SET_BEACON_FILTER_REQ = 44,
331
332 /*WLAN DAL Remove Beacon filter Request*/
333 WDI_REM_BEACON_FILTER_REQ = 45,
334
335 /*WLAN DAL Set RSSI thresholds Request*/
336 WDI_SET_RSSI_THRESHOLDS_REQ = 46,
337
338 /*WLAN DAL host offload Request*/
339 WDI_HOST_OFFLOAD_REQ = 47,
340
341 /*WLAN DAL add wowl bc ptrn Request*/
342 WDI_WOWL_ADD_BC_PTRN_REQ = 48,
343
344 /*WLAN DAL delete wowl bc ptrn Request*/
345 WDI_WOWL_DEL_BC_PTRN_REQ = 49,
346
347 /*WLAN DAL enter wowl Request*/
348 WDI_WOWL_ENTER_REQ = 50,
349
350 /*WLAN DAL exit wowl Request*/
351 WDI_WOWL_EXIT_REQ = 51,
352
353 /*WLAN DAL Configure Apps CPU Wakeup state Request*/
354 WDI_CONFIGURE_APPS_CPU_WAKEUP_STATE_REQ = 52,
355
356 /* WLAN NV Download Request */
357 WDI_NV_DOWNLOAD_REQ = 53,
358 /*WLAN DAL Flush AC Request*/
359 WDI_FLUSH_AC_REQ = 54,
360
361 /*WLAN DAL BT AMP event Request*/
362 WDI_BTAMP_EVENT_REQ = 55,
363 /*WLAN DAL Aggregated Add TSpec Request*/
364 WDI_AGGR_ADD_TS_REQ = 56,
365
366 WDI_ADD_STA_SELF_REQ = 57,
367
368 WDI_DEL_STA_SELF_REQ = 58,
369
370 /* WLAN FTM Command request */
371 WDI_FTM_CMD_REQ = 59,
372
Jeff Johnsone7245742012-09-05 17:12:55 -0700373 /*WLAN START OEM_DATA MEAS Request*/
374 WDI_START_OEM_DATA_REQ = 60,
Jeff Johnson295189b2012-06-20 16:38:30 -0700375 /* WLAN host resume request */
376 WDI_HOST_RESUME_REQ = 61,
377
378 WDI_KEEP_ALIVE_REQ = 62,
379
380 /* Set PNO */
381 WDI_SET_PREF_NETWORK_REQ = 63,
382
383 /*RSSI Filter Request*/
384 WDI_SET_RSSI_FILTER_REQ = 64,
385
386 /* Update Scan Parameters*/
387 WDI_UPDATE_SCAN_PARAMS_REQ = 65,
388
389 WDI_SET_TX_PER_TRACKING_REQ = 66,
390
391 WDI_8023_MULTICAST_LIST_REQ = 67,
392 WDI_RECEIVE_FILTER_SET_FILTER_REQ = 68,
393 WDI_PACKET_COALESCING_FILTER_MATCH_COUNT_REQ = 69,
394 WDI_RECEIVE_FILTER_CLEAR_FILTER_REQ = 70,
395
396 /*This is temp fix. Should be removed once
397 * Host and Riva code is in sync*/
398 WDI_INIT_SCAN_CON_REQ = 71,
399
400 /* WLAN HAL DUMP Command request */
401 WDI_HAL_DUMP_CMD_REQ = 72,
402
403 /* WLAN DAL Shutdown Request */
404 WDI_SHUTDOWN_REQ = 73,
405
406 /*Set power parameters on the device*/
407 WDI_SET_POWER_PARAMS_REQ = 74,
408
409 /* Traffic Stream Metrics statistic request */
410 WDI_TSM_STATS_REQ = 75,
411 /* GTK Rekey Offload */
412 WDI_GTK_OFFLOAD_REQ = 76,
413 WDI_GTK_OFFLOAD_GETINFO_REQ = 77,
414
415 /*Set Thermal Migration level to RIVA*/
416 WDI_SET_TM_LEVEL_REQ = 78,
417
418 /* Send a capability exchange message to HAL */
419 WDI_FEATURE_CAPS_EXCHANGE_REQ = 79,
420
Mohit Khanna4a70d262012-09-11 16:30:12 -0700421#ifdef WLAN_FEATURE_11AC
422 /* Send a capability exchange message to HAL */
423 WDI_UPDATE_VHT_OP_MODE_REQ = 80,
424#endif
425
Srinivas Girigowdad34cedb2013-01-25 13:33:11 -0800426 /*WLAN DAL Get Roam Rssi Request*/
427 WDI_GET_ROAM_RSSI_REQ = 81,
428
schang86c22c42013-03-13 18:41:24 -0700429 /*WLAN DAL Set Tx Power Request*/
430 WDI_SET_TX_POWER_REQ = 82,
Varun Reddy Yeturu920df212013-05-22 08:07:23 -0700431 WDI_ROAM_SCAN_OFFLOAD_REQ = 83,
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +0530432
433 WDI_TDLS_LINK_ESTABLISH_REQ = 84,
434
Leo Chang9056f462013-08-01 19:21:11 -0700435 /* WLAN FW LPHB config request */
436 WDI_LPHB_CFG_REQ = 85,
Sundaresan Ramachandran76e48e82013-07-15 13:07:17 +0530437
Rajeev79dbe4c2013-10-05 11:03:42 +0530438 /* WLAN FW set batch scan request */
Madan Mohan Koyyalamudi9d5d29c2013-10-23 15:18:03 -0700439 WDI_SET_BATCH_SCAN_REQ = 86,
Rajeev Kumar58c7d512013-12-26 14:42:24 -0800440
Arif Hussaina5ebce02013-08-09 15:09:58 -0700441 /*WLAN DAL Set Max Tx Power Per band Request*/
Arif Hussain874bf812013-12-27 16:39:15 -0800442 WDI_SET_MAX_TX_POWER_PER_BAND_REQ = 87,
Rajeev79dbe4c2013-10-05 11:03:42 +0530443
Manjunathappa Prakash86f78ca2014-02-10 18:09:15 -0800444 WDI_UPDATE_CHAN_REQ = 88,
445
c_hpothu92367912014-05-01 15:18:17 +0530446 WDI_GET_BCN_MISS_RATE_REQ = 89,
447
Sunil Duttbd736ed2014-05-26 21:19:41 +0530448#ifdef WLAN_FEATURE_LINK_LAYER_STATS
449 WDI_LL_STATS_SET_REQ = 90,
450 WDI_LL_STATS_GET_REQ = 91,
451 WDI_LL_STATS_CLEAR_REQ = 92,
452#endif
453
Dino Mycle41bdc942014-06-10 11:30:24 +0530454#ifdef WLAN_FEATURE_EXTSCAN
455 WDI_EXTSCAN_START_REQ = 93,
456 WDI_EXTSCAN_STOP_REQ = 94,
457 WDI_EXTSCAN_GET_CACHED_RESULTS_REQ = 95,
458 WDI_EXTSCAN_GET_CAPABILITIES_REQ = 96,
459 WDI_EXTSCAN_SET_BSSID_HOTLIST_REQ = 97,
460 WDI_EXTSCAN_RESET_BSSID_HOTLIST_REQ = 98,
461 WDI_EXTSCAN_SET_SIGNF_RSSI_CHANGE_REQ = 99,
462 WDI_EXTSCAN_RESET_SIGNF_RSSI_CHANGE_REQ = 100,
463#endif
Jeff Johnson295189b2012-06-20 16:38:30 -0700464 WDI_MAX_REQ,
465
466 /*Send a suspend Indication down to HAL*/
467 WDI_HOST_SUSPEND_IND = WDI_MAX_REQ ,
468
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -0800469 /* Send a traffic stats indication to HAL */
470 WDI_TRAFFIC_STATS_IND,
471
Sundaresan Ramachandran76e48e82013-07-15 13:07:17 +0530472 /* DHCP Start Indication */
473 WDI_DHCP_START_IND,
474
475 /* DHCP Stop Indication */
476 WDI_DHCP_STOP_IND,
477
Chet Lanctot186b5732013-03-18 10:26:30 -0700478 /* Drop/Receive unencrypted frames indication to HAL */
479 WDI_EXCLUDE_UNENCRYPTED_IND,
480
Yue Mab9c86f42013-08-14 15:59:08 -0700481 /* Send an add periodic Tx pattern indication to HAL */
482 WDI_ADD_PERIODIC_TX_PATTERN_IND,
483
484 /* Send a delete periodic Tx pattern indicationto HAL */
485 WDI_DEL_PERIODIC_TX_PATTERN_IND,
486
Rajeev79dbe4c2013-10-05 11:03:42 +0530487 /*Send stop batch scan indication to FW*/
488 WDI_STOP_BATCH_SCAN_IND,
Rajeev Kumar58c7d512013-12-26 14:42:24 -0800489
Rajeev79dbe4c2013-10-05 11:03:42 +0530490 /*Send stop batch scan indication to FW*/
491 WDI_TRIGGER_BATCH_SCAN_RESULT_IND,
Manjunathappa Prakash5c7d6362014-02-20 12:59:51 -0800492
493 /* Send Rate Update Indication */
494 WDI_RATE_UPDATE_IND,
495
Sandeep Puligilla8b8b74b2014-02-10 16:39:05 +0530496 WDI_START_HT40_OBSS_SCAN_IND,
497 WDI_STOP_HT40_OBSS_SCAN_IND,
Rajeev Kumar58c7d512013-12-26 14:42:24 -0800498
Kalikinkar dhara1e83b772014-02-06 12:59:22 -0800499 /* csa channel switch req*/
500 WDI_CH_SWITCH_REQ_V1,
501
Rajeev Kumar58c7d512013-12-26 14:42:24 -0800502 /*Keep adding the indications to the max request
503 such that we keep them sepparate */
Jeff Johnson295189b2012-06-20 16:38:30 -0700504 WDI_MAX_UMAC_IND
Sandeep Puligilla8b8b74b2014-02-10 16:39:05 +0530505}WDI_RequestEnumType;
Jeff Johnson295189b2012-06-20 16:38:30 -0700506
507/*---------------------------------------------------------------------------
508 WLAN DAL Supported Response Types
509 ---------------------------------------------------------------------------*/
510typedef enum
511{
512 /*WLAN DAL START Response*/
513 WDI_START_RESP = 0,
514
515 /*WLAN DAL STOP Response*/
516 WDI_STOP_RESP = 1,
517
518 /*WLAN DAL STOP Response*/
519 WDI_CLOSE_RESP = 2,
520
521 /*SCAN*/
522 /*WLAN DAL Init Scan Response*/
523 WDI_INIT_SCAN_RESP = 3,
524
525 /*WLAN DAL Start Scan Response*/
526 WDI_START_SCAN_RESP = 4,
527
528 /*WLAN DAL End Scan Response*/
529 WDI_END_SCAN_RESP = 5,
530
531 /*WLAN DAL Finish Scan Response*/
532 WDI_FINISH_SCAN_RESP = 6,
533
534
535 /*ASSOCIATION*/
536 /*WLAN DAL Join Response*/
537 WDI_JOIN_RESP = 7,
538
539 /*WLAN DAL Config BSS Response*/
540 WDI_CONFIG_BSS_RESP = 8,
541
542 /*WLAN DAL Del BSS Response*/
543 WDI_DEL_BSS_RESP = 9,
544
545 /*WLAN DAL Post Assoc Response*/
546 WDI_POST_ASSOC_RESP = 10,
547
548 /*WLAN DAL Del STA Response*/
549 WDI_DEL_STA_RESP = 11,
550
551 /*WLAN DAL Set BSS Key Response*/
552 WDI_SET_BSS_KEY_RESP = 12,
553
554 /*WLAN DAL Remove BSS Key Response*/
555 WDI_RMV_BSS_KEY_RESP = 13,
556
557 /*WLAN DAL Set STA Key Response*/
558 WDI_SET_STA_KEY_RESP = 14,
559
560 /*WLAN DAL Remove STA Key Response*/
561 WDI_RMV_STA_KEY_RESP = 15,
562
563 /*WLAN DAL Add TSpec Response*/
564 WDI_ADD_TS_RESP = 16,
565
566 /*WLAN DAL Delete TSpec Response*/
567 WDI_DEL_TS_RESP = 17,
568
569 /*WLAN DAL Update EDCA Params Response*/
570 WDI_UPD_EDCA_PRMS_RESP = 18,
571
572 /*WLAN DAL Add BA Session Response*/
573 WDI_ADD_BA_SESSION_RESP = 19,
574
575 /*WLAN DAL Delete BA Response*/
576 WDI_DEL_BA_RESP = 20,
577
578 /*WLAN DAL Channel Switch Response*/
579 WDI_CH_SWITCH_RESP = 21,
580
581 /*WLAN DAL Config STA Response*/
582 WDI_CONFIG_STA_RESP = 22,
583
584 /*WLAN DAL Set Link State Response*/
585 WDI_SET_LINK_ST_RESP = 23,
586
587 /*WLAN DAL Get Stats Response*/
588 WDI_GET_STATS_RESP = 24,
589
590 /*WLAN DAL Update Config Response*/
591 WDI_UPDATE_CFG_RESP = 25,
592
593 /* WDI ADD BA Response */
594 WDI_ADD_BA_RESP = 26,
595
596 /* WDI Trigger BA Response */
597 WDI_TRIGGER_BA_RESP = 27,
598
599 /*WLAN DAL Update beacon params Response*/
600 WDI_UPD_BCON_PRMS_RESP = 28,
601
602 /*WLAN DAL Send beacon template Response*/
603 WDI_SND_BCON_RESP = 29,
604
605 /*WLAN DAL Update Probe Response Template Response*/
606 WDI_UPD_PROBE_RSP_TEMPLATE_RESP = 30,
607
608 /*WLAN DAL Set STA Key Response*/
609 WDI_SET_STA_BCAST_KEY_RESP = 31,
610
611 /*WLAN DAL Remove STA Key Response*/
612 WDI_RMV_STA_BCAST_KEY_RESP = 32,
613
614 /*WLAN DAL Set Max Tx Power Response*/
615 WDI_SET_MAX_TX_POWER_RESP = 33,
616
617 /*WLAN DAL Enter IMPS Response*/
618 WDI_ENTER_IMPS_RESP = 34,
619
620 /*WLAN DAL Exit IMPS Response*/
621 WDI_EXIT_IMPS_RESP = 35,
622
623 /*WLAN DAL Enter BMPS Response*/
624 WDI_ENTER_BMPS_RESP = 36,
625
626 /*WLAN DAL Exit BMPS Response*/
627 WDI_EXIT_BMPS_RESP = 37,
628
629 /*WLAN DAL Enter UAPSD Response*/
630 WDI_ENTER_UAPSD_RESP = 38,
631
632 /*WLAN DAL Exit UAPSD Response*/
633 WDI_EXIT_UAPSD_RESP = 39,
634
635 /*WLAN DAL Set UAPSD Param Response*/
636 WDI_SET_UAPSD_PARAM_RESP = 40,
637
638 /*WLAN DAL Update UAPSD Param (SoftAP mode) Response*/
639 WDI_UPDATE_UAPSD_PARAM_RESP = 41,
640
641 /*WLAN DAL Configure RXP filter Response*/
642 WDI_CONFIGURE_RXP_FILTER_RESP = 42,
643
644 /*WLAN DAL Set Beacon filter Response*/
645 WDI_SET_BEACON_FILTER_RESP = 43,
646
647 /*WLAN DAL Remove Beacon filter Response*/
648 WDI_REM_BEACON_FILTER_RESP = 44,
649
650 /*WLAN DAL Set RSSI thresholds Response*/
651 WDI_SET_RSSI_THRESHOLDS_RESP = 45,
652
653 /*WLAN DAL Set RSSI thresholds Response*/
654 WDI_HOST_OFFLOAD_RESP = 46,
655
656 /*WLAN DAL add wowl bc ptrn Response*/
657 WDI_WOWL_ADD_BC_PTRN_RESP = 47,
658
659 /*WLAN DAL delete wowl bc ptrn Response*/
660 WDI_WOWL_DEL_BC_PTRN_RESP = 48,
661
662 /*WLAN DAL enter wowl Response*/
663 WDI_WOWL_ENTER_RESP = 49,
664
665 /*WLAN DAL exit wowl Response*/
666 WDI_WOWL_EXIT_RESP = 50,
667
668 /*WLAN DAL Configure Apps CPU Wakeup state Response*/
669 WDI_CONFIGURE_APPS_CPU_WAKEUP_STATE_RESP = 51,
670
671 /* WLAN NV Download responce */
672 WDI_NV_DOWNLOAD_RESP = 52,
673
674 /*WLAN DAL Flush AC Response*/
675 WDI_FLUSH_AC_RESP = 53,
676
677 /*WLAN DAL Flush AC Response*/
678 WDI_BTAMP_EVENT_RESP = 54,
679
680 /*WLAN DAL Add Aggregated TSpec Response*/
681 WDI_AGGR_ADD_TS_RESP = 55,
682
683 /*Add Self STA Response*/
684 WDI_ADD_STA_SELF_RESP = 56,
685
686 /*Delete Self STA Response*/
687 WDI_DEL_STA_SELF_RESP = 57,
688
Jeff Johnsone7245742012-09-05 17:12:55 -0700689 /*WLAN START OEM_DATA Response*/
690 WDI_START_OEM_DATA_RESP = 58,
Jeff Johnson295189b2012-06-20 16:38:30 -0700691
692 /* WLAN host resume request */
693 WDI_HOST_RESUME_RESP = 59,
694
695 /* WLAN DAL P2P GO Notice Of Absence Response */
696 WDI_P2P_GO_NOTICE_OF_ABSENCE_RESP = 60,
697
698 /* FTM Response from HAL */
699 WDI_FTM_CMD_RESP = 61,
700
701 /*Keep alive response */
702 WDI_KEEP_ALIVE_RESP = 62,
703
704 /* Set PNO Response */
705 WDI_SET_PREF_NETWORK_RESP = 63,
706
707 /* Set RSSI Filter Response */
708 WDI_SET_RSSI_FILTER_RESP = 64,
709
710 /* Update Scan Parameters Resp */
711 WDI_UPDATE_SCAN_PARAMS_RESP = 65,
712
713 //Tx PER Tracking
714 WDI_SET_TX_PER_TRACKING_RESP = 66,
715
716
717
718 /* Packet Filtering Response */
719 WDI_8023_MULTICAST_LIST_RESP = 67,
720
721 WDI_RECEIVE_FILTER_SET_FILTER_RESP = 68,
722
723 WDI_PACKET_COALESCING_FILTER_MATCH_COUNT_RESP = 69,
724
725 WDI_RECEIVE_FILTER_CLEAR_FILTER_RESP = 70,
726
727
728 /* WLAN HAL DUMP Command Response */
729 WDI_HAL_DUMP_CMD_RESP = 71,
730
731 /* WLAN Shutdown Response */
732 WDI_SHUTDOWN_RESP = 72,
733
734 /*Set power parameters response */
735 WDI_SET_POWER_PARAMS_RESP = 73,
736
737 WDI_TSM_STATS_RESP = 74,
738 /* GTK Rekey Offload */
Jeff Johnsone7245742012-09-05 17:12:55 -0700739 WDI_GTK_OFFLOAD_RESP = 75,
740 WDI_GTK_OFFLOAD_GETINFO_RESP = 76,
Jeff Johnson295189b2012-06-20 16:38:30 -0700741
742 WDI_SET_TM_LEVEL_RESP = 77,
743
744 /* FW sends its capability bitmap as a response */
745 WDI_FEATURE_CAPS_EXCHANGE_RESP = 78,
746
Mohit Khanna4a70d262012-09-11 16:30:12 -0700747#ifdef WLAN_FEATURE_11AC
748 WDI_UPDATE_VHT_OP_MODE_RESP = 79,
749#endif
750
Srinivas Girigowdad34cedb2013-01-25 13:33:11 -0800751 /* WLAN DAL Get Roam Rssi Response*/
752 WDI_GET_ROAM_RSSI_RESP = 80,
753
schang86c22c42013-03-13 18:41:24 -0700754 WDI_SET_TX_POWER_RESP = 81,
Varun Reddy Yeturu920df212013-05-22 08:07:23 -0700755 WDI_ROAM_SCAN_OFFLOAD_RESP = 82,
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +0530756
757 WDI_TDLS_LINK_ESTABLISH_REQ_RESP = 83,
Leo Chang9056f462013-08-01 19:21:11 -0700758
759 /* WLAN FW LPHB Config response */
760 WDI_LPHB_CFG_RESP = 84,
761
Rajeev Kumar58c7d512013-12-26 14:42:24 -0800762 WDI_SET_BATCH_SCAN_RESP = 85,
Rajeev79dbe4c2013-10-05 11:03:42 +0530763
Arif Hussain874bf812013-12-27 16:39:15 -0800764 WDI_SET_MAX_TX_POWER_PER_BAND_RSP = 86,
Manjunathappa Prakash86f78ca2014-02-10 18:09:15 -0800765
766 WDI_UPDATE_CHAN_RESP = 87,
Kalikinkar dhara1e83b772014-02-06 12:59:22 -0800767 /* channel switch resp v1*/
768 WDI_CH_SWITCH_RESP_V1 = 88,
769
c_hpothu92367912014-05-01 15:18:17 +0530770 WDI_GET_BCN_MISS_RATE_RSP = 89,
Sunil Duttbd736ed2014-05-26 21:19:41 +0530771#ifdef WLAN_FEATURE_LINK_LAYER_STATS
772 WDI_LL_STATS_SET_RSP = 90,
773 WDI_LL_STATS_GET_RSP = 91,
774 WDI_LL_STATS_CLEAR_RSP = 92,
775#endif
776
Dino Mycle41bdc942014-06-10 11:30:24 +0530777#ifdef WLAN_FEATURE_EXTSCAN
Rashmi Ramannaa3aa5b12014-07-21 19:10:17 +0530778 WDI_EXTSCAN_START_RSP = 93,
779 WDI_EXTSCAN_STOP_RSP = 94,
780 WDI_EXTSCAN_GET_CACHED_RESULTS_RSP = 95,
781 WDI_EXTSCAN_GET_CAPABILITIES_RSP = 96,
782 WDI_EXTSCAN_SET_HOTLIST_BSSID_RSP = 97,
783 WDI_EXTSCAN_RESET_HOTLIST_BSSID_RSP = 98,
784 WDI_EXTSCAN_SET_SIGNF_RSSI_CHANGE_RSP = 99,
785 WDI_EXTSCAN_RESET_SIGNF_RSSI_CHANGE_RSP = 100,
Dino Mycle41bdc942014-06-10 11:30:24 +0530786#endif
Jeff Johnson295189b2012-06-20 16:38:30 -0700787 /*-------------------------------------------------------------------------
788 Indications
789 !! Keep these last in the enum if possible
790 -------------------------------------------------------------------------*/
791 WDI_HAL_IND_MIN ,
792 /*When RSSI monitoring is enabled of the Lower MAC and a threshold has been
793 passed. */
794 WDI_HAL_RSSI_NOTIFICATION_IND = WDI_HAL_IND_MIN,
795
796 /*Link loss in the low MAC */
797 WDI_HAL_MISSED_BEACON_IND = WDI_HAL_IND_MIN + 1,
798
799 /*When hardware has signaled an unknown addr2 frames. The indication will
800 contain info from frames to be passed to the UMAC, this may use this info to
801 deauth the STA*/
802 WDI_HAL_UNKNOWN_ADDR2_FRAME_RX_IND = WDI_HAL_IND_MIN + 2,
803
804 /*MIC Failure detected by HW*/
805 WDI_HAL_MIC_FAILURE_IND = WDI_HAL_IND_MIN + 3,
806
807 /*Fatal Error Ind*/
808 WDI_HAL_FATAL_ERROR_IND = WDI_HAL_IND_MIN + 4,
809
810 /*Received when the RIVA SW decides to autonomously delete an associate
811 station (e.g. Soft AP TIM based dissassoc) */
812 WDI_HAL_DEL_STA_IND = WDI_HAL_IND_MIN + 5,
813
814 /*Coex indication*/
815 WDI_HAL_COEX_IND = WDI_HAL_IND_MIN + 6,
816
817 /* Tx Complete Indication */
818 WDI_HAL_TX_COMPLETE_IND = WDI_HAL_IND_MIN + 7,
819
820 WDI_HAL_P2P_NOA_ATTR_IND = WDI_HAL_IND_MIN + 8,
821
822 /* Preferred Network Found Indication */
823 WDI_HAL_PREF_NETWORK_FOUND_IND = WDI_HAL_IND_MIN + 9,
824
825 /* Wakeup Reason Indication */
826 WDI_HAL_WAKE_REASON_IND = WDI_HAL_IND_MIN + 10,
827
828 /* Tx PER Hit Indication */
829 WDI_HAL_TX_PER_HIT_IND = WDI_HAL_IND_MIN + 11,
Viral Modid86bde22012-12-10 13:09:21 -0800830
831 /* NOA Start Indication from FW to Host */
832 WDI_HAL_P2P_NOA_START_IND = WDI_HAL_IND_MIN + 12,
833
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +0530834 /* TDLS Indication from FW to Host */
835 WDI_HAL_TDLS_IND = WDI_HAL_IND_MIN + 13,
836
Leo Chang9056f462013-08-01 19:21:11 -0700837 /* LPHB timeout indication */
Leo Changd9df8aa2013-09-26 13:32:26 -0700838 WDI_HAL_LPHB_IND = WDI_HAL_IND_MIN + 14,
Ravi Joshid2ca7c42013-07-23 08:37:49 -0700839
840 /* IBSS Peer Inactivity Indication from FW to Host */
841 WDI_HAL_IBSS_PEER_INACTIVITY_IND = WDI_HAL_IND_MIN + 15,
842
Yue Mab9c86f42013-08-14 15:59:08 -0700843 /* Periodic Tx Pattern Indication from FW to Host */
844 WDI_HAL_PERIODIC_TX_PTRN_FW_IND = WDI_HAL_IND_MIN + 16,
845
Rajeev79dbe4c2013-10-05 11:03:42 +0530846
Rajeev79dbe4c2013-10-05 11:03:42 +0530847 WDI_BATCHSCAN_RESULT_IND = WDI_HAL_IND_MIN + 17,
Rajeev79dbe4c2013-10-05 11:03:42 +0530848
Leo Chang0b0e45a2013-12-15 15:18:55 -0800849 WDI_HAL_CH_AVOID_IND = WDI_HAL_IND_MIN + 18,
c_hpothu86041002014-04-14 19:06:51 +0530850
851 /* print register values indication from FW to Host */
852 WDI_PRINT_REG_INFO_IND = WDI_HAL_IND_MIN + 19,
Sunil Duttbd736ed2014-05-26 21:19:41 +0530853#ifdef WLAN_FEATURE_LINK_LAYER_STATS
854 WDI_HAL_LL_STATS_RESULTS_IND = WDI_HAL_IND_MIN + 20,
855#endif
Dino Mycle41bdc942014-06-10 11:30:24 +0530856#ifdef WLAN_FEATURE_EXTSCAN
Rashmi Ramannaa3aa5b12014-07-21 19:10:17 +0530857 WDI_HAL_EXTSCAN_PROGRESS_IND = WDI_HAL_IND_MIN + 21,
858 WDI_HAL_EXTSCAN_SCAN_AVAILABLE_IND = WDI_HAL_IND_MIN + 22,
859 WDI_HAL_EXTSCAN_RESULT_IND = WDI_HAL_IND_MIN + 23,
860 WDI_HAL_EXTSCAN_BSSID_HOTLIST_RESULT_IND = WDI_HAL_IND_MIN + 24,
861 WDI_HAL_EXTSCAN_SIG_RSSI_RESULT_IND = WDI_HAL_IND_MIN + 25,
Dino Mycle41bdc942014-06-10 11:30:24 +0530862#endif
Jeff Johnson295189b2012-06-20 16:38:30 -0700863 WDI_MAX_RESP
864}WDI_ResponseEnumType;
865
866typedef struct
867{
868 /*Flag that marks a session as being in use*/
869 wpt_boolean bInUse;
870
871 /*Flag that keeps track if a series of assoc requests for this BSS are
872 currently pending in the queue or processed
873 - the flag is set to true when the Join request ends up being queued
874 - and reset to false when the Pending queue is empty */
875 wpt_boolean bAssocReqQueued;
876
877 /*BSSID of the session*/
878 wpt_macAddr macBSSID;
879
880 /*BSS Index associated with this BSSID*/
881 wpt_uint8 ucBSSIdx;
882
883 /*Associated state of the current BSS*/
884 WDI_AssocStateType wdiAssocState;
885
886 /*WDI Pending Request Queue*/
887 wpt_list wptPendingQueue;
888
889 /*DPU Information for this BSS*/
890 wpt_uint8 bcastDpuIndex;
891 wpt_uint8 bcastDpuSignature;
892 wpt_uint8 bcastMgmtDpuIndex;
893 wpt_uint8 bcastMgmtDpuSignature;
894
895 /*RMF enabled/disabled*/
896 wpt_uint8 ucRmfEnabled;
897
898 /*Bcast STA ID associated with this BSS session */
899 wpt_uint8 bcastStaIdx;
900
901 /*The type of the BSS in the session */
902 WDI_BssType wdiBssType;
903}WDI_BSSSessionType;
904
905/*---------------------------------------------------------------------------
906 WDI_ConfigBSSRspInfoType
907---------------------------------------------------------------------------*/
908typedef WPT_PACK_PRE struct
909{
910 /*BSS index allocated by HAL*/
911 wpt_uint8 ucBSSIdx;
912
913 /*BSSID of the BSS*/
914 wpt_macAddr macBSSID;
915
916 /*Broadcast DPU descriptor index allocated by HAL and used for
917 broadcast/multicast packets.*/
918 wpt_uint8 ucBcastDpuDescIndx;
919
920 /*DPU signature to be used for broadcast/multicast packets*/
921 wpt_uint8 ucBcastDpuSignature;
922
923 /*DPU descriptor index allocated by HAL, used for bcast/mcast management
924 packets*/
925 wpt_uint8 ucMgmtDpuDescIndx;
926
927 /*DPU signature to be used for bcast/mcast management packets*/
928 wpt_uint8 ucMgmtDpuSignature;
929
930 /*Status of the request received from HAL */
931 eHalStatus halStatus;
932}WPT_PACK_POST WDI_ConfigBSSRspInfoType;
933
934
935/*---------------------------------------------------------------------------
936 WDI_PostAssocRspInfoType
937---------------------------------------------------------------------------*/
938typedef WPT_PACK_PRE struct
939{
940 /*STA Index allocated by HAL.*/
941 wpt_uint16 usSTAIdx;
942
943 /*MAC Address of STA*/
944 wpt_macAddr macSTA;
945
946 /*Unicast DPU signature*/
947 wpt_uint8 ucUcastSig;
948
949 /*Broadcast DPU Signature*/
950 wpt_uint8 ucBcastSig;
951
952 /*BSSID of the BSS*/
953 wpt_macAddr macBSSID;
954
955 /*HAL Status */
956 eHalStatus halStatus;
957}WPT_PACK_POST WDI_PostAssocRspInfoType;
958
959/*---------------------------------------------------------------------------
960 WLAN DAL FSM Event Info Type
961 ---------------------------------------------------------------------------*/
962typedef struct
963{
964 /*Events can be linked in a list - put a node in front for that, it will be
965 used by wpt to link them*/
966 wpt_list_node wptListNode;
967
968 /*Request Received */
969 WDI_RequestEnumType wdiRequest;
970
971 /*Response Received */
972 WDI_ResponseEnumType wdiResponse;
973
974 /*Data associated with the request */
975 void* pEventData;
976
977 /*Data Size*/
978 wpt_uint32 uEventDataSize;
979
980 /*Callback function for receiving the response to the event*/
981 void* pCBfnc;
982
983 /*User data to be sent along with the CB function call*/
984 void* pUserData;
985}WDI_EventInfoType;
986
987/*---------------------------------------------------------------------------
988 WLAN DAL Session Index Type
989 ---------------------------------------------------------------------------*/
990typedef struct
991{
992 /*Events can be linked in a list - put a node in front for that, it will be
993 used by wpt to link them*/
994 wpt_list_node wptListNode;
995
996 /*Session id for the new association to be processed*/
997 wpt_uint8 ucIndex;
998
999}WDI_NextSessionIdType;
1000
1001#define WDI_CONTROL_BLOCK_MAGIC 0x67736887 /* WDIC in little endian */
1002/*---------------------------------------------------------------------------
1003 WLAN DAL Control Block Type
1004 ---------------------------------------------------------------------------*/
1005typedef struct
1006{
1007 /*magic number so callbacks can validate their context pointers*/
1008 wpt_uint32 magic;
1009
1010 /*Ptr to the OS Context received from the UMAC*/
1011 void* pOSContext;
1012
1013 /*Ptr to the PAL Context received from PAL*/
1014 void* pPALContext;
1015
1016 /*Ptr to the Datapath Context received from PAL*/
1017 void* pDPContext;
1018
1019 /*Ptr to the Datapath Transport Driver Context received from PAL*/
1020 void* pDTDriverContext;
1021
1022 /*Hanlde to the control transport service*/
1023 WCTS_HandleType wctsHandle;
1024
1025 /*Flag that keeps track if CT is Opened or not*/
1026 wpt_boolean bCTOpened;
1027
1028 /*The global state of the DAL Control Path*/
1029 WDI_MainStateType uGlobalState;
1030
1031 /*Flag to keep track of the expected state transition after processing
1032 of a response */
1033 WDI_MainStateType ucExpectedStateTransition;
1034
1035 /*Main Synchronization Object for the WDI CB*/
1036 wpt_mutex wptMutex;
1037
1038 /*WDI response timer*/
1039 wpt_timer wptResponseTimer;
1040
1041 /*WDI Pending Request Queue*/
1042 wpt_list wptPendingQueue;
1043#if 0
1044 /*The state of the DAL during a scanning procedure*/
1045 WDI_ScanStateType uScanState;
1046
1047 /*Flag that keeps track if a Scan is currently in progress*/
1048 wpt_boolean bScanInProgress;
1049#endif
1050 /*Flag that keeps track if an Association is currently in progress*/
1051 wpt_boolean bAssociationInProgress;
1052
1053 /*Array of simultaneous BSS Sessions*/
1054 WDI_BSSSessionType aBSSSessions[WDI_MAX_BSS_SESSIONS];
1055
1056 /*WDI Pending Association Session Id Queue - it keeps track of the
1057 order in which queued assoc requests came in*/
1058 wpt_list wptPendingAssocSessionIdQueue;
1059
1060 /*! TO DO : - group these in a union, only one cached req can exist at a
1061 time */
1062
1063 /*Cached post assoc request - there can only be one in the system as
1064 only one request goes down to hal up until a response is received
1065 The values cached are used on response to save a station if needed */
1066 WDI_PostAssocReqParamsType wdiCachedPostAssocReq;
1067
1068 /*Cached config sta request - there can only be one in the system as
1069 only one request goes down to hal up until a response is received
1070 The values cached are used on response to save a station if needed */
1071 WDI_ConfigSTAReqParamsType wdiCachedConfigStaReq;
1072
1073 /*Cached config sta request - there can only be one in the system as
1074 only one request goes down to hal up until a response is received
1075 The values cached are used on response to save a BSS if needed */
1076 WDI_ConfigBSSReqParamsType wdiCachedConfigBssReq;
1077
1078 /*Cached set link state request - there can only be one in the system as
1079 only one request goes down to hal up until a response is received
1080 The values cached are used on response to delete a BSS if needed */
1081 WDI_SetLinkReqParamsType wdiCacheSetLinkStReq;
1082
1083 /*Cached add STA self request - there can only be one in the system as
1084 only one request goes down to hal up until a response is received
1085 The values cached are used on response to save the self STA in the table */
1086 WDI_AddSTASelfReqParamsType wdiCacheAddSTASelfReq;
1087
1088 /*Current session being handled*/
1089 wpt_uint8 ucCurrentBSSSesIdx;
1090
1091 /*Pointer to the response CB of the pending request*/
1092 void* pfncRspCB;
1093
1094 /*Pointer to the user data to be sent along with the response CB*/
1095 void* pRspCBUserData;
1096
1097 /*The expected response from HAL*/
1098 WDI_ResponseEnumType wdiExpectedResponse;
1099
1100 /*Request status callback offered by UMAC - it is called if the current
1101 req has returned PENDING as status; it delivers the status of sending
1102 the message over the BUS */
1103 WDI_ReqStatusCb wdiReqStatusCB;
1104
1105 /*The user data passed in by UMAC, it will be sent back when the above
1106 function pointer will be called */
1107 void* pReqStatusUserData;
1108
1109 /*Indication callback given by UMAC to be called by the WLAN DAL when it
1110 wishes to send something back independent of a request*/
1111 WDI_LowLevelIndCBType wdiLowLevelIndCB;
1112
1113 /*The user data passed in by UMAC, it will be sent back when the indication
1114 function pointer will be called */
1115 void* pIndUserData;
1116
1117 /*Cached start response parameters*/
1118 WDI_StartRspParamsType wdiCachedStartRspParams;
1119
1120 /* Information related to NV Image*/
1121 WDI_NvBlobInfoParams wdiNvBlobInfo;
1122
1123 /*STA Table Information*/
1124 /*Max number of stations allowed by device */
1125 wpt_uint8 ucMaxStations;
1126
1127 /*Max number of BSSes allowed by device */
1128 wpt_uint8 ucMaxBssids;
1129
1130 /* Global BSS and STA table - Memory is allocated when needed.*/
1131 void* staTable;
1132
1133#ifndef HAL_SELF_STA_PER_BSS
1134 /*Index of the Self STA */
1135 wpt_uint8 ucSelfStaId;
1136
1137 /* Self STA DPU Index */
1138 wpt_uint16 usSelfStaDpuId;
1139
1140 /*Self STA Mac*/
1141 wpt_macAddr macSelfSta;
1142#endif
1143
1144 /*Is frame translation enabled */
1145 wpt_uint8 bFrameTransEnabled;
1146
1147 /*AMSDU BD Fix Mask - used by the Fixing routine for Data Path */
1148 WDI_RxBdType wdiRxAmsduBdFixMask;
1149
1150 /*First AMSDU BD - used by the Fixing routine for Data Path */
1151 WDI_RxBdType wdiRxAmsduFirstBdCache;
1152
1153 /*This must be incremented on sta change */
1154 wpt_uint32 uBdSigSerialNum;
1155
1156 /* dpu routing flag
1157 ! TO DO: - must be set/reset when PS is enabled for UAPSD */
1158 wpt_uint8 ucDpuRF;
1159 /* Event to wait for when WCTS is told to perform an action */
1160 wpt_event wctsActionEvent;
1161 /* Event to wait for ACK from DXE after the power state is set */
1162 wpt_event setPowerStateEvent;
1163 /* DXE physical addr to be passed down to RIVA. RIVA HAL will use it to program
1164 DXE when DXE wakes up from power save*/
1165 unsigned int dxePhyAddr;
1166
Mihir Shetea4306052014-03-25 00:02:54 +05301167 wpt_boolean dxeRingsEmpty;
1168
Jeff Johnson295189b2012-06-20 16:38:30 -07001169 /*NV download request parameters */
1170 WDI_NvDownloadReqParamsType wdiCachedNvDownloadReq;
1171
1172 /* Driver Type */
1173 tDriverType driverMode;
1174
Jeff Johnson295189b2012-06-20 16:38:30 -07001175 /* Statically allocated FTM Response Buffer */
1176 wpt_uint8 ucFTMCommandRspBuffer[WDI_FTM_MAX_RECEIVE_BUFFER];
Jeff Johnson295189b2012-06-20 16:38:30 -07001177
1178 /*Driver in BMPS state*/
1179 wpt_boolean bInBmps;
1180
1181 /*version of the PNO implementation in RIVA*/
1182 wpt_uint8 wdiPNOVersion;
Madan Mohan Koyyalamudi0bfd0002012-10-24 14:39:37 -07001183
1184 /*SSR timer*/
1185 wpt_timer ssrTimer;
Pratik Bhalgatd4404592012-11-22 17:49:14 +05301186
1187 /*Version of the WLAN HAL API received on start resp*/
1188 WDI_WlanVersionType wlanVersion;
1189
Gopichand Nakkalaa5e3ede2012-12-21 15:28:36 -08001190 /*timestamp when we start response timer*/
1191 wpt_uint32 uTimeStampRspTmrStart;
1192
1193 /*timestamp when we get response timer event*/
1194 wpt_uint32 uTimeStampRspTmrExp;
Gopichand Nakkala7fbde852013-05-07 03:05:56 -07001195
1196 /* enable/disable SSR on WDI timeout */
1197 wpt_boolean bEnableSSR;
Arif Hussain6c8947a2013-11-27 13:57:14 -08001198
1199 /* timestamp derived from msm arch counter. */
1200 /*timestamp when we start response timer*/
1201 wpt_uint64 uArchTimeStampRspTmrStart;
1202
1203 /*timestamp when we get response timer event*/
1204 wpt_uint64 uArchTimeStampRspTmrExp;
Katya Nigamf02ad012014-05-05 16:12:49 +05301205
1206 /* reason for WDI_DetectedDeviceError */
1207 void * DeviceErrorReason;
Jeff Johnson295189b2012-06-20 16:38:30 -07001208}WDI_ControlBlockType;
1209
1210
1211
1212
1213/*---------------------------------------------------------------------------
1214
1215 DESCRIPTION
1216 WLAN DAL Request Processing function definition.
1217
1218 PARAMETERS
1219
1220 IN
1221 pWDICtx: pointer to the WLAN DAL context
1222 pEventData: pointer to the event information structure
1223
1224
1225 RETURN VALUE
1226 The result code associated with performing the operation
1227
1228---------------------------------------------------------------------------*/
1229typedef WDI_Status (*WDI_ReqProcFuncType)( WDI_ControlBlockType* pWDICtx,
1230 WDI_EventInfoType* pEventData);
1231
1232
1233/*---------------------------------------------------------------------------
1234
1235 DESCRIPTION
1236 WLAN DAL Response Processing function definition.
1237
1238 PARAMETERS
1239
1240 IN
1241 pWDICtx: pointer to the WLAN DAL context
1242 pEventData: pointer to the event information structure
1243
1244
1245 RETURN VALUE
1246 The result code associated with performing the operation
1247
1248---------------------------------------------------------------------------*/
1249typedef WDI_Status (*WDI_RspProcFuncType)( WDI_ControlBlockType* pWDICtx,
1250 WDI_EventInfoType* pEventData);
1251
1252
1253
1254
1255/*==========================================================================
1256 MAIN DAL FSM Definitions and Declarations
1257==========================================================================*/
1258
1259/*---------------------------------------------------------------------------
1260 DAL Control Path Main FSM
1261 ---------------------------------------------------------------------------*/
1262#define WDI_STATE_TRANSITION(_pctx, _st) (_pctx->uGlobalState = _st)
1263
1264
1265
1266/*---------------------------------------------------------------------------
1267 DAL Main Event type
1268---------------------------------------------------------------------------*/
1269typedef enum
1270{
1271 /* Start request received from UMAC */
1272 WDI_START_EVENT = 0,
1273
1274 /* Stop request received from UMAC */
1275 WDI_STOP_EVENT = 1,
1276
1277 /* HAL request received from UMAC*/
1278 WDI_REQUEST_EVENT = 2,
1279
1280 /* HAL Response received from device */
1281 WDI_RESPONSE_EVENT = 3,
1282
1283 /* Close request received from UMAC */
1284 WDI_CLOSE_EVENT = 4,
1285
1286 /* Shutdown request received from UMAC */
1287 WDI_SHUTDOWN_EVENT = 5,
1288
1289 WDI_MAX_EVENT
1290
1291}WDI_MainEventType;
1292
1293/*---------------------------------------------------------------------------
1294
1295 DESCRIPTION
1296 Main DAL state machine function definition.
1297
1298 PARAMETERS
1299
1300 IN
1301 pWDICtx: pointer to the WLAN DAL context
1302 pEventData: pointer to the event information structure
1303
1304
1305 RETURN VALUE
1306 The result code associated with performing the operation
1307
1308---------------------------------------------------------------------------*/
1309typedef WDI_Status (*WDI_MainFuncType)( WDI_ControlBlockType* pWDICtx,
1310 WDI_EventInfoType* pEventData);
1311
1312/*---------------------------------------------------------------------------
1313 MAIN DAL FSM Entry type
1314---------------------------------------------------------------------------*/
1315typedef struct
1316{
1317 WDI_MainFuncType pfnMainTbl[WDI_MAX_EVENT];
1318} WDI_MainFsmEntryType;
1319
1320/*Macro to check for valid session id*/
1321#define WDI_VALID_SESSION_IDX(_idx) ( _idx < WDI_MAX_BSS_SESSIONS )
1322
1323/*==========================================================================
1324
1325 DAL INTERNAL FUNCTION DECLARATION
1326
1327==========================================================================*/
1328
1329/**
1330 @brief Helper routine for retrieving the PAL Context from WDI -
1331 can be used by CTS, DTS, DXE and othe DAL internals
1332
1333 @param None
1334
1335 @see
1336 @return pointer to the context
1337*/
Jeff Johnson43971f52012-07-17 12:26:56 -07001338void* WDI_GET_PAL_CTX( void );
Jeff Johnson295189b2012-06-20 16:38:30 -07001339
1340/*---------------------------------------------------------------------------
1341 MAIN DAL FSM Function Declarations
1342---------------------------------------------------------------------------*/
1343/**
1344 @brief WDI_PostMainEvent - Posts an event to the Main FSM
1345
1346
1347 @param pWDICtx: pointer to the WLAN DAL context
1348 wdiEV: event posted to the main DAL FSM
1349 pEventData: pointer to the event information
1350 structure
1351
1352 @see
1353 @return Result of the function call
1354*/
1355WDI_Status
1356WDI_PostMainEvent
1357(
1358 WDI_ControlBlockType* pWDICtx,
1359 WDI_MainEventType wdiEV,
1360 WDI_EventInfoType* pEventData
1361
1362);
1363
1364/*--------------------------------------------------------------------------
1365 INIT State Functions
1366--------------------------------------------------------------------------*/
1367/**
1368 @brief Main FSM Start function for all states except BUSY
1369
1370
1371 @param pWDICtx: pointer to the WLAN DAL context
1372 pEventData: pointer to the event information structure
1373
1374 @see
1375 @return Result of the function call
1376*/
1377WDI_Status
1378WDI_MainStart
1379(
1380 WDI_ControlBlockType* pWDICtx,
1381 WDI_EventInfoType* pEventData
1382);
1383
1384/**
1385 @brief Main FSM Response function for state INIT
1386
1387
1388 @param pWDICtx: pointer to the WLAN DAL context
1389 pEventData: pointer to the event information structure
1390
1391 @see
1392 @return Result of the function call
1393*/
1394WDI_Status
1395WDI_MainRspInit
1396(
1397 WDI_ControlBlockType* pWDICtx,
1398 WDI_EventInfoType* pEventData
1399);
1400
1401/**
1402 @brief Main FSM Close function for all states except BUSY
1403
1404
1405 @param pWDICtx: pointer to the WLAN DAL context
1406 pEventData: pointer to the event information structure
1407
1408
1409 @see
1410 @return Result of the function call
1411*/
1412WDI_Status
1413WDI_MainClose
1414(
1415 WDI_ControlBlockType* pWDICtx,
1416 WDI_EventInfoType* pEventData
1417);
1418
1419/*--------------------------------------------------------------------------
1420 STARTED State Functions
1421--------------------------------------------------------------------------*/
1422/**
1423 @brief Main FSM Start function for state STARTED
1424
1425
1426 @param pWDICtx: pointer to the WLAN DAL context
1427 pEventData: pointer to the event information structure
1428
1429 @see
1430 @return Result of the function call
1431*/
1432WDI_Status
1433WDI_MainStartStarted
1434(
1435 WDI_ControlBlockType* pWDICtx,
1436 WDI_EventInfoType* pEventData
1437);
1438
1439/**
1440 @brief Main FSM Stop function for state STARTED
1441
1442
1443 @param pWDICtx: pointer to the WLAN DAL context
1444 pEventData: pointer to the event information structure
1445 uEventDataSize: size of the data sent in event
1446 pCBfnc: cb function for event response
1447 pUserData: user data
1448
1449 @see
1450 @return Result of the function call
1451*/
1452WDI_Status
1453WDI_MainStopStarted
1454(
1455 WDI_ControlBlockType* pWDICtx,
1456 WDI_EventInfoType* pEventData
1457);
1458
1459/**
1460 @brief Main FSM Request function for state started
1461
1462
1463 @param pWDICtx: pointer to the WLAN DAL context
1464 pEventData: pointer to the event information structure
1465
1466
1467 @see
1468 @return Result of the function call
1469*/
1470WDI_Status
1471WDI_MainReqStarted
1472(
1473 WDI_ControlBlockType* pWDICtx,
1474 WDI_EventInfoType* pEventData
1475);
1476
1477/**
1478 @brief Main FSM Response function for all states except INIT
1479
1480
1481 @param pWDICtx: pointer to the WLAN DAL context
1482 pEventData: pointer to the event information structure
1483
1484 @see
1485 @return Result of the function call
1486*/
1487WDI_Status
1488WDI_MainRsp
1489(
1490 WDI_ControlBlockType* pWDICtx,
1491 WDI_EventInfoType* pEventData
1492);
1493
1494/*--------------------------------------------------------------------------
1495 STOPPED State Functions
1496--------------------------------------------------------------------------*/
1497/**
1498 @brief Main FSM Stop function for state STOPPED
1499
1500
1501 @param pWDICtx: pointer to the WLAN DAL context
1502 pEventData: pointer to the event information structure
1503
1504 @see
1505 @return Result of the function call
1506*/
1507WDI_Status
1508WDI_MainStopStopped
1509(
1510 WDI_ControlBlockType* pWDICtx,
1511 WDI_EventInfoType* pEventData
1512 );
1513
1514/*--------------------------------------------------------------------------
1515 BUSY State Functions
1516--------------------------------------------------------------------------*/
1517/**
1518 @brief Main FSM Start function for state BUSY
1519
1520
1521 @param pWDICtx: pointer to the WLAN DAL context
1522 pEventData: pointer to the event information structure
1523
1524 @see
1525 @return Result of the function call
1526*/
1527WDI_Status
1528WDI_MainStartBusy
1529(
1530 WDI_ControlBlockType* pWDICtx,
1531 WDI_EventInfoType* pEventData
1532);
1533
1534/**
1535 @brief Main FSM Stop function for state BUSY
1536
1537
1538 @param pWDICtx: pointer to the WLAN DAL context
1539 pEventData: pointer to the event information structure
1540
1541 @see
1542 @return Result of the function call
1543*/
1544WDI_Status
1545WDI_MainStopBusy
1546(
1547 WDI_ControlBlockType* pWDICtx,
1548 WDI_EventInfoType* pEventData
1549);
1550
1551/**
1552 @brief Main FSM Request function for state BUSY
1553
1554
1555 @param pWDICtx: pointer to the WLAN DAL context
1556 pEventData: pointer to the event information structure
1557
1558 @see
1559 @return Result of the function call
1560*/
1561WDI_Status
1562WDI_MainReqBusy
1563(
1564 WDI_ControlBlockType* pWDICtx,
1565 WDI_EventInfoType* pEventData
1566);
1567
1568/**
1569 @brief Main FSM Close function for state BUSY
1570
1571
1572 @param pWDICtx: pointer to the WLAN DAL context
1573 pEventData: pointer to the event information structure
1574
1575 @see
1576 @return Result of the function call
1577*/
1578WDI_Status
1579WDI_MainCloseBusy
1580(
1581 WDI_ControlBlockType* pWDICtx,
1582 WDI_EventInfoType* pEventData
1583);
1584
1585/**
1586 @brief Main FSM Shutdown function for INIT & STARTED states
1587
1588
1589 @param pWDICtx: pointer to the WLAN DAL context
1590 pEventData: pointer to the event information structure
1591
1592 @see
1593 @return Result of the function call
1594*/
1595WDI_Status
1596WDI_MainShutdown
1597(
1598 WDI_ControlBlockType* pWDICtx,
1599 WDI_EventInfoType* pEventData
1600);
1601
1602/**
1603 @brief Main FSM Shutdown function for BUSY state
1604
1605
1606 @param pWDICtx: pointer to the WLAN DAL context
1607 pEventData: pointer to the event information structure
1608
1609 @see
1610 @return Result of the function call
1611*/
1612WDI_Status
1613WDI_MainShutdownBusy
1614(
1615 WDI_ControlBlockType* pWDICtx,
1616 WDI_EventInfoType* pEventData
1617);
1618
1619/*========================================================================
1620 Main DAL Control Path Request Processing API
1621========================================================================*/
1622
1623/**
1624 @brief Process Start Request function (called when Main FSM
1625 allows it)
1626
1627 @param pWDICtx: pointer to the WLAN DAL context
1628 pEventData: pointer to the event information structure
1629
1630 @see
1631 @return Result of the function call
1632*/
1633WDI_Status
1634WDI_ProcessStartReq
1635(
1636 WDI_ControlBlockType* pWDICtx,
1637 WDI_EventInfoType* pEventData
1638);
1639
1640
1641/**
1642 @brief Process Stop Request function (called when Main FSM
1643 allows it)
1644
1645 @param pWDICtx: pointer to the WLAN DAL context
1646 pEventData: pointer to the event information structure
1647
1648 @see
1649 @return Result of the function call
1650*/
1651WDI_Status
1652WDI_ProcessStopReq
1653(
1654 WDI_ControlBlockType* pWDICtx,
1655 WDI_EventInfoType* pEventData
1656);
1657
1658
1659/**
1660 @brief Process Close Request function (called when Main FSM
1661 allows it)
1662
1663 @param pWDICtx: pointer to the WLAN DAL context
1664 pEventData: pointer to the event information structure
1665
1666 @see
1667 @return Result of the function call
1668*/
1669WDI_Status
1670WDI_ProcessCloseReq
1671(
1672 WDI_ControlBlockType* pWDICtx,
1673 WDI_EventInfoType* pEventData
1674);
1675
1676/**
1677 @brief Process Shutdown Request function (called when Main FSM
1678 allows it)
1679
1680 @param pWDICtx: pointer to the WLAN DAL context
1681 pEventData: pointer to the event information structure
1682
1683 @see
1684 @return Result of the function call
1685*/
1686WDI_Status
1687WDI_ProcessShutdownReq
1688(
1689 WDI_ControlBlockType* pWDICtx,
1690 WDI_EventInfoType* pEventData
1691);
1692
1693
1694/**
1695 @brief Process Init Scan Request function (called when Main FSM
1696 allows it)
1697
1698 @param pWDICtx: pointer to the WLAN DAL context
1699 pEventData: pointer to the event information structure
1700
1701 @see
1702 @return Result of the function call
1703*/
1704WDI_Status
1705WDI_ProcessInitScanReq
1706(
1707 WDI_ControlBlockType* pWDICtx,
1708 WDI_EventInfoType* pEventData
1709);
1710
1711
1712/**
1713 @brief Process Start Scan Request function (called when Main
1714 FSM allows it)
1715
1716 @param pWDICtx: pointer to the WLAN DAL context
1717 pEventData: pointer to the event information structure
1718
1719 @see
1720 @return Result of the function call
1721*/
1722WDI_Status
1723WDI_ProcessStartScanReq
1724(
1725 WDI_ControlBlockType* pWDICtx,
1726 WDI_EventInfoType* pEventData
1727);
1728
1729
1730/**
1731 @brief Process End Scan Request function (called when Main FSM
1732 allows it)
1733
1734 @param pWDICtx: pointer to the WLAN DAL context
1735 pEventData: pointer to the event information structure
1736
1737 @see
1738 @return Result of the function call
1739*/
1740WDI_Status
1741WDI_ProcessEndScanReq
1742(
1743 WDI_ControlBlockType* pWDICtx,
1744 WDI_EventInfoType* pEventData
1745);
1746
1747
1748/**
1749 @brief Process Finish Scan Request function (called when Main
1750 FSM allows it)
1751
1752 @param pWDICtx: pointer to the WLAN DAL context
1753 pEventData: pointer to the event information structure
1754
1755 @see
1756 @return Result of the function call
1757*/
1758WDI_Status
1759WDI_ProcessFinishScanReq
1760(
1761 WDI_ControlBlockType* pWDICtx,
1762 WDI_EventInfoType* pEventData
1763);
1764
1765
1766/**
1767 @brief Process Join Request function (called when Main FSM
1768 allows it)
1769
1770 @param pWDICtx: pointer to the WLAN DAL context
1771 pEventData: pointer to the event information structure
1772
1773 @see
1774 @return Result of the function call
1775*/
1776WDI_Status
1777WDI_ProcessJoinReq
1778(
1779 WDI_ControlBlockType* pWDICtx,
1780 WDI_EventInfoType* pEventData
1781);
1782
1783
1784/**
1785 @brief Process Config BSS Request function (called when Main
1786 FSM allows it)
1787
1788 @param pWDICtx: pointer to the WLAN DAL context
1789 pEventData: pointer to the event information structure
1790
1791 @see
1792 @return Result of the function call
1793*/
1794WDI_Status
1795WDI_ProcessConfigBSSReq
1796(
1797 WDI_ControlBlockType* pWDICtx,
1798 WDI_EventInfoType* pEventData
1799);
1800
1801
1802/**
1803 @brief Process Del BSS Request function (called when Main FSM
1804 allows it)
1805
1806 @param pWDICtx: pointer to the WLAN DAL context
1807 pEventData: pointer to the event information structure
1808
1809 @see
1810 @return Result of the function call
1811*/
1812WDI_Status
1813WDI_ProcessDelBSSReq
1814(
1815 WDI_ControlBlockType* pWDICtx,
1816 WDI_EventInfoType* pEventData
1817);
1818
1819/**
1820 @brief Process Post Assoc Request function (called when Main
1821 FSM allows it)
1822
1823 @param pWDICtx: pointer to the WLAN DAL context
1824 pEventData: pointer to the event information structure
1825
1826 @see
1827 @return Result of the function call
1828*/
1829WDI_Status
1830WDI_ProcessPostAssocReq
1831(
1832 WDI_ControlBlockType* pWDICtx,
1833 WDI_EventInfoType* pEventData
1834);
1835
1836/**
1837 @brief Process Del STA Request function (called when Main FSM
1838 allows it)
1839
1840 @param pWDICtx: pointer to the WLAN DAL context
1841 pEventData: pointer to the event information structure
1842
1843 @see
1844 @return Result of the function call
1845*/
1846WDI_Status
1847WDI_ProcessDelSTAReq
1848(
1849 WDI_ControlBlockType* pWDICtx,
1850 WDI_EventInfoType* pEventData
1851);
1852
1853/**
1854 @brief Process Set BSS Key Request function (called when Main FSM
1855 allows it)
1856
1857 @param pWDICtx: pointer to the WLAN DAL context
1858 pEventData: pointer to the event information structure
1859
1860 @see
1861 @return Result of the function call
1862*/
1863WDI_Status
1864WDI_ProcessSetBssKeyReq
1865(
1866 WDI_ControlBlockType* pWDICtx,
1867 WDI_EventInfoType* pEventData
1868);
1869
1870/**
1871 @brief Process Remove BSS Key Request function (called when Main
1872 FSM allows it)
1873
1874 @param pWDICtx: pointer to the WLAN DAL context
1875 pEventData: pointer to the event information structure
1876
1877 @see
1878 @return Result of the function call
1879*/
1880WDI_Status
1881WDI_ProcessRemoveBssKeyReq
1882(
1883 WDI_ControlBlockType* pWDICtx,
1884 WDI_EventInfoType* pEventData
1885);
1886
1887/**
1888 @brief Process Set STA KeyRequest function (called when Main FSM
1889 allows it)
1890
1891 @param pWDICtx: pointer to the WLAN DAL context
1892 pEventData: pointer to the event information structure
1893
1894 @see
1895 @return Result of the function call
1896*/
1897WDI_Status
1898WDI_ProcessSetStaKeyReq
1899(
1900 WDI_ControlBlockType* pWDICtx,
1901 WDI_EventInfoType* pEventData
1902);
1903
1904/**
1905 @brief Process Remove STA Key Request function (called when
1906 Main FSM allows it)
1907
1908 @param pWDICtx: pointer to the WLAN DAL context
1909 pEventData: pointer to the event information structure
1910
1911 @see
1912 @return Result of the function call
1913*/
1914WDI_Status
1915WDI_ProcessRemoveStaKeyReq
1916(
1917 WDI_ControlBlockType* pWDICtx,
1918 WDI_EventInfoType* pEventData
1919);
1920
1921/**
1922 @brief Process Set STA KeyRequest function (called when Main FSM
1923 allows it)
1924
1925 @param pWDICtx: pointer to the WLAN DAL context
1926 pEventData: pointer to the event information structure
1927
1928 @see
1929 @return Result of the function call
1930*/
1931WDI_Status
1932WDI_ProcessSetStaBcastKeyReq
1933(
1934 WDI_ControlBlockType* pWDICtx,
1935 WDI_EventInfoType* pEventData
1936);
1937
1938/**
1939 @brief Process Remove STA Key Request function (called when
1940 Main FSM allows it)
1941
1942 @param pWDICtx: pointer to the WLAN DAL context
1943 pEventData: pointer to the event information structure
1944
1945 @see
1946 @return Result of the function call
1947*/
1948WDI_Status
1949WDI_ProcessRemoveStaBcastKeyReq
1950(
1951 WDI_ControlBlockType* pWDICtx,
1952 WDI_EventInfoType* pEventData
1953);
1954
1955/**
1956 @brief Process Add TSpec Request function (called when Main FSM
1957 allows it)
1958
1959 @param pWDICtx: pointer to the WLAN DAL context
1960 pEventData: pointer to the event information structure
1961
1962 @see
1963 @return Result of the function call
1964*/
1965WDI_Status
1966WDI_ProcessAddTSpecReq
1967(
1968 WDI_ControlBlockType* pWDICtx,
1969 WDI_EventInfoType* pEventData
1970);
1971
1972
1973/**
1974 @brief Process Del TSpec Request function (called when Main FSM
1975 allows it)
1976
1977 @param pWDICtx: pointer to the WLAN DAL context
1978 pEventData: pointer to the event information structure
1979
1980 @see
1981 @return Result of the function call
1982*/
1983WDI_Status
1984WDI_ProcessDelTSpecReq
1985(
1986 WDI_ControlBlockType* pWDICtx,
1987 WDI_EventInfoType* pEventData
1988);
1989
1990/**
1991 @brief Process Update EDCA Params Request function (called when
1992 Main FSM allows it)
1993
1994 @param pWDICtx: pointer to the WLAN DAL context
1995 pEventData: pointer to the event information structure
1996
1997 @see
1998 @return Result of the function call
1999*/
2000WDI_Status
2001WDI_ProcessUpdateEDCAParamsReq
2002(
2003 WDI_ControlBlockType* pWDICtx,
2004 WDI_EventInfoType* pEventData
2005);
2006
2007/**
2008 @brief Process Add BA Request function (called when Main FSM
2009 allows it)
2010
2011 @param pWDICtx: pointer to the WLAN DAL context
2012 pEventData: pointer to the event information structure
2013
2014 @see
2015 @return Result of the function call
2016*/
2017WDI_Status
2018WDI_ProcessAddBASessionReq
2019(
2020 WDI_ControlBlockType* pWDICtx,
2021 WDI_EventInfoType* pEventData
2022);
2023
2024/**
2025 @brief Process Del BA Request function (called when Main FSM
2026 allows it)
2027
2028 @param pWDICtx: pointer to the WLAN DAL context
2029 pEventData: pointer to the event information structure
2030
2031 @see
2032 @return Result of the function call
2033*/
2034WDI_Status
2035WDI_ProcessDelBAReq
2036(
2037 WDI_ControlBlockType* pWDICtx,
2038 WDI_EventInfoType* pEventData
2039);
2040
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08002041#ifdef FEATURE_WLAN_ESE
Jeff Johnson295189b2012-06-20 16:38:30 -07002042/**
2043 @brief Process TSM Stats Request function (called when Main FSM
2044 allows it)
2045
2046 @param pWDICtx: pointer to the WLAN DAL context
2047 pEventData: pointer to the event information structure
2048
2049 @see
2050 @return Result of the function call
2051*/
2052WDI_Status
2053WDI_ProcessTSMStatsReq
2054(
2055 WDI_ControlBlockType* pWDICtx,
2056 WDI_EventInfoType* pEventData
2057);
2058#endif
2059
2060/**
2061 @brief Process Channel Switch Request function (called when
2062 Main FSM allows it)
2063
2064 @param pWDICtx: pointer to the WLAN DAL context
2065 pEventData: pointer to the event information structure
2066
2067 @see
2068 @return Result of the function call
2069*/
2070WDI_Status
2071WDI_ProcessChannelSwitchReq
2072(
2073 WDI_ControlBlockType* pWDICtx,
2074 WDI_EventInfoType* pEventData
2075);
2076
2077/**
Kalikinkar dhara1e83b772014-02-06 12:59:22 -08002078 @brief Process Channel Switch Request function (called when
2079 Main FSM allows it)
2080
2081 @param pWDICtx: pointer to the WLAN DAL context
2082 pEventData: pointer to the event information structure
2083
2084 @see
2085 @return Result of the function call
2086*/
2087
2088WDI_Status WDI_ProcessChannelSwitchReq_V1
2089(
2090 WDI_ControlBlockType* pWDICtx,
2091 WDI_EventInfoType* pEventData
2092);
2093
2094
2095/**
Jeff Johnson295189b2012-06-20 16:38:30 -07002096 @brief Process Config STA Request function (called when Main FSM
2097 allows it)
2098
2099 @param pWDICtx: pointer to the WLAN DAL context
2100 pEventData: pointer to the event information structure
2101
2102 @see
2103 @return Result of the function call
2104*/
2105WDI_Status
2106WDI_ProcessConfigStaReq
2107(
2108 WDI_ControlBlockType* pWDICtx,
2109 WDI_EventInfoType* pEventData
2110);
2111
2112
2113/**
2114 @brief Process Set Link State Request function (called when
2115 Main FSM allows it)
2116
2117 @param pWDICtx: pointer to the WLAN DAL context
2118 pEventData: pointer to the event information structure
2119
2120 @see
2121 @return Result of the function call
2122*/
2123WDI_Status
2124WDI_ProcessSetLinkStateReq
2125(
2126 WDI_ControlBlockType* pWDICtx,
2127 WDI_EventInfoType* pEventData
2128);
2129
2130
2131/**
2132 @brief Process Get Stats Request function (called when Main FSM
2133 allows it)
2134
2135 @param pWDICtx: pointer to the WLAN DAL context
2136 pEventData: pointer to the event information structure
2137
2138 @see
2139 @return Result of the function call
2140*/
2141WDI_Status
2142WDI_ProcessGetStatsReq
2143(
2144 WDI_ControlBlockType* pWDICtx,
2145 WDI_EventInfoType* pEventData
2146);
2147
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08002148#if defined WLAN_FEATURE_VOWIFI_11R || defined FEATURE_WLAN_ESE || defined(FEATURE_WLAN_LFR)
Srinivas Girigowdad34cedb2013-01-25 13:33:11 -08002149/**
2150 @brief Process Get Roam rssi Request function (called when Main FSM
2151 allows it)
2152
2153 @param pWDICtx: pointer to the WLAN DAL context
2154 pEventData: pointer to the event information structure
2155
2156 @see
2157 @return Result of the function call
2158*/
2159WDI_Status
2160WDI_ProcessGetRoamRssiReq
2161(
2162 WDI_ControlBlockType* pWDICtx,
2163 WDI_EventInfoType* pEventData
2164);
2165
2166
2167/**
2168 @brief Process Get Roam Rssi Rsp function (called when a response is
2169 being received over the bus from HAL)
2170
2171 @param pWDICtx: pointer to the WLAN DAL context
2172 pEventData: pointer to the event information structure
2173
2174 @see
2175 @return Result of the function call
2176*/
2177WDI_Status
2178WDI_ProcessGetRoamRssiRsp
2179(
2180 WDI_ControlBlockType* pWDICtx,
2181 WDI_EventInfoType* pEventData
2182);
2183
2184#endif
2185
2186
Jeff Johnson295189b2012-06-20 16:38:30 -07002187/**
2188 @brief Process Update Cfg Request function (called when Main
2189 FSM allows it)
2190
2191 @param pWDICtx: pointer to the WLAN DAL context
2192 pEventData: pointer to the event information structure
2193
2194 @see
2195 @return Result of the function call
2196*/
2197WDI_Status
2198WDI_ProcessUpdateCfgReq
2199(
2200 WDI_ControlBlockType* pWDICtx,
2201 WDI_EventInfoType* pEventData
2202);
2203
2204/**
2205 @brief Process Add BA Request function (called when Main FSM
2206 allows it)
2207
2208 @param pWDICtx: pointer to the WLAN DAL context
2209 pEventData: pointer to the event information structure
2210
2211 @see
2212 @return Result of the function call
2213*/
2214WDI_Status
2215WDI_ProcessAddBAReq
2216(
2217 WDI_ControlBlockType* pWDICtx,
2218 WDI_EventInfoType* pEventData
2219);
2220
2221/**
2222 @brief Process Trigger BA Request function (called when Main FSM
2223 allows it)
2224
2225 @param pWDICtx: pointer to the WLAN DAL context
2226 pEventData: pointer to the event information structure
2227
2228 @see
2229 @return Result of the function call
2230*/
2231WDI_Status
2232WDI_ProcessTriggerBAReq
2233(
2234 WDI_ControlBlockType* pWDICtx,
2235 WDI_EventInfoType* pEventData
2236);
2237
2238/**
2239 @brief Process Update Beacon Params Request function (called when Main
2240 FSM allows it)
2241
2242 @param pWDICtx: pointer to the WLAN DAL context
2243 pEventData: pointer to the event information structure
2244
2245 @see
2246 @return Result of the function call
2247*/
2248WDI_Status
2249WDI_ProcessUpdateBeaconParamsReq
2250(
2251 WDI_ControlBlockType* pWDICtx,
2252 WDI_EventInfoType* pEventData
2253);
2254
2255/**
2256 @brief Process Update Beacon template Request function (called when Main
2257 FSM allows it)
2258
2259 @param pWDICtx: pointer to the WLAN DAL context
2260 pEventData: pointer to the event information structure
2261
2262 @see
2263 @return Result of the function call
2264*/
2265WDI_Status
2266WDI_ProcessSendBeaconParamsReq
2267(
2268 WDI_ControlBlockType* pWDICtx,
2269 WDI_EventInfoType* pEventData
2270);
2271
2272/**
2273 @brief Process Update Beacon Params Request function (called when Main FSM
2274 allows it)
2275
2276 @param pWDICtx: pointer to the WLAN DAL context
2277 pEventData: pointer to the event information structure
2278
2279 @see
2280 @return Result of the function call
2281*/
2282WDI_Status
2283WDI_ProcessUpdateProbeRspTemplateReq
2284(
2285 WDI_ControlBlockType* pWDICtx,
2286 WDI_EventInfoType* pEventData
2287);
2288/**
2289 @brief Process NV blob download function (called when Main FSM
2290 allows it)
2291
2292 @param pWDICtx: pointer to the WLAN DAL context
2293 pEventData: pointer to the event information structure
2294
2295 @see
2296 @return Result of the function call
2297*/
2298WDI_Status
2299WDI_ProcessNvDownloadReq
2300(
2301 WDI_ControlBlockType* pWDICtx,
2302 WDI_EventInfoType* pEventData
2303);
2304
2305/**
2306 @brief Process Set Max Tx Power Request function (called when Main
2307 FSM allows it)
2308
2309 @param pWDICtx: pointer to the WLAN DAL context
2310 pEventData: pointer to the event information structure
2311
2312 @see
2313 @return Result of the function call
2314*/
2315WDI_Status WDI_ProcessSetMaxTxPowerReq
2316(
2317 WDI_ControlBlockType* pWDICtx,
2318 WDI_EventInfoType* pEventData
2319);
2320
Jeff Johnson295189b2012-06-20 16:38:30 -07002321/**
Arif Hussaina5ebce02013-08-09 15:09:58 -07002322 @brief Process Set Max Tx Power Per Band Request function (called when Main
2323 FSM allows it)
2324
2325 @param pWDICtx: pointer to the WLAN DAL context
2326 pEventData: pointer to the event information structure
2327
2328 @see
2329 @return Result of the function call
2330*/
2331WDI_Status WDI_ProcessSetMaxTxPowerPerBandReq
2332(
2333 WDI_ControlBlockType* pWDICtx,
2334 WDI_EventInfoType* pEventData
2335);
2336
2337/**
schang86c22c42013-03-13 18:41:24 -07002338 @brief Process Set Tx Power Request function (called when Main
2339 FSM allows it)
2340
2341 @param pWDICtx: pointer to the WLAN DAL context
2342 pEventData: pointer to the event information structure
2343
2344 @see
2345 @return Result of the function call
2346*/
2347WDI_Status WDI_ProcessSetTxPowerReq
2348(
2349 WDI_ControlBlockType* pWDICtx,
2350 WDI_EventInfoType* pEventData
2351);
2352
2353/**
Jeff Johnson295189b2012-06-20 16:38:30 -07002354 @brief Process P2P Notice Of Absence Request function (called when Main FSM
2355 allows it)
2356
2357 @param pWDICtx: pointer to the WLAN DAL context
2358 pEventData: pointer to the event information structure
2359
2360 @see
2361 @return Result of the function call
2362*/
2363WDI_Status
2364WDI_ProcessP2PGONOAReq
2365(
2366 WDI_ControlBlockType* pWDICtx,
2367 WDI_EventInfoType* pEventData
2368);
Jeff Johnson295189b2012-06-20 16:38:30 -07002369
2370/**
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05302371 @brief Process TDLS Link Establish Request function (called when Main FSM
2372 allows it)
2373
2374 @param pWDICtx: pointer to the WLAN DAL context
2375 pEventData: pointer to the event information structure
2376
2377 @see
2378 @return Result of the function call
2379*/
2380WDI_Status
2381WDI_ProcessTdlsLinkEstablishReq
2382(
2383 WDI_ControlBlockType* pWDICtx,
2384 WDI_EventInfoType* pEventData
2385);
2386
2387/**
Jeff Johnson295189b2012-06-20 16:38:30 -07002388 @brief Process Enter IMPS Request function (called when
2389 Main FSM allows it)
2390
2391 @param pWDICtx: pointer to the WLAN DAL context
2392 pEventData: pointer to the event information structure
2393
2394 @see
2395 @return Result of the function call
2396*/
2397WDI_Status
2398WDI_ProcessEnterImpsReq
2399(
2400 WDI_ControlBlockType* pWDICtx,
2401 WDI_EventInfoType* pEventData
2402);
2403
2404/**
2405 @brief Process Exit IMPS Request function (called when
2406 Main FSM allows it)
2407
2408 @param pWDICtx: pointer to the WLAN DAL context
2409 pEventData: pointer to the event information structure
2410
2411 @see
2412 @return Result of the function call
2413*/
2414WDI_Status
2415WDI_ProcessExitImpsReq
2416(
2417 WDI_ControlBlockType* pWDICtx,
2418 WDI_EventInfoType* pEventData
2419);
2420
2421/**
2422 @brief Process Enter BMPS Request function (called when Main
2423 FSM allows it)
2424
2425 @param pWDICtx: pointer to the WLAN DAL context
2426 pEventData: pointer to the event information structure
2427
2428 @see
2429 @return Result of the function call
2430*/
2431WDI_Status
2432WDI_ProcessEnterBmpsReq
2433(
2434 WDI_ControlBlockType* pWDICtx,
2435 WDI_EventInfoType* pEventData
2436);
2437
2438/**
2439 @brief Process Exit BMPS Request function (called when Main FSM
2440 allows it)
2441
2442 @param pWDICtx: pointer to the WLAN DAL context
2443 pEventData: pointer to the event information structure
2444
2445 @see
2446 @return Result of the function call
2447*/
2448WDI_Status
2449WDI_ProcessExitBmpsReq
2450(
2451 WDI_ControlBlockType* pWDICtx,
2452 WDI_EventInfoType* pEventData
2453);
2454
2455/**
2456 @brief Process Enter UAPSD Request function (called when Main
2457 FSM allows it)
2458
2459 @param pWDICtx: pointer to the WLAN DAL context
2460 pEventData: pointer to the event information structure
2461
2462 @see
2463 @return Result of the function call
2464*/
2465WDI_Status
2466WDI_ProcessEnterUapsdReq
2467(
2468 WDI_ControlBlockType* pWDICtx,
2469 WDI_EventInfoType* pEventData
2470);
2471
2472/**
2473 @brief Process Exit UAPSD Request function (called when
2474 Main FSM allows it)
2475
2476 @param pWDICtx: pointer to the WLAN DAL context
2477 pEventData: pointer to the event information structure
2478
2479 @see
2480 @return Result of the function call
2481*/
2482WDI_Status
2483WDI_ProcessExitUapsdReq
2484(
2485 WDI_ControlBlockType* pWDICtx,
2486 WDI_EventInfoType* pEventData
2487);
2488
2489/**
2490 @brief Process Set UAPSD params Request function (called when
2491 Main FSM allows it)
2492
2493 @param pWDICtx: pointer to the WLAN DAL context
2494 pEventData: pointer to the event information structure
2495
2496 @see
2497 @return Result of the function call
2498*/
2499WDI_Status
2500WDI_ProcessSetUapsdAcParamsReq
2501(
2502 WDI_ControlBlockType* pWDICtx,
2503 WDI_EventInfoType* pEventData
2504);
2505
2506/**
2507 @brief Process update UAPSD params Request function (called
2508 when Main FSM allows it)
2509
2510 @param pWDICtx: pointer to the WLAN DAL context
2511 pEventData: pointer to the event information structure
2512
2513 @see
2514 @return Result of the function call
2515*/
2516WDI_Status
2517WDI_ProcessUpdateUapsdParamsReq
2518(
2519 WDI_ControlBlockType* pWDICtx,
2520 WDI_EventInfoType* pEventData
2521);
2522
2523/**
2524 @brief Process Configure RXP filter Request function (called
2525 when Main FSM allows it)
2526
2527 @param pWDICtx: pointer to the WLAN DAL context
2528 pEventData: pointer to the event information structure
2529
2530 @see
2531 @return Result of the function call
2532*/
2533WDI_Status
2534WDI_ProcessConfigureRxpFilterReq
2535(
2536 WDI_ControlBlockType* pWDICtx,
2537 WDI_EventInfoType* pEventData
2538);
2539
2540/**
2541 @brief Process set beacon filter Request function (called
2542 when Main FSM allows it)
2543
2544 @param pWDICtx: pointer to the WLAN DAL context
2545 pEventData: pointer to the event information structure
2546
2547 @see
2548 @return Result of the function call
2549*/
2550WDI_Status
2551WDI_ProcessSetBeaconFilterReq
2552(
2553 WDI_ControlBlockType* pWDICtx,
2554 WDI_EventInfoType* pEventData
2555);
2556
2557/**
2558 @brief Process remove beacon filter Request function (called
2559 when Main FSM allows it)
2560
2561 @param pWDICtx: pointer to the WLAN DAL context
2562 pEventData: pointer to the event information structure
2563
2564 @see
2565 @return Result of the function call
2566*/
2567WDI_Status
2568WDI_ProcessRemBeaconFilterReq
2569(
2570 WDI_ControlBlockType* pWDICtx,
2571 WDI_EventInfoType* pEventData
2572);
2573
2574/**
2575 @brief Process set RSSI thresholds Request function (called
2576 when Main FSM allows it)
2577
2578 @param pWDICtx: pointer to the WLAN DAL context
2579 pEventData: pointer to the event information structure
2580
2581 @see
2582 @return Result of the function call
2583*/
2584WDI_Status
2585WDI_ProcessSetRSSIThresholdsReq
2586(
2587 WDI_ControlBlockType* pWDICtx,
2588 WDI_EventInfoType* pEventData
2589);
2590
2591/**
2592 @brief Process set RSSI thresholds Request function (called
2593 when Main FSM allows it)
2594
2595 @param pWDICtx: pointer to the WLAN DAL context
2596 pEventData: pointer to the event information structure
2597
2598 @see
2599 @return Result of the function call
2600*/
2601WDI_Status
2602WDI_ProcessHostOffloadReq
2603(
2604 WDI_ControlBlockType* pWDICtx,
2605 WDI_EventInfoType* pEventData
2606);
2607
2608/**
2609 @brief Process Keep Alive Request function (called
2610 when Main FSM allows it)
2611
2612 @param pWDICtx: pointer to the WLAN DAL context
2613 pEventData: pointer to the event information structure
2614
2615 @see
2616 @return Result of the function call
2617*/
2618WDI_Status
2619WDI_ProcessKeepAliveReq
2620(
2621 WDI_ControlBlockType* pWDICtx,
2622 WDI_EventInfoType* pEventData
2623);
2624
2625
2626/**
2627 @brief Process Wowl add bc ptrn Request function (called
2628 when Main FSM allows it)
2629
2630 @param pWDICtx: pointer to the WLAN DAL context
2631 pEventData: pointer to the event information structure
2632
2633 @see
2634 @return Result of the function call
2635*/
2636WDI_Status
2637WDI_ProcessWowlAddBcPtrnReq
2638(
2639 WDI_ControlBlockType* pWDICtx,
2640 WDI_EventInfoType* pEventData
2641);
2642
2643/**
2644 @brief Process Wowl delete bc ptrn Request function (called
2645 when Main FSM allows it)
2646
2647 @param pWDICtx: pointer to the WLAN DAL context
2648 pEventData: pointer to the event information structure
2649
2650 @see
2651 @return Result of the function call
2652*/
2653WDI_Status
2654WDI_ProcessWowlDelBcPtrnReq
2655(
2656 WDI_ControlBlockType* pWDICtx,
2657 WDI_EventInfoType* pEventData
2658);
2659
2660/**
2661 @brief Process Wowl enter Request function (called
2662 when Main FSM allows it)
2663
2664 @param pWDICtx: pointer to the WLAN DAL context
2665 pEventData: pointer to the event information structure
2666
2667 @see
2668 @return Result of the function call
2669*/
2670WDI_Status
2671WDI_ProcessWowlEnterReq
2672(
2673 WDI_ControlBlockType* pWDICtx,
2674 WDI_EventInfoType* pEventData
2675);
2676
2677/**
2678 @brief Process Wowl exit Request function (called when Main FSM
2679 allows it)
2680
2681 @param pWDICtx: pointer to the WLAN DAL context
2682 pEventData: pointer to the event information structure
2683
2684 @see
2685 @return Result of the function call
2686*/
2687WDI_Status
2688WDI_ProcessWowlExitReq
2689(
2690 WDI_ControlBlockType* pWDICtx,
2691 WDI_EventInfoType* pEventData
2692);
2693
2694/**
2695 @brief Process Configure Apps Cpu Wakeup State Request function
2696 (called when Main FSM allows it)
2697
2698 @param pWDICtx: pointer to the WLAN DAL context
2699 pEventData: pointer to the event information structure
2700
2701 @see
2702 @return Result of the function call
2703*/
2704WDI_Status
2705WDI_ProcessConfigureAppsCpuWakeupStateReq
2706(
2707 WDI_ControlBlockType* pWDICtx,
2708 WDI_EventInfoType* pEventData
2709);
2710
2711/**
2712 @brief Process Flush AC Request function (called when Main FSM
2713 allows it)
2714
2715 @param pWDICtx: pointer to the WLAN DAL context
2716 pEventData: pointer to the event information structure
2717
2718 @see
2719 @return Result of the function call
2720*/
2721WDI_Status
2722WDI_ProcessFlushAcReq
2723(
2724 WDI_ControlBlockType* pWDICtx,
2725 WDI_EventInfoType* pEventData
2726);
2727
Jeff Johnsone7245742012-09-05 17:12:55 -07002728#ifdef FEATURE_OEM_DATA_SUPPORT
2729/**
2730 @brief Process Start Oem Data Request function (called when Main
2731 FSM allows it)
2732
2733 @param pWDICtx: pointer to the WLAN DAL context
2734 pEventData: pointer to the event information structure
2735
2736 @see
2737 @return Result of the function call
2738*/
2739WDI_Status
2740WDI_ProcessStartOemDataReq
2741(
2742 WDI_ControlBlockType* pWDICtx,
2743 WDI_EventInfoType* pEventData
2744);
2745#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07002746
2747/**
2748 @brief Process Host Resume Request function (called when Main
2749 FSM allows it)
2750
2751 @param pWDICtx: pointer to the WLAN DAL context
2752 pEventData: pointer to the event information structure
2753
2754 @see
2755 @return Result of the function call
2756*/
2757WDI_Status
2758WDI_ProcessHostResumeReq
2759(
2760 WDI_ControlBlockType* pWDICtx,
2761 WDI_EventInfoType* pEventData
2762);
2763
2764/**
2765 @brief Process BT AMP event Request function (called when Main
2766 FSM allows it)
2767
2768 @param pWDICtx: pointer to the WLAN DAL context
2769 pEventData: pointer to the event information structure
2770
2771 @see
2772 @return Result of the function call
2773*/
2774WDI_Status
2775WDI_ProcessBtAmpEventReq
2776(
2777 WDI_ControlBlockType* pWDICtx,
2778 WDI_EventInfoType* pEventData
2779);
2780
2781/**
2782 @brief Process Add STA self Request function (called when Main FSM
2783 allows it)
2784
2785 @param pWDICtx: pointer to the WLAN DAL context
2786 pEventData: pointer to the event information structure
2787
2788 @see
2789 @return Result of the function call
2790*/
2791WDI_Status
2792WDI_ProcessAddSTASelfReq
2793(
2794 WDI_ControlBlockType* pWDICtx,
2795 WDI_EventInfoType* pEventData
2796);
2797
2798/**
2799 @brief Process Del Sta Self Request function (called when Main
2800 FSM allows it)
2801
2802 @param pWDICtx: pointer to the WLAN DAL context
2803 pEventData: pointer to the event information structure
2804
2805 @see
2806 @return Result of the function call
2807*/
2808WDI_Status
2809WDI_ProcessDelSTASelfReq
2810(
2811 WDI_ControlBlockType* pWDICtx,
2812 WDI_EventInfoType* pEventData
2813);
2814
2815/**
2816 @brief Process set Tx Per Tracking configurations Request function (called
2817 when Main FSM allows it)
2818
2819 @param pWDICtx: pointer to the WLAN DAL context
2820 pEventData: pointer to the event information structure
2821
2822 @see
2823 @return Result of the function call
2824*/
2825WDI_Status
2826WDI_ProcessSetTxPerTrackingReq
2827(
2828 WDI_ControlBlockType* pWDICtx,
2829 WDI_EventInfoType* pEventData
2830);
2831
2832/**
2833 @brief Process Set Power Params Request function
2834
2835 @param pWDICtx: pointer to the WLAN DAL context
2836 pEventData: pointer to the event information structure
2837
2838 @see
2839 @return Result of the function call
2840*/
2841WDI_Status
2842WDI_ProcessSetPowerParamsReq
2843(
2844 WDI_ControlBlockType* pWDICtx,
2845 WDI_EventInfoType* pEventData
2846);
2847
2848/**
2849 @brief Process Set Thermal Mitigation level Changed request
2850
2851 @param pWDICtx: pointer to the WLAN DAL context
2852 pEventData: pointer to the event information structure
2853
2854 @see
2855 @return Result of the function call
2856*/
2857WDI_Status
2858WDI_ProcessSetTmLevelReq
2859(
2860 WDI_ControlBlockType* pWDICtx,
2861 WDI_EventInfoType* pEventData
2862);
2863
Leo Chang9056f462013-08-01 19:21:11 -07002864#ifdef FEATURE_WLAN_LPHB
2865/**
2866 @brief WDI_ProcessLPHBConfReq -
2867 LPHB configuration request to FW
2868
2869 @param pWDICtx : wdi context
2870 pEventData : indication data
2871
2872 @see
2873 @return esult of the function call
2874*/
2875WDI_Status WDI_ProcessLPHBConfReq
2876(
2877 WDI_ControlBlockType* pWDICtx,
2878 WDI_EventInfoType* pEventData
2879);
2880#endif /* FEATURE_WLAN_LPHB */
2881
Manjunathappa Prakash86f78ca2014-02-10 18:09:15 -08002882/**
2883 @brief WDI_ProcessUpdateChannelParamsReq -
2884 Send update channel request to FW
2885
2886 @param pWDICtx : wdi context
2887 pEventData : indication data
2888
2889 @see
2890 @return success or failure
2891*/
2892WDI_Status WDI_ProcessUpdateChannelParamsReq
2893(
2894 WDI_ControlBlockType* pWDICtx,
2895 WDI_EventInfoType* pEventData
2896);
2897
Rajeev79dbe4c2013-10-05 11:03:42 +05302898#ifdef FEATURE_WLAN_BATCH_SCAN
2899/**
2900 @brief WDI_ProcessSetBatchScanReq -
2901 Send set batch scan configuration request to FW
2902
2903 @param pWDICtx : wdi context
2904 pEventData : indication data
2905
2906 @see
2907 @return success or failure
2908*/
2909WDI_Status WDI_ProcessSetBatchScanReq
2910(
2911 WDI_ControlBlockType* pWDICtx,
2912 WDI_EventInfoType* pEventData
2913);
2914
2915/**
2916 @brief WDI_ProcessGetBatchScanReq -
2917 Send get batch scan request to FW
2918
2919 @param pWDICtx : wdi context
2920 pEventData : indication data
2921
2922 @see
2923 @return success or failure
2924*/
2925WDI_Status WDI_ProcessGetBatchScanReq
2926(
2927 WDI_ControlBlockType* pWDICtx,
2928 WDI_EventInfoType* pEventData
2929);
2930#endif /* FEATURE_WLAN_BATCH_SCAN */
2931
2932
Jeff Johnson295189b2012-06-20 16:38:30 -07002933/*=========================================================================
2934 Indications
2935=========================================================================*/
2936
2937/**
2938 @brief Process Suspend Indications function (called when Main FSM allows it)
2939
2940 @param pWDICtx: pointer to the WLAN DAL context
2941 pEventData: pointer to the event information structure
2942
2943 @see
2944 @return Result of the function call
2945*/
2946WDI_Status
2947WDI_ProcessHostSuspendInd
2948(
2949 WDI_ControlBlockType* pWDICtx,
2950 WDI_EventInfoType* pEventData
2951);
2952
Sundaresan Ramachandran76e48e82013-07-15 13:07:17 +05302953/**
2954 @brief DHCP Start Event Indication
2955
2956 @param pWDICtx: pointer to the WLAN DAL context
2957 pEventData: pointer to the event information structure
2958
2959 @see
2960 @return Result of the function call
2961*/
2962WDI_Status
2963WDI_ProcessDHCPStartInd
2964(
2965 WDI_ControlBlockType* pWDICtx,
2966 WDI_EventInfoType* pEventData
2967);
2968
2969/**
2970 @brief DHCP Stop Event Indication
2971
2972 @param pWDICtx: pointer to the WLAN DAL context
2973 pEventData: pointer to the event information structure
2974
2975 @see
2976 @return Result of the function call
2977*/
2978WDI_Status
2979WDI_ProcessDHCPStopInd
2980(
2981 WDI_ControlBlockType* pWDICtx,
2982 WDI_EventInfoType* pEventData
2983);
2984
Jeff Johnson295189b2012-06-20 16:38:30 -07002985
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08002986/**
2987 @brief Process Traffic Stats Indications function (called when Main FSM allows it)
2988
2989 @param pWDICtx: pointer to the WLAN DAL context
2990 pEventData: pointer to the event information structure
2991
2992 @see
2993 @return Result of the function call
2994*/
2995WDI_Status
2996WDI_ProcessTrafficStatsInd
2997(
2998 WDI_ControlBlockType* pWDICtx,
2999 WDI_EventInfoType* pEventData
3000);
Chet Lanctot186b5732013-03-18 10:26:30 -07003001
3002#ifdef WLAN_FEATURE_11W
3003/**
3004 @brief Process Exclude Unencrypted Indications function (called
3005 when Main FSM allows it)
3006
3007 @param pWDICtx: pointer to the WLAN DAL context
3008 pEventData: pointer to the event information structure
3009
3010 @see
3011 @return Result of the function call
3012*/
3013WDI_Status
3014WDI_ProcessExcludeUnencryptInd
3015(
3016 WDI_ControlBlockType* pWDICtx,
3017 WDI_EventInfoType* pEventData
3018);
3019#endif
3020
Yue Mab9c86f42013-08-14 15:59:08 -07003021/**
3022 @brief Process Add Periodic Tx Pattern Indication function (called when
3023 Main FSM allows it)
3024
3025 @param pWDICtx: pointer to the WLAN DAL context
3026 pEventData: pointer to the event information structure
3027
3028 @see
3029 @return Result of the function call
3030*/
3031WDI_Status
3032WDI_ProcessAddPeriodicTxPtrnInd
3033(
3034 WDI_ControlBlockType* pWDICtx,
3035 WDI_EventInfoType* pEventData
3036);
3037
3038/**
3039 @brief Process Delete Periodic Tx Pattern Indication function (called when
3040 Main FSM allows it)
3041
3042 @param pWDICtx: pointer to the WLAN DAL context
3043 pEventData: pointer to the event information structure
3044
3045 @see
3046 @return Result of the function call
3047*/
3048WDI_Status
3049WDI_ProcessDelPeriodicTxPtrnInd
3050(
3051 WDI_ControlBlockType* pWDICtx,
3052 WDI_EventInfoType* pEventData
3053);
3054
Rajeev79dbe4c2013-10-05 11:03:42 +05303055#ifdef FEATURE_WLAN_BATCH_SCAN
3056/**
3057 @brief Process stop batch scan indications function
3058 It is called when Main FSM allows it
3059
3060 @param pWDICtx: pointer to the WLAN DAL context
3061 pEventData: pointer to the event information structure
3062
3063 @see
3064 @return Result of the function call
3065 */
3066 WDI_Status
3067 WDI_ProcessStopBatchScanInd
3068 (
3069 WDI_ControlBlockType* pWDICtx,
3070 WDI_EventInfoType* pEventData
3071 );
3072
3073/**
3074 @brief This API is called to trigger batch scan results from FW
3075 It is called when Main FSM allows it
3076
3077 @param pWDICtx: pointer to the WLAN DAL context
3078 pEventData: pointer to the event information structure
3079
3080 @see
3081 @return Result of the function call
3082 */
3083 WDI_Status
3084 WDI_ProcessTriggerBatchScanResultInd
3085 (
3086 WDI_ControlBlockType* pWDICtx,
3087 WDI_EventInfoType* pEventData
3088 );
3089
3090#endif
Sandeep Puligilla8b8b74b2014-02-10 16:39:05 +05303091/**
3092 @brief Process start OBSS scan request from Host
3093
3094 @param pWDICtx: pointer to the WLAN DAL context
3095 pEventData: pointer to the event information structure
3096
3097 @see
3098 @return Result of the function call
3099*/
3100WDI_Status
3101WDI_ProcessHT40OBSSScanInd(
3102 WDI_ControlBlockType* pWDICtx, WDI_EventInfoType* pEventData );
3103
3104
3105/**
3106 @brief Process stop OBSS scan request from Host
3107
3108 @param pWDICtx: pointer to the WLAN DAL context
3109 pEventData: pointer to the event information structure
3110
3111 @see
3112 @return Result of the function call
3113*/
3114WDI_Status
3115WDI_ProcessHT40OBSSStopScanInd(
3116 WDI_ControlBlockType* pWDICtx, WDI_EventInfoType* pEventData );
Rajeev79dbe4c2013-10-05 11:03:42 +05303117
Jeff Johnson295189b2012-06-20 16:38:30 -07003118/*========================================================================
3119 Main DAL Control Path Response Processing API
3120========================================================================*/
3121
3122
3123/**
3124 @brief Process Start Response function (called when a response
3125 is being received over the bus from HAL)
3126
3127 @param pWDICtx: pointer to the WLAN DAL context
3128 pEventData: pointer to the event information structure
3129
3130 @see
3131 @return Result of the function call
3132*/
3133WDI_Status
3134WDI_ProcessStartRsp
3135(
3136 WDI_ControlBlockType* pWDICtx,
3137 WDI_EventInfoType* pEventData
3138);
3139
3140
3141/**
3142 @brief Process Stop Response function (called when a response
3143 is being received over the bus from HAL)
3144
3145 @param pWDICtx: pointer to the WLAN DAL context
3146 pEventData: pointer to the event information structure
3147
3148 @see
3149 @return Result of the function call
3150*/
3151WDI_Status
3152WDI_ProcessStopRsp
3153(
3154 WDI_ControlBlockType* pWDICtx,
3155 WDI_EventInfoType* pEventData
3156);
3157
3158
3159/**
3160 @brief Process Close Rsp function (called when a response
3161 is being received over the bus from HAL)
3162
3163 @param pWDICtx: pointer to the WLAN DAL context
3164 pEventData: pointer to the event information structure
3165
3166 @see
3167 @return Result of the function call
3168*/
3169WDI_Status
3170WDI_ProcessCloseRsp
3171(
3172 WDI_ControlBlockType* pWDICtx,
3173 WDI_EventInfoType* pEventData
3174);
3175
3176/**
3177 @brief Process Shutdown Rsp function
3178 There is no shutdown response comming from HAL
3179 - function just kept for simmetry
3180
3181 @param pWDICtx: pointer to the WLAN DAL context
3182 pEventData: pointer to the event information structure
3183
3184 @see
3185 @return Result of the function call
3186*/
3187WDI_Status
3188WDI_ProcessShutdownRsp
3189(
3190 WDI_ControlBlockType* pWDICtx,
3191 WDI_EventInfoType* pEventData
3192);
3193
3194/**
3195 @brief Process Init Scan Rsp function (called when a response
3196 is being received over the bus from HAL)
3197
3198 @param pWDICtx: pointer to the WLAN DAL context
3199 pEventData: pointer to the event information structure
3200
3201 @see
3202 @return Result of the function call
3203*/
3204WDI_Status
3205WDI_ProcessInitScanRsp
3206(
3207 WDI_ControlBlockType* pWDICtx,
3208 WDI_EventInfoType* pEventData
3209);
3210
3211
3212/**
3213 @brief Process Start Scan Rsp function (called when a response
3214 is being received over the bus from HAL)
3215
3216 @param pWDICtx: pointer to the WLAN DAL context
3217 pEventData: pointer to the event information structure
3218
3219 @see
3220 @return Result of the function call
3221*/
3222WDI_Status
3223WDI_ProcessStartScanRsp
3224(
3225 WDI_ControlBlockType* pWDICtx,
3226 WDI_EventInfoType* pEventData
3227);
3228
3229
3230/**
3231 @brief Process End Scan Response function (called when a
3232 response is being received over the bus from HAL)
3233
3234 @param pWDICtx: pointer to the WLAN DAL context
3235 pEventData: pointer to the event information structure
3236
3237 @see
3238 @return Result of the function call
3239*/
3240WDI_Status
3241WDI_ProcessEndScanRsp
3242(
3243 WDI_ControlBlockType* pWDICtx,
3244 WDI_EventInfoType* pEventData
3245);
3246
3247
3248/**
3249 @brief Process Finish Scan Response function (called when a
3250 response is being received over the bus from HAL)
3251
3252 @param pWDICtx: pointer to the WLAN DAL context
3253 pEventData: pointer to the event information structure
3254
3255 @see
3256 @return Result of the function call
3257*/
3258WDI_Status
3259WDI_ProcessFinishScanRsp
3260(
3261 WDI_ControlBlockType* pWDICtx,
3262 WDI_EventInfoType* pEventData
3263);
3264
3265
3266/**
3267 @brief Process Join Response function (called when a response
3268 is being received over the bus from HAL)
3269
3270 @param pWDICtx: pointer to the WLAN DAL context
3271 pEventData: pointer to the event information structure
3272
3273 @see
3274 @return Result of the function call
3275*/
3276WDI_Status
3277WDI_ProcessJoinRsp
3278(
3279 WDI_ControlBlockType* pWDICtx,
3280 WDI_EventInfoType* pEventData
3281);
3282
3283
3284/**
3285 @brief Process Config BSS Response function (called when a
3286 response is being received over the bus from HAL)
3287
3288 @param pWDICtx: pointer to the WLAN DAL context
3289 pEventData: pointer to the event information structure
3290
3291 @see
3292 @return Result of the function call
3293*/
3294WDI_Status
3295WDI_ProcessConfigBSSRsp
3296(
3297 WDI_ControlBlockType* pWDICtx,
3298 WDI_EventInfoType* pEventData
3299);
3300
3301
3302/**
3303 @brief Process Del BSS Response function (called when a response
3304 is being received over the bus from HAL)
3305
3306 @param pWDICtx: pointer to the WLAN DAL context
3307 pEventData: pointer to the event information structure
3308
3309 @see
3310 @return Result of the function call
3311*/
3312WDI_Status
3313WDI_ProcessDelBSSRsp
3314(
3315 WDI_ControlBlockType* pWDICtx,
3316 WDI_EventInfoType* pEventData
3317);
3318
3319/**
3320 @brief Process Post Assoc Rsp function (called when a response
3321 is being received over the bus from HAL)
3322
3323 @param pWDICtx: pointer to the WLAN DAL context
3324 pEventData: pointer to the event information structure
3325
3326 @see
3327 @return Result of the function call
3328*/
3329WDI_Status
3330WDI_ProcessPostAssocRsp
3331(
3332 WDI_ControlBlockType* pWDICtx,
3333 WDI_EventInfoType* pEventData
3334);
3335
3336/**
3337 @brief Process Del STA Key Rsp function (called when a response
3338 is being received over the bus from HAL)
3339
3340 @param pWDICtx: pointer to the WLAN DAL context
3341 pEventData: pointer to the event information structure
3342
3343 @see
3344 @return Result of the function call
3345*/
3346WDI_Status
3347WDI_ProcessDelSTARsp
3348(
3349 WDI_ControlBlockType* pWDICtx,
3350 WDI_EventInfoType* pEventData
3351);
3352
3353/**
3354 @brief Process Set BSS Key Rsp function (called when a response
3355 is being received over the bus from HAL)
3356
3357 @param pWDICtx: pointer to the WLAN DAL context
3358 pEventData: pointer to the event information structure
3359
3360 @see
3361 @return Result of the function call
3362*/
3363WDI_Status
3364WDI_ProcessSetBssKeyRsp
3365(
3366 WDI_ControlBlockType* pWDICtx,
3367 WDI_EventInfoType* pEventData
3368);
3369
3370/**
3371 @brief Process Remove BSS Key Rsp function (called when a response
3372 is being received over the bus from HAL)
3373
3374 @param pWDICtx: pointer to the WLAN DAL context
3375 pEventData: pointer to the event information structure
3376
3377 @see
3378 @return Result of the function call
3379*/
3380WDI_Status
3381WDI_ProcessRemoveBssKeyRsp
3382(
3383 WDI_ControlBlockType* pWDICtx,
3384 WDI_EventInfoType* pEventData
3385);
3386
3387
3388/**
3389 @brief Process Set STA Key Rsp function (called when a response
3390 is being received over the bus from HAL)
3391
3392 @param pWDICtx: pointer to the WLAN DAL context
3393 pEventData: pointer to the event information structure
3394
3395 @see
3396 @return Result of the function call
3397*/
3398WDI_Status
3399WDI_ProcessSetStaKeyRsp
3400(
3401 WDI_ControlBlockType* pWDICtx,
3402 WDI_EventInfoType* pEventData
3403);
3404
3405/**
3406 @brief Process Remove STA Key Rsp function (called when a
3407 response is being received over the bus from HAL)
3408
3409 @param pWDICtx: pointer to the WLAN DAL context
3410 pEventData: pointer to the event information structure
3411
3412 @see
3413 @return Result of the function call
3414*/
3415WDI_Status
3416WDI_ProcessRemoveStaKeyRsp
3417(
3418 WDI_ControlBlockType* pWDICtx,
3419 WDI_EventInfoType* pEventData
3420);
3421
3422
3423/**
3424 @brief Process Set STA Bcast Key Rsp function (called when a
3425 response is being received over the bus from HAL)
3426
3427 @param pWDICtx: pointer to the WLAN DAL context
3428 pEventData: pointer to the event information structure
3429
3430 @see
3431 @return Result of the function call
3432*/
3433WDI_Status
3434WDI_ProcessSetStaBcastKeyRsp
3435(
3436 WDI_ControlBlockType* pWDICtx,
3437 WDI_EventInfoType* pEventData
3438);
3439
3440/**
3441 @brief Process Remove STA Bcast Key Rsp function (called when a
3442 response is being received over the bus from HAL)
3443
3444 @param pWDICtx: pointer to the WLAN DAL context
3445 pEventData: pointer to the event information structure
3446
3447 @see
3448 @return Result of the function call
3449*/
3450WDI_Status
3451WDI_ProcessRemoveStaBcastKeyRsp
3452(
3453 WDI_ControlBlockType* pWDICtx,
3454 WDI_EventInfoType* pEventData
3455);
3456
3457/**
3458 @brief Process Add TSpec Rsp function (called when a response
3459 is being received over the bus from HAL)
3460
3461 @param pWDICtx: pointer to the WLAN DAL context
3462 pEventData: pointer to the event information structure
3463
3464 @see
3465 @return Result of the function call
3466*/
3467WDI_Status
3468WDI_ProcessAddTSpecRsp
3469(
3470 WDI_ControlBlockType* pWDICtx,
3471 WDI_EventInfoType* pEventData
3472);
3473
3474
3475/**
3476 @brief Process Del TSpec Rsp function (called when a response
3477 is being received over the bus from HAL)
3478
3479 @param pWDICtx: pointer to the WLAN DAL context
3480 pEventData: pointer to the event information structure
3481
3482 @see
3483 @return Result of the function call
3484*/
3485WDI_Status
3486WDI_ProcessDelTSpecRsp
3487(
3488 WDI_ControlBlockType* pWDICtx,
3489 WDI_EventInfoType* pEventData
3490);
3491
3492/**
3493 @brief Process Update EDCA Parameters Rsp function (called when a
3494 response is being received over the bus from HAL)
3495
3496 @param pWDICtx: pointer to the WLAN DAL context
3497 pEventData: pointer to the event information structure
3498
3499 @see
3500 @return Result of the function call
3501*/
3502WDI_Status
3503WDI_ProcessUpdateEDCAParamsRsp
3504(
3505 WDI_ControlBlockType* pWDICtx,
3506 WDI_EventInfoType* pEventData
3507);
3508
3509
3510/**
3511 @brief Process Add BA Rsp function (called when a response
3512 is being received over the bus from HAL)
3513
3514 @param pWDICtx: pointer to the WLAN DAL context
3515 pEventData: pointer to the event information structure
3516
3517 @see
3518 @return Result of the function call
3519*/
3520WDI_Status
3521WDI_ProcessAddBASessionRsp
3522(
3523 WDI_ControlBlockType* pWDICtx,
3524 WDI_EventInfoType* pEventData
3525);
3526
3527
3528/**
3529 @brief Process Del BA Rsp function (called when a response
3530 is being received over the bus from HAL)
3531
3532 @param pWDICtx: pointer to the WLAN DAL context
3533 pEventData: pointer to the event information structure
3534
3535 @see
3536 @return Result of the function call
3537*/
3538WDI_Status
3539WDI_ProcessDelBARsp
3540(
3541 WDI_ControlBlockType* pWDICtx,
3542 WDI_EventInfoType* pEventData
3543);
3544
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08003545#ifdef FEATURE_WLAN_ESE
Jeff Johnson295189b2012-06-20 16:38:30 -07003546/**
3547 @brief Process TSM stats Rsp function (called when a response
3548 is being received over the bus from HAL)
3549
3550 @param pWDICtx: pointer to the WLAN DAL context
3551 pEventData: pointer to the event information structure
3552
3553 @see
3554 @return Result of the function call
3555*/
3556WDI_Status
3557WDI_ProcessTsmStatsRsp
3558(
3559 WDI_ControlBlockType* pWDICtx,
3560 WDI_EventInfoType* pEventData
3561);
3562
3563#endif
3564
3565
3566/**
3567 @brief Process Channel Switch Rsp function (called when a response
3568 is being received over the bus from HAL)
3569
3570 @param pWDICtx: pointer to the WLAN DAL context
3571 pEventData: pointer to the event information structure
3572
3573 @see
3574 @return Result of the function call
3575*/
3576WDI_Status
3577WDI_ProcessChannelSwitchRsp
3578(
3579 WDI_ControlBlockType* pWDICtx,
3580 WDI_EventInfoType* pEventData
3581);
3582
Kalikinkar dhara1e83b772014-02-06 12:59:22 -08003583/**
3584 @brief Process Channel Switch Rsp function (called when a response
3585 is being received over the bus from HAL)
3586
3587 @param pWDICtx: pointer to the WLAN DAL context
3588 pEventData: pointer to the event information structure
3589
3590 @see
3591 @return Result of the function call
3592*/
3593WDI_Status
3594WDI_ProcessChannelSwitchRsp_V1
3595(
3596 WDI_ControlBlockType* pWDICtx,
3597 WDI_EventInfoType* pEventData
3598);
Jeff Johnson295189b2012-06-20 16:38:30 -07003599
3600/**
3601 @brief Process Config STA Rsp function (called when a response
3602 is being received over the bus from HAL)
3603
3604 @param pWDICtx: pointer to the WLAN DAL context
3605 pEventData: pointer to the event information structure
3606
3607 @see
3608 @return Result of the function call
3609*/
3610WDI_Status
3611WDI_ProcessConfigStaRsp
3612(
3613 WDI_ControlBlockType* pWDICtx,
3614 WDI_EventInfoType* pEventData
3615);
3616
3617
3618/**
3619 @brief Process Set Link State Rsp function (called when a
3620 response is being received over the bus from HAL)
3621
3622 @param pWDICtx: pointer to the WLAN DAL context
3623 pEventData: pointer to the event information structure
3624
3625 @see
3626 @return Result of the function call
3627*/
3628WDI_Status
3629WDI_ProcessSetLinkStateRsp
3630(
3631 WDI_ControlBlockType* pWDICtx,
3632 WDI_EventInfoType* pEventData
3633);
3634
3635/**
Manjunathappa Prakash86f78ca2014-02-10 18:09:15 -08003636 @brief Process Update Channel Rsp function (called when a response is
3637 being received over the bus from HAL)
3638
3639 @param pWDICtx: pointer to the WLAN DAL context
3640 pEventData: pointer to the event information structure
3641
3642 @see
3643 @return Result of the function call
3644*/
3645WDI_Status
3646WDI_ProcessUpdateChanRsp
3647(
3648 WDI_ControlBlockType* pWDICtx,
3649 WDI_EventInfoType* pEventData
3650);
3651
3652/**
Jeff Johnson295189b2012-06-20 16:38:30 -07003653 @brief Process Get Stats Rsp function (called when a response is
3654 being received over the bus from HAL)
3655
3656 @param pWDICtx: pointer to the WLAN DAL context
3657 pEventData: pointer to the event information structure
3658
3659 @see
3660 @return Result of the function call
3661*/
3662WDI_Status
3663WDI_ProcessGetStatsRsp
3664(
3665 WDI_ControlBlockType* pWDICtx,
3666 WDI_EventInfoType* pEventData
3667);
3668
3669
3670/**
3671 @brief Process Update Cfg Rsp function (called when a response is
3672 being received over the bus from HAL)
3673
3674 @param pWDICtx: pointer to the WLAN DAL context
3675 pEventData: pointer to the event information structure
3676
3677 @see
3678 @return Result of the function call
3679*/
3680WDI_Status
3681WDI_ProcessUpdateCfgRsp
3682(
3683 WDI_ControlBlockType* pWDICtx,
3684 WDI_EventInfoType* pEventData
3685);
3686
3687/**
3688 @brief Process Add BA Rsp function (called when a response
3689 is being received over the bus from HAL)
3690
3691 @param pWDICtx: pointer to the WLAN DAL context
3692 pEventData: pointer to the event information structure
3693
3694 @see
3695 @return Result of the function call
3696*/
3697WDI_Status
3698WDI_ProcessAddBARsp
3699(
3700 WDI_ControlBlockType* pWDICtx,
3701 WDI_EventInfoType* pEventData
3702);
3703
3704/**
3705 @brief Process Add BA Rsp function (called when a response
3706 is being received over the bus from HAL)
3707
3708 @param pWDICtx: pointer to the WLAN DAL context
3709 pEventData: pointer to the event information structure
3710
3711 @see
3712 @return Result of the function call
3713*/
3714WDI_Status
3715WDI_ProcessTriggerBARsp
3716(
3717 WDI_ControlBlockType* pWDICtx,
3718 WDI_EventInfoType* pEventData
3719);
3720
3721/**
3722 @brief Process Update Beacon Params Rsp function (called when a response is
3723 being received over the bus from HAL)
3724
3725 @param pWDICtx: pointer to the WLAN DAL context
3726 pEventData: pointer to the event information structure
3727
3728 @see
3729 @return Result of the function call
3730*/
3731WDI_Status
3732WDI_ProcessUpdateBeaconParamsRsp
3733(
3734 WDI_ControlBlockType* pWDICtx,
3735 WDI_EventInfoType* pEventData
3736);
3737
3738/**
3739 @brief Process Send Beacon template Rsp function (called when a response is
3740 being received over the bus from HAL)
3741
3742 @param pWDICtx: pointer to the WLAN DAL context
3743 pEventData: pointer to the event information structure
3744
3745 @see
3746 @return Result of the function call
3747*/
3748WDI_Status
3749WDI_ProcessSendBeaconParamsRsp
3750(
3751 WDI_ControlBlockType* pWDICtx,
3752 WDI_EventInfoType* pEventData
3753);
3754
3755/**
3756 @brief Process Update Probe Resp Template Rsp function (called
3757 when a response is being received over the bus from HAL)
3758
3759 @param pWDICtx: pointer to the WLAN DAL context
3760 pEventData: pointer to the event information structure
3761
3762 @see
3763 @return Result of the function call
3764*/
3765WDI_Status
3766WDI_ProcessUpdateProbeRspTemplateRsp
3767(
3768 WDI_ControlBlockType* pWDICtx,
3769 WDI_EventInfoType* pEventData
3770);
3771 /**
3772 @brief Process Set Max Tx Power Rsp function (called when a response
3773 is being received over the bus from HAL)
3774
3775 @param pWDICtx: pointer to the WLAN DAL context
3776 pEventData: pointer to the event information structure
3777
3778 @see
3779 @return Result of the function call
3780*/
3781WDI_Status
3782WDI_ProcessSetMaxTxPowerRsp
3783(
3784 WDI_ControlBlockType* pWDICtx,
3785 WDI_EventInfoType* pEventData
3786);
3787
Arif Hussain935a8fb2014-01-31 12:12:28 -08003788/**
3789 @brief Process Set Max Tx Power Per Band Rsp function (called when a response
3790 is being received over the bus from HAL)
3791
3792 @param pWDICtx: pointer to the WLAN DAL context
3793 pEventData: pointer to the event information structure
3794
3795 @see
3796 @return Result of the function call
3797*/
3798WDI_Status
3799WDI_ProcessSetMaxTxPowerPerBandRsp
3800(
3801 WDI_ControlBlockType* pWDICtx,
3802 WDI_EventInfoType* pEventData
3803);
3804
schang86c22c42013-03-13 18:41:24 -07003805 /**
3806 @brief Process Set Tx Power Rsp function (called when a response
3807 is being received over the bus from HAL)
3808
3809 @param pWDICtx: pointer to the WLAN DAL context
3810 pEventData: pointer to the event information structure
3811
3812 @see
3813 @return Result of the function call
3814*/
3815WDI_Status
3816WDI_ProcessSetTxPowerRsp
3817(
3818 WDI_ControlBlockType* pWDICtx,
3819 WDI_EventInfoType* pEventData
3820);
3821
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05303822 /**
3823 @brief Process TDLS Link Establish Req Rsp function (called when a response
3824 is being received over the bus from HAL)
3825
3826 @param pWDICtx: pointer to the WLAN DAL context
3827 pEventData: pointer to the event information structure
3828
3829 @see
3830 @return Result of the function call
3831*/
3832WDI_Status
3833WDI_ProcessLinkEstablishReqRsp
3834(
3835 WDI_ControlBlockType* pWDICtx,
3836 WDI_EventInfoType* pEventData
3837);
3838
Jeff Johnson295189b2012-06-20 16:38:30 -07003839/**
3840 @brief Process Nv download(called when a response
3841 is being received over the bus from HAL)
3842
3843 @param pWDICtx: pointer to the WLAN DAL context
3844 pEventData: pointer to the event information structure
3845
3846 @see
3847 @return Result of the function call
3848*/
3849WDI_Status
3850WDI_ProcessNvDownloadRsp
3851(
3852 WDI_ControlBlockType* pWDICtx,
3853 WDI_EventInfoType* pEventData
3854);
3855
Jeff Johnson295189b2012-06-20 16:38:30 -07003856/**
3857 @brief Process P2P Group Owner Notice Of Absense Rsp function (called
3858 when a response is being received over the bus from HAL)
3859
3860 @param pWDICtx: pointer to the WLAN DAL context
3861 pEventData: pointer to the event information structure
3862
3863 @see
3864 @return Result of the function call
3865*/
3866WDI_Status
3867WDI_ProcessP2PGONOARsp
3868(
3869 WDI_ControlBlockType* pWDICtx,
3870 WDI_EventInfoType* pEventData
3871);
Jeff Johnson295189b2012-06-20 16:38:30 -07003872
3873/**
3874 @brief Process Enter IMPS Rsp function (called when a response
3875 is being received over the bus from HAL)
3876
3877 @param pWDICtx: pointer to the WLAN DAL context
3878 pEventData: pointer to the event information structure
3879
3880 @see
3881 @return Result of the function call
3882*/
3883WDI_Status
3884WDI_ProcessEnterImpsRsp
3885(
3886 WDI_ControlBlockType* pWDICtx,
3887 WDI_EventInfoType* pEventData
3888);
3889
3890/**
3891 @brief Process Exit IMPS Rsp function (called when a response
3892 is being received over the bus from HAL)
3893
3894 @param pWDICtx: pointer to the WLAN DAL context
3895 pEventData: pointer to the event information structure
3896
3897 @see
3898 @return Result of the function call
3899*/
3900WDI_Status
3901WDI_ProcessExitImpsRsp
3902(
3903 WDI_ControlBlockType* pWDICtx,
3904 WDI_EventInfoType* pEventData
3905);
3906
3907/**
3908 @brief Process Enter BMPS Rsp function (called when a response
3909 is being received over the bus from HAL)
3910
3911 @param pWDICtx: pointer to the WLAN DAL context
3912 pEventData: pointer to the event information structure
3913
3914 @see
3915 @return Result of the function call
3916*/
3917WDI_Status
3918WDI_ProcessEnterBmpsRsp
3919(
3920 WDI_ControlBlockType* pWDICtx,
3921 WDI_EventInfoType* pEventData
3922);
3923
3924/**
3925 @brief Process Exit BMPS Rsp function (called when a response
3926 is being received over the bus from HAL)
3927
3928 @param pWDICtx: pointer to the WLAN DAL context
3929 pEventData: pointer to the event information structure
3930
3931 @see
3932 @return Result of the function call
3933*/
3934WDI_Status
3935WDI_ProcessExitBmpsRsp
3936(
3937 WDI_ControlBlockType* pWDICtx,
3938 WDI_EventInfoType* pEventData
3939);
3940
3941/**
3942 @brief Process Enter UAPSD Rsp function (called when a response
3943 is being received over the bus from HAL)
3944
3945 @param pWDICtx: pointer to the WLAN DAL context
3946 pEventData: pointer to the event information structure
3947
3948 @see
3949 @return Result of the function call
3950*/
3951WDI_Status
3952WDI_ProcessEnterUapsdRsp
3953(
3954 WDI_ControlBlockType* pWDICtx,
3955 WDI_EventInfoType* pEventData
3956);
3957
3958/**
3959 @brief Process Exit UAPSD Rsp function (called when a response
3960 is being received over the bus from HAL)
3961
3962 @param pWDICtx: pointer to the WLAN DAL context
3963 pEventData: pointer to the event information structure
3964
3965 @see
3966 @return Result of the function call
3967*/
3968WDI_Status
3969WDI_ProcessExitUapsdRsp
3970(
3971 WDI_ControlBlockType* pWDICtx,
3972 WDI_EventInfoType* pEventData
3973);
3974
3975/**
3976 @brief Process set UAPSD params Rsp function (called when a
3977 response is being received over the bus from HAL)
3978
3979 @param pWDICtx: pointer to the WLAN DAL context
3980 pEventData: pointer to the event information structure
3981
3982 @see
3983 @return Result of the function call
3984*/
3985WDI_Status
3986WDI_ProcessSetUapsdAcParamsRsp
3987(
3988 WDI_ControlBlockType* pWDICtx,
3989 WDI_EventInfoType* pEventData
3990);
3991
3992/**
3993 @brief Process update UAPSD params Rsp function (called when a
3994 response is being received over the bus from HAL)
3995
3996 @param pWDICtx: pointer to the WLAN DAL context
3997 pEventData: pointer to the event information structure
3998
3999 @see
4000 @return Result of the function call
4001*/
4002WDI_Status
4003WDI_ProcessUpdateUapsdParamsRsp
4004(
4005 WDI_ControlBlockType* pWDICtx,
4006 WDI_EventInfoType* pEventData
4007);
4008
4009/**
4010 @brief Process Configure RXP filter Rsp function (called when a
4011 response is being received over the bus from HAL)
4012
4013 @param pWDICtx: pointer to the WLAN DAL context
4014 pEventData: pointer to the event information structure
4015
4016 @see
4017 @return Result of the function call
4018*/
4019WDI_Status
4020WDI_ProcessConfigureRxpFilterRsp
4021(
4022 WDI_ControlBlockType* pWDICtx,
4023 WDI_EventInfoType* pEventData
4024);
4025
4026/**
4027 @brief Process Set beacon filter Rsp function (called when a
4028 response is being received over the bus from HAL)
4029
4030 @param pWDICtx: pointer to the WLAN DAL context
4031 pEventData: pointer to the event information structure
4032
4033 @see
4034 @return Result of the function call
4035*/
4036WDI_Status
4037WDI_ProcessSetBeaconFilterRsp
4038(
4039 WDI_ControlBlockType* pWDICtx,
4040 WDI_EventInfoType* pEventData
4041);
4042
4043/**
4044 @brief Process remove beacon filter Rsp function (called when a
4045 response is being received over the bus from HAL)
4046
4047 @param pWDICtx: pointer to the WLAN DAL context
4048 pEventData: pointer to the event information structure
4049
4050 @see
4051 @return Result of the function call
4052*/
4053WDI_Status
4054WDI_ProcessRemBeaconFilterRsp
4055(
4056 WDI_ControlBlockType* pWDICtx,
4057 WDI_EventInfoType* pEventData
4058);
4059
4060/**
4061 @brief Process set RSSI thresholds Rsp function (called when a
4062 response is being received over the bus from HAL)
4063
4064 @param pWDICtx: pointer to the WLAN DAL context
4065 pEventData: pointer to the event information structure
4066
4067 @see
4068 @return Result of the function call
4069*/
4070WDI_Status
4071WDI_ProcessSetRSSIThresoldsRsp
4072(
4073 WDI_ControlBlockType* pWDICtx,
4074 WDI_EventInfoType* pEventData
4075);
4076
4077/**
4078 @brief Process host offload Rsp function (called when a
4079 response is being received over the bus from HAL)
4080
4081 @param pWDICtx: pointer to the WLAN DAL context
4082 pEventData: pointer to the event information structure
4083
4084 @see
4085 @return Result of the function call
4086*/
4087WDI_Status
4088WDI_ProcessHostOffloadRsp
4089(
4090 WDI_ControlBlockType* pWDICtx,
4091 WDI_EventInfoType* pEventData
4092);
4093
4094/**
4095 @brief Process Keep Alive Rsp function (called when a
4096 response is being received over the bus from HAL)
4097
4098 @param pWDICtx: pointer to the WLAN DAL context
4099 pEventData: pointer to the event information structure
4100
4101 @see
4102 @return Result of the function call
4103*/
4104WDI_Status
4105WDI_ProcessKeepAliveRsp
4106(
4107 WDI_ControlBlockType* pWDICtx,
4108 WDI_EventInfoType* pEventData
4109);
4110
4111
4112/**
4113 @brief Process wowl add ptrn Rsp function (called when a
4114 response is being received over the bus from HAL)
4115
4116 @param pWDICtx: pointer to the WLAN DAL context
4117 pEventData: pointer to the event information structure
4118
4119 @see
4120 @return Result of the function call
4121*/
4122WDI_Status
4123WDI_ProcessWowlAddBcPtrnRsp
4124(
4125 WDI_ControlBlockType* pWDICtx,
4126 WDI_EventInfoType* pEventData
4127);
4128
4129/**
4130 @brief Process wowl delete ptrn Rsp function (called when a
4131 response is being received over the bus from HAL)
4132
4133 @param pWDICtx: pointer to the WLAN DAL context
4134 pEventData: pointer to the event information structure
4135
4136 @see
4137 @return Result of the function call
4138*/
4139WDI_Status
4140WDI_ProcessWowlDelBcPtrnRsp
4141(
4142 WDI_ControlBlockType* pWDICtx,
4143 WDI_EventInfoType* pEventData
4144);
4145
4146/**
4147 @brief Process wowl enter Rsp function (called when a response
4148 is being received over the bus from HAL)
4149
4150 @param pWDICtx: pointer to the WLAN DAL context
4151 pEventData: pointer to the event information structure
4152
4153 @see
4154 @return Result of the function call
4155*/
4156WDI_Status
4157WDI_ProcessWowlEnterRsp
4158(
4159 WDI_ControlBlockType* pWDICtx,
4160 WDI_EventInfoType* pEventData
4161);
4162
4163/**
4164 @brief Process wowl exit Rsp function (called when a response
4165 is being received over the bus from HAL)
4166
4167 @param pWDICtx: pointer to the WLAN DAL context
4168 pEventData: pointer to the event information structure
4169
4170 @see
4171 @return Result of the function call
4172*/
4173WDI_Status
4174WDI_ProcessWowlExitRsp
4175(
4176 WDI_ControlBlockType* pWDICtx,
4177 WDI_EventInfoType* pEventData
4178);
4179
4180/**
4181 @brief Process Configure Apps CPU wakeup State Rsp function
4182 (called when a response is being received over the bus
4183 from HAL)
4184
4185 @param pWDICtx: pointer to the WLAN DAL context
4186 pEventData: pointer to the event information structure
4187
4188 @see
4189 @return Result of the function call
4190*/
4191WDI_Status
4192WDI_ProcessConfigureAppsCpuWakeupStateRsp
4193(
4194 WDI_ControlBlockType* pWDICtx,
4195 WDI_EventInfoType* pEventData
4196);
4197/**
4198 @brief Process Flush AC Rsp function (called when a response
4199 is being received over the bus from HAL)
4200
4201 @param pWDICtx: pointer to the WLAN DAL context
4202 pEventData: pointer to the event information structure
4203
4204 @see
4205 @return Result of the function call
4206*/
4207WDI_Status
4208WDI_ProcessFlushAcRsp
4209(
4210 WDI_ControlBlockType* pWDICtx,
4211 WDI_EventInfoType* pEventData
4212);
4213
4214/**
4215 @brief Process BT AMP event Rsp function (called when a
4216 response is being received over the bus from HAL)
4217
4218 @param pWDICtx: pointer to the WLAN DAL context
4219 pEventData: pointer to the event information structure
4220
4221 @see
4222 @return Result of the function call
4223*/
4224WDI_Status
4225WDI_ProcessBtAmpEventRsp
4226(
4227 WDI_ControlBlockType* pWDICtx,
4228 WDI_EventInfoType* pEventData
4229);
4230
4231/**
4232 @brief Process ADD SELF STA Rsp function (called
4233 when a response is being received over the bus from HAL)
4234
4235 @param pWDICtx: pointer to the WLAN DAL context
4236 pEventData: pointer to the event information structure
4237
4238 @see
4239 @return Result of the function call
4240*/
4241WDI_Status
4242WDI_ProcessAddSTASelfRsp
4243(
4244 WDI_ControlBlockType* pWDICtx,
4245 WDI_EventInfoType* pEventData
4246);
4247
4248 /**
4249 @brief WDI_ProcessDelSTASelfRsp function (called when a
4250 response is being received over the bus from HAL)
4251
4252 @param pWDICtx: pointer to the WLAN DAL context
4253 pEventData: pointer to the event information structure
4254
4255 @see
4256 @return Result of the function call
4257*/
4258WDI_Status
4259WDI_ProcessDelSTASelfRsp
4260(
4261 WDI_ControlBlockType* pWDICtx,
4262 WDI_EventInfoType* pEventData
4263);
4264
Jeff Johnsone7245742012-09-05 17:12:55 -07004265#ifdef FEATURE_OEM_DATA_SUPPORT
4266/**
4267 @brief Start Oem Data Rsp function (called when a
4268 response is being received over the bus from HAL)
4269
4270 @param pWDICtx: pointer to the WLAN DAL context
4271 pEventData: pointer to the event information structure
4272
4273 @see
4274 @return Result of the function call
4275*/
4276WDI_Status
4277WDI_ProcessStartOemDataRsp
4278(
4279 WDI_ControlBlockType* pWDICtx,
4280 WDI_EventInfoType* pEventData
4281);
4282#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07004283
4284 /**
4285 @brief WDI_ProcessHostResumeRsp function (called when a
4286 response is being received over the bus from HAL)
4287
4288 @param pWDICtx: pointer to the WLAN DAL context
4289 pEventData: pointer to the event information structure
4290
4291 @see
4292 @return Result of the function call
4293*/
4294WDI_Status
4295WDI_ProcessHostResumeRsp
4296(
4297 WDI_ControlBlockType* pWDICtx,
4298 WDI_EventInfoType* pEventData
4299);
4300
4301/**
4302 @brief Process set tx per tracking Rsp function (called when a
4303 response is being received over the bus from HAL)
4304
4305 @param pWDICtx: pointer to the WLAN DAL context
4306 pEventData: pointer to the event information structure
4307
4308 @see
4309 @return Result of the function call
4310*/
4311WDI_Status
4312WDI_ProcessSetTxPerTrackingRsp
4313(
4314 WDI_ControlBlockType* pWDICtx,
4315 WDI_EventInfoType* pEventData
4316);
4317
4318/**
4319 @brief Process Power Params Rsp function (called when a
4320 response is being received over the bus from HAL)
4321
4322 @param pWDICtx: pointer to the WLAN DAL context
4323 pEventData: pointer to the event information structure
4324
4325 @see
4326 @return Result of the function call
4327*/
4328WDI_Status
4329WDI_ProcessSetPowerParamsRsp
4330(
4331 WDI_ControlBlockType* pWDICtx,
4332 WDI_EventInfoType* pEventData
4333);
4334
4335/**
4336 @brief Process Set TM Level Rsp function (called when a
4337 response is being received over the bus from HAL)
4338
4339 @param pWDICtx: pointer to the WLAN DAL context
4340 pEventData: pointer to the event information structure
4341
4342 @see
4343 @return Result of the function call
4344*/
4345WDI_Status
4346WDI_ProcessSetTmLevelRsp
4347(
4348 WDI_ControlBlockType* pWDICtx,
4349 WDI_EventInfoType* pEventData
4350);
4351
4352/*==========================================================================
4353 Indications from HAL
4354 ==========================================================================*/
4355/**
4356 @brief Process Low RSSI Indication function (called when an
4357 indication of this kind is being received over the bus
4358 from HAL)
4359
4360 @param pWDICtx: pointer to the WLAN DAL context
4361 pEventData: pointer to the event information structure
4362
4363 @see
4364 @return Result of the function call
4365*/
4366WDI_Status
4367WDI_ProcessLowRSSIInd
4368(
4369 WDI_ControlBlockType* pWDICtx,
4370 WDI_EventInfoType* pEventData
4371);
4372
4373/**
4374 @brief Process Missed Beacon Indication function (called when
4375 an indication of this kind is being received over the
4376 bus from HAL)
4377
4378 @param pWDICtx: pointer to the WLAN DAL context
4379 pEventData: pointer to the event information structure
4380
4381 @see
4382 @return Result of the function call
4383*/
4384WDI_Status
4385WDI_ProcessMissedBeaconInd
4386(
4387 WDI_ControlBlockType* pWDICtx,
4388 WDI_EventInfoType* pEventData
4389);
4390
4391
4392/**
4393 @brief Process Unk Addr Frame Indication function (called when
4394 an indication of this kind is being received over the
4395 bus from HAL)
4396
4397 @param pWDICtx: pointer to the WLAN DAL context
4398 pEventData: pointer to the event information structure
4399
4400 @see
4401 @return Result of the function call
4402*/
4403WDI_Status
4404WDI_ProcessUnkAddrFrameInd
4405(
4406 WDI_ControlBlockType* pWDICtx,
4407 WDI_EventInfoType* pEventData
4408);
4409
4410
4411/**
4412 @brief Process MIC Failure Indication function (called when an
4413 indication of this kind is being received over the bus
4414 from HAL)
4415
4416 @param pWDICtx: pointer to the WLAN DAL context
4417 pEventData: pointer to the event information structure
4418
4419 @see
4420 @return Result of the function call
4421*/
4422WDI_Status
4423WDI_ProcessMicFailureInd
4424(
4425 WDI_ControlBlockType* pWDICtx,
4426 WDI_EventInfoType* pEventData
4427);
4428
4429/**
4430 @brief Process Fatal Failure Indication function (called when
4431 an indication of this kind is being received over the
4432 bus from HAL)
4433
4434 @param pWDICtx: pointer to the WLAN DAL context
4435 pEventData: pointer to the event information structure
4436
4437 @see
4438 @return Result of the function call
4439*/
4440WDI_Status
4441WDI_ProcessFatalErrorInd
4442(
4443 WDI_ControlBlockType* pWDICtx,
4444 WDI_EventInfoType* pEventData
4445);
4446
4447/**
4448 @brief Process Delete STA Indication function (called when
4449 an indication of this kind is being received over the
4450 bus from HAL)
4451
4452 @param pWDICtx: pointer to the WLAN DAL context
4453 pEventData: pointer to the event information structure
4454
4455 @see
4456 @return Result of the function call
4457*/
4458WDI_Status
4459WDI_ProcessDelSTAInd
4460(
4461 WDI_ControlBlockType* pWDICtx,
4462 WDI_EventInfoType* pEventData
4463);
4464
4465/**
4466*@brief Process Coex Indication function (called when
4467 an indication of this kind is being received over the
4468 bus from HAL)
4469
4470 @param pWDICtx: pointer to the WLAN DAL context
4471 pEventData: pointer to the event information structure
4472
4473 @see
4474 @return Result of the function call
4475*/
4476WDI_Status
4477WDI_ProcessCoexInd
4478(
4479 WDI_ControlBlockType* pWDICtx,
4480 WDI_EventInfoType* pEventData
4481);
4482
4483/**
4484*@brief Process Tx Complete Indication function (called when
4485 an indication of this kind is being received over the
4486 bus from HAL)
4487
4488 @param pWDICtx: pointer to the WLAN DAL context
4489 pEventData: pointer to the event information structure
4490
4491 @see
4492 @return Result of the function call
4493*/
4494WDI_Status
4495WDI_ProcessTxCompleteInd
4496(
4497 WDI_ControlBlockType* pWDICtx,
4498 WDI_EventInfoType* pEventData
4499);
4500
Jeff Johnson295189b2012-06-20 16:38:30 -07004501/**
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304502*@brief Process Tdls Indication function (called when
4503 an indication of this kind is being received over the
4504 bus from HAL)
4505
4506 @param pWDICtx: pointer to the WLAN DAL context
4507 pEventData: pointer to the event information structure
4508
4509 @see
4510 @return Result of the function call
4511*/
4512WDI_Status
4513WDI_ProcessTdlsInd
4514(
4515 WDI_ControlBlockType* pWDICtx,
4516 WDI_EventInfoType* pEventData
4517);
4518
4519/**
Viral Modid86bde22012-12-10 13:09:21 -08004520*@brief Process Noa Start Indication function (called when
4521 an indication of this kind is being received over the
4522 bus from HAL)
4523
4524 @param pWDICtx: pointer to the WLAN DAL context
4525 pEventData: pointer to the event information structure
4526
4527 @see
4528 @return Result of the function call
4529*/
4530WDI_Status
4531WDI_ProcessP2pNoaStartInd
4532(
4533 WDI_ControlBlockType* pWDICtx,
4534 WDI_EventInfoType* pEventData
4535);
4536
4537/**
Jeff Johnson295189b2012-06-20 16:38:30 -07004538*@brief Process Noa Attr Indication function (called when
4539 an indication of this kind is being received over the
4540 bus from HAL)
4541
4542 @param pWDICtx: pointer to the WLAN DAL context
4543 pEventData: pointer to the event information structure
4544
4545 @see
4546 @return Result of the function call
4547*/
4548WDI_Status
4549WDI_ProcessP2pNoaAttrInd
4550(
4551 WDI_ControlBlockType* pWDICtx,
4552 WDI_EventInfoType* pEventData
4553);
Jeff Johnson295189b2012-06-20 16:38:30 -07004554
4555/**
4556*@brief Process Tx Per Hit Indication function (called when
4557 an indication of this kind is being received over the
4558 bus from HAL)
4559
4560 @param pWDICtx: pointer to the WLAN DAL context
4561 pEventData: pointer to the event information structure
4562
4563 @see
4564 @return Result of the function call
4565*/
4566WDI_Status
4567WDI_ProcessTxPerHitInd
4568(
4569 WDI_ControlBlockType* pWDICtx,
4570 WDI_EventInfoType* pEventData
4571);
4572
Leo Chang9056f462013-08-01 19:21:11 -07004573#ifdef FEATURE_WLAN_LPHB
4574/**
Leo Changd9df8aa2013-09-26 13:32:26 -07004575 @brief WDI_ProcessLphbInd -
Leo Chang9056f462013-08-01 19:21:11 -07004576 This function will be invoked when FW detects low power
4577 heart beat failure
4578
4579 @param pWDICtx : wdi context
4580 pEventData : indication data
4581
4582 @see
4583 @return Result of the function call
4584*/
4585WDI_Status
Leo Changd9df8aa2013-09-26 13:32:26 -07004586WDI_ProcessLphbInd
Leo Chang9056f462013-08-01 19:21:11 -07004587(
4588 WDI_ControlBlockType* pWDICtx,
4589 WDI_EventInfoType* pEventData
4590);
4591#endif /* FEATURE_WLAN_LPHB */
4592
Yue Mab9c86f42013-08-14 15:59:08 -07004593/**
4594 @brief Process Periodic Tx Pattern Fw Indication function
4595
4596 @param pWDICtx: pointer to the WLAN DAL context
4597 pEventData: pointer to the event information structure
4598
4599 @see
4600 @return Result of the function call
4601*/
4602WDI_Status
4603WDI_ProcessPeriodicTxPtrnFwInd
4604(
4605 WDI_ControlBlockType* pWDICtx,
4606 WDI_EventInfoType* pEventData
4607);
4608
Jeff Johnson295189b2012-06-20 16:38:30 -07004609#ifdef WLAN_FEATURE_VOWIFI_11R
4610/**
4611 @brief Process Aggrgated Add TSpec Request function (called when Main FSM
4612 allows it)
4613
4614 @param pWDICtx: pointer to the WLAN DAL context
4615 pEventData: pointer to the event information structure
4616
4617 @see
4618 @return Result of the function call
4619*/
4620WDI_Status
4621WDI_ProcessAggrAddTSpecReq
4622(
4623 WDI_ControlBlockType* pWDICtx,
4624 WDI_EventInfoType* pEventData
4625);
4626
4627/**
4628 @brief Process Add TSpec Rsp function (called when a response
4629 is being received over the bus from HAL)
4630
4631 @param pWDICtx: pointer to the WLAN DAL context
4632 pEventData: pointer to the event information structure
4633
4634 @see
4635 @return Result of the function call
4636*/
4637WDI_Status
4638WDI_ProcessAggrAddTSpecRsp
4639(
4640 WDI_ControlBlockType* pWDICtx,
4641 WDI_EventInfoType* pEventData
4642);
4643
4644#endif /* WLAN_FEATURE_VOWIFI_11R */
4645
Jeff Johnson295189b2012-06-20 16:38:30 -07004646/**
4647 @brief WDI_ProcessFTMCommandReq
4648 Process FTM Command, simply route to HAL
4649
4650 @param pWDICtx: pointer to the WLAN DAL context
4651 pEventData: pointer to the event information structure
4652
4653 @see
4654 @return Result of the function call
4655*/
4656WDI_Status
4657WDI_ProcessFTMCommandReq
4658(
4659 WDI_ControlBlockType* pWDICtx,
4660 WDI_EventInfoType* pEventData
4661);
4662
4663/**
4664 @brief WDI_ProcessFTMCommandRsp
4665 Process FTM Command Response from HAL, simply route to HDD FTM
4666
4667 @param pWDICtx: pointer to the WLAN DAL context
4668 pEventData: pointer to the event information structure
4669
4670 @see
4671 @return Result of the function call
4672*/
4673WDI_Status
4674WDI_ProcessFTMCommandRsp
4675(
4676 WDI_ControlBlockType* pWDICtx,
4677 WDI_EventInfoType* pEventData
4678);
Jeff Johnson295189b2012-06-20 16:38:30 -07004679/**
4680 @brief WDI_ProcessHALDumpCmdReq
4681 Process Hal Dump Command, simply route to HAL
4682
4683 @param pWDICtx: pointer to the WLAN DAL context
4684 pEventData: pointer to the event information structure
4685
4686 @see
4687 @return Result of the function call
4688*/
4689WDI_Status
4690WDI_ProcessHALDumpCmdReq
4691(
4692 WDI_ControlBlockType* pWDICtx,
4693 WDI_EventInfoType* pEventData
4694);
4695
4696/**
4697 @brief WDI_ProcessHALDumpCmdRsp
4698 Process Hal Dump Command Response from HAL, simply route to HDD FTM
4699
4700 @param pWDICtx: pointer to the WLAN DAL context
4701 pEventData: pointer to the event information structure
4702
4703 @see
4704 @return Result of the function call
4705*/
4706WDI_Status
4707WDI_ProcessHALDumpCmdRsp
4708(
4709 WDI_ControlBlockType* pWDICtx,
4710 WDI_EventInfoType* pEventData
4711);
Ravi Joshid2ca7c42013-07-23 08:37:49 -07004712
4713/**
4714 @brief WDI_ProcessIbssPeerInactivityInd
4715 Process peer inactivity indication coming from HAL.
4716
4717 @param pWDICtx: pointer to the WLAN DAL context
4718 pEventData: pointer to the event information structure
4719
4720 @see
4721 @return Result of the function call
4722*/
4723WDI_Status
4724WDI_ProcessIbssPeerInactivityInd
4725
4726(
4727 WDI_ControlBlockType* pWDICtx,
4728 WDI_EventInfoType* pEventData
4729);
4730
4731
Jeff Johnson295189b2012-06-20 16:38:30 -07004732/*========================================================================
4733 Internal Helper Routines
4734========================================================================*/
4735
4736/**
4737 @brief WDI_CleanCB - internal helper routine used to clean the
4738 WDI Main Control Block
4739
4740 @param pWDICtx - pointer to the control block
4741
4742 @return Result of the function call
4743*/
Jeff Johnson51019dc2013-02-21 16:44:09 -08004744WDI_Status
Jeff Johnson295189b2012-06-20 16:38:30 -07004745WDI_CleanCB
4746(
4747 WDI_ControlBlockType* pWDICtx
4748);
4749
4750/**
4751 @brief Main FSM Close function for all states except BUSY
4752
4753
4754 @param pWDICtx: pointer to the WLAN DAL context
4755 pEventData: pointer to the event information structure
4756
4757 @see
4758 @return Result of the function call
4759*/
Jeff Johnson51019dc2013-02-21 16:44:09 -08004760WDI_Status
Jeff Johnson295189b2012-06-20 16:38:30 -07004761WDI_ProcessRequest
4762(
4763 WDI_ControlBlockType* pWDICtx,
4764 WDI_EventInfoType* pEventData
4765);
4766
4767/**
4768 @brief Get message helper function - it allocates memory for a
4769 message that is to be sent to HAL accross the bus and
4770 prefixes it with a send message header
4771
4772 @param pWDICtx: pointer to the WLAN DAL context
4773 wdiReqType: type of the request being sent
4774 uBufferLen: message buffer len
4775 pMsgBuffer: resulting allocated buffer
4776 puDataOffset: offset in the buffer where the caller
4777 can start copying its message data
4778 puBufferSize: the resulting buffer size (offset+buff
4779 len)
4780
4781 @see
4782 @return Result of the function call
4783*/
4784WDI_Status
4785WDI_GetMessageBuffer
4786(
4787 WDI_ControlBlockType* pWDICtx,
4788 WDI_RequestEnumType wdiReqType,
4789 wpt_uint16 usBufferLen,
4790 wpt_uint8** pMsgBuffer,
4791 wpt_uint16* pusDataOffset,
4792 wpt_uint16* pusBufferSize
4793);
4794
4795/**
4796 @brief WDI_DetectedDeviceError - called internally by DAL when
4797 it has detected a failure in the device
4798
4799 @param pWDICtx: pointer to the WLAN DAL context
4800 usErrorCode: error code detected by WDI or received
4801 from HAL
4802
4803 @see
4804 @return None
4805*/
4806void
4807WDI_DetectedDeviceError
4808(
4809 WDI_ControlBlockType* pWDICtx,
4810 wpt_uint16 usErrorCode
4811);
4812
4813/*=========================================================================
4814 QUEUE SUPPORT UTILITY FUNCTIONS
4815=========================================================================*/
4816
4817/**
4818 @brief Utility function used by the DAL Core to help queue a
4819 request that cannot be processed right away.
4820 @param
4821
4822 pWDICtx: - pointer to the WDI control block
4823 pEventData: - pointer to the evnt info that needs to be
4824 queued
4825
4826 @see
4827 @return Result of the operation
4828*/
4829WDI_Status
4830WDI_QueuePendingReq
4831(
4832 WDI_ControlBlockType* pWDICtx,
4833 WDI_EventInfoType* pEventData
4834);
4835
4836/**
4837 @brief Utility function used by the DAL Core to clear any
4838 pending requests - all req cb will be called with
4839 failure and the queue will be emptied.
4840 @param
4841
4842 pWDICtx: - pointer to the WDI control block
4843
4844 @see
4845 @return Result of the operation
4846*/
4847WDI_Status
4848WDI_ClearPendingRequests
4849(
4850 WDI_ControlBlockType* pWDICtx
4851);
4852
4853/**
4854 @brief This callback is invoked by the wpt when a timer that
4855 we started on send message has expire - this should
4856 never happen - it means device is stuck and cannot
4857 reply - trigger catastrophic failure
4858 @param
4859
4860 pUserData: the callback data of the user (ptr to WDI CB)
4861
4862 @see
4863 @return None
4864*/
4865void
4866WDI_ResponseTimerCB
4867(
4868 void *pUserData
4869);
4870
4871/*==========================================================================
4872 CONTRL TRANSPORT INTERACTION
4873
4874 Callback function registered with the control transport - for receiving
4875 notifications and packets
4876==========================================================================*/
4877/**
4878 @brief This callback is invoked by the control transport
4879 when it wishes to send up a notification like the ones
4880 mentioned above.
4881
4882 @param
4883
4884 wctsHandle: handle to the control transport service
4885 wctsEvent: the event being notified
4886 wctsNotifyCBData: the callback data of the user
4887
4888 @see WCTS_OpenTransport
4889
4890 @return None
4891*/
4892void
4893WDI_NotifyMsgCTSCB
4894(
4895 WCTS_HandleType wctsHandle,
4896 WCTS_NotifyEventType wctsEvent,
4897 void* wctsNotifyCBData
4898);
4899
4900/**
4901 @brief This callback is invoked by the control transport
4902 when it wishes to send up a packet received over the
4903 bus.
4904
4905 @param
4906
4907 wctsHandle: handle to the control transport service
4908 pMsg: the packet
4909 uLen: the packet length
4910 wctsRxMsgCBData: the callback data of the user
4911
4912 @see WCTS_OpenTransport
4913
4914 @return None
4915*/
4916void
4917WDI_RXMsgCTSCB
4918(
4919 WCTS_HandleType wctsHandle,
4920 void* pMsg,
4921 wpt_uint32 uLen,
4922 void* wctsRxMsgCBData
4923);
4924
4925/**
4926 @brief Process response helper function
4927
4928
4929 @param pWDICtx: pointer to the WLAN DAL context
4930 pEventData: pointer to the event information structure
4931
4932 @see
4933 @return Result of the function call
4934*/
4935WDI_Status
4936WDI_ProcessResponse
4937(
4938 WDI_ControlBlockType* pWDICtx,
4939 WDI_EventInfoType* pEventData
4940);
4941
4942/**
4943 @brief Send message helper function - sends a message over the
4944 bus using the control tranport and saves some info in
4945 the CB
4946
4947 @param pWDICtx: pointer to the WLAN DAL context
4948 pSendBuffer: buffer to be sent
4949
4950 uSendSize size of the buffer to be sent
4951 pRspCb: response callback - save in the WDI
4952 CB
4953 pUserData: user data associated with the
4954 callback
4955 wdiExpectedResponse: the code of the response that is
4956 expected to be rx-ed for this request
4957
4958 @see
4959 @return Result of the function call
4960*/
4961WDI_Status
4962WDI_SendMsg
4963(
4964 WDI_ControlBlockType* pWDICtx,
4965 wpt_uint8* pSendBuffer,
4966 wpt_uint32 uSendSize,
4967 void* pRspCb,
4968 void* pUserData,
4969 WDI_ResponseEnumType wdiExpectedResponse
4970);
4971
4972
4973/**
4974 @brief Send indication helper function - sends a message over
4975 the bus using the control transport and saves some info
4976 in the CB
4977
4978 @param pWDICtx: pointer to the WLAN DAL context
4979 pSendBuffer: buffer to be sent
4980 usSendSize: size of the buffer to be sent
4981
4982 @see
4983 @return Result of the function call
4984*/
4985WDI_Status
4986WDI_SendIndication
4987(
4988 WDI_ControlBlockType* pWDICtx,
4989 wpt_uint8* pSendBuffer,
4990 wpt_uint32 usSendSize
4991);
4992
4993/**
4994 @brief Utility function used by the DAL Core to help dequeue
4995 and schedule for execution a pending request
4996 @param
4997
4998 pWDICtx: - pointer to the WDI control block
4999 pEventData: - pointer to the evnt info that needs to be
5000 queued
5001
5002 @see
5003 @return Result of the operation
5004*/
5005WDI_Status
5006WDI_DequeuePendingReq
5007(
5008 WDI_ControlBlockType* pWDICtx
5009);
5010
5011/**
5012 @brief Utility function used by the DAL Core to help queue
5013 an association request that cannot be processed right
5014 away.- The assoc requests will be queued by BSSID
5015 @param
5016
5017 pWDICtx: - pointer to the WDI control block
5018 pEventData: pointer to the evnt info that needs to be queued
5019 macBSSID: bssid
5020
5021 @see
5022 @return Result of the operation
5023*/
5024WDI_Status
5025WDI_QueueNewAssocRequest
5026(
5027 WDI_ControlBlockType* pWDICtx,
5028 WDI_EventInfoType* pEventData,
5029 wpt_macAddr macBSSID
5030);
5031
5032/**
5033 @brief Utility function used by the DAL Core to help queue
5034 an association request that cannot be processed right
5035 away.- The assoc requests will be queued by BSSID
5036 @param
5037
5038 pWDICtx: - pointer to the WDI control block
5039 pSession: - session in which to queue
5040 pEventData: pointer to the event info that needs to be
5041 queued
5042
5043 @see
5044 @return Result of the operation
5045*/
5046WDI_Status
5047WDI_QueueAssocRequest
5048(
5049 WDI_ControlBlockType* pWDICtx,
5050 WDI_BSSSessionType* pSession,
5051 WDI_EventInfoType* pEventData
5052);
5053
5054/**
5055 @brief Utility function used by the DAL Core to help dequeue
5056 an association request that was pending
5057 The request will be queued up in front of the main
5058 pending queue for immediate processing
5059 @param
5060
5061 pWDICtx: - pointer to the WDI control block
5062
5063
5064 @see
5065 @return Result of the operation
5066*/
5067WDI_Status
5068WDI_DequeueAssocRequest
5069(
5070 WDI_ControlBlockType* pWDICtx
5071);
5072
5073/**
5074 @brief Helper routine used to init the BSS Sessions in the WDI control block
5075
5076
5077 @param pWDICtx: pointer to the WLAN DAL context
5078
5079 @see
5080*/
5081void
5082WDI_ResetAssocSessions
5083(
5084 WDI_ControlBlockType* pWDICtx
5085);
5086
5087/**
5088 @brief Helper routine used to find an empty session in the WDI
5089 CB
5090
5091
5092 @param pWDICtx: pointer to the WLAN DAL context
5093 pSession: pointer to the session (if found)
5094
5095 @see
5096 @return Index of the session in the array
5097*/
5098wpt_uint8
5099WDI_FindEmptySession
5100(
5101 WDI_ControlBlockType* pWDICtx,
5102 WDI_BSSSessionType** ppSession
5103);
5104
5105/**
Hoonki Lee9af07cf2013-04-24 01:21:58 -07005106 @brief Helper routine used to get the total count of active
Jeff Johnson295189b2012-06-20 16:38:30 -07005107 sessions
Hoonki Lee9af07cf2013-04-24 01:21:58 -07005108
5109
5110 @param pWDICtx: pointer to the WLAN DAL context
5111 macBSSID: pointer to BSSID. If NULL, get all the session.
5112 If not NULL, count ActiveSession by excluding (TRUE) or including (FALSE) skipBSSID.
5113 skipBSSID: if TRUE, get all the sessions except matching to macBSSID. If FALSE, get all session.
5114 This argument is ignored if macBSSID is NULL.
Jeff Johnson295189b2012-06-20 16:38:30 -07005115 @see
5116 @return Number of sessions in use
5117*/
5118wpt_uint8
5119WDI_GetActiveSessionsCount
Hoonki Lee9af07cf2013-04-24 01:21:58 -07005120(
5121 WDI_ControlBlockType* pWDICtx,
5122 wpt_macAddr macBSSID,
5123 wpt_boolean skipBSSID
Jeff Johnson295189b2012-06-20 16:38:30 -07005124);
5125
5126/**
5127 @brief Helper routine used to delete session in the WDI
5128 CB
5129
5130
5131 @param pWDICtx: pointer to the WLAN DAL context
5132 pSession: pointer to the session (if found)
5133
5134 @see
5135 @return Index of the session in the array
5136*/
5137void
5138WDI_DeleteSession
5139(
5140 WDI_ControlBlockType* pWDICtx,
5141 WDI_BSSSessionType* ppSession
5142);
5143
5144/**
5145 @brief Helper routine used to find a session based on the BSSID
5146
5147
5148 @param pWDICtx: pointer to the WLAN DAL context
5149 macBSSID: BSSID of the session
5150 ppSession: out pointer to the session (if found)
5151
5152 @see
5153 @return Index of the session in the array
5154*/
5155wpt_uint8
5156WDI_FindAssocSession
5157(
5158 WDI_ControlBlockType* pWDICtx,
5159 wpt_macAddr macBSSID,
5160 WDI_BSSSessionType** ppSession
5161);
5162
5163
5164/**
5165 @brief Helper routine used to find a session based on the BSSID
5166
5167
5168 @param pWDICtx: pointer to the WLAN DAL context
5169 usBssIdx: BSS Index of the session
5170 ppSession: out pointer to the session (if found)
5171
5172 @see
5173 @return Index of the session in the array
5174*/
5175wpt_uint8
5176WDI_FindAssocSessionByBSSIdx
5177(
5178 WDI_ControlBlockType* pWDICtx,
5179 wpt_uint16 usBssIdx,
5180 WDI_BSSSessionType** ppSession
5181);
5182
5183/**
5184 @brief Helper routine used to find a session based on the BSSID
5185
5186
5187 @param pWDICtx: pointer to the WLAN DAL context
5188 usBssIdx: BSS Index of the session
5189 ppSession: out pointer to the session (if found)
5190
5191 @see
5192 @return Index of the session in the array
5193*/
5194wpt_uint8
5195WDI_FindAssocSessionByIdx
5196(
5197 WDI_ControlBlockType* pWDICtx,
5198 wpt_uint16 usBssIdx,
5199 WDI_BSSSessionType** ppSession
5200);
5201
5202/**
5203 @brief Helper routine used to find a session based on the BSSID
5204 @param pContext: pointer to the WLAN DAL context
5205 @param pDPContext: pointer to the Datapath context
5206
5207 @see
5208 @return
5209*/
Jeff Johnson51019dc2013-02-21 16:44:09 -08005210void
Jeff Johnson295189b2012-06-20 16:38:30 -07005211WDI_DS_AssignDatapathContext
5212(
5213 void *pContext,
5214 void *pDPContext
5215);
5216
5217/**
5218 @brief Helper routine used to find a session based on the BSSID
5219
5220
5221 @param pContext: pointer to the WLAN DAL context
5222
5223 @see
5224 @return pointer to Datapath context
5225*/
Jeff Johnson51019dc2013-02-21 16:44:09 -08005226void *
Jeff Johnson295189b2012-06-20 16:38:30 -07005227WDI_DS_GetDatapathContext
5228(
5229 void *pContext
5230);
5231
5232/**
5233 @brief Helper routine used to find a session based on the BSSID
5234
5235
5236 @param pContext: pointer to the WLAN DAL context
5237 @param pDTDriverContext: pointer to the Transport Driver context
5238
5239 @see
5240 @return void
5241*/
Jeff Johnson51019dc2013-02-21 16:44:09 -08005242void
Jeff Johnson295189b2012-06-20 16:38:30 -07005243WDT_AssignTransportDriverContext
5244(
5245 void *pContext,
5246 void *pDTDriverContext
5247);
5248
5249/**
5250 @brief Helper routine used to find a session based on the BSSID
5251
5252
5253 @param pWDICtx: pointer to the WLAN DAL context
5254
5255 @see
5256 @return pointer to datapath context
5257*/
Jeff Johnson51019dc2013-02-21 16:44:09 -08005258void *
Jeff Johnson295189b2012-06-20 16:38:30 -07005259WDT_GetTransportDriverContext
5260(
5261 void *pContext
5262);
5263
5264#ifdef FEATURE_WLAN_SCAN_PNO
5265/**
5266 @brief Process Set Preferred Network List Request function
5267
5268 @param pWDICtx: pointer to the WLAN DAL context
5269 pEventData: pointer to the event information structure
5270
5271 @see
5272 @return Result of the function call
5273*/
5274WDI_Status
5275WDI_ProcessSetPreferredNetworkReq
5276(
5277 WDI_ControlBlockType* pWDICtx,
5278 WDI_EventInfoType* pEventData
5279);
5280
5281/**
5282 @brief Process Set RSSI Filter Request function
5283
5284 @param pWDICtx: pointer to the WLAN DAL context
5285 pEventData: pointer to the event information structure
5286
5287 @see
5288 @return Result of the function call
5289*/
5290WDI_Status
5291WDI_ProcessSetRssiFilterReq
5292(
5293 WDI_ControlBlockType* pWDICtx,
5294 WDI_EventInfoType* pEventData
5295);
5296
5297/**
5298 @brief Process Update Scan Params function
5299
5300 @param pWDICtx: pointer to the WLAN DAL context
5301 pEventData: pointer to the event information structure
5302
5303 @see
5304 @return Result of the function call
5305*/
5306WDI_Status
5307WDI_ProcessUpdateScanParamsReq
5308(
5309 WDI_ControlBlockType* pWDICtx,
5310 WDI_EventInfoType* pEventData
5311);
5312
5313/**
5314 @brief Process Preferred Network Found Indication function
5315
5316 @param pWDICtx: pointer to the WLAN DAL context
5317 pEventData: pointer to the event information structure
5318
5319 @see
5320 @return Result of the function call
5321*/
5322WDI_Status
5323WDI_ProcessPrefNetworkFoundInd
5324(
5325 WDI_ControlBlockType* pWDICtx,
5326 WDI_EventInfoType* pEventData
5327);
5328
5329/**
5330 @brief Process PNO Rsp function (called when a
5331 response is being received over the bus from HAL)
5332
5333 @param pWDICtx: pointer to the WLAN DAL context
5334 pEventData: pointer to the event information structure
5335
5336 @see
5337 @return Result of the function call
5338*/
5339WDI_Status
5340WDI_ProcessSetPreferredNetworkRsp
5341(
5342 WDI_ControlBlockType* pWDICtx,
5343 WDI_EventInfoType* pEventData
5344);
5345
5346/**
5347 @brief Process RSSI Filter Rsp function (called when a
5348 response is being received over the bus from HAL)
5349
5350 @param pWDICtx: pointer to the WLAN DAL context
5351 pEventData: pointer to the event information structure
5352
5353 @see
5354 @return Result of the function call
5355*/
5356WDI_Status
5357WDI_ProcessSetRssiFilterRsp
5358(
5359 WDI_ControlBlockType* pWDICtx,
5360 WDI_EventInfoType* pEventData
5361);
5362
5363/**
5364 @brief Process Update Scan Params Rsp function (called when a
5365 response is being received over the bus from HAL)
5366
5367 @param pWDICtx: pointer to the WLAN DAL context
5368 pEventData: pointer to the event information structure
5369
5370 @see
5371 @return Result of the function call
5372*/
5373WDI_Status
5374WDI_ProcessUpdateScanParamsRsp
5375(
5376 WDI_ControlBlockType* pWDICtx,
5377 WDI_EventInfoType* pEventData
5378);
5379#endif // FEATURE_WLAN_SCAN_PNO
5380
Gopichand Nakkala5e5668f2013-05-03 13:13:06 -07005381
5382#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
5383/**
5384 @brief Process Start Roam Candidate Lookup Request function
5385
5386 @param pWDICtx: pointer to the WLAN DAL context
5387 pEventData: pointer to the event information structure
5388
5389 @see
5390 @return Result of the function call
5391*/
5392WDI_Status
Varun Reddy Yeturu920df212013-05-22 08:07:23 -07005393WDI_ProcessRoamScanOffloadReq
Gopichand Nakkala5e5668f2013-05-03 13:13:06 -07005394(
5395 WDI_ControlBlockType* pWDICtx,
5396 WDI_EventInfoType* pEventData
5397);
5398/**
5399 @brief Process Start Roam Candidate Lookup Response function (called when a
5400 response is being received over the bus from HAL)
5401
5402 @param pWDICtx: pointer to the WLAN DAL context
5403 pEventData: pointer to the event information structure
5404
5405 @see
5406 @return Result of the function call
5407*/
5408WDI_Status
Varun Reddy Yeturu920df212013-05-22 08:07:23 -07005409WDI_ProcessRoamScanOffloadRsp
Gopichand Nakkala5e5668f2013-05-03 13:13:06 -07005410(
5411 WDI_ControlBlockType* pWDICtx,
5412 WDI_EventInfoType* pEventData
5413);
5414#endif
5415
5416
Jeff Johnson295189b2012-06-20 16:38:30 -07005417#ifdef WLAN_FEATURE_PACKET_FILTERING
5418/**
5419 @brief Process 8023 Multicast List Request function
5420
5421 @param pWDICtx: pointer to the WLAN DAL context
5422 pEventData: pointer to the event information structure
5423
5424 @see
5425 @return Result of the function call
5426*/
5427WDI_Status
5428WDI_Process8023MulticastListReq
5429(
5430 WDI_ControlBlockType* pWDICtx,
5431 WDI_EventInfoType* pEventData
5432);
5433
5434/**
5435 @brief Process Receive Filter Set Filter Request function
5436
5437 @param pWDICtx: pointer to the WLAN DAL context
5438 pEventData: pointer to the event information structure
5439
5440 @see
5441 @return Result of the function call
5442*/
5443WDI_Status
5444WDI_ProcessReceiveFilterSetFilterReq
5445(
5446 WDI_ControlBlockType* pWDICtx,
5447 WDI_EventInfoType* pEventData
5448);
5449
5450/**
5451 @brief Process D0 PC Filter Match Count Request function
5452
5453 @param pWDICtx: pointer to the WLAN DAL context
5454 pEventData: pointer to the event information structure
5455
5456 @see
5457 @return Result of the function call
5458*/
5459WDI_Status
5460WDI_ProcessFilterMatchCountReq
5461(
5462 WDI_ControlBlockType* pWDICtx,
5463 WDI_EventInfoType* pEventData
5464);
5465
5466/**
5467 @brief Process Receive Filter Clear Filter Request function
5468
5469 @param pWDICtx: pointer to the WLAN DAL context
5470 pEventData: pointer to the event information structure
5471
5472 @see
5473 @return Result of the function call
5474*/
5475WDI_Status
5476WDI_ProcessReceiveFilterClearFilterReq
5477(
5478 WDI_ControlBlockType* pWDICtx,
5479 WDI_EventInfoType* pEventData
5480);
5481
5482/**
5483 @brief Process 8023 Multicast List Response function
5484
5485 @param pWDICtx: pointer to the WLAN DAL context
5486 pEventData: pointer to the event information structure
5487
5488 @see
5489 @return Result of the function call
5490*/
5491WDI_Status
5492WDI_Process8023MulticastListRsp
5493(
5494 WDI_ControlBlockType* pWDICtx,
5495 WDI_EventInfoType* pEventData
5496);
5497
5498/**
5499 @brief Process Receive Filter Set Filter Response function
5500
5501 @param pWDICtx: pointer to the WLAN DAL context
5502 pEventData: pointer to the event information structure
5503
5504 @see
5505 @return Result of the function call
5506*/
5507WDI_Status
5508WDI_ProcessReceiveFilterSetFilterRsp
5509(
5510 WDI_ControlBlockType* pWDICtx,
5511 WDI_EventInfoType* pEventData
5512);
5513
5514/**
5515 @brief Process D0 PC Filter Match Count Response function
5516
5517 @param pWDICtx: pointer to the WLAN DAL context
5518 pEventData: pointer to the event information structure
5519
5520 @see
5521 @return Result of the function call
5522*/
5523WDI_Status
5524WDI_ProcessFilterMatchCountRsp
5525(
5526 WDI_ControlBlockType* pWDICtx,
5527 WDI_EventInfoType* pEventData
5528);
5529
5530/**
5531 @brief Process Receive Filter Clear Filter Response function
5532
5533 @param pWDICtx: pointer to the WLAN DAL context
5534 pEventData: pointer to the event information structure
5535
5536 @see
5537 @return Result of the function call
5538*/
5539WDI_Status
5540WDI_ProcessReceiveFilterClearFilterRsp
5541(
5542 WDI_ControlBlockType* pWDICtx,
5543 WDI_EventInfoType* pEventData
5544);
5545#endif // WLAN_FEATURE_PACKET_FILTERING
5546
5547#ifdef WLAN_FEATURE_GTK_OFFLOAD
5548/**
5549 @brief Process set GTK Offload Request function
5550
5551 @param pWDICtx: pointer to the WLAN DAL context
5552 pEventData: pointer to the event information structure
5553
5554 @see
5555 @return Result of the function call
5556*/
5557WDI_Status
5558WDI_ProcessGTKOffloadReq
5559(
5560 WDI_ControlBlockType* pWDICtx,
5561 WDI_EventInfoType* pEventData
5562);
5563
5564/**
5565 @brief Process GTK Offload Get Information Request function
5566
5567 @param pWDICtx: pointer to the WLAN DAL context
5568 pEventData: pointer to the event information structure
5569
5570 @see
5571 @return Result of the function call
5572*/
5573WDI_Status
5574WDI_ProcessGTKOffloadGetInfoReq
5575(
5576 WDI_ControlBlockType* pWDICtx,
5577 WDI_EventInfoType* pEventData
5578);
5579
5580/**
5581 @brief Process host offload Rsp function (called when a
5582 response is being received over the bus from HAL)
5583
5584 @param pWDICtx: pointer to the WLAN DAL context
5585 pEventData: pointer to the event information structure
5586
5587 @see
5588 @return Result of the function call
5589*/
5590WDI_Status
5591WDI_ProcessGtkOffloadRsp
5592(
5593 WDI_ControlBlockType* pWDICtx,
5594 WDI_EventInfoType* pEventData
5595);
5596
5597/**
5598 @brief Process GTK Offload Get Information Response function
5599
5600 @param pWDICtx: pointer to the WLAN DAL context
5601 pEventData: pointer to the event information structure
5602
5603 @see
5604 @return Result of the function call
5605*/
5606WDI_Status
5607WDI_ProcessGTKOffloadGetInfoRsp
5608(
5609 WDI_ControlBlockType* pWDICtx,
5610 WDI_EventInfoType* pEventData
5611);
5612#endif // WLAN_FEATURE_GTK_OFFLOAD
5613
5614#ifdef WLAN_WAKEUP_EVENTS
5615WDI_Status
5616WDI_ProcessWakeReasonInd
5617(
5618 WDI_ControlBlockType* pWDICtx,
5619 WDI_EventInfoType* pEventData
5620);
5621#endif // WLAN_WAKEUP_EVENTS
5622
5623/**
5624 @brief Process Host-FW Capability Exchange Request function
5625
5626 @param pWDICtx: pointer to the WLAN DAL context
5627 pEventData: pointer to the event information structure
5628
5629 @see
5630 @return Result of the function call
5631*/
5632WDI_Status
5633WDI_ProcessFeatureCapsExchangeReq
5634(
5635 WDI_ControlBlockType* pWDICtx,
5636 WDI_EventInfoType* pEventData
5637);
5638
5639/**
5640 @brief Process Host-FW Capability Exchange Response function
5641
5642 @param pWDICtx: pointer to the WLAN DAL context
5643 pEventData: pointer to the event information structure
5644
5645 @see
5646 @return Result of the function call
5647*/
5648WDI_Status
5649WDI_ProcessFeatureCapsExchangeRsp
5650(
5651 WDI_ControlBlockType* pWDICtx,
5652 WDI_EventInfoType* pEventData
5653);
5654
Mohit Khanna4a70d262012-09-11 16:30:12 -07005655#ifdef WLAN_FEATURE_11AC
5656WDI_Status
5657WDI_ProcessUpdateVHTOpModeReq
5658(
5659 WDI_ControlBlockType* pWDICtx,
5660 WDI_EventInfoType* pEventData
5661);
5662
5663WDI_Status
5664WDI_ProcessUpdateVHTOpModeRsp
5665(
5666 WDI_ControlBlockType* pWDICtx,
5667 WDI_EventInfoType* pEventData
5668);
5669#endif
5670
Gopichand Nakkala5e5668f2013-05-03 13:13:06 -07005671#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
5672/**
5673 * @brief WDI_wdiEdTypeEncToEdTypeEnc -
5674 * The firmware expects the Encryption type to be in EdType.
5675 * This function converts the WdiEdType encryption to EdType.
5676 * @param tEdType : EdType to which the encryption needs to be converted.
5677 * @param WDI_EdType : wdiEdType passed from the upper layer.
5678 * @see
5679 * @return none
5680 * */
5681void
5682WDI_wdiEdTypeEncToEdTypeEnc
5683(
5684 tEdType *EdType,
5685 WDI_EdType wdiEdType
5686);
5687#endif
5688
Leo Chang9056f462013-08-01 19:21:11 -07005689#ifdef FEATURE_WLAN_LPHB
5690/**
5691 @brief WDI_ProcessLphbCfgRsp -
5692 LPHB configuration response from FW
5693
5694 @param pWDICtx : wdi context
5695 pEventData : indication data
5696
5697 @see
5698 @return Result of the function call
5699*/
5700WDI_Status WDI_ProcessLphbCfgRsp
5701(
5702 WDI_ControlBlockType* pWDICtx,
5703 WDI_EventInfoType* pEventData
5704);
5705#endif /* FEATURE_WLAN_LPHB */
5706
Chittajit Mitraf5413a42013-10-18 14:20:08 -07005707/**
5708 @brief Process Rate Update Indication and post it to HAL
5709
5710 @param pWDICtx: pointer to the WLAN DAL context
5711 pEventData: pointer to the event information structure
5712
5713 @see
5714 @return Result of the function call
5715*/
5716WDI_Status
5717WDI_ProcessRateUpdateInd
5718(
5719 WDI_ControlBlockType* pWDICtx,
5720 WDI_EventInfoType* pEventData
5721);
5722
Rajeev79dbe4c2013-10-05 11:03:42 +05305723#ifdef FEATURE_WLAN_BATCH_SCAN
5724/**
5725 @brief WDI_ProcessSetBatchScanRsp -
5726 Process set batch scan response from FW
5727
5728 @param pWDICtx : wdi context
5729 pEventData : indication data
5730
5731 @see
5732 @return Result of the function call
5733*/
5734WDI_Status WDI_ProcessSetBatchScanRsp
5735(
5736 WDI_ControlBlockType* pWDICtx,
5737 WDI_EventInfoType* pEventData
5738);
5739
c_hpothu92367912014-05-01 15:18:17 +05305740WDI_Status
5741WDI_ProcessGetBcnMissRateReq
5742(
5743 WDI_ControlBlockType* pWDICtx,
5744 WDI_EventInfoType* pEventData
5745);
5746
5747WDI_Status
5748WDI_ProcessGetBcnMissRateRsp
5749(
5750 WDI_ControlBlockType* pWDICtx,
5751 WDI_EventInfoType* pEventData
5752);
5753
Rajeev79dbe4c2013-10-05 11:03:42 +05305754/**
5755 @brief Process batch scan response from FW
5756
5757 @param pWDICtx: pointer to the WLAN DAL context
5758 pEventData: pointer to the event information structure
5759
5760 @see
5761 @return Result of the function call
5762*/
5763WDI_Status
5764WDI_ProcessBatchScanResultInd
5765(
5766 WDI_ControlBlockType* pWDICtx,
5767 WDI_EventInfoType* pEventData
5768);
5769
5770#endif /* FEATURE_WLAN_BATCH_SCAN */
5771
Leo Chang0b0e45a2013-12-15 15:18:55 -08005772#ifdef FEATURE_WLAN_CH_AVOID
5773/**
5774 @brief v -
5775
5776
5777 @param pWDICtx : wdi context
5778 pEventData : indication data
5779 @see
5780 @return Result of the function call
5781*/
5782WDI_Status
5783WDI_ProcessChAvoidInd
5784(
5785 WDI_ControlBlockType* pWDICtx,
5786 WDI_EventInfoType* pEventData
5787);
5788#endif /* FEATURE_WLAN_CH_AVOID */
5789
c_hpothu86041002014-04-14 19:06:51 +05305790/**
5791 @brief v -
5792
5793
5794 @param pWDICtx : wdi context
5795 pEventData : indication data
5796 @see
5797 @return Result of the function call
5798*/
5799WDI_Status
5800WDI_printRegInfo
5801(
5802 WDI_ControlBlockType* pWDICtx,
5803 WDI_EventInfoType* pEventData
5804);
Dino Mycle41bdc942014-06-10 11:30:24 +05305805
5806#ifdef WLAN_FEATURE_EXTSCAN
5807WDI_Status
5808WDI_ProcessEXTScanStartReq
5809(
5810 WDI_ControlBlockType* pWDICtx,
5811 WDI_EventInfoType* pEventData
5812);
5813WDI_Status
5814WDI_ProcessEXTScanStopReq
5815(
5816 WDI_ControlBlockType* pWDICtx,
5817 WDI_EventInfoType* pEventData
5818);
5819WDI_Status
5820WDI_ProcessEXTScanStartRsp
5821(
5822 WDI_ControlBlockType* pWDICtx,
5823 WDI_EventInfoType* pEventData
5824);
5825WDI_Status
5826WDI_ProcessEXTScanStopRsp
5827(
5828 WDI_ControlBlockType* pWDICtx,
5829 WDI_EventInfoType* pEventData
5830);
5831
5832WDI_Status
5833WDI_ProcessEXTScanGetCachedResultsReq
5834(
5835 WDI_ControlBlockType* pWDICtx,
5836 WDI_EventInfoType* pEventData
5837);
5838WDI_Status
5839WDI_ProcessEXTScanGetCachedResultsRsp
5840(
5841 WDI_ControlBlockType* pWDICtx,
5842 WDI_EventInfoType* pEventData
5843);
5844
5845WDI_Status
5846WDI_ProcessEXTScanProgressInd
5847(
5848 WDI_ControlBlockType* pWDICtx,
5849 WDI_EventInfoType* pEventData
5850);
5851
5852WDI_Status
5853WDI_ProcessEXTScanGetCapabilitiesReq
5854(
5855 WDI_ControlBlockType* pWDICtx,
5856 WDI_EventInfoType* pEventData
5857);
5858
5859WDI_Status
5860WDI_ProcessEXTScanGetCapabilitiesRsp
5861(
5862 WDI_ControlBlockType* pWDICtx,
5863 WDI_EventInfoType* pEventData
5864);
5865
5866WDI_Status
5867WDI_ProcessEXTScanSetBSSIDHotlistReq
5868(
5869 WDI_ControlBlockType* pWDICtx,
5870 WDI_EventInfoType* pEventData
5871);
5872
5873WDI_Status
5874WDI_ProcessEXTScanSetHotlistBSSIDRsp
5875(
5876 WDI_ControlBlockType* pWDICtx,
5877 WDI_EventInfoType* pEventData
5878);
5879
5880WDI_Status
5881WDI_ProcessEXTScanResetBSSIDHotlistReq
5882(
5883 WDI_ControlBlockType* pWDICtx,
5884 WDI_EventInfoType* pEventData
5885);
5886
5887WDI_Status
5888WDI_ProcessEXTScanResetHotlistBSSIDRsp
5889(
5890 WDI_ControlBlockType* pWDICtx,
5891 WDI_EventInfoType* pEventData
5892);
5893
5894WDI_Status
5895WDI_ProcessEXTScanSetSignifRSSIChangeReq
5896(
5897 WDI_ControlBlockType* pWDICtx,
5898 WDI_EventInfoType* pEventData
5899);
5900
5901WDI_Status
5902WDI_ProcessEXTScanSetSignfRSSIChangeRsp
5903(
5904 WDI_ControlBlockType* pWDICtx,
5905 WDI_EventInfoType* pEventData
5906);
5907
5908WDI_Status
5909WDI_ProcessEXTScanResetSignfRSSIChangeReq
5910(
5911 WDI_ControlBlockType* pWDICtx,
5912 WDI_EventInfoType* pEventData
5913);
5914
5915WDI_Status
5916WDI_ProcessEXTScanResetSignfRSSIChangeRsp
5917(
5918 WDI_ControlBlockType* pWDICtx,
5919 WDI_EventInfoType* pEventData
5920);
5921
5922WDI_Status
5923WDI_ProcessEXTScanScanAvailableInd
5924(
5925 WDI_ControlBlockType* pWDICtx,
5926 WDI_EventInfoType* pEventData
5927);
5928
5929WDI_Status
5930WDI_ProcessEXTScanResultInd
5931(
5932 WDI_ControlBlockType* pWDICtx,
5933 WDI_EventInfoType* pEventData
5934);
5935
5936WDI_Status
5937WDI_ProcessEXTScanBssidHotListResultInd
5938(
5939 WDI_ControlBlockType* pWDICtx,
5940 WDI_EventInfoType* pEventData
5941);
5942
5943WDI_Status
5944WDI_ProcessEXTScanSignfRssiResultInd
5945(
5946 WDI_ControlBlockType* pWDICtx,
5947 WDI_EventInfoType* pEventData
5948);
5949
5950#endif /* WLAN_FEATURE_EXTSCAN */
5951
Sunil Duttbd736ed2014-05-26 21:19:41 +05305952#ifdef WLAN_FEATURE_LINK_LAYER_STATS
5953WDI_Status
5954WDI_ProcessLLStatsSetRsp
5955(
5956 WDI_ControlBlockType* pWDICtx,
5957 WDI_EventInfoType* pEventData
5958);
5959
5960WDI_Status
5961WDI_ProcessLLStatsSetReq
5962(
5963 WDI_ControlBlockType* pWDICtx,
5964 WDI_EventInfoType* pEventData
5965);
5966
5967WDI_Status
5968WDI_ProcessLLStatsGetRsp
5969(
5970 WDI_ControlBlockType* pWDICtx,
5971 WDI_EventInfoType* pEventData
5972);
5973
5974WDI_Status
5975WDI_ProcessLLStatsGetReq
5976(
5977 WDI_ControlBlockType* pWDICtx,
5978 WDI_EventInfoType* pEventData
5979);
5980
5981WDI_Status
5982WDI_ProcessLLStatsClearRsp
5983(
5984 WDI_ControlBlockType* pWDICtx,
5985 WDI_EventInfoType* pEventData
5986);
5987
5988WDI_Status
5989WDI_ProcessLLStatsClearReq
5990(
5991 WDI_ControlBlockType* pWDICtx,
5992 WDI_EventInfoType* pEventData
5993);
5994
5995WDI_Status
5996WDI_ProcessLinkLayerStatsResultsInd
5997(
5998 WDI_ControlBlockType* pWDICtx,
5999 WDI_EventInfoType* pEventData
6000);
6001
6002#endif /* WLAN_FEATURE_LINK_LAYER_STATS */
c_hpothu86041002014-04-14 19:06:51 +05306003
Jeff Johnson295189b2012-06-20 16:38:30 -07006004#endif /*WLAN_QCT_WDI_I_H*/
6005