blob: 5159d005c06e6146efaf109f25df2011a7ee2a96 [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
Jeff Johnson295189b2012-06-20 16:38:30 -0700444 WDI_MAX_REQ,
445
446 /*Send a suspend Indication down to HAL*/
447 WDI_HOST_SUSPEND_IND = WDI_MAX_REQ ,
448
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -0800449 /* Send a traffic stats indication to HAL */
450 WDI_TRAFFIC_STATS_IND,
451
Sundaresan Ramachandran76e48e82013-07-15 13:07:17 +0530452 /* DHCP Start Indication */
453 WDI_DHCP_START_IND,
454
455 /* DHCP Stop Indication */
456 WDI_DHCP_STOP_IND,
457
Chet Lanctot186b5732013-03-18 10:26:30 -0700458 /* Drop/Receive unencrypted frames indication to HAL */
459 WDI_EXCLUDE_UNENCRYPTED_IND,
460
Yue Mab9c86f42013-08-14 15:59:08 -0700461 /* Send an add periodic Tx pattern indication to HAL */
462 WDI_ADD_PERIODIC_TX_PATTERN_IND,
463
464 /* Send a delete periodic Tx pattern indicationto HAL */
465 WDI_DEL_PERIODIC_TX_PATTERN_IND,
466
Chittajit Mitraf5413a42013-10-18 14:20:08 -0700467 /* Send Rate Update Indication */
468 WDI_RATE_UPDATE_IND,
469
Rajeev79dbe4c2013-10-05 11:03:42 +0530470 /*Send stop batch scan indication to FW*/
471 WDI_STOP_BATCH_SCAN_IND,
Rajeev Kumar58c7d512013-12-26 14:42:24 -0800472
Rajeev79dbe4c2013-10-05 11:03:42 +0530473 /*Send stop batch scan indication to FW*/
474 WDI_TRIGGER_BATCH_SCAN_RESULT_IND,
Sandeep Puligilla8b8b74b2014-02-10 16:39:05 +0530475 WDI_START_HT40_OBSS_SCAN_IND,
476 WDI_STOP_HT40_OBSS_SCAN_IND,
Rajeev Kumar58c7d512013-12-26 14:42:24 -0800477
478 /*Keep adding the indications to the max request
479 such that we keep them sepparate */
Rajeev79dbe4c2013-10-05 11:03:42 +0530480
Jeff Johnson295189b2012-06-20 16:38:30 -0700481 WDI_MAX_UMAC_IND
Sandeep Puligilla8b8b74b2014-02-10 16:39:05 +0530482}WDI_RequestEnumType;
Jeff Johnson295189b2012-06-20 16:38:30 -0700483
484/*---------------------------------------------------------------------------
485 WLAN DAL Supported Response Types
486 ---------------------------------------------------------------------------*/
487typedef enum
488{
489 /*WLAN DAL START Response*/
490 WDI_START_RESP = 0,
491
492 /*WLAN DAL STOP Response*/
493 WDI_STOP_RESP = 1,
494
495 /*WLAN DAL STOP Response*/
496 WDI_CLOSE_RESP = 2,
497
498 /*SCAN*/
499 /*WLAN DAL Init Scan Response*/
500 WDI_INIT_SCAN_RESP = 3,
501
502 /*WLAN DAL Start Scan Response*/
503 WDI_START_SCAN_RESP = 4,
504
505 /*WLAN DAL End Scan Response*/
506 WDI_END_SCAN_RESP = 5,
507
508 /*WLAN DAL Finish Scan Response*/
509 WDI_FINISH_SCAN_RESP = 6,
510
511
512 /*ASSOCIATION*/
513 /*WLAN DAL Join Response*/
514 WDI_JOIN_RESP = 7,
515
516 /*WLAN DAL Config BSS Response*/
517 WDI_CONFIG_BSS_RESP = 8,
518
519 /*WLAN DAL Del BSS Response*/
520 WDI_DEL_BSS_RESP = 9,
521
522 /*WLAN DAL Post Assoc Response*/
523 WDI_POST_ASSOC_RESP = 10,
524
525 /*WLAN DAL Del STA Response*/
526 WDI_DEL_STA_RESP = 11,
527
528 /*WLAN DAL Set BSS Key Response*/
529 WDI_SET_BSS_KEY_RESP = 12,
530
531 /*WLAN DAL Remove BSS Key Response*/
532 WDI_RMV_BSS_KEY_RESP = 13,
533
534 /*WLAN DAL Set STA Key Response*/
535 WDI_SET_STA_KEY_RESP = 14,
536
537 /*WLAN DAL Remove STA Key Response*/
538 WDI_RMV_STA_KEY_RESP = 15,
539
540 /*WLAN DAL Add TSpec Response*/
541 WDI_ADD_TS_RESP = 16,
542
543 /*WLAN DAL Delete TSpec Response*/
544 WDI_DEL_TS_RESP = 17,
545
546 /*WLAN DAL Update EDCA Params Response*/
547 WDI_UPD_EDCA_PRMS_RESP = 18,
548
549 /*WLAN DAL Add BA Session Response*/
550 WDI_ADD_BA_SESSION_RESP = 19,
551
552 /*WLAN DAL Delete BA Response*/
553 WDI_DEL_BA_RESP = 20,
554
555 /*WLAN DAL Channel Switch Response*/
556 WDI_CH_SWITCH_RESP = 21,
557
558 /*WLAN DAL Config STA Response*/
559 WDI_CONFIG_STA_RESP = 22,
560
561 /*WLAN DAL Set Link State Response*/
562 WDI_SET_LINK_ST_RESP = 23,
563
564 /*WLAN DAL Get Stats Response*/
565 WDI_GET_STATS_RESP = 24,
566
567 /*WLAN DAL Update Config Response*/
568 WDI_UPDATE_CFG_RESP = 25,
569
570 /* WDI ADD BA Response */
571 WDI_ADD_BA_RESP = 26,
572
573 /* WDI Trigger BA Response */
574 WDI_TRIGGER_BA_RESP = 27,
575
576 /*WLAN DAL Update beacon params Response*/
577 WDI_UPD_BCON_PRMS_RESP = 28,
578
579 /*WLAN DAL Send beacon template Response*/
580 WDI_SND_BCON_RESP = 29,
581
582 /*WLAN DAL Update Probe Response Template Response*/
583 WDI_UPD_PROBE_RSP_TEMPLATE_RESP = 30,
584
585 /*WLAN DAL Set STA Key Response*/
586 WDI_SET_STA_BCAST_KEY_RESP = 31,
587
588 /*WLAN DAL Remove STA Key Response*/
589 WDI_RMV_STA_BCAST_KEY_RESP = 32,
590
591 /*WLAN DAL Set Max Tx Power Response*/
592 WDI_SET_MAX_TX_POWER_RESP = 33,
593
594 /*WLAN DAL Enter IMPS Response*/
595 WDI_ENTER_IMPS_RESP = 34,
596
597 /*WLAN DAL Exit IMPS Response*/
598 WDI_EXIT_IMPS_RESP = 35,
599
600 /*WLAN DAL Enter BMPS Response*/
601 WDI_ENTER_BMPS_RESP = 36,
602
603 /*WLAN DAL Exit BMPS Response*/
604 WDI_EXIT_BMPS_RESP = 37,
605
606 /*WLAN DAL Enter UAPSD Response*/
607 WDI_ENTER_UAPSD_RESP = 38,
608
609 /*WLAN DAL Exit UAPSD Response*/
610 WDI_EXIT_UAPSD_RESP = 39,
611
612 /*WLAN DAL Set UAPSD Param Response*/
613 WDI_SET_UAPSD_PARAM_RESP = 40,
614
615 /*WLAN DAL Update UAPSD Param (SoftAP mode) Response*/
616 WDI_UPDATE_UAPSD_PARAM_RESP = 41,
617
618 /*WLAN DAL Configure RXP filter Response*/
619 WDI_CONFIGURE_RXP_FILTER_RESP = 42,
620
621 /*WLAN DAL Set Beacon filter Response*/
622 WDI_SET_BEACON_FILTER_RESP = 43,
623
624 /*WLAN DAL Remove Beacon filter Response*/
625 WDI_REM_BEACON_FILTER_RESP = 44,
626
627 /*WLAN DAL Set RSSI thresholds Response*/
628 WDI_SET_RSSI_THRESHOLDS_RESP = 45,
629
630 /*WLAN DAL Set RSSI thresholds Response*/
631 WDI_HOST_OFFLOAD_RESP = 46,
632
633 /*WLAN DAL add wowl bc ptrn Response*/
634 WDI_WOWL_ADD_BC_PTRN_RESP = 47,
635
636 /*WLAN DAL delete wowl bc ptrn Response*/
637 WDI_WOWL_DEL_BC_PTRN_RESP = 48,
638
639 /*WLAN DAL enter wowl Response*/
640 WDI_WOWL_ENTER_RESP = 49,
641
642 /*WLAN DAL exit wowl Response*/
643 WDI_WOWL_EXIT_RESP = 50,
644
645 /*WLAN DAL Configure Apps CPU Wakeup state Response*/
646 WDI_CONFIGURE_APPS_CPU_WAKEUP_STATE_RESP = 51,
647
648 /* WLAN NV Download responce */
649 WDI_NV_DOWNLOAD_RESP = 52,
650
651 /*WLAN DAL Flush AC Response*/
652 WDI_FLUSH_AC_RESP = 53,
653
654 /*WLAN DAL Flush AC Response*/
655 WDI_BTAMP_EVENT_RESP = 54,
656
657 /*WLAN DAL Add Aggregated TSpec Response*/
658 WDI_AGGR_ADD_TS_RESP = 55,
659
660 /*Add Self STA Response*/
661 WDI_ADD_STA_SELF_RESP = 56,
662
663 /*Delete Self STA Response*/
664 WDI_DEL_STA_SELF_RESP = 57,
665
Jeff Johnsone7245742012-09-05 17:12:55 -0700666 /*WLAN START OEM_DATA Response*/
667 WDI_START_OEM_DATA_RESP = 58,
Jeff Johnson295189b2012-06-20 16:38:30 -0700668
669 /* WLAN host resume request */
670 WDI_HOST_RESUME_RESP = 59,
671
672 /* WLAN DAL P2P GO Notice Of Absence Response */
673 WDI_P2P_GO_NOTICE_OF_ABSENCE_RESP = 60,
674
675 /* FTM Response from HAL */
676 WDI_FTM_CMD_RESP = 61,
677
678 /*Keep alive response */
679 WDI_KEEP_ALIVE_RESP = 62,
680
681 /* Set PNO Response */
682 WDI_SET_PREF_NETWORK_RESP = 63,
683
684 /* Set RSSI Filter Response */
685 WDI_SET_RSSI_FILTER_RESP = 64,
686
687 /* Update Scan Parameters Resp */
688 WDI_UPDATE_SCAN_PARAMS_RESP = 65,
689
690 //Tx PER Tracking
691 WDI_SET_TX_PER_TRACKING_RESP = 66,
692
693
694
695 /* Packet Filtering Response */
696 WDI_8023_MULTICAST_LIST_RESP = 67,
697
698 WDI_RECEIVE_FILTER_SET_FILTER_RESP = 68,
699
700 WDI_PACKET_COALESCING_FILTER_MATCH_COUNT_RESP = 69,
701
702 WDI_RECEIVE_FILTER_CLEAR_FILTER_RESP = 70,
703
704
705 /* WLAN HAL DUMP Command Response */
706 WDI_HAL_DUMP_CMD_RESP = 71,
707
708 /* WLAN Shutdown Response */
709 WDI_SHUTDOWN_RESP = 72,
710
711 /*Set power parameters response */
712 WDI_SET_POWER_PARAMS_RESP = 73,
713
714 WDI_TSM_STATS_RESP = 74,
715 /* GTK Rekey Offload */
Jeff Johnsone7245742012-09-05 17:12:55 -0700716 WDI_GTK_OFFLOAD_RESP = 75,
717 WDI_GTK_OFFLOAD_GETINFO_RESP = 76,
Jeff Johnson295189b2012-06-20 16:38:30 -0700718
719 WDI_SET_TM_LEVEL_RESP = 77,
720
721 /* FW sends its capability bitmap as a response */
722 WDI_FEATURE_CAPS_EXCHANGE_RESP = 78,
723
Mohit Khanna4a70d262012-09-11 16:30:12 -0700724#ifdef WLAN_FEATURE_11AC
725 WDI_UPDATE_VHT_OP_MODE_RESP = 79,
726#endif
727
Srinivas Girigowdad34cedb2013-01-25 13:33:11 -0800728 /* WLAN DAL Get Roam Rssi Response*/
729 WDI_GET_ROAM_RSSI_RESP = 80,
730
schang86c22c42013-03-13 18:41:24 -0700731 WDI_SET_TX_POWER_RESP = 81,
Varun Reddy Yeturu920df212013-05-22 08:07:23 -0700732 WDI_ROAM_SCAN_OFFLOAD_RESP = 82,
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +0530733
734 WDI_TDLS_LINK_ESTABLISH_REQ_RESP = 83,
Leo Chang9056f462013-08-01 19:21:11 -0700735
736 /* WLAN FW LPHB Config response */
737 WDI_LPHB_CFG_RESP = 84,
738
Rajeev Kumar58c7d512013-12-26 14:42:24 -0800739 WDI_SET_BATCH_SCAN_RESP = 85,
Rajeev79dbe4c2013-10-05 11:03:42 +0530740
Arif Hussain874bf812013-12-27 16:39:15 -0800741 WDI_SET_MAX_TX_POWER_PER_BAND_RSP = 86,
Jeff Johnson295189b2012-06-20 16:38:30 -0700742 /*-------------------------------------------------------------------------
743 Indications
744 !! Keep these last in the enum if possible
745 -------------------------------------------------------------------------*/
746 WDI_HAL_IND_MIN ,
747 /*When RSSI monitoring is enabled of the Lower MAC and a threshold has been
748 passed. */
749 WDI_HAL_RSSI_NOTIFICATION_IND = WDI_HAL_IND_MIN,
750
751 /*Link loss in the low MAC */
752 WDI_HAL_MISSED_BEACON_IND = WDI_HAL_IND_MIN + 1,
753
754 /*When hardware has signaled an unknown addr2 frames. The indication will
755 contain info from frames to be passed to the UMAC, this may use this info to
756 deauth the STA*/
757 WDI_HAL_UNKNOWN_ADDR2_FRAME_RX_IND = WDI_HAL_IND_MIN + 2,
758
759 /*MIC Failure detected by HW*/
760 WDI_HAL_MIC_FAILURE_IND = WDI_HAL_IND_MIN + 3,
761
762 /*Fatal Error Ind*/
763 WDI_HAL_FATAL_ERROR_IND = WDI_HAL_IND_MIN + 4,
764
765 /*Received when the RIVA SW decides to autonomously delete an associate
766 station (e.g. Soft AP TIM based dissassoc) */
767 WDI_HAL_DEL_STA_IND = WDI_HAL_IND_MIN + 5,
768
769 /*Coex indication*/
770 WDI_HAL_COEX_IND = WDI_HAL_IND_MIN + 6,
771
772 /* Tx Complete Indication */
773 WDI_HAL_TX_COMPLETE_IND = WDI_HAL_IND_MIN + 7,
774
775 WDI_HAL_P2P_NOA_ATTR_IND = WDI_HAL_IND_MIN + 8,
776
777 /* Preferred Network Found Indication */
778 WDI_HAL_PREF_NETWORK_FOUND_IND = WDI_HAL_IND_MIN + 9,
779
780 /* Wakeup Reason Indication */
781 WDI_HAL_WAKE_REASON_IND = WDI_HAL_IND_MIN + 10,
782
783 /* Tx PER Hit Indication */
784 WDI_HAL_TX_PER_HIT_IND = WDI_HAL_IND_MIN + 11,
Viral Modid86bde22012-12-10 13:09:21 -0800785
786 /* NOA Start Indication from FW to Host */
787 WDI_HAL_P2P_NOA_START_IND = WDI_HAL_IND_MIN + 12,
788
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +0530789 /* TDLS Indication from FW to Host */
790 WDI_HAL_TDLS_IND = WDI_HAL_IND_MIN + 13,
791
Leo Chang9056f462013-08-01 19:21:11 -0700792 /* LPHB timeout indication */
Leo Changd9df8aa2013-09-26 13:32:26 -0700793 WDI_HAL_LPHB_IND = WDI_HAL_IND_MIN + 14,
Ravi Joshid2ca7c42013-07-23 08:37:49 -0700794
795 /* IBSS Peer Inactivity Indication from FW to Host */
796 WDI_HAL_IBSS_PEER_INACTIVITY_IND = WDI_HAL_IND_MIN + 15,
797
Yue Mab9c86f42013-08-14 15:59:08 -0700798 /* Periodic Tx Pattern Indication from FW to Host */
799 WDI_HAL_PERIODIC_TX_PTRN_FW_IND = WDI_HAL_IND_MIN + 16,
800
Rajeev79dbe4c2013-10-05 11:03:42 +0530801
Rajeev79dbe4c2013-10-05 11:03:42 +0530802 WDI_BATCHSCAN_RESULT_IND = WDI_HAL_IND_MIN + 17,
Rajeev79dbe4c2013-10-05 11:03:42 +0530803
Leo Chang0b0e45a2013-12-15 15:18:55 -0800804 WDI_HAL_CH_AVOID_IND = WDI_HAL_IND_MIN + 18,
Jeff Johnson295189b2012-06-20 16:38:30 -0700805 WDI_MAX_RESP
806}WDI_ResponseEnumType;
807
808typedef struct
809{
810 /*Flag that marks a session as being in use*/
811 wpt_boolean bInUse;
812
813 /*Flag that keeps track if a series of assoc requests for this BSS are
814 currently pending in the queue or processed
815 - the flag is set to true when the Join request ends up being queued
816 - and reset to false when the Pending queue is empty */
817 wpt_boolean bAssocReqQueued;
818
819 /*BSSID of the session*/
820 wpt_macAddr macBSSID;
821
822 /*BSS Index associated with this BSSID*/
823 wpt_uint8 ucBSSIdx;
824
825 /*Associated state of the current BSS*/
826 WDI_AssocStateType wdiAssocState;
827
828 /*WDI Pending Request Queue*/
829 wpt_list wptPendingQueue;
830
831 /*DPU Information for this BSS*/
832 wpt_uint8 bcastDpuIndex;
833 wpt_uint8 bcastDpuSignature;
834 wpt_uint8 bcastMgmtDpuIndex;
835 wpt_uint8 bcastMgmtDpuSignature;
836
837 /*RMF enabled/disabled*/
838 wpt_uint8 ucRmfEnabled;
839
840 /*Bcast STA ID associated with this BSS session */
841 wpt_uint8 bcastStaIdx;
842
843 /*The type of the BSS in the session */
844 WDI_BssType wdiBssType;
845}WDI_BSSSessionType;
846
847/*---------------------------------------------------------------------------
848 WDI_ConfigBSSRspInfoType
849---------------------------------------------------------------------------*/
850typedef WPT_PACK_PRE struct
851{
852 /*BSS index allocated by HAL*/
853 wpt_uint8 ucBSSIdx;
854
855 /*BSSID of the BSS*/
856 wpt_macAddr macBSSID;
857
858 /*Broadcast DPU descriptor index allocated by HAL and used for
859 broadcast/multicast packets.*/
860 wpt_uint8 ucBcastDpuDescIndx;
861
862 /*DPU signature to be used for broadcast/multicast packets*/
863 wpt_uint8 ucBcastDpuSignature;
864
865 /*DPU descriptor index allocated by HAL, used for bcast/mcast management
866 packets*/
867 wpt_uint8 ucMgmtDpuDescIndx;
868
869 /*DPU signature to be used for bcast/mcast management packets*/
870 wpt_uint8 ucMgmtDpuSignature;
871
872 /*Status of the request received from HAL */
873 eHalStatus halStatus;
874}WPT_PACK_POST WDI_ConfigBSSRspInfoType;
875
876
877/*---------------------------------------------------------------------------
878 WDI_PostAssocRspInfoType
879---------------------------------------------------------------------------*/
880typedef WPT_PACK_PRE struct
881{
882 /*STA Index allocated by HAL.*/
883 wpt_uint16 usSTAIdx;
884
885 /*MAC Address of STA*/
886 wpt_macAddr macSTA;
887
888 /*Unicast DPU signature*/
889 wpt_uint8 ucUcastSig;
890
891 /*Broadcast DPU Signature*/
892 wpt_uint8 ucBcastSig;
893
894 /*BSSID of the BSS*/
895 wpt_macAddr macBSSID;
896
897 /*HAL Status */
898 eHalStatus halStatus;
899}WPT_PACK_POST WDI_PostAssocRspInfoType;
900
901/*---------------------------------------------------------------------------
902 WLAN DAL FSM Event Info Type
903 ---------------------------------------------------------------------------*/
904typedef struct
905{
906 /*Events can be linked in a list - put a node in front for that, it will be
907 used by wpt to link them*/
908 wpt_list_node wptListNode;
909
910 /*Request Received */
911 WDI_RequestEnumType wdiRequest;
912
913 /*Response Received */
914 WDI_ResponseEnumType wdiResponse;
915
916 /*Data associated with the request */
917 void* pEventData;
918
919 /*Data Size*/
920 wpt_uint32 uEventDataSize;
921
922 /*Callback function for receiving the response to the event*/
923 void* pCBfnc;
924
925 /*User data to be sent along with the CB function call*/
926 void* pUserData;
927}WDI_EventInfoType;
928
929/*---------------------------------------------------------------------------
930 WLAN DAL Session Index Type
931 ---------------------------------------------------------------------------*/
932typedef struct
933{
934 /*Events can be linked in a list - put a node in front for that, it will be
935 used by wpt to link them*/
936 wpt_list_node wptListNode;
937
938 /*Session id for the new association to be processed*/
939 wpt_uint8 ucIndex;
940
941}WDI_NextSessionIdType;
942
943#define WDI_CONTROL_BLOCK_MAGIC 0x67736887 /* WDIC in little endian */
944/*---------------------------------------------------------------------------
945 WLAN DAL Control Block Type
946 ---------------------------------------------------------------------------*/
947typedef struct
948{
949 /*magic number so callbacks can validate their context pointers*/
950 wpt_uint32 magic;
951
952 /*Ptr to the OS Context received from the UMAC*/
953 void* pOSContext;
954
955 /*Ptr to the PAL Context received from PAL*/
956 void* pPALContext;
957
958 /*Ptr to the Datapath Context received from PAL*/
959 void* pDPContext;
960
961 /*Ptr to the Datapath Transport Driver Context received from PAL*/
962 void* pDTDriverContext;
963
964 /*Hanlde to the control transport service*/
965 WCTS_HandleType wctsHandle;
966
967 /*Flag that keeps track if CT is Opened or not*/
968 wpt_boolean bCTOpened;
969
970 /*The global state of the DAL Control Path*/
971 WDI_MainStateType uGlobalState;
972
973 /*Flag to keep track of the expected state transition after processing
974 of a response */
975 WDI_MainStateType ucExpectedStateTransition;
976
977 /*Main Synchronization Object for the WDI CB*/
978 wpt_mutex wptMutex;
979
980 /*WDI response timer*/
981 wpt_timer wptResponseTimer;
982
983 /*WDI Pending Request Queue*/
984 wpt_list wptPendingQueue;
985#if 0
986 /*The state of the DAL during a scanning procedure*/
987 WDI_ScanStateType uScanState;
988
989 /*Flag that keeps track if a Scan is currently in progress*/
990 wpt_boolean bScanInProgress;
991#endif
992 /*Flag that keeps track if an Association is currently in progress*/
993 wpt_boolean bAssociationInProgress;
994
995 /*Array of simultaneous BSS Sessions*/
996 WDI_BSSSessionType aBSSSessions[WDI_MAX_BSS_SESSIONS];
997
998 /*WDI Pending Association Session Id Queue - it keeps track of the
999 order in which queued assoc requests came in*/
1000 wpt_list wptPendingAssocSessionIdQueue;
1001
1002 /*! TO DO : - group these in a union, only one cached req can exist at a
1003 time */
1004
1005 /*Cached post assoc request - there can only be one in the system as
1006 only one request goes down to hal up until a response is received
1007 The values cached are used on response to save a station if needed */
1008 WDI_PostAssocReqParamsType wdiCachedPostAssocReq;
1009
1010 /*Cached config sta request - there can only be one in the system as
1011 only one request goes down to hal up until a response is received
1012 The values cached are used on response to save a station if needed */
1013 WDI_ConfigSTAReqParamsType wdiCachedConfigStaReq;
1014
1015 /*Cached config sta request - there can only be one in the system as
1016 only one request goes down to hal up until a response is received
1017 The values cached are used on response to save a BSS if needed */
1018 WDI_ConfigBSSReqParamsType wdiCachedConfigBssReq;
1019
1020 /*Cached set link state request - there can only be one in the system as
1021 only one request goes down to hal up until a response is received
1022 The values cached are used on response to delete a BSS if needed */
1023 WDI_SetLinkReqParamsType wdiCacheSetLinkStReq;
1024
1025 /*Cached add STA self request - there can only be one in the system as
1026 only one request goes down to hal up until a response is received
1027 The values cached are used on response to save the self STA in the table */
1028 WDI_AddSTASelfReqParamsType wdiCacheAddSTASelfReq;
1029
1030 /*Current session being handled*/
1031 wpt_uint8 ucCurrentBSSSesIdx;
1032
1033 /*Pointer to the response CB of the pending request*/
1034 void* pfncRspCB;
1035
1036 /*Pointer to the user data to be sent along with the response CB*/
1037 void* pRspCBUserData;
1038
1039 /*The expected response from HAL*/
1040 WDI_ResponseEnumType wdiExpectedResponse;
1041
1042 /*Request status callback offered by UMAC - it is called if the current
1043 req has returned PENDING as status; it delivers the status of sending
1044 the message over the BUS */
1045 WDI_ReqStatusCb wdiReqStatusCB;
1046
1047 /*The user data passed in by UMAC, it will be sent back when the above
1048 function pointer will be called */
1049 void* pReqStatusUserData;
1050
1051 /*Indication callback given by UMAC to be called by the WLAN DAL when it
1052 wishes to send something back independent of a request*/
1053 WDI_LowLevelIndCBType wdiLowLevelIndCB;
1054
1055 /*The user data passed in by UMAC, it will be sent back when the indication
1056 function pointer will be called */
1057 void* pIndUserData;
1058
1059 /*Cached start response parameters*/
1060 WDI_StartRspParamsType wdiCachedStartRspParams;
1061
1062 /* Information related to NV Image*/
1063 WDI_NvBlobInfoParams wdiNvBlobInfo;
1064
1065 /*STA Table Information*/
1066 /*Max number of stations allowed by device */
1067 wpt_uint8 ucMaxStations;
1068
1069 /*Max number of BSSes allowed by device */
1070 wpt_uint8 ucMaxBssids;
1071
1072 /* Global BSS and STA table - Memory is allocated when needed.*/
1073 void* staTable;
1074
1075#ifndef HAL_SELF_STA_PER_BSS
1076 /*Index of the Self STA */
1077 wpt_uint8 ucSelfStaId;
1078
1079 /* Self STA DPU Index */
1080 wpt_uint16 usSelfStaDpuId;
1081
1082 /*Self STA Mac*/
1083 wpt_macAddr macSelfSta;
1084#endif
1085
1086 /*Is frame translation enabled */
1087 wpt_uint8 bFrameTransEnabled;
1088
1089 /*AMSDU BD Fix Mask - used by the Fixing routine for Data Path */
1090 WDI_RxBdType wdiRxAmsduBdFixMask;
1091
1092 /*First AMSDU BD - used by the Fixing routine for Data Path */
1093 WDI_RxBdType wdiRxAmsduFirstBdCache;
1094
1095 /*This must be incremented on sta change */
1096 wpt_uint32 uBdSigSerialNum;
1097
1098 /* dpu routing flag
1099 ! TO DO: - must be set/reset when PS is enabled for UAPSD */
1100 wpt_uint8 ucDpuRF;
1101 /* Event to wait for when WCTS is told to perform an action */
1102 wpt_event wctsActionEvent;
1103 /* Event to wait for ACK from DXE after the power state is set */
1104 wpt_event setPowerStateEvent;
1105 /* DXE physical addr to be passed down to RIVA. RIVA HAL will use it to program
1106 DXE when DXE wakes up from power save*/
1107 unsigned int dxePhyAddr;
1108
1109 /*NV download request parameters */
1110 WDI_NvDownloadReqParamsType wdiCachedNvDownloadReq;
1111
1112 /* Driver Type */
1113 tDriverType driverMode;
1114
Jeff Johnson295189b2012-06-20 16:38:30 -07001115 /* Statically allocated FTM Response Buffer */
1116 wpt_uint8 ucFTMCommandRspBuffer[WDI_FTM_MAX_RECEIVE_BUFFER];
Jeff Johnson295189b2012-06-20 16:38:30 -07001117
1118 /*Driver in BMPS state*/
1119 wpt_boolean bInBmps;
1120
1121 /*version of the PNO implementation in RIVA*/
1122 wpt_uint8 wdiPNOVersion;
Madan Mohan Koyyalamudi0bfd0002012-10-24 14:39:37 -07001123
1124 /*SSR timer*/
1125 wpt_timer ssrTimer;
Pratik Bhalgatd4404592012-11-22 17:49:14 +05301126
1127 /*Version of the WLAN HAL API received on start resp*/
1128 WDI_WlanVersionType wlanVersion;
1129
Gopichand Nakkalaa5e3ede2012-12-21 15:28:36 -08001130 /*timestamp when we start response timer*/
1131 wpt_uint32 uTimeStampRspTmrStart;
1132
1133 /*timestamp when we get response timer event*/
1134 wpt_uint32 uTimeStampRspTmrExp;
Gopichand Nakkala7fbde852013-05-07 03:05:56 -07001135
1136 /* enable/disable SSR on WDI timeout */
1137 wpt_boolean bEnableSSR;
Arif Hussain6c8947a2013-11-27 13:57:14 -08001138
1139 /* timestamp derived from msm arch counter. */
1140 /*timestamp when we start response timer*/
1141 wpt_uint64 uArchTimeStampRspTmrStart;
1142
1143 /*timestamp when we get response timer event*/
1144 wpt_uint64 uArchTimeStampRspTmrExp;
Jeff Johnson295189b2012-06-20 16:38:30 -07001145}WDI_ControlBlockType;
1146
1147
1148
1149
1150/*---------------------------------------------------------------------------
1151
1152 DESCRIPTION
1153 WLAN DAL Request Processing function definition.
1154
1155 PARAMETERS
1156
1157 IN
1158 pWDICtx: pointer to the WLAN DAL context
1159 pEventData: pointer to the event information structure
1160
1161
1162 RETURN VALUE
1163 The result code associated with performing the operation
1164
1165---------------------------------------------------------------------------*/
1166typedef WDI_Status (*WDI_ReqProcFuncType)( WDI_ControlBlockType* pWDICtx,
1167 WDI_EventInfoType* pEventData);
1168
1169
1170/*---------------------------------------------------------------------------
1171
1172 DESCRIPTION
1173 WLAN DAL Response Processing function definition.
1174
1175 PARAMETERS
1176
1177 IN
1178 pWDICtx: pointer to the WLAN DAL context
1179 pEventData: pointer to the event information structure
1180
1181
1182 RETURN VALUE
1183 The result code associated with performing the operation
1184
1185---------------------------------------------------------------------------*/
1186typedef WDI_Status (*WDI_RspProcFuncType)( WDI_ControlBlockType* pWDICtx,
1187 WDI_EventInfoType* pEventData);
1188
1189
1190
1191
1192/*==========================================================================
1193 MAIN DAL FSM Definitions and Declarations
1194==========================================================================*/
1195
1196/*---------------------------------------------------------------------------
1197 DAL Control Path Main FSM
1198 ---------------------------------------------------------------------------*/
1199#define WDI_STATE_TRANSITION(_pctx, _st) (_pctx->uGlobalState = _st)
1200
1201
1202
1203/*---------------------------------------------------------------------------
1204 DAL Main Event type
1205---------------------------------------------------------------------------*/
1206typedef enum
1207{
1208 /* Start request received from UMAC */
1209 WDI_START_EVENT = 0,
1210
1211 /* Stop request received from UMAC */
1212 WDI_STOP_EVENT = 1,
1213
1214 /* HAL request received from UMAC*/
1215 WDI_REQUEST_EVENT = 2,
1216
1217 /* HAL Response received from device */
1218 WDI_RESPONSE_EVENT = 3,
1219
1220 /* Close request received from UMAC */
1221 WDI_CLOSE_EVENT = 4,
1222
1223 /* Shutdown request received from UMAC */
1224 WDI_SHUTDOWN_EVENT = 5,
1225
1226 WDI_MAX_EVENT
1227
1228}WDI_MainEventType;
1229
1230/*---------------------------------------------------------------------------
1231
1232 DESCRIPTION
1233 Main DAL state machine function definition.
1234
1235 PARAMETERS
1236
1237 IN
1238 pWDICtx: pointer to the WLAN DAL context
1239 pEventData: pointer to the event information structure
1240
1241
1242 RETURN VALUE
1243 The result code associated with performing the operation
1244
1245---------------------------------------------------------------------------*/
1246typedef WDI_Status (*WDI_MainFuncType)( WDI_ControlBlockType* pWDICtx,
1247 WDI_EventInfoType* pEventData);
1248
1249/*---------------------------------------------------------------------------
1250 MAIN DAL FSM Entry type
1251---------------------------------------------------------------------------*/
1252typedef struct
1253{
1254 WDI_MainFuncType pfnMainTbl[WDI_MAX_EVENT];
1255} WDI_MainFsmEntryType;
1256
1257/*Macro to check for valid session id*/
1258#define WDI_VALID_SESSION_IDX(_idx) ( _idx < WDI_MAX_BSS_SESSIONS )
1259
1260/*==========================================================================
1261
1262 DAL INTERNAL FUNCTION DECLARATION
1263
1264==========================================================================*/
1265
1266/**
1267 @brief Helper routine for retrieving the PAL Context from WDI -
1268 can be used by CTS, DTS, DXE and othe DAL internals
1269
1270 @param None
1271
1272 @see
1273 @return pointer to the context
1274*/
Jeff Johnson43971f52012-07-17 12:26:56 -07001275void* WDI_GET_PAL_CTX( void );
Jeff Johnson295189b2012-06-20 16:38:30 -07001276
1277/*---------------------------------------------------------------------------
1278 MAIN DAL FSM Function Declarations
1279---------------------------------------------------------------------------*/
1280/**
1281 @brief WDI_PostMainEvent - Posts an event to the Main FSM
1282
1283
1284 @param pWDICtx: pointer to the WLAN DAL context
1285 wdiEV: event posted to the main DAL FSM
1286 pEventData: pointer to the event information
1287 structure
1288
1289 @see
1290 @return Result of the function call
1291*/
1292WDI_Status
1293WDI_PostMainEvent
1294(
1295 WDI_ControlBlockType* pWDICtx,
1296 WDI_MainEventType wdiEV,
1297 WDI_EventInfoType* pEventData
1298
1299);
1300
1301/*--------------------------------------------------------------------------
1302 INIT State Functions
1303--------------------------------------------------------------------------*/
1304/**
1305 @brief Main FSM Start function for all states except BUSY
1306
1307
1308 @param pWDICtx: pointer to the WLAN DAL context
1309 pEventData: pointer to the event information structure
1310
1311 @see
1312 @return Result of the function call
1313*/
1314WDI_Status
1315WDI_MainStart
1316(
1317 WDI_ControlBlockType* pWDICtx,
1318 WDI_EventInfoType* pEventData
1319);
1320
1321/**
1322 @brief Main FSM Response function for state INIT
1323
1324
1325 @param pWDICtx: pointer to the WLAN DAL context
1326 pEventData: pointer to the event information structure
1327
1328 @see
1329 @return Result of the function call
1330*/
1331WDI_Status
1332WDI_MainRspInit
1333(
1334 WDI_ControlBlockType* pWDICtx,
1335 WDI_EventInfoType* pEventData
1336);
1337
1338/**
1339 @brief Main FSM Close function for all states except BUSY
1340
1341
1342 @param pWDICtx: pointer to the WLAN DAL context
1343 pEventData: pointer to the event information structure
1344
1345
1346 @see
1347 @return Result of the function call
1348*/
1349WDI_Status
1350WDI_MainClose
1351(
1352 WDI_ControlBlockType* pWDICtx,
1353 WDI_EventInfoType* pEventData
1354);
1355
1356/*--------------------------------------------------------------------------
1357 STARTED State Functions
1358--------------------------------------------------------------------------*/
1359/**
1360 @brief Main FSM Start function for state STARTED
1361
1362
1363 @param pWDICtx: pointer to the WLAN DAL context
1364 pEventData: pointer to the event information structure
1365
1366 @see
1367 @return Result of the function call
1368*/
1369WDI_Status
1370WDI_MainStartStarted
1371(
1372 WDI_ControlBlockType* pWDICtx,
1373 WDI_EventInfoType* pEventData
1374);
1375
1376/**
1377 @brief Main FSM Stop function for state STARTED
1378
1379
1380 @param pWDICtx: pointer to the WLAN DAL context
1381 pEventData: pointer to the event information structure
1382 uEventDataSize: size of the data sent in event
1383 pCBfnc: cb function for event response
1384 pUserData: user data
1385
1386 @see
1387 @return Result of the function call
1388*/
1389WDI_Status
1390WDI_MainStopStarted
1391(
1392 WDI_ControlBlockType* pWDICtx,
1393 WDI_EventInfoType* pEventData
1394);
1395
1396/**
1397 @brief Main FSM Request function for state started
1398
1399
1400 @param pWDICtx: pointer to the WLAN DAL context
1401 pEventData: pointer to the event information structure
1402
1403
1404 @see
1405 @return Result of the function call
1406*/
1407WDI_Status
1408WDI_MainReqStarted
1409(
1410 WDI_ControlBlockType* pWDICtx,
1411 WDI_EventInfoType* pEventData
1412);
1413
1414/**
1415 @brief Main FSM Response function for all states except INIT
1416
1417
1418 @param pWDICtx: pointer to the WLAN DAL context
1419 pEventData: pointer to the event information structure
1420
1421 @see
1422 @return Result of the function call
1423*/
1424WDI_Status
1425WDI_MainRsp
1426(
1427 WDI_ControlBlockType* pWDICtx,
1428 WDI_EventInfoType* pEventData
1429);
1430
1431/*--------------------------------------------------------------------------
1432 STOPPED State Functions
1433--------------------------------------------------------------------------*/
1434/**
1435 @brief Main FSM Stop function for state STOPPED
1436
1437
1438 @param pWDICtx: pointer to the WLAN DAL context
1439 pEventData: pointer to the event information structure
1440
1441 @see
1442 @return Result of the function call
1443*/
1444WDI_Status
1445WDI_MainStopStopped
1446(
1447 WDI_ControlBlockType* pWDICtx,
1448 WDI_EventInfoType* pEventData
1449 );
1450
1451/*--------------------------------------------------------------------------
1452 BUSY State Functions
1453--------------------------------------------------------------------------*/
1454/**
1455 @brief Main FSM Start function for state BUSY
1456
1457
1458 @param pWDICtx: pointer to the WLAN DAL context
1459 pEventData: pointer to the event information structure
1460
1461 @see
1462 @return Result of the function call
1463*/
1464WDI_Status
1465WDI_MainStartBusy
1466(
1467 WDI_ControlBlockType* pWDICtx,
1468 WDI_EventInfoType* pEventData
1469);
1470
1471/**
1472 @brief Main FSM Stop function for state BUSY
1473
1474
1475 @param pWDICtx: pointer to the WLAN DAL context
1476 pEventData: pointer to the event information structure
1477
1478 @see
1479 @return Result of the function call
1480*/
1481WDI_Status
1482WDI_MainStopBusy
1483(
1484 WDI_ControlBlockType* pWDICtx,
1485 WDI_EventInfoType* pEventData
1486);
1487
1488/**
1489 @brief Main FSM Request function for state BUSY
1490
1491
1492 @param pWDICtx: pointer to the WLAN DAL context
1493 pEventData: pointer to the event information structure
1494
1495 @see
1496 @return Result of the function call
1497*/
1498WDI_Status
1499WDI_MainReqBusy
1500(
1501 WDI_ControlBlockType* pWDICtx,
1502 WDI_EventInfoType* pEventData
1503);
1504
1505/**
1506 @brief Main FSM Close function for state BUSY
1507
1508
1509 @param pWDICtx: pointer to the WLAN DAL context
1510 pEventData: pointer to the event information structure
1511
1512 @see
1513 @return Result of the function call
1514*/
1515WDI_Status
1516WDI_MainCloseBusy
1517(
1518 WDI_ControlBlockType* pWDICtx,
1519 WDI_EventInfoType* pEventData
1520);
1521
1522/**
1523 @brief Main FSM Shutdown function for INIT & STARTED states
1524
1525
1526 @param pWDICtx: pointer to the WLAN DAL context
1527 pEventData: pointer to the event information structure
1528
1529 @see
1530 @return Result of the function call
1531*/
1532WDI_Status
1533WDI_MainShutdown
1534(
1535 WDI_ControlBlockType* pWDICtx,
1536 WDI_EventInfoType* pEventData
1537);
1538
1539/**
1540 @brief Main FSM Shutdown function for BUSY state
1541
1542
1543 @param pWDICtx: pointer to the WLAN DAL context
1544 pEventData: pointer to the event information structure
1545
1546 @see
1547 @return Result of the function call
1548*/
1549WDI_Status
1550WDI_MainShutdownBusy
1551(
1552 WDI_ControlBlockType* pWDICtx,
1553 WDI_EventInfoType* pEventData
1554);
1555
1556/*========================================================================
1557 Main DAL Control Path Request Processing API
1558========================================================================*/
1559
1560/**
1561 @brief Process Start Request function (called when Main FSM
1562 allows it)
1563
1564 @param pWDICtx: pointer to the WLAN DAL context
1565 pEventData: pointer to the event information structure
1566
1567 @see
1568 @return Result of the function call
1569*/
1570WDI_Status
1571WDI_ProcessStartReq
1572(
1573 WDI_ControlBlockType* pWDICtx,
1574 WDI_EventInfoType* pEventData
1575);
1576
1577
1578/**
1579 @brief Process Stop Request function (called when Main FSM
1580 allows it)
1581
1582 @param pWDICtx: pointer to the WLAN DAL context
1583 pEventData: pointer to the event information structure
1584
1585 @see
1586 @return Result of the function call
1587*/
1588WDI_Status
1589WDI_ProcessStopReq
1590(
1591 WDI_ControlBlockType* pWDICtx,
1592 WDI_EventInfoType* pEventData
1593);
1594
1595
1596/**
1597 @brief Process Close Request function (called when Main FSM
1598 allows it)
1599
1600 @param pWDICtx: pointer to the WLAN DAL context
1601 pEventData: pointer to the event information structure
1602
1603 @see
1604 @return Result of the function call
1605*/
1606WDI_Status
1607WDI_ProcessCloseReq
1608(
1609 WDI_ControlBlockType* pWDICtx,
1610 WDI_EventInfoType* pEventData
1611);
1612
1613/**
1614 @brief Process Shutdown Request function (called when Main FSM
1615 allows it)
1616
1617 @param pWDICtx: pointer to the WLAN DAL context
1618 pEventData: pointer to the event information structure
1619
1620 @see
1621 @return Result of the function call
1622*/
1623WDI_Status
1624WDI_ProcessShutdownReq
1625(
1626 WDI_ControlBlockType* pWDICtx,
1627 WDI_EventInfoType* pEventData
1628);
1629
1630
1631/**
1632 @brief Process Init Scan Request function (called when Main FSM
1633 allows it)
1634
1635 @param pWDICtx: pointer to the WLAN DAL context
1636 pEventData: pointer to the event information structure
1637
1638 @see
1639 @return Result of the function call
1640*/
1641WDI_Status
1642WDI_ProcessInitScanReq
1643(
1644 WDI_ControlBlockType* pWDICtx,
1645 WDI_EventInfoType* pEventData
1646);
1647
1648
1649/**
1650 @brief Process Start Scan Request function (called when Main
1651 FSM allows it)
1652
1653 @param pWDICtx: pointer to the WLAN DAL context
1654 pEventData: pointer to the event information structure
1655
1656 @see
1657 @return Result of the function call
1658*/
1659WDI_Status
1660WDI_ProcessStartScanReq
1661(
1662 WDI_ControlBlockType* pWDICtx,
1663 WDI_EventInfoType* pEventData
1664);
1665
1666
1667/**
1668 @brief Process End Scan Request function (called when Main FSM
1669 allows it)
1670
1671 @param pWDICtx: pointer to the WLAN DAL context
1672 pEventData: pointer to the event information structure
1673
1674 @see
1675 @return Result of the function call
1676*/
1677WDI_Status
1678WDI_ProcessEndScanReq
1679(
1680 WDI_ControlBlockType* pWDICtx,
1681 WDI_EventInfoType* pEventData
1682);
1683
1684
1685/**
1686 @brief Process Finish Scan Request function (called when Main
1687 FSM allows it)
1688
1689 @param pWDICtx: pointer to the WLAN DAL context
1690 pEventData: pointer to the event information structure
1691
1692 @see
1693 @return Result of the function call
1694*/
1695WDI_Status
1696WDI_ProcessFinishScanReq
1697(
1698 WDI_ControlBlockType* pWDICtx,
1699 WDI_EventInfoType* pEventData
1700);
1701
1702
1703/**
1704 @brief Process Join Request function (called when Main FSM
1705 allows it)
1706
1707 @param pWDICtx: pointer to the WLAN DAL context
1708 pEventData: pointer to the event information structure
1709
1710 @see
1711 @return Result of the function call
1712*/
1713WDI_Status
1714WDI_ProcessJoinReq
1715(
1716 WDI_ControlBlockType* pWDICtx,
1717 WDI_EventInfoType* pEventData
1718);
1719
1720
1721/**
1722 @brief Process Config BSS Request function (called when Main
1723 FSM allows it)
1724
1725 @param pWDICtx: pointer to the WLAN DAL context
1726 pEventData: pointer to the event information structure
1727
1728 @see
1729 @return Result of the function call
1730*/
1731WDI_Status
1732WDI_ProcessConfigBSSReq
1733(
1734 WDI_ControlBlockType* pWDICtx,
1735 WDI_EventInfoType* pEventData
1736);
1737
1738
1739/**
1740 @brief Process Del BSS Request function (called when Main FSM
1741 allows it)
1742
1743 @param pWDICtx: pointer to the WLAN DAL context
1744 pEventData: pointer to the event information structure
1745
1746 @see
1747 @return Result of the function call
1748*/
1749WDI_Status
1750WDI_ProcessDelBSSReq
1751(
1752 WDI_ControlBlockType* pWDICtx,
1753 WDI_EventInfoType* pEventData
1754);
1755
1756/**
1757 @brief Process Post Assoc Request function (called when Main
1758 FSM allows it)
1759
1760 @param pWDICtx: pointer to the WLAN DAL context
1761 pEventData: pointer to the event information structure
1762
1763 @see
1764 @return Result of the function call
1765*/
1766WDI_Status
1767WDI_ProcessPostAssocReq
1768(
1769 WDI_ControlBlockType* pWDICtx,
1770 WDI_EventInfoType* pEventData
1771);
1772
1773/**
1774 @brief Process Del STA Request function (called when Main FSM
1775 allows it)
1776
1777 @param pWDICtx: pointer to the WLAN DAL context
1778 pEventData: pointer to the event information structure
1779
1780 @see
1781 @return Result of the function call
1782*/
1783WDI_Status
1784WDI_ProcessDelSTAReq
1785(
1786 WDI_ControlBlockType* pWDICtx,
1787 WDI_EventInfoType* pEventData
1788);
1789
1790/**
1791 @brief Process Set BSS Key Request function (called when Main FSM
1792 allows it)
1793
1794 @param pWDICtx: pointer to the WLAN DAL context
1795 pEventData: pointer to the event information structure
1796
1797 @see
1798 @return Result of the function call
1799*/
1800WDI_Status
1801WDI_ProcessSetBssKeyReq
1802(
1803 WDI_ControlBlockType* pWDICtx,
1804 WDI_EventInfoType* pEventData
1805);
1806
1807/**
1808 @brief Process Remove BSS Key Request function (called when Main
1809 FSM allows it)
1810
1811 @param pWDICtx: pointer to the WLAN DAL context
1812 pEventData: pointer to the event information structure
1813
1814 @see
1815 @return Result of the function call
1816*/
1817WDI_Status
1818WDI_ProcessRemoveBssKeyReq
1819(
1820 WDI_ControlBlockType* pWDICtx,
1821 WDI_EventInfoType* pEventData
1822);
1823
1824/**
1825 @brief Process Set STA KeyRequest function (called when Main FSM
1826 allows it)
1827
1828 @param pWDICtx: pointer to the WLAN DAL context
1829 pEventData: pointer to the event information structure
1830
1831 @see
1832 @return Result of the function call
1833*/
1834WDI_Status
1835WDI_ProcessSetStaKeyReq
1836(
1837 WDI_ControlBlockType* pWDICtx,
1838 WDI_EventInfoType* pEventData
1839);
1840
1841/**
1842 @brief Process Remove STA Key Request function (called when
1843 Main FSM allows it)
1844
1845 @param pWDICtx: pointer to the WLAN DAL context
1846 pEventData: pointer to the event information structure
1847
1848 @see
1849 @return Result of the function call
1850*/
1851WDI_Status
1852WDI_ProcessRemoveStaKeyReq
1853(
1854 WDI_ControlBlockType* pWDICtx,
1855 WDI_EventInfoType* pEventData
1856);
1857
1858/**
1859 @brief Process Set STA KeyRequest function (called when Main FSM
1860 allows it)
1861
1862 @param pWDICtx: pointer to the WLAN DAL context
1863 pEventData: pointer to the event information structure
1864
1865 @see
1866 @return Result of the function call
1867*/
1868WDI_Status
1869WDI_ProcessSetStaBcastKeyReq
1870(
1871 WDI_ControlBlockType* pWDICtx,
1872 WDI_EventInfoType* pEventData
1873);
1874
1875/**
1876 @brief Process Remove STA Key Request function (called when
1877 Main FSM allows it)
1878
1879 @param pWDICtx: pointer to the WLAN DAL context
1880 pEventData: pointer to the event information structure
1881
1882 @see
1883 @return Result of the function call
1884*/
1885WDI_Status
1886WDI_ProcessRemoveStaBcastKeyReq
1887(
1888 WDI_ControlBlockType* pWDICtx,
1889 WDI_EventInfoType* pEventData
1890);
1891
1892/**
1893 @brief Process Add TSpec Request function (called when Main FSM
1894 allows it)
1895
1896 @param pWDICtx: pointer to the WLAN DAL context
1897 pEventData: pointer to the event information structure
1898
1899 @see
1900 @return Result of the function call
1901*/
1902WDI_Status
1903WDI_ProcessAddTSpecReq
1904(
1905 WDI_ControlBlockType* pWDICtx,
1906 WDI_EventInfoType* pEventData
1907);
1908
1909
1910/**
1911 @brief Process Del TSpec Request function (called when Main FSM
1912 allows it)
1913
1914 @param pWDICtx: pointer to the WLAN DAL context
1915 pEventData: pointer to the event information structure
1916
1917 @see
1918 @return Result of the function call
1919*/
1920WDI_Status
1921WDI_ProcessDelTSpecReq
1922(
1923 WDI_ControlBlockType* pWDICtx,
1924 WDI_EventInfoType* pEventData
1925);
1926
1927/**
1928 @brief Process Update EDCA Params Request function (called when
1929 Main FSM allows it)
1930
1931 @param pWDICtx: pointer to the WLAN DAL context
1932 pEventData: pointer to the event information structure
1933
1934 @see
1935 @return Result of the function call
1936*/
1937WDI_Status
1938WDI_ProcessUpdateEDCAParamsReq
1939(
1940 WDI_ControlBlockType* pWDICtx,
1941 WDI_EventInfoType* pEventData
1942);
1943
1944/**
1945 @brief Process Add BA Request function (called when Main FSM
1946 allows it)
1947
1948 @param pWDICtx: pointer to the WLAN DAL context
1949 pEventData: pointer to the event information structure
1950
1951 @see
1952 @return Result of the function call
1953*/
1954WDI_Status
1955WDI_ProcessAddBASessionReq
1956(
1957 WDI_ControlBlockType* pWDICtx,
1958 WDI_EventInfoType* pEventData
1959);
1960
1961/**
1962 @brief Process Del BA Request function (called when Main FSM
1963 allows it)
1964
1965 @param pWDICtx: pointer to the WLAN DAL context
1966 pEventData: pointer to the event information structure
1967
1968 @see
1969 @return Result of the function call
1970*/
1971WDI_Status
1972WDI_ProcessDelBAReq
1973(
1974 WDI_ControlBlockType* pWDICtx,
1975 WDI_EventInfoType* pEventData
1976);
1977
1978#ifdef FEATURE_WLAN_CCX
1979/**
1980 @brief Process TSM Stats Request function (called when Main FSM
1981 allows it)
1982
1983 @param pWDICtx: pointer to the WLAN DAL context
1984 pEventData: pointer to the event information structure
1985
1986 @see
1987 @return Result of the function call
1988*/
1989WDI_Status
1990WDI_ProcessTSMStatsReq
1991(
1992 WDI_ControlBlockType* pWDICtx,
1993 WDI_EventInfoType* pEventData
1994);
1995#endif
1996
1997/**
1998 @brief Process Channel Switch Request function (called when
1999 Main FSM allows it)
2000
2001 @param pWDICtx: pointer to the WLAN DAL context
2002 pEventData: pointer to the event information structure
2003
2004 @see
2005 @return Result of the function call
2006*/
2007WDI_Status
2008WDI_ProcessChannelSwitchReq
2009(
2010 WDI_ControlBlockType* pWDICtx,
2011 WDI_EventInfoType* pEventData
2012);
2013
2014/**
2015 @brief Process Config STA Request function (called when Main FSM
2016 allows it)
2017
2018 @param pWDICtx: pointer to the WLAN DAL context
2019 pEventData: pointer to the event information structure
2020
2021 @see
2022 @return Result of the function call
2023*/
2024WDI_Status
2025WDI_ProcessConfigStaReq
2026(
2027 WDI_ControlBlockType* pWDICtx,
2028 WDI_EventInfoType* pEventData
2029);
2030
2031
2032/**
2033 @brief Process Set Link State Request function (called when
2034 Main FSM allows it)
2035
2036 @param pWDICtx: pointer to the WLAN DAL context
2037 pEventData: pointer to the event information structure
2038
2039 @see
2040 @return Result of the function call
2041*/
2042WDI_Status
2043WDI_ProcessSetLinkStateReq
2044(
2045 WDI_ControlBlockType* pWDICtx,
2046 WDI_EventInfoType* pEventData
2047);
2048
2049
2050/**
2051 @brief Process Get Stats Request function (called when Main FSM
2052 allows it)
2053
2054 @param pWDICtx: pointer to the WLAN DAL context
2055 pEventData: pointer to the event information structure
2056
2057 @see
2058 @return Result of the function call
2059*/
2060WDI_Status
2061WDI_ProcessGetStatsReq
2062(
2063 WDI_ControlBlockType* pWDICtx,
2064 WDI_EventInfoType* pEventData
2065);
2066
Srinivas Girigowdad34cedb2013-01-25 13:33:11 -08002067#if defined WLAN_FEATURE_VOWIFI_11R || defined FEATURE_WLAN_CCX || defined(FEATURE_WLAN_LFR)
2068/**
2069 @brief Process Get Roam rssi Request function (called when Main FSM
2070 allows it)
2071
2072 @param pWDICtx: pointer to the WLAN DAL context
2073 pEventData: pointer to the event information structure
2074
2075 @see
2076 @return Result of the function call
2077*/
2078WDI_Status
2079WDI_ProcessGetRoamRssiReq
2080(
2081 WDI_ControlBlockType* pWDICtx,
2082 WDI_EventInfoType* pEventData
2083);
2084
2085
2086/**
2087 @brief Process Get Roam Rssi Rsp function (called when a response is
2088 being received over the bus from HAL)
2089
2090 @param pWDICtx: pointer to the WLAN DAL context
2091 pEventData: pointer to the event information structure
2092
2093 @see
2094 @return Result of the function call
2095*/
2096WDI_Status
2097WDI_ProcessGetRoamRssiRsp
2098(
2099 WDI_ControlBlockType* pWDICtx,
2100 WDI_EventInfoType* pEventData
2101);
2102
2103#endif
2104
2105
Jeff Johnson295189b2012-06-20 16:38:30 -07002106/**
2107 @brief Process Update Cfg Request function (called when Main
2108 FSM allows it)
2109
2110 @param pWDICtx: pointer to the WLAN DAL context
2111 pEventData: pointer to the event information structure
2112
2113 @see
2114 @return Result of the function call
2115*/
2116WDI_Status
2117WDI_ProcessUpdateCfgReq
2118(
2119 WDI_ControlBlockType* pWDICtx,
2120 WDI_EventInfoType* pEventData
2121);
2122
2123/**
2124 @brief Process Add BA Request function (called when Main FSM
2125 allows it)
2126
2127 @param pWDICtx: pointer to the WLAN DAL context
2128 pEventData: pointer to the event information structure
2129
2130 @see
2131 @return Result of the function call
2132*/
2133WDI_Status
2134WDI_ProcessAddBAReq
2135(
2136 WDI_ControlBlockType* pWDICtx,
2137 WDI_EventInfoType* pEventData
2138);
2139
2140/**
2141 @brief Process Trigger BA Request function (called when Main FSM
2142 allows it)
2143
2144 @param pWDICtx: pointer to the WLAN DAL context
2145 pEventData: pointer to the event information structure
2146
2147 @see
2148 @return Result of the function call
2149*/
2150WDI_Status
2151WDI_ProcessTriggerBAReq
2152(
2153 WDI_ControlBlockType* pWDICtx,
2154 WDI_EventInfoType* pEventData
2155);
2156
2157/**
2158 @brief Process Update Beacon Params Request function (called when Main
2159 FSM allows it)
2160
2161 @param pWDICtx: pointer to the WLAN DAL context
2162 pEventData: pointer to the event information structure
2163
2164 @see
2165 @return Result of the function call
2166*/
2167WDI_Status
2168WDI_ProcessUpdateBeaconParamsReq
2169(
2170 WDI_ControlBlockType* pWDICtx,
2171 WDI_EventInfoType* pEventData
2172);
2173
2174/**
2175 @brief Process Update Beacon template Request function (called when Main
2176 FSM allows it)
2177
2178 @param pWDICtx: pointer to the WLAN DAL context
2179 pEventData: pointer to the event information structure
2180
2181 @see
2182 @return Result of the function call
2183*/
2184WDI_Status
2185WDI_ProcessSendBeaconParamsReq
2186(
2187 WDI_ControlBlockType* pWDICtx,
2188 WDI_EventInfoType* pEventData
2189);
2190
2191/**
2192 @brief Process Update Beacon Params Request function (called when Main FSM
2193 allows it)
2194
2195 @param pWDICtx: pointer to the WLAN DAL context
2196 pEventData: pointer to the event information structure
2197
2198 @see
2199 @return Result of the function call
2200*/
2201WDI_Status
2202WDI_ProcessUpdateProbeRspTemplateReq
2203(
2204 WDI_ControlBlockType* pWDICtx,
2205 WDI_EventInfoType* pEventData
2206);
2207/**
2208 @brief Process NV blob download function (called when Main FSM
2209 allows it)
2210
2211 @param pWDICtx: pointer to the WLAN DAL context
2212 pEventData: pointer to the event information structure
2213
2214 @see
2215 @return Result of the function call
2216*/
2217WDI_Status
2218WDI_ProcessNvDownloadReq
2219(
2220 WDI_ControlBlockType* pWDICtx,
2221 WDI_EventInfoType* pEventData
2222);
2223
2224/**
2225 @brief Process Set Max Tx Power Request function (called when Main
2226 FSM allows it)
2227
2228 @param pWDICtx: pointer to the WLAN DAL context
2229 pEventData: pointer to the event information structure
2230
2231 @see
2232 @return Result of the function call
2233*/
2234WDI_Status WDI_ProcessSetMaxTxPowerReq
2235(
2236 WDI_ControlBlockType* pWDICtx,
2237 WDI_EventInfoType* pEventData
2238);
2239
Jeff Johnson295189b2012-06-20 16:38:30 -07002240/**
Arif Hussaina5ebce02013-08-09 15:09:58 -07002241 @brief Process Set Max Tx Power Per Band Request function (called when Main
2242 FSM allows it)
2243
2244 @param pWDICtx: pointer to the WLAN DAL context
2245 pEventData: pointer to the event information structure
2246
2247 @see
2248 @return Result of the function call
2249*/
2250WDI_Status WDI_ProcessSetMaxTxPowerPerBandReq
2251(
2252 WDI_ControlBlockType* pWDICtx,
2253 WDI_EventInfoType* pEventData
2254);
2255
2256/**
schang86c22c42013-03-13 18:41:24 -07002257 @brief Process Set Tx Power Request function (called when Main
2258 FSM allows it)
2259
2260 @param pWDICtx: pointer to the WLAN DAL context
2261 pEventData: pointer to the event information structure
2262
2263 @see
2264 @return Result of the function call
2265*/
2266WDI_Status WDI_ProcessSetTxPowerReq
2267(
2268 WDI_ControlBlockType* pWDICtx,
2269 WDI_EventInfoType* pEventData
2270);
2271
2272/**
Jeff Johnson295189b2012-06-20 16:38:30 -07002273 @brief Process P2P Notice Of Absence 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_ProcessP2PGONOAReq
2284(
2285 WDI_ControlBlockType* pWDICtx,
2286 WDI_EventInfoType* pEventData
2287);
Jeff Johnson295189b2012-06-20 16:38:30 -07002288
2289/**
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05302290 @brief Process TDLS Link Establish Request function (called when Main FSM
2291 allows it)
2292
2293 @param pWDICtx: pointer to the WLAN DAL context
2294 pEventData: pointer to the event information structure
2295
2296 @see
2297 @return Result of the function call
2298*/
2299WDI_Status
2300WDI_ProcessTdlsLinkEstablishReq
2301(
2302 WDI_ControlBlockType* pWDICtx,
2303 WDI_EventInfoType* pEventData
2304);
2305
2306/**
Jeff Johnson295189b2012-06-20 16:38:30 -07002307 @brief Process Enter IMPS Request function (called when
2308 Main FSM allows it)
2309
2310 @param pWDICtx: pointer to the WLAN DAL context
2311 pEventData: pointer to the event information structure
2312
2313 @see
2314 @return Result of the function call
2315*/
2316WDI_Status
2317WDI_ProcessEnterImpsReq
2318(
2319 WDI_ControlBlockType* pWDICtx,
2320 WDI_EventInfoType* pEventData
2321);
2322
2323/**
2324 @brief Process Exit IMPS Request function (called when
2325 Main FSM allows it)
2326
2327 @param pWDICtx: pointer to the WLAN DAL context
2328 pEventData: pointer to the event information structure
2329
2330 @see
2331 @return Result of the function call
2332*/
2333WDI_Status
2334WDI_ProcessExitImpsReq
2335(
2336 WDI_ControlBlockType* pWDICtx,
2337 WDI_EventInfoType* pEventData
2338);
2339
2340/**
2341 @brief Process Enter BMPS Request function (called when Main
2342 FSM allows it)
2343
2344 @param pWDICtx: pointer to the WLAN DAL context
2345 pEventData: pointer to the event information structure
2346
2347 @see
2348 @return Result of the function call
2349*/
2350WDI_Status
2351WDI_ProcessEnterBmpsReq
2352(
2353 WDI_ControlBlockType* pWDICtx,
2354 WDI_EventInfoType* pEventData
2355);
2356
2357/**
2358 @brief Process Exit BMPS Request function (called when Main FSM
2359 allows it)
2360
2361 @param pWDICtx: pointer to the WLAN DAL context
2362 pEventData: pointer to the event information structure
2363
2364 @see
2365 @return Result of the function call
2366*/
2367WDI_Status
2368WDI_ProcessExitBmpsReq
2369(
2370 WDI_ControlBlockType* pWDICtx,
2371 WDI_EventInfoType* pEventData
2372);
2373
2374/**
2375 @brief Process Enter UAPSD Request function (called when Main
2376 FSM allows it)
2377
2378 @param pWDICtx: pointer to the WLAN DAL context
2379 pEventData: pointer to the event information structure
2380
2381 @see
2382 @return Result of the function call
2383*/
2384WDI_Status
2385WDI_ProcessEnterUapsdReq
2386(
2387 WDI_ControlBlockType* pWDICtx,
2388 WDI_EventInfoType* pEventData
2389);
2390
2391/**
2392 @brief Process Exit UAPSD Request function (called when
2393 Main FSM allows it)
2394
2395 @param pWDICtx: pointer to the WLAN DAL context
2396 pEventData: pointer to the event information structure
2397
2398 @see
2399 @return Result of the function call
2400*/
2401WDI_Status
2402WDI_ProcessExitUapsdReq
2403(
2404 WDI_ControlBlockType* pWDICtx,
2405 WDI_EventInfoType* pEventData
2406);
2407
2408/**
2409 @brief Process Set UAPSD params Request function (called when
2410 Main FSM allows it)
2411
2412 @param pWDICtx: pointer to the WLAN DAL context
2413 pEventData: pointer to the event information structure
2414
2415 @see
2416 @return Result of the function call
2417*/
2418WDI_Status
2419WDI_ProcessSetUapsdAcParamsReq
2420(
2421 WDI_ControlBlockType* pWDICtx,
2422 WDI_EventInfoType* pEventData
2423);
2424
2425/**
2426 @brief Process update UAPSD params Request function (called
2427 when Main FSM allows it)
2428
2429 @param pWDICtx: pointer to the WLAN DAL context
2430 pEventData: pointer to the event information structure
2431
2432 @see
2433 @return Result of the function call
2434*/
2435WDI_Status
2436WDI_ProcessUpdateUapsdParamsReq
2437(
2438 WDI_ControlBlockType* pWDICtx,
2439 WDI_EventInfoType* pEventData
2440);
2441
2442/**
2443 @brief Process Configure RXP filter Request function (called
2444 when Main FSM allows it)
2445
2446 @param pWDICtx: pointer to the WLAN DAL context
2447 pEventData: pointer to the event information structure
2448
2449 @see
2450 @return Result of the function call
2451*/
2452WDI_Status
2453WDI_ProcessConfigureRxpFilterReq
2454(
2455 WDI_ControlBlockType* pWDICtx,
2456 WDI_EventInfoType* pEventData
2457);
2458
2459/**
2460 @brief Process set beacon filter Request function (called
2461 when Main FSM allows it)
2462
2463 @param pWDICtx: pointer to the WLAN DAL context
2464 pEventData: pointer to the event information structure
2465
2466 @see
2467 @return Result of the function call
2468*/
2469WDI_Status
2470WDI_ProcessSetBeaconFilterReq
2471(
2472 WDI_ControlBlockType* pWDICtx,
2473 WDI_EventInfoType* pEventData
2474);
2475
2476/**
2477 @brief Process remove beacon filter Request function (called
2478 when Main FSM allows it)
2479
2480 @param pWDICtx: pointer to the WLAN DAL context
2481 pEventData: pointer to the event information structure
2482
2483 @see
2484 @return Result of the function call
2485*/
2486WDI_Status
2487WDI_ProcessRemBeaconFilterReq
2488(
2489 WDI_ControlBlockType* pWDICtx,
2490 WDI_EventInfoType* pEventData
2491);
2492
2493/**
2494 @brief Process set RSSI thresholds Request function (called
2495 when Main FSM allows it)
2496
2497 @param pWDICtx: pointer to the WLAN DAL context
2498 pEventData: pointer to the event information structure
2499
2500 @see
2501 @return Result of the function call
2502*/
2503WDI_Status
2504WDI_ProcessSetRSSIThresholdsReq
2505(
2506 WDI_ControlBlockType* pWDICtx,
2507 WDI_EventInfoType* pEventData
2508);
2509
2510/**
2511 @brief Process set RSSI thresholds Request function (called
2512 when Main FSM allows it)
2513
2514 @param pWDICtx: pointer to the WLAN DAL context
2515 pEventData: pointer to the event information structure
2516
2517 @see
2518 @return Result of the function call
2519*/
2520WDI_Status
2521WDI_ProcessHostOffloadReq
2522(
2523 WDI_ControlBlockType* pWDICtx,
2524 WDI_EventInfoType* pEventData
2525);
2526
2527/**
2528 @brief Process Keep Alive Request function (called
2529 when Main FSM allows it)
2530
2531 @param pWDICtx: pointer to the WLAN DAL context
2532 pEventData: pointer to the event information structure
2533
2534 @see
2535 @return Result of the function call
2536*/
2537WDI_Status
2538WDI_ProcessKeepAliveReq
2539(
2540 WDI_ControlBlockType* pWDICtx,
2541 WDI_EventInfoType* pEventData
2542);
2543
2544
2545/**
2546 @brief Process Wowl add bc ptrn Request function (called
2547 when Main FSM allows it)
2548
2549 @param pWDICtx: pointer to the WLAN DAL context
2550 pEventData: pointer to the event information structure
2551
2552 @see
2553 @return Result of the function call
2554*/
2555WDI_Status
2556WDI_ProcessWowlAddBcPtrnReq
2557(
2558 WDI_ControlBlockType* pWDICtx,
2559 WDI_EventInfoType* pEventData
2560);
2561
2562/**
2563 @brief Process Wowl delete bc ptrn Request function (called
2564 when Main FSM allows it)
2565
2566 @param pWDICtx: pointer to the WLAN DAL context
2567 pEventData: pointer to the event information structure
2568
2569 @see
2570 @return Result of the function call
2571*/
2572WDI_Status
2573WDI_ProcessWowlDelBcPtrnReq
2574(
2575 WDI_ControlBlockType* pWDICtx,
2576 WDI_EventInfoType* pEventData
2577);
2578
2579/**
2580 @brief Process Wowl enter Request function (called
2581 when Main FSM allows it)
2582
2583 @param pWDICtx: pointer to the WLAN DAL context
2584 pEventData: pointer to the event information structure
2585
2586 @see
2587 @return Result of the function call
2588*/
2589WDI_Status
2590WDI_ProcessWowlEnterReq
2591(
2592 WDI_ControlBlockType* pWDICtx,
2593 WDI_EventInfoType* pEventData
2594);
2595
2596/**
2597 @brief Process Wowl exit Request function (called when Main FSM
2598 allows it)
2599
2600 @param pWDICtx: pointer to the WLAN DAL context
2601 pEventData: pointer to the event information structure
2602
2603 @see
2604 @return Result of the function call
2605*/
2606WDI_Status
2607WDI_ProcessWowlExitReq
2608(
2609 WDI_ControlBlockType* pWDICtx,
2610 WDI_EventInfoType* pEventData
2611);
2612
2613/**
2614 @brief Process Configure Apps Cpu Wakeup State Request function
2615 (called when Main FSM allows it)
2616
2617 @param pWDICtx: pointer to the WLAN DAL context
2618 pEventData: pointer to the event information structure
2619
2620 @see
2621 @return Result of the function call
2622*/
2623WDI_Status
2624WDI_ProcessConfigureAppsCpuWakeupStateReq
2625(
2626 WDI_ControlBlockType* pWDICtx,
2627 WDI_EventInfoType* pEventData
2628);
2629
2630/**
2631 @brief Process Flush AC Request function (called when Main FSM
2632 allows it)
2633
2634 @param pWDICtx: pointer to the WLAN DAL context
2635 pEventData: pointer to the event information structure
2636
2637 @see
2638 @return Result of the function call
2639*/
2640WDI_Status
2641WDI_ProcessFlushAcReq
2642(
2643 WDI_ControlBlockType* pWDICtx,
2644 WDI_EventInfoType* pEventData
2645);
2646
Jeff Johnsone7245742012-09-05 17:12:55 -07002647#ifdef FEATURE_OEM_DATA_SUPPORT
2648/**
2649 @brief Process Start Oem Data Request function (called when Main
2650 FSM allows it)
2651
2652 @param pWDICtx: pointer to the WLAN DAL context
2653 pEventData: pointer to the event information structure
2654
2655 @see
2656 @return Result of the function call
2657*/
2658WDI_Status
2659WDI_ProcessStartOemDataReq
2660(
2661 WDI_ControlBlockType* pWDICtx,
2662 WDI_EventInfoType* pEventData
2663);
2664#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07002665
2666/**
2667 @brief Process Host Resume Request function (called when Main
2668 FSM allows it)
2669
2670 @param pWDICtx: pointer to the WLAN DAL context
2671 pEventData: pointer to the event information structure
2672
2673 @see
2674 @return Result of the function call
2675*/
2676WDI_Status
2677WDI_ProcessHostResumeReq
2678(
2679 WDI_ControlBlockType* pWDICtx,
2680 WDI_EventInfoType* pEventData
2681);
2682
2683/**
2684 @brief Process BT AMP event Request function (called when Main
2685 FSM allows it)
2686
2687 @param pWDICtx: pointer to the WLAN DAL context
2688 pEventData: pointer to the event information structure
2689
2690 @see
2691 @return Result of the function call
2692*/
2693WDI_Status
2694WDI_ProcessBtAmpEventReq
2695(
2696 WDI_ControlBlockType* pWDICtx,
2697 WDI_EventInfoType* pEventData
2698);
2699
2700/**
2701 @brief Process Add STA self Request function (called when Main FSM
2702 allows it)
2703
2704 @param pWDICtx: pointer to the WLAN DAL context
2705 pEventData: pointer to the event information structure
2706
2707 @see
2708 @return Result of the function call
2709*/
2710WDI_Status
2711WDI_ProcessAddSTASelfReq
2712(
2713 WDI_ControlBlockType* pWDICtx,
2714 WDI_EventInfoType* pEventData
2715);
2716
2717/**
2718 @brief Process Del Sta Self Request function (called when Main
2719 FSM allows it)
2720
2721 @param pWDICtx: pointer to the WLAN DAL context
2722 pEventData: pointer to the event information structure
2723
2724 @see
2725 @return Result of the function call
2726*/
2727WDI_Status
2728WDI_ProcessDelSTASelfReq
2729(
2730 WDI_ControlBlockType* pWDICtx,
2731 WDI_EventInfoType* pEventData
2732);
2733
2734/**
2735 @brief Process set Tx Per Tracking configurations Request function (called
2736 when Main FSM allows it)
2737
2738 @param pWDICtx: pointer to the WLAN DAL context
2739 pEventData: pointer to the event information structure
2740
2741 @see
2742 @return Result of the function call
2743*/
2744WDI_Status
2745WDI_ProcessSetTxPerTrackingReq
2746(
2747 WDI_ControlBlockType* pWDICtx,
2748 WDI_EventInfoType* pEventData
2749);
2750
2751/**
2752 @brief Process Set Power Params Request function
2753
2754 @param pWDICtx: pointer to the WLAN DAL context
2755 pEventData: pointer to the event information structure
2756
2757 @see
2758 @return Result of the function call
2759*/
2760WDI_Status
2761WDI_ProcessSetPowerParamsReq
2762(
2763 WDI_ControlBlockType* pWDICtx,
2764 WDI_EventInfoType* pEventData
2765);
2766
2767/**
2768 @brief Process Set Thermal Mitigation level Changed request
2769
2770 @param pWDICtx: pointer to the WLAN DAL context
2771 pEventData: pointer to the event information structure
2772
2773 @see
2774 @return Result of the function call
2775*/
2776WDI_Status
2777WDI_ProcessSetTmLevelReq
2778(
2779 WDI_ControlBlockType* pWDICtx,
2780 WDI_EventInfoType* pEventData
2781);
2782
Leo Chang9056f462013-08-01 19:21:11 -07002783#ifdef FEATURE_WLAN_LPHB
2784/**
2785 @brief WDI_ProcessLPHBConfReq -
2786 LPHB configuration request to FW
2787
2788 @param pWDICtx : wdi context
2789 pEventData : indication data
2790
2791 @see
2792 @return esult of the function call
2793*/
2794WDI_Status WDI_ProcessLPHBConfReq
2795(
2796 WDI_ControlBlockType* pWDICtx,
2797 WDI_EventInfoType* pEventData
2798);
2799#endif /* FEATURE_WLAN_LPHB */
2800
Rajeev79dbe4c2013-10-05 11:03:42 +05302801#ifdef FEATURE_WLAN_BATCH_SCAN
2802/**
2803 @brief WDI_ProcessSetBatchScanReq -
2804 Send set batch scan configuration request to FW
2805
2806 @param pWDICtx : wdi context
2807 pEventData : indication data
2808
2809 @see
2810 @return success or failure
2811*/
2812WDI_Status WDI_ProcessSetBatchScanReq
2813(
2814 WDI_ControlBlockType* pWDICtx,
2815 WDI_EventInfoType* pEventData
2816);
2817
2818/**
2819 @brief WDI_ProcessGetBatchScanReq -
2820 Send get batch scan request to FW
2821
2822 @param pWDICtx : wdi context
2823 pEventData : indication data
2824
2825 @see
2826 @return success or failure
2827*/
2828WDI_Status WDI_ProcessGetBatchScanReq
2829(
2830 WDI_ControlBlockType* pWDICtx,
2831 WDI_EventInfoType* pEventData
2832);
2833#endif /* FEATURE_WLAN_BATCH_SCAN */
2834
2835
Jeff Johnson295189b2012-06-20 16:38:30 -07002836/*=========================================================================
2837 Indications
2838=========================================================================*/
2839
2840/**
2841 @brief Process Suspend Indications function (called when Main FSM allows it)
2842
2843 @param pWDICtx: pointer to the WLAN DAL context
2844 pEventData: pointer to the event information structure
2845
2846 @see
2847 @return Result of the function call
2848*/
2849WDI_Status
2850WDI_ProcessHostSuspendInd
2851(
2852 WDI_ControlBlockType* pWDICtx,
2853 WDI_EventInfoType* pEventData
2854);
2855
Sundaresan Ramachandran76e48e82013-07-15 13:07:17 +05302856/**
2857 @brief DHCP Start Event Indication
2858
2859 @param pWDICtx: pointer to the WLAN DAL context
2860 pEventData: pointer to the event information structure
2861
2862 @see
2863 @return Result of the function call
2864*/
2865WDI_Status
2866WDI_ProcessDHCPStartInd
2867(
2868 WDI_ControlBlockType* pWDICtx,
2869 WDI_EventInfoType* pEventData
2870);
2871
2872/**
2873 @brief DHCP Stop Event Indication
2874
2875 @param pWDICtx: pointer to the WLAN DAL context
2876 pEventData: pointer to the event information structure
2877
2878 @see
2879 @return Result of the function call
2880*/
2881WDI_Status
2882WDI_ProcessDHCPStopInd
2883(
2884 WDI_ControlBlockType* pWDICtx,
2885 WDI_EventInfoType* pEventData
2886);
2887
Jeff Johnson295189b2012-06-20 16:38:30 -07002888
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08002889/**
2890 @brief Process Traffic Stats Indications function (called when Main FSM allows it)
2891
2892 @param pWDICtx: pointer to the WLAN DAL context
2893 pEventData: pointer to the event information structure
2894
2895 @see
2896 @return Result of the function call
2897*/
2898WDI_Status
2899WDI_ProcessTrafficStatsInd
2900(
2901 WDI_ControlBlockType* pWDICtx,
2902 WDI_EventInfoType* pEventData
2903);
Chet Lanctot186b5732013-03-18 10:26:30 -07002904
2905#ifdef WLAN_FEATURE_11W
2906/**
2907 @brief Process Exclude Unencrypted Indications function (called
2908 when Main FSM allows it)
2909
2910 @param pWDICtx: pointer to the WLAN DAL context
2911 pEventData: pointer to the event information structure
2912
2913 @see
2914 @return Result of the function call
2915*/
2916WDI_Status
2917WDI_ProcessExcludeUnencryptInd
2918(
2919 WDI_ControlBlockType* pWDICtx,
2920 WDI_EventInfoType* pEventData
2921);
2922#endif
2923
Yue Mab9c86f42013-08-14 15:59:08 -07002924/**
2925 @brief Process Add Periodic Tx Pattern Indication function (called when
2926 Main FSM allows it)
2927
2928 @param pWDICtx: pointer to the WLAN DAL context
2929 pEventData: pointer to the event information structure
2930
2931 @see
2932 @return Result of the function call
2933*/
2934WDI_Status
2935WDI_ProcessAddPeriodicTxPtrnInd
2936(
2937 WDI_ControlBlockType* pWDICtx,
2938 WDI_EventInfoType* pEventData
2939);
2940
2941/**
2942 @brief Process Delete Periodic Tx Pattern Indication function (called when
2943 Main FSM allows it)
2944
2945 @param pWDICtx: pointer to the WLAN DAL context
2946 pEventData: pointer to the event information structure
2947
2948 @see
2949 @return Result of the function call
2950*/
2951WDI_Status
2952WDI_ProcessDelPeriodicTxPtrnInd
2953(
2954 WDI_ControlBlockType* pWDICtx,
2955 WDI_EventInfoType* pEventData
2956);
2957
Rajeev79dbe4c2013-10-05 11:03:42 +05302958#ifdef FEATURE_WLAN_BATCH_SCAN
2959/**
2960 @brief Process stop batch scan indications function
2961 It is called when Main FSM allows it
2962
2963 @param pWDICtx: pointer to the WLAN DAL context
2964 pEventData: pointer to the event information structure
2965
2966 @see
2967 @return Result of the function call
2968 */
2969 WDI_Status
2970 WDI_ProcessStopBatchScanInd
2971 (
2972 WDI_ControlBlockType* pWDICtx,
2973 WDI_EventInfoType* pEventData
2974 );
2975
2976/**
2977 @brief This API is called to trigger batch scan results from FW
2978 It is called when Main FSM allows it
2979
2980 @param pWDICtx: pointer to the WLAN DAL context
2981 pEventData: pointer to the event information structure
2982
2983 @see
2984 @return Result of the function call
2985 */
2986 WDI_Status
2987 WDI_ProcessTriggerBatchScanResultInd
2988 (
2989 WDI_ControlBlockType* pWDICtx,
2990 WDI_EventInfoType* pEventData
2991 );
2992
2993#endif
Sandeep Puligilla8b8b74b2014-02-10 16:39:05 +05302994/**
2995 @brief Process start OBSS scan request from Host
2996
2997 @param pWDICtx: pointer to the WLAN DAL context
2998 pEventData: pointer to the event information structure
2999
3000 @see
3001 @return Result of the function call
3002*/
3003WDI_Status
3004WDI_ProcessHT40OBSSScanInd(
3005 WDI_ControlBlockType* pWDICtx, WDI_EventInfoType* pEventData );
3006
3007
3008/**
3009 @brief Process stop OBSS scan request from Host
3010
3011 @param pWDICtx: pointer to the WLAN DAL context
3012 pEventData: pointer to the event information structure
3013
3014 @see
3015 @return Result of the function call
3016*/
3017WDI_Status
3018WDI_ProcessHT40OBSSStopScanInd(
3019 WDI_ControlBlockType* pWDICtx, WDI_EventInfoType* pEventData );
Rajeev79dbe4c2013-10-05 11:03:42 +05303020
Jeff Johnson295189b2012-06-20 16:38:30 -07003021/*========================================================================
3022 Main DAL Control Path Response Processing API
3023========================================================================*/
3024
3025
3026/**
3027 @brief Process Start Response function (called when a response
3028 is being received over the bus from HAL)
3029
3030 @param pWDICtx: pointer to the WLAN DAL context
3031 pEventData: pointer to the event information structure
3032
3033 @see
3034 @return Result of the function call
3035*/
3036WDI_Status
3037WDI_ProcessStartRsp
3038(
3039 WDI_ControlBlockType* pWDICtx,
3040 WDI_EventInfoType* pEventData
3041);
3042
3043
3044/**
3045 @brief Process Stop Response function (called when a response
3046 is being received over the bus from HAL)
3047
3048 @param pWDICtx: pointer to the WLAN DAL context
3049 pEventData: pointer to the event information structure
3050
3051 @see
3052 @return Result of the function call
3053*/
3054WDI_Status
3055WDI_ProcessStopRsp
3056(
3057 WDI_ControlBlockType* pWDICtx,
3058 WDI_EventInfoType* pEventData
3059);
3060
3061
3062/**
3063 @brief Process Close Rsp function (called when a response
3064 is being received over the bus from HAL)
3065
3066 @param pWDICtx: pointer to the WLAN DAL context
3067 pEventData: pointer to the event information structure
3068
3069 @see
3070 @return Result of the function call
3071*/
3072WDI_Status
3073WDI_ProcessCloseRsp
3074(
3075 WDI_ControlBlockType* pWDICtx,
3076 WDI_EventInfoType* pEventData
3077);
3078
3079/**
3080 @brief Process Shutdown Rsp function
3081 There is no shutdown response comming from HAL
3082 - function just kept for simmetry
3083
3084 @param pWDICtx: pointer to the WLAN DAL context
3085 pEventData: pointer to the event information structure
3086
3087 @see
3088 @return Result of the function call
3089*/
3090WDI_Status
3091WDI_ProcessShutdownRsp
3092(
3093 WDI_ControlBlockType* pWDICtx,
3094 WDI_EventInfoType* pEventData
3095);
3096
3097/**
3098 @brief Process Init Scan Rsp function (called when a response
3099 is being received over the bus from HAL)
3100
3101 @param pWDICtx: pointer to the WLAN DAL context
3102 pEventData: pointer to the event information structure
3103
3104 @see
3105 @return Result of the function call
3106*/
3107WDI_Status
3108WDI_ProcessInitScanRsp
3109(
3110 WDI_ControlBlockType* pWDICtx,
3111 WDI_EventInfoType* pEventData
3112);
3113
3114
3115/**
3116 @brief Process Start Scan Rsp function (called when a response
3117 is being received over the bus from HAL)
3118
3119 @param pWDICtx: pointer to the WLAN DAL context
3120 pEventData: pointer to the event information structure
3121
3122 @see
3123 @return Result of the function call
3124*/
3125WDI_Status
3126WDI_ProcessStartScanRsp
3127(
3128 WDI_ControlBlockType* pWDICtx,
3129 WDI_EventInfoType* pEventData
3130);
3131
3132
3133/**
3134 @brief Process End Scan Response function (called when a
3135 response is being received over the bus from HAL)
3136
3137 @param pWDICtx: pointer to the WLAN DAL context
3138 pEventData: pointer to the event information structure
3139
3140 @see
3141 @return Result of the function call
3142*/
3143WDI_Status
3144WDI_ProcessEndScanRsp
3145(
3146 WDI_ControlBlockType* pWDICtx,
3147 WDI_EventInfoType* pEventData
3148);
3149
3150
3151/**
3152 @brief Process Finish Scan Response function (called when a
3153 response is being received over the bus from HAL)
3154
3155 @param pWDICtx: pointer to the WLAN DAL context
3156 pEventData: pointer to the event information structure
3157
3158 @see
3159 @return Result of the function call
3160*/
3161WDI_Status
3162WDI_ProcessFinishScanRsp
3163(
3164 WDI_ControlBlockType* pWDICtx,
3165 WDI_EventInfoType* pEventData
3166);
3167
3168
3169/**
3170 @brief Process Join Response function (called when a response
3171 is being received over the bus from HAL)
3172
3173 @param pWDICtx: pointer to the WLAN DAL context
3174 pEventData: pointer to the event information structure
3175
3176 @see
3177 @return Result of the function call
3178*/
3179WDI_Status
3180WDI_ProcessJoinRsp
3181(
3182 WDI_ControlBlockType* pWDICtx,
3183 WDI_EventInfoType* pEventData
3184);
3185
3186
3187/**
3188 @brief Process Config BSS Response function (called when a
3189 response is being received over the bus from HAL)
3190
3191 @param pWDICtx: pointer to the WLAN DAL context
3192 pEventData: pointer to the event information structure
3193
3194 @see
3195 @return Result of the function call
3196*/
3197WDI_Status
3198WDI_ProcessConfigBSSRsp
3199(
3200 WDI_ControlBlockType* pWDICtx,
3201 WDI_EventInfoType* pEventData
3202);
3203
3204
3205/**
3206 @brief Process Del BSS Response function (called when a response
3207 is being received over the bus from HAL)
3208
3209 @param pWDICtx: pointer to the WLAN DAL context
3210 pEventData: pointer to the event information structure
3211
3212 @see
3213 @return Result of the function call
3214*/
3215WDI_Status
3216WDI_ProcessDelBSSRsp
3217(
3218 WDI_ControlBlockType* pWDICtx,
3219 WDI_EventInfoType* pEventData
3220);
3221
3222/**
3223 @brief Process Post Assoc Rsp function (called when a response
3224 is being received over the bus from HAL)
3225
3226 @param pWDICtx: pointer to the WLAN DAL context
3227 pEventData: pointer to the event information structure
3228
3229 @see
3230 @return Result of the function call
3231*/
3232WDI_Status
3233WDI_ProcessPostAssocRsp
3234(
3235 WDI_ControlBlockType* pWDICtx,
3236 WDI_EventInfoType* pEventData
3237);
3238
3239/**
3240 @brief Process Del STA Key Rsp function (called when a response
3241 is being received over the bus from HAL)
3242
3243 @param pWDICtx: pointer to the WLAN DAL context
3244 pEventData: pointer to the event information structure
3245
3246 @see
3247 @return Result of the function call
3248*/
3249WDI_Status
3250WDI_ProcessDelSTARsp
3251(
3252 WDI_ControlBlockType* pWDICtx,
3253 WDI_EventInfoType* pEventData
3254);
3255
3256/**
3257 @brief Process Set BSS Key Rsp function (called when a response
3258 is being received over the bus from HAL)
3259
3260 @param pWDICtx: pointer to the WLAN DAL context
3261 pEventData: pointer to the event information structure
3262
3263 @see
3264 @return Result of the function call
3265*/
3266WDI_Status
3267WDI_ProcessSetBssKeyRsp
3268(
3269 WDI_ControlBlockType* pWDICtx,
3270 WDI_EventInfoType* pEventData
3271);
3272
3273/**
3274 @brief Process Remove BSS Key Rsp function (called when a response
3275 is being received over the bus from HAL)
3276
3277 @param pWDICtx: pointer to the WLAN DAL context
3278 pEventData: pointer to the event information structure
3279
3280 @see
3281 @return Result of the function call
3282*/
3283WDI_Status
3284WDI_ProcessRemoveBssKeyRsp
3285(
3286 WDI_ControlBlockType* pWDICtx,
3287 WDI_EventInfoType* pEventData
3288);
3289
3290
3291/**
3292 @brief Process Set STA Key Rsp function (called when a response
3293 is being received over the bus from HAL)
3294
3295 @param pWDICtx: pointer to the WLAN DAL context
3296 pEventData: pointer to the event information structure
3297
3298 @see
3299 @return Result of the function call
3300*/
3301WDI_Status
3302WDI_ProcessSetStaKeyRsp
3303(
3304 WDI_ControlBlockType* pWDICtx,
3305 WDI_EventInfoType* pEventData
3306);
3307
3308/**
3309 @brief Process Remove STA Key Rsp function (called when a
3310 response is being received over the bus from HAL)
3311
3312 @param pWDICtx: pointer to the WLAN DAL context
3313 pEventData: pointer to the event information structure
3314
3315 @see
3316 @return Result of the function call
3317*/
3318WDI_Status
3319WDI_ProcessRemoveStaKeyRsp
3320(
3321 WDI_ControlBlockType* pWDICtx,
3322 WDI_EventInfoType* pEventData
3323);
3324
3325
3326/**
3327 @brief Process Set STA Bcast Key Rsp function (called when a
3328 response is being received over the bus from HAL)
3329
3330 @param pWDICtx: pointer to the WLAN DAL context
3331 pEventData: pointer to the event information structure
3332
3333 @see
3334 @return Result of the function call
3335*/
3336WDI_Status
3337WDI_ProcessSetStaBcastKeyRsp
3338(
3339 WDI_ControlBlockType* pWDICtx,
3340 WDI_EventInfoType* pEventData
3341);
3342
3343/**
3344 @brief Process Remove STA Bcast Key Rsp function (called when a
3345 response is being received over the bus from HAL)
3346
3347 @param pWDICtx: pointer to the WLAN DAL context
3348 pEventData: pointer to the event information structure
3349
3350 @see
3351 @return Result of the function call
3352*/
3353WDI_Status
3354WDI_ProcessRemoveStaBcastKeyRsp
3355(
3356 WDI_ControlBlockType* pWDICtx,
3357 WDI_EventInfoType* pEventData
3358);
3359
3360/**
3361 @brief Process Add TSpec Rsp function (called when a response
3362 is being received over the bus from HAL)
3363
3364 @param pWDICtx: pointer to the WLAN DAL context
3365 pEventData: pointer to the event information structure
3366
3367 @see
3368 @return Result of the function call
3369*/
3370WDI_Status
3371WDI_ProcessAddTSpecRsp
3372(
3373 WDI_ControlBlockType* pWDICtx,
3374 WDI_EventInfoType* pEventData
3375);
3376
3377
3378/**
3379 @brief Process Del TSpec Rsp function (called when a response
3380 is being received over the bus from HAL)
3381
3382 @param pWDICtx: pointer to the WLAN DAL context
3383 pEventData: pointer to the event information structure
3384
3385 @see
3386 @return Result of the function call
3387*/
3388WDI_Status
3389WDI_ProcessDelTSpecRsp
3390(
3391 WDI_ControlBlockType* pWDICtx,
3392 WDI_EventInfoType* pEventData
3393);
3394
3395/**
3396 @brief Process Update EDCA Parameters Rsp function (called when a
3397 response is being received over the bus from HAL)
3398
3399 @param pWDICtx: pointer to the WLAN DAL context
3400 pEventData: pointer to the event information structure
3401
3402 @see
3403 @return Result of the function call
3404*/
3405WDI_Status
3406WDI_ProcessUpdateEDCAParamsRsp
3407(
3408 WDI_ControlBlockType* pWDICtx,
3409 WDI_EventInfoType* pEventData
3410);
3411
3412
3413/**
3414 @brief Process Add BA Rsp function (called when a response
3415 is being received over the bus from HAL)
3416
3417 @param pWDICtx: pointer to the WLAN DAL context
3418 pEventData: pointer to the event information structure
3419
3420 @see
3421 @return Result of the function call
3422*/
3423WDI_Status
3424WDI_ProcessAddBASessionRsp
3425(
3426 WDI_ControlBlockType* pWDICtx,
3427 WDI_EventInfoType* pEventData
3428);
3429
3430
3431/**
3432 @brief Process Del BA Rsp function (called when a response
3433 is being received over the bus from HAL)
3434
3435 @param pWDICtx: pointer to the WLAN DAL context
3436 pEventData: pointer to the event information structure
3437
3438 @see
3439 @return Result of the function call
3440*/
3441WDI_Status
3442WDI_ProcessDelBARsp
3443(
3444 WDI_ControlBlockType* pWDICtx,
3445 WDI_EventInfoType* pEventData
3446);
3447
3448#ifdef FEATURE_WLAN_CCX
3449/**
3450 @brief Process TSM stats Rsp function (called when a response
3451 is being received over the bus from HAL)
3452
3453 @param pWDICtx: pointer to the WLAN DAL context
3454 pEventData: pointer to the event information structure
3455
3456 @see
3457 @return Result of the function call
3458*/
3459WDI_Status
3460WDI_ProcessTsmStatsRsp
3461(
3462 WDI_ControlBlockType* pWDICtx,
3463 WDI_EventInfoType* pEventData
3464);
3465
3466#endif
3467
3468
3469/**
3470 @brief Process Channel Switch Rsp function (called when a response
3471 is being received over the bus from HAL)
3472
3473 @param pWDICtx: pointer to the WLAN DAL context
3474 pEventData: pointer to the event information structure
3475
3476 @see
3477 @return Result of the function call
3478*/
3479WDI_Status
3480WDI_ProcessChannelSwitchRsp
3481(
3482 WDI_ControlBlockType* pWDICtx,
3483 WDI_EventInfoType* pEventData
3484);
3485
3486
3487/**
3488 @brief Process Config STA Rsp function (called when a response
3489 is being received over the bus from HAL)
3490
3491 @param pWDICtx: pointer to the WLAN DAL context
3492 pEventData: pointer to the event information structure
3493
3494 @see
3495 @return Result of the function call
3496*/
3497WDI_Status
3498WDI_ProcessConfigStaRsp
3499(
3500 WDI_ControlBlockType* pWDICtx,
3501 WDI_EventInfoType* pEventData
3502);
3503
3504
3505/**
3506 @brief Process Set Link State Rsp function (called when a
3507 response is being received over the bus from HAL)
3508
3509 @param pWDICtx: pointer to the WLAN DAL context
3510 pEventData: pointer to the event information structure
3511
3512 @see
3513 @return Result of the function call
3514*/
3515WDI_Status
3516WDI_ProcessSetLinkStateRsp
3517(
3518 WDI_ControlBlockType* pWDICtx,
3519 WDI_EventInfoType* pEventData
3520);
3521
3522/**
3523 @brief Process Get Stats Rsp function (called when a response is
3524 being received over the bus from HAL)
3525
3526 @param pWDICtx: pointer to the WLAN DAL context
3527 pEventData: pointer to the event information structure
3528
3529 @see
3530 @return Result of the function call
3531*/
3532WDI_Status
3533WDI_ProcessGetStatsRsp
3534(
3535 WDI_ControlBlockType* pWDICtx,
3536 WDI_EventInfoType* pEventData
3537);
3538
3539
3540/**
3541 @brief Process Update Cfg Rsp function (called when a response is
3542 being received over the bus from HAL)
3543
3544 @param pWDICtx: pointer to the WLAN DAL context
3545 pEventData: pointer to the event information structure
3546
3547 @see
3548 @return Result of the function call
3549*/
3550WDI_Status
3551WDI_ProcessUpdateCfgRsp
3552(
3553 WDI_ControlBlockType* pWDICtx,
3554 WDI_EventInfoType* pEventData
3555);
3556
3557/**
3558 @brief Process Add BA Rsp function (called when a response
3559 is being received over the bus from HAL)
3560
3561 @param pWDICtx: pointer to the WLAN DAL context
3562 pEventData: pointer to the event information structure
3563
3564 @see
3565 @return Result of the function call
3566*/
3567WDI_Status
3568WDI_ProcessAddBARsp
3569(
3570 WDI_ControlBlockType* pWDICtx,
3571 WDI_EventInfoType* pEventData
3572);
3573
3574/**
3575 @brief Process Add BA Rsp function (called when a response
3576 is being received over the bus from HAL)
3577
3578 @param pWDICtx: pointer to the WLAN DAL context
3579 pEventData: pointer to the event information structure
3580
3581 @see
3582 @return Result of the function call
3583*/
3584WDI_Status
3585WDI_ProcessTriggerBARsp
3586(
3587 WDI_ControlBlockType* pWDICtx,
3588 WDI_EventInfoType* pEventData
3589);
3590
3591/**
3592 @brief Process Update Beacon Params Rsp function (called when a response is
3593 being received over the bus from HAL)
3594
3595 @param pWDICtx: pointer to the WLAN DAL context
3596 pEventData: pointer to the event information structure
3597
3598 @see
3599 @return Result of the function call
3600*/
3601WDI_Status
3602WDI_ProcessUpdateBeaconParamsRsp
3603(
3604 WDI_ControlBlockType* pWDICtx,
3605 WDI_EventInfoType* pEventData
3606);
3607
3608/**
3609 @brief Process Send Beacon template Rsp function (called when a response is
3610 being received over the bus from HAL)
3611
3612 @param pWDICtx: pointer to the WLAN DAL context
3613 pEventData: pointer to the event information structure
3614
3615 @see
3616 @return Result of the function call
3617*/
3618WDI_Status
3619WDI_ProcessSendBeaconParamsRsp
3620(
3621 WDI_ControlBlockType* pWDICtx,
3622 WDI_EventInfoType* pEventData
3623);
3624
3625/**
3626 @brief Process Update Probe Resp Template Rsp function (called
3627 when a response is being received over the bus from HAL)
3628
3629 @param pWDICtx: pointer to the WLAN DAL context
3630 pEventData: pointer to the event information structure
3631
3632 @see
3633 @return Result of the function call
3634*/
3635WDI_Status
3636WDI_ProcessUpdateProbeRspTemplateRsp
3637(
3638 WDI_ControlBlockType* pWDICtx,
3639 WDI_EventInfoType* pEventData
3640);
3641 /**
3642 @brief Process Set Max Tx Power Rsp function (called when a response
3643 is being received over the bus from HAL)
3644
3645 @param pWDICtx: pointer to the WLAN DAL context
3646 pEventData: pointer to the event information structure
3647
3648 @see
3649 @return Result of the function call
3650*/
3651WDI_Status
3652WDI_ProcessSetMaxTxPowerRsp
3653(
3654 WDI_ControlBlockType* pWDICtx,
3655 WDI_EventInfoType* pEventData
3656);
3657
Arif Hussain935a8fb2014-01-31 12:12:28 -08003658/**
3659 @brief Process Set Max Tx Power Per Band Rsp function (called when a response
3660 is being received over the bus from HAL)
3661
3662 @param pWDICtx: pointer to the WLAN DAL context
3663 pEventData: pointer to the event information structure
3664
3665 @see
3666 @return Result of the function call
3667*/
3668WDI_Status
3669WDI_ProcessSetMaxTxPowerPerBandRsp
3670(
3671 WDI_ControlBlockType* pWDICtx,
3672 WDI_EventInfoType* pEventData
3673);
3674
schang86c22c42013-03-13 18:41:24 -07003675 /**
3676 @brief Process Set Tx Power Rsp function (called when a response
3677 is being received over the bus from HAL)
3678
3679 @param pWDICtx: pointer to the WLAN DAL context
3680 pEventData: pointer to the event information structure
3681
3682 @see
3683 @return Result of the function call
3684*/
3685WDI_Status
3686WDI_ProcessSetTxPowerRsp
3687(
3688 WDI_ControlBlockType* pWDICtx,
3689 WDI_EventInfoType* pEventData
3690);
3691
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05303692 /**
3693 @brief Process TDLS Link Establish Req Rsp function (called when a response
3694 is being received over the bus from HAL)
3695
3696 @param pWDICtx: pointer to the WLAN DAL context
3697 pEventData: pointer to the event information structure
3698
3699 @see
3700 @return Result of the function call
3701*/
3702WDI_Status
3703WDI_ProcessLinkEstablishReqRsp
3704(
3705 WDI_ControlBlockType* pWDICtx,
3706 WDI_EventInfoType* pEventData
3707);
3708
Jeff Johnson295189b2012-06-20 16:38:30 -07003709/**
3710 @brief Process Nv download(called when a response
3711 is being received over the bus from HAL)
3712
3713 @param pWDICtx: pointer to the WLAN DAL context
3714 pEventData: pointer to the event information structure
3715
3716 @see
3717 @return Result of the function call
3718*/
3719WDI_Status
3720WDI_ProcessNvDownloadRsp
3721(
3722 WDI_ControlBlockType* pWDICtx,
3723 WDI_EventInfoType* pEventData
3724);
3725
Jeff Johnson295189b2012-06-20 16:38:30 -07003726/**
3727 @brief Process P2P Group Owner Notice Of Absense Rsp function (called
3728 when a response is being received over the bus from HAL)
3729
3730 @param pWDICtx: pointer to the WLAN DAL context
3731 pEventData: pointer to the event information structure
3732
3733 @see
3734 @return Result of the function call
3735*/
3736WDI_Status
3737WDI_ProcessP2PGONOARsp
3738(
3739 WDI_ControlBlockType* pWDICtx,
3740 WDI_EventInfoType* pEventData
3741);
Jeff Johnson295189b2012-06-20 16:38:30 -07003742
3743/**
3744 @brief Process Enter IMPS Rsp function (called when a response
3745 is being received over the bus from HAL)
3746
3747 @param pWDICtx: pointer to the WLAN DAL context
3748 pEventData: pointer to the event information structure
3749
3750 @see
3751 @return Result of the function call
3752*/
3753WDI_Status
3754WDI_ProcessEnterImpsRsp
3755(
3756 WDI_ControlBlockType* pWDICtx,
3757 WDI_EventInfoType* pEventData
3758);
3759
3760/**
3761 @brief Process Exit IMPS Rsp function (called when a response
3762 is being received over the bus from HAL)
3763
3764 @param pWDICtx: pointer to the WLAN DAL context
3765 pEventData: pointer to the event information structure
3766
3767 @see
3768 @return Result of the function call
3769*/
3770WDI_Status
3771WDI_ProcessExitImpsRsp
3772(
3773 WDI_ControlBlockType* pWDICtx,
3774 WDI_EventInfoType* pEventData
3775);
3776
3777/**
3778 @brief Process Enter BMPS Rsp function (called when a response
3779 is being received over the bus from HAL)
3780
3781 @param pWDICtx: pointer to the WLAN DAL context
3782 pEventData: pointer to the event information structure
3783
3784 @see
3785 @return Result of the function call
3786*/
3787WDI_Status
3788WDI_ProcessEnterBmpsRsp
3789(
3790 WDI_ControlBlockType* pWDICtx,
3791 WDI_EventInfoType* pEventData
3792);
3793
3794/**
3795 @brief Process Exit BMPS Rsp function (called when a response
3796 is being received over the bus from HAL)
3797
3798 @param pWDICtx: pointer to the WLAN DAL context
3799 pEventData: pointer to the event information structure
3800
3801 @see
3802 @return Result of the function call
3803*/
3804WDI_Status
3805WDI_ProcessExitBmpsRsp
3806(
3807 WDI_ControlBlockType* pWDICtx,
3808 WDI_EventInfoType* pEventData
3809);
3810
3811/**
3812 @brief Process Enter UAPSD Rsp function (called when a response
3813 is being received over the bus from HAL)
3814
3815 @param pWDICtx: pointer to the WLAN DAL context
3816 pEventData: pointer to the event information structure
3817
3818 @see
3819 @return Result of the function call
3820*/
3821WDI_Status
3822WDI_ProcessEnterUapsdRsp
3823(
3824 WDI_ControlBlockType* pWDICtx,
3825 WDI_EventInfoType* pEventData
3826);
3827
3828/**
3829 @brief Process Exit UAPSD Rsp function (called when a response
3830 is being received over the bus from HAL)
3831
3832 @param pWDICtx: pointer to the WLAN DAL context
3833 pEventData: pointer to the event information structure
3834
3835 @see
3836 @return Result of the function call
3837*/
3838WDI_Status
3839WDI_ProcessExitUapsdRsp
3840(
3841 WDI_ControlBlockType* pWDICtx,
3842 WDI_EventInfoType* pEventData
3843);
3844
3845/**
3846 @brief Process set UAPSD params Rsp function (called when a
3847 response is being received over the bus from HAL)
3848
3849 @param pWDICtx: pointer to the WLAN DAL context
3850 pEventData: pointer to the event information structure
3851
3852 @see
3853 @return Result of the function call
3854*/
3855WDI_Status
3856WDI_ProcessSetUapsdAcParamsRsp
3857(
3858 WDI_ControlBlockType* pWDICtx,
3859 WDI_EventInfoType* pEventData
3860);
3861
3862/**
3863 @brief Process update UAPSD params Rsp function (called when a
3864 response is being received over the bus from HAL)
3865
3866 @param pWDICtx: pointer to the WLAN DAL context
3867 pEventData: pointer to the event information structure
3868
3869 @see
3870 @return Result of the function call
3871*/
3872WDI_Status
3873WDI_ProcessUpdateUapsdParamsRsp
3874(
3875 WDI_ControlBlockType* pWDICtx,
3876 WDI_EventInfoType* pEventData
3877);
3878
3879/**
3880 @brief Process Configure RXP filter Rsp function (called when a
3881 response is being received over the bus from HAL)
3882
3883 @param pWDICtx: pointer to the WLAN DAL context
3884 pEventData: pointer to the event information structure
3885
3886 @see
3887 @return Result of the function call
3888*/
3889WDI_Status
3890WDI_ProcessConfigureRxpFilterRsp
3891(
3892 WDI_ControlBlockType* pWDICtx,
3893 WDI_EventInfoType* pEventData
3894);
3895
3896/**
3897 @brief Process Set beacon filter Rsp function (called when a
3898 response is being received over the bus from HAL)
3899
3900 @param pWDICtx: pointer to the WLAN DAL context
3901 pEventData: pointer to the event information structure
3902
3903 @see
3904 @return Result of the function call
3905*/
3906WDI_Status
3907WDI_ProcessSetBeaconFilterRsp
3908(
3909 WDI_ControlBlockType* pWDICtx,
3910 WDI_EventInfoType* pEventData
3911);
3912
3913/**
3914 @brief Process remove beacon filter Rsp function (called when a
3915 response is being received over the bus from HAL)
3916
3917 @param pWDICtx: pointer to the WLAN DAL context
3918 pEventData: pointer to the event information structure
3919
3920 @see
3921 @return Result of the function call
3922*/
3923WDI_Status
3924WDI_ProcessRemBeaconFilterRsp
3925(
3926 WDI_ControlBlockType* pWDICtx,
3927 WDI_EventInfoType* pEventData
3928);
3929
3930/**
3931 @brief Process set RSSI thresholds Rsp function (called when a
3932 response is being received over the bus from HAL)
3933
3934 @param pWDICtx: pointer to the WLAN DAL context
3935 pEventData: pointer to the event information structure
3936
3937 @see
3938 @return Result of the function call
3939*/
3940WDI_Status
3941WDI_ProcessSetRSSIThresoldsRsp
3942(
3943 WDI_ControlBlockType* pWDICtx,
3944 WDI_EventInfoType* pEventData
3945);
3946
3947/**
3948 @brief Process host offload Rsp function (called when a
3949 response is being received over the bus from HAL)
3950
3951 @param pWDICtx: pointer to the WLAN DAL context
3952 pEventData: pointer to the event information structure
3953
3954 @see
3955 @return Result of the function call
3956*/
3957WDI_Status
3958WDI_ProcessHostOffloadRsp
3959(
3960 WDI_ControlBlockType* pWDICtx,
3961 WDI_EventInfoType* pEventData
3962);
3963
3964/**
3965 @brief Process Keep Alive Rsp function (called when a
3966 response is being received over the bus from HAL)
3967
3968 @param pWDICtx: pointer to the WLAN DAL context
3969 pEventData: pointer to the event information structure
3970
3971 @see
3972 @return Result of the function call
3973*/
3974WDI_Status
3975WDI_ProcessKeepAliveRsp
3976(
3977 WDI_ControlBlockType* pWDICtx,
3978 WDI_EventInfoType* pEventData
3979);
3980
3981
3982/**
3983 @brief Process wowl add ptrn Rsp function (called when a
3984 response is being received over the bus from HAL)
3985
3986 @param pWDICtx: pointer to the WLAN DAL context
3987 pEventData: pointer to the event information structure
3988
3989 @see
3990 @return Result of the function call
3991*/
3992WDI_Status
3993WDI_ProcessWowlAddBcPtrnRsp
3994(
3995 WDI_ControlBlockType* pWDICtx,
3996 WDI_EventInfoType* pEventData
3997);
3998
3999/**
4000 @brief Process wowl delete ptrn Rsp function (called when a
4001 response is being received over the bus from HAL)
4002
4003 @param pWDICtx: pointer to the WLAN DAL context
4004 pEventData: pointer to the event information structure
4005
4006 @see
4007 @return Result of the function call
4008*/
4009WDI_Status
4010WDI_ProcessWowlDelBcPtrnRsp
4011(
4012 WDI_ControlBlockType* pWDICtx,
4013 WDI_EventInfoType* pEventData
4014);
4015
4016/**
4017 @brief Process wowl enter Rsp function (called when a response
4018 is being received over the bus from HAL)
4019
4020 @param pWDICtx: pointer to the WLAN DAL context
4021 pEventData: pointer to the event information structure
4022
4023 @see
4024 @return Result of the function call
4025*/
4026WDI_Status
4027WDI_ProcessWowlEnterRsp
4028(
4029 WDI_ControlBlockType* pWDICtx,
4030 WDI_EventInfoType* pEventData
4031);
4032
4033/**
4034 @brief Process wowl exit Rsp function (called when a response
4035 is being received over the bus from HAL)
4036
4037 @param pWDICtx: pointer to the WLAN DAL context
4038 pEventData: pointer to the event information structure
4039
4040 @see
4041 @return Result of the function call
4042*/
4043WDI_Status
4044WDI_ProcessWowlExitRsp
4045(
4046 WDI_ControlBlockType* pWDICtx,
4047 WDI_EventInfoType* pEventData
4048);
4049
4050/**
4051 @brief Process Configure Apps CPU wakeup State Rsp function
4052 (called when a response is being received over the bus
4053 from HAL)
4054
4055 @param pWDICtx: pointer to the WLAN DAL context
4056 pEventData: pointer to the event information structure
4057
4058 @see
4059 @return Result of the function call
4060*/
4061WDI_Status
4062WDI_ProcessConfigureAppsCpuWakeupStateRsp
4063(
4064 WDI_ControlBlockType* pWDICtx,
4065 WDI_EventInfoType* pEventData
4066);
4067/**
4068 @brief Process Flush AC Rsp function (called when a response
4069 is being received over the bus from HAL)
4070
4071 @param pWDICtx: pointer to the WLAN DAL context
4072 pEventData: pointer to the event information structure
4073
4074 @see
4075 @return Result of the function call
4076*/
4077WDI_Status
4078WDI_ProcessFlushAcRsp
4079(
4080 WDI_ControlBlockType* pWDICtx,
4081 WDI_EventInfoType* pEventData
4082);
4083
4084/**
4085 @brief Process BT AMP event Rsp function (called when a
4086 response is being received over the bus from HAL)
4087
4088 @param pWDICtx: pointer to the WLAN DAL context
4089 pEventData: pointer to the event information structure
4090
4091 @see
4092 @return Result of the function call
4093*/
4094WDI_Status
4095WDI_ProcessBtAmpEventRsp
4096(
4097 WDI_ControlBlockType* pWDICtx,
4098 WDI_EventInfoType* pEventData
4099);
4100
4101/**
4102 @brief Process ADD SELF STA Rsp function (called
4103 when a response is being received over the bus from HAL)
4104
4105 @param pWDICtx: pointer to the WLAN DAL context
4106 pEventData: pointer to the event information structure
4107
4108 @see
4109 @return Result of the function call
4110*/
4111WDI_Status
4112WDI_ProcessAddSTASelfRsp
4113(
4114 WDI_ControlBlockType* pWDICtx,
4115 WDI_EventInfoType* pEventData
4116);
4117
4118 /**
4119 @brief WDI_ProcessDelSTASelfRsp function (called when a
4120 response is being received over the bus from HAL)
4121
4122 @param pWDICtx: pointer to the WLAN DAL context
4123 pEventData: pointer to the event information structure
4124
4125 @see
4126 @return Result of the function call
4127*/
4128WDI_Status
4129WDI_ProcessDelSTASelfRsp
4130(
4131 WDI_ControlBlockType* pWDICtx,
4132 WDI_EventInfoType* pEventData
4133);
4134
Jeff Johnsone7245742012-09-05 17:12:55 -07004135#ifdef FEATURE_OEM_DATA_SUPPORT
4136/**
4137 @brief Start Oem Data Rsp function (called when a
4138 response is being received over the bus from HAL)
4139
4140 @param pWDICtx: pointer to the WLAN DAL context
4141 pEventData: pointer to the event information structure
4142
4143 @see
4144 @return Result of the function call
4145*/
4146WDI_Status
4147WDI_ProcessStartOemDataRsp
4148(
4149 WDI_ControlBlockType* pWDICtx,
4150 WDI_EventInfoType* pEventData
4151);
4152#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07004153
4154 /**
4155 @brief WDI_ProcessHostResumeRsp function (called when a
4156 response is being received over the bus from HAL)
4157
4158 @param pWDICtx: pointer to the WLAN DAL context
4159 pEventData: pointer to the event information structure
4160
4161 @see
4162 @return Result of the function call
4163*/
4164WDI_Status
4165WDI_ProcessHostResumeRsp
4166(
4167 WDI_ControlBlockType* pWDICtx,
4168 WDI_EventInfoType* pEventData
4169);
4170
4171/**
4172 @brief Process set tx per tracking Rsp function (called when a
4173 response is being received over the bus from HAL)
4174
4175 @param pWDICtx: pointer to the WLAN DAL context
4176 pEventData: pointer to the event information structure
4177
4178 @see
4179 @return Result of the function call
4180*/
4181WDI_Status
4182WDI_ProcessSetTxPerTrackingRsp
4183(
4184 WDI_ControlBlockType* pWDICtx,
4185 WDI_EventInfoType* pEventData
4186);
4187
4188/**
4189 @brief Process Power Params Rsp function (called when a
4190 response is being received over the bus from HAL)
4191
4192 @param pWDICtx: pointer to the WLAN DAL context
4193 pEventData: pointer to the event information structure
4194
4195 @see
4196 @return Result of the function call
4197*/
4198WDI_Status
4199WDI_ProcessSetPowerParamsRsp
4200(
4201 WDI_ControlBlockType* pWDICtx,
4202 WDI_EventInfoType* pEventData
4203);
4204
4205/**
4206 @brief Process Set TM Level Rsp function (called when a
4207 response is being received over the bus from HAL)
4208
4209 @param pWDICtx: pointer to the WLAN DAL context
4210 pEventData: pointer to the event information structure
4211
4212 @see
4213 @return Result of the function call
4214*/
4215WDI_Status
4216WDI_ProcessSetTmLevelRsp
4217(
4218 WDI_ControlBlockType* pWDICtx,
4219 WDI_EventInfoType* pEventData
4220);
4221
4222/*==========================================================================
4223 Indications from HAL
4224 ==========================================================================*/
4225/**
4226 @brief Process Low RSSI Indication function (called when an
4227 indication of this kind is being received over the bus
4228 from HAL)
4229
4230 @param pWDICtx: pointer to the WLAN DAL context
4231 pEventData: pointer to the event information structure
4232
4233 @see
4234 @return Result of the function call
4235*/
4236WDI_Status
4237WDI_ProcessLowRSSIInd
4238(
4239 WDI_ControlBlockType* pWDICtx,
4240 WDI_EventInfoType* pEventData
4241);
4242
4243/**
4244 @brief Process Missed Beacon Indication function (called when
4245 an indication of this kind is being received over the
4246 bus from HAL)
4247
4248 @param pWDICtx: pointer to the WLAN DAL context
4249 pEventData: pointer to the event information structure
4250
4251 @see
4252 @return Result of the function call
4253*/
4254WDI_Status
4255WDI_ProcessMissedBeaconInd
4256(
4257 WDI_ControlBlockType* pWDICtx,
4258 WDI_EventInfoType* pEventData
4259);
4260
4261
4262/**
4263 @brief Process Unk Addr Frame Indication function (called when
4264 an indication of this kind is being received over the
4265 bus from HAL)
4266
4267 @param pWDICtx: pointer to the WLAN DAL context
4268 pEventData: pointer to the event information structure
4269
4270 @see
4271 @return Result of the function call
4272*/
4273WDI_Status
4274WDI_ProcessUnkAddrFrameInd
4275(
4276 WDI_ControlBlockType* pWDICtx,
4277 WDI_EventInfoType* pEventData
4278);
4279
4280
4281/**
4282 @brief Process MIC Failure Indication function (called when an
4283 indication of this kind is being received over the bus
4284 from HAL)
4285
4286 @param pWDICtx: pointer to the WLAN DAL context
4287 pEventData: pointer to the event information structure
4288
4289 @see
4290 @return Result of the function call
4291*/
4292WDI_Status
4293WDI_ProcessMicFailureInd
4294(
4295 WDI_ControlBlockType* pWDICtx,
4296 WDI_EventInfoType* pEventData
4297);
4298
4299/**
4300 @brief Process Fatal Failure Indication function (called when
4301 an indication of this kind is being received over the
4302 bus from HAL)
4303
4304 @param pWDICtx: pointer to the WLAN DAL context
4305 pEventData: pointer to the event information structure
4306
4307 @see
4308 @return Result of the function call
4309*/
4310WDI_Status
4311WDI_ProcessFatalErrorInd
4312(
4313 WDI_ControlBlockType* pWDICtx,
4314 WDI_EventInfoType* pEventData
4315);
4316
4317/**
4318 @brief Process Delete STA Indication function (called when
4319 an indication of this kind is being received over the
4320 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_ProcessDelSTAInd
4330(
4331 WDI_ControlBlockType* pWDICtx,
4332 WDI_EventInfoType* pEventData
4333);
4334
4335/**
4336*@brief Process Coex Indication function (called when
4337 an indication of this kind is being received over the
4338 bus from HAL)
4339
4340 @param pWDICtx: pointer to the WLAN DAL context
4341 pEventData: pointer to the event information structure
4342
4343 @see
4344 @return Result of the function call
4345*/
4346WDI_Status
4347WDI_ProcessCoexInd
4348(
4349 WDI_ControlBlockType* pWDICtx,
4350 WDI_EventInfoType* pEventData
4351);
4352
4353/**
4354*@brief Process Tx Complete Indication function (called when
4355 an indication of this kind is being received over the
4356 bus from HAL)
4357
4358 @param pWDICtx: pointer to the WLAN DAL context
4359 pEventData: pointer to the event information structure
4360
4361 @see
4362 @return Result of the function call
4363*/
4364WDI_Status
4365WDI_ProcessTxCompleteInd
4366(
4367 WDI_ControlBlockType* pWDICtx,
4368 WDI_EventInfoType* pEventData
4369);
4370
Jeff Johnson295189b2012-06-20 16:38:30 -07004371/**
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304372*@brief Process Tdls Indication function (called when
4373 an indication of this kind is being received over the
4374 bus from HAL)
4375
4376 @param pWDICtx: pointer to the WLAN DAL context
4377 pEventData: pointer to the event information structure
4378
4379 @see
4380 @return Result of the function call
4381*/
4382WDI_Status
4383WDI_ProcessTdlsInd
4384(
4385 WDI_ControlBlockType* pWDICtx,
4386 WDI_EventInfoType* pEventData
4387);
4388
4389/**
Viral Modid86bde22012-12-10 13:09:21 -08004390*@brief Process Noa Start Indication function (called when
4391 an indication of this kind is being received over the
4392 bus from HAL)
4393
4394 @param pWDICtx: pointer to the WLAN DAL context
4395 pEventData: pointer to the event information structure
4396
4397 @see
4398 @return Result of the function call
4399*/
4400WDI_Status
4401WDI_ProcessP2pNoaStartInd
4402(
4403 WDI_ControlBlockType* pWDICtx,
4404 WDI_EventInfoType* pEventData
4405);
4406
4407/**
Jeff Johnson295189b2012-06-20 16:38:30 -07004408*@brief Process Noa Attr Indication function (called when
4409 an indication of this kind is being received over the
4410 bus from HAL)
4411
4412 @param pWDICtx: pointer to the WLAN DAL context
4413 pEventData: pointer to the event information structure
4414
4415 @see
4416 @return Result of the function call
4417*/
4418WDI_Status
4419WDI_ProcessP2pNoaAttrInd
4420(
4421 WDI_ControlBlockType* pWDICtx,
4422 WDI_EventInfoType* pEventData
4423);
Jeff Johnson295189b2012-06-20 16:38:30 -07004424
4425/**
4426*@brief Process Tx Per Hit Indication function (called when
4427 an indication of this kind is being received over the
4428 bus from HAL)
4429
4430 @param pWDICtx: pointer to the WLAN DAL context
4431 pEventData: pointer to the event information structure
4432
4433 @see
4434 @return Result of the function call
4435*/
4436WDI_Status
4437WDI_ProcessTxPerHitInd
4438(
4439 WDI_ControlBlockType* pWDICtx,
4440 WDI_EventInfoType* pEventData
4441);
4442
Leo Chang9056f462013-08-01 19:21:11 -07004443#ifdef FEATURE_WLAN_LPHB
4444/**
Leo Changd9df8aa2013-09-26 13:32:26 -07004445 @brief WDI_ProcessLphbInd -
Leo Chang9056f462013-08-01 19:21:11 -07004446 This function will be invoked when FW detects low power
4447 heart beat failure
4448
4449 @param pWDICtx : wdi context
4450 pEventData : indication data
4451
4452 @see
4453 @return Result of the function call
4454*/
4455WDI_Status
Leo Changd9df8aa2013-09-26 13:32:26 -07004456WDI_ProcessLphbInd
Leo Chang9056f462013-08-01 19:21:11 -07004457(
4458 WDI_ControlBlockType* pWDICtx,
4459 WDI_EventInfoType* pEventData
4460);
4461#endif /* FEATURE_WLAN_LPHB */
4462
Yue Mab9c86f42013-08-14 15:59:08 -07004463/**
4464 @brief Process Periodic Tx Pattern Fw Indication function
4465
4466 @param pWDICtx: pointer to the WLAN DAL context
4467 pEventData: pointer to the event information structure
4468
4469 @see
4470 @return Result of the function call
4471*/
4472WDI_Status
4473WDI_ProcessPeriodicTxPtrnFwInd
4474(
4475 WDI_ControlBlockType* pWDICtx,
4476 WDI_EventInfoType* pEventData
4477);
4478
Jeff Johnson295189b2012-06-20 16:38:30 -07004479#ifdef WLAN_FEATURE_VOWIFI_11R
4480/**
4481 @brief Process Aggrgated Add TSpec Request function (called when Main FSM
4482 allows it)
4483
4484 @param pWDICtx: pointer to the WLAN DAL context
4485 pEventData: pointer to the event information structure
4486
4487 @see
4488 @return Result of the function call
4489*/
4490WDI_Status
4491WDI_ProcessAggrAddTSpecReq
4492(
4493 WDI_ControlBlockType* pWDICtx,
4494 WDI_EventInfoType* pEventData
4495);
4496
4497/**
4498 @brief Process Add TSpec Rsp function (called when a response
4499 is being received over the bus from HAL)
4500
4501 @param pWDICtx: pointer to the WLAN DAL context
4502 pEventData: pointer to the event information structure
4503
4504 @see
4505 @return Result of the function call
4506*/
4507WDI_Status
4508WDI_ProcessAggrAddTSpecRsp
4509(
4510 WDI_ControlBlockType* pWDICtx,
4511 WDI_EventInfoType* pEventData
4512);
4513
4514#endif /* WLAN_FEATURE_VOWIFI_11R */
4515
Jeff Johnson295189b2012-06-20 16:38:30 -07004516/**
4517 @brief WDI_ProcessFTMCommandReq
4518 Process FTM Command, simply route to HAL
4519
4520 @param pWDICtx: pointer to the WLAN DAL context
4521 pEventData: pointer to the event information structure
4522
4523 @see
4524 @return Result of the function call
4525*/
4526WDI_Status
4527WDI_ProcessFTMCommandReq
4528(
4529 WDI_ControlBlockType* pWDICtx,
4530 WDI_EventInfoType* pEventData
4531);
4532
4533/**
4534 @brief WDI_ProcessFTMCommandRsp
4535 Process FTM Command Response from HAL, simply route to HDD FTM
4536
4537 @param pWDICtx: pointer to the WLAN DAL context
4538 pEventData: pointer to the event information structure
4539
4540 @see
4541 @return Result of the function call
4542*/
4543WDI_Status
4544WDI_ProcessFTMCommandRsp
4545(
4546 WDI_ControlBlockType* pWDICtx,
4547 WDI_EventInfoType* pEventData
4548);
Jeff Johnson295189b2012-06-20 16:38:30 -07004549/**
4550 @brief WDI_ProcessHALDumpCmdReq
4551 Process Hal Dump Command, simply route to HAL
4552
4553 @param pWDICtx: pointer to the WLAN DAL context
4554 pEventData: pointer to the event information structure
4555
4556 @see
4557 @return Result of the function call
4558*/
4559WDI_Status
4560WDI_ProcessHALDumpCmdReq
4561(
4562 WDI_ControlBlockType* pWDICtx,
4563 WDI_EventInfoType* pEventData
4564);
4565
4566/**
4567 @brief WDI_ProcessHALDumpCmdRsp
4568 Process Hal Dump Command Response from HAL, simply route to HDD FTM
4569
4570 @param pWDICtx: pointer to the WLAN DAL context
4571 pEventData: pointer to the event information structure
4572
4573 @see
4574 @return Result of the function call
4575*/
4576WDI_Status
4577WDI_ProcessHALDumpCmdRsp
4578(
4579 WDI_ControlBlockType* pWDICtx,
4580 WDI_EventInfoType* pEventData
4581);
Ravi Joshid2ca7c42013-07-23 08:37:49 -07004582
4583/**
4584 @brief WDI_ProcessIbssPeerInactivityInd
4585 Process peer inactivity indication coming from HAL.
4586
4587 @param pWDICtx: pointer to the WLAN DAL context
4588 pEventData: pointer to the event information structure
4589
4590 @see
4591 @return Result of the function call
4592*/
4593WDI_Status
4594WDI_ProcessIbssPeerInactivityInd
4595
4596(
4597 WDI_ControlBlockType* pWDICtx,
4598 WDI_EventInfoType* pEventData
4599);
4600
4601
Jeff Johnson295189b2012-06-20 16:38:30 -07004602/*========================================================================
4603 Internal Helper Routines
4604========================================================================*/
4605
4606/**
4607 @brief WDI_CleanCB - internal helper routine used to clean the
4608 WDI Main Control Block
4609
4610 @param pWDICtx - pointer to the control block
4611
4612 @return Result of the function call
4613*/
Jeff Johnson51019dc2013-02-21 16:44:09 -08004614WDI_Status
Jeff Johnson295189b2012-06-20 16:38:30 -07004615WDI_CleanCB
4616(
4617 WDI_ControlBlockType* pWDICtx
4618);
4619
4620/**
4621 @brief Main FSM Close function for all states except BUSY
4622
4623
4624 @param pWDICtx: pointer to the WLAN DAL context
4625 pEventData: pointer to the event information structure
4626
4627 @see
4628 @return Result of the function call
4629*/
Jeff Johnson51019dc2013-02-21 16:44:09 -08004630WDI_Status
Jeff Johnson295189b2012-06-20 16:38:30 -07004631WDI_ProcessRequest
4632(
4633 WDI_ControlBlockType* pWDICtx,
4634 WDI_EventInfoType* pEventData
4635);
4636
4637/**
4638 @brief Get message helper function - it allocates memory for a
4639 message that is to be sent to HAL accross the bus and
4640 prefixes it with a send message header
4641
4642 @param pWDICtx: pointer to the WLAN DAL context
4643 wdiReqType: type of the request being sent
4644 uBufferLen: message buffer len
4645 pMsgBuffer: resulting allocated buffer
4646 puDataOffset: offset in the buffer where the caller
4647 can start copying its message data
4648 puBufferSize: the resulting buffer size (offset+buff
4649 len)
4650
4651 @see
4652 @return Result of the function call
4653*/
4654WDI_Status
4655WDI_GetMessageBuffer
4656(
4657 WDI_ControlBlockType* pWDICtx,
4658 WDI_RequestEnumType wdiReqType,
4659 wpt_uint16 usBufferLen,
4660 wpt_uint8** pMsgBuffer,
4661 wpt_uint16* pusDataOffset,
4662 wpt_uint16* pusBufferSize
4663);
4664
4665/**
4666 @brief WDI_DetectedDeviceError - called internally by DAL when
4667 it has detected a failure in the device
4668
4669 @param pWDICtx: pointer to the WLAN DAL context
4670 usErrorCode: error code detected by WDI or received
4671 from HAL
4672
4673 @see
4674 @return None
4675*/
4676void
4677WDI_DetectedDeviceError
4678(
4679 WDI_ControlBlockType* pWDICtx,
4680 wpt_uint16 usErrorCode
4681);
4682
4683/*=========================================================================
4684 QUEUE SUPPORT UTILITY FUNCTIONS
4685=========================================================================*/
4686
4687/**
4688 @brief Utility function used by the DAL Core to help queue a
4689 request that cannot be processed right away.
4690 @param
4691
4692 pWDICtx: - pointer to the WDI control block
4693 pEventData: - pointer to the evnt info that needs to be
4694 queued
4695
4696 @see
4697 @return Result of the operation
4698*/
4699WDI_Status
4700WDI_QueuePendingReq
4701(
4702 WDI_ControlBlockType* pWDICtx,
4703 WDI_EventInfoType* pEventData
4704);
4705
4706/**
4707 @brief Utility function used by the DAL Core to clear any
4708 pending requests - all req cb will be called with
4709 failure and the queue will be emptied.
4710 @param
4711
4712 pWDICtx: - pointer to the WDI control block
4713
4714 @see
4715 @return Result of the operation
4716*/
4717WDI_Status
4718WDI_ClearPendingRequests
4719(
4720 WDI_ControlBlockType* pWDICtx
4721);
4722
4723/**
4724 @brief This callback is invoked by the wpt when a timer that
4725 we started on send message has expire - this should
4726 never happen - it means device is stuck and cannot
4727 reply - trigger catastrophic failure
4728 @param
4729
4730 pUserData: the callback data of the user (ptr to WDI CB)
4731
4732 @see
4733 @return None
4734*/
4735void
4736WDI_ResponseTimerCB
4737(
4738 void *pUserData
4739);
4740
4741/*==========================================================================
4742 CONTRL TRANSPORT INTERACTION
4743
4744 Callback function registered with the control transport - for receiving
4745 notifications and packets
4746==========================================================================*/
4747/**
4748 @brief This callback is invoked by the control transport
4749 when it wishes to send up a notification like the ones
4750 mentioned above.
4751
4752 @param
4753
4754 wctsHandle: handle to the control transport service
4755 wctsEvent: the event being notified
4756 wctsNotifyCBData: the callback data of the user
4757
4758 @see WCTS_OpenTransport
4759
4760 @return None
4761*/
4762void
4763WDI_NotifyMsgCTSCB
4764(
4765 WCTS_HandleType wctsHandle,
4766 WCTS_NotifyEventType wctsEvent,
4767 void* wctsNotifyCBData
4768);
4769
4770/**
4771 @brief This callback is invoked by the control transport
4772 when it wishes to send up a packet received over the
4773 bus.
4774
4775 @param
4776
4777 wctsHandle: handle to the control transport service
4778 pMsg: the packet
4779 uLen: the packet length
4780 wctsRxMsgCBData: the callback data of the user
4781
4782 @see WCTS_OpenTransport
4783
4784 @return None
4785*/
4786void
4787WDI_RXMsgCTSCB
4788(
4789 WCTS_HandleType wctsHandle,
4790 void* pMsg,
4791 wpt_uint32 uLen,
4792 void* wctsRxMsgCBData
4793);
4794
4795/**
4796 @brief Process response helper function
4797
4798
4799 @param pWDICtx: pointer to the WLAN DAL context
4800 pEventData: pointer to the event information structure
4801
4802 @see
4803 @return Result of the function call
4804*/
4805WDI_Status
4806WDI_ProcessResponse
4807(
4808 WDI_ControlBlockType* pWDICtx,
4809 WDI_EventInfoType* pEventData
4810);
4811
4812/**
4813 @brief Send message helper function - sends a message over the
4814 bus using the control tranport and saves some info in
4815 the CB
4816
4817 @param pWDICtx: pointer to the WLAN DAL context
4818 pSendBuffer: buffer to be sent
4819
4820 uSendSize size of the buffer to be sent
4821 pRspCb: response callback - save in the WDI
4822 CB
4823 pUserData: user data associated with the
4824 callback
4825 wdiExpectedResponse: the code of the response that is
4826 expected to be rx-ed for this request
4827
4828 @see
4829 @return Result of the function call
4830*/
4831WDI_Status
4832WDI_SendMsg
4833(
4834 WDI_ControlBlockType* pWDICtx,
4835 wpt_uint8* pSendBuffer,
4836 wpt_uint32 uSendSize,
4837 void* pRspCb,
4838 void* pUserData,
4839 WDI_ResponseEnumType wdiExpectedResponse
4840);
4841
4842
4843/**
4844 @brief Send indication helper function - sends a message over
4845 the bus using the control transport and saves some info
4846 in the CB
4847
4848 @param pWDICtx: pointer to the WLAN DAL context
4849 pSendBuffer: buffer to be sent
4850 usSendSize: size of the buffer to be sent
4851
4852 @see
4853 @return Result of the function call
4854*/
4855WDI_Status
4856WDI_SendIndication
4857(
4858 WDI_ControlBlockType* pWDICtx,
4859 wpt_uint8* pSendBuffer,
4860 wpt_uint32 usSendSize
4861);
4862
4863/**
4864 @brief Utility function used by the DAL Core to help dequeue
4865 and schedule for execution a pending request
4866 @param
4867
4868 pWDICtx: - pointer to the WDI control block
4869 pEventData: - pointer to the evnt info that needs to be
4870 queued
4871
4872 @see
4873 @return Result of the operation
4874*/
4875WDI_Status
4876WDI_DequeuePendingReq
4877(
4878 WDI_ControlBlockType* pWDICtx
4879);
4880
4881/**
4882 @brief Utility function used by the DAL Core to help queue
4883 an association request that cannot be processed right
4884 away.- The assoc requests will be queued by BSSID
4885 @param
4886
4887 pWDICtx: - pointer to the WDI control block
4888 pEventData: pointer to the evnt info that needs to be queued
4889 macBSSID: bssid
4890
4891 @see
4892 @return Result of the operation
4893*/
4894WDI_Status
4895WDI_QueueNewAssocRequest
4896(
4897 WDI_ControlBlockType* pWDICtx,
4898 WDI_EventInfoType* pEventData,
4899 wpt_macAddr macBSSID
4900);
4901
4902/**
4903 @brief Utility function used by the DAL Core to help queue
4904 an association request that cannot be processed right
4905 away.- The assoc requests will be queued by BSSID
4906 @param
4907
4908 pWDICtx: - pointer to the WDI control block
4909 pSession: - session in which to queue
4910 pEventData: pointer to the event info that needs to be
4911 queued
4912
4913 @see
4914 @return Result of the operation
4915*/
4916WDI_Status
4917WDI_QueueAssocRequest
4918(
4919 WDI_ControlBlockType* pWDICtx,
4920 WDI_BSSSessionType* pSession,
4921 WDI_EventInfoType* pEventData
4922);
4923
4924/**
4925 @brief Utility function used by the DAL Core to help dequeue
4926 an association request that was pending
4927 The request will be queued up in front of the main
4928 pending queue for immediate processing
4929 @param
4930
4931 pWDICtx: - pointer to the WDI control block
4932
4933
4934 @see
4935 @return Result of the operation
4936*/
4937WDI_Status
4938WDI_DequeueAssocRequest
4939(
4940 WDI_ControlBlockType* pWDICtx
4941);
4942
4943/**
4944 @brief Helper routine used to init the BSS Sessions in the WDI control block
4945
4946
4947 @param pWDICtx: pointer to the WLAN DAL context
4948
4949 @see
4950*/
4951void
4952WDI_ResetAssocSessions
4953(
4954 WDI_ControlBlockType* pWDICtx
4955);
4956
4957/**
4958 @brief Helper routine used to find an empty session in the WDI
4959 CB
4960
4961
4962 @param pWDICtx: pointer to the WLAN DAL context
4963 pSession: pointer to the session (if found)
4964
4965 @see
4966 @return Index of the session in the array
4967*/
4968wpt_uint8
4969WDI_FindEmptySession
4970(
4971 WDI_ControlBlockType* pWDICtx,
4972 WDI_BSSSessionType** ppSession
4973);
4974
4975/**
Hoonki Lee9af07cf2013-04-24 01:21:58 -07004976 @brief Helper routine used to get the total count of active
Jeff Johnson295189b2012-06-20 16:38:30 -07004977 sessions
Hoonki Lee9af07cf2013-04-24 01:21:58 -07004978
4979
4980 @param pWDICtx: pointer to the WLAN DAL context
4981 macBSSID: pointer to BSSID. If NULL, get all the session.
4982 If not NULL, count ActiveSession by excluding (TRUE) or including (FALSE) skipBSSID.
4983 skipBSSID: if TRUE, get all the sessions except matching to macBSSID. If FALSE, get all session.
4984 This argument is ignored if macBSSID is NULL.
Jeff Johnson295189b2012-06-20 16:38:30 -07004985 @see
4986 @return Number of sessions in use
4987*/
4988wpt_uint8
4989WDI_GetActiveSessionsCount
Hoonki Lee9af07cf2013-04-24 01:21:58 -07004990(
4991 WDI_ControlBlockType* pWDICtx,
4992 wpt_macAddr macBSSID,
4993 wpt_boolean skipBSSID
Jeff Johnson295189b2012-06-20 16:38:30 -07004994);
4995
4996/**
4997 @brief Helper routine used to delete session in the WDI
4998 CB
4999
5000
5001 @param pWDICtx: pointer to the WLAN DAL context
5002 pSession: pointer to the session (if found)
5003
5004 @see
5005 @return Index of the session in the array
5006*/
5007void
5008WDI_DeleteSession
5009(
5010 WDI_ControlBlockType* pWDICtx,
5011 WDI_BSSSessionType* ppSession
5012);
5013
5014/**
5015 @brief Helper routine used to find a session based on the BSSID
5016
5017
5018 @param pWDICtx: pointer to the WLAN DAL context
5019 macBSSID: BSSID of the session
5020 ppSession: out pointer to the session (if found)
5021
5022 @see
5023 @return Index of the session in the array
5024*/
5025wpt_uint8
5026WDI_FindAssocSession
5027(
5028 WDI_ControlBlockType* pWDICtx,
5029 wpt_macAddr macBSSID,
5030 WDI_BSSSessionType** ppSession
5031);
5032
5033
5034/**
5035 @brief Helper routine used to find a session based on the BSSID
5036
5037
5038 @param pWDICtx: pointer to the WLAN DAL context
5039 usBssIdx: BSS Index of the session
5040 ppSession: out pointer to the session (if found)
5041
5042 @see
5043 @return Index of the session in the array
5044*/
5045wpt_uint8
5046WDI_FindAssocSessionByBSSIdx
5047(
5048 WDI_ControlBlockType* pWDICtx,
5049 wpt_uint16 usBssIdx,
5050 WDI_BSSSessionType** ppSession
5051);
5052
5053/**
5054 @brief Helper routine used to find a session based on the BSSID
5055
5056
5057 @param pWDICtx: pointer to the WLAN DAL context
5058 usBssIdx: BSS Index of the session
5059 ppSession: out pointer to the session (if found)
5060
5061 @see
5062 @return Index of the session in the array
5063*/
5064wpt_uint8
5065WDI_FindAssocSessionByIdx
5066(
5067 WDI_ControlBlockType* pWDICtx,
5068 wpt_uint16 usBssIdx,
5069 WDI_BSSSessionType** ppSession
5070);
5071
5072/**
5073 @brief Helper routine used to find a session based on the BSSID
5074 @param pContext: pointer to the WLAN DAL context
5075 @param pDPContext: pointer to the Datapath context
5076
5077 @see
5078 @return
5079*/
Jeff Johnson51019dc2013-02-21 16:44:09 -08005080void
Jeff Johnson295189b2012-06-20 16:38:30 -07005081WDI_DS_AssignDatapathContext
5082(
5083 void *pContext,
5084 void *pDPContext
5085);
5086
5087/**
5088 @brief Helper routine used to find a session based on the BSSID
5089
5090
5091 @param pContext: pointer to the WLAN DAL context
5092
5093 @see
5094 @return pointer to Datapath context
5095*/
Jeff Johnson51019dc2013-02-21 16:44:09 -08005096void *
Jeff Johnson295189b2012-06-20 16:38:30 -07005097WDI_DS_GetDatapathContext
5098(
5099 void *pContext
5100);
5101
5102/**
5103 @brief Helper routine used to find a session based on the BSSID
5104
5105
5106 @param pContext: pointer to the WLAN DAL context
5107 @param pDTDriverContext: pointer to the Transport Driver context
5108
5109 @see
5110 @return void
5111*/
Jeff Johnson51019dc2013-02-21 16:44:09 -08005112void
Jeff Johnson295189b2012-06-20 16:38:30 -07005113WDT_AssignTransportDriverContext
5114(
5115 void *pContext,
5116 void *pDTDriverContext
5117);
5118
5119/**
5120 @brief Helper routine used to find a session based on the BSSID
5121
5122
5123 @param pWDICtx: pointer to the WLAN DAL context
5124
5125 @see
5126 @return pointer to datapath context
5127*/
Jeff Johnson51019dc2013-02-21 16:44:09 -08005128void *
Jeff Johnson295189b2012-06-20 16:38:30 -07005129WDT_GetTransportDriverContext
5130(
5131 void *pContext
5132);
5133
5134#ifdef FEATURE_WLAN_SCAN_PNO
5135/**
5136 @brief Process Set Preferred Network List Request function
5137
5138 @param pWDICtx: pointer to the WLAN DAL context
5139 pEventData: pointer to the event information structure
5140
5141 @see
5142 @return Result of the function call
5143*/
5144WDI_Status
5145WDI_ProcessSetPreferredNetworkReq
5146(
5147 WDI_ControlBlockType* pWDICtx,
5148 WDI_EventInfoType* pEventData
5149);
5150
5151/**
5152 @brief Process Set RSSI Filter Request function
5153
5154 @param pWDICtx: pointer to the WLAN DAL context
5155 pEventData: pointer to the event information structure
5156
5157 @see
5158 @return Result of the function call
5159*/
5160WDI_Status
5161WDI_ProcessSetRssiFilterReq
5162(
5163 WDI_ControlBlockType* pWDICtx,
5164 WDI_EventInfoType* pEventData
5165);
5166
5167/**
5168 @brief Process Update Scan Params function
5169
5170 @param pWDICtx: pointer to the WLAN DAL context
5171 pEventData: pointer to the event information structure
5172
5173 @see
5174 @return Result of the function call
5175*/
5176WDI_Status
5177WDI_ProcessUpdateScanParamsReq
5178(
5179 WDI_ControlBlockType* pWDICtx,
5180 WDI_EventInfoType* pEventData
5181);
5182
5183/**
5184 @brief Process Preferred Network Found Indication function
5185
5186 @param pWDICtx: pointer to the WLAN DAL context
5187 pEventData: pointer to the event information structure
5188
5189 @see
5190 @return Result of the function call
5191*/
5192WDI_Status
5193WDI_ProcessPrefNetworkFoundInd
5194(
5195 WDI_ControlBlockType* pWDICtx,
5196 WDI_EventInfoType* pEventData
5197);
5198
5199/**
5200 @brief Process PNO Rsp function (called when a
5201 response is being received over the bus from HAL)
5202
5203 @param pWDICtx: pointer to the WLAN DAL context
5204 pEventData: pointer to the event information structure
5205
5206 @see
5207 @return Result of the function call
5208*/
5209WDI_Status
5210WDI_ProcessSetPreferredNetworkRsp
5211(
5212 WDI_ControlBlockType* pWDICtx,
5213 WDI_EventInfoType* pEventData
5214);
5215
5216/**
5217 @brief Process RSSI Filter Rsp function (called when a
5218 response is being received over the bus from HAL)
5219
5220 @param pWDICtx: pointer to the WLAN DAL context
5221 pEventData: pointer to the event information structure
5222
5223 @see
5224 @return Result of the function call
5225*/
5226WDI_Status
5227WDI_ProcessSetRssiFilterRsp
5228(
5229 WDI_ControlBlockType* pWDICtx,
5230 WDI_EventInfoType* pEventData
5231);
5232
5233/**
5234 @brief Process Update Scan Params Rsp function (called when a
5235 response is being received over the bus from HAL)
5236
5237 @param pWDICtx: pointer to the WLAN DAL context
5238 pEventData: pointer to the event information structure
5239
5240 @see
5241 @return Result of the function call
5242*/
5243WDI_Status
5244WDI_ProcessUpdateScanParamsRsp
5245(
5246 WDI_ControlBlockType* pWDICtx,
5247 WDI_EventInfoType* pEventData
5248);
5249#endif // FEATURE_WLAN_SCAN_PNO
5250
Gopichand Nakkala5e5668f2013-05-03 13:13:06 -07005251
5252#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
5253/**
5254 @brief Process Start Roam Candidate Lookup Request function
5255
5256 @param pWDICtx: pointer to the WLAN DAL context
5257 pEventData: pointer to the event information structure
5258
5259 @see
5260 @return Result of the function call
5261*/
5262WDI_Status
Varun Reddy Yeturu920df212013-05-22 08:07:23 -07005263WDI_ProcessRoamScanOffloadReq
Gopichand Nakkala5e5668f2013-05-03 13:13:06 -07005264(
5265 WDI_ControlBlockType* pWDICtx,
5266 WDI_EventInfoType* pEventData
5267);
5268/**
5269 @brief Process Start Roam Candidate Lookup Response function (called when a
5270 response is being received over the bus from HAL)
5271
5272 @param pWDICtx: pointer to the WLAN DAL context
5273 pEventData: pointer to the event information structure
5274
5275 @see
5276 @return Result of the function call
5277*/
5278WDI_Status
Varun Reddy Yeturu920df212013-05-22 08:07:23 -07005279WDI_ProcessRoamScanOffloadRsp
Gopichand Nakkala5e5668f2013-05-03 13:13:06 -07005280(
5281 WDI_ControlBlockType* pWDICtx,
5282 WDI_EventInfoType* pEventData
5283);
5284#endif
5285
5286
Jeff Johnson295189b2012-06-20 16:38:30 -07005287#ifdef WLAN_FEATURE_PACKET_FILTERING
5288/**
5289 @brief Process 8023 Multicast List Request function
5290
5291 @param pWDICtx: pointer to the WLAN DAL context
5292 pEventData: pointer to the event information structure
5293
5294 @see
5295 @return Result of the function call
5296*/
5297WDI_Status
5298WDI_Process8023MulticastListReq
5299(
5300 WDI_ControlBlockType* pWDICtx,
5301 WDI_EventInfoType* pEventData
5302);
5303
5304/**
5305 @brief Process Receive Filter Set Filter Request function
5306
5307 @param pWDICtx: pointer to the WLAN DAL context
5308 pEventData: pointer to the event information structure
5309
5310 @see
5311 @return Result of the function call
5312*/
5313WDI_Status
5314WDI_ProcessReceiveFilterSetFilterReq
5315(
5316 WDI_ControlBlockType* pWDICtx,
5317 WDI_EventInfoType* pEventData
5318);
5319
5320/**
5321 @brief Process D0 PC Filter Match Count Request function
5322
5323 @param pWDICtx: pointer to the WLAN DAL context
5324 pEventData: pointer to the event information structure
5325
5326 @see
5327 @return Result of the function call
5328*/
5329WDI_Status
5330WDI_ProcessFilterMatchCountReq
5331(
5332 WDI_ControlBlockType* pWDICtx,
5333 WDI_EventInfoType* pEventData
5334);
5335
5336/**
5337 @brief Process Receive Filter Clear Filter Request function
5338
5339 @param pWDICtx: pointer to the WLAN DAL context
5340 pEventData: pointer to the event information structure
5341
5342 @see
5343 @return Result of the function call
5344*/
5345WDI_Status
5346WDI_ProcessReceiveFilterClearFilterReq
5347(
5348 WDI_ControlBlockType* pWDICtx,
5349 WDI_EventInfoType* pEventData
5350);
5351
5352/**
5353 @brief Process 8023 Multicast List Response function
5354
5355 @param pWDICtx: pointer to the WLAN DAL context
5356 pEventData: pointer to the event information structure
5357
5358 @see
5359 @return Result of the function call
5360*/
5361WDI_Status
5362WDI_Process8023MulticastListRsp
5363(
5364 WDI_ControlBlockType* pWDICtx,
5365 WDI_EventInfoType* pEventData
5366);
5367
5368/**
5369 @brief Process Receive Filter Set Filter Response function
5370
5371 @param pWDICtx: pointer to the WLAN DAL context
5372 pEventData: pointer to the event information structure
5373
5374 @see
5375 @return Result of the function call
5376*/
5377WDI_Status
5378WDI_ProcessReceiveFilterSetFilterRsp
5379(
5380 WDI_ControlBlockType* pWDICtx,
5381 WDI_EventInfoType* pEventData
5382);
5383
5384/**
5385 @brief Process D0 PC Filter Match Count Response function
5386
5387 @param pWDICtx: pointer to the WLAN DAL context
5388 pEventData: pointer to the event information structure
5389
5390 @see
5391 @return Result of the function call
5392*/
5393WDI_Status
5394WDI_ProcessFilterMatchCountRsp
5395(
5396 WDI_ControlBlockType* pWDICtx,
5397 WDI_EventInfoType* pEventData
5398);
5399
5400/**
5401 @brief Process Receive Filter Clear Filter Response function
5402
5403 @param pWDICtx: pointer to the WLAN DAL context
5404 pEventData: pointer to the event information structure
5405
5406 @see
5407 @return Result of the function call
5408*/
5409WDI_Status
5410WDI_ProcessReceiveFilterClearFilterRsp
5411(
5412 WDI_ControlBlockType* pWDICtx,
5413 WDI_EventInfoType* pEventData
5414);
5415#endif // WLAN_FEATURE_PACKET_FILTERING
5416
5417#ifdef WLAN_FEATURE_GTK_OFFLOAD
5418/**
5419 @brief Process set GTK Offload 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_ProcessGTKOffloadReq
5429(
5430 WDI_ControlBlockType* pWDICtx,
5431 WDI_EventInfoType* pEventData
5432);
5433
5434/**
5435 @brief Process GTK Offload Get Information 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_ProcessGTKOffloadGetInfoReq
5445(
5446 WDI_ControlBlockType* pWDICtx,
5447 WDI_EventInfoType* pEventData
5448);
5449
5450/**
5451 @brief Process host offload Rsp function (called when a
5452 response is being received over the bus from HAL)
5453
5454 @param pWDICtx: pointer to the WLAN DAL context
5455 pEventData: pointer to the event information structure
5456
5457 @see
5458 @return Result of the function call
5459*/
5460WDI_Status
5461WDI_ProcessGtkOffloadRsp
5462(
5463 WDI_ControlBlockType* pWDICtx,
5464 WDI_EventInfoType* pEventData
5465);
5466
5467/**
5468 @brief Process GTK Offload Get Information Response function
5469
5470 @param pWDICtx: pointer to the WLAN DAL context
5471 pEventData: pointer to the event information structure
5472
5473 @see
5474 @return Result of the function call
5475*/
5476WDI_Status
5477WDI_ProcessGTKOffloadGetInfoRsp
5478(
5479 WDI_ControlBlockType* pWDICtx,
5480 WDI_EventInfoType* pEventData
5481);
5482#endif // WLAN_FEATURE_GTK_OFFLOAD
5483
5484#ifdef WLAN_WAKEUP_EVENTS
5485WDI_Status
5486WDI_ProcessWakeReasonInd
5487(
5488 WDI_ControlBlockType* pWDICtx,
5489 WDI_EventInfoType* pEventData
5490);
5491#endif // WLAN_WAKEUP_EVENTS
5492
5493/**
5494 @brief Process Host-FW Capability Exchange Request function
5495
5496 @param pWDICtx: pointer to the WLAN DAL context
5497 pEventData: pointer to the event information structure
5498
5499 @see
5500 @return Result of the function call
5501*/
5502WDI_Status
5503WDI_ProcessFeatureCapsExchangeReq
5504(
5505 WDI_ControlBlockType* pWDICtx,
5506 WDI_EventInfoType* pEventData
5507);
5508
5509/**
5510 @brief Process Host-FW Capability Exchange Response function
5511
5512 @param pWDICtx: pointer to the WLAN DAL context
5513 pEventData: pointer to the event information structure
5514
5515 @see
5516 @return Result of the function call
5517*/
5518WDI_Status
5519WDI_ProcessFeatureCapsExchangeRsp
5520(
5521 WDI_ControlBlockType* pWDICtx,
5522 WDI_EventInfoType* pEventData
5523);
5524
Mohit Khanna4a70d262012-09-11 16:30:12 -07005525#ifdef WLAN_FEATURE_11AC
5526WDI_Status
5527WDI_ProcessUpdateVHTOpModeReq
5528(
5529 WDI_ControlBlockType* pWDICtx,
5530 WDI_EventInfoType* pEventData
5531);
5532
5533WDI_Status
5534WDI_ProcessUpdateVHTOpModeRsp
5535(
5536 WDI_ControlBlockType* pWDICtx,
5537 WDI_EventInfoType* pEventData
5538);
5539#endif
5540
Gopichand Nakkala5e5668f2013-05-03 13:13:06 -07005541#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
5542/**
5543 * @brief WDI_wdiEdTypeEncToEdTypeEnc -
5544 * The firmware expects the Encryption type to be in EdType.
5545 * This function converts the WdiEdType encryption to EdType.
5546 * @param tEdType : EdType to which the encryption needs to be converted.
5547 * @param WDI_EdType : wdiEdType passed from the upper layer.
5548 * @see
5549 * @return none
5550 * */
5551void
5552WDI_wdiEdTypeEncToEdTypeEnc
5553(
5554 tEdType *EdType,
5555 WDI_EdType wdiEdType
5556);
5557#endif
5558
Leo Chang9056f462013-08-01 19:21:11 -07005559#ifdef FEATURE_WLAN_LPHB
5560/**
5561 @brief WDI_ProcessLphbCfgRsp -
5562 LPHB configuration response from FW
5563
5564 @param pWDICtx : wdi context
5565 pEventData : indication data
5566
5567 @see
5568 @return Result of the function call
5569*/
5570WDI_Status WDI_ProcessLphbCfgRsp
5571(
5572 WDI_ControlBlockType* pWDICtx,
5573 WDI_EventInfoType* pEventData
5574);
5575#endif /* FEATURE_WLAN_LPHB */
5576
Chittajit Mitraf5413a42013-10-18 14:20:08 -07005577/**
5578 @brief Process Rate Update Indication and post it to HAL
5579
5580 @param pWDICtx: pointer to the WLAN DAL context
5581 pEventData: pointer to the event information structure
5582
5583 @see
5584 @return Result of the function call
5585*/
5586WDI_Status
5587WDI_ProcessRateUpdateInd
5588(
5589 WDI_ControlBlockType* pWDICtx,
5590 WDI_EventInfoType* pEventData
5591);
5592
Rajeev79dbe4c2013-10-05 11:03:42 +05305593#ifdef FEATURE_WLAN_BATCH_SCAN
5594/**
5595 @brief WDI_ProcessSetBatchScanRsp -
5596 Process set batch scan response from FW
5597
5598 @param pWDICtx : wdi context
5599 pEventData : indication data
5600
5601 @see
5602 @return Result of the function call
5603*/
5604WDI_Status WDI_ProcessSetBatchScanRsp
5605(
5606 WDI_ControlBlockType* pWDICtx,
5607 WDI_EventInfoType* pEventData
5608);
5609
5610/**
5611 @brief Process batch scan response from FW
5612
5613 @param pWDICtx: pointer to the WLAN DAL context
5614 pEventData: pointer to the event information structure
5615
5616 @see
5617 @return Result of the function call
5618*/
5619WDI_Status
5620WDI_ProcessBatchScanResultInd
5621(
5622 WDI_ControlBlockType* pWDICtx,
5623 WDI_EventInfoType* pEventData
5624);
5625
5626#endif /* FEATURE_WLAN_BATCH_SCAN */
5627
Leo Chang0b0e45a2013-12-15 15:18:55 -08005628#ifdef FEATURE_WLAN_CH_AVOID
5629/**
5630 @brief v -
5631
5632
5633 @param pWDICtx : wdi context
5634 pEventData : indication data
5635 @see
5636 @return Result of the function call
5637*/
5638WDI_Status
5639WDI_ProcessChAvoidInd
5640(
5641 WDI_ControlBlockType* pWDICtx,
5642 WDI_EventInfoType* pEventData
5643);
5644#endif /* FEATURE_WLAN_CH_AVOID */
5645
Jeff Johnson295189b2012-06-20 16:38:30 -07005646#endif /*WLAN_QCT_WDI_I_H*/
5647