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