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