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