blob: cc3cfafcf88be217114b1343e37d4b8ac1b13428 [file] [log] [blame]
Jeff Johnson295189b2012-06-20 16:38:30 -07001/*
Kiet Lam1ed83fc2014-02-19 01:15:45 -08002 * Copyright (c) 2012-2014 The Linux Foundation. All rights reserved.
3 *
4 * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
5 *
6 *
7 * Permission to use, copy, modify, and/or distribute this software for
8 * any purpose with or without fee is hereby granted, provided that the
9 * above copyright notice and this permission notice appear in all
10 * copies.
11 *
12 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
13 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
14 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
15 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
16 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
17 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
18 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19 * PERFORMANCE OF THIS SOFTWARE.
20 */
21
22/*
23 * Copyright (c) 2012-2014 Qualcomm Atheros, Inc.
24 * All Rights Reserved.
25 * Qualcomm Atheros Confidential and Proprietary.
26 *
27 */
28
Jeff Johnson295189b2012-06-20 16:38:30 -070029
30#ifndef WLAN_QCT_WDI_H
31#define WLAN_QCT_WDI_H
32
33/*===========================================================================
34
35 W L A N D E V I C E A B S T R A C T I O N L A Y E R
36 E X T E R N A L A P I
37
38
39DESCRIPTION
40 This file contains the external API exposed by the wlan transport layer
41 module.
42
43
44 Copyright (c) 2010-2011 QUALCOMM Incorporated.
45 All Rights Reserved.
46 Qualcomm Confidential and Proprietary
47===========================================================================*/
48
49
50/*===========================================================================
51
52 EDIT HISTORY FOR FILE
53
54
55 This section contains comments describing changes made to the module.
56 Notice that changes are listed in reverse chronological order.
57
58
59 $Header:$ $DateTime: $ $Author: $
60
61
62when who what, where, why
63-------- --- ----------------------------------------------------------
6410/05/11 hap Adding support for Keep Alive
6508/04/10 lti Created module.
66
67===========================================================================*/
68
69
70
71/*===========================================================================
72
73 INCLUDE FILES FOR MODULE
74
75===========================================================================*/
76
77/*----------------------------------------------------------------------------
78 * Include Files
79 * -------------------------------------------------------------------------*/
80#include "wlan_qct_pal_api.h"
81#include "wlan_qct_pal_type.h"
82#include "wlan_qct_pack_align.h"
83#include "wlan_qct_wdi_cfg.h"
84
85/*----------------------------------------------------------------------------
86 * Preprocessor Definitions and Constants
87 * -------------------------------------------------------------------------*/
88#ifdef __cplusplus
89 extern "C" {
90#endif
91
92/* MAC ADDRESS LENGTH - per spec*/
93#define WDI_MAC_ADDR_LEN 6
94
95/* Max number of 11b rates -> 1,2,5.5,11 */
96#define WDI_NUM_11B_RATES 4
97
98/* Max number of 11g rates -> 6,9,12,18,24,36,48,54*/
99#define WDI_NUM_11A_RATES 8
100
101/* Max number of legacy rates -> 72, 96, 108*/
102#define WDI_NUM_POLARIS_RATES 3
103
104/* Max supported MCS set*/
105#define WDI_MAC_MAX_SUPPORTED_MCS_SET 16
106
107/*Max number of Access Categories for QoS - per spec */
108#define WDI_MAX_NO_AC 4
109
110/*Max. size for reserving the Beacon Template */
111#define WDI_BEACON_TEMPLATE_SIZE 0x180
112
113#define WDI_WOWL_BCAST_PATTERN_MAX_SIZE 128
114
115#define WDI_WOWL_BCAST_MAX_NUM_PATTERNS 16
116
117#define WDI_MAX_SSID_SIZE 32
118
119/* The shared memory between WDI and HAL is 4K so maximum data can be transferred
120from WDI to HAL is 4K.This 4K should also include the Message header so sending 4K
121of NV fragment is nt possbile.The next multiple of 1Kb is 3K */
122
123#define FRAGMENT_SIZE 3072
124
125/* Macro to find the total number fragments of the NV Image*/
Madan Mohan Koyyalamudia53c4dc2012-11-13 10:35:42 -0800126#define TOTALFRAGMENTS(x) (((x % FRAGMENT_SIZE) == 0) ? (x / FRAGMENT_SIZE):((x / FRAGMENT_SIZE) + 1))
Jeff Johnson295189b2012-06-20 16:38:30 -0700127
128/* Beacon Filter Length*/
129#define WDI_BEACON_FILTER_LEN 70
130
131/* Coex Indication data size - should match WLAN_COEX_IND_DATA_SIZE */
132#define WDI_COEX_IND_DATA_SIZE (4)
133
134#define WDI_CIPHER_SEQ_CTR_SIZE 6
135
136#define WDI_NUM_BSSID 2
137
138/*Version string max length (including NUL) */
139#define WDI_VERSION_LENGTH 64
140
141
142/*WDI Response timeout - how long will WDI wait for a response from the device
143 - it should be large enough to allow any other failure mechanism to kick
144 in before we get to a timeout (ms units)*/
145#define WDI_RESPONSE_TIMEOUT 10000
146
Madan Mohan Koyyalamudi0bfd0002012-10-24 14:39:37 -0700147/* SSR timeout - If Riva initiated SSR doesn't happen during this time, then the
148 * Apps initiated SSR will be performed */
149#define WDI_SSR_TIMEOUT 5000
150
Jeff Johnson295189b2012-06-20 16:38:30 -0700151#define WDI_SET_POWER_STATE_TIMEOUT 10000 /* in msec a very high upper limit */
152
Yue Mab9c86f42013-08-14 15:59:08 -0700153/* Periodic Tx pattern offload feature */
154#define PERIODIC_TX_PTRN_MAX_SIZE 1536
155#define MAXNUM_PERIODIC_TX_PTRNS 6
156
Jeff Johnson295189b2012-06-20 16:38:30 -0700157/*============================================================================
158 * GENERIC STRUCTURES
159
160============================================================================*/
161
162/*---------------------------------------------------------------------------
163 WDI Version Information
164---------------------------------------------------------------------------*/
165typedef struct
166{
167 wpt_uint8 revision;
168 wpt_uint8 version;
169 wpt_uint8 minor;
170 wpt_uint8 major;
171} WDI_WlanVersionType;
172
173/*---------------------------------------------------------------------------
174 WDI Device Capability
175---------------------------------------------------------------------------*/
176typedef struct
177{
178 /*If this flag is true it means that the device can support 802.3/ETH2 to
179 802.11 translation*/
180 wpt_boolean bFrameXtlSupported;
181
182 /*Maximum number of BSSes supported by the Device */
183 wpt_uint8 ucMaxBSSSupported;
184
185 /*Maximum number of stations supported by the Device */
186 wpt_uint8 ucMaxSTASupported;
187}WDI_DeviceCapabilityType;
188
189/*---------------------------------------------------------------------------
190 WDI Channel Offset
191---------------------------------------------------------------------------*/
192typedef enum
193{
194 WDI_SECONDARY_CHANNEL_OFFSET_NONE = 0,
195 WDI_SECONDARY_CHANNEL_OFFSET_UP = 1,
Jeff Johnsone7245742012-09-05 17:12:55 -0700196 WDI_SECONDARY_CHANNEL_OFFSET_DOWN = 3,
197#ifdef WLAN_FEATURE_11AC
198 WDI_CHANNEL_20MHZ_LOW_40MHZ_CENTERED = 4, //20/40MHZ offset LOW 40/80MHZ offset CENTERED
199 WDI_CHANNEL_20MHZ_CENTERED_40MHZ_CENTERED = 5, //20/40MHZ offset CENTERED 40/80MHZ offset CENTERED
200 WDI_CHANNEL_20MHZ_HIGH_40MHZ_CENTERED = 6, //20/40MHZ offset HIGH 40/80MHZ offset CENTERED
201 WDI_CHANNEL_20MHZ_LOW_40MHZ_LOW = 7,//20/40MHZ offset LOW 40/80MHZ offset LOW
202 WDI_CHANNEL_20MHZ_HIGH_40MHZ_LOW = 8, //20/40MHZ offset HIGH 40/80MHZ offset LOW
203 WDI_CHANNEL_20MHZ_LOW_40MHZ_HIGH = 9, //20/40MHZ offset LOW 40/80MHZ offset HIGH
204 WDI_CHANNEL_20MHZ_HIGH_40MHZ_HIGH = 10,//20/40MHZ offset-HIGH 40/80MHZ offset HIGH
205#endif
206 WDI_SECONDARY_CHANNEL_OFFSET_MAX
Jeff Johnson295189b2012-06-20 16:38:30 -0700207}WDI_HTSecondaryChannelOffset;
208
209/*---------------------------------------------------------------------------
210 WDI_MacFrameCtl
211 Frame control field format (2 bytes)
212---------------------------------------------------------------------------*/
213typedef struct
214{
215 wpt_uint8 protVer :2;
216 wpt_uint8 type :2;
217 wpt_uint8 subType :4;
218
219 wpt_uint8 toDS :1;
220 wpt_uint8 fromDS :1;
221 wpt_uint8 moreFrag :1;
222 wpt_uint8 retry :1;
223 wpt_uint8 powerMgmt :1;
224 wpt_uint8 moreData :1;
225 wpt_uint8 wep :1;
226 wpt_uint8 order :1;
227
228} WDI_MacFrameCtl;
229
230/*---------------------------------------------------------------------------
231 WDI Sequence control field
232---------------------------------------------------------------------------*/
233typedef struct
234{
235 wpt_uint8 fragNum : 4;
236 wpt_uint8 seqNumLo : 4;
237 wpt_uint8 seqNumHi : 8;
238} WDI_MacSeqCtl;
239
240/*---------------------------------------------------------------------------
241 Management header format
242---------------------------------------------------------------------------*/
243typedef struct
244{
245 WDI_MacFrameCtl fc;
246 wpt_uint8 durationLo;
247 wpt_uint8 durationHi;
248 wpt_uint8 da[WDI_MAC_ADDR_LEN];
249 wpt_uint8 sa[WDI_MAC_ADDR_LEN];
250 wpt_macAddr bssId;
251 WDI_MacSeqCtl seqControl;
252} WDI_MacMgmtHdr;
253
254/*---------------------------------------------------------------------------
255 NV Blob management sturcture
256 ---------------------------------------------------------------------------*/
257
258typedef struct
259{
260 /* NV image fragments count */
261 wpt_uint16 usTotalFragment;
262
263 /* NV fragment size */
264 wpt_uint16 usFragmentSize;
265
266 /* current fragment to be sent */
267 wpt_uint16 usCurrentFragment;
268
269} WDI_NvBlobInfoParams;
270
271
272/*---------------------------------------------------------------------------
273 Data path enums memory pool resource
274 ---------------------------------------------------------------------------*/
275
276typedef enum
277{
278 /* managment resource pool ID */
279 WDI_MGMT_POOL_ID = 0,
280 /* Data resource pool ID */
281 WDI_DATA_POOL_ID = 1
282}WDI_ResPoolType;
283
284/*============================================================================
285 * GENERIC STRUCTURES - END
286 ============================================================================*/
287
288/*----------------------------------------------------------------------------
289 * Type Declarations
290 * -------------------------------------------------------------------------*/
291/*---------------------------------------------------------------------------
292 WDI Status
293---------------------------------------------------------------------------*/
294typedef enum
295{
296 WDI_STATUS_SUCCESS, /* Operation has completed successfully*/
297 WDI_STATUS_SUCCESS_SYNC, /* Operation has completed successfully in a
298 synchronous way - no rsp will be generated*/
299 WDI_STATUS_PENDING, /* Operation result is pending and will be
300 provided asynchronously through the Req Status
301 Callback */
302 WDI_STATUS_E_FAILURE, /* Operation has ended in a generic failure*/
303 WDI_STATUS_RES_FAILURE, /* Operation has ended in a resource failure*/
304 WDI_STATUS_MEM_FAILURE, /* Operation has ended in a memory allocation
305 failure*/
306 WDI_STATUS_E_NOT_ALLOWED, /* Operation is not allowed in the current state
307 of the driver*/
308 WDI_STATUS_E_NOT_IMPLEMENT, /* Operation is not yet implemented*/
309
310 WDI_STATUS_DEV_INTERNAL_FAILURE, /*An internal error has occurred in the device*/
311 WDI_STATUS_MAX
312
313}WDI_Status;
314
315
316/*---------------------------------------------------------------------------
317 WDI_ReqStatusCb
318
319 DESCRIPTION
320
321 This callback is invoked by DAL to deliver to UMAC the result of posting
322 a previous request for which the return status was PENDING.
323
324 PARAMETERS
325
326 IN
327 wdiStatus: response status received from the Control Transport
328 pUserData: user data
329
330
331
332 RETURN VALUE
333 The result code associated with performing the operation
334---------------------------------------------------------------------------*/
335typedef void (*WDI_ReqStatusCb)(WDI_Status wdiStatus,
336 void* pUserData);
337
338/*---------------------------------------------------------------------------
339 WDI_LowLevelIndEnumType
340 Types of indication that can be posted to UMAC by DAL
341---------------------------------------------------------------------------*/
342typedef enum
343{
344 /*When RSSI monitoring is enabled of the Lower MAC and a threshold has been
345 passed. */
346 WDI_RSSI_NOTIFICATION_IND,
347
348 /*Link loss in the low MAC */
349 WDI_MISSED_BEACON_IND,
350
351 /*when hardware has signaled an unknown addr2 frames. The indication will
352 contain info from frames to be passed to the UMAC, this may use this info to
353 deauth the STA*/
354 WDI_UNKNOWN_ADDR2_FRAME_RX_IND,
355
356 /*MIC Failure detected by HW*/
357 WDI_MIC_FAILURE_IND,
358
359 /*Fatal Error Ind*/
360 WDI_FATAL_ERROR_IND,
361
362 /*Delete Station Ind*/
363 WDI_DEL_STA_IND,
364
365 /*Indication from Coex*/
366 WDI_COEX_IND,
367
368 /* Indication for Tx Complete */
369 WDI_TX_COMPLETE_IND,
370
371 /*.P2P_NOA_Attr_Indication */
372 WDI_P2P_NOA_ATTR_IND,
373
374 /* Preferred Network Found Indication */
375 WDI_PREF_NETWORK_FOUND_IND,
376
377 WDI_WAKE_REASON_IND,
378
379 /* Tx PER Tracking Indication */
380 WDI_TX_PER_HIT_IND,
Viral Modid86bde22012-12-10 13:09:21 -0800381
Viral Modid86bde22012-12-10 13:09:21 -0800382 /* P2P_NOA_Start_Indication */
383 WDI_P2P_NOA_START_IND,
Viral Modid86bde22012-12-10 13:09:21 -0800384
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +0530385 /* TDLS_Indication */
386 WDI_TDLS_IND,
387
Leo Changd9df8aa2013-09-26 13:32:26 -0700388 /* LPHB Indication from FW to umac */
389 WDI_LPHB_IND,
Leo Chang9056f462013-08-01 19:21:11 -0700390
Ravi Joshid2ca7c42013-07-23 08:37:49 -0700391 /* IBSS Peer Inactivity Indication */
392 WDI_IBSS_PEER_INACTIVITY_IND,
393
Yue Mab9c86f42013-08-14 15:59:08 -0700394 /* Periodic Tx Pattern FW Indication */
395 WDI_PERIODIC_TX_PTRN_FW_IND,
396
Rajeev79dbe4c2013-10-05 11:03:42 +0530397#ifdef FEATURE_WLAN_BATCH_SCAN
398 /*Batch scan result indication from FW*/
399 WDI_BATCH_SCAN_RESULT_IND,
400#endif
401
Leo Chang0b0e45a2013-12-15 15:18:55 -0800402#ifdef FEATURE_WLAN_CH_AVOID
403 WDI_CH_AVOID_IND,
404#endif /* FEATURE_WLAN_CH_AVOID */
405
Jeff Johnson295189b2012-06-20 16:38:30 -0700406 WDI_MAX_IND
407}WDI_LowLevelIndEnumType;
408
409
410/*---------------------------------------------------------------------------
411 WDI_LowRSSIThIndType
412---------------------------------------------------------------------------*/
413typedef struct
414{
415 /*Positive crossing of Rssi Thresh1*/
416 wpt_uint32 bRssiThres1PosCross : 1;
417 /*Negative crossing of Rssi Thresh1*/
418 wpt_uint32 bRssiThres1NegCross : 1;
419 /*Positive crossing of Rssi Thresh2*/
420 wpt_uint32 bRssiThres2PosCross : 1;
421 /*Negative crossing of Rssi Thresh2*/
422 wpt_uint32 bRssiThres2NegCross : 1;
423 /*Positive crossing of Rssi Thresh3*/
424 wpt_uint32 bRssiThres3PosCross : 1;
425 /*Negative crossing of Rssi Thresh3*/
426 wpt_uint32 bRssiThres3NegCross : 1;
427
Srinivasdaaec712012-12-12 15:59:44 -0800428 wpt_uint32 avgRssi : 8;
429 wpt_uint32 bReserved : 18;
Jeff Johnson295189b2012-06-20 16:38:30 -0700430
431}WDI_LowRSSIThIndType;
432
433
434/*---------------------------------------------------------------------------
435 WDI_UnkAddr2FrmRxIndType
436---------------------------------------------------------------------------*/
437typedef struct
438{
439 /*Rx Bd data of the unknown received addr2 frame.*/
440 void* bufRxBd;
441
442 /*Buffer Length*/
443 wpt_uint16 usBufLen;
444}WDI_UnkAddr2FrmRxIndType;
445
446/*---------------------------------------------------------------------------
447 WDI_DeleteSTAIndType
448---------------------------------------------------------------------------*/
449typedef struct
450{
451 /*ASSOC ID, as assigned by UMAC*/
452 wpt_uint16 usAssocId;
453
454 /*STA Index returned during DAL_PostAssocReq or DAL_ConfigStaReq*/
455 wpt_uint8 ucSTAIdx;
456
457 /*BSSID of STA*/
458 wpt_macAddr macBSSID;
459
460 /*MAC ADDR of STA*/
461 wpt_macAddr macADDR2;
462
463 /* To unify the keepalive / unknown A2 / tim-based disa*/
464 wpt_uint16 wptReasonCode;
465
466}WDI_DeleteSTAIndType;
467
468/*---------------------------------------------------------------------------
469 WDI_MicFailureIndType
470---------------------------------------------------------------------------*/
471typedef struct
472{
473 /*current BSSID*/
474 wpt_macAddr bssId;
475
476 /*Source mac address*/
477 wpt_macAddr macSrcAddr;
478
479 /*Transmitter mac address*/
480 wpt_macAddr macTaAddr;
481
482 /*Destination mac address*/
483 wpt_macAddr macDstAddr;
484
485 /*Multicast flag*/
486 wpt_uint8 ucMulticast;
487
488 /*First byte of IV*/
489 wpt_uint8 ucIV1;
490
491 /*Key Id*/
492 wpt_uint8 keyId;
493
494 /*Sequence Number*/
495 wpt_uint8 TSC[WDI_CIPHER_SEQ_CTR_SIZE];
496
497 /*receive address */
498 wpt_macAddr macRxAddr;
499}WDI_MicFailureIndType;
500
501/*---------------------------------------------------------------------------
502 WDI_CoexIndType
503---------------------------------------------------------------------------*/
504typedef struct
505{
506 wpt_uint32 coexIndType;
507 wpt_uint32 coexIndData[WDI_COEX_IND_DATA_SIZE];
508} WDI_CoexIndType;
509
510/*---------------------------------------------------------------------------
Sundaresan Ramachandran76e48e82013-07-15 13:07:17 +0530511 WDI_DHCPInd
512---------------------------------------------------------------------------*/
513
514typedef struct
515{
516 wpt_uint8 device_mode;
517 wpt_uint8 macAddr[WDI_MAC_ADDR_LEN];
518}WDI_DHCPInd;
519
520/*---------------------------------------------------------------------------
521
Jeff Johnson295189b2012-06-20 16:38:30 -0700522 WDI_MacSSid
523---------------------------------------------------------------------------*/
524typedef struct
525{
526 wpt_uint8 ucLength;
527 wpt_uint8 sSSID[WDI_MAX_SSID_SIZE];
528} WDI_MacSSid;
529
530#ifdef FEATURE_WLAN_SCAN_PNO
531/*---------------------------------------------------------------------------
532 WDI_PrefNetworkFoundInd
533---------------------------------------------------------------------------*/
534typedef struct
535{
536 /* Network that was found with the highest RSSI*/
Srikant Kuppa066904f2013-05-07 13:56:02 -0700537 WDI_MacSSid ssId;
Jeff Johnson295189b2012-06-20 16:38:30 -0700538 /* Indicates the RSSI */
Srikant Kuppa066904f2013-05-07 13:56:02 -0700539 wpt_uint8 rssi;
540 wpt_uint16 frameLength;
541 wpt_uint8 *pData;
Jeff Johnson295189b2012-06-20 16:38:30 -0700542} WDI_PrefNetworkFoundInd;
543#endif // FEATURE_WLAN_SCAN_PNO
544
Jeff Johnson295189b2012-06-20 16:38:30 -0700545/*---------------------------------------------------------------------------
546 *WDI_P2pNoaAttrIndType
547 *-------------------------------------------------------------------------*/
Jeff Johnson295189b2012-06-20 16:38:30 -0700548typedef struct
549{
550 wpt_uint8 ucIndex ;
551 wpt_uint8 ucOppPsFlag ;
552 wpt_uint16 usCtWin ;
553
554 wpt_uint16 usNoa1IntervalCnt;
555 wpt_uint16 usRsvd1 ;
556 wpt_uint32 uslNoa1Duration;
557 wpt_uint32 uslNoa1Interval;
558 wpt_uint32 uslNoa1StartTime;
559
560 wpt_uint16 usNoa2IntervalCnt;
561 wpt_uint16 usRsvd2;
562 wpt_uint32 uslNoa2Duration;
563 wpt_uint32 uslNoa2Interval;
564 wpt_uint32 uslNoa2StartTime;
565
566 wpt_uint32 status;
567}WDI_P2pNoaAttrIndType;
Viral Modid86bde22012-12-10 13:09:21 -0800568
569/*---------------------------------------------------------------------------
570 *WDI_P2pNoaStartIndType
571 *-------------------------------------------------------------------------*/
572typedef struct
573{
574 wpt_uint32 status;
575 wpt_uint32 bssIdx;
576}WDI_P2pNoaStartIndType;
577
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +0530578/*---------------------------------------------------------------------------
579 *WDI_TdlsIndType
580 *-------------------------------------------------------------------------*/
581typedef struct
582{
583 wpt_uint16 status;
584 wpt_uint16 assocId;
585 wpt_uint16 staIdx;
586 wpt_uint16 reasonCode;
587}WDI_TdlsIndType;
Jeff Johnson295189b2012-06-20 16:38:30 -0700588
589#ifdef WLAN_WAKEUP_EVENTS
590/*---------------------------------------------------------------------------
591 WDI_WakeReasonIndType
592---------------------------------------------------------------------------*/
593typedef struct
594{
595 wpt_uint32 ulReason; /* see tWakeReasonType */
596 wpt_uint32 ulReasonArg; /* argument specific to the reason type */
597 wpt_uint32 ulStoredDataLen; /* length of optional data stored in this message, in case
598 HAL truncates the data (i.e. data packets) this length
599 will be less than the actual length */
600 wpt_uint32 ulActualDataLen; /* actual length of data */
601 wpt_uint8 aDataStart[1]; /* variable length start of data (length == storedDataLen)
602 see specific wake type */
603} WDI_WakeReasonIndType;
604#endif // WLAN_WAKEUP_EVENTS
605
606/*---------------------------------------------------------------------------
Leela Venkata Kiran Kumar Reddy Chirala3ca17902013-02-27 19:50:05 -0800607 WDI_MissedBeaconIndType
608-----------------------------------------------------------------------------*/
609typedef struct
610{
611 wpt_uint8 bssIdx; /*bssidx on which beacon is missed*/
612} WDI_MissedBeaconIndType;
613
Leo Chang9056f462013-08-01 19:21:11 -0700614#ifdef FEATURE_WLAN_LPHB
615/*---------------------------------------------------------------------------
616 WDI_LPHBTimeoutIndData
617-----------------------------------------------------------------------------*/
618typedef struct
619{
620 wpt_uint8 bssIdx;
621 wpt_uint8 sessionIdx;
622 wpt_uint8 protocolType; /*TCP or UDP*/
623 wpt_uint8 eventReason;
624} WDI_LPHBTimeoutIndData;
625#endif /* FEATURE_WLAN_LPHB */
Leela Venkata Kiran Kumar Reddy Chirala3ca17902013-02-27 19:50:05 -0800626
Yue Mab9c86f42013-08-14 15:59:08 -0700627/*-----------------------------------------------------------------------------
628WDI_PeriodicTxPtrnFwIndType
629-----------------------------------------------------------------------------*/
630typedef struct
631{
632 wpt_uint8 bssIdx;
633 wpt_uint32 selfStaIdx;
634 wpt_uint32 status;
635 wpt_uint32 patternIdBitmap;
636} WDI_PeriodicTxPtrnFwIndType;
637
Rajeev79dbe4c2013-10-05 11:03:42 +0530638#ifdef FEATURE_WLAN_BATCH_SCAN
639/*---------------------------------------------------------------------------
640 WDI_SetBatchScanReqType
641---------------------------------------------------------------------------*/
642typedef struct
643{
644 wpt_uint32 scanFrequency; /* how frequent to do scan default 30Sec*/
645 wpt_uint32 numberOfScansToBatch; /* number of scans to batch */
646 wpt_uint32 bestNetwork; /* best networks in terms of rssi */
647 wpt_uint8 rfBand; /* band to scan :
648 0 ->both Band, 1->2.4Ghz Only
649 and 2-> 5GHz Only */
650 wpt_uint32 rtt; /* set if required to do RTT it is not
651 supported in current version */
652}WDI_SetBatchScanReqType;
653
654/*---------------------------------------------------------------------------
655 WDI_SetBatchScanRspType
656---------------------------------------------------------------------------*/
657typedef struct
658{
659 /*max number of scans which FW can cache*/
660 wpt_uint32 nScansToBatch;
661}WDI_SetBatchScanRspType;
662
663/*---------------------------------------------------------------------------
664 WDI_TriggerBatchScanResultIndType
665---------------------------------------------------------------------------*/
666typedef struct
667{
668 wpt_uint32 param;
669}WDI_TriggerBatchScanResultIndType;
670
671/*---------------------------------------------------------------------------
672 WDI_StopBatchScanIndType
673---------------------------------------------------------------------------*/
674typedef struct
675{
676 /*max number of scans which FW can cache*/
677 wpt_uint32 param;
678}WDI_StopBatchScanIndType;
679
680
681/*---------------------------------------------------------------------------
682 * WDI_BatchScanResultIndType
683 *--------------------------------------------------------------------------*/
684typedef struct
685{
686 wpt_uint32 bssid[6]; /* BSSID */
687 wpt_uint32 ssid[32]; /* SSID */
688 wpt_uint32 ch; /* Channel */
689 wpt_uint32 rssi; /* RSSI or Level */
690 /* Timestamp when Network was found. Used to calculate age based on
691 timestamp in GET_RSP msg header */
692 wpt_uint32 timestamp;
693} tWDIBatchScanNetworkInfo, *tpWDIBatchScanNetworkInfo;
694
695typedef struct
696{
697 wpt_uint32 scanId; /*Scan List ID*/
698 /*No of AP in a Scan Result. Should be same as bestNetwork in SET_REQ msg*/
699 wpt_uint32 numNetworksInScanList;
700 /*Variable data ptr: Number of AP in Scan List*/
701 wpt_uint32 scanList[1];
702} tWDIBatchScanList, *tpWDIBatchScanList;
703
704typedef struct
705{
706 wpt_uint32 timestamp;
707 wpt_uint32 numScanLists;
708 wpt_boolean isLastResult;
709 /* Variable Data ptr: Number of Scan Lists*/
710 wpt_uint32 scanResults[1];
711} tWDIBatchScanResultParam, *tpWDIBatchScanResultParam;
712
713#endif
714
715
Leela Venkata Kiran Kumar Reddy Chirala3ca17902013-02-27 19:50:05 -0800716/*---------------------------------------------------------------------------
Ravi Joshid2ca7c42013-07-23 08:37:49 -0700717 WDI_IbssPeerInactivityIndType
718-----------------------------------------------------------------------------*/
719typedef struct
720{
721 wpt_uint8 bssIdx;
722 wpt_uint8 staIdx;
723 wpt_macAddr staMacAddr;
724}WDI_IbssPeerInactivityIndType;
725
726/*---------------------------------------------------------------------------
Chittajit Mitraf5413a42013-10-18 14:20:08 -0700727 WDI_TxRateFlags
728-----------------------------------------------------------------------------*/
729typedef enum
730{
731 WDI_TX_RATE_LEGACY = 0x1, /* Legacy rates */
732 WDI_TX_RATE_HT20 = 0x2, /* HT20 rates */
733 WDI_TX_RATE_HT40 = 0x4, /* HT40 rates */
734 WDI_TX_RATE_SGI = 0x8, /* Rate with Short guard interval */
735 WDI_TX_RATE_LGI = 0x10, /* Rate with Long guard interval */
736 WDI_TX_RATE_VHT20 = 0x20, /* VHT 20 rates */
737 WDI_TX_RATE_VHT40 = 0x40, /* VHT 20 rates */
738 WDI_TX_RATE_VHT80 = 0x80, /* VHT 20 rates */
739 WDI_TX_RATE_VIRT = 0x100, /* Virtual Rate */
740} WDI_TxRateFlags;
741
742/*---------------------------------------------------------------------------
743 WDI_RateUpdateIndParams
744-----------------------------------------------------------------------------*/
745typedef struct
746{
747 /* 0 implies RA, positive value implies fixed rate, -1 implies ignore this
748 * param ucastDataRate can be used to control RA behavior of unicast data to
749 */
750 wpt_int32 ucastDataRate;
751
752 /* TX flag to differentiate between HT20, HT40 etc */
753 WDI_TxRateFlags ucastDataRateTxFlag;
754
755 /* BSSID - Optional. 00-00-00-00-00-00 implies apply to all BCAST STAs */
756 wpt_macAddr bssid;
757
758 /*
759 * 0 implies MCAST RA, positive value implies fixed rate,
760 * -1 implies ignore this param
761 */
762 wpt_int32 reliableMcastDataRate; //unit Mbpsx10
763
764 /* TX flag to differentiate between HT20, HT40 etc */
765 WDI_TxRateFlags reliableMcastDataRateTxFlag;
766
767 /*
768 * MCAST(or BCAST) fixed data rate in 2.4 GHz, unit Mbpsx10,
769 * 0 implies ignore
770 */
771 wpt_uint32 mcastDataRate24GHz;
772
773 /* TX flag to differentiate between HT20, HT40 etc */
774 WDI_TxRateFlags mcastDataRate24GHzTxFlag;
775
776 /*
777 * MCAST(or BCAST) fixed data rate in 5 GHz,
778 * unit Mbpsx10, 0 implies ignore
779 */
780 wpt_uint32 mcastDataRate5GHz;
781
782 /* TX flag to differentiate between HT20, HT40 etc */
783 WDI_TxRateFlags mcastDataRate5GHzTxFlag;
784
785 /*
786 * Request status callback offered by UMAC - it is called if the current
787 * req has returned PENDING as status; it delivers the status of sending
788 * the message over the BUS
789 */
790 WDI_ReqStatusCb wdiReqStatusCB;
791
792 /*
793 * The user data passed in by UMAC, it will be sent back when the above
794 * function pointer will be called
795 */
796 void *pUserData;
797
798} WDI_RateUpdateIndParams;
799
Leo Chang0b0e45a2013-12-15 15:18:55 -0800800#ifdef FEATURE_WLAN_CH_AVOID
801#define WDI_CH_AVOID_MAX_RANGE 4
802
803typedef struct
804{
805 wpt_uint32 startFreq;
806 wpt_uint32 endFreq;
807} WDI_ChAvoidFreqType;
808
809typedef struct
810{
811 wpt_uint32 avoidRangeCount;
812 WDI_ChAvoidFreqType avoidFreqRange[WDI_CH_AVOID_MAX_RANGE];
813} WDI_ChAvoidIndType;
814#endif /* FEATURE_WLAN_CH_AVOID */
815
Chittajit Mitraf5413a42013-10-18 14:20:08 -0700816/*---------------------------------------------------------------------------
Jeff Johnson295189b2012-06-20 16:38:30 -0700817 WDI_LowLevelIndType
818 Inidcation type and information about the indication being carried
819 over
820---------------------------------------------------------------------------*/
821typedef struct
822{
823 /*Inidcation type*/
824 WDI_LowLevelIndEnumType wdiIndicationType;
825
826 /*Indication data*/
827 union
828 {
829 /*RSSI Threshold Info for WDI_LOW_RSSI_IND*/
830 WDI_LowRSSIThIndType wdiLowRSSIInfo;
831
832 /*Addr2 Frame Info for WDI_UNKNOWN_ADDR2_FRAME_RX_IND*/
833 WDI_UnkAddr2FrmRxIndType wdiUnkAddr2FrmInfo;
834
835 /*MIC Failure info for WDI_MIC_FAILURE_IND*/
836 WDI_MicFailureIndType wdiMICFailureInfo;
837
838 /*Error code for WDI_FATAL_ERROR_IND*/
839 wpt_uint16 usErrorCode;
840
841 /*Delete STA Indication*/
842 WDI_DeleteSTAIndType wdiDeleteSTAIndType;
843
844 /*Coex Indication*/
845 WDI_CoexIndType wdiCoexInfo;
846
847 /* Tx Complete Indication */
848 wpt_uint32 tx_complete_status;
849
Jeff Johnson295189b2012-06-20 16:38:30 -0700850 /* P2P NOA ATTR Indication */
851 WDI_P2pNoaAttrIndType wdiP2pNoaAttrInfo;
Viral Modid86bde22012-12-10 13:09:21 -0800852 WDI_P2pNoaStartIndType wdiP2pNoaStartInfo;
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +0530853 /* TDLS Indications */
854 WDI_TdlsIndType wdiTdlsIndInfo;
Jeff Johnson295189b2012-06-20 16:38:30 -0700855
856
857#ifdef FEATURE_WLAN_SCAN_PNO
858 WDI_PrefNetworkFoundInd wdiPrefNetworkFoundInd;
859#endif // FEATURE_WLAN_SCAN_PNO
860
861#ifdef WLAN_WAKEUP_EVENTS
862 WDI_WakeReasonIndType wdiWakeReasonInd;
863#endif // WLAN_WAKEUP_EVENTS
Leela Venkata Kiran Kumar Reddy Chirala3ca17902013-02-27 19:50:05 -0800864 WDI_MissedBeaconIndType wdiMissedBeaconInd;
Ravi Joshid2ca7c42013-07-23 08:37:49 -0700865
Leo Chang9056f462013-08-01 19:21:11 -0700866#ifdef FEATURE_WLAN_LPHB
867 WDI_LPHBTimeoutIndData wdiLPHBTimeoutInd;
868#endif /* FEATURE_WLAN_LPHB */
Ravi Joshid2ca7c42013-07-23 08:37:49 -0700869
870 /* IBSS Peer Inactivity Indication */
871 WDI_IbssPeerInactivityIndType wdiIbssPeerInactivityInd;
872
Yue Mab9c86f42013-08-14 15:59:08 -0700873 /* Periodic TX Pattern FW Indication */
874 WDI_PeriodicTxPtrnFwIndType wdiPeriodicTxPtrnFwInd;
Rajeev79dbe4c2013-10-05 11:03:42 +0530875
876#ifdef FEATURE_WLAN_BATCH_SCAN
877 /*batch scan result indication from FW*/
878 void *pBatchScanResult;
879#endif
880
Leo Chang0b0e45a2013-12-15 15:18:55 -0800881#ifdef FEATURE_WLAN_CH_AVOID
882 WDI_ChAvoidIndType wdiChAvoidInd;
883#endif /* FEATURE_WLAN_CH_AVOID */
Jeff Johnson295189b2012-06-20 16:38:30 -0700884 } wdiIndicationData;
885}WDI_LowLevelIndType;
886
887/*---------------------------------------------------------------------------
888 WDI_LowLevelIndCBType
889
890 DESCRIPTION
891
892 This callback is invoked by DAL to deliver to UMAC certain indications
893 that has either received from the lower device or has generated itself.
894
895 PARAMETERS
896
897 IN
898 pwdiInd: information about the indication sent over
899 pUserData: user data provided by UMAC during registration
900
901
902
903 RETURN VALUE
904 The result code associated with performing the operation
905---------------------------------------------------------------------------*/
906typedef void (*WDI_LowLevelIndCBType)(WDI_LowLevelIndType* pwdiInd,
907 void* pUserData);
908
909/*---------------------------------------------------------------------------
910 WDI_DriverType
911---------------------------------------------------------------------------*/
912typedef enum
913{
914 WDI_DRIVER_TYPE_PRODUCTION = 0,
915 WDI_DRIVER_TYPE_MFG = 1,
916 WDI_DRIVER_TYPE_DVT = 2
917} WDI_DriverType;
918
919/*---------------------------------------------------------------------------
920 WDI_StartReqParamsType
921---------------------------------------------------------------------------*/
922typedef struct
923{
924 /*This is a TLV formatted buffer containing all config values that can
925 be set through the DAL Interface
926
927 The TLV is expected to be formatted like this:
928
929 0 7 15 31 ....
930 | CONFIG ID | CFG LEN | RESERVED | CFG BODY |
931
932 Or from a C construct point of VU it would look like this:
933
934 typedef struct WPT_PACK_POST
935 {
936 #ifdef WPT_BIG_ENDIAN
937 wpt_uint32 ucCfgId:8;
938 wpt_uint32 ucCfgLen:8;
939 wpt_uint32 usReserved:16;
940 #else
941 wpt_uint32 usReserved:16;
942 wpt_uint32 ucCfgLen:8;
943 wpt_uint32 ucCfgId:8;
944 #endif
945
946 wpt_uint8 ucCfgBody[ucCfgLen];
947 }WDI_ConfigType;
948
949 Multiple such tuplets are to be placed in the config buffer. One for
950 each required configuration item:
951
952 | TLV 1 | TLV2 | ....
953
954 The buffer is expected to be a flat area of memory that can be manipulated
955 with standard memory routines.
956
957 For more info please check paragraph 2.3.1 Config Structure from the
958 HAL LLD.
959
960 For a list of accepted configuration list and IDs please look up
961 wlan_qct_dal_cfg.h
962
963 */
964 void* pConfigBuffer;
965
966 /*Length of the config buffer above*/
967 wpt_uint16 usConfigBufferLen;
968
969 /*Production or FTM driver*/
970 WDI_DriverType wdiDriverType;
971
972 /*Should device enable frame translation */
973 wpt_uint8 bFrameTransEnabled;
974
975 /*Request status callback offered by UMAC - it is called if the current
976 req has returned PENDING as status; it delivers the status of sending
977 the message over the BUS */
978 WDI_ReqStatusCb wdiReqStatusCB;
979
980 /*The user data passed in by UMAC, it will be sent back when the above
981 function pointer will be called */
982 void* pUserData;
983
984 /*Indication callback given by UMAC to be called by the WLAN DAL when it
985 wishes to send something back independent of a request*/
986 WDI_LowLevelIndCBType wdiLowLevelIndCB;
987
988 /*The user data passed in by UMAC, it will be sent back when the indication
989 function pointer will be called */
990 void* pIndUserData;
991}WDI_StartReqParamsType;
992
993
994/*---------------------------------------------------------------------------
995 WDI_StartRspParamsType
996---------------------------------------------------------------------------*/
997typedef struct
998{
999 /*Status of the response*/
1000 WDI_Status wdiStatus;
1001
1002 /*Max number of STA supported by the device*/
1003 wpt_uint8 ucMaxStations;
1004
1005 /*Max number of BSS supported by the device*/
1006 wpt_uint8 ucMaxBssids;
1007
1008 /*Version of the WLAN HAL API with which we were compiled*/
1009 WDI_WlanVersionType wlanCompiledVersion;
1010
1011 /*Version of the WLAN HAL API that was reported*/
1012 WDI_WlanVersionType wlanReportedVersion;
1013
1014 /*WCNSS Software version string*/
1015 wpt_uint8 wcnssSoftwareVersion[WDI_VERSION_LENGTH];
1016
1017 /*WCNSS Hardware version string*/
1018 wpt_uint8 wcnssHardwareVersion[WDI_VERSION_LENGTH];
1019}WDI_StartRspParamsType;
1020
1021
1022/*---------------------------------------------------------------------------
1023 WDI_StopType
1024---------------------------------------------------------------------------*/
1025typedef enum
1026{
1027 /*Device is being stopped due to a reset*/
1028 WDI_STOP_TYPE_SYS_RESET,
1029
1030 /*Device is being stopped due to entering deep sleep*/
1031 WDI_STOP_TYPE_SYS_DEEP_SLEEP,
1032
1033 /*Device is being stopped because the RF needs to shut off
1034 (e.g.:Airplane mode)*/
1035 WDI_STOP_TYPE_RF_KILL
1036}WDI_StopType;
1037
1038/*---------------------------------------------------------------------------
1039 WDI_StopReqParamsType
1040---------------------------------------------------------------------------*/
1041typedef struct
1042{
1043
1044 /*The reason for which the device is being stopped*/
1045 WDI_StopType wdiStopReason;
1046
1047 /*Request status callback offered by UMAC - it is called if the current
1048 req has returned PENDING as status; it delivers the status of sending
1049 the message over the BUS */
1050 WDI_ReqStatusCb wdiReqStatusCB;
1051
1052 /*The user data passed in by UMAC, it will be sent back when the above
1053 function pointer will be called */
1054 void* pUserData;
1055}WDI_StopReqParamsType;
1056
1057
1058/*---------------------------------------------------------------------------
1059 WDI_ScanMode
1060---------------------------------------------------------------------------*/
1061typedef enum
1062{
1063 WDI_SCAN_MODE_NORMAL = 0,
1064 WDI_SCAN_MODE_LEARN,
1065 WDI_SCAN_MODE_SCAN,
1066 WDI_SCAN_MODE_PROMISC,
Madan Mohan Koyyalamudi9b876782012-10-11 16:22:51 -07001067 WDI_SCAN_MODE_SUSPEND_LINK,
1068 WDI_SCAN_MODE_ROAM_SCAN,
1069 WDI_SCAN_MODE_ROAM_SUSPEND_LINK,
1070
Jeff Johnson295189b2012-06-20 16:38:30 -07001071} WDI_ScanMode;
1072
1073/*---------------------------------------------------------------------------
1074 WDI_ScanEntry
1075---------------------------------------------------------------------------*/
1076typedef struct
1077{
1078 wpt_uint8 bssIdx[WDI_NUM_BSSID];
1079 wpt_uint8 activeBSScnt;
1080}WDI_ScanEntry;
1081
1082/*---------------------------------------------------------------------------
1083 WDI_InitScanReqInfoType
1084---------------------------------------------------------------------------*/
1085typedef struct
1086{
1087 /*LEARN - AP Role
1088 SCAN - STA Role*/
1089 WDI_ScanMode wdiScanMode;
1090
1091 /*BSSID of the BSS*/
1092 wpt_macAddr macBSSID;
1093
1094 /*Whether BSS needs to be notified*/
1095 wpt_boolean bNotifyBSS;
1096
1097 /*Kind of frame to be used for notifying the BSS (Data Null, QoS Null, or
1098 CTS to Self). Must always be a valid frame type.*/
1099 wpt_uint8 ucFrameType;
1100
1101 /*UMAC has the option of passing the MAC frame to be used for notifying
1102 the BSS. If non-zero, HAL will use the MAC frame buffer pointed to by
1103 macMgmtHdr. If zero, HAL will generate the appropriate MAC frame based on
1104 frameType.*/
1105 wpt_uint8 ucFrameLength;
1106
1107 /*Pointer to the MAC frame buffer. Used only if ucFrameLength is non-zero.*/
1108 WDI_MacMgmtHdr wdiMACMgmtHdr;
1109
1110 /*Entry to hold number of active BSS to send NULL frames before
1111 * initiating SCAN*/
1112 WDI_ScanEntry wdiScanEntry;
1113
1114 /* Flag to enable/disable Single NOA*/
1115 wpt_boolean bUseNOA;
1116
1117 /* Indicates the scan duration (in ms) */
1118 wpt_uint16 scanDuration;
1119
1120}WDI_InitScanReqInfoType;
1121
1122/*---------------------------------------------------------------------------
1123 WDI_InitScanReqParamsType
1124---------------------------------------------------------------------------*/
1125typedef struct
1126{
1127 /*The info associated with the request that needs to be sent over to the
1128 device*/
1129 WDI_InitScanReqInfoType wdiReqInfo;
1130
1131 /*Request status callback offered by UMAC - it is called if the current
1132 req has returned PENDING as status; it delivers the status of sending
1133 the message over the BUS */
1134 WDI_ReqStatusCb wdiReqStatusCB;
1135
1136 /*The user data passed in by UMAC, it will be sent back when the above
1137 function pointer will be called */
1138 void* pUserData;
1139}WDI_InitScanReqParamsType;
1140
1141/*---------------------------------------------------------------------------
1142 WDI_StartScanReqParamsType
1143---------------------------------------------------------------------------*/
1144typedef struct
1145{
1146 /*Indicates the channel to scan*/
1147 wpt_uint8 ucChannel;
1148
1149 /*Request status callback offered by UMAC - it is called if the current
1150 req has returned PENDING as status; it delivers the status of sending
1151 the message over the BUS */
1152 WDI_ReqStatusCb wdiReqStatusCB;
1153
1154 /*The user data passed in by UMAC, it will be sent back when the above
1155 function pointer will be called */
1156 void* pUserData;
1157}WDI_StartScanReqParamsType;
1158
1159/*---------------------------------------------------------------------------
1160 WDI_StartScanRspParamsType
1161---------------------------------------------------------------------------*/
1162typedef struct
1163{
1164 /*Indicates the status of the operation */
1165 WDI_Status wdiStatus;
1166
1167#if defined WLAN_FEATURE_VOWIFI
1168 wpt_uint32 aStartTSF[2];
1169 wpt_int8 ucTxMgmtPower;
1170#endif
1171}WDI_StartScanRspParamsType;
1172
1173/*---------------------------------------------------------------------------
1174 WDI_EndScanReqParamsType
1175---------------------------------------------------------------------------*/
1176typedef struct
1177{
1178 /*Indicates the channel to stop scanning. Not used really. But retained
1179 for symmetry with "start Scan" message. It can also help in error
1180 check if needed.*/
1181 wpt_uint8 ucChannel;
1182
1183 /*Request status callback offered by UMAC - it is called if the current
1184 req has returned PENDING as status; it delivers the status of sending
1185 the message over the BUS */
1186 WDI_ReqStatusCb wdiReqStatusCB;
1187
1188 /*The user data passed in by UMAC, it will be sent back when the above
1189 function pointer will be called */
1190 void* pUserData;
1191}WDI_EndScanReqParamsType;
1192
1193/*---------------------------------------------------------------------------
1194 WDI_PhyChanBondState
1195---------------------------------------------------------------------------*/
1196typedef enum
1197{
1198 WDI_PHY_SINGLE_CHANNEL_CENTERED = 0,
1199 WDI_PHY_DOUBLE_CHANNEL_LOW_PRIMARY = 1,
1200 WDI_PHY_DOUBLE_CHANNEL_CENTERED = 2,
Jeff Johnsone7245742012-09-05 17:12:55 -07001201 WDI_PHY_DOUBLE_CHANNEL_HIGH_PRIMARY = 3,
1202#ifdef WLAN_FEATURE_11AC
1203 WDI_QUADRUPLE_CHANNEL_20MHZ_LOW_40MHZ_CENTERED = 4, //20/40MHZ offset LOW 40/80MHZ offset CENTERED
1204 WDI_QUADRUPLE_CHANNEL_20MHZ_CENTERED_40MHZ_CENTERED = 5, //20/40MHZ offset CENTERED 40/80MHZ offset CENTERED
1205 WDI_QUADRUPLE_CHANNEL_20MHZ_HIGH_40MHZ_CENTERED = 6, //20/40MHZ offset HIGH 40/80MHZ offset CENTERED
1206 WDI_QUADRUPLE_CHANNEL_20MHZ_LOW_40MHZ_LOW = 7,//20/40MHZ offset LOW 40/80MHZ offset LOW
1207 WDI_QUADRUPLE_CHANNEL_20MHZ_HIGH_40MHZ_LOW = 8, //20/40MHZ offset HIGH 40/80MHZ offset LOW
1208 WDI_QUADRUPLE_CHANNEL_20MHZ_LOW_40MHZ_HIGH = 9, //20/40MHZ offset LOW 40/80MHZ offset HIGH
1209 WDI_QUADRUPLE_CHANNEL_20MHZ_HIGH_40MHZ_HIGH = 10,//20/40MHZ offset-HIGH 40/80MHZ offset HIGH
1210#endif
1211 WDI_MAX_CB_STATE
Jeff Johnson295189b2012-06-20 16:38:30 -07001212} WDI_PhyChanBondState;
1213
1214/*---------------------------------------------------------------------------
1215 WDI_FinishScanReqInfoType
1216---------------------------------------------------------------------------*/
1217typedef struct
1218{
1219 /*LEARN - AP Role
1220 SCAN - STA Role*/
1221 WDI_ScanMode wdiScanMode;
1222
1223 /*Operating channel to tune to.*/
1224 wpt_uint8 ucCurrentOperatingChannel;
1225
1226 /*Channel Bonding state If 20/40 MHz is operational, this will indicate the
1227 40 MHz extension channel in combination with the control channel*/
1228 WDI_PhyChanBondState wdiCBState;
1229
1230 /*BSSID of the BSS*/
1231 wpt_macAddr macBSSID;
1232
1233 /*Whether BSS needs to be notified*/
1234 wpt_boolean bNotifyBSS;
1235
1236 /*Kind of frame to be used for notifying the BSS (Data Null, QoS Null, or
1237 CTS to Self). Must always be a valid frame type.*/
1238 wpt_uint8 ucFrameType;
1239
1240 /*UMAC has the option of passing the MAC frame to be used for notifying
1241 the BSS. If non-zero, HAL will use the MAC frame buffer pointed to by
1242 macMgmtHdr. If zero, HAL will generate the appropriate MAC frame based on
1243 frameType.*/
1244 wpt_uint8 ucFrameLength;
1245
1246 /*Pointer to the MAC frame buffer. Used only if ucFrameLength is non-zero.*/
1247 WDI_MacMgmtHdr wdiMACMgmtHdr;
1248
1249 /*Entry to hold number of active BSS to send NULL frames after SCAN*/
1250 WDI_ScanEntry wdiScanEntry;
1251
1252}WDI_FinishScanReqInfoType;
1253
1254/*---------------------------------------------------------------------------
1255 WDI_SwitchChReqInfoType
1256---------------------------------------------------------------------------*/
1257typedef struct
1258{
1259 /*Indicates the channel to switch to.*/
1260 wpt_uint8 ucChannel;
1261
1262 /*Local power constraint*/
1263 wpt_uint8 ucLocalPowerConstraint;
1264
1265 /*Secondary channel offset */
1266 WDI_HTSecondaryChannelOffset wdiSecondaryChannelOffset;
1267
1268#ifdef WLAN_FEATURE_VOWIFI
1269 wpt_int8 cMaxTxPower;
1270
1271 /*Self STA Mac address*/
1272 wpt_macAddr macSelfStaMacAddr;
1273#endif
1274 /* VO Wifi comment: BSSID is needed to identify which session issued this request. As the
1275 request has power constraints, this should be applied only to that session */
1276 /* V IMP: Keep bssId field at the end of this msg. It is used to mantain backward compatbility
1277 * by way of ignoring if using new host/old FW or old host/new FW since it is at the end of this struct
1278 */
1279 wpt_macAddr macBSSId;
1280
1281}WDI_SwitchChReqInfoType;
1282
1283/*---------------------------------------------------------------------------
1284 WDI_SwitchChReqParamsType
1285---------------------------------------------------------------------------*/
1286typedef struct
1287{
1288 /*Channel Info*/
1289 WDI_SwitchChReqInfoType wdiChInfo;
1290
1291 /*Request status callback offered by UMAC - it is called if the current
1292 req has returned PENDING as status; it delivers the status of sending
1293 the message over the BUS */
1294 WDI_ReqStatusCb wdiReqStatusCB;
1295
1296 /*The user data passed in by UMAC, it will be sent back when the above
1297 function pointer will be called */
1298 void* pUserData;
1299}WDI_SwitchChReqParamsType;
1300
1301/*---------------------------------------------------------------------------
1302 WDI_FinishScanReqParamsType
1303---------------------------------------------------------------------------*/
1304typedef struct
1305{
1306 /*Info for the Finish Scan request that will be sent down to the device*/
1307 WDI_FinishScanReqInfoType wdiReqInfo;
1308
1309 /*Request status callback offered by UMAC - it is called if the current
1310 req has returned PENDING as status; it delivers the status of sending
1311 the message over the BUS */
1312 WDI_ReqStatusCb wdiReqStatusCB;
1313
1314 /*The user data passed in by UMAC, it will be sent back when the above
1315 function pointer will be called */
1316 void* pUserData;
1317}WDI_FinishScanReqParamsType;
1318
1319/*---------------------------------------------------------------------------
1320 WDI_JoinReqInfoType
1321---------------------------------------------------------------------------*/
1322typedef struct
1323{
1324 /*Indicates the BSSID to which STA is going to associate*/
1325 wpt_macAddr macBSSID;
1326
1327 /*Indicates the MAC Address of the current Self STA*/
1328 wpt_macAddr macSTASelf;
1329
1330 /*Indicates the link State determining the entity Type e.g. BTAMP-STA, STA etc.*/
1331 wpt_uint32 linkState;
1332
1333 /*Indicates the channel to switch to.*/
1334 WDI_SwitchChReqInfoType wdiChannelInfo;
1335
1336}WDI_JoinReqInfoType;
1337
Kalikinkar dhara1e83b772014-02-06 12:59:22 -08001338typedef enum
1339{
1340 eWDI_CHANNEL_SWITCH_SOURCE_SCAN,
1341 eWDI_CHANNEL_SWITCH_SOURCE_LISTEN,
1342 eWDI_CHANNEL_SWITCH_SOURCE_MCC,
1343 eWDI_CHANNEL_SWITCH_SOURCE_CSA,
1344 eWDI_CHANNEL_SWITCH_SOURCE_MAX = 0x7FFFFFFF
1345} WDI_ChanSwitchSource;
1346
1347/*---------------------------------------------------------------------------
1348 WDI_SwitchChReqInfoType_V1
1349---------------------------------------------------------------------------*/
1350typedef struct
1351{
1352 /*Indicates the channel to switch to.*/
1353 wpt_uint8 ucChannel;
1354
1355 /*Local power constraint*/
1356 wpt_uint8 ucLocalPowerConstraint;
1357
1358 /*Secondary channel offset */
1359 WDI_HTSecondaryChannelOffset wdiSecondaryChannelOffset;
1360
1361#ifdef WLAN_FEATURE_VOWIFI
1362 wpt_int8 cMaxTxPower;
1363 /*Self STA Mac address*/
1364 wpt_macAddr macSelfStaMacAddr;
1365#endif
1366 /* VO Wifi comment: BSSID is needed to identify which session
1367 issued this request. As the request has power constraints, this
1368 should be applied only to that session
1369 */
1370 /* V IMP: Keep bssId field at the end of this msg. It is used to
1371 maintain backward compatibility by way of ignoring if using new
1372 host/old FW or old host/new FW since it is at the end of this struct
1373 */
1374 wpt_macAddr macBSSId;
1375 /* Source of Channel Switch */
1376 WDI_ChanSwitchSource channelSwitchSrc;
1377}WDI_SwitchChReqInfoType_V1;
1378
1379/*--------------------------------------------------------------------
1380 WDI_SwitchChReqParamsType_V1
1381----------------------------------------------------------------------*/
1382typedef struct
1383{
1384 /*Channel Info*/
1385 WDI_SwitchChReqInfoType_V1 wdiChInfo;
1386
1387 /*Request status callback offered by UMAC - it is called if the current
1388 req has returned PENDING as status; it delivers the status of sending
1389 the message over the BUS */
1390 WDI_ReqStatusCb wdiReqStatusCB;
1391
1392 /*The user data passed in by UMAC, it will be sent back when the above
1393 function pointer will be called */
1394 void* pUserData;
1395}WDI_SwitchChReqParamsType_V1;
1396
Jeff Johnson295189b2012-06-20 16:38:30 -07001397/*---------------------------------------------------------------------------
1398 WDI_JoinReqParamsType
1399---------------------------------------------------------------------------*/
1400typedef struct
1401{
1402 /*Info for the Join request that will be sent down to the device*/
1403 WDI_JoinReqInfoType wdiReqInfo;
1404
1405 /*Request status callback offered by UMAC - it is called if the current
1406 req has returned PENDING as status; it delivers the status of sending
1407 the message over the BUS */
1408 WDI_ReqStatusCb wdiReqStatusCB;
1409
1410 /*The user data passed in by UMAC, it will be sent back when the above
1411 function pointer will be called */
1412 void* pUserData;
1413}WDI_JoinReqParamsType;
1414
1415/*---------------------------------------------------------------------------
1416 WDI_BssType
1417---------------------------------------------------------------------------*/
1418typedef enum
1419{
1420 WDI_INFRASTRUCTURE_MODE,
1421 WDI_INFRA_AP_MODE, //Added for softAP support
1422 WDI_IBSS_MODE,
1423 WDI_BTAMP_STA_MODE,
1424 WDI_BTAMP_AP_MODE,
1425 WDI_BSS_AUTO_MODE,
1426}WDI_BssType;
1427
1428/*---------------------------------------------------------------------------
1429 WDI_NwType
1430---------------------------------------------------------------------------*/
1431typedef enum
1432{
1433 WDI_11A_NW_TYPE,
1434 WDI_11B_NW_TYPE,
1435 WDI_11G_NW_TYPE,
1436 WDI_11N_NW_TYPE,
1437} WDI_NwType;
1438
1439/*---------------------------------------------------------------------------
1440 WDI_ConfigAction
1441---------------------------------------------------------------------------*/
1442typedef enum
1443{
1444 WDI_ADD_BSS,
1445 WDI_UPDATE_BSS
1446} WDI_ConfigAction;
1447
1448/*---------------------------------------------------------------------------
1449 WDI_HTOperatingMode
1450---------------------------------------------------------------------------*/
1451typedef enum
1452{
1453 WDI_HT_OP_MODE_PURE,
1454 WDI_HT_OP_MODE_OVERLAP_LEGACY,
1455 WDI_HT_OP_MODE_NO_LEGACY_20MHZ_HT,
1456 WDI_HT_OP_MODE_MIXED
1457
1458} WDI_HTOperatingMode;
1459
1460
1461/*---------------------------------------------------------------------------
1462 WDI_STAEntryType
1463---------------------------------------------------------------------------*/
1464typedef enum
1465{
1466 WDI_STA_ENTRY_SELF,
1467 WDI_STA_ENTRY_PEER,
1468 WDI_STA_ENTRY_BSSID,
Mohit Khanna698ba2a2012-12-04 15:08:18 -08001469 WDI_STA_ENTRY_BCAST,
1470#ifdef FEATURE_WLAN_TDLS
1471 WDI_STA_ENTRY_TDLS_PEER,
1472#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07001473}WDI_STAEntryType;
1474
1475/*---------------------------------------------------------------------------
1476 WDI_ConfigActionType
1477---------------------------------------------------------------------------*/
1478typedef enum
1479{
1480 WDI_ADD_STA,
1481 WDI_UPDATE_STA
1482} WDI_ConfigActionType;
1483
1484/*----------------------------------------------------------------------------
1485 Each station added has a rate mode which specifies the sta attributes
1486 ----------------------------------------------------------------------------*/
1487typedef enum
1488{
1489 WDI_RESERVED_1 = 0,
1490 WDI_RESERVED_2,
1491 WDI_RESERVED_3,
1492 WDI_11b,
1493 WDI_11bg,
1494 WDI_11a,
1495 WDI_11n,
1496} WDI_RateModeType;
1497
1498/*---------------------------------------------------------------------------
1499 WDI_SupportedRatesType
1500---------------------------------------------------------------------------*/
1501typedef struct
1502{
1503 /*
1504 * For Self STA Entry: this represents Self Mode.
1505 * For Peer Stations, this represents the mode of the peer.
1506 * On Station:
1507 * --this mode is updated when PE adds the Self Entry.
1508 * -- OR when PE sends 'ADD_BSS' message and station context in BSS is used to indicate the mode of the AP.
1509 * ON AP:
1510 * -- this mode is updated when PE sends 'ADD_BSS' and Sta entry for that BSS is used
1511 * to indicate the self mode of the AP.
1512 * -- OR when a station is associated, PE sends 'ADD_STA' message with this mode updated.
1513 */
1514
1515 WDI_RateModeType opRateMode;
1516
1517 /* 11b, 11a and aniLegacyRates are IE rates which gives rate in unit of 500Kbps */
1518 wpt_uint16 llbRates[WDI_NUM_11B_RATES];
1519 wpt_uint16 llaRates[WDI_NUM_11A_RATES];
1520 wpt_uint16 aLegacyRates[WDI_NUM_POLARIS_RATES];
1521
1522 /*Taurus only supports 26 Titan Rates(no ESF/concat Rates will be supported)
1523 First 26 bits are reserved for those Titan rates and
1524 the last 4 bits(bit28-31) for Taurus, 2(bit26-27) bits are reserved.*/
1525 wpt_uint32 uEnhancedRateBitmap; //Titan and Taurus Rates
1526
1527 /*
1528 * 0-76 bits used, remaining reserved
1529 * bits 0-15 and 32 should be set.
1530 */
1531 wpt_uint8 aSupportedMCSSet[WDI_MAC_MAX_SUPPORTED_MCS_SET];
1532
1533 /*
1534 * RX Highest Supported Data Rate defines the highest data
1535 * rate that the STA is able to receive, in unites of 1Mbps.
1536 * This value is derived from "Supported MCS Set field" inside
1537 * the HT capability element.
1538 */
1539 wpt_uint16 aRxHighestDataRate;
1540
Jeff Johnsone7245742012-09-05 17:12:55 -07001541
1542#ifdef WLAN_FEATURE_11AC
1543 /*Indicates the Maximum MCS that can be received for each number
1544 of spacial streams */
1545 wpt_uint16 vhtRxMCSMap;
1546 /*Indicate the highest VHT data rate that the STA is able to receive*/
1547 wpt_uint16 vhtRxHighestDataRate;
1548 /*Indicates the Maximum MCS that can be transmitted for each number
1549 of spacial streams */
1550 wpt_uint16 vhtTxMCSMap;
1551 /*Indicate the highest VHT data rate that the STA is able to transmit*/
1552 wpt_uint16 vhtTxHighestDataRate;
1553#endif
1554
Jeff Johnson295189b2012-06-20 16:38:30 -07001555} WDI_SupportedRates;
1556
1557/*--------------------------------------------------------------------------
1558 WDI_HTMIMOPowerSaveState
1559 Spatial Multiplexing(SM) Power Save mode
1560 --------------------------------------------------------------------------*/
1561typedef enum
1562{
1563 WDI_HT_MIMO_PS_STATIC = 0, // Static SM Power Save mode
1564 WDI_HT_MIMO_PS_DYNAMIC = 1, // Dynamic SM Power Save mode
1565 WDI_HT_MIMO_PS_NA = 2, // reserved
1566 WDI_HT_MIMO_PS_NO_LIMIT = 3, // SM Power Save disabled
1567} WDI_HTMIMOPowerSaveState;
1568
1569/*---------------------------------------------------------------------------
1570 WDI_ConfigStaReqInfoType
1571---------------------------------------------------------------------------*/
1572typedef struct
1573{
1574 /*BSSID of STA*/
1575 wpt_macAddr macBSSID;
1576
1577 /*ASSOC ID, as assigned by UMAC*/
1578 wpt_uint16 usAssocId;
1579
1580 /*Used for configuration of different HW modules.*/
1581 WDI_STAEntryType wdiSTAType;
1582
Gopichand Nakkalae7cbc5d2013-03-27 21:09:23 -07001583 /*STA Index */
1584 wpt_uint8 staIdx;
1585
Jeff Johnson295189b2012-06-20 16:38:30 -07001586 /*Short Preamble Supported.*/
1587 wpt_uint8 ucShortPreambleSupported;
1588
1589 /*MAC Address of STA*/
1590 wpt_macAddr macSTA;
1591
1592 /*Listen interval of the STA*/
1593 wpt_uint16 usListenInterval;
1594
1595 /*Support for 11e/WMM*/
1596 wpt_uint8 ucWMMEnabled;
1597
1598 /*11n HT capable STA*/
1599 wpt_uint8 ucHTCapable;
1600
1601 /*TX Width Set: 0 - 20 MHz only, 1 - 20/40 MHz*/
1602 wpt_uint8 ucTXChannelWidthSet;
1603
1604 /*RIFS mode 0 - NA, 1 - Allowed*/
1605 wpt_uint8 ucRIFSMode;
1606
1607 /*L-SIG TXOP Protection mechanism
1608 0 - No Support, 1 - Supported
1609 SG - there is global field*/
1610 wpt_uint8 ucLSIGTxopProtection;
1611
1612 /*Max Ampdu Size supported by STA. Device programming.
1613 0 : 8k , 1 : 16k, 2 : 32k, 3 : 64k */
1614 wpt_uint8 ucMaxAmpduSize;
1615
1616 /*Max Ampdu density. Used by RA. 3 : 0~7 : 2^(11nAMPDUdensity -4)*/
1617 wpt_uint8 ucMaxAmpduDensity;
1618
1619 /*Max AMSDU size 1 : 3839 bytes, 0 : 7935 bytes*/
1620 wpt_uint8 ucMaxAmsduSize;
1621
1622 /*Short GI support for 40Mhz packets*/
1623 wpt_uint8 ucShortGI40Mhz;
1624
1625 /*Short GI support for 20Mhz packets*/
1626 wpt_uint8 ucShortGI20Mhz;
1627
1628 /*These rates are the intersection of peer and self capabilities.*/
1629 WDI_SupportedRates wdiSupportedRates;
1630
1631 /*Robust Management Frame (RMF) enabled/disabled*/
1632 wpt_uint8 ucRMFEnabled;
1633
1634 /* The unicast encryption type in the association */
1635 wpt_uint32 ucEncryptType;
1636
1637 /*HAL should update the existing STA entry, if this flag is set. UMAC
1638 will set this flag in case of RE-ASSOC, where we want to reuse the old
1639 STA ID.*/
1640 WDI_ConfigActionType wdiAction;
1641
1642 /*U-APSD Flags: 1b per AC. Encoded as follows:
1643 b7 b6 b5 b4 b3 b2 b1 b0 =
1644 X X X X BE BK VI VO
1645 */
1646 wpt_uint8 ucAPSD;
1647
1648 /*Max SP Length*/
1649 wpt_uint8 ucMaxSPLen;
1650
1651 /*11n Green Field preamble support*/
1652 wpt_uint8 ucGreenFieldCapable;
1653
1654 /*MIMO Power Save mode*/
1655 WDI_HTMIMOPowerSaveState wdiMIMOPS;
1656
1657 /*Delayed BA Support*/
1658 wpt_uint8 ucDelayedBASupport;
1659
1660 /*Max AMPDU duration in 32us*/
1661 wpt_uint8 us32MaxAmpduDuratio;
1662
1663 /*HT STA should set it to 1 if it is enabled in BSS
1664 HT STA should set it to 0 if AP does not support it. This indication is
1665 sent to HAL and HAL uses this flag to pickup up appropriate 40Mhz rates.
1666 */
1667 wpt_uint8 ucDsssCckMode40Mhz;
1668
1669 wpt_uint8 ucP2pCapableSta;
Jeff Johnsone7245742012-09-05 17:12:55 -07001670#ifdef WLAN_FEATURE_11AC
1671 wpt_uint8 ucVhtCapableSta;
1672 wpt_uint8 ucVhtTxChannelWidthSet;
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08001673 wpt_uint8 ucVhtTxBFEnabled;
Jeff Johnsone7245742012-09-05 17:12:55 -07001674#endif
Gopichand Nakkalab2d2c312013-01-04 11:41:02 -08001675
1676 wpt_uint8 ucHtLdpcEnabled;
1677 wpt_uint8 ucVhtLdpcEnabled;
Jeff Johnson295189b2012-06-20 16:38:30 -07001678}WDI_ConfigStaReqInfoType;
1679
1680
1681/*---------------------------------------------------------------------------
1682 WDI_RateSet
1683
1684 12 Bytes long because this structure can be used to represent rate
1685 and extended rate set IEs
1686 The parser assume this to be at least 12
1687---------------------------------------------------------------------------*/
1688#define WDI_RATESET_EID_MAX 12
1689
1690typedef struct
1691{
1692 wpt_uint8 ucNumRates;
1693 wpt_uint8 aRates[WDI_RATESET_EID_MAX];
1694} WDI_RateSet;
1695
1696/*---------------------------------------------------------------------------
1697 WDI_AciAifsnType
1698 access category record
1699---------------------------------------------------------------------------*/
1700typedef struct
1701{
1702 wpt_uint8 rsvd : 1;
1703 wpt_uint8 aci : 2;
1704 wpt_uint8 acm : 1;
1705 wpt_uint8 aifsn : 4;
1706} WDI_AciAifsnType;
1707
1708/*---------------------------------------------------------------------------
1709 WDI_CWType
1710 contention window size
1711---------------------------------------------------------------------------*/
1712typedef struct
1713{
1714 wpt_uint8 max : 4;
1715 wpt_uint8 min : 4;
1716} WDI_CWType;
1717
1718/*---------------------------------------------------------------------------
1719 WDI_EdcaParamRecord
1720---------------------------------------------------------------------------*/
1721typedef struct
1722{
1723 /*Access Category Record*/
1724 WDI_AciAifsnType wdiACI;
1725
1726 /*Contention WIndow Size*/
1727 WDI_CWType wdiCW;
1728
1729 /*TX Oportunity Limit*/
1730 wpt_uint16 usTXOPLimit;
1731} WDI_EdcaParamRecord;
1732
1733/*---------------------------------------------------------------------------
1734 WDI_EDCAParamsType
1735---------------------------------------------------------------------------*/
1736typedef struct
1737{
1738 /*BSS Index*/
1739 wpt_uint8 ucBSSIdx;
1740
1741 /*?*/
1742 wpt_boolean bHighPerformance;
1743
1744 /*Best Effort*/
1745 WDI_EdcaParamRecord wdiACBE;
1746
1747 /*Background*/
1748 WDI_EdcaParamRecord wdiACBK;
1749
1750 /*Video*/
1751 WDI_EdcaParamRecord wdiACVI;
1752
1753 /*Voice*/
1754 WDI_EdcaParamRecord acvo; // voice
1755} WDI_EDCAParamsType;
1756
1757/* operMode in ADD BSS message */
1758#define WDI_BSS_OPERATIONAL_MODE_AP 0
1759#define WDI_BSS_OPERATIONAL_MODE_STA 1
1760
1761/*---------------------------------------------------------------------------
1762 WDI_ConfigBSSRspParamsType
1763---------------------------------------------------------------------------*/
1764typedef struct
1765{
1766 /*Status of the response*/
1767 WDI_Status wdiStatus;
1768
1769 /*BSSID of the BSS*/
1770 wpt_macAddr macBSSID;
1771
1772 /*BSS Index*/
1773 wpt_uint8 ucBSSIdx;
1774
1775 /*Unicast DPU signature*/
1776 wpt_uint8 ucUcastSig;
1777
1778 /*Broadcast DPU Signature*/
1779 wpt_uint8 ucBcastSig;
1780
1781 /*MAC Address of STA*/
1782 wpt_macAddr macSTA;
1783
1784 /*BSS STA ID*/
1785 wpt_uint8 ucSTAIdx;
1786
1787#ifdef WLAN_FEATURE_VOWIFI
1788 /*HAL fills in the tx power used for mgmt frames in this field */
1789 wpt_int8 ucTxMgmtPower;
1790#endif
1791
1792}WDI_ConfigBSSRspParamsType;
1793
1794/*---------------------------------------------------------------------------
1795 WDI_DelBSSReqParamsType
1796---------------------------------------------------------------------------*/
1797typedef struct
1798{
1799 /*BSS Index of the BSS*/
1800 wpt_uint8 ucBssIdx;
1801
1802 /*Request status callback offered by UMAC - it is called if the current
1803 req has returned PENDING as status; it delivers the status of sending
1804 the message over the BUS */
1805 WDI_ReqStatusCb wdiReqStatusCB;
1806
1807 /*The user data passed in by UMAC, it will be sent back when the above
1808 function pointer will be called */
1809 void* pUserData;
1810}WDI_DelBSSReqParamsType;
1811
1812/*---------------------------------------------------------------------------
1813 WDI_DelBSSRspParamsType
1814---------------------------------------------------------------------------*/
1815typedef struct
1816{
1817 /*Status of the response*/
1818 WDI_Status wdiStatus;
1819
1820 /*BSSID of the BSS*/
1821 wpt_macAddr macBSSID;
1822
1823 wpt_uint8 ucBssIdx;
1824
1825}WDI_DelBSSRspParamsType;
1826
1827/*---------------------------------------------------------------------------
1828 WDI_ConfigSTARspParamsType
1829---------------------------------------------------------------------------*/
1830typedef struct
1831{
1832 /*Status of the response*/
1833 WDI_Status wdiStatus;
1834
1835 /*STA Idx allocated by HAL*/
1836 wpt_uint8 ucSTAIdx;
1837
1838 /*MAC Address of STA*/
1839 wpt_macAddr macSTA;
1840
1841 /* BSSID Index of BSS to which the station is associated */
1842 wpt_uint8 ucBssIdx;
1843
1844 /* DPU Index - PTK */
1845 wpt_uint8 ucDpuIndex;
1846
1847 /* Bcast DPU Index - GTK */
1848 wpt_uint8 ucBcastDpuIndex;
1849
1850 /* Management DPU Index - IGTK - Why is it called bcastMgmtDpuIdx? */
1851 wpt_uint8 ucBcastMgmtDpuIdx;
1852
1853 /*Unicast DPU signature*/
1854 wpt_uint8 ucUcastSig;
1855
1856 /*Broadcast DPU Signature*/
1857 wpt_uint8 ucBcastSig;
1858
1859 /* IGTK DPU signature*/
1860 wpt_uint8 ucMgmtSig;
1861
1862}WDI_ConfigSTARspParamsType;
1863
1864/*---------------------------------------------------------------------------
1865 WDI_PostAssocRspParamsType
1866---------------------------------------------------------------------------*/
1867typedef struct
1868{
1869 /*Status of the response*/
1870 WDI_Status wdiStatus;
1871
1872 /*Parameters related to the BSS*/
1873 WDI_ConfigBSSRspParamsType bssParams;
1874
1875 /*Parameters related to the self STA*/
1876 WDI_ConfigSTARspParamsType staParams;
1877
1878}WDI_PostAssocRspParamsType;
1879
1880/*---------------------------------------------------------------------------
1881 WDI_DelSTAReqParamsType
1882---------------------------------------------------------------------------*/
1883typedef struct
1884{
1885 /*STA Index returned during DAL_PostAssocReq or DAL_ConfigStaReq*/
1886 wpt_uint8 ucSTAIdx;
1887
1888 /*Request status callback offered by UMAC - it is called if the current
1889 req has returned PENDING as status; it delivers the status of sending
1890 the message over the BUS */
1891 WDI_ReqStatusCb wdiReqStatusCB;
1892
1893 /*The user data passed in by UMAC, it will be sent back when the above
1894 function pointer will be called */
1895 void* pUserData;
1896}WDI_DelSTAReqParamsType;
1897
1898/*---------------------------------------------------------------------------
1899 WDI_DelSTARspParamsType
1900---------------------------------------------------------------------------*/
1901typedef struct
1902{
1903 /*Status of the response*/
1904 WDI_Status wdiStatus;
1905
1906 /*STA Index returned during DAL_PostAssocReq or DAL_ConfigStaReq*/
1907 wpt_uint8 ucSTAIdx;
1908}WDI_DelSTARspParamsType;
1909
1910/*---------------------------------------------------------------------------
1911 WDI_EncryptType
1912---------------------------------------------------------------------------*/
1913typedef enum
1914{
1915 WDI_ENCR_NONE,
1916 WDI_ENCR_WEP40,
1917 WDI_ENCR_WEP104,
1918 WDI_ENCR_TKIP,
1919 WDI_ENCR_CCMP,
1920#if defined(FEATURE_WLAN_WAPI)
1921 WDI_ENCR_WPI,
1922#endif
1923 WDI_ENCR_AES_128_CMAC
1924} WDI_EncryptType;
1925
1926/*---------------------------------------------------------------------------
1927 WDI_KeyDirectionType
1928---------------------------------------------------------------------------*/
1929typedef enum
1930{
1931 WDI_TX_ONLY,
1932 WDI_RX_ONLY,
1933 WDI_TX_RX,
Jeff Johnson295189b2012-06-20 16:38:30 -07001934 WDI_TX_DEFAULT,
Jeff Johnson295189b2012-06-20 16:38:30 -07001935 WDI_DONOT_USE_KEY_DIRECTION
1936} WDI_KeyDirectionType;
1937
1938#define WDI_MAX_ENCR_KEYS 4
1939#define WDI_MAX_KEY_LENGTH 32
1940#if defined(FEATURE_WLAN_WAPI)
1941#define WDI_MAX_KEY_RSC_LEN 16
1942#define WDI_WAPI_KEY_RSC_LEN 16
1943#else
1944#define WDI_MAX_KEY_RSC_LEN 8
1945#endif
1946
1947typedef struct
1948{
1949 /* Key ID */
1950 wpt_uint8 keyId;
1951 /* 0 for multicast */
1952 wpt_uint8 unicast;
1953 /* Key Direction */
1954 WDI_KeyDirectionType keyDirection;
1955 /* Usage is unknown */
1956 wpt_uint8 keyRsc[WDI_MAX_KEY_RSC_LEN];
1957 /* =1 for authenticator, =0 for supplicant */
1958 wpt_uint8 paeRole;
1959 wpt_uint16 keyLength;
1960 wpt_uint8 key[WDI_MAX_KEY_LENGTH];
1961
1962}WDI_KeysType;
1963
1964/*---------------------------------------------------------------------------
1965 WDI_SetBSSKeyReqInfoType
1966---------------------------------------------------------------------------*/
1967typedef struct
1968{
1969 /*BSS Index of the BSS*/
1970 wpt_uint8 ucBssIdx;
1971
1972 /*Encryption Type used with peer*/
1973 WDI_EncryptType wdiEncType;
1974
1975 /*Number of keys*/
1976 wpt_uint8 ucNumKeys;
1977
1978 /*Array of keys.*/
1979 WDI_KeysType aKeys[WDI_MAX_ENCR_KEYS];
1980
1981 /*Control for Replay Count, 1= Single TID based replay count on Tx
1982 0 = Per TID based replay count on TX */
1983 wpt_uint8 ucSingleTidRc;
1984}WDI_SetBSSKeyReqInfoType;
1985
1986/*---------------------------------------------------------------------------
1987 WDI_SetBSSKeyReqParamsType
1988---------------------------------------------------------------------------*/
1989typedef struct
1990{
1991 /*Key Info */
1992 WDI_SetBSSKeyReqInfoType wdiBSSKeyInfo;
1993
1994 /*Request status callback offered by UMAC - it is called if the current
1995 req has returned PENDING as status; it delivers the status of sending
1996 the message over the BUS */
1997 WDI_ReqStatusCb wdiReqStatusCB;
1998
1999 /*The user data passed in by UMAC, it will be sent back when the above
2000 function pointer will be called */
2001 void* pUserData;
2002}WDI_SetBSSKeyReqParamsType;
2003
2004/*---------------------------------------------------------------------------
2005 WDI_WepType
2006---------------------------------------------------------------------------*/
2007typedef enum
2008{
2009 WDI_WEP_STATIC,
2010 WDI_WEP_DYNAMIC
2011
2012} WDI_WepType;
2013
2014/*---------------------------------------------------------------------------
2015 WDI_RemoveBSSKeyReqInfoType
2016---------------------------------------------------------------------------*/
2017typedef struct
2018{
2019 /*BSS Index of the BSS*/
2020 wpt_uint8 ucBssIdx;
2021
2022 /*Encryption Type used with peer*/
2023 WDI_EncryptType wdiEncType;
2024
2025 /*Key Id*/
2026 wpt_uint8 ucKeyId;
2027
2028 /*STATIC/DYNAMIC. Used in Nullifying in Key Descriptors for Static/Dynamic
2029 keys*/
2030 WDI_WepType wdiWEPType;
2031}WDI_RemoveBSSKeyReqInfoType;
2032
2033/*---------------------------------------------------------------------------
2034 WDI_RemoveBSSKeyReqParamsType
2035---------------------------------------------------------------------------*/
2036typedef struct
2037{
2038 /*Key Info */
2039 WDI_RemoveBSSKeyReqInfoType wdiKeyInfo;
2040
2041 /*Request status callback offered by UMAC - it is called if the current
2042 req has returned PENDING as status; it delivers the status of sending
2043 the message over the BUS */
2044 WDI_ReqStatusCb wdiReqStatusCB;
2045
2046 /*The user data passed in by UMAC, it will be sent back when the above
2047 function pointer will be called */
2048 void* pUserData;
2049}WDI_RemoveBSSKeyReqParamsType;
2050
2051/*---------------------------------------------------------------------------
2052 WDI_SetSTAKeyReqInfoType
2053---------------------------------------------------------------------------*/
2054typedef struct
2055{
2056 /*STA Index*/
2057 wpt_uint8 ucSTAIdx;
2058
2059 /*Encryption Type used with peer*/
2060 WDI_EncryptType wdiEncType;
2061
2062 /*STATIC/DYNAMIC*/
2063 WDI_WepType wdiWEPType;
2064
2065 /*Default WEP key, valid only for static WEP, must between 0 and 3.*/
2066 wpt_uint8 ucDefWEPIdx;
2067
2068 /*Number of keys*/
2069 wpt_uint8 ucNumKeys;
2070
2071 /*Array of keys.*/
2072 WDI_KeysType wdiKey[WDI_MAX_ENCR_KEYS];
2073
2074 /*Control for Replay Count, 1= Single TID based replay count on Tx
2075 0 = Per TID based replay count on TX */
2076 wpt_uint8 ucSingleTidRc;
2077}WDI_SetSTAKeyReqInfoType;
2078
2079/*---------------------------------------------------------------------------
2080 WDI_ConfigBSSReqInfoType
2081---------------------------------------------------------------------------*/
2082typedef struct
2083{
2084 /*Peer BSSID*/
2085 wpt_macAddr macBSSID;
2086
2087 /*Self MAC Address*/
2088 wpt_macAddr macSelfAddr;
2089
2090 /*BSS Type*/
2091 WDI_BssType wdiBSSType;
2092
2093 /*Operational Mode: AP =0, STA = 1*/
2094 wpt_uint8 ucOperMode;
2095
2096 /*Network Type*/
2097 WDI_NwType wdiNWType;
2098
2099 /*Used to classify PURE_11G/11G_MIXED to program MTU*/
2100 wpt_uint8 ucShortSlotTimeSupported;
2101
2102 /*Co-exist with 11a STA*/
2103 wpt_uint8 ucllaCoexist;
2104
2105 /*Co-exist with 11b STA*/
2106 wpt_uint8 ucllbCoexist;
2107
2108 /*Co-exist with 11g STA*/
2109 wpt_uint8 ucllgCoexist;
2110
2111 /*Coexistence with 11n STA*/
2112 wpt_uint8 ucHT20Coexist;
2113
2114 /*Non GF coexist flag*/
2115 wpt_uint8 ucllnNonGFCoexist;
2116
2117 /*TXOP protection support*/
2118 wpt_uint8 ucTXOPProtectionFullSupport;
2119
2120 /*RIFS mode*/
2121 wpt_uint8 ucRIFSMode;
2122
2123 /*Beacon Interval in TU*/
2124 wpt_uint16 usBeaconInterval;
2125
2126 /*DTIM period*/
2127 wpt_uint8 ucDTIMPeriod;
2128
2129 /*TX Width Set: 0 - 20 MHz only, 1 - 20/40 MHz*/
2130 wpt_uint8 ucTXChannelWidthSet;
2131
2132 /*Operating channel*/
2133 wpt_uint8 ucCurrentOperChannel;
2134
2135 /*Extension channel for channel bonding*/
2136 wpt_uint8 ucCurrentExtChannel;
2137
2138 /*Context of the station being added in HW.*/
2139 WDI_ConfigStaReqInfoType wdiSTAContext;
2140
2141 /*SSID of the BSS*/
2142 WDI_MacSSid wdiSSID;
2143
2144 /*HAL should update the existing BSS entry, if this flag is set. UMAC will
2145 set this flag in case of RE-ASSOC, where we want to reuse the old BSSID*/
2146 WDI_ConfigAction wdiAction;
2147
2148 /*Basic Rate Set*/
2149 WDI_RateSet wdiRateSet;
2150
2151 /*Enable/Disable HT capabilities of the BSS*/
2152 wpt_uint8 ucHTCapable;
2153
2154 /* Enable/Disable OBSS protection */
2155 wpt_uint8 ucObssProtEnabled;
2156
2157 /*RMF enabled/disabled*/
2158 wpt_uint8 ucRMFEnabled;
2159
2160 /*Determines the current HT Operating Mode operating mode of the
2161 802.11n STA*/
2162 WDI_HTOperatingMode wdiHTOperMod;
2163
2164 /*Dual CTS Protection: 0 - Unused, 1 - Used*/
2165 wpt_uint8 ucDualCTSProtection;
2166
2167 /* Probe Response Max retries */
2168 wpt_uint8 ucMaxProbeRespRetryLimit;
2169
2170 /* To Enable Hidden ssid */
2171 wpt_uint8 bHiddenSSIDEn;
2172
2173 /* To Enable Disable FW Proxy Probe Resp */
2174 wpt_uint8 bProxyProbeRespEn;
2175
2176 /* Boolean to indicate if EDCA params are valid. UMAC might not have valid
2177 EDCA params or might not desire to apply EDCA params during config BSS.
2178 0 implies Not Valid ; Non-Zero implies valid*/
2179 wpt_uint8 ucEDCAParamsValid;
2180
2181 /*EDCA Parameters for BK*/
2182 WDI_EdcaParamRecord wdiBKEDCAParams;
2183
2184 /*EDCA Parameters for BE*/
2185 WDI_EdcaParamRecord wdiBEEDCAParams;
2186
2187 /*EDCA Parameters for VI*/
2188 WDI_EdcaParamRecord wdiVIEDCAParams;
2189
2190 /*EDCA Parameters for VO*/
2191 WDI_EdcaParamRecord wdiVOEDCAParams;
2192
2193#ifdef WLAN_FEATURE_VOWIFI
2194 /*max power to be used after applying the power constraint, if any */
2195 wpt_int8 cMaxTxPower;
2196#endif
2197
2198 /* Persona for the BSS can be STA,AP,GO,CLIENT, same as Connection Mode */
2199 wpt_uint8 ucPersona;
2200
2201 /* Spectrum Mangement Indicator */
2202 wpt_uint8 bSpectrumMgtEn;
2203
2204#ifdef WLAN_FEATURE_VOWIFI_11R
2205 wpt_uint8 bExtSetStaKeyParamValid;
2206 WDI_SetSTAKeyReqInfoType wdiExtSetKeyParam;
2207#endif
2208
Jeff Johnsone7245742012-09-05 17:12:55 -07002209#ifdef WLAN_FEATURE_11AC
2210 wpt_uint8 ucVhtCapableSta;
2211 wpt_uint8 ucVhtTxChannelWidthSet;
2212#endif
2213
Jeff Johnson295189b2012-06-20 16:38:30 -07002214}WDI_ConfigBSSReqInfoType;
2215
2216/*---------------------------------------------------------------------------
2217 WDI_PostAssocReqParamsType
2218---------------------------------------------------------------------------*/
2219typedef struct
2220{
2221 /*Config STA arguments.*/
2222 WDI_ConfigStaReqInfoType wdiSTAParams;
2223
2224 /*Config BSS Arguments*/
2225 WDI_ConfigBSSReqInfoType wdiBSSParams;
2226
2227 /*Request status callback offered by UMAC - it is called if the current
2228 req has returned PENDING as status; it delivers the status of sending
2229 the message over the BUS */
2230 WDI_ReqStatusCb wdiReqStatusCB;
2231
2232 /*The user data passed in by UMAC, it will be sent back when the above
2233 function pointer will be called */
2234 void* pUserData;
2235}WDI_PostAssocReqParamsType;
2236
2237/*---------------------------------------------------------------------------
2238 WDI_ConfigBSSReqParamsType
2239---------------------------------------------------------------------------*/
2240typedef struct
2241{
2242 /*Info for the Join request that will be sent down to the device*/
2243 WDI_ConfigBSSReqInfoType wdiReqInfo;
2244
2245 /*Request status callback offered by UMAC - it is called if the current
2246 req has returned PENDING as status; it delivers the status of sending
2247 the message over the BUS */
2248 WDI_ReqStatusCb wdiReqStatusCB;
2249
2250 /*The user data passed in by UMAC, it will be sent back when the above
2251 function pointer will be called */
2252 void* pUserData;
2253}WDI_ConfigBSSReqParamsType;
2254
2255/*---------------------------------------------------------------------------
2256 WDI_SetSTAKeyReqParamsType
2257---------------------------------------------------------------------------*/
2258typedef struct
2259{
2260 /*Key Info*/
2261 WDI_SetSTAKeyReqInfoType wdiKeyInfo;
2262
2263 /*Request status callback offered by UMAC - it is called if the current
2264 req has returned PENDING as status; it delivers the status of sending
2265 the message over the BUS */
2266 WDI_ReqStatusCb wdiReqStatusCB;
2267
2268 /*The user data passed in by UMAC, it will be sent back when the above
2269 function pointer will be called */
2270 void* pUserData;
2271}WDI_SetSTAKeyReqParamsType;
2272
2273/*---------------------------------------------------------------------------
2274 WDI_RemoveSTAKeyReqInfoType
2275---------------------------------------------------------------------------*/
2276typedef struct
2277{
2278 /*STA Index*/
2279 wpt_uint8 ucSTAIdx;
2280
2281 /*Encryption Type used with peer*/
2282 WDI_EncryptType wdiEncType;
2283
2284 /*Key Id*/
2285 wpt_uint8 ucKeyId;
2286
2287 /*Whether to invalidate the Broadcast key or Unicast key. In case of WEP,
2288 the same key is used for both broadcast and unicast.*/
2289 wpt_uint8 ucUnicast;
2290}WDI_RemoveSTAKeyReqInfoType;
2291
2292/*---------------------------------------------------------------------------
2293 WDI_RemoveSTAKeyReqParamsType
2294---------------------------------------------------------------------------*/
2295typedef struct
2296{
2297 /*Key Info */
2298 WDI_RemoveSTAKeyReqInfoType wdiKeyInfo;
2299
2300 /*Request status callback offered by UMAC - it is called if the current
2301 req has returned PENDING as status; it delivers the status of sending
2302 the message over the BUS */
2303 WDI_ReqStatusCb wdiReqStatusCB;
2304
2305 /*The user data passed in by UMAC, it will be sent back when the above
2306 function pointer will be called */
2307 void* pUserData;
2308}WDI_RemoveSTAKeyReqParamsType;
2309
2310/*---------------------------------------------------------------------------
2311 QOS Parameters
2312---------------------------------------------------------------------------*/
2313
2314/*---------------------------------------------------------------------------
2315 WDI_TSInfoTfc
2316---------------------------------------------------------------------------*/
2317typedef struct
2318{
2319 wpt_uint16 ackPolicy:2;
2320 wpt_uint16 userPrio:3;
2321 wpt_uint16 psb:1;
2322 wpt_uint16 aggregation : 1;
2323 wpt_uint16 accessPolicy : 2;
2324 wpt_uint16 direction : 2;
2325 wpt_uint16 tsid : 4;
2326 wpt_uint16 trafficType : 1;
2327} WDI_TSInfoTfc;
2328
2329/*---------------------------------------------------------------------------
2330 WDI_TSInfoSch
2331---------------------------------------------------------------------------*/
2332typedef struct
2333{
2334 wpt_uint8 rsvd : 7;
2335 wpt_uint8 schedule : 1;
2336} WDI_TSInfoSch;
2337
2338/*---------------------------------------------------------------------------
2339 WDI_TSInfoType
2340---------------------------------------------------------------------------*/
2341typedef struct
2342{
2343 WDI_TSInfoTfc wdiTraffic;
2344 WDI_TSInfoSch wdiSchedule;
2345} WDI_TSInfoType;
2346
2347/*---------------------------------------------------------------------------
2348 WDI_TspecIEType
2349---------------------------------------------------------------------------*/
2350typedef struct
2351{
2352 wpt_uint8 ucType;
2353 wpt_uint8 ucLength;
2354 WDI_TSInfoType wdiTSinfo;
2355 wpt_uint16 usNomMsduSz;
2356 wpt_uint16 usMaxMsduSz;
2357 wpt_uint32 uMinSvcInterval;
2358 wpt_uint32 uMaxSvcInterval;
2359 wpt_uint32 uInactInterval;
2360 wpt_uint32 uSuspendInterval;
2361 wpt_uint32 uSvcStartTime;
2362 wpt_uint32 uMinDataRate;
2363 wpt_uint32 uMeanDataRate;
2364 wpt_uint32 uPeakDataRate;
2365 wpt_uint32 uMaxBurstSz;
2366 wpt_uint32 uDelayBound;
2367 wpt_uint32 uMinPhyRate;
2368 wpt_uint16 usSurplusBw;
2369 wpt_uint16 usMediumTime;
2370}WDI_TspecIEType;
2371
2372/*---------------------------------------------------------------------------
2373 WDI_AddTSReqInfoType
2374---------------------------------------------------------------------------*/
2375typedef struct
2376{
2377 /*STA Index*/
2378 wpt_uint8 ucSTAIdx;
2379
2380 /*Identifier for TSpec*/
2381 wpt_uint16 ucTspecIdx;
2382
2383 /*Tspec IE negotiated OTA*/
2384 WDI_TspecIEType wdiTspecIE;
2385
2386 /*UAPSD delivery and trigger enabled flags */
2387 wpt_uint8 ucUapsdFlags;
2388
2389 /*SI for each AC*/
2390 wpt_uint8 ucServiceInterval[WDI_MAX_NO_AC];
2391
2392 /*Suspend Interval for each AC*/
2393 wpt_uint8 ucSuspendInterval[WDI_MAX_NO_AC];
2394
2395 /*DI for each AC*/
2396 wpt_uint8 ucDelayedInterval[WDI_MAX_NO_AC];
2397
2398}WDI_AddTSReqInfoType;
2399
2400
2401/*---------------------------------------------------------------------------
2402 WDI_AddTSReqParamsType
2403---------------------------------------------------------------------------*/
2404typedef struct
2405{
2406 /*TSpec Info */
2407 WDI_AddTSReqInfoType wdiTsInfo;
2408
2409 /*Request status callback offered by UMAC - it is called if the current
2410 req has returned PENDING as status; it delivers the status of sending
2411 the message over the BUS */
2412 WDI_ReqStatusCb wdiReqStatusCB;
2413
2414 /*The user data passed in by UMAC, it will be sent back when the above
2415 function pointer will be called */
2416 void* pUserData;
2417}WDI_AddTSReqParamsType;
2418
2419/*---------------------------------------------------------------------------
2420 WDI_DelTSReqInfoType
2421---------------------------------------------------------------------------*/
2422typedef struct
2423{
2424 /*STA Index*/
2425 wpt_uint8 ucSTAIdx;
2426
2427 /*Identifier for TSpec*/
2428 wpt_uint16 ucTspecIdx;
2429
2430 /*BSSID of the BSS*/
2431 wpt_macAddr macBSSID;
2432}WDI_DelTSReqInfoType;
2433
2434/*---------------------------------------------------------------------------
2435 WDI_DelTSReqParamsType
2436---------------------------------------------------------------------------*/
2437typedef struct
2438{
2439 /*Del TSpec Info*/
2440 WDI_DelTSReqInfoType wdiDelTSInfo;
2441
2442 /*Request status callback offered by UMAC - it is called if the current
2443 req has returned PENDING as status; it delivers the status of sending
2444 the message over the BUS */
2445 WDI_ReqStatusCb wdiReqStatusCB;
2446
2447 /*The user data passed in by UMAC, it will be sent back when the above
2448 function pointer will be called */
2449 void* pUserData;
2450}WDI_DelTSReqParamsType;
2451
2452/*---------------------------------------------------------------------------
2453 WDI_UpdateEDCAInfoType
2454---------------------------------------------------------------------------*/
2455typedef struct
2456{
krunal soni0b366c02013-07-17 19:55:57 -07002457 /*BSS Index of the BSS*/
2458 wpt_uint16 ucBssIdx;
Jeff Johnson295189b2012-06-20 16:38:30 -07002459
Jeff Johnson295189b2012-06-20 16:38:30 -07002460 /*EDCA params for BE*/
2461 WDI_EdcaParamRecord wdiEdcaBEInfo;
2462
2463 /*EDCA params for BK*/
2464 WDI_EdcaParamRecord wdiEdcaBKInfo;
2465
2466 /*EDCA params for VI*/
2467 WDI_EdcaParamRecord wdiEdcaVIInfo;
2468
2469 /*EDCA params for VO*/
2470 WDI_EdcaParamRecord wdiEdcaVOInfo;
2471
2472}WDI_UpdateEDCAInfoType;
2473
2474/*---------------------------------------------------------------------------
2475 WDI_UpdateEDCAParamsType
2476---------------------------------------------------------------------------*/
2477typedef struct
2478{
2479 /*EDCA Info */
2480 WDI_UpdateEDCAInfoType wdiEDCAInfo;
2481
2482 /*Request status callback offered by UMAC - it is called if the current
2483 req has returned PENDING as status; it delivers the status of sending
2484 the message over the BUS */
2485 WDI_ReqStatusCb wdiReqStatusCB;
2486
2487 /*The user data passed in by UMAC, it will be sent back when the above
2488 function pointer will be called */
2489 void* pUserData;
2490}WDI_UpdateEDCAParamsType;
2491
2492/*---------------------------------------------------------------------------
2493 WDI_AddBASessionReqinfoType
2494---------------------------------------------------------------------------*/
2495typedef struct
2496{
2497 /*Indicates the station for which BA is added..*/
2498 wpt_uint8 ucSTAIdx;
2499
2500 /*The peer mac address*/
2501 wpt_macAddr macPeerAddr;
2502
2503 /*TID for which BA was negotiated*/
2504 wpt_uint8 ucBaTID;
2505
2506 /*Delayed or imediate */
2507 wpt_uint8 ucBaPolicy;
2508
2509 /*The number of buffers for this TID (baTID)*/
2510 wpt_uint16 usBaBufferSize;
2511
2512 /*BA timeout in TU's*/
2513 wpt_uint16 usBaTimeout;
2514
2515 /*b0..b3 - Fragment Number - Always set to 0
2516 b4..b15 - Starting Sequence Number of first MSDU for which this BA is setup*/
2517 wpt_uint16 usBaSSN;
2518
2519 /*Originator/Recipient*/
2520 wpt_uint8 ucBaDirection;
2521
2522}WDI_AddBASessionReqinfoType;
2523
2524
2525/*---------------------------------------------------------------------------
2526 WDI_AddBASessionReqParamsType
2527---------------------------------------------------------------------------*/
2528typedef struct
2529{
2530 /*BA Session Info Type*/
2531 WDI_AddBASessionReqinfoType wdiBASessionInfoType;
2532
2533 /*Request status callback offered by UMAC - it is called if the current
2534 req has returned PENDING as status; it delivers the status of sending
2535 the message over the BUS */
2536 WDI_ReqStatusCb wdiReqStatusCB;
2537
2538 /*The user data passed in by UMAC, it will be sent back when the above
2539 function pointer will be called */
2540 void* pUserData;
2541}WDI_AddBASessionReqParamsType;
2542
2543/*---------------------------------------------------------------------------
2544 WDI_AddBASessionRspParamsType
2545---------------------------------------------------------------------------*/
2546typedef struct
2547{
2548 /*Status of the response*/
2549 WDI_Status wdiStatus;
2550
2551 /* Dialog token */
2552 wpt_uint8 ucBaDialogToken;
2553
2554 /* TID for which the BA session has been setup */
2555 wpt_uint8 ucBaTID;
2556
2557 /* BA Buffer Size allocated for the current BA session */
2558 wpt_uint8 ucBaBufferSize;
2559
2560 /* BA session ID */
2561 wpt_uint16 usBaSessionID;
2562
2563 /* Reordering Window buffer */
2564 wpt_uint8 ucWinSize;
2565
2566 /*Station Index to id the sta */
2567 wpt_uint8 ucSTAIdx;
2568
2569 /* Starting Sequence Number */
2570 wpt_uint16 usBaSSN;
2571
2572}WDI_AddBASessionRspParamsType;
2573
2574/*---------------------------------------------------------------------------
2575 WDI_AddBAReqinfoType
2576---------------------------------------------------------------------------*/
2577typedef struct
2578{
2579 /*Indicates the station for which BA is added..*/
2580 wpt_uint8 ucSTAIdx;
2581
2582 /* Session Id */
2583 wpt_uint8 ucBaSessionID;
2584
2585 /* Reorder Window Size */
2586 wpt_uint8 ucWinSize;
2587
2588#ifdef FEATURE_ON_CHIP_REORDERING
2589 wpt_boolean bIsReorderingDoneOnChip;
2590#endif
2591
2592}WDI_AddBAReqinfoType;
2593
2594
2595/*---------------------------------------------------------------------------
2596 WDI_AddBAReqParamsType
2597---------------------------------------------------------------------------*/
2598typedef struct
2599{
2600 /*BA Info Type*/
2601 WDI_AddBAReqinfoType wdiBAInfoType;
2602
2603 /*Request status callback offered by UMAC - it is called if the current
2604 req has returned PENDING as status; it delivers the status of sending
2605 the message over the BUS */
2606 WDI_ReqStatusCb wdiReqStatusCB;
2607
2608 /*The user data passed in by UMAC, it will be sent back when the above
2609 function pointer will be called */
2610 void* pUserData;
2611}WDI_AddBAReqParamsType;
2612
2613
2614/*---------------------------------------------------------------------------
2615 WDI_AddBARspinfoType
2616---------------------------------------------------------------------------*/
2617typedef struct
2618{
2619 /*Status of the response*/
2620 WDI_Status wdiStatus;
2621
2622 /* Dialog token */
2623 wpt_uint8 ucBaDialogToken;
2624
2625}WDI_AddBARspinfoType;
2626
2627/*---------------------------------------------------------------------------
2628 WDI_TriggerBAReqCandidateType
2629---------------------------------------------------------------------------*/
2630typedef struct
2631{
2632 /* STA index */
2633 wpt_uint8 ucSTAIdx;
2634
2635 /* TID bit map for the STA's*/
2636 wpt_uint8 ucTidBitmap;
2637
2638}WDI_TriggerBAReqCandidateType;
2639
2640
2641/*---------------------------------------------------------------------------
2642 WDI_TriggerBAReqinfoType
2643---------------------------------------------------------------------------*/
2644typedef struct
2645{
2646 /*Indicates the station for which BA is added..*/
2647 wpt_uint8 ucSTAIdx;
2648
2649 /* Session Id */
2650 wpt_uint8 ucBASessionID;
2651
2652 /* Trigger BA Request candidate count */
2653 wpt_uint16 usBACandidateCnt;
2654
2655 /* WDI_TriggerBAReqCandidateType followed by this*/
2656
2657}WDI_TriggerBAReqinfoType;
2658
2659
2660/*---------------------------------------------------------------------------
2661 WDI_TriggerBAReqParamsType
2662---------------------------------------------------------------------------*/
2663typedef struct
2664{
2665 /*BA Trigger Info Type*/
2666 WDI_TriggerBAReqinfoType wdiTriggerBAInfoType;
2667
2668 /*Request status callback offered by UMAC - it is called if the current
2669 req has returned PENDING as status; it delivers the status of sending
2670 the message over the BUS */
2671 WDI_ReqStatusCb wdiReqStatusCB;
2672
2673 /*The user data passed in by UMAC, it will be sent back when the above
2674 function pointer will be called */
2675 void* pUserData;
2676}WDI_TriggerBAReqParamsType;
2677
2678/*---------------------------------------------------------------------------
2679 WDI_AddBAInfoType
2680---------------------------------------------------------------------------*/
2681typedef struct
2682{
2683 wpt_uint16 fBaEnable : 1;
2684 wpt_uint16 startingSeqNum: 12;
2685 wpt_uint16 reserved : 3;
2686}WDI_AddBAInfoType;
2687
2688/*---------------------------------------------------------------------------
2689 WDI_TriggerBARspCandidateType
2690---------------------------------------------------------------------------*/
2691#define STA_MAX_TC 8
2692
2693typedef struct
2694{
2695 /* STA index */
2696 wpt_macAddr macSTA;
2697
2698 /* BA Info */
2699 WDI_AddBAInfoType wdiBAInfo[STA_MAX_TC];
2700}WDI_TriggerBARspCandidateType;
2701
2702/*---------------------------------------------------------------------------
2703 WDI_TriggerBARspParamsType
2704---------------------------------------------------------------------------*/
2705typedef struct
2706{
2707 /*Status of the response*/
2708 WDI_Status wdiStatus;
2709
2710 /*BSSID of the BSS*/
2711 wpt_macAddr macBSSID;
2712
2713 /* Trigger BA response candidate count */
2714 wpt_uint16 usBaCandidateCnt;
2715
2716 /* WDI_TriggerBARspCandidateType followed by this*/
2717
2718}WDI_TriggerBARspParamsType;
2719
2720/*---------------------------------------------------------------------------
2721 WDI_DelBAReqinfoType
2722---------------------------------------------------------------------------*/
2723typedef struct
2724{
2725 /*Indicates the station for which BA is added..*/
2726 wpt_uint8 ucSTAIdx;
2727
2728 /*TID for which BA was negotiated*/
2729 wpt_uint8 ucBaTID;
2730
2731 /*Originator/Recipient*/
2732 wpt_uint8 ucBaDirection;
2733
2734}WDI_DelBAReqinfoType;
2735
2736/*---------------------------------------------------------------------------
2737 WDI_DelBAReqParamsType
2738---------------------------------------------------------------------------*/
2739typedef struct
2740{
2741 /*BA Info */
2742 WDI_DelBAReqinfoType wdiBAInfo;
2743
2744 /*Request status callback offered by UMAC - it is called if the current
2745 req has returned PENDING as status; it delivers the status of sending
2746 the message over the BUS */
2747 WDI_ReqStatusCb wdiReqStatusCB;
2748
2749 /*The user data passed in by UMAC, it will be sent back when the above
2750 function pointer will be called */
2751 void* pUserData;
2752}WDI_DelBAReqParamsType;
2753
Manjunathappa Prakash86f78ca2014-02-10 18:09:15 -08002754/*---------------------------------------------------------------------------
2755 WDI_UpdateChannelReqinfoType
2756---------------------------------------------------------------------------*/
2757typedef struct
2758{
2759 /** primary 20 MHz channel frequency in mhz */
2760 wpt_uint32 mhz;
2761 /** Center frequency 1 in MHz*/
2762 wpt_uint32 band_center_freq1;
2763 /** Center frequency 2 in MHz - valid only for 11acvht 80plus80 mode*/
2764 wpt_uint32 band_center_freq2;
2765 /* The first 26 bits are a bit mask to indicate any channel flags,
2766 (see WLAN_HAL_CHAN_FLAG*)
2767 The last 6 bits indicate the mode (see tChannelPhyModeType)*/
2768 wpt_uint32 channel_info;
2769 /** contains min power, max power, reg power and reg class id. */
2770 wpt_uint32 reg_info_1;
2771 /** contains antennamax */
2772 wpt_uint32 reg_info_2;
2773}WDI_UpdateChannelReqinfoType;
2774
2775typedef struct
2776{
2777 wpt_uint8 numchan;
2778 WDI_UpdateChannelReqinfoType *pchanParam;
2779}WDI_UpdateChannelReqType;
2780/*---------------------------------------------------------------------------
2781 WDI_UpdateChReqParamsType
2782---------------------------------------------------------------------------*/
2783typedef struct
2784{
2785 /*BA Info */
2786 WDI_UpdateChannelReqType wdiUpdateChanParams;
2787
2788 /*Request status callback offered by UMAC - it is called if the current
2789 req has returned PENDING as status; it delivers the status of sending
2790 the message over the BUS */
2791 WDI_ReqStatusCb wdiReqStatusCB;
2792
2793 /*The user data passed in by UMAC, it will be sent back when the above
2794 function pointer will be called */
2795 void* pUserData;
2796}WDI_UpdateChReqParamsType;
Jeff Johnson295189b2012-06-20 16:38:30 -07002797
2798/*---------------------------------------------------------------------------
2799 WDI_SwitchCHRspParamsType
2800---------------------------------------------------------------------------*/
2801typedef struct
2802{
2803 /*Status of the response*/
2804 WDI_Status wdiStatus;
2805
2806 /*Indicates the channel that WLAN is on*/
2807 wpt_uint8 ucChannel;
2808
2809#ifdef WLAN_FEATURE_VOWIFI
2810 /*HAL fills in the tx power used for mgmt frames in this field.*/
2811 wpt_int8 ucTxMgmtPower;
2812#endif
2813
2814}WDI_SwitchCHRspParamsType;
2815
Kalikinkar dhara1e83b772014-02-06 12:59:22 -08002816/*--------------------------------------------------------------------
2817 WDI_SwitchChRspParamsType_V1
2818--------------------------------------------------------------------*/
2819typedef struct
2820{
2821 /*Status of the response*/
2822 WDI_Status wdiStatus;
2823
2824 /*Indicates the channel that WLAN is on*/
2825 wpt_uint8 ucChannel;
2826
2827#ifdef WLAN_FEATURE_VOWIFI
2828 /*HAL fills in the tx power used for mgmt frames in this field.*/
2829 wpt_int8 ucTxMgmtPower;
2830#endif
2831
2832 /* Source of Channel Switch */
2833 WDI_ChanSwitchSource channelSwitchSrc;
2834}WDI_SwitchChRspParamsType_V1;
2835
Jeff Johnson295189b2012-06-20 16:38:30 -07002836/*---------------------------------------------------------------------------
2837 WDI_ConfigSTAReqParamsType
2838---------------------------------------------------------------------------*/
2839typedef struct
2840{
2841 /*Info for the Join request that will be sent down to the device*/
2842 WDI_ConfigStaReqInfoType wdiReqInfo;
2843
2844 /*Request status callback offered by UMAC - it is called if the current
2845 req has returned PENDING as status; it delivers the status of sending
2846 the message over the BUS */
2847 WDI_ReqStatusCb wdiReqStatusCB;
2848
2849 /*The user data passed in by UMAC, it will be sent back when the above
2850 function pointer will be called */
2851 void* pUserData;
2852}WDI_ConfigSTAReqParamsType;
2853
2854
2855/*---------------------------------------------------------------------------
2856 WDI_UpdateBeaconParamsInfoType
2857---------------------------------------------------------------------------*/
2858
2859typedef struct
2860{
2861 /*BSS Index of the BSS*/
2862 wpt_uint8 ucBssIdx;
2863
2864 /*shortPreamble mode. HAL should update all the STA rates when it
2865 receives this message*/
2866 wpt_uint8 ucfShortPreamble;
2867 /* short Slot time.*/
2868 wpt_uint8 ucfShortSlotTime;
2869 /* Beacon Interval */
2870 wpt_uint16 usBeaconInterval;
2871 /*Protection related */
2872 wpt_uint8 ucllaCoexist;
2873 wpt_uint8 ucllbCoexist;
2874 wpt_uint8 ucllgCoexist;
2875 wpt_uint8 ucHt20MhzCoexist;
2876 wpt_uint8 ucllnNonGFCoexist;
2877 wpt_uint8 ucfLsigTXOPProtectionFullSupport;
2878 wpt_uint8 ucfRIFSMode;
2879
2880 wpt_uint16 usChangeBitmap;
2881}WDI_UpdateBeaconParamsInfoType;
2882
Mohit Khanna4a70d262012-09-11 16:30:12 -07002883#ifdef WLAN_FEATURE_11AC
2884typedef struct
2885{
2886 wpt_uint16 opMode;
2887 wpt_uint16 staId;
2888}WDI_UpdateVHTOpMode;
2889#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07002890
2891/*---------------------------------------------------------------------------
2892 WDI_UpdateBeaconParamsType
2893---------------------------------------------------------------------------*/
2894typedef struct
2895{
2896 /*Update Beacon Params Info*/
2897 WDI_UpdateBeaconParamsInfoType wdiUpdateBeaconParamsInfo;
2898
2899 /*Request status callback offered by UMAC - it is called if the current
2900 req has returned PENDING as status; it delivers the status of sending
2901 the message over the BUS */
2902 WDI_ReqStatusCb wdiReqStatusCB;
2903
2904 /*The user data passed in by UMAC, it will be sent back when the above
2905 function pointer will be called */
2906 void* pUserData;
2907}WDI_UpdateBeaconParamsType;
2908
2909/*---------------------------------------------------------------------------
2910 WDI_SendBeaconParamsInfoType
2911---------------------------------------------------------------------------*/
2912
2913typedef struct {
2914
2915 /*BSSID of the BSS*/
2916 wpt_macAddr macBSSID;
2917
2918 /* Beacon data */
2919 wpt_uint8 beacon[WDI_BEACON_TEMPLATE_SIZE];
2920
2921 /* length of the template */
2922 wpt_uint32 beaconLength;
2923
Jeff Johnson295189b2012-06-20 16:38:30 -07002924 /* TIM IE offset from the beginning of the template.*/
2925 wpt_uint32 timIeOffset;
Jeff Johnson295189b2012-06-20 16:38:30 -07002926
Jeff Johnson295189b2012-06-20 16:38:30 -07002927 /* P2P IE offset from the beginning of the template */
2928 wpt_uint16 usP2PIeOffset;
Jeff Johnson295189b2012-06-20 16:38:30 -07002929} WDI_SendBeaconParamsInfoType;
2930
2931/*---------------------------------------------------------------------------
2932 WDI_SendBeaconParamsType
2933---------------------------------------------------------------------------*/
2934typedef struct
2935{
2936 /*Send Beacon Params Info*/
2937 WDI_SendBeaconParamsInfoType wdiSendBeaconParamsInfo;
2938
2939 /*Request status callback offered by UMAC - it is called if the current
2940 req has returned PENDING as status; it delivers the status of sending
2941 the message over the BUS */
2942 WDI_ReqStatusCb wdiReqStatusCB;
2943
2944 /*The user data passed in by UMAC, it will be sent back when the above
2945 function pointer will be called */
2946 void* pUserData;
2947}WDI_SendBeaconParamsType;
2948
2949/*---------------------------------------------------------------------------
2950 WDI_LinkStateType
2951---------------------------------------------------------------------------*/
2952typedef enum
2953{
2954 WDI_LINK_IDLE_STATE = 0,
2955 WDI_LINK_PREASSOC_STATE = 1,
2956 WDI_LINK_POSTASSOC_STATE = 2,
2957 WDI_LINK_AP_STATE = 3,
2958 WDI_LINK_IBSS_STATE = 4,
2959
2960 // BT-AMP Case
2961 WDI_LINK_BTAMP_PREASSOC_STATE = 5,
2962 WDI_LINK_BTAMP_POSTASSOC_STATE = 6,
2963 WDI_LINK_BTAMP_AP_STATE = 7,
2964 WDI_LINK_BTAMP_STA_STATE = 8,
2965
2966 // Reserved for HAL internal use
2967 WDI_LINK_LEARN_STATE = 9,
2968 WDI_LINK_SCAN_STATE = 10,
2969 WDI_LINK_FINISH_SCAN_STATE = 11,
2970 WDI_LINK_INIT_CAL_STATE = 12,
2971 WDI_LINK_FINISH_CAL_STATE = 13,
Jeff Johnson295189b2012-06-20 16:38:30 -07002972 WDI_LINK_LISTEN_STATE = 14,
Gopichand Nakkala924e4552013-05-08 19:18:14 +05302973 WDI_LINK_SEND_ACTION_STATE = 15,
Jeff Johnson295189b2012-06-20 16:38:30 -07002974 WDI_LINK_MAX = 0x7FFFFFFF
2975} WDI_LinkStateType;
2976
2977/*---------------------------------------------------------------------------
2978 WDI_SetLinkReqInfoType
2979---------------------------------------------------------------------------*/
2980typedef struct
2981{
2982 /*BSSID of the BSS*/
2983 wpt_macAddr macBSSID;
2984
2985 /*Link state*/
2986 WDI_LinkStateType wdiLinkState;
2987
2988 /*BSSID of the BSS*/
2989 wpt_macAddr macSelfStaMacAddr;
2990}WDI_SetLinkReqInfoType;
2991
2992/*---------------------------------------------------------------------------
2993 WDI_SetLinkReqParamsType
2994---------------------------------------------------------------------------*/
2995typedef struct
2996{
2997 /*Link Info*/
2998 WDI_SetLinkReqInfoType wdiLinkInfo;
2999
3000 /*Request status callback offered by UMAC - it is called if the current
3001 req has returned PENDING as status; it delivers the status of sending
3002 the message over the BUS */
3003 WDI_ReqStatusCb wdiReqStatusCB;
3004
3005 /*The user data passed in by UMAC, it will be sent back when the above
3006 function pointer will be called */
3007 void* pUserData;
3008}WDI_SetLinkReqParamsType;
3009
3010/*---------------------------------------------------------------------------
3011 WDI_GetStatsParamsInfoType
3012---------------------------------------------------------------------------*/
3013typedef struct
3014{
3015 /*Indicates the station for which Get Stats are requested..*/
3016 wpt_uint8 ucSTAIdx;
3017
3018 /* categories of stats requested */
3019 wpt_uint32 uStatsMask;
3020}WDI_GetStatsParamsInfoType;
3021
3022/*---------------------------------------------------------------------------
3023 WDI_GetStatsReqParamsType
3024---------------------------------------------------------------------------*/
3025typedef struct
3026{
3027 /*Get Stats Params Info*/
3028 WDI_GetStatsParamsInfoType wdiGetStatsParamsInfo;
3029
3030 /*Request status callback offered by UMAC - it is called if the current
3031 req has returned PENDING as status; it delivers the status of sending
3032 the message over the BUS */
3033 WDI_ReqStatusCb wdiReqStatusCB;
3034
3035 /*The user data passed in by UMAC, it will be sent back when the above
3036 function pointer will be called */
3037 void* pUserData;
3038}WDI_GetStatsReqParamsType;
3039
3040/*---------------------------------------------------------------------------
3041 WDI_GetStatsRspParamsType
3042---------------------------------------------------------------------------*/
3043typedef struct
3044{
3045 /*message type is same as the request type*/
3046 wpt_uint16 usMsgType;
3047
3048 /* length of the entire request, includes the pStatsBuf length too*/
3049 wpt_uint16 usMsgLen;
3050
3051 /*Result of the operation*/
3052 WDI_Status wdiStatus;
3053
3054 /*Indicates the station for which Get Stats are requested..*/
3055 wpt_uint8 ucSTAIdx;
3056
3057 /* categories of stats requested */
3058 wpt_uint32 uStatsMask;
3059
3060 /* The Stats buffer starts here and can be an aggregate of more than one statistics
3061 * structure depending on statsMask.*/
3062}WDI_GetStatsRspParamsType;
3063
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08003064#if defined WLAN_FEATURE_VOWIFI_11R || defined FEATURE_WLAN_ESE || defined(FEATURE_WLAN_LFR)
Srinivas Girigowdad34cedb2013-01-25 13:33:11 -08003065/*---------------------------------------------------------------------------
3066 WDI_GetRoamRssiParamsInfoType
3067---------------------------------------------------------------------------*/
3068typedef struct
3069{
3070 /*Indicates the station for which Get Stats are requested..*/
3071 wpt_uint8 ucSTAIdx;
3072
3073 /* categories of stats requested */
3074 wpt_uint32 uStatsMask;
3075}WDI_GetRoamRssiParamsInfoType;
3076
3077/*---------------------------------------------------------------------------
3078 WDI_GetRoamRssiReqParamsType
3079---------------------------------------------------------------------------*/
3080typedef struct
3081{
3082 /*Get Roam Rssi Params Info*/
3083 WDI_GetRoamRssiParamsInfoType wdiGetRoamRssiParamsInfo;
3084
3085 /*Request status callback offered by UMAC - it is called if the current
3086 req has returned PENDING as status; it delivers the status of sending
3087 the message over the BUS */
3088 WDI_ReqStatusCb wdiReqStatusCB;
3089
3090 /*The user data passed in by UMAC, it will be sent back when the above
3091 function pointer will be called */
3092 void* pUserData;
3093}WDI_GetRoamRssiReqParamsType;
3094
3095/*---------------------------------------------------------------------------
3096 WDI_GetRoamRssiRspParamsType
3097---------------------------------------------------------------------------*/
3098typedef struct
3099{
3100 /*Result of the operation*/
3101 WDI_Status wdiStatus;
3102
3103 /*Indicates the station for which Get Stats are requested..*/
3104 wpt_uint8 ucSTAIdx;
3105
3106 /* roam rssi requested */
3107 wpt_int8 rssi;
3108
3109 /* The Stats buffer starts here and can be an aggregate of more than one statistics
3110 * structure depending on statsMask.*/
3111}WDI_GetRoamRssiRspParamsType;
3112#endif
3113
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08003114#ifdef FEATURE_WLAN_ESE
Jeff Johnson295189b2012-06-20 16:38:30 -07003115/*---------------------------------------------------------------------------
3116 WDI_TSMStatsParamsInfoType
3117---------------------------------------------------------------------------*/
3118typedef struct
3119{
3120 /*Indicates the station for which Get Stats are requested..*/
3121 wpt_uint8 ucTid;
3122
3123 wpt_macAddr bssid;
3124}WDI_TSMStatsParamsInfoType;
3125
3126/*---------------------------------------------------------------------------
3127 WDI_TSMStatsReqParamsType
3128---------------------------------------------------------------------------*/
3129typedef struct
3130{
3131 /*Get TSM Stats Params Info*/
3132 WDI_TSMStatsParamsInfoType wdiTsmStatsParamsInfo;
3133
3134 WDI_ReqStatusCb wdiReqStatusCB;
3135
3136 /*The user data passed in by UMAC, it will be sent back when the above
3137 function pointer will be called */
3138 void* pUserData;
3139
3140}WDI_TSMStatsReqParamsType;
3141
3142
3143/*---------------------------------------------------------------------------
3144 WDI_TSMStatsRspParamsType
3145---------------------------------------------------------------------------*/
3146typedef struct
3147{
3148 /*Indicates the status of the operation */
3149 WDI_Status wdiStatus;
3150
3151 wpt_uint16 UplinkPktQueueDly;
3152 wpt_uint16 UplinkPktQueueDlyHist[4];
3153 wpt_uint32 UplinkPktTxDly;
3154 wpt_uint16 UplinkPktLoss;
3155 wpt_uint16 UplinkPktCount;
3156 wpt_uint8 RoamingCount;
3157 wpt_uint16 RoamingDly;
3158}WDI_TSMStatsRspParamsType;
3159
3160
3161#endif
3162/*---------------------------------------------------------------------------
3163 WDI_UpdateCfgReqParamsType
3164---------------------------------------------------------------------------*/
3165typedef struct
3166{
3167 /*This is a TLV formatted buffer containing all config values that can
3168 be set through the DAL Interface
3169
3170 The TLV is expected to be formatted like this:
3171
3172 0 7 15 31 ....
3173 | CONFIG ID | CFG LEN | RESERVED | CFG BODY |
3174
3175 Or from a C construct point of VU it would look like this:
3176
3177 typedef struct WPT_PACK_POST
3178 {
3179 #ifdef WPT_BIG_ENDIAN
3180 wpt_uint32 ucCfgId:8;
3181 wpt_uint32 ucCfgLen:8;
3182 wpt_uint32 usReserved:16;
3183 #else
3184 wpt_uint32 usReserved:16;
3185 wpt_uint32 ucCfgLen:8;
3186 wpt_uint32 ucCfgId:8;
3187 #endif
3188
3189 wpt_uint8 ucCfgBody[ucCfgLen];
3190 }WDI_ConfigType;
3191
3192 Multiple such tuplets are to be placed in the config buffer. One for
3193 each required configuration item:
3194
3195 | TLV 1 | TLV2 | ....
3196
3197 The buffer is expected to be a flat area of memory that can be manipulated
3198 with standard memory routines.
3199
3200 For more info please check paragraph 2.3.1 Config Structure from the
3201 HAL LLD.
3202
3203 For a list of accepted configuration list and IDs please look up
3204 wlan_qct_dal_cfg.h
3205 */
3206 void* pConfigBuffer;
3207
3208 /*Length of the config buffer above*/
3209 wpt_uint32 uConfigBufferLen;
3210
3211 /*Request status callback offered by UMAC - it is called if the current
3212 req has returned PENDING as status; it delivers the status of sending
3213 the message over the BUS */
3214 WDI_ReqStatusCb wdiReqStatusCB;
3215
3216 /*The user data passed in by UMAC, it will be sent back when the above
3217 function pointer will be called */
3218 void* pUserData;
3219}WDI_UpdateCfgReqParamsType;
3220
3221/*---------------------------------------------------------------------------
3222 WDI_UpdateProbeRspTemplateInfoType
3223---------------------------------------------------------------------------*/
3224//Default Beacon template size
3225#define WDI_PROBE_RSP_TEMPLATE_SIZE 0x180
3226
3227#define WDI_PROBE_REQ_BITMAP_IE_LEN 8
3228
3229typedef struct
3230{
3231 /*BSSID for which the Probe Template is to be used*/
3232 wpt_macAddr macBSSID;
3233
3234 /*Probe response template*/
3235 wpt_uint8 *pProbeRespTemplate[WDI_PROBE_RSP_TEMPLATE_SIZE];
3236
3237 /*Template Len*/
3238 wpt_uint32 uProbeRespTemplateLen;
3239
3240 /*Bitmap for the IEs that are to be handled at SLM level*/
3241 wpt_uint32 uaProxyProbeReqValidIEBmap[WDI_PROBE_REQ_BITMAP_IE_LEN];
3242
3243}WDI_UpdateProbeRspTemplateInfoType;
3244
3245/*---------------------------------------------------------------------------
3246 WDI_UpdateProbeRspParamsType
3247---------------------------------------------------------------------------*/
3248typedef struct
3249{
3250 /*Link Info*/
3251 WDI_UpdateProbeRspTemplateInfoType wdiProbeRspTemplateInfo;
3252
3253 /*Request status callback offered by UMAC - it is called if the current
3254 req has returned PENDING as status; it delivers the status of sending
3255 the message over the BUS */
3256 WDI_ReqStatusCb wdiReqStatusCB;
3257
3258 /*The user data passed in by UMAC, it will be sent back when the above
3259 function pointer will be called */
3260 void* pUserData;
3261}WDI_UpdateProbeRspTemplateParamsType;
3262
3263/*---------------------------------------------------------------------------
3264 WDI_NvDownloadReqBlobInfo
3265---------------------------------------------------------------------------*/
3266
3267typedef struct
3268{
3269 /* Blob starting address*/
3270 void *pBlobAddress;
3271
3272 /* Blob size */
3273 wpt_uint32 uBlobSize;
3274
3275}WDI_NvDownloadReqBlobInfo;
3276
3277/*---------------------------------------------------------------------------
3278 WDI_NvDownloadReqParamsType
3279---------------------------------------------------------------------------*/
3280typedef struct
3281{
3282 /*NV Blob Info*/
3283 WDI_NvDownloadReqBlobInfo wdiBlobInfo;
3284
3285 /*Request status callback offered by UMAC - it is called if the current
3286 req has returned PENDING as status; it delivers the status of sending
3287 the message over the BUS */
3288 WDI_ReqStatusCb wdiReqStatusCB;
3289
3290 /*The user data passed in by UMAC, it will be sent back when the above
3291 function pointer will be called */
3292 void* pUserData;
3293
3294}WDI_NvDownloadReqParamsType;
3295
3296/*---------------------------------------------------------------------------
3297 WDI_NvDownloadRspInfoType
3298---------------------------------------------------------------------------*/
3299typedef struct
3300{
3301 /*Status of the response*/
3302 WDI_Status wdiStatus;
3303
3304}WDI_NvDownloadRspInfoType;
3305
3306/*---------------------------------------------------------------------------
3307 WDI_SetMaxTxPowerInfoType
3308---------------------------------------------------------------------------*/
3309
3310typedef struct
3311{
3312 /*BSSID is needed to identify which session issued this request. As the request has
3313 power constraints, this should be applied only to that session*/
3314 wpt_macAddr macBSSId;
3315
3316
3317 wpt_macAddr macSelfStaMacAddr;
3318
3319 /* In request power == MaxTxpower to be used.*/
3320 wpt_int8 ucPower;
3321
3322}WDI_SetMaxTxPowerInfoType;
3323
3324/*---------------------------------------------------------------------------
schang86c22c42013-03-13 18:41:24 -07003325 WDI_SetTxPowerInfoType
3326---------------------------------------------------------------------------*/
3327
3328typedef struct
3329{
3330 wpt_uint8 bssIdx;
3331 /* In request power == MaxTxpower to be used.*/
3332 wpt_uint8 ucPower;
3333
3334}WDI_SetTxPowerInfoType;
3335
3336/*---------------------------------------------------------------------------
Jeff Johnson295189b2012-06-20 16:38:30 -07003337 WDI_SetMaxTxPowerParamsType
3338---------------------------------------------------------------------------*/
3339typedef struct
3340{
3341 /*Link Info*/
3342 WDI_SetMaxTxPowerInfoType wdiMaxTxPowerInfo;
3343
3344 /*Request status callback offered by UMAC - it is called if the current
3345 req has returned PENDING as status; it delivers the status of sending
3346 the message over the BUS */
3347 WDI_ReqStatusCb wdiReqStatusCB;
3348
3349 /*The user data passed in by UMAC, it will be sent back when the above
3350 function pointer will be called */
3351 void* pUserData;
3352}WDI_SetMaxTxPowerParamsType;
3353
schang86c22c42013-03-13 18:41:24 -07003354/*---------------------------------------------------------------------------
Arif Hussaina5ebce02013-08-09 15:09:58 -07003355 WDI_Band
3356---------------------------------------------------------------------------*/
3357typedef enum
3358{
3359 WDI_BAND_ALL,
3360 WDI_BAND_24,
3361 WDI_BAND_5G,
3362 WDI_BAND_MAX,
3363}eWDIBand;
3364
3365/*---------------------------------------------------------------------------
3366 WDI_MaxTxPowerPerBandInfoType
3367---------------------------------------------------------------------------*/
3368typedef struct
3369{
3370 eWDIBand bandInfo;
3371 /* In request power == MaxTxpower to be used.*/
3372 wpt_uint8 ucPower;
3373}WDI_MaxTxPowerPerBandInfoType;
3374
3375/*---------------------------------------------------------------------------
3376 WDI_SetMaxTxPowerPerBandParamsType
3377---------------------------------------------------------------------------*/
3378typedef struct
3379{
3380 /*Link Info*/
3381 WDI_MaxTxPowerPerBandInfoType wdiMaxTxPowerPerBandInfo;
3382
3383 /*Request status callback offered by UMAC - it is called if the current
3384 req has returned PENDING as status; it delivers the status of sending
3385 the message over the BUS */
3386 WDI_ReqStatusCb wdiReqStatusCB;
3387
3388 /*The user data passed in by UMAC, it will be sent back when the above
3389 function pointer will be called */
3390 void* pUserData;
3391}WDI_SetMaxTxPowerPerBandParamsType;
3392
3393/*---------------------------------------------------------------------------
schang86c22c42013-03-13 18:41:24 -07003394 WDI_SetTxPowerParamsType
3395---------------------------------------------------------------------------*/
3396typedef struct
3397{
3398 /*Link Info*/
3399 WDI_SetTxPowerInfoType wdiTxPowerInfo;
3400
3401 /*Request status callback offered by UMAC - it is called if the current
3402 req has returned PENDING as status; it delivers the status of sending
3403 the message over the BUS */
3404 WDI_ReqStatusCb wdiReqStatusCB;
3405
3406 /*The user data passed in by UMAC, it will be sent back when the above
3407 function pointer will be called */
3408 void* pUserData;
3409}WDI_SetTxPowerParamsType;
Jeff Johnson295189b2012-06-20 16:38:30 -07003410
3411/*---------------------------------------------------------------------------
3412 WDI_SetMaxTxPowerRspMsg
3413---------------------------------------------------------------------------*/
3414
3415typedef struct
3416{
3417 /* In response, power==tx power used for management frames*/
3418 wpt_int8 ucPower;
3419
3420 /*Result of the operation*/
3421 WDI_Status wdiStatus;
3422
3423}WDI_SetMaxTxPowerRspMsg;
3424
schang86c22c42013-03-13 18:41:24 -07003425/*---------------------------------------------------------------------------
Arif Hussaina5ebce02013-08-09 15:09:58 -07003426 WDI_SetMaxTxPowerPerBandRspMsg
3427---------------------------------------------------------------------------*/
3428typedef struct
3429{
3430 /* In response, power==tx power used for management frames*/
3431 wpt_int8 ucPower;
3432
3433 /*Result of the operation*/
3434 WDI_Status wdiStatus;
3435
3436}WDI_SetMaxTxPowerPerBandRspMsg;
3437
3438/*---------------------------------------------------------------------------
schang86c22c42013-03-13 18:41:24 -07003439 WDI_SetTxPowerRspMsg
3440---------------------------------------------------------------------------*/
3441
3442typedef struct
3443{
3444 /* In response, power==tx power used for management frames*/
3445 wpt_int8 ucPower;
3446
3447 /*Result of the operation*/
3448 WDI_Status wdiStatus;
3449
3450}WDI_SetTxPowerRspMsg;
3451
Jeff Johnson295189b2012-06-20 16:38:30 -07003452typedef struct
3453{
3454 wpt_uint8 ucOpp_ps;
3455 wpt_uint32 uCtWindow;
3456 wpt_uint8 ucCount;
3457 wpt_uint32 uDuration;
3458 wpt_uint32 uInterval;
3459 wpt_uint32 uSingle_noa_duration;
3460 wpt_uint8 ucPsSelection;
3461}WDI_SetP2PGONOAReqInfoType;
3462
3463/*---------------------------------------------------------------------------
3464 WDI_SetP2PGONOAReqParamsType
3465---------------------------------------------------------------------------*/
3466typedef struct
3467{
3468 /*P2P GO NOA Req*/
3469 WDI_SetP2PGONOAReqInfoType wdiP2PGONOAInfo;
3470
3471 /*Request status callback offered by UMAC - it is called if the current
3472 req has returned PENDING as status; it delivers the status of sending
3473 the message over the BUS */
3474 WDI_ReqStatusCb wdiReqStatusCB;
3475
3476 /*The user data passed in by UMAC, it will be sent back when the above
3477 function pointer will be called */
3478 void* pUserData;
3479}WDI_SetP2PGONOAReqParamsType;
Jeff Johnson295189b2012-06-20 16:38:30 -07003480
Naresh Jayaramc7cbd782014-02-04 17:38:23 +05303481#define WDI_MAX_SUPP_CHANNELS 128
3482#define WDI_MAX_SUPP_OPER_CLASSES 32
3483
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05303484typedef struct
3485{
3486 wpt_uint16 uStaIdx;
3487 wpt_uint8 uIsResponder;
3488 wpt_uint8 uUapsdQueues;
3489 wpt_uint8 uMaxSp;
3490 wpt_uint8 uIsBufSta;
Naresh Jayaramc7cbd782014-02-04 17:38:23 +05303491 wpt_uint8 uIsOffChannelSupported;
3492 wpt_uint8 peerCurrOperClass;
3493 wpt_uint8 selfCurrOperClass;
3494 wpt_uint8 validChannelsLen;
3495 wpt_uint8 validChannels[WDI_MAX_SUPP_CHANNELS];
3496 wpt_uint8 validOperClassesLen;
3497 wpt_uint8 validOperClasses[WDI_MAX_SUPP_OPER_CLASSES];
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05303498}WDI_SetTDLSLinkEstablishReqInfoType;
3499/*---------------------------------------------------------------------------
3500 WDI_SetTDLSLinkEstablishReqParamsType
3501---------------------------------------------------------------------------*/
3502typedef struct
3503{
3504 /*TDLS Link Establish Req*/
3505 WDI_SetTDLSLinkEstablishReqInfoType wdiTDLSLinkEstablishInfo;
3506
3507 /*Request status callback offered by UMAC - it is called if the current
3508 req has returned PENDING as status; it delivers the status of sending
3509 the message over the BUS */
3510 WDI_ReqStatusCb wdiReqStatusCB;
3511
3512 /*The user data passed in by UMAC, it will be sent back when the above
3513 function pointer will be called */
3514 void* pUserData;
3515}WDI_SetTDLSLinkEstablishReqParamsType;
3516
3517
Gopichand Nakkala574f6d12013-06-27 19:38:43 +05303518typedef struct
3519{
3520 /*Result of the operation*/
3521 WDI_Status wdiStatus;
3522
3523 /*STA Idx*/
3524 wpt_uint16 uStaIdx;
3525}WDI_SetTdlsLinkEstablishReqResp;
Jeff Johnson295189b2012-06-20 16:38:30 -07003526
3527/*---------------------------------------------------------------------------
3528 WDI_SetAddSTASelfParamsType
3529---------------------------------------------------------------------------*/
3530typedef struct
3531{
3532 /*Self Station MAC address*/
3533 wpt_macAddr selfMacAddr;
3534
Kiran Kumar Lokere0ad5cd32013-06-25 11:26:22 -07003535 /*Self STA device mode*/
3536 wpt_uint32 currDeviceMode;
3537
Jeff Johnson295189b2012-06-20 16:38:30 -07003538 /*Status of the operation*/
3539 wpt_uint32 uStatus;
3540}WDI_AddSTASelfInfoType;
3541
3542/*---------------------------------------------------------------------------
3543 WDI_SetAddSTASelfParamsType
3544---------------------------------------------------------------------------*/
3545typedef struct
3546{
3547 /* Add Sta Self Req */
3548 WDI_AddSTASelfInfoType wdiAddSTASelfInfo;
3549
3550 /*Request status callback offered by UMAC - it is called if the current
3551 req has returned PENDING as status; it delivers the status of sending
3552 the message over the BUS */
3553 WDI_ReqStatusCb wdiReqStatusCB;
3554
3555 /*The user data passed in by UMAC, it will be sent back when the above
3556 function pointer will be called */
3557 void* pUserData;
3558}WDI_AddSTASelfReqParamsType;
3559
3560
3561/*---------------------------------------------------------------------------
3562 WDI_AddSTASelfRspParamsType
3563---------------------------------------------------------------------------*/
3564typedef struct
3565{
3566 /*Status of the response*/
3567 WDI_Status wdiStatus;
3568
3569 /*STA Idx allocated by HAL*/
3570 wpt_uint8 ucSTASelfIdx;
3571
3572 /* DPU Index (IGTK, PTK, GTK all same) */
3573 wpt_uint8 dpuIdx;
3574
3575 /* DPU Signature */
3576 wpt_uint8 dpuSignature;
3577
3578 /*Self STA Mac*/
3579 wpt_macAddr macSelfSta;
3580
3581}WDI_AddSTASelfRspParamsType;
3582
3583/*---------------------------------------------------------------------------
3584 WDI_DelSTASelfReqParamsType
3585 Del Sta Self info passed to WDI form WDA
3586---------------------------------------------------------------------------*/
3587typedef struct
3588{
3589 wpt_macAddr selfMacAddr;
3590
3591}WDI_DelSTASelfInfoType;
3592
3593/*---------------------------------------------------------------------------
3594 WDI_DelSTASelfReqParamsType
3595 Del Sta Self info passed to WDI form WDA
3596---------------------------------------------------------------------------*/
3597typedef struct
3598{
3599 /*Del Sta Self Info Type */
3600 WDI_DelSTASelfInfoType wdiDelStaSelfInfo;
3601 /*Request status callback offered by UMAC - it is called if the current req
3602 has returned PENDING as status; it delivers the status of sending the message
3603 over the BUS */
3604 WDI_ReqStatusCb wdiReqStatusCB;
3605 /*The user data passed in by UMAC, it will be sent back when the above
3606 function pointer will be called */
3607 void* pUserData;
3608}WDI_DelSTASelfReqParamsType;
3609
3610/*---------------------------------------------------------------------------
3611 WDI_DelSTASelfRspParamsType
3612---------------------------------------------------------------------------*/
3613typedef struct
3614{
3615 /*Status of the response*/
3616 WDI_Status wdiStatus;
3617
3618 /*STA Index returned during DAL_PostAssocReq or DAL_ConfigStaReq*/
3619// wpt_uint8 ucSTAIdx;
3620}WDI_DelSTASelfRspParamsType;
3621
3622/*---------------------------------------------------------------------------
3623 WDI_UapsdInfoType
3624 UAPSD parameters passed per AC to WDA from UMAC
3625---------------------------------------------------------------------------*/
3626typedef struct
3627{
3628 wpt_uint8 ucSTAIdx; // STA index
3629 wpt_uint8 ucAc; // Access Category
3630 wpt_uint8 ucUp; // User Priority
3631 wpt_uint32 uSrvInterval; // Service Interval
3632 wpt_uint32 uSusInterval; // Suspend Interval
3633 wpt_uint32 uDelayInterval; // Delay Interval
3634} WDI_UapsdInfoType;
3635
3636/*---------------------------------------------------------------------------
3637 WDI_SetUapsdAcParamsReqParamsType
3638 UAPSD parameters passed per AC to WDI from WDA
3639---------------------------------------------------------------------------*/
3640typedef struct
3641{
3642 /*Enter BMPS Info Type, same as tEnterBmpsParams */
3643 WDI_UapsdInfoType wdiUapsdInfo;
3644 /*Request status callback offered by UMAC - it is called if the current req
3645 has returned PENDING as status; it delivers the status of sending the message
3646 over the BUS */
3647 WDI_ReqStatusCb wdiReqStatusCB;
3648 /*The user data passed in by UMAC, it will be sent back when the above
3649 function pointer will be called */
3650 void* pUserData;
3651}WDI_SetUapsdAcParamsReqParamsType;
3652
3653/*---------------------------------------------------------------------------
3654 WDI_EnterBmpsReqinfoType
3655 Enter BMPS parameters passed to WDA from UMAC
3656---------------------------------------------------------------------------*/
3657typedef struct
3658{
3659 //TBTT value derived from the last beacon
3660 wpt_uint8 ucBssIdx;
3661 wpt_uint64 uTbtt;
3662 wpt_uint8 ucDtimCount;
3663 //DTIM period given to HAL during association may not be valid,
3664 //if association is based on ProbeRsp instead of beacon.
3665 wpt_uint8 ucDtimPeriod;
3666 /* DXE physical addr to be passed down to RIVA. RIVA HAL will use it to program
3667 DXE when DXE wakes up from power save*/
3668 unsigned int dxePhyAddr;
3669
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08003670 // For ESE and 11R Roaming
Jeff Johnson295189b2012-06-20 16:38:30 -07003671 wpt_uint32 rssiFilterPeriod;
3672 wpt_uint32 numBeaconPerRssiAverage;
3673 wpt_uint8 bRssiFilterEnable;
3674}WDI_EnterBmpsReqinfoType;
3675
3676/*---------------------------------------------------------------------------
3677 WDI_EnterBmpsReqParamsType
3678 Enter BMPS parameters passed to WDI from WDA
3679---------------------------------------------------------------------------*/
3680typedef struct
3681{
3682 /*Enter BMPS Info Type, same as tEnterBmpsParams */
3683 WDI_EnterBmpsReqinfoType wdiEnterBmpsInfo;
3684 /*Request status callback offered by UMAC - it is called if the current req
3685 has returned PENDING as status; it delivers the status of sending the message
3686 over the BUS */
3687 WDI_ReqStatusCb wdiReqStatusCB;
3688 /*The user data passed in by UMAC, it will be sent back when the above
3689 function pointer will be called */
3690 void* pUserData;
3691}WDI_EnterBmpsReqParamsType;
3692
3693/*---------------------------------------------------------------------------
Mihir Shetea4306052014-03-25 00:02:54 +05303694 WDI_EnterImpsReqParamsType
3695 Enter IMPS parameters passed to WDI from WDA
3696---------------------------------------------------------------------------*/
3697typedef struct
3698{
3699 /*Request status callback offered by UMAC - it is called if the current req
3700 has returned PENDING as status; it delivers the status of sending the message
3701 over the BUS */
3702 WDI_ReqStatusCb wdiReqStatusCB;
3703 /*The user data passed in by UMAC, it will be sent back when the above
3704 function pointer will be called */
3705 void* pUserData;
3706}WDI_EnterImpsReqParamsType;
3707
3708/*---------------------------------------------------------------------------
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07003709 WDI_EnterBmpsReqParamsType
3710 Enter BMPS parameters passed from WDI to WDA
3711---------------------------------------------------------------------------*/
3712typedef struct
3713{
3714 /*Status of the response*/
3715 WDI_Status wdiStatus;
3716
3717 /*BssIDX of the session*/
3718 wpt_uint8 bssIdx;
3719}WDI_EnterBmpsRspParamsType;
3720
3721/*---------------------------------------------------------------------------
Jeff Johnson295189b2012-06-20 16:38:30 -07003722 WDI_ExitBmpsReqinfoType
3723 Exit BMPS parameters passed to WDA from UMAC
3724---------------------------------------------------------------------------*/
3725typedef struct
3726{
3727 wpt_uint8 ucSendDataNull;
Jeff Johnsone7245742012-09-05 17:12:55 -07003728 wpt_uint8 bssIdx;
Jeff Johnson295189b2012-06-20 16:38:30 -07003729}WDI_ExitBmpsReqinfoType;
3730
3731/*---------------------------------------------------------------------------
3732 WDI_ExitBmpsReqParamsType
3733 Exit BMPS parameters passed to WDI from WDA
3734---------------------------------------------------------------------------*/
3735typedef struct
3736{
3737 /*Exit BMPS Info Type, same as tExitBmpsParams */
3738 WDI_ExitBmpsReqinfoType wdiExitBmpsInfo;
3739 /*Request status callback offered by UMAC - it is called if the current req
3740 has returned PENDING as status; it delivers the status of sending the message
3741 over the BUS */
3742 WDI_ReqStatusCb wdiReqStatusCB;
3743 /*The user data passed in by UMAC, it will be sent back when the above
3744 function pointer will be called */
3745 void* pUserData;
3746}WDI_ExitBmpsReqParamsType;
3747
3748/*---------------------------------------------------------------------------
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07003749 WDI_ExitBmpsReqParamsType
3750 Exit BMPS parameters passed from WDI to WDA
3751---------------------------------------------------------------------------*/
3752typedef struct
3753{
3754 /*Status of the response*/
3755 WDI_Status wdiStatus;
3756
3757 /*BssIDX of the session*/
3758 wpt_uint8 bssIdx;
3759}WDI_ExitBmpsRspParamsType;
3760
3761/*---------------------------------------------------------------------------
Jeff Johnson295189b2012-06-20 16:38:30 -07003762 WDI_EnterUapsdReqinfoType
3763 Enter UAPSD parameters passed to WDA from UMAC
3764---------------------------------------------------------------------------*/
3765typedef struct
3766{
3767 wpt_uint8 ucBkDeliveryEnabled:1;
3768 wpt_uint8 ucBeDeliveryEnabled:1;
3769 wpt_uint8 ucViDeliveryEnabled:1;
3770 wpt_uint8 ucVoDeliveryEnabled:1;
3771 wpt_uint8 ucBkTriggerEnabled:1;
3772 wpt_uint8 ucBeTriggerEnabled:1;
3773 wpt_uint8 ucViTriggerEnabled:1;
3774 wpt_uint8 ucVoTriggerEnabled:1;
Jeff Johnsone7245742012-09-05 17:12:55 -07003775 wpt_uint8 bssIdx;
Jeff Johnson295189b2012-06-20 16:38:30 -07003776}WDI_EnterUapsdReqinfoType;
3777
3778/*---------------------------------------------------------------------------
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07003779 WDI_EnterUapsdRspParamsType
3780 Enter UAPSD parameters passed from WDI to WDA
3781---------------------------------------------------------------------------*/
3782typedef struct
3783{
3784 /*Status of the response*/
3785 WDI_Status wdiStatus;
3786
3787 /*BssIDX of the session*/
3788 wpt_uint8 bssIdx;
3789}WDI_EnterUapsdRspParamsType;
3790
3791/*---------------------------------------------------------------------------
Jeff Johnson295189b2012-06-20 16:38:30 -07003792 WDI_EnterUapsdReqinfoType
3793 Enter UAPSD parameters passed to WDI from WDA
3794---------------------------------------------------------------------------*/
3795typedef struct
3796{
3797 /*Enter UAPSD Info Type, same as tUapsdParams */
3798 WDI_EnterUapsdReqinfoType wdiEnterUapsdInfo;
3799 /*Request status callback offered by UMAC - it is called if the current req
3800 has returned PENDING as status; it delivers the status of sending the message
3801 over the BUS */
3802 WDI_ReqStatusCb wdiReqStatusCB;
3803 /*The user data passed in by UMAC, it will be sent back when the above
3804 function pointer will be called */
3805 void* pUserData;
3806}WDI_EnterUapsdReqParamsType;
3807
3808/*---------------------------------------------------------------------------
3809 WDI_UpdateUapsdReqinfoType
3810 Update UAPSD parameters passed to WDA from UMAC
3811---------------------------------------------------------------------------*/
3812typedef struct
3813{
3814 wpt_uint8 ucSTAIdx;
3815 wpt_uint8 ucUapsdACMask;
3816 wpt_uint32 uMaxSpLen;
3817}WDI_UpdateUapsdReqinfoType;
3818
3819/*---------------------------------------------------------------------------
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07003820 WDI_ExitUapsdReqinfoType
3821 Exit UAPSD parameters passed to WDA from UMAC
3822---------------------------------------------------------------------------*/
3823typedef struct
3824{
3825 wpt_uint8 bssIdx;
3826}WDI_ExitUapsdReqinfoType;
3827
3828/*---------------------------------------------------------------------------
3829 WDI_ExitUapsdReqParamsType
3830 Exit UAPSD parameters passed to WDI from WDA
3831---------------------------------------------------------------------------*/
3832typedef struct
3833{
3834 /*Exit UAPSD Info Type, same as tUapsdParams */
3835 WDI_ExitUapsdReqinfoType wdiExitUapsdInfo;
3836 /*Request status callback offered by UMAC - it is called if the current req
3837 has returned PENDING as status; it delivers the status of sending the message
3838 over the BUS */
3839 WDI_ReqStatusCb wdiReqStatusCB;
3840 /*The user data passed in by UMAC, it will be sent back when the above
3841 function pointer will be called */
3842 void* pUserData;
3843}WDI_ExitUapsdReqParamsType;
3844
3845/*---------------------------------------------------------------------------
3846 WDI_ExitUapsdRspParamsType
3847 Exit UAPSD parameters passed from WDI to WDA
3848---------------------------------------------------------------------------*/
3849typedef struct
3850{
3851 /*Status of the response*/
3852 WDI_Status wdiStatus;
3853
3854 /*BssIDX of the session*/
3855 wpt_uint8 bssIdx;
3856}WDI_ExitUapsdRspParamsType;
3857
3858/*---------------------------------------------------------------------------
Jeff Johnson295189b2012-06-20 16:38:30 -07003859 WDI_UpdateUapsdReqParamsType
3860 Update UAPSD parameters passed to WDI form WDA
3861---------------------------------------------------------------------------*/
3862typedef struct
3863{
3864 /*Update UAPSD Info Type, same as tUpdateUapsdParams */
3865 WDI_UpdateUapsdReqinfoType wdiUpdateUapsdInfo;
3866 /*Request status callback offered by UMAC - it is called if the current req
3867 has returned PENDING as status; it delivers the status of sending the message
3868 over the BUS */
3869 WDI_ReqStatusCb wdiReqStatusCB;
3870 /*The user data passed in by UMAC, it will be sent back when the above
3871 function pointer will be called */
3872 void* pUserData;
3873}WDI_UpdateUapsdReqParamsType;
3874
3875/*---------------------------------------------------------------------------
3876 WDI_ConfigureRxpFilterReqParamsType
3877 RXP filter parameters passed to WDI form WDA
3878---------------------------------------------------------------------------*/
3879typedef struct
3880{
3881 /* Mode of Mcast and Bcast filters configured */
3882 wpt_uint8 ucSetMcstBcstFilterSetting;
3883
3884 /* Mcast Bcast Filters enable/disable*/
3885 wpt_uint8 ucSetMcstBcstFilter;
3886}WDI_RxpFilterReqParamsType;
3887
3888typedef struct
3889{
3890 /* Rxp Filter */
3891 WDI_RxpFilterReqParamsType wdiRxpFilterParam;
3892
3893 /*Request status callback offered by UMAC - it is called if the current req
3894 has returned PENDING as status; it delivers the status of sending the message
3895 over the BUS */
3896 WDI_ReqStatusCb wdiReqStatusCB;
3897 /*The user data passed in by UMAC, it will be sent back when the above
3898 function pointer will be called */
3899 void* pUserData;
3900}WDI_ConfigureRxpFilterReqParamsType;
3901
3902/*---------------------------------------------------------------------------
3903 WDI_BeaconFilterInfoType
3904 Beacon Filtering data structures passed to WDA form UMAC
3905---------------------------------------------------------------------------*/
3906typedef struct
3907{
3908 wpt_uint16 usCapabilityInfo;
3909 wpt_uint16 usCapabilityMask;
3910 wpt_uint16 usBeaconInterval;
3911 wpt_uint16 usIeNum;
Madan Mohan Koyyalamudia84edda2012-10-15 14:58:25 -07003912 wpt_uint8 bssIdx;
3913 wpt_uint8 reserved;
Jeff Johnson295189b2012-06-20 16:38:30 -07003914}WDI_BeaconFilterInfoType;
3915
3916/*---------------------------------------------------------------------------
3917 WDI_BeaconFilterReqParamsType
3918 Beacon Filtering parameters passed to WDI form WDA
3919---------------------------------------------------------------------------*/
3920typedef struct
3921{
3922 /*Beacon Filtering Info Type, same as tBeaconFilterMsg */
3923 WDI_BeaconFilterInfoType wdiBeaconFilterInfo;
3924 /*Beacon Filter(s) follow the "usIeNum" field, hence the array to ease the
3925 copy of params from WDA to WDI */
3926 wpt_uint8 aFilters[WDI_BEACON_FILTER_LEN];
3927 /*Request status callback offered by UMAC - it is called if the current req
3928 has returned PENDING as status; it delivers the status of sending the message
3929 over the BUS */
3930 WDI_ReqStatusCb wdiReqStatusCB;
3931 /*The user data passed in by UMAC, it will be sent back when the above
3932 function pointer will be called */
3933 void* pUserData;
3934}WDI_BeaconFilterReqParamsType;
3935
3936/*---------------------------------------------------------------------------
3937 WDI_RemBeaconFilterInfoType
3938 Beacon Filtering data structures (to be reomoved) passed to WDA form UMAC
3939---------------------------------------------------------------------------*/
3940typedef struct
3941{
3942 wpt_uint8 ucIeCount;
3943 wpt_uint8 ucRemIeId[1];
3944}WDI_RemBeaconFilterInfoType;
3945
3946/*---------------------------------------------------------------------------
3947 WDI_RemBeaconFilterReqParamsType
3948 Beacon Filtering parameters (to be reomoved)passed to WDI form WDA
3949---------------------------------------------------------------------------*/
3950typedef struct
3951{
3952 /*Beacon Filtering Info Type, same as tBeaconFilterMsg */
3953 WDI_RemBeaconFilterInfoType wdiBeaconFilterInfo;
3954 /*Request status callback offered by UMAC - it is called if the current req
3955 has returned PENDING as status; it delivers the status of sending the message
3956 over the BUS */
3957 WDI_ReqStatusCb wdiReqStatusCB;
3958 /*The user data passed in by UMAC, it will be sent back when the above
3959 function pointer will be called */
3960 void* pUserData;
3961}WDI_RemBeaconFilterReqParamsType;
3962
3963/*---------------------------------------------------------------------------
3964 WDI_RSSIThresholdsType
3965 RSSI thresholds data structures (to be reomoved) passed to WDA form UMAC
3966---------------------------------------------------------------------------*/
3967typedef struct
3968{
3969 wpt_int8 ucRssiThreshold1 : 8;
3970 wpt_int8 ucRssiThreshold2 : 8;
3971 wpt_int8 ucRssiThreshold3 : 8;
3972 wpt_uint8 bRssiThres1PosNotify : 1;
3973 wpt_uint8 bRssiThres1NegNotify : 1;
3974 wpt_uint8 bRssiThres2PosNotify : 1;
3975 wpt_uint8 bRssiThres2NegNotify : 1;
3976 wpt_uint8 bRssiThres3PosNotify : 1;
3977 wpt_uint8 bRssiThres3NegNotify : 1;
3978 wpt_uint8 bReserved10 : 2;
3979} WDI_RSSIThresholdsType;
3980
3981/*---------------------------------------------------------------------------
3982 WDI_SetRSSIThresholdsReqParamsType
3983 RSSI thresholds parameters (to be reomoved)passed to WDI form WDA
3984---------------------------------------------------------------------------*/
3985typedef struct
3986{
3987 /*RSSI thresholds Info Type, same as WDI_RSSIThresholds */
3988 WDI_RSSIThresholdsType wdiRSSIThresholdsInfo;
3989 /*Request status callback offered by UMAC - it is called if the current req
3990 has returned PENDING as status; it delivers the status of sending the message
3991 over the BUS */
3992 WDI_ReqStatusCb wdiReqStatusCB;
3993 /*The user data passed in by UMAC, it will be sent back when the above
3994 function pointer will be called */
3995 void* pUserData;
3996}WDI_SetRSSIThresholdsReqParamsType;
3997
3998/*---------------------------------------------------------------------------
3999 WDI_HostOffloadReqType
4000 host offload info passed to WDA form UMAC
4001---------------------------------------------------------------------------*/
4002#ifdef WLAN_NS_OFFLOAD
4003typedef struct
4004{
4005 wpt_uint8 srcIPv6Addr[16];
4006 wpt_uint8 selfIPv6Addr[16];
4007 //Only support 2 possible Network Advertisement IPv6 address
4008 wpt_uint8 targetIPv6Addr1[16];
4009 wpt_uint8 targetIPv6Addr2[16];
4010 wpt_uint8 selfMacAddr[6];
4011 wpt_uint8 srcIPv6AddrValid : 1;
4012 wpt_uint8 targetIPv6Addr1Valid : 1;
4013 wpt_uint8 targetIPv6Addr2Valid : 1;
Gopichand Nakkala746a9452013-06-11 12:45:54 +05304014 wpt_uint8 slotIdx;
Jeff Johnson295189b2012-06-20 16:38:30 -07004015} WDI_NSOffloadParams;
4016#endif //WLAN_NS_OFFLOAD
4017
4018typedef struct
4019{
4020 wpt_uint8 ucOffloadType;
4021 wpt_uint8 ucEnableOrDisable;
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07004022 wpt_macAddr bssId;
Jeff Johnson295189b2012-06-20 16:38:30 -07004023 union
4024 {
4025 wpt_uint8 aHostIpv4Addr [4];
4026 wpt_uint8 aHostIpv6Addr [16];
4027 } params;
4028} WDI_HostOffloadReqType;
4029
4030/*---------------------------------------------------------------------------
4031 WDI_HostOffloadReqParamsType
4032 host offload info passed to WDI form WDA
4033---------------------------------------------------------------------------*/
4034typedef struct
4035{
4036 /*Host offload Info Type, same as tHalHostOffloadReq */
4037 WDI_HostOffloadReqType wdiHostOffloadInfo;
4038#ifdef WLAN_NS_OFFLOAD
4039 WDI_NSOffloadParams wdiNsOffloadParams;
4040#endif //WLAN_NS_OFFLOAD
4041 /*Request status callback offered by UMAC - it is called if the current req
4042 has returned PENDING as status; it delivers the status of sending the message
4043 over the BUS */
4044 WDI_ReqStatusCb wdiReqStatusCB;
4045 /*The user data passed in by UMAC, it will be sent back when the above
4046 function pointer will be called */
4047 void* pUserData;
4048}WDI_HostOffloadReqParamsType;
4049
4050/*---------------------------------------------------------------------------
4051 WDI_KeepAliveReqType
4052 Keep Alive info passed to WDA form UMAC
4053---------------------------------------------------------------------------*/
4054typedef struct
4055{
4056 wpt_uint8 ucPacketType;
4057 wpt_uint32 ucTimePeriod;
4058 wpt_uint8 aHostIpv4Addr[4];
4059 wpt_uint8 aDestIpv4Addr[4];
4060 wpt_uint8 aDestMacAddr[6];
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07004061 wpt_macAddr bssId;
Jeff Johnson295189b2012-06-20 16:38:30 -07004062} WDI_KeepAliveReqType;
4063
4064/*---------------------------------------------------------------------------
4065 WDI_KeepAliveReqParamsType
4066 Keep Alive passed to WDI form WDA
4067---------------------------------------------------------------------------*/
4068typedef struct
4069{
4070 /* Keep Alive Info Type, same as tHalKeepAliveReq */
4071 WDI_KeepAliveReqType wdiKeepAliveInfo;
4072 /*Request status callback offered by UMAC - it is called if the current req
4073 has returned PENDING as status; it delivers the status of sending the message
4074 over the BUS */
4075 WDI_ReqStatusCb wdiReqStatusCB;
4076 /*The user data passed in by UMAC, it will be sent back when the above
4077 function pointer will be called */
4078 void* pUserData;
4079}WDI_KeepAliveReqParamsType;
4080
4081/*---------------------------------------------------------------------------
4082 WDI_WowlAddBcPtrnInfoType
4083 Wowl add ptrn info passed to WDA form UMAC
4084---------------------------------------------------------------------------*/
4085typedef struct
4086{
4087 wpt_uint8 ucPatternId; // Pattern ID
4088 // Pattern byte offset from beginning of the 802.11 packet to start of the
4089 // wake-up pattern
4090 wpt_uint8 ucPatternByteOffset;
4091 wpt_uint8 ucPatternSize; // Non-Zero Pattern size
4092 wpt_uint8 ucPattern[WDI_WOWL_BCAST_PATTERN_MAX_SIZE]; // Pattern
4093 wpt_uint8 ucPatternMaskSize; // Non-zero pattern mask size
4094 wpt_uint8 ucPatternMask[WDI_WOWL_BCAST_PATTERN_MAX_SIZE]; // Pattern mask
4095 wpt_uint8 ucPatternExt[WDI_WOWL_BCAST_PATTERN_MAX_SIZE]; // Extra pattern
4096 wpt_uint8 ucPatternMaskExt[WDI_WOWL_BCAST_PATTERN_MAX_SIZE]; // Extra pattern mask
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07004097 wpt_macAddr bssId;
Jeff Johnson295189b2012-06-20 16:38:30 -07004098} WDI_WowlAddBcPtrnInfoType;
4099
4100/*---------------------------------------------------------------------------
4101 WDI_WowlAddBcPtrnReqParamsType
4102 Wowl add ptrn info passed to WDI form WDA
4103---------------------------------------------------------------------------*/
4104typedef struct
4105{
4106 /*Wowl add ptrn Info Type, same as tpSirWowlAddBcastPtrn */
4107 WDI_WowlAddBcPtrnInfoType wdiWowlAddBcPtrnInfo;
4108 /*Request status callback offered by UMAC - it is called if the current req
4109 has returned PENDING as status; it delivers the status of sending the message
4110 over the BUS */
4111 WDI_ReqStatusCb wdiReqStatusCB;
4112 /*The user data passed in by UMAC, it will be sent back when the above
4113 function pointer will be called */
4114 void* pUserData;
4115}WDI_WowlAddBcPtrnReqParamsType;
4116
4117/*---------------------------------------------------------------------------
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07004118 WDI_WowlAddBcPtrnRspParamsType
4119 Wowl add ptrn info passed from WDI to WDA
4120---------------------------------------------------------------------------*/
4121typedef struct
4122{
4123 /*Status of the response*/
4124 WDI_Status wdiStatus;
4125 /*BssIDX of the session*/
4126 wpt_uint8 bssIdx;
4127}WDI_WowlAddBcPtrnRspParamsType;
4128
4129/*---------------------------------------------------------------------------
Jeff Johnson295189b2012-06-20 16:38:30 -07004130 WDI_WowlDelBcPtrnInfoType
4131 Wowl add ptrn info passed to WDA form UMAC
4132---------------------------------------------------------------------------*/
4133typedef struct
4134{
4135 /* Pattern ID of the wakeup pattern to be deleted */
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07004136 wpt_uint8 ucPatternId;
4137 wpt_macAddr bssId;
Jeff Johnson295189b2012-06-20 16:38:30 -07004138} WDI_WowlDelBcPtrnInfoType;
4139
4140/*---------------------------------------------------------------------------
4141 WDI_WowlDelBcPtrnReqParamsType
4142 Wowl add ptrn info passed to WDI form WDA
4143---------------------------------------------------------------------------*/
4144typedef struct
4145{
4146 /*Wowl delete ptrn Info Type, same as WDI_WowlDelBcastPtrn */
4147 WDI_WowlDelBcPtrnInfoType wdiWowlDelBcPtrnInfo;
4148 /*Request status callback offered by UMAC - it is called if the current req
4149 has returned PENDING as status; it delivers the status of sending the message
4150 over the BUS */
4151 WDI_ReqStatusCb wdiReqStatusCB;
4152 /*The user data passed in by UMAC, it will be sent back when the above
4153 function pointer will be called */
4154 void* pUserData;
4155}WDI_WowlDelBcPtrnReqParamsType;
4156
4157/*---------------------------------------------------------------------------
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07004158 WDI_WowlDelBcPtrnRspParamsType
4159 Wowl Del ptrn info passed from WDI to WDA
4160---------------------------------------------------------------------------*/
4161typedef struct
4162{
4163 /*Status of the response*/
4164 WDI_Status wdiStatus;
4165 /*BssIDX of the session*/
4166 wpt_uint8 bssIdx;
4167}WDI_WowlDelBcPtrnRspParamsType;
4168
4169/*---------------------------------------------------------------------------
Jeff Johnson295189b2012-06-20 16:38:30 -07004170 WDI_WowlEnterInfoType
4171 Wowl enter info passed to WDA form UMAC
4172---------------------------------------------------------------------------*/
4173typedef struct
4174{
4175 /* Enables/disables magic packet filtering */
4176 wpt_uint8 ucMagicPktEnable;
4177
4178 /* Magic pattern */
4179 wpt_macAddr magicPtrn;
4180
4181 /* Enables/disables packet pattern filtering in firmware.
4182 Enabling this flag enables broadcast pattern matching
4183 in Firmware. If unicast pattern matching is also desired,
4184 ucUcastPatternFilteringEnable flag must be set tot true
4185 as well
4186 */
4187 wpt_uint8 ucPatternFilteringEnable;
4188
4189 /* Enables/disables unicast packet pattern filtering.
4190 This flag specifies whether we want to do pattern match
4191 on unicast packets as well and not just broadcast packets.
4192 This flag has no effect if the ucPatternFilteringEnable
4193 (main controlling flag) is set to false
4194 */
4195 wpt_uint8 ucUcastPatternFilteringEnable;
4196
4197 /* This configuration is valid only when magicPktEnable=1.
4198 * It requests hardware to wake up when it receives the
4199 * Channel Switch Action Frame.
4200 */
4201 wpt_uint8 ucWowChnlSwitchRcv;
4202
4203 /* This configuration is valid only when magicPktEnable=1.
4204 * It requests hardware to wake up when it receives the
4205 * Deauthentication Frame.
4206 */
4207 wpt_uint8 ucWowDeauthRcv;
4208
4209 /* This configuration is valid only when magicPktEnable=1.
4210 * It requests hardware to wake up when it receives the
4211 * Disassociation Frame.
4212 */
4213 wpt_uint8 ucWowDisassocRcv;
4214
4215 /* This configuration is valid only when magicPktEnable=1.
4216 * It requests hardware to wake up when it has missed
4217 * consecutive beacons. This is a hardware register
4218 * configuration (NOT a firmware configuration).
4219 */
4220 wpt_uint8 ucWowMaxMissedBeacons;
4221
4222 /* This configuration is valid only when magicPktEnable=1.
4223 * This is a timeout value in units of microsec. It requests
4224 * hardware to unconditionally wake up after it has stayed
4225 * in WoWLAN mode for some time. Set 0 to disable this feature.
4226 */
4227 wpt_uint8 ucWowMaxSleepUsec;
4228
4229#ifdef WLAN_WAKEUP_EVENTS
4230 /* This configuration directs the WoW packet filtering to look for EAP-ID
4231 * requests embedded in EAPOL frames and use this as a wake source.
4232 */
4233 wpt_uint8 ucWoWEAPIDRequestEnable;
4234
4235 /* This configuration directs the WoW packet filtering to look for EAPOL-4WAY
4236 * requests and use this as a wake source.
4237 */
4238 wpt_uint8 ucWoWEAPOL4WayEnable;
4239
4240 /* This configuration allows a host wakeup on an network scan offload match.
4241 */
4242 wpt_uint8 ucWowNetScanOffloadMatch;
4243
4244 /* This configuration allows a host wakeup on any GTK rekeying error.
4245 */
4246 wpt_uint8 ucWowGTKRekeyError;
4247
4248 /* This configuration allows a host wakeup on BSS connection loss.
4249 */
4250 wpt_uint8 ucWoWBSSConnLoss;
4251#endif // WLAN_WAKEUP_EVENTS
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07004252
4253 /* BSSIDX used to find the current session
4254 */
4255 wpt_uint8 bssIdx;
Jeff Johnson295189b2012-06-20 16:38:30 -07004256} WDI_WowlEnterInfoType;
4257
4258/*---------------------------------------------------------------------------
4259 WDI_WowlEnterReqParamsType
4260 Wowl enter info passed to WDI form WDA
4261---------------------------------------------------------------------------*/
4262typedef struct
4263{
4264 /*Wowl delete ptrn Info Type, same as WDI_SmeWowlEnterParams */
4265 WDI_WowlEnterInfoType wdiWowlEnterInfo;
4266 /*Request status callback offered by UMAC - it is called if the current req
4267 has returned PENDING as status; it delivers the status of sending the message
4268 over the BUS */
4269 WDI_ReqStatusCb wdiReqStatusCB;
4270 /*The user data passed in by UMAC, it will be sent back when the above
4271 function pointer will be called */
4272 void* pUserData;
4273}WDI_WowlEnterReqParamsType;
4274
4275/*---------------------------------------------------------------------------
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07004276 WDI_WowlEnterRsqParamsType
4277 Wowl enter info passed from WDI to WDA
4278---------------------------------------------------------------------------*/
4279typedef struct
4280{
4281 /*Status of the response message*/
4282 WDI_Status status;
4283
4284 /* BSSIDX used to find the current session
4285 */
4286 wpt_uint8 bssIdx;
4287}WDI_WowlEnterRspParamsType;
4288
4289/*---------------------------------------------------------------------------
4290 WDI_WowlExitInfoType
4291 Wowl exit info passed to WDA form UMAC
4292 ---------------------------------------------------------------------------*/
4293typedef struct
4294{
4295 /* BSSIDX used to find the current session
4296 */
4297 wpt_uint8 bssIdx;
4298} WDI_WowlExitInfoType;
4299
4300/*---------------------------------------------------------------------------
4301 WDI_WowlExitReqParamsType
4302 Wowl exit info passed to WDI form WDA
4303---------------------------------------------------------------------------*/
4304typedef struct
4305{
4306 /*Wowl delete ptrn Info Type, same as WDI_SmeWowlEnterParams */
4307 WDI_WowlExitInfoType wdiWowlExitInfo;
4308 /*Request status callback offered by UMAC - it is called if the current req
4309 has returned PENDING as status; it delivers the status of sending the message
4310 over the BUS */
4311 WDI_ReqStatusCb wdiReqStatusCB;
4312 /*The user data passed in by UMAC, it will be sent back when the above
4313 function pointer will be called */
4314 void* pUserData;
4315}WDI_WowlExitReqParamsType;
4316
4317/*---------------------------------------------------------------------------
4318 WDI_WowlExitRspParamsType
4319 Wowl exit info passed from WDI to WDA
4320---------------------------------------------------------------------------*/
4321typedef struct
4322{
4323 /*Status of the response message*/
4324 WDI_Status status;
4325
4326 /* BSSIDX used to find the current session
4327 */
4328 wpt_uint8 bssIdx;
4329}WDI_WowlExitRspParamsType;
4330
4331/*---------------------------------------------------------------------------
Jeff Johnson295189b2012-06-20 16:38:30 -07004332 WDI_ConfigureAppsCpuWakeupStateReqParamsType
4333 Apps Cpu Wakeup State parameters passed to WDI form WDA
4334---------------------------------------------------------------------------*/
4335typedef struct
4336{
4337 /*Depicts the state of the Apps CPU */
4338 wpt_boolean bIsAppsAwake;
4339 /*Request status callback offered by UMAC - it is called if the current req
4340 has returned PENDING as status; it delivers the status of sending the message
4341 over the BUS */
4342 WDI_ReqStatusCb wdiReqStatusCB;
4343 /*The user data passed in by UMAC, it will be sent back when the above
4344 function pointer will be called */
4345 void* pUserData;
4346}WDI_ConfigureAppsCpuWakeupStateReqParamsType;
4347/*---------------------------------------------------------------------------
4348 WDI_FlushAcReqinfoType
4349---------------------------------------------------------------------------*/
4350typedef struct
4351{
4352 // Message Type
4353 wpt_uint16 usMesgType;
4354
4355 // Message Length
4356 wpt_uint16 usMesgLen;
4357
4358 // Station Index. originates from HAL
4359 wpt_uint8 ucSTAId;
4360
4361 // TID for which the transmit queue is being flushed
4362 wpt_uint8 ucTid;
4363
4364}WDI_FlushAcReqinfoType;
4365
4366/*---------------------------------------------------------------------------
4367 WDI_FlushAcReqParamsType
4368---------------------------------------------------------------------------*/
4369typedef struct
4370{
4371 /*AC Info */
4372 WDI_FlushAcReqinfoType wdiFlushAcInfo;
4373
4374 /*Request status callback offered by UMAC - it is called if the current
4375 req has returned PENDING as status; it delivers the status of sending
4376 the message over the BUS */
4377 WDI_ReqStatusCb wdiReqStatusCB;
4378
4379 /*The user data passed in by UMAC, it will be sent back when the above
4380 function pointer will be called */
4381 void* pUserData;
4382}WDI_FlushAcReqParamsType;
4383
4384/*---------------------------------------------------------------------------
4385 WDI_BtAmpEventinfoType
4386 BT-AMP Event Structure
4387---------------------------------------------------------------------------*/
4388typedef struct
4389{
4390 wpt_uint8 ucBtAmpEventType;
4391
4392} WDI_BtAmpEventinfoType;
4393
4394/*---------------------------------------------------------------------------
4395 WDI_BtAmpEventParamsType
4396---------------------------------------------------------------------------*/
4397typedef struct
4398{
4399 /*BT AMP event Info */
4400 WDI_BtAmpEventinfoType wdiBtAmpEventInfo;
4401
4402 /*Request status callback offered by UMAC - it is called if the current
4403 req has returned PENDING as status; it delivers the status of sending
4404 the message over the BUS */
4405 WDI_ReqStatusCb wdiReqStatusCB;
4406
4407 /*The user data passed in by UMAC, it will be sent back when the above
4408 function pointer will be called */
4409 void* pUserData;
4410}WDI_BtAmpEventParamsType;
4411
Jeff Johnsone7245742012-09-05 17:12:55 -07004412#ifdef FEATURE_OEM_DATA_SUPPORT
4413
4414#ifndef OEM_DATA_REQ_SIZE
Madan Mohan Koyyalamudi7a4d9312012-12-04 17:21:36 -08004415#define OEM_DATA_REQ_SIZE 134
Jeff Johnsone7245742012-09-05 17:12:55 -07004416#endif
4417#ifndef OEM_DATA_RSP_SIZE
Madan Mohan Koyyalamudi7a4d9312012-12-04 17:21:36 -08004418#define OEM_DATA_RSP_SIZE 1968
Jeff Johnsone7245742012-09-05 17:12:55 -07004419#endif
4420
4421/*----------------------------------------------------------------------------
4422 WDI_oemDataReqInfoType
4423----------------------------------------------------------------------------*/
4424typedef struct
4425{
4426 wpt_macAddr selfMacAddr;
4427 wpt_uint8 oemDataReq[OEM_DATA_REQ_SIZE];
4428}WDI_oemDataReqInfoType;
4429
4430/*----------------------------------------------------------------------------
4431 WDI_oemDataReqParamsType
4432----------------------------------------------------------------------------*/
4433typedef struct
4434{
4435 /*Request status callback offered by UMAC - it is called if the current
4436 req has returned PENDING as status; it delivers the status of sending
4437 the message over the BUS */
4438 WDI_ReqStatusCb wdiReqStatusCB;
4439
4440 /*The user data passed in by UMAC, it will be sent back when the above
4441 function pointer will be called */
4442 void* pUserData;
4443
4444 /*OEM DATA REQ Info */
4445 WDI_oemDataReqInfoType wdiOemDataReqInfo;
4446
4447}WDI_oemDataReqParamsType;
4448
4449/*----------------------------------------------------------------------------
4450 WDI_oemDataRspParamsType
4451----------------------------------------------------------------------------*/
4452typedef struct
4453{
4454 wpt_uint8 oemDataRsp[OEM_DATA_RSP_SIZE];
4455}WDI_oemDataRspParamsType;
4456
4457#endif /* FEATURE_OEM_DATA_SUPPORT */
Jeff Johnson295189b2012-06-20 16:38:30 -07004458
4459#ifdef WLAN_FEATURE_VOWIFI_11R
4460/*---------------------------------------------------------------------------
4461 WDI_AggrAddTSReqInfoType
4462---------------------------------------------------------------------------*/
4463typedef struct
4464{
4465 /*STA Index*/
4466 wpt_uint8 ucSTAIdx;
4467
4468 /*Identifier for TSpec*/
4469 wpt_uint8 ucTspecIdx;
4470
4471 /*Tspec IE negotiated OTA*/
4472 WDI_TspecIEType wdiTspecIE[WDI_MAX_NO_AC];
4473
4474 /*UAPSD delivery and trigger enabled flags */
4475 wpt_uint8 ucUapsdFlags;
4476
4477 /*SI for each AC*/
4478 wpt_uint8 ucServiceInterval[WDI_MAX_NO_AC];
4479
4480 /*Suspend Interval for each AC*/
4481 wpt_uint8 ucSuspendInterval[WDI_MAX_NO_AC];
4482
4483 /*DI for each AC*/
4484 wpt_uint8 ucDelayedInterval[WDI_MAX_NO_AC];
4485
4486}WDI_AggrAddTSReqInfoType;
4487
4488
4489/*---------------------------------------------------------------------------
4490 WDI_AggrAddTSReqParamsType
4491---------------------------------------------------------------------------*/
4492typedef struct
4493{
4494 /*TSpec Info */
4495 WDI_AggrAddTSReqInfoType wdiAggrTsInfo;
4496
4497 /*Request status callback offered by UMAC - it is called if the current
4498 req has returned PENDING as status; it delivers the status of sending
4499 the message over the BUS */
4500 WDI_ReqStatusCb wdiReqStatusCB;
4501
4502 /*The user data passed in by UMAC, it will be sent back when the above
4503 function pointer will be called */
4504 void* pUserData;
4505}WDI_AggrAddTSReqParamsType;
4506
4507#endif /* WLAN_FEATURE_VOWIFI_11R */
4508
Jeff Johnson295189b2012-06-20 16:38:30 -07004509/*---------------------------------------------------------------------------
4510 WDI_FTMCommandReqType
4511---------------------------------------------------------------------------*/
4512typedef struct
4513{
4514 /* FTM Command Body length */
4515 wpt_uint32 bodyLength;
4516 /* Actual FTM Command body */
4517 void *FTMCommandBody;
4518}WDI_FTMCommandReqType;
Jeff Johnson295189b2012-06-20 16:38:30 -07004519
4520/*---------------------------------------------------------------------------
4521 WDI_WlanSuspendInfoType
4522---------------------------------------------------------------------------*/
4523typedef struct
4524{
4525 /* Mode of Mcast and Bcast filters configured */
4526 wpt_uint8 ucConfiguredMcstBcstFilterSetting;
4527}WDI_WlanSuspendInfoType;
4528
4529/*---------------------------------------------------------------------------
4530 WDI_SuspendParamsType
4531---------------------------------------------------------------------------*/
4532typedef struct
4533{
4534 WDI_WlanSuspendInfoType wdiSuspendParams;
4535
4536 /*Request status callback offered by UMAC - it is called if the current
4537 req has returned PENDING as status; it delivers the status of sending
4538 the message over the BUS */
4539 WDI_ReqStatusCb wdiReqStatusCB;
4540
4541 /*The user data passed in by UMAC, it will be sent back when the above
4542 function pointer will be called */
4543 void* pUserData;
4544
4545}WDI_SuspendParamsType;
4546
4547/*---------------------------------------------------------------------------
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08004548 WDI_TrafficStatsType - This is collected for each STA
4549---------------------------------------------------------------------------*/
4550
4551typedef struct
4552{
4553 /* TX stats */
4554 wpt_uint32 txBytesPushed;
4555 wpt_uint32 txPacketsPushed;
4556
4557 /* RX stats */
4558 wpt_uint32 rxBytesRcvd;
4559 wpt_uint32 rxPacketsRcvd;
4560 wpt_uint32 rxTimeTotal;
4561}WDI_TrafficStatsType;
4562
4563typedef struct
4564{
4565 WDI_TrafficStatsType *pTrafficStats;
4566 wpt_uint32 length;
4567 wpt_uint32 duration;
4568
4569 /*Request status callback offered by UMAC - it is called if the current
4570 req has returned PENDING as status; it delivers the status of sending
4571 the message over the BUS */
4572 WDI_ReqStatusCb wdiReqStatusCB;
4573
4574 /*The user data passed in by UMAC, it will be sent back when the above
4575 function pointer will be called */
4576 void* pUserData;
4577}WDI_TrafficStatsIndType;
4578
Chet Lanctot186b5732013-03-18 10:26:30 -07004579#ifdef WLAN_FEATURE_11W
4580typedef struct
4581{
4582
4583 wpt_boolean bExcludeUnencrypt;
4584 wpt_macAddr bssid;
4585 /*Request status callback offered by UMAC - it is called if the current
4586 req has returned PENDING as status; it delivers the status of sending
4587 the message over the BUS */
4588 WDI_ReqStatusCb wdiReqStatusCB;
4589
4590 /*The user data passed in by UMAC, it will be sent back when the above
4591 function pointer will be called */
4592 void* pUserData;
4593}WDI_ExcludeUnencryptIndType;
4594#endif
4595
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08004596/*---------------------------------------------------------------------------
Jeff Johnson295189b2012-06-20 16:38:30 -07004597 WDI_WlanResumeInfoType
4598---------------------------------------------------------------------------*/
4599typedef struct
4600{
4601 /* Mode of Mcast and Bcast filters configured */
4602 wpt_uint8 ucConfiguredMcstBcstFilterSetting;
4603}WDI_WlanResumeInfoType;
4604
4605/*---------------------------------------------------------------------------
4606 WDI_ResumeParamsType
4607---------------------------------------------------------------------------*/
4608typedef struct
4609{
4610 WDI_WlanResumeInfoType wdiResumeParams;
4611
4612 /*Request status callback offered by UMAC - it is called if the current
4613 req has returned PENDING as status; it delivers the status of sending
4614 the message over the BUS */
4615 WDI_ReqStatusCb wdiReqStatusCB;
4616
4617 /*The user data passed in by UMAC, it will be sent back when the above
4618 function pointer will be called */
4619 void* pUserData;
4620
4621}WDI_ResumeParamsType;
4622
4623#ifdef WLAN_FEATURE_GTK_OFFLOAD
4624/*---------------------------------------------------------------------------
4625 * WDI_GTK_OFFLOAD_REQ
4626 *--------------------------------------------------------------------------*/
4627
4628typedef struct
4629{
4630 wpt_uint32 ulFlags; /* optional flags */
4631 wpt_uint8 aKCK[16]; /* Key confirmation key */
4632 wpt_uint8 aKEK[16]; /* key encryption key */
4633 wpt_uint64 ullKeyReplayCounter; /* replay counter */
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07004634 wpt_macAddr bssId;
Jeff Johnson295189b2012-06-20 16:38:30 -07004635} WDI_GtkOffloadReqParams;
4636
4637typedef struct
4638{
4639 WDI_GtkOffloadReqParams gtkOffloadReqParams;
4640
4641 /*Request status callback offered by UMAC - it is called if the current
4642 req has returned PENDING as status; it delivers the status of sending
4643 the message over the BUS */
4644 WDI_ReqStatusCb wdiReqStatusCB;
4645
4646 /*The user data passed in by UMAC, it will be sent back when the above
4647 function pointer will be called */
4648 void* pUserData;
4649} WDI_GtkOffloadReqMsg;
4650
4651/*---------------------------------------------------------------------------
4652 * WDI_GTK_OFFLOAD_RSP
4653 *--------------------------------------------------------------------------*/
4654typedef struct
4655{
4656 /* success or failure */
4657 wpt_uint32 ulStatus;
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07004658 /*BssIdx of the response */
4659 wpt_uint8 bssIdx;
Jeff Johnson295189b2012-06-20 16:38:30 -07004660} WDI_GtkOffloadRspParams;
4661
4662typedef struct
4663{
4664 WDI_GtkOffloadRspParams gtkOffloadRspParams;
4665
4666 /*Request status callback offered by UMAC - it is called if the current
4667 req has returned PENDING as status; it delivers the status of sending
4668 the message over the BUS */
4669 WDI_ReqStatusCb wdiReqStatusCB;
4670
4671 /*The user data passed in by UMAC, it will be sent back when the above
4672 function pointer will be called */
4673 void* pUserData;
4674} WDI_GtkOffloadRspMsg;
4675
4676
4677/*---------------------------------------------------------------------------
4678* WDI_GTK_OFFLOAD_GETINFO_REQ
4679*--------------------------------------------------------------------------*/
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07004680typedef struct
4681{
4682 /*BssIdx of the response */
4683 wpt_macAddr bssId;
4684} WDI_GtkOffloadGetInfoReqParams;
Jeff Johnson295189b2012-06-20 16:38:30 -07004685
4686typedef struct
4687{
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07004688
4689 WDI_GtkOffloadGetInfoReqParams WDI_GtkOffloadGetInfoReqParams;
Jeff Johnson295189b2012-06-20 16:38:30 -07004690 /*Request status callback offered by UMAC - it is called if the current
4691 req has returned PENDING as status; it delivers the status of sending
4692 the message over the BUS */
4693 WDI_ReqStatusCb wdiReqStatusCB;
4694
4695 /*The user data passed in by UMAC, it will be sent back when the above
4696 function pointer will be called */
4697 void* pUserData;
4698} WDI_GtkOffloadGetInfoReqMsg;
4699
4700/*---------------------------------------------------------------------------
4701* WDI_GTK_OFFLOAD_GETINFO_RSP
4702*--------------------------------------------------------------------------*/
4703typedef struct
4704{
4705 wpt_uint32 ulStatus; /* success or failure */
4706 wpt_uint64 ullKeyReplayCounter; /* current replay counter value */
4707 wpt_uint32 ulTotalRekeyCount; /* total rekey attempts */
4708 wpt_uint32 ulGTKRekeyCount; /* successful GTK rekeys */
4709 wpt_uint32 ulIGTKRekeyCount; /* successful iGTK rekeys */
Gopichand Nakkala870cbae2013-03-15 21:16:09 +05304710 wpt_macAddr bssId;
Jeff Johnson295189b2012-06-20 16:38:30 -07004711} WDI_GtkOffloadGetInfoRspParams;
4712
4713typedef struct
4714{
4715 WDI_GtkOffloadGetInfoRspParams gtkOffloadGetInfoRspParams;
4716
4717 /*Request status callback offered by UMAC - it is called if the current
4718 req has returned PENDING as status; it delivers the status of sending
4719 the message over the BUS */
4720 WDI_ReqStatusCb wdiReqStatusCB;
4721
4722 /*The user data passed in by UMAC, it will be sent back when the above
4723 function pointer will be called */
4724 void* pUserData;
4725} WDI_GtkOffloadGetInfoRspMsg;
4726#endif // WLAN_FEATURE_GTK_OFFLOAD
4727
4728/*---------------------------------------------------------------------------
4729 WDI_SuspendResumeRspParamsType
4730---------------------------------------------------------------------------*/
4731typedef struct
4732{
4733 /*Status of the response*/
4734 WDI_Status wdiStatus;
4735}WDI_SuspendResumeRspParamsType;
4736
Leo Chang9056f462013-08-01 19:21:11 -07004737#ifdef FEATURE_WLAN_LPHB
4738/*---------------------------------------------------------------------------
4739 WDI Low Power Heart Beat Config request
4740 Copy from sirApi.h to avoid compile error
4741---------------------------------------------------------------------------*/
4742#define WDI_LPHB_FILTER_LEN 64
4743
4744typedef enum
4745{
4746 WDI_LPHB_SET_EN_PARAMS_INDID = 0x0001,
4747 WDI_LPHB_SET_TCP_PARAMS_INDID,
4748 WDI_LPHB_SET_TCP_PKT_FILTER_INDID,
4749 WDI_LPHB_SET_UDP_PARAMS_INDID,
4750 WDI_LPHB_SET_UDP_PKT_FILTER_INDID,
4751 WDI_LPHB_SET_NETWORK_INFO_INDID,
4752} WDI_LPHBIndType;
4753
4754typedef struct
4755{
4756 wpt_uint8 enable;
4757 wpt_uint8 item;
4758 wpt_uint8 session;
4759} WDI_LPHBEnableStruct;
4760
4761typedef struct
4762{
4763 wpt_uint32 srv_ip;
4764 wpt_uint32 dev_ip;
4765 wpt_uint16 src_port;
4766 wpt_uint16 dst_port;
4767 wpt_uint16 timeout;
4768 wpt_uint8 session;
4769 wpt_uint8 gateway_mac[WDI_MAC_ADDR_LEN];
Leo Changd9df8aa2013-09-26 13:32:26 -07004770 wpt_uint16 timePeriodSec; // in seconds
4771 wpt_uint32 tcpSn;
Leo Chang9056f462013-08-01 19:21:11 -07004772} WDI_LPHBTcpParamStruct;
4773
4774typedef struct
4775{
4776 wpt_uint16 length;
4777 wpt_uint8 offset;
4778 wpt_uint8 session;
4779 wpt_uint8 filter[WDI_LPHB_FILTER_LEN];
4780} WDI_LPHBTcpFilterStruct;
4781
4782typedef struct
4783{
4784 wpt_uint32 srv_ip;
4785 wpt_uint32 dev_ip;
4786 wpt_uint16 src_port;
4787 wpt_uint16 dst_port;
4788 wpt_uint16 interval;
4789 wpt_uint16 timeout;
4790 wpt_uint8 session;
4791 wpt_uint8 gateway_mac[WDI_MAC_ADDR_LEN];
4792} WDI_LPHBUdpParamStruct;
4793
4794typedef struct
4795{
4796 wpt_uint16 length;
4797 wpt_uint8 offset;
4798 wpt_uint8 session;
4799 wpt_uint8 filter[WDI_LPHB_FILTER_LEN];
4800} WDI_LPHBUdpFilterStruct;
4801
4802typedef struct
4803{
4804 wpt_uint16 cmd;
4805 wpt_uint16 dummy;
4806 union
4807 {
4808 WDI_LPHBEnableStruct lphbEnableReq;
4809 WDI_LPHBTcpParamStruct lphbTcpParamReq;
4810 WDI_LPHBTcpFilterStruct lphbTcpFilterReq;
4811 WDI_LPHBUdpParamStruct lphbUdpParamReq;
4812 WDI_LPHBUdpFilterStruct lphbUdpFilterReq;
4813 } params;
4814} WDI_LPHBReq;
4815#endif /* FEATURE_WLAN_LPHB */
Jeff Johnson295189b2012-06-20 16:38:30 -07004816
Jeff Johnson295189b2012-06-20 16:38:30 -07004817/*---------------------------------------------------------------------------
4818 WDI_AuthType
4819---------------------------------------------------------------------------*/
4820typedef enum
4821{
4822 WDI_AUTH_TYPE_ANY = 0,
4823
4824 WDI_AUTH_TYPE_NONE,
4825 WDI_AUTH_TYPE_OPEN_SYSTEM,
4826 WDI_AUTH_TYPE_SHARED_KEY,
4827
4828 WDI_AUTH_TYPE_WPA,
4829 WDI_AUTH_TYPE_WPA_PSK,
4830 WDI_AUTH_TYPE_WPA_NONE,
4831
4832 WDI_AUTH_TYPE_RSN,
4833 WDI_AUTH_TYPE_RSN_PSK,
4834 WDI_AUTH_TYPE_FT_RSN,
4835 WDI_AUTH_TYPE_FT_RSN_PSK,
4836 WDI_AUTH_TYPE_WAPI_WAI_CERTIFICATE,
4837 WDI_AUTH_TYPE_WAPI_WAI_PSK,
4838 WDI_AUTH_TYPE_MAX = 0xFFFFFFFF /*expanding the type to UINT32*/
4839
4840}WDI_AuthType;
4841
4842/*---------------------------------------------------------------------------
4843 WDI_EdType
4844---------------------------------------------------------------------------*/
4845typedef enum
4846{
4847 WDI_ED_ANY = 0,
4848 WDI_ED_NONE,
4849 WDI_ED_WEP40,
4850 WDI_ED_WEP104,
4851 WDI_ED_TKIP,
4852 WDI_ED_CCMP,
4853 WDI_ED_WPI,
4854 WDI_ED_AES_128_CMAC,
4855 WDI_ED_MAX = 0xFFFFFFFF /*expanding the type to UINT32*/
4856} WDI_EdType;
4857
Manjunathappa Prakash4f1d5a52013-11-11 16:22:19 -08004858#ifdef FEATURE_WLAN_SCAN_PNO
4859
4860/*Max number of channels for a given network supported by PNO*/
4861#define WDI_PNO_MAX_NETW_CHANNELS 26
4862
4863/*Max number of channels for a given network supported by PNO*/
4864#define WDI_PNO_MAX_NETW_CHANNELS_EX 60
4865
4866/*The max number of programable networks for PNO*/
4867#define WDI_PNO_MAX_SUPP_NETWORKS 16
4868
4869/*The max number of scan timers programable in Riva*/
4870#define WDI_PNO_MAX_SCAN_TIMERS 10
4871
4872#define WDI_PNO_MAX_PROBE_SIZE 450
Jeff Johnson295189b2012-06-20 16:38:30 -07004873
4874/*---------------------------------------------------------------------------
4875 WDI_PNOMode
4876---------------------------------------------------------------------------*/
4877typedef enum
4878{
4879 /*Network offload is to start immediately*/
4880 WDI_PNO_MODE_IMMEDIATE,
4881
4882 /*Network offload is to start on host suspend*/
4883 WDI_PNO_MODE_ON_SUSPEND,
4884
4885 /*Network offload is to start on host resume*/
4886 WDI_PNO_MODE_ON_RESUME,
4887 WDI_PNO_MODE_MAX = 0xFFFFFFFF
4888} WDI_PNOMode;
4889
4890/* SSID broadcast type */
4891typedef enum
4892{
4893 WDI_BCAST_UNKNOWN = 0,
4894 WDI_BCAST_NORMAL = 1,
4895 WDI_BCAST_HIDDEN = 2,
4896
4897 WDI_BCAST_TYPE_MAX = 0xFFFFFFFF
4898} WDI_SSIDBcastType;
4899
4900/*---------------------------------------------------------------------------
4901 WDI_NetworkType
4902---------------------------------------------------------------------------*/
4903typedef struct
4904{
4905 /*The SSID of the preferred network*/
4906 WDI_MacSSid ssId;
4907
4908 /*The authentication method of the preferred network*/
4909 WDI_AuthType wdiAuth;
4910
4911 /*The encryption method of the preferred network*/
4912 WDI_EdType wdiEncryption;
4913
4914 /*SSID broadcast type, normal, hidden or unknown*/
4915 WDI_SSIDBcastType wdiBcastNetworkType;
4916
4917 /*channel count - 0 for all channels*/
4918 wpt_uint8 ucChannelCount;
4919
4920 /*the actual channels*/
Madan Mohan Koyyalamudi4bb5d2e2013-09-26 17:36:46 +05304921 wpt_uint8 aChannels[WDI_PNO_MAX_NETW_CHANNELS_EX];
Jeff Johnson295189b2012-06-20 16:38:30 -07004922
4923 /*rssi threshold that a network must meet to be considered, 0 - for any*/
4924 wpt_uint8 rssiThreshold;
4925} WDI_NetworkType;
4926
4927
4928/*---------------------------------------------------------------------------
4929 WDI_ScanTimer
4930---------------------------------------------------------------------------*/
4931typedef struct
4932{
4933 /*The timer value*/
4934 wpt_uint32 uTimerValue;
4935
4936 /*The amount of time we should be repeating the interval*/
4937 wpt_uint32 uTimerRepeat;
4938} WDI_ScanTimer;
4939
4940/*---------------------------------------------------------------------------
4941 WDI_ScanTimersType
4942---------------------------------------------------------------------------*/
4943typedef struct
4944{
4945 /*The number of value pair intervals present in the array*/
4946 wpt_uint8 ucScanTimersCount;
4947
4948 /*The time-repeat value pairs*/
4949 WDI_ScanTimer aTimerValues[WDI_PNO_MAX_SCAN_TIMERS];
4950} WDI_ScanTimersType;
4951
4952/*---------------------------------------------------------------------------
4953 WDI_PNOScanReqType
4954---------------------------------------------------------------------------*/
4955typedef struct
4956{
4957 /*Enable or disable PNO feature*/
4958 wpt_uint8 bEnable;
4959
4960 /*PNO mode requested*/
4961 WDI_PNOMode wdiModePNO;
4962
4963 /*Network count*/
4964 wpt_uint8 ucNetworksCount;
4965
4966 /*The networks to look for*/
4967 WDI_NetworkType aNetworks[WDI_PNO_MAX_SUPP_NETWORKS];
4968
4969 /*Scan timer intervals*/
4970 WDI_ScanTimersType scanTimers;
4971
4972 /*Probe template for 2.4GHz band*/
4973 wpt_uint16 us24GProbeSize;
4974 wpt_uint8 a24GProbeTemplate[WDI_PNO_MAX_PROBE_SIZE];
4975
4976 /*Probe template for 5GHz band*/
4977 wpt_uint16 us5GProbeSize;
4978 wpt_uint8 a5GProbeTemplate[WDI_PNO_MAX_PROBE_SIZE];
4979} WDI_PNOScanReqType;
4980
4981/*---------------------------------------------------------------------------
4982 WDI_PNOScanReqParamsType
4983 PNO info passed to WDI form WDA
4984---------------------------------------------------------------------------*/
4985typedef struct
4986{
4987 /* PNO Info Type, same as tPrefNetwListParams */
4988 WDI_PNOScanReqType wdiPNOScanInfo;
4989 /* Request status callback offered by UMAC - it is called if the current req
4990 has returned PENDING as status; it delivers the status of sending the message
4991 over the BUS */
4992 WDI_ReqStatusCb wdiReqStatusCB;
4993 /* The user data passed in by UMAC, it will be sent back when the above
4994 function pointer will be called */
4995 void* pUserData;
4996} WDI_PNOScanReqParamsType;
4997
Manjunathappa Prakash4f1d5a52013-11-11 16:22:19 -08004998/*---------------------------------------------------------------------------
4999 WDI_SetRssiFilterReqParamsType
5000 PNO info passed to WDI form WDA
5001---------------------------------------------------------------------------*/
5002typedef struct
5003{
5004 /* RSSI Threshold */
5005 wpt_uint8 rssiThreshold;
5006 /* Request status callback offered by UMAC - it is called if the current req
5007 has returned PENDING as status; it delivers the status of sending the message
5008 over the BUS */
5009 WDI_ReqStatusCb wdiReqStatusCB;
5010 /* The user data passed in by UMAC, it will be sent back when the above
5011 function pointer will be called */
5012 void* pUserData;
5013} WDI_SetRssiFilterReqParamsType;
5014
5015/*---------------------------------------------------------------------------
5016 WDI_UpdateScanParamsInfo
5017---------------------------------------------------------------------------*/
5018typedef struct
5019{
5020 /*Is 11d enabled*/
5021 wpt_uint8 b11dEnabled;
5022
5023 /*Was UMAc able to find the regulatory domain*/
5024 wpt_uint8 b11dResolved;
5025
5026 /*Number of channel allowed in the regulatory domain*/
5027 wpt_uint8 ucChannelCount;
5028
5029 /*The actual channels allowed in the regulatory domain*/
5030 wpt_uint8 aChannels[WDI_PNO_MAX_NETW_CHANNELS_EX];
5031
5032 /*Passive min channel time*/
5033 wpt_uint16 usPassiveMinChTime;
5034
5035 /*Passive max channel time*/
5036 wpt_uint16 usPassiveMaxChTime;
5037
5038 /*Active min channel time*/
5039 wpt_uint16 usActiveMinChTime;
5040
5041 /*Active max channel time*/
5042 wpt_uint16 usActiveMaxChTime;
5043
5044 /*channel bonding info*/
5045 wpt_uint8 cbState;
5046} WDI_UpdateScanParamsInfo;
5047
5048/*---------------------------------------------------------------------------
5049 WDI_UpdateScanParamsInfoType
5050 UpdateScanParams info passed to WDI form WDA
5051---------------------------------------------------------------------------*/
5052typedef struct
5053{
5054 /* PNO Info Type, same as tUpdateScanParams */
5055 WDI_UpdateScanParamsInfo wdiUpdateScanParamsInfo;
5056 /* Request status callback offered by UMAC - it is called if the current req
5057 has returned PENDING as status; it delivers the status of sending the message
5058 over the BUS */
5059 WDI_ReqStatusCb wdiReqStatusCB;
5060 /* The user data passed in by UMAC, it will be sent back when the above
5061 function pointer will be called */
5062 void* pUserData;
5063} WDI_UpdateScanParamsInfoType;
5064#endif //FEATURE_WLAN_SCAN_PNO
5065
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07005066#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
5067
Varun Reddy Yeturu52231ea2014-02-06 12:00:56 -08005068#define WDI_ROAM_SCAN_MAX_CHANNELS 80
Manjunathappa Prakash4f1d5a52013-11-11 16:22:19 -08005069#define WDI_ROAM_SCAN_MAX_PROBE_SIZE 450
Manjunathappa Prakash4f1d5a52013-11-11 16:22:19 -08005070
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07005071typedef struct
5072{
5073 /*The SSID of the preferred network*/
5074 WDI_MacSSid ssId;
5075 wpt_uint8 currAPbssid[WDI_MAC_ADDR_LEN];
5076
5077 /*The authentication method of the preferred network*/
5078 WDI_AuthType authentication;
5079
5080 /*The encryption method of the preferred network*/
5081 WDI_EdType encryption;
5082 WDI_EdType mcencryption;
5083
5084 /*SSID broadcast type, normal, hidden or unknown*/
5085 //WDI_SSIDBcastType wdiBcastNetworkType;
5086
5087 /*channel count - 0 for all channels*/
5088 wpt_uint8 ChannelCount;
5089
5090 /*the actual channels*/
5091 wpt_uint8 ChannelCache[WDI_ROAM_SCAN_MAX_CHANNELS];
5092
5093} WDI_RoamNetworkType;
5094
5095typedef struct WDIMobilityDomainInfo
5096{
5097 wpt_uint8 mdiePresent;
5098 wpt_uint16 mobilityDomain;
5099} WDI_MobilityDomainInfo;
5100
5101/*---------------------------------------------------------------------------
5102 WDI_RoamOffloadScanInfo
5103---------------------------------------------------------------------------*/
5104typedef struct
5105{
5106 wpt_boolean RoamScanOffloadEnabled;
Sameer Thalappil4ae66ec2013-11-05 14:17:35 -08005107 wpt_boolean MAWCEnabled;
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07005108 wpt_uint8 LookupThreshold;
Varun Reddy Yeturu6c5e25c2014-01-09 21:55:37 -08005109 wpt_uint8 RxSensitivityThreshold;
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07005110 wpt_uint8 RoamRssiDiff;
5111 wpt_uint8 ChannelCacheType;
5112 wpt_uint8 Command;
5113 wpt_uint8 StartScanReason;
5114 wpt_uint16 NeighborScanTimerPeriod;
5115 wpt_uint16 NeighborRoamScanRefreshPeriod;
5116 wpt_uint16 NeighborScanChannelMinTime;
5117 wpt_uint16 NeighborScanChannelMaxTime;
5118 wpt_uint16 EmptyRefreshScanPeriod;
5119 wpt_uint8 ValidChannelCount;
5120 wpt_uint8 ValidChannelList[WDI_ROAM_SCAN_MAX_CHANNELS];
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08005121 wpt_boolean IsESEEnabled;
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07005122 /*Probe template for 2.4GHz band*/
5123 wpt_uint16 us24GProbeSize;
5124 wpt_uint8 a24GProbeTemplate[WDI_ROAM_SCAN_MAX_PROBE_SIZE];
5125
5126 /*Probe template for 5GHz band*/
5127 wpt_uint16 us5GProbeSize;
5128 wpt_uint8 a5GProbeTemplate[WDI_ROAM_SCAN_MAX_PROBE_SIZE];
Varun Reddy Yeturu920df212013-05-22 08:07:23 -07005129 /*LFR BG Scan will currently look for only one network to which it is initially connected.
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07005130 * As per requirement, later, the following structure can be used as an array of networks.*/
5131 WDI_RoamNetworkType ConnectedNetwork;
5132 WDI_MobilityDomainInfo MDID;
Varun Reddy Yeturu920df212013-05-22 08:07:23 -07005133 wpt_uint8 nProbes;
5134 wpt_uint16 HomeAwayTime;
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07005135} WDI_RoamOffloadScanInfo;
5136
5137typedef struct
5138{
5139 /* Start Roam Candidate Lookup Offload Back Ground Info Type */
5140 WDI_RoamOffloadScanInfo wdiRoamOffloadScanInfo;
5141 /* Request status callback offered by UMAC - it is called if the current req
5142 has returned PENDING as status; it delivers the status of sending the message
5143 over the BUS */
5144 WDI_ReqStatusCb wdiReqStatusCB;
5145 /* The user data passed in by UMAC, it will be sent back when the above
5146 function pointer will be called */
5147 void* pUserData;
Varun Reddy Yeturu920df212013-05-22 08:07:23 -07005148} WDI_RoamScanOffloadReqParamsType;
Manjunathappa Prakash4f1d5a52013-11-11 16:22:19 -08005149#endif //WLAN_FEATURE_ROAM_SCAN_OFFLOAD
Jeff Johnson295189b2012-06-20 16:38:30 -07005150
5151/*---------------------------------------------------------------------------
Sandeep Puligilla8b8b74b2014-02-10 16:39:05 +05305152 WDI_HT40ObssScanIndType
5153---------------------------------------------------------------------------*/
5154typedef struct
5155{
5156 wpt_uint8 cmdType;
5157 wpt_uint8 scanType;
5158 wpt_uint16 OBSSScanPassiveDwellTime; // In TUs
5159 wpt_uint16 OBSSScanActiveDwellTime; // In TUs
5160 wpt_uint16 BSSChannelWidthTriggerScanInterval; // In seconds
5161 wpt_uint16 OBSSScanPassiveTotalPerChannel; // In TUs
5162 wpt_uint16 OBSSScanActiveTotalPerChannel; // In TUs
5163 wpt_uint16 BSSWidthChannelTransitionDelayFactor;
5164 wpt_uint16 OBSSScanActivityThreshold;
5165 wpt_uint8 selfStaIdx;
5166 wpt_uint8 bssIdx;
5167 wpt_uint8 fortyMHZIntolerent;
5168 wpt_uint8 channelCount;
5169 wpt_uint8 channels[WDI_ROAM_SCAN_MAX_CHANNELS];
5170 wpt_uint8 currentOperatingClass;
5171 wpt_uint16 ieFieldLen;
5172 wpt_uint8 ieField[WDI_ROAM_SCAN_MAX_PROBE_SIZE];
5173} WDI_HT40ObssScanIndType;
5174
5175
5176/*---------------------------------------------------------------------------
5177 WDI_OBSSScanIndParamsType
5178---------------------------------------------------------------------------*/
5179typedef struct
5180{
5181 WDI_HT40ObssScanIndType wdiHT40ObssScanParam;
5182
5183 /*Request status callback offered by UMAC - it is called if the current
5184 req has returned PENDING as status; it delivers the status of sending
5185 the message over the BUS */
5186 WDI_ReqStatusCb wdiReqStatusCB;
5187
5188 /*The user data passed in by UMAC, it will be sent back when the above
5189 function pointer will be called */
5190 void* pUserData;
5191
5192}WDI_HT40ObssScanParamsType;
5193
5194/*---------------------------------------------------------------------------
Jeff Johnson295189b2012-06-20 16:38:30 -07005195 WDI_UpdateScanParamsInfo
5196---------------------------------------------------------------------------*/
5197typedef struct
5198{
5199 /* Ignore DTIM */
5200 wpt_uint32 uIgnoreDTIM;
5201
5202 /*DTIM Period*/
5203 wpt_uint32 uDTIMPeriod;
5204
5205 /* Listen Interval */
5206 wpt_uint32 uListenInterval;
5207
5208 /* Broadcast Multicas Filter */
5209 wpt_uint32 uBcastMcastFilter;
5210
5211 /* Beacon Early Termination */
5212 wpt_uint32 uEnableBET;
5213
5214 /* Beacon Early Termination Interval */
5215 wpt_uint32 uBETInterval;
5216
Yue Mac24062f2013-05-13 17:01:29 -07005217 /* MAX LI for modulated DTIM */
5218 wpt_uint32 uMaxLIModulatedDTIM;
5219
Jeff Johnson295189b2012-06-20 16:38:30 -07005220} WDI_SetPowerParamsInfo;
5221
5222/*---------------------------------------------------------------------------
5223 WDI_UpdateScanParamsInfoType
5224 UpdateScanParams info passed to WDI form WDA
5225---------------------------------------------------------------------------*/
5226typedef struct
5227{
5228 /* Power params Info Type, same as tSetPowerParamsReq */
5229 WDI_SetPowerParamsInfo wdiSetPowerParamsInfo;
5230 /* Request status callback offered by UMAC - it is called if the current req
5231 has returned PENDING as status; it delivers the status of sending the message
5232 over the BUS */
5233 WDI_ReqStatusCb wdiReqStatusCB;
5234 /* The user data passed in by UMAC, it will be sent back when the above
5235 function pointer will be called */
5236 void* pUserData;
5237}WDI_SetPowerParamsReqParamsType;
5238
5239/*---------------------------------------------------------------------------
5240 WDI_SetTxPerTrackingConfType
5241 Wowl add ptrn info passed to WDA form UMAC
5242---------------------------------------------------------------------------*/
5243typedef struct
5244{
5245 wpt_uint8 ucTxPerTrackingEnable; /* 0: disable, 1:enable */
5246 wpt_uint8 ucTxPerTrackingPeriod; /* Check period, unit is sec. */
5247 wpt_uint8 ucTxPerTrackingRatio; /* (Fail TX packet)/(Total TX packet) ratio, the unit is 10%. */
5248 wpt_uint32 uTxPerTrackingWatermark; /* A watermark of check number, once the tx packet exceed this number, we do the check, default is 5 */
5249} WDI_TxPerTrackingParamType;
5250
5251/*---------------------------------------------------------------------------
5252 WDI_SetTxPerTrackingReqParamsType
5253 Tx PER Tracking parameters passed to WDI from WDA
5254---------------------------------------------------------------------------*/
5255typedef struct
5256{
5257 /* Configurations for Tx PER Tracking */
5258 WDI_TxPerTrackingParamType wdiTxPerTrackingParam;
5259 /*Request status callback offered by UMAC - it is called if the current req
5260 has returned PENDING as status; it delivers the status of sending the message
5261 over the BUS */
5262 WDI_ReqStatusCb wdiReqStatusCB;
5263 /*The user data passed in by UMAC, it will be sent back when the above
5264 function pointer will be called */
5265 void* pUserData;
5266}WDI_SetTxPerTrackingReqParamsType;
5267
5268#ifdef WLAN_FEATURE_PACKET_FILTERING
5269/*---------------------------------------------------------------------------
5270 Packet Filtering Parameters
5271---------------------------------------------------------------------------*/
5272
5273#define WDI_IPV4_ADDR_LEN 4
5274#define WDI_MAC_ADDR_LEN 6
5275#define WDI_MAX_FILTER_TEST_DATA_LEN 8
5276#define WDI_MAX_NUM_MULTICAST_ADDRESS 240
5277#define WDI_MAX_NUM_FILTERS 20
5278#define WDI_MAX_NUM_TESTS_PER_FILTER 10
5279
5280//
5281// Receive Filter Parameters
5282//
5283typedef enum
5284{
5285 WDI_RCV_FILTER_TYPE_INVALID,
5286 WDI_RCV_FILTER_TYPE_FILTER_PKT,
5287 WDI_RCV_FILTER_TYPE_BUFFER_PKT,
5288 WDI_RCV_FILTER_TYPE_MAX_ENUM_SIZE
5289}WDI_ReceivePacketFilterType;
5290
5291typedef enum
5292{
5293 WDI_FILTER_HDR_TYPE_INVALID,
5294 WDI_FILTER_HDR_TYPE_MAC,
5295 WDI_FILTER_HDR_TYPE_ARP,
5296 WDI_FILTER_HDR_TYPE_IPV4,
5297 WDI_FILTER_HDR_TYPE_IPV6,
5298 WDI_FILTER_HDR_TYPE_UDP,
5299 WDI_FILTER_HDR_TYPE_MAX
5300}WDI_RcvPktFltProtocolType;
5301
5302typedef enum
5303{
5304 WDI_FILTER_CMP_TYPE_INVALID,
5305 WDI_FILTER_CMP_TYPE_EQUAL,
5306 WDI_FILTER_CMP_TYPE_MASK_EQUAL,
5307 WDI_FILTER_CMP_TYPE_NOT_EQUAL,
5308 WDI_FILTER_CMP_TYPE_MASK_NOT_EQUAL,
5309 WDI_FILTER_CMP_TYPE_MAX
5310}WDI_RcvPktFltCmpFlagType;
5311
5312typedef struct
5313{
5314 WDI_RcvPktFltProtocolType protocolLayer;
5315 WDI_RcvPktFltCmpFlagType cmpFlag;
5316/* Length of the data to compare */
5317 wpt_uint16 dataLength;
5318/* from start of the respective frame header */
5319 wpt_uint8 dataOffset;
5320 wpt_uint8 reserved; /* Reserved field */
5321/* Data to compare */
5322 wpt_uint8 compareData[WDI_MAX_FILTER_TEST_DATA_LEN];
5323/* Mask to be applied on the received packet data before compare */
5324 wpt_uint8 dataMask[WDI_MAX_FILTER_TEST_DATA_LEN];
5325}WDI_RcvPktFilterFieldParams;
5326
5327typedef struct
5328{
5329 wpt_uint8 filterId;
5330 wpt_uint8 filterType;
5331 wpt_uint32 numFieldParams;
5332 wpt_uint32 coalesceTime;
Jeff Johnsone7245742012-09-05 17:12:55 -07005333 wpt_macAddr selfMacAddr;
5334 wpt_macAddr bssId;
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07005335 WDI_RcvPktFilterFieldParams paramsData[1];
5336
Jeff Johnson295189b2012-06-20 16:38:30 -07005337}WDI_RcvPktFilterCfgType;
5338
5339typedef struct
5340{
5341 /*Request status callback offered by UMAC - it is called if the current
5342 req has returned PENDING as status; it delivers the status of sending
5343 the message over the BUS */
5344 WDI_ReqStatusCb wdiReqStatusCB;
5345
5346 /*The user data passed in by UMAC, it will be sent back when the above
5347 function pointer will be called */
5348 void* pUserData;
5349
5350 // Variable length packet filter field params
5351 WDI_RcvPktFilterCfgType wdiPktFilterCfg;
5352} WDI_SetRcvPktFilterReqParamsType;
5353
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07005354typedef struct
5355{
5356 /*Result of the operation*/
5357 WDI_Status wdiStatus;
5358 /* BSSIDX of the Set Receive Filter
5359 */
5360 wpt_uint8 bssIdx;
5361} WDI_SetRcvPktFilterRspParamsType;
5362
Jeff Johnson295189b2012-06-20 16:38:30 -07005363//
5364// Filter Packet Match Count Parameters
5365//
5366typedef struct
5367{
5368 /*Request status callback offered by UMAC - it is called if the current
5369 req has returned PENDING as status; it delivers the status of sending
5370 the message over the BUS */
5371 WDI_ReqStatusCb wdiReqStatusCB;
5372
5373 /*The user data passed in by UMAC, it will be sent back when the above
5374 function pointer will be called */
5375 void* pUserData;
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07005376
5377 /* BSSID of the Match count
5378 */
5379 wpt_macAddr bssId;
Jeff Johnson295189b2012-06-20 16:38:30 -07005380} WDI_RcvFltPktMatchCntReqParamsType;
5381
5382typedef struct
5383{
5384 wpt_uint8 filterId;
5385 wpt_uint32 matchCnt;
5386} WDI_RcvFltPktMatchCnt;
5387
5388typedef struct
5389{
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07005390 /*Result of the operation*/
5391 WDI_Status wdiStatus;
Jeff Johnson295189b2012-06-20 16:38:30 -07005392
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07005393 /* BSSIDX of the Match count response
5394 */
5395 wpt_uint8 bssIdx;
5396
Jeff Johnson295189b2012-06-20 16:38:30 -07005397} WDI_RcvFltPktMatchCntRspParamsType;
5398
Jeff Johnson295189b2012-06-20 16:38:30 -07005399//
5400// Receive Filter Clear Parameters
5401//
5402typedef struct
5403{
5404 wpt_uint32 status; /* only valid for response message */
5405 wpt_uint8 filterId;
Jeff Johnsone7245742012-09-05 17:12:55 -07005406 wpt_macAddr selfMacAddr;
5407 wpt_macAddr bssId;
Jeff Johnson295189b2012-06-20 16:38:30 -07005408}WDI_RcvFltPktClearParam;
5409
5410typedef struct
5411{
5412 WDI_RcvFltPktClearParam filterClearParam;
5413 /*Request status callback offered by UMAC - it is called if the current
5414 req has returned PENDING as status; it delivers the status of sending
5415 the message over the BUS */
5416 WDI_ReqStatusCb wdiReqStatusCB;
5417
5418 /*The user data passed in by UMAC, it will be sent back when the above
5419 function pointer will be called */
5420 void* pUserData;
5421} WDI_RcvFltPktClearReqParamsType;
5422
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07005423typedef struct
5424{
5425 /*Result of the operation*/
5426 WDI_Status wdiStatus;
5427 /* BSSIDX of the Match count response
5428 */
5429 wpt_uint8 bssIdx;
5430
5431} WDI_RcvFltPktClearRspParamsType;
5432
Jeff Johnson295189b2012-06-20 16:38:30 -07005433//
5434// Multicast Address List Parameters
5435//
5436typedef struct
5437{
5438 wpt_uint32 ulMulticastAddrCnt;
5439 wpt_macAddr multicastAddr[WDI_MAX_NUM_MULTICAST_ADDRESS];
Jeff Johnsone7245742012-09-05 17:12:55 -07005440 wpt_macAddr selfMacAddr;
5441 wpt_macAddr bssId;
Jeff Johnson295189b2012-06-20 16:38:30 -07005442} WDI_RcvFltMcAddrListType;
5443
5444typedef struct
5445{
5446 WDI_RcvFltMcAddrListType mcAddrList;
5447 /*Request status callback offered by UMAC - it is called if the current
5448 req has returned PENDING as status; it delivers the status of sending
5449 the message over the BUS */
5450 WDI_ReqStatusCb wdiReqStatusCB;
5451
5452 /*The user data passed in by UMAC, it will be sent back when the above
5453 function pointer will be called */
5454 void* pUserData;
5455} WDI_RcvFltPktSetMcListReqParamsType;
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07005456
5457typedef struct
5458{
5459 /*Result of the operation*/
5460 WDI_Status wdiStatus;
5461 /* BSSIDX of the Match count response
5462 */
5463 wpt_uint8 bssIdx;
5464} WDI_RcvFltPktSetMcListRspParamsType;
5465
Jeff Johnson295189b2012-06-20 16:38:30 -07005466#endif // WLAN_FEATURE_PACKET_FILTERING
5467
5468/*---------------------------------------------------------------------------
5469 WDI_HALDumpCmdReqInfoType
5470---------------------------------------------------------------------------*/
5471typedef struct
5472{
5473 /*command*/
5474 wpt_uint32 command;
5475
5476 /*Arguments*/
5477 wpt_uint32 argument1;
5478 wpt_uint32 argument2;
5479 wpt_uint32 argument3;
5480 wpt_uint32 argument4;
5481
5482}WDI_HALDumpCmdReqInfoType;
5483
5484/*---------------------------------------------------------------------------
5485 WDI_HALDumpCmdReqParamsType
5486---------------------------------------------------------------------------*/
5487typedef struct
5488{
5489 /*NV Blob Info*/
5490 WDI_HALDumpCmdReqInfoType wdiHALDumpCmdInfoType;
5491
5492 /*Request status callback offered by UMAC - it is called if the current
5493 req has returned PENDING as status; it delivers the status of sending
5494 the message over the BUS */
5495 WDI_ReqStatusCb wdiReqStatusCB;
5496
5497 /*The user data passed in by UMAC, it will be sent back when the above
5498 function pointer will be called */
5499 void* pUserData;
5500
5501}WDI_HALDumpCmdReqParamsType;
5502
5503
5504/*---------------------------------------------------------------------------
5505 WDI_HALDumpCmdRspParamsType
5506---------------------------------------------------------------------------*/
5507typedef struct
5508{
5509 /*Result of the operation*/
5510 WDI_Status wdiStatus;
5511
5512 /* length of the buffer */
5513 wpt_uint16 usBufferLen;
5514
5515 /* Buffer */
5516 wpt_uint8 *pBuffer;
5517}WDI_HALDumpCmdRspParamsType;
5518
5519
5520/*---------------------------------------------------------------------------
5521 WDI_SetTmLevelReqType
5522---------------------------------------------------------------------------*/
5523typedef struct
5524{
5525 wpt_uint16 tmMode;
5526 wpt_uint16 tmLevel;
5527 void* pUserData;
5528}WDI_SetTmLevelReqType;
5529
5530/*---------------------------------------------------------------------------
5531 WDI_SetTmLevelRspType
5532---------------------------------------------------------------------------*/
5533typedef struct
5534{
5535 WDI_Status wdiStatus;
5536 void* pUserData;
5537}WDI_SetTmLevelRspType;
5538
Leo Chang9056f462013-08-01 19:21:11 -07005539#ifdef FEATURE_WLAN_LPHB
5540/*---------------------------------------------------------------------------
5541 WDI_LPHBConfigParamsType
5542---------------------------------------------------------------------------*/
5543typedef struct
5544{
5545 void* pLphsConfIndData;
5546}WDI_LPHBConfigParamsType;
5547#endif /* FEATURE_WLAN_LPHB */
5548
Yue Mab9c86f42013-08-14 15:59:08 -07005549/*---------------------------------------------------------------------------
5550 WDI_AddPeriodicTxPtrnInfoType
5551---------------------------------------------------------------------------*/
5552typedef struct
5553{
5554 /* MAC Address for the adapter */
5555 wpt_macAddr macAddr;
5556
5557 wpt_uint8 ucPtrnId; // Pattern ID
5558 wpt_uint16 ucPtrnSize; // Pattern size
5559 wpt_uint32 usPtrnIntervalMs; // In msec
5560 wpt_uint8 ucPattern[PERIODIC_TX_PTRN_MAX_SIZE]; // Pattern buffer
5561} WDI_AddPeriodicTxPtrnInfoType;
5562
5563/*---------------------------------------------------------------------------
5564 WDI_DelPeriodicTxPtrnInfoType
5565---------------------------------------------------------------------------*/
5566typedef struct
5567{
5568 /* MAC Address for the adapter */
5569 wpt_macAddr macAddr;
5570
5571 /* Bitmap of pattern IDs that needs to be deleted */
5572 wpt_uint32 ucPatternIdBitmap;
5573} WDI_DelPeriodicTxPtrnInfoType;
5574
5575/*---------------------------------------------------------------------------
5576 WDI_AddPeriodicTxPtrnParamsType
5577---------------------------------------------------------------------------*/
5578typedef struct
5579{
5580 WDI_AddPeriodicTxPtrnInfoType wdiAddPeriodicTxPtrnParams;
5581
5582 /*Request status callback offered by UMAC - it is called if the current
5583 req has returned PENDING as status; it delivers the status of sending
5584 the message over the BUS */
5585 WDI_ReqStatusCb wdiReqStatusCB;
5586
5587 /*The user data passed in by UMAC, it will be sent back when the above
5588 function pointer will be called */
5589 void* pUserData;
5590} WDI_AddPeriodicTxPtrnParamsType;
5591
5592/*---------------------------------------------------------------------------
5593 WDI_DelPeriodicTxPtrnParamsType
5594---------------------------------------------------------------------------*/
5595typedef struct
5596{
5597 WDI_DelPeriodicTxPtrnInfoType wdiDelPeriodicTxPtrnParams;
5598
5599 /*Request status callback offered by UMAC - it is called if the current
5600 req has returned PENDING as status; it delivers the status of sending
5601 the message over the BUS */
5602 WDI_ReqStatusCb wdiReqStatusCB;
5603
5604 /*The user data passed in by UMAC, it will be sent back when the above
5605 function pointer will be called */
5606 void* pUserData;
5607} WDI_DelPeriodicTxPtrnParamsType;
5608
Jeff Johnson295189b2012-06-20 16:38:30 -07005609/*----------------------------------------------------------------------------
5610 * WDI callback types
5611 *--------------------------------------------------------------------------*/
5612
5613/*---------------------------------------------------------------------------
5614 WDI_StartRspCb
5615
5616 DESCRIPTION
5617
5618 This callback is invoked by DAL when it has received a Start response from
5619 the underlying device.
5620
5621 PARAMETERS
5622
5623 IN
5624 wdiRspParams: response parameters received from HAL
5625 pUserData: user data
5626
5627
5628 RETURN VALUE
5629 The result code associated with performing the operation
5630---------------------------------------------------------------------------*/
5631typedef void (*WDI_StartRspCb)(WDI_StartRspParamsType* pwdiRspParams,
5632 void* pUserData);
5633
5634/*---------------------------------------------------------------------------
5635 WDI_StartRspCb
5636
5637 DESCRIPTION
5638
5639 This callback is invoked by DAL when it has received a Stop response from
5640 the underlying device.
5641
5642 PARAMETERS
5643
5644 IN
5645 wdiStatus: response status received from HAL
5646 pUserData: user data
5647
5648
5649
5650 RETURN VALUE
5651 The result code associated with performing the operation
5652---------------------------------------------------------------------------*/
5653typedef void (*WDI_StopRspCb)(WDI_Status wdiStatus,
5654 void* pUserData);
5655
5656/*---------------------------------------------------------------------------
5657 WDI_StartRspCb
5658
5659 DESCRIPTION
5660
5661 This callback is invoked by DAL when it has received an Init Scan response
5662 from the underlying device.
5663
5664 PARAMETERS
5665
5666 IN
5667 wdiStatus: response status received from HAL
5668 pUserData: user data
5669
5670
5671
5672 RETURN VALUE
5673 The result code associated with performing the operation
5674---------------------------------------------------------------------------*/
5675typedef void (*WDI_InitScanRspCb)(WDI_Status wdiStatus,
5676 void* pUserData);
5677
5678
5679/*---------------------------------------------------------------------------
5680 WDI_StartRspCb
5681
5682 DESCRIPTION
5683
5684 This callback is invoked by DAL when it has received a StartScan response
5685 from the underlying device.
5686
5687 PARAMETERS
5688
5689 IN
5690 wdiParams: response params received from HAL
5691 pUserData: user data
5692
5693
5694
5695 RETURN VALUE
5696 The result code associated with performing the operation
5697---------------------------------------------------------------------------*/
5698typedef void (*WDI_StartScanRspCb)(WDI_StartScanRspParamsType* wdiParams,
5699 void* pUserData);
5700
5701
5702/*---------------------------------------------------------------------------
5703 WDI_StartRspCb
5704
5705 DESCRIPTION
5706
5707 This callback is invoked by DAL when it has received a End Scan response
5708 from the underlying device.
5709
5710 PARAMETERS
5711
5712 IN
5713 wdiStatus: response status received from HAL
5714 pUserData: user data
5715
5716
5717
5718 RETURN VALUE
5719 The result code associated with performing the operation
5720---------------------------------------------------------------------------*/
5721typedef void (*WDI_EndScanRspCb)(WDI_Status wdiStatus,
5722 void* pUserData);
5723
5724
5725/*---------------------------------------------------------------------------
5726 WDI_StartRspCb
5727
5728 DESCRIPTION
5729
5730 This callback is invoked by DAL when it has received a Finish Scan response
5731 from the underlying device.
5732
5733 PARAMETERS
5734
5735 IN
5736 wdiStatus: response status received from HAL
5737 pUserData: user data
5738
5739
5740
5741 RETURN VALUE
5742 The result code associated with performing the operation
5743---------------------------------------------------------------------------*/
5744typedef void (*WDI_FinishScanRspCb)(WDI_Status wdiStatus,
5745 void* pUserData);
5746
5747
5748/*---------------------------------------------------------------------------
5749 WDI_StartRspCb
5750
5751 DESCRIPTION
5752
5753 This callback is invoked by DAL when it has received a Join response from
5754 the underlying device.
5755
5756 PARAMETERS
5757
5758 IN
5759 wdiStatus: response status received from HAL
5760 pUserData: user data
5761
5762
5763
5764 RETURN VALUE
5765 The result code associated with performing the operation
5766---------------------------------------------------------------------------*/
5767typedef void (*WDI_JoinRspCb)(WDI_Status wdiStatus,
5768 void* pUserData);
5769
5770
5771/*---------------------------------------------------------------------------
5772 WDI_StartRspCb
5773
5774 DESCRIPTION
5775
5776 This callback is invoked by DAL when it has received a Config BSS response
5777 from the underlying device.
5778
5779 PARAMETERS
5780
5781 IN
5782 wdiConfigBSSRsp: response parameters received from HAL
5783 pUserData: user data
5784
5785
5786 RETURN VALUE
5787 The result code associated with performing the operation
5788---------------------------------------------------------------------------*/
5789typedef void (*WDI_ConfigBSSRspCb)(
5790 WDI_ConfigBSSRspParamsType* pwdiConfigBSSRsp,
5791 void* pUserData);
5792
5793
5794/*---------------------------------------------------------------------------
5795 WDI_StartRspCb
5796
5797 DESCRIPTION
5798
5799 This callback is invoked by DAL when it has received a Del BSS response from
5800 the underlying device.
5801
5802 PARAMETERS
5803
5804 IN
5805 wdiDelBSSRsp: response parameters received from HAL
5806 pUserData: user data
5807
5808
5809 RETURN VALUE
5810 The result code associated with performing the operation
5811---------------------------------------------------------------------------*/
5812typedef void (*WDI_DelBSSRspCb)(WDI_DelBSSRspParamsType* pwdiDelBSSRsp,
5813 void* pUserData);
5814
5815
5816/*---------------------------------------------------------------------------
5817 WDI_StartRspCb
5818
5819 DESCRIPTION
5820
5821 This callback is invoked by DAL when it has received a Post Assoc response
5822 from the underlying device.
5823
5824 PARAMETERS
5825
5826 IN
5827 wdiRspParams: response parameters received from HAL
5828 pUserData: user data
5829
5830
5831 RETURN VALUE
5832 The result code associated with performing the operation
5833---------------------------------------------------------------------------*/
5834typedef void (*WDI_PostAssocRspCb)(
5835 WDI_PostAssocRspParamsType* pwdiPostAssocRsp,
5836 void* pUserData);
5837
5838
5839/*---------------------------------------------------------------------------
5840 WDI_StartRspCb
5841
5842 DESCRIPTION
5843
5844 This callback is invoked by DAL when it has received a Del STA response from
5845 the underlying device.
5846
5847 PARAMETERS
5848
5849 IN
5850 wdiDelSTARsp: response parameters received from HAL
5851 pUserData: user data
5852
5853
5854 RETURN VALUE
5855 The result code associated with performing the operation
5856---------------------------------------------------------------------------*/
5857typedef void (*WDI_DelSTARspCb)(WDI_DelSTARspParamsType* pwdiDelSTARsp,
5858 void* pUserData);
5859
5860
5861
5862/*---------------------------------------------------------------------------
5863 WDI_StartRspCb
5864
5865 DESCRIPTION
5866
5867 This callback is invoked by DAL when it has received a Set BSS Key response
5868 from the underlying device.
5869
5870 PARAMETERS
5871
5872 IN
5873 wdiStatus: response status received from HAL
5874 pUserData: user data
5875
5876
5877
5878 RETURN VALUE
5879 The result code associated with performing the operation
5880---------------------------------------------------------------------------*/
5881typedef void (*WDI_SetBSSKeyRspCb)(WDI_Status wdiStatus,
5882 void* pUserData);
5883
5884/*---------------------------------------------------------------------------
5885 WDI_StartRspCb
5886
5887 DESCRIPTION
5888
5889 This callback is invoked by DAL when it has received a Remove BSS Key
5890 response from the underlying device.
5891
5892 PARAMETERS
5893
5894 IN
5895 wdiStatus: response status received from HAL
5896 pUserData: user data
5897
5898
5899
5900 RETURN VALUE
5901 The result code associated with performing the operation
5902---------------------------------------------------------------------------*/
5903typedef void (*WDI_RemoveBSSKeyRspCb)(WDI_Status wdiStatus,
5904 void* pUserData);
5905
5906/*---------------------------------------------------------------------------
5907 WDI_StartRspCb
5908
5909 DESCRIPTION
5910
5911 This callback is invoked by DAL when it has received a Set STA Key response
5912 from the underlying device.
5913
5914 PARAMETERS
5915
5916 IN
5917 wdiStatus: response status received from HAL
5918 pUserData: user data
5919
5920
5921
5922 RETURN VALUE
5923 The result code associated with performing the operation
5924---------------------------------------------------------------------------*/
5925typedef void (*WDI_SetSTAKeyRspCb)(WDI_Status wdiStatus,
5926 void* pUserData);
5927
5928
5929/*---------------------------------------------------------------------------
5930 WDI_StartRspCb
5931
5932 DESCRIPTION
5933
5934 This callback is invoked by DAL when it has received a Remove STA Key
5935 response from the underlying device.
5936
5937 PARAMETERS
5938
5939 IN
5940 wdiStatus: response status received from HAL
5941 pUserData: user data
5942
5943
5944
5945 RETURN VALUE
5946 The result code associated with performing the operation
5947---------------------------------------------------------------------------*/
5948typedef void (*WDI_RemoveSTAKeyRspCb)(WDI_Status wdiStatus,
5949 void* pUserData);
5950
5951
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08005952#ifdef FEATURE_WLAN_ESE
Jeff Johnson295189b2012-06-20 16:38:30 -07005953/*---------------------------------------------------------------------------
5954 WDI_TsmRspCb
5955
5956 DESCRIPTION
5957
5958 This callback is invoked by DAL when it has received a TSM Stats response from the underlying device.
5959
5960 PARAMETERS
5961
5962 IN
5963 pTSMStats: response status received from HAL
5964 pUserData: user data
5965
5966
5967
5968 RETURN VALUE
5969 The result code associated with performing the operation
5970---------------------------------------------------------------------------*/
5971typedef void (*WDI_TsmRspCb)(WDI_TSMStatsRspParamsType *pTSMStats,
5972 void* pUserData);
5973#endif
5974
5975/*---------------------------------------------------------------------------
5976 WDI_StartRspCb
5977
5978 DESCRIPTION
5979
5980 This callback is invoked by DAL when it has received a Add TS response from
5981 the underlying device.
5982
5983 PARAMETERS
5984
5985 IN
5986 wdiStatus: response status received from HAL
5987 pUserData: user data
5988
5989
5990
5991 RETURN VALUE
5992 The result code associated with performing the operation
5993---------------------------------------------------------------------------*/
5994typedef void (*WDI_AddTsRspCb)(WDI_Status wdiStatus,
5995 void* pUserData);
5996
5997/*---------------------------------------------------------------------------
5998 WDI_StartRspCb
5999
6000 DESCRIPTION
6001
6002 This callback is invoked by DAL when it has received a Del TS response from
6003 the underlying device.
6004
6005 PARAMETERS
6006
6007 IN
6008 wdiStatus: response status received from HAL
6009 pUserData: user data
6010
6011
6012
6013 RETURN VALUE
6014 The result code associated with performing the operation
6015---------------------------------------------------------------------------*/
6016typedef void (*WDI_DelTsRspCb)(WDI_Status wdiStatus,
6017 void* pUserData);
6018
6019/*---------------------------------------------------------------------------
6020 WDI_StartRspCb
6021
6022 DESCRIPTION
6023
6024 This callback is invoked by DAL when it has received an Update EDCA Params
6025 response from the underlying device.
6026
6027 PARAMETERS
6028
6029 IN
6030 wdiStatus: response status received from HAL
6031 pUserData: user data
6032
6033
6034
6035 RETURN VALUE
6036 The result code associated with performing the operation
6037---------------------------------------------------------------------------*/
6038typedef void (*WDI_UpdateEDCAParamsRspCb)(WDI_Status wdiStatus,
6039 void* pUserData);
6040
6041/*---------------------------------------------------------------------------
6042 WDI_StartRspCb
6043
6044 DESCRIPTION
6045
6046 This callback is invoked by DAL when it has received a Add BA response from
6047 the underlying device.
6048
6049 PARAMETERS
6050
6051 IN
6052 wdiStatus: response status received from HAL
6053 pUserData: user data
6054
6055
6056
6057 RETURN VALUE
6058 The result code associated with performing the operation
6059---------------------------------------------------------------------------*/
6060typedef void (*WDI_AddBASessionRspCb)(
6061 WDI_AddBASessionRspParamsType* wdiAddBASessionRsp,
6062 void* pUserData);
6063
6064
6065/*---------------------------------------------------------------------------
6066 WDI_StartRspCb
6067
6068 DESCRIPTION
6069
6070 This callback is invoked by DAL when it has received a Del BA response from
6071 the underlying device.
6072
6073 PARAMETERS
6074
6075 IN
6076 wdiStatus: response status received from HAL
6077 pUserData: user data
6078
6079
6080
6081 RETURN VALUE
6082 The result code associated with performing the operation
6083---------------------------------------------------------------------------*/
6084typedef void (*WDI_DelBARspCb)(WDI_Status wdiStatus,
6085 void* pUserData);
6086
6087
6088/*---------------------------------------------------------------------------
6089 WDI_StartRspCb
6090
6091 DESCRIPTION
6092
6093 This callback is invoked by DAL when it has received a Switch Ch response
6094 from the underlying device.
6095
6096 PARAMETERS
6097
6098 IN
6099 wdiRspParams: response parameters received from HAL
6100 pUserData: user data
6101
6102
6103 RETURN VALUE
6104 The result code associated with performing the operation
6105---------------------------------------------------------------------------*/
6106typedef void (*WDI_SwitchChRspCb)(WDI_SwitchCHRspParamsType* pwdiSwitchChRsp,
6107 void* pUserData);
6108
Kalikinkar dhara1e83b772014-02-06 12:59:22 -08006109typedef void (*WDI_SwitchChRspCb_V1)(WDI_SwitchChRspParamsType_V1* pwdiSwitchChRsp,
6110 void* pUserData);
6111
Jeff Johnson295189b2012-06-20 16:38:30 -07006112
6113/*---------------------------------------------------------------------------
6114 WDI_StartRspCb
6115
6116 DESCRIPTION
6117
6118 This callback is invoked by DAL when it has received a Config STA response
6119 from the underlying device.
6120
6121 PARAMETERS
6122
6123 IN
6124 wdiRspParams: response parameters received from HAL
6125 pUserData: user data
6126
6127
6128 RETURN VALUE
6129 The result code associated with performing the operation
6130---------------------------------------------------------------------------*/
6131typedef void (*WDI_ConfigSTARspCb)(
6132 WDI_ConfigSTARspParamsType* pwdiConfigSTARsp,
6133 void* pUserData);
6134
6135
6136/*---------------------------------------------------------------------------
6137 WDI_StartRspCb
6138
6139 DESCRIPTION
6140
6141 This callback is invoked by DAL when it has received a Set Link State
6142 response from the underlying device.
6143
6144 PARAMETERS
6145
6146 IN
6147 wdiRspParams: response parameters received from HAL
6148 pUserData: user data
6149
6150
6151 RETURN VALUE
6152 The result code associated with performing the operation
6153---------------------------------------------------------------------------*/
6154typedef void (*WDI_SetLinkStateRspCb)( WDI_Status wdiStatus,
6155 void* pUserData);
6156
6157
6158/*---------------------------------------------------------------------------
6159 WDI_StartRspCb
6160
6161 DESCRIPTION
6162
6163 This callback is invoked by DAL when it has received a Get Stats response
6164 from the underlying device.
6165
6166 PARAMETERS
6167
6168 IN
6169 wdiRspParams: response parameters received from HAL
6170 pUserData: user data
6171
6172
6173 RETURN VALUE
6174 The result code associated with performing the operation
6175---------------------------------------------------------------------------*/
6176typedef void (*WDI_GetStatsRspCb)(WDI_GetStatsRspParamsType* pwdiGetStatsRsp,
6177 void* pUserData);
6178
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08006179#if defined WLAN_FEATURE_VOWIFI_11R || defined FEATURE_WLAN_ESE || defined(FEATURE_WLAN_LFR)
Srinivas Girigowdad34cedb2013-01-25 13:33:11 -08006180/*---------------------------------------------------------------------------
6181 WDI_GetRoamRssiRspCb
6182
6183 DESCRIPTION
6184
6185 This callback is invoked by DAL when it has received a Get Roam Rssi response
6186 from the underlying device.
6187
6188 PARAMETERS
6189
6190 IN
6191 wdiRspParams: response parameters received from HAL
6192 pUserData: user data
6193
6194
6195 RETURN VALUE
6196 The result code associated with performing the operation
6197---------------------------------------------------------------------------*/
6198typedef void (*WDI_GetRoamRssiRspCb)(WDI_GetRoamRssiRspParamsType* pwdiGetRoamRssiRsp,
6199 void* pUserData);
6200#endif
6201
Jeff Johnson295189b2012-06-20 16:38:30 -07006202
6203/*---------------------------------------------------------------------------
6204 WDI_StartRspCb
6205
6206 DESCRIPTION
6207
6208 This callback is invoked by DAL when it has received a Update Cfg response
6209 from the underlying device.
6210
6211 PARAMETERS
6212
6213 IN
6214 wdiStatus: response status received from HAL
6215 pUserData: user data
6216
6217
6218 RETURN VALUE
6219 The result code associated with performing the operation
6220---------------------------------------------------------------------------*/
6221typedef void (*WDI_UpdateCfgRspCb)(WDI_Status wdiStatus,
6222 void* pUserData);
6223
6224/*---------------------------------------------------------------------------
6225 WDI_AddBARspCb
6226
6227 DESCRIPTION
6228
6229 This callback is invoked by DAL when it has received a ADD BA response
6230 from the underlying device.
6231
6232 PARAMETERS
6233
6234 IN
6235 wdiStatus: response status received from HAL
6236 pUserData: user data
6237
6238
6239 RETURN VALUE
6240 The result code associated with performing the operation
6241---------------------------------------------------------------------------*/
6242typedef void (*WDI_AddBARspCb)(WDI_AddBARspinfoType* wdiAddBARsp,
6243 void* pUserData);
6244
6245/*---------------------------------------------------------------------------
6246 WDI_TriggerBARspCb
6247
6248 DESCRIPTION
6249
6250 This callback is invoked by DAL when it has received a ADD BA response
6251 from the underlying device.
6252
6253 PARAMETERS
6254
6255 IN
6256 wdiStatus: response status received from HAL
6257 pUserData: user data
6258
6259
6260 RETURN VALUE
6261 The result code associated with performing the operation
6262---------------------------------------------------------------------------*/
6263typedef void (*WDI_TriggerBARspCb)(WDI_TriggerBARspParamsType* wdiTriggerBARsp,
6264 void* pUserData);
6265
6266
6267/*---------------------------------------------------------------------------
6268 WDI_UpdateBeaconParamsRspCb
6269
6270 DESCRIPTION
6271
6272 This callback is invoked by DAL when it has received a Update Beacon Params response from
6273 the underlying device.
6274
6275 PARAMETERS
6276
6277 IN
6278 wdiStatus: response status received from HAL
6279 pUserData: user data
6280
6281
6282
6283 RETURN VALUE
6284 The result code associated with performing the operation
6285---------------------------------------------------------------------------*/
6286typedef void (*WDI_UpdateBeaconParamsRspCb)(WDI_Status wdiStatus,
6287 void* pUserData);
6288
6289/*---------------------------------------------------------------------------
6290 WDI_SendBeaconParamsRspCb
6291
6292 DESCRIPTION
6293
6294 This callback is invoked by DAL when it has received a Send Beacon Params response from
6295 the underlying device.
6296
6297 PARAMETERS
6298
6299 IN
6300 wdiStatus: response status received from HAL
6301 pUserData: user data
6302
6303
6304
6305 RETURN VALUE
6306 The result code associated with performing the operation
6307---------------------------------------------------------------------------*/
6308typedef void (*WDI_SendBeaconParamsRspCb)(WDI_Status wdiStatus,
6309 void* pUserData);
6310
6311/*---------------------------------------------------------------------------
6312 WDA_SetMaxTxPowerRspCb
6313
6314 DESCRIPTION
6315
6316 This callback is invoked by DAL when it has received a set max Tx Power response from
6317 the underlying device.
6318
6319 PARAMETERS
6320
6321 IN
6322 wdiStatus: response status received from HAL
6323 pUserData: user data
6324
6325
6326
6327 RETURN VALUE
6328 The result code associated with performing the operation
6329---------------------------------------------------------------------------*/
6330typedef void (*WDA_SetMaxTxPowerRspCb)(WDI_SetMaxTxPowerRspMsg *wdiSetMaxTxPowerRsp,
6331 void* pUserData);
6332
6333/*---------------------------------------------------------------------------
Arif Hussaina5ebce02013-08-09 15:09:58 -07006334 WDA_SetMaxTxPowerPerBandRspCb
6335
6336 DESCRIPTION
6337
6338 This callback is invoked by DAL when it has received a
6339 set max Tx Power Per Band response from the underlying device.
6340
6341 PARAMETERS
6342
6343 IN
6344 wdiSetMaxTxPowerPerBandRsp: response status received from HAL
6345 pUserData: user data
6346
6347 RETURN VALUE
6348 The result code associated with performing the operation
6349---------------------------------------------------------------------------*/
6350typedef void (*WDA_SetMaxTxPowerPerBandRspCb)(WDI_SetMaxTxPowerPerBandRspMsg
6351 *wdiSetMaxTxPowerPerBandRsp,
6352 void* pUserData);
6353
6354/*---------------------------------------------------------------------------
schang86c22c42013-03-13 18:41:24 -07006355 WDA_SetTxPowerRspCb
6356
6357 DESCRIPTION
6358
6359 This callback is invoked by DAL when it has received a set max Tx Power response from
6360 the underlying device.
6361
6362 PARAMETERS
6363
6364 IN
6365 wdiStatus: response status received from HAL
6366 pUserData: user data
6367
6368 RETURN VALUE
6369 The result code associated with performing the operation
6370---------------------------------------------------------------------------*/
6371typedef void (*WDA_SetTxPowerRspCb)(WDI_SetTxPowerRspMsg *wdiSetTxPowerRsp,
6372 void* pUserData);
6373
6374/*---------------------------------------------------------------------------
Jeff Johnson295189b2012-06-20 16:38:30 -07006375 WDI_UpdateProbeRspTemplateRspCb
6376
6377 DESCRIPTION
6378
6379 This callback is invoked by DAL when it has received a Probe RSP Template
6380 Update response from the underlying device.
6381
6382 PARAMETERS
6383
6384 IN
6385 wdiStatus: response status received from HAL
6386 pUserData: user data
6387
6388
6389
6390 RETURN VALUE
6391 The result code associated with performing the operation
6392---------------------------------------------------------------------------*/
6393typedef void (*WDI_UpdateProbeRspTemplateRspCb)(WDI_Status wdiStatus,
6394 void* pUserData);
6395
Jeff Johnson295189b2012-06-20 16:38:30 -07006396/*---------------------------------------------------------------------------
6397 WDI_SetP2PGONOAReqParamsRspCb
6398
6399 DESCRIPTION
6400
6401 This callback is invoked by DAL when it has received a P2P GO NOA Params response from
6402 the underlying device.
6403
6404 PARAMETERS
6405
6406 IN
6407 wdiStatus: response status received from HAL
6408 pUserData: user data
6409
6410
6411
6412 RETURN VALUE
6413 The result code associated with performing the operation
6414---------------------------------------------------------------------------*/
6415typedef void (*WDI_SetP2PGONOAReqParamsRspCb)(WDI_Status wdiStatus,
6416 void* pUserData);
Jeff Johnson295189b2012-06-20 16:38:30 -07006417
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05306418/*---------------------------------------------------------------------------
6419 WDI_SetTDLSLinkEstablishReqParamsRspCb
6420
6421 DESCRIPTION
6422
6423 This callback is invoked by DAL when it has received a TDLS Link Establish Req response from
6424 the underlying device.
6425
6426 PARAMETERS
6427
6428 IN
6429 wdiStatus: response status received from HAL
6430 pUserData: user data
6431
6432
6433
6434 RETURN VALUE
6435 The result code associated with performing the operation
6436---------------------------------------------------------------------------*/
Gopichand Nakkala574f6d12013-06-27 19:38:43 +05306437typedef void (*WDI_SetTDLSLinkEstablishReqParamsRspCb)(WDI_SetTdlsLinkEstablishReqResp *
6438 wdiSetTdlsLinkEstablishReqRsp,
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05306439 void* pUserData);
Jeff Johnson295189b2012-06-20 16:38:30 -07006440
6441/*---------------------------------------------------------------------------
6442 WDI_SetPwrSaveCfgCb
6443
6444 DESCRIPTION
6445
6446 This callback is invoked by DAL when it has received a set Power Save CFG
6447 response from the underlying device.
6448
6449 PARAMETERS
6450
6451 IN
6452 wdiStatus: response status received from HAL
6453 pUserData: user data
6454
6455
6456
6457 RETURN VALUE
6458 The result code associated with performing the operation
6459---------------------------------------------------------------------------*/
6460typedef void (*WDI_SetPwrSaveCfgCb)(WDI_Status wdiStatus,
6461 void* pUserData);
6462
6463/*---------------------------------------------------------------------------
6464 WDI_SetUapsdAcParamsCb
6465
6466 DESCRIPTION
6467
6468 This callback is invoked by DAL when it has received a set UAPSD params
6469 response from the underlying device.
6470
6471 PARAMETERS
6472
6473 IN
6474 wdiStatus: response status received from HAL
6475 pUserData: user data
6476
6477
6478
6479 RETURN VALUE
6480 The result code associated with performing the operation
6481---------------------------------------------------------------------------*/
6482typedef void (*WDI_SetUapsdAcParamsCb)(WDI_Status wdiStatus,
6483 void* pUserData);
6484
6485/*---------------------------------------------------------------------------
6486 WDI_EnterImpsRspCb
6487
6488 DESCRIPTION
6489
6490 This callback is invoked by DAL when it has received a Enter IMPS response
6491 from the underlying device.
6492
6493 PARAMETERS
6494
6495 IN
6496 wdiStatus: response status received from HAL
6497 pUserData: user data
6498
6499
6500
6501 RETURN VALUE
6502 The result code associated with performing the operation
6503---------------------------------------------------------------------------*/
6504typedef void (*WDI_EnterImpsRspCb)(WDI_Status wdiStatus,
6505 void* pUserData);
6506
6507/*---------------------------------------------------------------------------
6508 WDI_ExitImpsRspCb
6509
6510 DESCRIPTION
6511
6512 This callback is invoked by DAL when it has received a Exit IMPS response
6513 from the underlying device.
6514
6515 PARAMETERS
6516
6517 IN
6518 wdiStatus: response status received from HAL
6519 pUserData: user data
6520
6521
6522
6523 RETURN VALUE
6524 The result code associated with performing the operation
6525---------------------------------------------------------------------------*/
6526typedef void (*WDI_ExitImpsRspCb)(WDI_Status wdiStatus,
6527 void* pUserData);
6528
6529/*---------------------------------------------------------------------------
6530 WDI_EnterBmpsRspCb
6531
6532 DESCRIPTION
6533
6534 This callback is invoked by DAL when it has received a enter BMPS response
6535 from the underlying device.
6536
6537 PARAMETERS
6538
6539 IN
6540 wdiStatus: response status received from HAL
6541 pUserData: user data
6542
6543
6544
6545 RETURN VALUE
6546 The result code associated with performing the operation
6547---------------------------------------------------------------------------*/
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07006548typedef void (*WDI_EnterBmpsRspCb)(WDI_EnterBmpsRspParamsType *pwdiEnterBmpsRsp,
Jeff Johnson295189b2012-06-20 16:38:30 -07006549 void* pUserData);
6550
6551/*---------------------------------------------------------------------------
6552 WDI_ExitBmpsRspCb
6553
6554 DESCRIPTION
6555
6556 This callback is invoked by DAL when it has received a exit BMPS response
6557 from the underlying device.
6558
6559 PARAMETERS
6560
6561 IN
6562 wdiStatus: response status received from HAL
6563 pUserData: user data
6564
6565
6566
6567 RETURN VALUE
6568 The result code associated with performing the operation
6569---------------------------------------------------------------------------*/
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07006570typedef void (*WDI_ExitBmpsRspCb)( WDI_ExitBmpsRspParamsType *pwdiExitBmpsRspParams,
Jeff Johnson295189b2012-06-20 16:38:30 -07006571 void* pUserData);
6572
6573/*---------------------------------------------------------------------------
6574 WDI_EnterUapsdRspCb
6575
6576 DESCRIPTION
6577
6578 This callback is invoked by DAL when it has received a enter UAPSD response
6579 from the underlying device.
6580
6581 PARAMETERS
6582
6583 IN
6584 wdiStatus: response status received from HAL
6585 pUserData: user data
6586
6587
6588
6589 RETURN VALUE
6590 The result code associated with performing the operation
6591---------------------------------------------------------------------------*/
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07006592typedef void (*WDI_EnterUapsdRspCb)( WDI_EnterUapsdRspParamsType *pwdiEnterUapsdRspParam,
Jeff Johnson295189b2012-06-20 16:38:30 -07006593 void* pUserData);
6594
6595/*---------------------------------------------------------------------------
6596 WDI_ExitUapsdRspCb
6597
6598 DESCRIPTION
6599
6600 This callback is invoked by DAL when it has received a exit UAPSD response
6601 from the underlying device.
6602
6603 PARAMETERS
6604
6605 IN
6606 wdiStatus: response status received from HAL
6607 pUserData: user data
6608
6609
6610
6611 RETURN VALUE
6612 The result code associated with performing the operation
6613---------------------------------------------------------------------------*/
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07006614typedef void (*WDI_ExitUapsdRspCb)(WDI_ExitUapsdRspParamsType *pwidExitUapsdRsp,
Jeff Johnson295189b2012-06-20 16:38:30 -07006615 void* pUserData);
6616
6617/*---------------------------------------------------------------------------
6618 WDI_UpdateUapsdParamsCb
6619
6620 DESCRIPTION
6621
6622 This callback is invoked by DAL when it has received a update UAPSD params
6623 response from the underlying device.
6624
6625 PARAMETERS
6626
6627 IN
6628 wdiStatus: response status received from HAL
6629 pUserData: user data
6630
6631
6632
6633 RETURN VALUE
6634 The result code associated with performing the operation
6635---------------------------------------------------------------------------*/
6636typedef void (*WDI_UpdateUapsdParamsCb)(WDI_Status wdiStatus,
6637 void* pUserData);
6638
6639/*---------------------------------------------------------------------------
6640 WDI_ConfigureRxpFilterCb
6641
6642 DESCRIPTION
6643
6644 This callback is invoked by DAL when it has received a config RXP filter
6645 response from the underlying device.
6646
6647 PARAMETERS
6648
6649 IN
6650 wdiStatus: response status received from HAL
6651 pUserData: user data
6652
6653
6654
6655 RETURN VALUE
6656 The result code associated with performing the operation
6657---------------------------------------------------------------------------*/
6658typedef void (*WDI_ConfigureRxpFilterCb)(WDI_Status wdiStatus,
6659 void* pUserData);
6660
6661/*---------------------------------------------------------------------------
6662 WDI_SetBeaconFilterCb
6663
6664 DESCRIPTION
6665
6666 This callback is invoked by DAL when it has received a set beacon filter
6667 response from the underlying device.
6668
6669 PARAMETERS
6670
6671 IN
6672 wdiStatus: response status received from HAL
6673 pUserData: user data
6674
6675
6676
6677 RETURN VALUE
6678 The result code associated with performing the operation
6679---------------------------------------------------------------------------*/
6680typedef void (*WDI_SetBeaconFilterCb)(WDI_Status wdiStatus,
6681 void* pUserData);
6682
6683/*---------------------------------------------------------------------------
6684 WDI_RemBeaconFilterCb
6685
6686 DESCRIPTION
6687
6688 This callback is invoked by DAL when it has received a remove beacon filter
6689 response from the underlying device.
6690
6691 PARAMETERS
6692
6693 IN
6694 wdiStatus: response status received from HAL
6695 pUserData: user data
6696
6697
6698
6699 RETURN VALUE
6700 The result code associated with performing the operation
6701---------------------------------------------------------------------------*/
6702typedef void (*WDI_RemBeaconFilterCb)(WDI_Status wdiStatus,
6703 void* pUserData);
6704
6705/*---------------------------------------------------------------------------
6706 WDI_SetRSSIThresholdsCb
6707
6708 DESCRIPTION
6709
6710 This callback is invoked by DAL when it has received a set RSSI thresholds
6711 response from the underlying device.
6712
6713 PARAMETERS
6714
6715 IN
6716 wdiStatus: response status received from HAL
6717 pUserData: user data
6718
6719
6720
6721 RETURN VALUE
6722 The result code associated with performing the operation
6723---------------------------------------------------------------------------*/
6724typedef void (*WDI_SetRSSIThresholdsCb)(WDI_Status wdiStatus,
6725 void* pUserData);
6726
6727/*---------------------------------------------------------------------------
6728 WDI_HostOffloadCb
6729
6730 DESCRIPTION
6731
6732 This callback is invoked by DAL when it has received a host offload
6733 response from the underlying device.
6734
6735 PARAMETERS
6736
6737 IN
6738 wdiStatus: response status received from HAL
6739 pUserData: user data
6740
6741
6742
6743 RETURN VALUE
6744 The result code associated with performing the operation
6745---------------------------------------------------------------------------*/
6746typedef void (*WDI_HostOffloadCb)(WDI_Status wdiStatus,
6747 void* pUserData);
6748
6749/*---------------------------------------------------------------------------
6750 WDI_KeepAliveCb
6751
6752 DESCRIPTION
6753
6754 This callback is invoked by DAL when it has received a Keep Alive
6755 response from the underlying device.
6756
6757 PARAMETERS
6758
6759 IN
6760 wdiStatus: response status received from HAL
6761 pUserData: user data
6762
6763
6764
6765 RETURN VALUE
6766 The result code associated with performing the operation
6767---------------------------------------------------------------------------*/
6768typedef void (*WDI_KeepAliveCb)(WDI_Status wdiStatus,
6769 void* pUserData);
6770
6771/*---------------------------------------------------------------------------
6772 WDI_WowlAddBcPtrnCb
6773
6774 DESCRIPTION
6775
6776 This callback is invoked by DAL when it has received a Wowl add Bcast ptrn
6777 response from the underlying device.
6778
6779 PARAMETERS
6780
6781 IN
6782 wdiStatus: response status received from HAL
6783 pUserData: user data
6784
6785
6786
6787 RETURN VALUE
6788 The result code associated with performing the operation
6789---------------------------------------------------------------------------*/
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07006790typedef void (*WDI_WowlAddBcPtrnCb)( WDI_WowlAddBcPtrnRspParamsType *pwdiWowlAddBcPtrnParams,
Jeff Johnson295189b2012-06-20 16:38:30 -07006791 void* pUserData);
6792
6793/*---------------------------------------------------------------------------
6794 WDI_WowlDelBcPtrnCb
6795
6796 DESCRIPTION
6797
6798 This callback is invoked by DAL when it has received a Wowl delete Bcast ptrn
6799 response from the underlying device.
6800
6801 PARAMETERS
6802
6803 IN
6804 wdiStatus: response status received from HAL
6805 pUserData: user data
6806
6807
6808
6809 RETURN VALUE
6810 The result code associated with performing the operation
6811---------------------------------------------------------------------------*/
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07006812typedef void (*WDI_WowlDelBcPtrnCb)( WDI_WowlDelBcPtrnRspParamsType *pwdiWowlDelBcstPtrRsp,
Jeff Johnson295189b2012-06-20 16:38:30 -07006813 void* pUserData);
6814
6815/*---------------------------------------------------------------------------
6816 WDI_WowlEnterReqCb
6817
6818 DESCRIPTION
6819
6820 This callback is invoked by DAL when it has received a Wowl enter
6821 response from the underlying device.
6822
6823 PARAMETERS
6824
6825 IN
6826 wdiStatus: response status received from HAL
6827 pUserData: user data
6828
6829
6830
6831 RETURN VALUE
6832 The result code associated with performing the operation
6833---------------------------------------------------------------------------*/
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07006834typedef void (*WDI_WowlEnterReqCb)( WDI_WowlEnterRspParamsType *pwdiwowlEnterRsp,
6835 void* pUserData);
Jeff Johnson295189b2012-06-20 16:38:30 -07006836
6837/*---------------------------------------------------------------------------
6838 WDI_WowlExitReqCb
6839
6840 DESCRIPTION
6841
6842 This callback is invoked by DAL when it has received a Wowl exit
6843 response from the underlying device.
6844
6845 PARAMETERS
6846
6847 IN
6848 wdiStatus: response status received from HAL
6849 pUserData: user data
6850
6851
6852
6853 RETURN VALUE
6854 The result code associated with performing the operation
6855---------------------------------------------------------------------------*/
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07006856typedef void (*WDI_WowlExitReqCb)( WDI_WowlExitRspParamsType *pwdiWowlExitRsp,
Jeff Johnson295189b2012-06-20 16:38:30 -07006857 void* pUserData);
6858
6859/*---------------------------------------------------------------------------
6860 WDI_ConfigureAppsCpuWakeupStateCb
6861
6862 DESCRIPTION
6863
6864 This callback is invoked by DAL when it has received a config Apps Cpu Wakeup
6865 State response from the underlying device.
6866
6867 PARAMETERS
6868
6869 IN
6870 wdiStatus: response status received from HAL
6871 pUserData: user data
6872
6873
6874
6875 RETURN VALUE
6876 The result code associated with performing the operation
6877---------------------------------------------------------------------------*/
6878typedef void (*WDI_ConfigureAppsCpuWakeupStateCb)(WDI_Status wdiStatus,
6879 void* pUserData);
6880/*---------------------------------------------------------------------------
6881 WDI_NvDownloadRspCb
6882
6883 DESCRIPTION
6884
6885 This callback is invoked by DAL when it has received a NV Download response
6886 from the underlying device.
6887
6888 PARAMETERS
6889
6890 IN
6891 wdiStatus:response status received from HAL
6892 pUserData:user data
6893
6894 RETURN VALUE
6895 The result code associated with performing the operation
6896---------------------------------------------------------------------------*/
6897typedef void (*WDI_NvDownloadRspCb)(WDI_NvDownloadRspInfoType* wdiNvDownloadRsp,
6898 void* pUserData);
6899/*---------------------------------------------------------------------------
6900 WDI_FlushAcRspCb
6901
6902 DESCRIPTION
6903
6904 This callback is invoked by DAL when it has received a Flush AC response from
6905 the underlying device.
6906
6907 PARAMETERS
6908
6909 IN
6910 wdiStatus: response status received from HAL
6911 pUserData: user data
6912
6913
6914
6915 RETURN VALUE
6916 The result code associated with performing the operation
6917---------------------------------------------------------------------------*/
6918typedef void (*WDI_FlushAcRspCb)(WDI_Status wdiStatus,
6919 void* pUserData);
6920
6921/*---------------------------------------------------------------------------
6922 WDI_BtAmpEventRspCb
6923
6924 DESCRIPTION
6925
6926 This callback is invoked by DAL when it has received a Bt AMP event response
6927 from the underlying device.
6928
6929 PARAMETERS
6930
6931 IN
6932 wdiStatus: response status received from HAL
6933 pUserData: user data
6934
6935
6936
6937 RETURN VALUE
6938 The result code associated with performing the operation
6939---------------------------------------------------------------------------*/
6940typedef void (*WDI_BtAmpEventRspCb)(WDI_Status wdiStatus,
6941 void* pUserData);
6942
Jeff Johnsone7245742012-09-05 17:12:55 -07006943#ifdef FEATURE_OEM_DATA_SUPPORT
6944/*---------------------------------------------------------------------------
6945 WDI_oemDataRspCb
6946
6947 DESCRIPTION
6948
6949 This callback is invoked by DAL when it has received a Start oem data response from
6950 the underlying device.
6951
6952 PARAMETERS
6953
6954 IN
6955 wdiStatus: response status received from HAL
6956 pUserData: user data
6957
6958
6959
6960 RETURN VALUE
6961 The result code associated with performing the operation
6962---------------------------------------------------------------------------*/
6963typedef void (*WDI_oemDataRspCb)(WDI_oemDataRspParamsType* wdiOemDataRspParams,
6964 void* pUserData);
6965
6966#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07006967
6968/*---------------------------------------------------------------------------
6969 WDI_HostResumeEventRspCb
6970
6971 DESCRIPTION
6972
6973 This callback is invoked by DAL when it has received a Bt AMP event response
6974 from the underlying device.
6975
6976 PARAMETERS
6977
6978 IN
6979 wdiStatus: response status received from HAL
6980 pUserData: user data
6981
6982
6983
6984 RETURN VALUE
6985 The result code associated with performing the operation
6986---------------------------------------------------------------------------*/
6987typedef void (*WDI_HostResumeEventRspCb)(
6988 WDI_SuspendResumeRspParamsType *resumeRspParams,
6989 void* pUserData);
6990
6991
6992#ifdef WLAN_FEATURE_VOWIFI_11R
6993/*---------------------------------------------------------------------------
6994 WDI_AggrAddTsRspCb
6995
6996 DESCRIPTION
6997
6998 This callback is invoked by DAL when it has received a Aggregated Add TS
6999 response from the underlying device.
7000
7001 PARAMETERS
7002
7003 IN
7004 wdiStatus: response status received from HAL
7005 pUserData: user data
7006
7007
7008
7009 RETURN VALUE
7010 The result code associated with performing the operation
7011---------------------------------------------------------------------------*/
7012typedef void (*WDI_AggrAddTsRspCb)(WDI_Status wdiStatus,
7013 void* pUserData);
7014#endif /* WLAN_FEATURE_VOWIFI_11R */
7015
Jeff Johnson295189b2012-06-20 16:38:30 -07007016/*---------------------------------------------------------------------------
7017 WDI_FTMCommandRspCb
7018
7019 DESCRIPTION
7020
7021 FTM Command response CB
7022
7023 PARAMETERS
7024
7025 IN
7026 ftmCMDRspdata: FTM response data from HAL
7027 pUserData: user data
7028
7029
7030 RETURN VALUE
7031 NONE
7032---------------------------------------------------------------------------*/
7033typedef void (*WDI_FTMCommandRspCb)(void *ftmCMDRspdata,
7034 void *pUserData);
Jeff Johnson295189b2012-06-20 16:38:30 -07007035
7036/*---------------------------------------------------------------------------
7037 WDI_AddSTASelfParamsRspCb
7038
7039 DESCRIPTION
7040
7041 This callback is invoked by DAL when it has received a Add Sta Self Params
7042 response from the underlying device.
7043
7044 PARAMETERS
7045
7046 IN
7047 wdiAddSelfSTARsp: response status received from HAL
7048 pUserData: user data
7049
7050
7051
7052 RETURN VALUE
7053 The result code associated with performing the operation
7054---------------------------------------------------------------------------*/
7055typedef void (*WDI_AddSTASelfParamsRspCb)(
7056 WDI_AddSTASelfRspParamsType* pwdiAddSelfSTARsp,
7057 void* pUserData);
7058
7059
7060/*---------------------------------------------------------------------------
7061 WDI_DelSTASelfRspCb
7062
7063 DESCRIPTION
7064
7065 This callback is invoked by DAL when it has received a host offload
7066 response from the underlying device.
7067
7068 PARAMETERS
7069
7070 IN
7071 wdiStatus: response status received from HAL
7072 pUserData: user data
7073
7074
7075
7076 RETURN VALUE
7077 The result code associated with performing the operation
7078---------------------------------------------------------------------------*/
7079typedef void (*WDI_DelSTASelfRspCb)
7080(
7081WDI_DelSTASelfRspParamsType* wdiDelStaSelfRspParams,
7082void* pUserData
7083);
7084
7085#ifdef FEATURE_WLAN_SCAN_PNO
7086/*---------------------------------------------------------------------------
7087 WDI_PNOScanCb
7088
7089 DESCRIPTION
7090
7091 This callback is invoked by DAL when it has received a Set PNO
7092 response from the underlying device.
7093
7094 PARAMETERS
7095
7096 IN
7097 wdiStatus: response status received from HAL
7098 pUserData: user data
7099
7100
7101
7102 RETURN VALUE
7103 The result code associated with performing the operation
7104---------------------------------------------------------------------------*/
7105typedef void (*WDI_PNOScanCb)(WDI_Status wdiStatus,
7106 void* pUserData);
7107
7108/*---------------------------------------------------------------------------
7109 WDI_PNOScanCb
7110
7111 DESCRIPTION
7112
7113 This callback is invoked by DAL when it has received a Set PNO
7114 response from the underlying device.
7115
7116 PARAMETERS
7117
7118 IN
7119 wdiStatus: response status received from HAL
7120 pUserData: user data
7121
7122
7123
7124 RETURN VALUE
7125 The result code associated with performing the operation
7126---------------------------------------------------------------------------*/
7127typedef void (*WDI_RssiFilterCb)(WDI_Status wdiStatus,
7128 void* pUserData);
7129
7130/*---------------------------------------------------------------------------
7131 WDI_UpdateScanParamsCb
7132
7133 DESCRIPTION
7134
7135 This callback is invoked by DAL when it has received a Update Scan Params
7136 response from the underlying device.
7137
7138 PARAMETERS
7139
7140 IN
7141 wdiStatus: response status received from HAL
7142 pUserData: user data
7143
7144
7145
7146 RETURN VALUE
7147 The result code associated with performing the operation
7148---------------------------------------------------------------------------*/
7149typedef void (*WDI_UpdateScanParamsCb)(WDI_Status wdiStatus,
7150 void* pUserData);
7151#endif // FEATURE_WLAN_SCAN_PNO
7152
Manjunathappa Prakash86f78ca2014-02-10 18:09:15 -08007153typedef void (*WDI_UpdateChannelRspCb)(WDI_Status wdiStatus,
7154 void* pUserData);
7155
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07007156#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
7157/*---------------------------------------------------------------------------
7158 WDI_RoamOffloadScanCb
7159
7160 DESCRIPTION
7161
7162 This callback is invoked by DAL when it has received a Start Roam Candidate Lookup Req
7163 response from the underlying device.
7164
7165 PARAMETERS
7166
7167 IN
7168 wdiStatus: response status received from HAL
7169 pUserData: user data
7170
7171
7172
7173 RETURN VALUE
7174 The result code associated with performing the operation
7175---------------------------------------------------------------------------*/
7176typedef void (*WDI_RoamOffloadScanCb)(WDI_Status wdiStatus,
7177 void* pUserData);
7178
7179#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07007180/*---------------------------------------------------------------------------
7181 WDI_SetTxPerTrackingRspCb
7182
7183 DESCRIPTION
7184
7185 This callback is invoked by DAL when it has received a Tx PER Tracking
7186 response from the underlying device.
7187
7188 PARAMETERS
7189
7190 IN
7191 wdiStatus: response status received from HAL
7192 pUserData: user data
7193
7194
7195
7196 RETURN VALUE
7197 The result code associated with performing the operation
7198---------------------------------------------------------------------------*/
7199typedef void (*WDI_SetTxPerTrackingRspCb)(WDI_Status wdiStatus,
7200 void* pUserData);
7201
7202#ifdef WLAN_FEATURE_PACKET_FILTERING
7203/*---------------------------------------------------------------------------
7204 WDI_8023MulticastListCb
7205
7206 DESCRIPTION
7207
7208 This callback is invoked by DAL when it has received a 8023 Multicast List
7209 response from the underlying device.
7210
7211 PARAMETERS
7212
7213 IN
7214 wdiStatus: response status received from HAL
7215 pUserData: user data
7216
7217
7218
7219 RETURN VALUE
7220 The result code associated with performing the operation
7221---------------------------------------------------------------------------*/
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07007222typedef void (*WDI_8023MulticastListCb)(
7223 WDI_RcvFltPktSetMcListRspParamsType *pwdiRcvFltPktSetMcListRspInfo,
7224 void* pUserData);
Jeff Johnson295189b2012-06-20 16:38:30 -07007225
7226/*---------------------------------------------------------------------------
7227 WDI_ReceiveFilterSetFilterCb
7228
7229 DESCRIPTION
7230
7231 This callback is invoked by DAL when it has received a Receive Filter Set Filter
7232 response from the underlying device.
7233
7234 PARAMETERS
7235
7236 IN
7237 wdiStatus: response status received from HAL
7238 pUserData: user data
7239
7240
7241
7242 RETURN VALUE
7243 The result code associated with performing the operation
7244---------------------------------------------------------------------------*/
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07007245typedef void (*WDI_ReceiveFilterSetFilterCb)(
7246 WDI_SetRcvPktFilterRspParamsType *pwdiSetRcvPktFilterRspInfo,
7247 void* pUserData);
Jeff Johnson295189b2012-06-20 16:38:30 -07007248
7249/*---------------------------------------------------------------------------
7250 WDI_FilterMatchCountCb
7251
7252 DESCRIPTION
7253
7254 This callback is invoked by DAL when it has received a Do PC Filter Match Count
7255 response from the underlying device.
7256
7257 PARAMETERS
7258
7259 IN
7260 wdiStatus: response status received from HAL
7261 pUserData: user data
7262
7263
7264
7265 RETURN VALUE
7266 The result code associated with performing the operation
7267---------------------------------------------------------------------------*/
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07007268typedef void (*WDI_FilterMatchCountCb)(
7269 WDI_RcvFltPktMatchCntRspParamsType *pwdiRcvFltPktMatchRspParams,
7270 void* pUserData);
Jeff Johnson295189b2012-06-20 16:38:30 -07007271
7272/*---------------------------------------------------------------------------
7273 WDI_ReceiveFilterClearFilterCb
7274
7275 DESCRIPTION
7276
7277 This callback is invoked by DAL when it has received a Receive Filter Clear Filter
7278 response from the underlying device.
7279
7280 PARAMETERS
7281
7282 IN
7283 wdiStatus: response status received from HAL
7284 pUserData: user data
7285
7286
7287
7288 RETURN VALUE
7289 The result code associated with performing the operation
7290---------------------------------------------------------------------------*/
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07007291typedef void (*WDI_ReceiveFilterClearFilterCb)(
7292 WDI_RcvFltPktClearRspParamsType *pwdiRcvFltPktClearRspParamsType,
7293 void* pUserData);
Jeff Johnson295189b2012-06-20 16:38:30 -07007294#endif // WLAN_FEATURE_PACKET_FILTERING
7295
7296/*---------------------------------------------------------------------------
7297 WDI_HALDumpCmdRspCb
7298
7299 DESCRIPTION
7300
7301 This callback is invoked by DAL when it has received a HAL DUMP Command
7302response from
7303 the HAL layer.
7304
7305 PARAMETERS
7306
7307 IN
7308 wdiHalDumpCmdRsp: response status received from HAL
7309 pUserData: user data
7310
7311
7312
7313 RETURN VALUE
7314 The result code associated with performing the operation
7315---------------------------------------------------------------------------*/
7316typedef void (*WDI_HALDumpCmdRspCb)(WDI_HALDumpCmdRspParamsType* wdiHalDumpCmdRsp,
7317 void* pUserData);
7318
7319/*---------------------------------------------------------------------------
7320 WDI_SetPowerParamsCb
7321
7322 DESCRIPTION
7323
7324 This callback is invoked by DAL when it has received a Set Power Param
7325 response from the underlying device.
7326
7327 PARAMETERS
7328
7329 IN
7330 wdiStatus: response status received from HAL
7331 pUserData: user data
7332
7333
7334
7335 RETURN VALUE
7336 The result code associated with performing the operation
7337---------------------------------------------------------------------------*/
7338typedef void (*WDI_SetPowerParamsCb)(WDI_Status wdiStatus,
7339 void* pUserData);
7340
7341#ifdef WLAN_FEATURE_GTK_OFFLOAD
7342/*---------------------------------------------------------------------------
7343 WDI_GtkOffloadCb
7344
7345 DESCRIPTION
7346
7347 This callback is invoked by DAL when it has received a GTK offload
7348 response from the underlying device.
7349
7350 PARAMETERS
7351
7352 IN
7353 wdiStatus: response status received from HAL
7354 pUserData: user data
7355
7356
7357
7358 RETURN VALUE
7359 The result code associated with performing the operation
7360---------------------------------------------------------------------------*/
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07007361typedef void (*WDI_GtkOffloadCb)( WDI_GtkOffloadRspParams *pwdiGtkOffloadRsparams,
Jeff Johnson295189b2012-06-20 16:38:30 -07007362 void* pUserData);
7363
7364/*---------------------------------------------------------------------------
7365 WDI_GtkOffloadGetInfoCb
7366
7367 DESCRIPTION
7368
7369 This callback is invoked by DAL when it has received a GTK offload
7370 information response from the underlying device.
7371
7372 PARAMETERS
7373
7374 IN
7375 wdiStatus: response status received from HAL
7376 pUserData: user data
7377
7378
7379
7380 RETURN VALUE
7381 The result code associated with performing the operation
7382---------------------------------------------------------------------------*/
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07007383typedef void (*WDI_GtkOffloadGetInfoCb)( WDI_GtkOffloadGetInfoRspParams *pwdiGtkOffloadGetInfoRsparams,
Jeff Johnson295189b2012-06-20 16:38:30 -07007384 void* pUserData);
7385#endif // WLAN_FEATURE_GTK_OFFLOAD
7386
7387/*---------------------------------------------------------------------------
7388 WDI_SetTmLevelCb
7389
7390 DESCRIPTION
7391
7392 This callback is invoked by DAL when it has received a Set New TM Level
7393 done response from the underlying device.
7394
7395 PARAMETERS
7396
7397 IN
7398 wdiStatus: response status received from HAL
7399 pUserData: user data
7400
7401
7402
7403 RETURN VALUE
7404 The result code associated with performing the operation
7405---------------------------------------------------------------------------*/
7406typedef void (*WDI_SetTmLevelCb)(WDI_Status wdiStatus,
7407 void* pUserData);
7408
7409/*---------------------------------------------------------------------------
7410 WDI_featureCapsExchangeCb
7411
7412 DESCRIPTION
7413
7414 This callback is invoked by DAL when it has received a HAL Feature Capbility
7415 Exchange Response the HAL layer. This callback is put to mantain code
7416 similarity and is not being used right now.
7417
7418 PARAMETERS
7419
7420 IN
7421 wdiFeatCapRspParams: response parameters received from HAL
7422 pUserData: user data
7423
7424 RETURN VALUE
7425 The result code associated with performing the operation
7426---------------------------------------------------------------------------*/
7427typedef void (*WDI_featureCapsExchangeCb)(void* wdiFeatCapRspParams,
7428 void* pUserData);
7429
Mohit Khanna4a70d262012-09-11 16:30:12 -07007430#ifdef WLAN_FEATURE_11AC
7431typedef void (*WDI_UpdateVHTOpModeCb)(WDI_Status wdiStatus,
7432 void* pUserData);
7433#endif
7434
Leo Chang9056f462013-08-01 19:21:11 -07007435#ifdef FEATURE_WLAN_LPHB
7436typedef void (*WDI_LphbCfgCb)(WDI_Status wdiStatus,
7437 void* pUserData);
7438#endif /* FEATURE_WLAN_LPHB */
Mohit Khanna4a70d262012-09-11 16:30:12 -07007439
Rajeev79dbe4c2013-10-05 11:03:42 +05307440#ifdef FEATURE_WLAN_BATCH_SCAN
7441/*---------------------------------------------------------------------------
7442 WDI_SetBatchScanCb
7443
7444 DESCRIPTION
7445
7446 This callback is invoked by DAL when it has received a get batch scan
7447 response from the underlying device.
7448
7449 PARAMETERS
7450
7451 IN
7452 wdiStatus: response status received from HAL
7453 pUserData: user data
7454
7455
7456
7457 RETURN VALUE
7458 The result code associated with performing the operation
7459---------------------------------------------------------------------------*/
7460typedef void (*WDI_SetBatchScanCb)(void *pData, WDI_SetBatchScanRspType *pRsp);
7461
7462#endif
7463
7464
Jeff Johnson295189b2012-06-20 16:38:30 -07007465/*========================================================================
7466 * Function Declarations and Documentation
7467 ==========================================================================*/
7468
7469/*========================================================================
7470
7471 INITIALIZATION APIs
7472
7473==========================================================================*/
7474
7475/**
7476 @brief WDI_Init is used to initialize the DAL.
7477
7478 DAL will allocate all the resources it needs. It will open PAL, it will also
7479 open both the data and the control transport which in their turn will open
7480 DXE/SMD or any other drivers that they need.
7481
7482 @param pOSContext: pointer to the OS context provided by the UMAC
7483 will be passed on to PAL on Open
7484 ppWDIGlobalCtx: output pointer of Global Context
7485 pWdiDevCapability: output pointer of device capability
7486
7487 @return Result of the function call
7488*/
7489WDI_Status
7490WDI_Init
7491(
7492 void* pOSContext,
7493 void** ppWDIGlobalCtx,
7494 WDI_DeviceCapabilityType* pWdiDevCapability,
7495 unsigned int driverType
7496);
7497
7498/**
7499 @brief WDI_Start will be called when the upper MAC is ready to
7500 commence operation with the WLAN Device. Upon the call
7501 of this API the WLAN DAL will pack and send a HAL Start
7502 message to the lower RIVA sub-system if the SMD channel
7503 has been fully opened and the RIVA subsystem is up.
7504
7505 If the RIVA sub-system is not yet up and running DAL
7506 will queue the request for Open and will wait for the
7507 SMD notification before attempting to send down the
7508 message to HAL.
7509
7510 WDI_Init must have been called.
7511
7512 @param wdiStartParams: the start parameters as specified by
7513 the Device Interface
7514
7515 wdiStartRspCb: callback for passing back the response of
7516 the start operation received from the device
7517
7518 pUserData: user data will be passed back with the
7519 callback
7520
7521 @see WDI_Start
7522 @return Result of the function call
7523*/
7524WDI_Status
7525WDI_Start
7526(
7527 WDI_StartReqParamsType* pwdiStartParams,
7528 WDI_StartRspCb wdiStartRspCb,
7529 void* pUserData
7530);
7531
7532
7533/**
7534 @brief WDI_Stop will be called when the upper MAC is ready to
7535 stop any operation with the WLAN Device. Upon the call
7536 of this API the WLAN DAL will pack and send a HAL Stop
7537 message to the lower RIVA sub-system if the DAL Core is
7538 in started state.
7539
7540 In state BUSY this request will be queued.
7541
7542 Request will not be accepted in any other state.
7543
7544 WDI_Start must have been called.
7545
7546 @param wdiStopParams: the stop parameters as specified by
7547 the Device Interface
7548
7549 wdiStopRspCb: callback for passing back the response of
7550 the stop operation received from the device
7551
7552 pUserData: user data will be passed back with the
7553 callback
7554
7555 @see WDI_Start
7556 @return Result of the function call
7557*/
7558WDI_Status
7559WDI_Stop
7560(
7561 WDI_StopReqParamsType* pwdiStopParams,
7562 WDI_StopRspCb wdiStopRspCb,
7563 void* pUserData
7564);
7565
7566/**
7567 @brief WDI_Close will be called when the upper MAC no longer
7568 needs to interract with DAL. DAL will free its control
7569 block.
7570
7571 It is only accepted in state STOPPED.
7572
7573 WDI_Stop must have been called.
7574
7575 @param none
7576
7577 @see WDI_Stop
7578 @return Result of the function call
7579*/
7580WDI_Status
7581WDI_Close
7582(
7583 void
7584);
7585
7586
7587/**
7588 @brief WDI_Shutdown will be called during 'SSR shutdown' operation.
7589 This will do most of the WDI stop & close
7590 operations without doing any handshake with Riva
7591
7592 This will also make sure that the control transport
7593 will NOT be closed.
7594
7595 This request will not be queued.
7596
7597
7598 WDI_Start must have been called.
7599
7600 @param closeTransport: Close control channel if this is set
7601
7602 @return Result of the function call
7603*/
7604WDI_Status
7605WDI_Shutdown
7606(
7607 wpt_boolean closeTransport
7608);
7609
7610/*========================================================================
7611
7612 SCAN APIs
7613
7614==========================================================================*/
7615
7616/**
7617 @brief WDI_InitScanReq will be called when the upper MAC wants
7618 the WLAN Device to get ready for a scan procedure. Upon
7619 the call of this API the WLAN DAL will pack and send a
7620 HAL Init Scan request message to the lower RIVA
7621 sub-system if DAL is in state STARTED.
7622
7623 In state BUSY this request will be queued. Request won't
7624 be allowed in any other state.
7625
7626 WDI_Start must have been called.
7627
7628 @param wdiInitScanParams: the init scan parameters as specified
7629 by the Device Interface
7630
7631 wdiInitScanRspCb: callback for passing back the response
7632 of the init scan operation received from the device
7633
7634 pUserData: user data will be passed back with the
7635 callback
7636
7637 @see WDI_Start
7638 @return Result of the function call
7639*/
7640WDI_Status
7641WDI_InitScanReq
7642(
7643 WDI_InitScanReqParamsType* pwdiInitScanParams,
7644 WDI_InitScanRspCb wdiInitScanRspCb,
7645 void* pUserData
7646);
7647
7648/**
7649 @brief WDI_StartScanReq will be called when the upper MAC
7650 wishes to change the Scan channel on the WLAN Device.
7651 Upon the call of this API the WLAN DAL will pack and
7652 send a HAL Start Scan request message to the lower RIVA
7653 sub-system if DAL is in state STARTED.
7654
7655 In state BUSY this request will be queued. Request won't
7656 be allowed in any other state.
7657
7658 WDI_InitScanReq must have been called.
7659
7660 @param wdiStartScanParams: the start scan parameters as
7661 specified by the Device Interface
7662
7663 wdiStartScanRspCb: callback for passing back the
7664 response of the start scan operation received from the
7665 device
7666
7667 pUserData: user data will be passed back with the
7668 callback
7669
7670 @see WDI_InitScanReq
7671 @return Result of the function call
7672*/
7673WDI_Status
7674WDI_StartScanReq
7675(
7676 WDI_StartScanReqParamsType* pwdiStartScanParams,
7677 WDI_StartScanRspCb wdiStartScanRspCb,
7678 void* pUserData
7679);
7680
7681
7682/**
7683 @brief WDI_EndScanReq will be called when the upper MAC is
7684 wants to end scanning for a particular channel that it
7685 had set before by calling Scan Start on the WLAN Device.
7686 Upon the call of this API the WLAN DAL will pack and
7687 send a HAL End Scan request message to the lower RIVA
7688 sub-system if DAL is in state STARTED.
7689
7690 In state BUSY this request will be queued. Request won't
7691 be allowed in any other state.
7692
7693 WDI_StartScanReq must have been called.
7694
7695 @param wdiEndScanParams: the end scan parameters as specified
7696 by the Device Interface
7697
7698 wdiEndScanRspCb: callback for passing back the response
7699 of the end scan operation received from the device
7700
7701 pUserData: user data will be passed back with the
7702 callback
7703
7704 @see WDI_StartScanReq
7705 @return Result of the function call
7706*/
7707WDI_Status
7708WDI_EndScanReq
7709(
7710 WDI_EndScanReqParamsType* pwdiEndScanParams,
7711 WDI_EndScanRspCb wdiEndScanRspCb,
7712 void* pUserData
7713);
7714
7715
7716/**
7717 @brief WDI_FinishScanReq will be called when the upper MAC has
7718 completed the scan process on the WLAN Device. Upon the
7719 call of this API the WLAN DAL will pack and send a HAL
7720 Finish Scan Request request message to the lower RIVA
7721 sub-system if DAL is in state STARTED.
7722
7723 In state BUSY this request will be queued. Request won't
7724 be allowed in any other state.
7725
7726 WDI_InitScanReq must have been called.
7727
7728 @param wdiFinishScanParams: the finish scan parameters as
7729 specified by the Device Interface
7730
7731 wdiFinishScanRspCb: callback for passing back the
7732 response of the finish scan operation received from the
7733 device
7734
7735 pUserData: user data will be passed back with the
7736 callback
7737
7738 @see WDI_InitScanReq
7739 @return Result of the function call
7740*/
7741WDI_Status
7742WDI_FinishScanReq
7743(
7744 WDI_FinishScanReqParamsType* pwdiFinishScanParams,
7745 WDI_FinishScanRspCb wdiFinishScanRspCb,
7746 void* pUserData
7747);
7748
7749/*========================================================================
7750
7751 ASSOCIATION APIs
7752
7753==========================================================================*/
7754
7755/**
7756 @brief WDI_JoinReq will be called when the upper MAC is ready
7757 to start an association procedure to a BSS. Upon the
7758 call of this API the WLAN DAL will pack and send a HAL
7759 Join request message to the lower RIVA sub-system if
7760 DAL is in state STARTED.
7761
7762 In state BUSY this request will be queued. Request won't
7763 be allowed in any other state.
7764
7765 WDI_Start must have been called.
7766
7767 @param wdiJoinParams: the join parameters as specified by
7768 the Device Interface
7769
7770 wdiJoinRspCb: callback for passing back the response of
7771 the join operation received from the device
7772
7773 pUserData: user data will be passed back with the
7774 callback
7775
7776 @see WDI_Start
7777 @return Result of the function call
7778*/
7779WDI_Status
7780WDI_JoinReq
7781(
7782 WDI_JoinReqParamsType* pwdiJoinParams,
7783 WDI_JoinRspCb wdiJoinRspCb,
7784 void* pUserData
7785);
7786
7787/**
7788 @brief WDI_ConfigBSSReq will be called when the upper MAC
7789 wishes to configure the newly acquired or in process of
7790 being acquired BSS to the HW . Upon the call of this API
7791 the WLAN DAL will pack and send a HAL Config BSS request
7792 message to the lower RIVA sub-system if DAL is in state
7793 STARTED.
7794
7795 In state BUSY this request will be queued. Request won't
7796 be allowed in any other state.
7797
7798 WDI_JoinReq must have been called.
7799
7800 @param wdiConfigBSSParams: the config BSS parameters as
7801 specified by the Device Interface
7802
7803 wdiConfigBSSRspCb: callback for passing back the
7804 response of the config BSS operation received from the
7805 device
7806
7807 pUserData: user data will be passed back with the
7808 callback
7809
7810 @see WDI_JoinReq
7811 @return Result of the function call
7812*/
7813WDI_Status
7814WDI_ConfigBSSReq
7815(
7816 WDI_ConfigBSSReqParamsType* pwdiConfigBSSParams,
7817 WDI_ConfigBSSRspCb wdiConfigBSSRspCb,
7818 void* pUserData
7819);
7820
7821/**
7822 @brief WDI_DelBSSReq will be called when the upper MAC is
7823 dissasociating from the BSS and wishes to notify HW.
7824 Upon the call of this API the WLAN DAL will pack and
7825 send a HAL Del BSS request message to the lower RIVA
7826 sub-system if DAL is in state STARTED.
7827
7828 In state BUSY this request will be queued. Request won't
7829 be allowed in any other state.
7830
7831 WDI_ConfigBSSReq or WDI_PostAssocReq must have been called.
7832
7833 @param wdiDelBSSParams: the del BSS parameters as specified by
7834 the Device Interface
7835
7836 wdiDelBSSRspCb: callback for passing back the response
7837 of the del bss operation received from the device
7838
7839 pUserData: user data will be passed back with the
7840 callback
7841
7842 @see WDI_ConfigBSSReq, WDI_PostAssocReq
7843 @return Result of the function call
7844*/
7845WDI_Status
7846WDI_DelBSSReq
7847(
7848 WDI_DelBSSReqParamsType* pwdiDelBSSParams,
7849 WDI_DelBSSRspCb wdiDelBSSRspCb,
7850 void* pUserData
7851);
7852
7853/**
7854 @brief WDI_PostAssocReq will be called when the upper MAC has
7855 associated to a BSS and wishes to configure HW for
7856 associated state. Upon the call of this API the WLAN DAL
7857 will pack and send a HAL Post Assoc request message to
7858 the lower RIVA sub-system if DAL is in state STARTED.
7859
7860 In state BUSY this request will be queued. Request won't
7861 be allowed in any other state.
7862
7863 WDI_JoinReq must have been called.
7864
7865 @param wdiPostAssocReqParams: the assoc parameters as specified
7866 by the Device Interface
7867
7868 wdiPostAssocRspCb: callback for passing back the
7869 response of the post assoc operation received from the
7870 device
7871
7872 pUserData: user data will be passed back with the
7873 callback
7874
7875 @see WDI_JoinReq
7876 @return Result of the function call
7877*/
7878WDI_Status
7879WDI_PostAssocReq
7880(
7881 WDI_PostAssocReqParamsType* pwdiPostAssocReqParams,
7882 WDI_PostAssocRspCb wdiPostAssocRspCb,
7883 void* pUserData
7884);
7885
7886/**
7887 @brief WDI_DelSTAReq will be called when the upper MAC when an
7888 association with another STA has ended and the station
7889 must be deleted from HW. Upon the call of this API the
7890 WLAN DAL will pack and send a HAL Del STA request
7891 message to the lower RIVA sub-system if DAL is in state
7892 STARTED.
7893
7894 In state BUSY this request will be queued. Request won't
7895 be allowed in any other state.
7896
7897 WDI_PostAssocReq must have been called.
7898
7899 @param wdiDelSTAParams: the Del STA parameters as specified by
7900 the Device Interface
7901
7902 wdiDelSTARspCb: callback for passing back the response
7903 of the del STA operation received from the device
7904
7905 pUserData: user data will be passed back with the
7906 callback
7907
7908 @see WDI_PostAssocReq
7909 @return Result of the function call
7910*/
7911WDI_Status
7912WDI_DelSTAReq
7913(
7914 WDI_DelSTAReqParamsType* pwdiDelSTAParams,
7915 WDI_DelSTARspCb wdiDelSTARspCb,
7916 void* pUserData
7917);
7918
7919/*========================================================================
7920
7921 SECURITY APIs
7922
7923==========================================================================*/
7924
7925/**
7926 @brief WDI_SetBSSKeyReq will be called when the upper MAC ito
7927 install a BSS encryption key on the HW. Upon the call of
7928 this API the WLAN DAL will pack and send a HAL Start
7929 request message to the lower RIVA sub-system if DAL is
7930 in state STARTED.
7931
7932 In state BUSY this request will be queued. Request won't
7933 be allowed in any other state.
7934
7935 WDI_PostAssocReq must have been called.
7936
7937 @param wdiSetBSSKeyParams: the BSS Key set parameters as
7938 specified by the Device Interface
7939
7940 wdiSetBSSKeyRspCb: callback for passing back the
7941 response of the set BSS Key operation received from the
7942 device
7943
7944 pUserData: user data will be passed back with the
7945 callback
7946
7947 @see WDI_PostAssocReq
7948 @return Result of the function call
7949*/
7950WDI_Status
7951WDI_SetBSSKeyReq
7952(
7953 WDI_SetBSSKeyReqParamsType* pwdiSetBSSKeyParams,
7954 WDI_SetBSSKeyRspCb wdiSetBSSKeyRspCb,
7955 void* pUserData
7956);
7957
7958
7959/**
7960 @brief WDI_RemoveBSSKeyReq will be called when the upper MAC to
7961 uninstall a BSS key from HW. Upon the call of this API
7962 the WLAN DAL will pack and send a HAL Remove BSS Key
7963 request message to the lower RIVA sub-system if DAL is
7964 in state STARTED.
7965
7966 In state BUSY this request will be queued. Request won't
7967 be allowed in any other state.
7968
7969 WDI_SetBSSKeyReq must have been called.
7970
7971 @param wdiRemoveBSSKeyParams: the remove BSS key parameters as
7972 specified by the Device Interface
7973
7974 wdiRemoveBSSKeyRspCb: callback for passing back the
7975 response of the remove BSS key operation received from
7976 the device
7977
7978 pUserData: user data will be passed back with the
7979 callback
7980
7981 @see WDI_SetBSSKeyReq
7982 @return Result of the function call
7983*/
7984WDI_Status
7985WDI_RemoveBSSKeyReq
7986(
7987 WDI_RemoveBSSKeyReqParamsType* pwdiRemoveBSSKeyParams,
7988 WDI_RemoveBSSKeyRspCb wdiRemoveBSSKeyRspCb,
7989 void* pUserData
7990);
7991
7992
7993/**
7994 @brief WDI_SetSTAKeyReq will be called when the upper MAC is
7995 ready to install a STA(ast) encryption key in HW. Upon
7996 the call of this API the WLAN DAL will pack and send a
7997 HAL Set STA Key request message to the lower RIVA
7998 sub-system if DAL is in state STARTED.
7999
8000 In state BUSY this request will be queued. Request won't
8001 be allowed in any other state.
8002
8003 WDI_PostAssocReq must have been called.
8004
8005 @param wdiSetSTAKeyParams: the set STA key parameters as
8006 specified by the Device Interface
8007
8008 wdiSetSTAKeyRspCb: callback for passing back the
8009 response of the set STA key operation received from the
8010 device
8011
8012 pUserData: user data will be passed back with the
8013 callback
8014
8015 @see WDI_PostAssocReq
8016 @return Result of the function call
8017*/
8018WDI_Status
8019WDI_SetSTAKeyReq
8020(
8021 WDI_SetSTAKeyReqParamsType* pwdiSetSTAKeyParams,
8022 WDI_SetSTAKeyRspCb wdiSetSTAKeyRspCb,
8023 void* pUserData
8024);
8025
8026
8027/**
8028 @brief WDI_RemoveSTAKeyReq will be called when the upper MAC
8029 wants to unistall a previously set STA key in HW. Upon
8030 the call of this API the WLAN DAL will pack and send a
8031 HAL Remove STA Key request message to the lower RIVA
8032 sub-system if DAL is in state STARTED.
8033
8034 In state BUSY this request will be queued. Request won't
8035 be allowed in any other state.
8036
8037 WDI_SetSTAKeyReq must have been called.
8038
8039 @param wdiRemoveSTAKeyParams: the remove STA key parameters as
8040 specified by the Device Interface
8041
8042 wdiRemoveSTAKeyRspCb: callback for passing back the
8043 response of the remove STA key operation received from
8044 the device
8045
8046 pUserData: user data will be passed back with the
8047 callback
8048
8049 @see WDI_SetSTAKeyReq
8050 @return Result of the function call
8051*/
8052WDI_Status
8053WDI_RemoveSTAKeyReq
8054(
8055 WDI_RemoveSTAKeyReqParamsType* pwdiRemoveSTAKeyParams,
8056 WDI_RemoveSTAKeyRspCb wdiRemoveSTAKeyRspCb,
8057 void* pUserData
8058);
8059
8060/**
8061 @brief WDI_SetSTABcastKeyReq will be called when the upper MAC
8062 wants to install a STA Bcast encryption key on the HW.
8063 Upon the call of this API the WLAN DAL will pack and
8064 send a HAL Start request message to the lower RIVA
8065 sub-system if DAL is in state STARTED.
8066
8067 In state BUSY this request will be queued. Request won't
8068 be allowed in any other state.
8069
8070 WDI_PostAssocReq must have been called.
8071
8072 @param pwdiSetSTABcastKeyParams: the BSS Key set parameters as
8073 specified by the Device Interface
8074
8075 wdiSetSTABcastKeyRspCb: callback for passing back the
8076 response of the set BSS Key operation received from the
8077 device
8078
8079 pUserData: user data will be passed back with the
8080 callback
8081
8082 @see WDI_PostAssocReq
8083 @return Result of the function call
8084*/
8085WDI_Status
8086WDI_SetSTABcastKeyReq
8087(
8088 WDI_SetSTAKeyReqParamsType* pwdiSetSTABcastKeyParams,
8089 WDI_SetSTAKeyRspCb wdiSetSTABcastKeyRspCb,
8090 void* pUserData
8091);
8092
8093
8094/**
8095 @brief WDI_RemoveSTABcastKeyReq will be called when the upper
8096 MAC to uninstall a STA Bcast key from HW. Upon the call
8097 of this API the WLAN DAL will pack and send a HAL Remove
8098 STA Bcast Key request message to the lower RIVA
8099 sub-system if DAL is in state STARTED.
8100
8101 In state BUSY this request will be queued. Request won't
8102 be allowed in any other state.
8103
8104 WDI_SetSTABcastKeyReq must have been called.
8105
8106 @param pwdiRemoveSTABcastKeyParams: the remove BSS key
8107 parameters as specified by the Device
8108 Interface
8109
8110 wdiRemoveSTABcastKeyRspCb: callback for passing back the
8111 response of the remove STA Bcast key operation received
8112 from the device
8113
8114 pUserData: user data will be passed back with the
8115 callback
8116
8117 @see WDI_SetSTABcastKeyReq
8118 @return Result of the function call
8119*/
8120WDI_Status
8121WDI_RemoveSTABcastKeyReq
8122(
8123 WDI_RemoveSTAKeyReqParamsType* pwdiRemoveSTABcastKeyParams,
8124 WDI_RemoveSTAKeyRspCb wdiRemoveSTABcastKeyRspCb,
8125 void* pUserData
8126);
8127
schang86c22c42013-03-13 18:41:24 -07008128
8129/**
8130 @brief WDI_SetTxPowerReq will be called when the upper
8131 MAC wants to set Tx Power to HW.
8132 In state BUSY this request will be queued. Request won't
8133 be allowed in any other state.
8134
8135
8136 @param pwdiSetTxPowerParams: set TS Power parameters
8137 BSSID and target TX Power with dbm included
8138
8139 wdiReqStatusCb: callback for passing back the response
8140
8141 pUserData: user data will be passed back with the
8142 callback
8143
8144 @return Result of the function call
8145*/
8146WDI_Status
8147WDI_SetTxPowerReq
8148(
8149 WDI_SetTxPowerParamsType* pwdiSetTxPowerParams,
8150 WDA_SetTxPowerRspCb wdiReqStatusCb,
8151 void* pUserData
8152);
8153
Jeff Johnson295189b2012-06-20 16:38:30 -07008154/**
8155 @brief WDI_SetMaxTxPowerReq will be called when the upper
8156 MAC wants to set Max Tx Power to HW. Upon the
8157 call of this API the WLAN DAL will pack and send a HAL
8158 Remove STA Bcast Key request message to the lower RIVA
8159 sub-system if DAL is in state STARTED.
8160
8161 In state BUSY this request will be queued. Request won't
8162 be allowed in any other state.
8163
8164 WDI_SetSTABcastKeyReq must have been called.
8165
8166 @param pwdiRemoveSTABcastKeyParams: the remove BSS key
8167 parameters as specified by the Device
8168 Interface
8169
8170 wdiRemoveSTABcastKeyRspCb: callback for passing back the
8171 response of the remove STA Bcast key operation received
8172 from the device
8173
8174 pUserData: user data will be passed back with the
8175 callback
8176
8177 @see WDI_SetMaxTxPowerReq
8178 @return Result of the function call
8179*/
8180WDI_Status
8181WDI_SetMaxTxPowerReq
8182(
8183 WDI_SetMaxTxPowerParamsType* pwdiSetMaxTxPowerParams,
8184 WDA_SetMaxTxPowerRspCb wdiReqStatusCb,
8185 void* pUserData
8186);
8187
Arif Hussaina5ebce02013-08-09 15:09:58 -07008188/**
8189 @brief WDI_SetMaxTxPowerPerBandReq will be called when the upper
8190 MAC wants to set Max Tx Power to HW for specific band. Upon the
8191 call of this API the WLAN DAL will pack and send a HAL
8192 Set Max Tx Power Per Band request message to the lower RIVA
8193 sub-system if DAL is in state STARTED.
8194
8195 In state BUSY this request will be queued. Request won't
8196 be allowed in any other state.
8197
8198
8199 @param WDI_SetMaxTxPowerPerBandParamsType: Max Tx Per Band Info
8200
8201 WDA_SetMaxTxPowerPerBandRspCb: This callback is invoked by DAL
8202 when it has received a set max Tx Power Per Band response from
8203 the underlying device.
8204
8205 pUserData: user data will be passed back with the
8206 callback
8207
8208 @see WDI_SetMaxTxPowerPerBandReq
8209 @return Result of the function call
8210*/
8211WDI_Status
8212WDI_SetMaxTxPowerPerBandReq
8213(
8214 WDI_SetMaxTxPowerPerBandParamsType* pwdiSetMaxTxPowerPerBandParams,
8215 WDA_SetMaxTxPowerPerBandRspCb wdiReqStatusCb,
8216 void* pUserData
8217);
8218
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08008219#ifdef FEATURE_WLAN_ESE
Jeff Johnson295189b2012-06-20 16:38:30 -07008220/**
8221 @brief WDI_TSMStatsReq will be called by the upper MAC to fetch
8222 Traffic Stream metrics.
8223 In state BUSY this request will be queued. Request won't
8224 be allowed in any other state.
8225
8226 @param wdiAddTsReqParams: the add TS parameters as specified by
8227 the Device Interface
8228
8229 wdiAddTsRspCb: callback for passing back the response of
8230 the add TS operation received from the device
8231
8232 pUserData: user data will be passed back with the
8233 callback
8234
8235 @see WDI_PostAssocReq
8236 @return Result of the function call
8237*/
8238WDI_Status
8239WDI_TSMStatsReq
8240(
8241 WDI_TSMStatsReqParamsType* pwdiTsmStatsReqParams,
8242 WDI_TsmRspCb wdiTsmStatsRspCb,
8243 void* pUserData
8244);
8245
8246
8247#endif
8248
8249/*========================================================================
8250
8251 QoS and BA APIs
8252
8253==========================================================================*/
8254
8255/**
8256 @brief WDI_AddTSReq will be called when the upper MAC to inform
8257 the device of a successful add TSpec negotiation. HW
8258 needs to receive the TSpec Info from the UMAC in order
8259 to configure properly the QoS data traffic. Upon the
8260 call of this API the WLAN DAL will pack and send a HAL
8261 Add TS request message to the lower RIVA sub-system if
8262 DAL is in state STARTED.
8263
8264 In state BUSY this request will be queued. Request won't
8265 be allowed in any other state.
8266
8267 WDI_PostAssocReq must have been called.
8268
8269 @param wdiAddTsReqParams: the add TS parameters as specified by
8270 the Device Interface
8271
8272 wdiAddTsRspCb: callback for passing back the response of
8273 the add TS operation received from the device
8274
8275 pUserData: user data will be passed back with the
8276 callback
8277
8278 @see WDI_PostAssocReq
8279 @return Result of the function call
8280*/
8281WDI_Status
8282WDI_AddTSReq
8283(
8284 WDI_AddTSReqParamsType* pwdiAddTsReqParams,
8285 WDI_AddTsRspCb wdiAddTsRspCb,
8286 void* pUserData
8287);
8288
8289
8290
8291/**
8292 @brief WDI_DelTSReq will be called when the upper MAC has ended
8293 admission on a specific AC. This is to inform HW that
8294 QoS traffic parameters must be rest. Upon the call of
8295 this API the WLAN DAL will pack and send a HAL Del TS
8296 request message to the lower RIVA sub-system if DAL is
8297 in state STARTED.
8298
8299 In state BUSY this request will be queued. Request won't
8300 be allowed in any other state.
8301
8302 WDI_AddTSReq must have been called.
8303
8304 @param wdiDelTsReqParams: the del TS parameters as specified by
8305 the Device Interface
8306
8307 wdiDelTsRspCb: callback for passing back the response of
8308 the del TS operation received from the device
8309
8310 pUserData: user data will be passed back with the
8311 callback
8312
8313 @see WDI_AddTSReq
8314 @return Result of the function call
8315*/
8316WDI_Status
8317WDI_DelTSReq
8318(
8319 WDI_DelTSReqParamsType* pwdiDelTsReqParams,
8320 WDI_DelTsRspCb wdiDelTsRspCb,
8321 void* pUserData
8322);
8323
8324
8325
8326/**
8327 @brief WDI_UpdateEDCAParams will be called when the upper MAC
8328 wishes to update the EDCA parameters used by HW for QoS
8329 data traffic. Upon the call of this API the WLAN DAL
8330 will pack and send a HAL Update EDCA Params request
8331 message to the lower RIVA sub-system if DAL is in state
8332 STARTED.
8333
8334 In state BUSY this request will be queued. Request won't
8335 be allowed in any other state.
8336
8337 WDI_PostAssocReq must have been called.
8338
8339 @param wdiUpdateEDCAParams: the start parameters as specified
8340 by the Device Interface
8341
8342 wdiUpdateEDCAParamsRspCb: callback for passing back the
8343 response of the start operation received from the device
8344
8345 pUserData: user data will be passed back with the
8346 callback
8347
8348 @see WDI_PostAssocReq
8349 @return Result of the function call
8350*/
8351WDI_Status
8352WDI_UpdateEDCAParams
8353(
8354 WDI_UpdateEDCAParamsType* pwdiUpdateEDCAParams,
8355 WDI_UpdateEDCAParamsRspCb wdiUpdateEDCAParamsRspCb,
8356 void* pUserData
8357);
8358
8359
8360
8361/**
8362 @brief WDI_AddBASessionReq will be called when the upper MAC has setup
8363 successfully a BA session and needs to notify the HW for
8364 the appropriate settings to take place. Upon the call of
8365 this API the WLAN DAL will pack and send a HAL Add BA
8366 request message to the lower RIVA sub-system if DAL is
8367 in state STARTED.
8368
8369 In state BUSY this request will be queued. Request won't
8370 be allowed in any other state.
8371
8372 WDI_PostAssocReq must have been called.
8373
8374 @param wdiAddBAReqParams: the add BA parameters as specified by
8375 the Device Interface
8376
8377 wdiAddBARspCb: callback for passing back the response of
8378 the add BA operation received from the device
8379
8380 pUserData: user data will be passed back with the
8381 callback
8382
8383 @see WDI_PostAssocReq
8384 @return Result of the function call
8385*/
8386WDI_Status
8387WDI_AddBASessionReq
8388(
8389 WDI_AddBASessionReqParamsType* pwdiAddBASessionReqParams,
8390 WDI_AddBASessionRspCb wdiAddBASessionRspCb,
8391 void* pUserData
8392);
8393
8394
8395/**
8396 @brief WDI_DelBAReq will be called when the upper MAC wants to
8397 inform HW that it has deleted a previously created BA
8398 session. Upon the call of this API the WLAN DAL will
8399 pack and send a HAL Del BA request message to the lower
8400 RIVA sub-system if DAL is in state STARTED.
8401
8402 In state BUSY this request will be queued. Request won't
8403 be allowed in any other state.
8404
8405 WDI_AddBAReq must have been called.
8406
8407 @param wdiDelBAReqParams: the del BA parameters as specified by
8408 the Device Interface
8409
8410 wdiDelBARspCb: callback for passing back the response of
8411 the del BA operation received from the device
8412
8413 pUserData: user data will be passed back with the
8414 callback
8415
8416 @see WDI_AddBAReq
8417 @return Result of the function call
8418*/
8419WDI_Status
8420WDI_DelBAReq
8421(
8422 WDI_DelBAReqParamsType* pwdiDelBAReqParams,
8423 WDI_DelBARspCb wdiDelBARspCb,
8424 void* pUserData
8425);
8426
8427/**
8428 @brief WDI_UpdateBeaconParamsReq will be called when the upper MAC wants to
8429 inform HW that there is a change in the beacon parameters
8430 Upon the call of this API the WLAN DAL will
8431 pack and send a UpdateBeacon Params message to the lower
8432 RIVA sub-system if DAL is in state STARTED.
8433
8434 In state BUSY this request will be queued. Request won't
8435 be allowed in any other state.
8436
8437 WDI_UpdateBeaconParamsReq must have been called.
8438
8439 @param WDI_UpdateBeaconParamsType: the Update Beacon parameters as specified by
8440 the Device Interface
8441
8442 WDI_UpdateBeaconParamsRspCb: callback for passing back the response of
8443 the Update Beacon Params operation received from the device
8444
8445 pUserData: user data will be passed back with the
8446 callback
8447
8448 @see WDI_AddBAReq
8449 @return Result of the function call
8450*/
8451
8452WDI_Status
8453WDI_UpdateBeaconParamsReq
8454(
8455 WDI_UpdateBeaconParamsType * pwdiUpdateBeaconParams,
8456 WDI_UpdateBeaconParamsRspCb wdiUpdateBeaconParamsRspCb,
8457 void* pUserData
8458);
8459
8460
8461/**
8462 @brief WDI_SendBeaconParamsReq will be called when the upper MAC wants to
8463 update the beacon template to be transmitted as BT MAP STA/IBSS/Soft AP
8464 Upon the call of this API the WLAN DAL will
8465 pack and send the beacon Template message to the lower
8466 RIVA sub-system if DAL is in state STARTED.
8467
8468 In state BUSY this request will be queued. Request won't
8469 be allowed in any other state.
8470
8471 WDI_SendBeaconParamsReq must have been called.
8472
8473 @param WDI_SendBeaconParamsType: the Update Beacon parameters as specified by
8474 the Device Interface
8475
8476 WDI_SendBeaconParamsRspCb: callback for passing back the response of
8477 the Send Beacon Params operation received from the device
8478
8479 pUserData: user data will be passed back with the
8480 callback
8481
8482 @see WDI_AddBAReq
8483 @return Result of the function call
8484*/
8485
8486WDI_Status
8487WDI_SendBeaconParamsReq
8488(
8489 WDI_SendBeaconParamsType* pwdiSendBeaconParams,
8490 WDI_SendBeaconParamsRspCb wdiSendBeaconParamsRspCb,
8491 void* pUserData
8492);
8493
8494
8495/**
8496 @brief WDI_UpdateProbeRspTemplateReq will be called when the
8497 upper MAC wants to update the probe response template to
8498 be transmitted as Soft AP
8499 Upon the call of this API the WLAN DAL will
8500 pack and send the probe rsp template message to the
8501 lower RIVA sub-system if DAL is in state STARTED.
8502
8503 In state BUSY this request will be queued. Request won't
8504 be allowed in any other state.
8505
8506
8507 @param pwdiUpdateProbeRspParams: the Update Beacon parameters as
8508 specified by the Device Interface
8509
8510 wdiSendBeaconParamsRspCb: callback for passing back the
8511 response of the Send Beacon Params operation received
8512 from the device
8513
8514 pUserData: user data will be passed back with the
8515 callback
8516
8517 @see WDI_AddBAReq
8518 @return Result of the function call
8519*/
8520
8521WDI_Status
8522WDI_UpdateProbeRspTemplateReq
8523(
8524 WDI_UpdateProbeRspTemplateParamsType* pwdiUpdateProbeRspParams,
8525 WDI_UpdateProbeRspTemplateRspCb wdiSendBeaconParamsRspCb,
8526 void* pUserData
8527);
8528
Jeff Johnson295189b2012-06-20 16:38:30 -07008529/**
8530 @brief WDI_SetP2PGONOAReq will be called when the
8531 upper MAC wants to send Notice of Absence
8532 Upon the call of this API the WLAN DAL will
8533 pack and send the probe rsp template message to the
8534 lower RIVA sub-system if DAL is in state STARTED.
8535
8536 In state BUSY this request will be queued. Request won't
8537 be allowed in any other state.
8538
8539
8540 @param pwdiUpdateProbeRspParams: the Update Beacon parameters as
8541 specified by the Device Interface
8542
8543 wdiSendBeaconParamsRspCb: callback for passing back the
8544 response of the Send Beacon Params operation received
8545 from the device
8546
8547 pUserData: user data will be passed back with the
8548 callback
8549
8550 @see WDI_AddBAReq
8551 @return Result of the function call
8552*/
8553WDI_Status
8554WDI_SetP2PGONOAReq
8555(
8556 WDI_SetP2PGONOAReqParamsType* pwdiP2PGONOAReqParams,
8557 WDI_SetP2PGONOAReqParamsRspCb wdiP2PGONOAReqParamsRspCb,
8558 void* pUserData
8559);
Jeff Johnson295189b2012-06-20 16:38:30 -07008560
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05308561/**
8562 @brief WDI_SetTDLSLinkEstablishReq will be called when the
8563 upper MAC wants to send TDLS Link Establish Request Parameters
8564 Upon the call of this API the WLAN DAL will
8565 pack and send the TDLS Link Establish Request message to the
8566 lower RIVA sub-system if DAL is in state STARTED.
8567
8568 In state BUSY this request will be queued. Request won't
8569 be allowed in any other state.
8570
8571
8572 @param pwdiTDLSLinkEstablishReqParams: TDLS Peer Parameters
8573 for Link Establishment (Used for PUAPSD , TDLS Off Channel ...)
8574
8575 wdiTDLSLinkEstablishReqRspCb: callback for passing back the
8576 response of the TDLS Link Establish request received
8577 from the device
8578
8579 pUserData: user data will be passed back with the
8580 callback
8581
8582 @see
8583 @return Result of the function call
8584*/
8585WDI_Status
8586WDI_SetTDLSLinkEstablishReq
8587(
8588 WDI_SetTDLSLinkEstablishReqParamsType* pwdiTDLSLinkEstablishReqParams,
8589 WDI_SetTDLSLinkEstablishReqParamsRspCb wdiTDLSLinkEstablishReqRspCb,
8590 void* pUserData
8591);
Jeff Johnson295189b2012-06-20 16:38:30 -07008592
8593/*========================================================================
8594
8595 Power Save APIs
8596
8597==========================================================================*/
8598
8599/**
8600 @brief WDI_SetPwrSaveCfgReq will be called when the upper MAC
8601 wants to set the power save related configurations of
8602 the WLAN Device. Upon the call of this API the WLAN DAL
8603 will pack and send a HAL Update CFG request message to
8604 the lower RIVA sub-system if DAL is in state STARTED.
8605
8606 In state BUSY this request will be queued. Request won't
8607 be allowed in any other state.
8608
8609 WDI_Start must have been called.
8610
8611 @param pwdiPowerSaveCfg: the power save cfg parameters as
8612 specified by the Device Interface
8613
8614 wdiSetPwrSaveCfgCb: callback for passing back the
8615 response of the set power save cfg operation received
8616 from the device
8617
8618 pUserData: user data will be passed back with the
8619 callback
8620
8621 @see WDI_Start
8622 @return Result of the function call
8623*/
8624WDI_Status
8625WDI_SetPwrSaveCfgReq
8626(
8627 WDI_UpdateCfgReqParamsType* pwdiPowerSaveCfg,
8628 WDI_SetPwrSaveCfgCb wdiSetPwrSaveCfgCb,
8629 void* pUserData
8630);
8631
8632/**
8633 @brief WDI_EnterImpsReq will be called when the upper MAC to
8634 request the device to get into IMPS power state. Upon
8635 the call of this API the WLAN DAL will send a HAL Enter
8636 IMPS request message to the lower RIVA sub-system if DAL
8637 is in state STARTED.
8638
8639 In state BUSY this request will be queued. Request won't
8640 be allowed in any other state.
8641
8642
8643 @param wdiEnterImpsRspCb: callback for passing back the
8644 response of the Enter IMPS operation received from the
8645 device
8646
8647 pUserData: user data will be passed back with the
8648 callback
8649
8650 @see WDI_Start
8651 @return Result of the function call
8652*/
8653WDI_Status
8654WDI_EnterImpsReq
8655(
Mihir Shetea4306052014-03-25 00:02:54 +05308656 WDI_EnterImpsReqParamsType *pwdiEnterImpsReqParams,
Jeff Johnson295189b2012-06-20 16:38:30 -07008657 WDI_EnterImpsRspCb wdiEnterImpsRspCb,
8658 void* pUserData
8659);
8660
8661/**
8662 @brief WDI_ExitImpsReq will be called when the upper MAC to
8663 request the device to get out of IMPS power state. Upon
8664 the call of this API the WLAN DAL will send a HAL Exit
8665 IMPS request message to the lower RIVA sub-system if DAL
8666 is in state STARTED.
8667
8668 In state BUSY this request will be queued. Request won't
8669 be allowed in any other state.
8670
8671
8672
8673 @param wdiExitImpsRspCb: callback for passing back the response
8674 of the Exit IMPS operation received from the device
8675
8676 pUserData: user data will be passed back with the
8677 callback
8678
8679 @see WDI_Start
8680 @return Result of the function call
8681*/
8682WDI_Status
8683WDI_ExitImpsReq
8684(
8685 WDI_ExitImpsRspCb wdiExitImpsRspCb,
8686 void* pUserData
8687);
8688
8689/**
8690 @brief WDI_EnterBmpsReq will be called when the upper MAC to
8691 request the device to get into BMPS power state. Upon
8692 the call of this API the WLAN DAL will pack and send a
8693 HAL Enter BMPS request message to the lower RIVA
8694 sub-system if DAL is in state STARTED.
8695
8696 In state BUSY this request will be queued. Request won't
8697 be allowed in any other state.
8698
8699 WDI_PostAssocReq must have been called.
8700
8701 @param pwdiEnterBmpsReqParams: the Enter BMPS parameters as
8702 specified by the Device Interface
8703
8704 wdiEnterBmpsRspCb: callback for passing back the
8705 response of the Enter BMPS operation received from the
8706 device
8707
8708 pUserData: user data will be passed back with the
8709 callback
8710
8711 @see WDI_PostAssocReq
8712 @return Result of the function call
8713*/
8714WDI_Status
8715WDI_EnterBmpsReq
8716(
8717 WDI_EnterBmpsReqParamsType *pwdiEnterBmpsReqParams,
8718 WDI_EnterBmpsRspCb wdiEnterBmpsRspCb,
8719 void* pUserData
8720);
8721
8722/**
8723 @brief WDI_ExitBmpsReq will be called when the upper MAC to
8724 request the device to get out of BMPS power state. Upon
8725 the call of this API the WLAN DAL will pack and send a
8726 HAL Exit BMPS request message to the lower RIVA
8727 sub-system if DAL is in state STARTED.
8728
8729 In state BUSY this request will be queued. Request won't
8730 be allowed in any other state.
8731
8732 WDI_PostAssocReq must have been called.
8733
8734 @param pwdiExitBmpsReqParams: the Exit BMPS parameters as
8735 specified by the Device Interface
8736
8737 wdiExitBmpsRspCb: callback for passing back the response
8738 of the Exit BMPS operation received from the device
8739
8740 pUserData: user data will be passed back with the
8741 callback
8742
8743 @see WDI_PostAssocReq
8744 @return Result of the function call
8745*/
8746WDI_Status
8747WDI_ExitBmpsReq
8748(
8749 WDI_ExitBmpsReqParamsType *pwdiExitBmpsReqParams,
8750 WDI_ExitBmpsRspCb wdiExitBmpsRspCb,
8751 void* pUserData
8752);
8753
8754/**
8755 @brief WDI_EnterUapsdReq will be called when the upper MAC to
8756 request the device to get into UAPSD power state. Upon
8757 the call of this API the WLAN DAL will pack and send a
8758 HAL Enter UAPSD request message to the lower RIVA
8759 sub-system if DAL is in state STARTED.
8760
8761 In state BUSY this request will be queued. Request won't
8762 be allowed in any other state.
8763
8764 WDI_PostAssocReq must have been called.
8765 WDI_SetUapsdAcParamsReq must have been called.
8766
8767 @param pwdiEnterUapsdReqParams: the Enter UAPSD parameters as
8768 specified by the Device Interface
8769
8770 wdiEnterUapsdRspCb: callback for passing back the
8771 response of the Enter UAPSD operation received from the
8772 device
8773
8774 pUserData: user data will be passed back with the
8775 callback
8776
8777 @see WDI_PostAssocReq, WDI_SetUapsdAcParamsReq
8778 @return Result of the function call
8779*/
8780WDI_Status
8781WDI_EnterUapsdReq
8782(
8783 WDI_EnterUapsdReqParamsType *pwdiEnterUapsdReqParams,
8784 WDI_EnterUapsdRspCb wdiEnterUapsdRspCb,
8785 void* pUserData
8786);
8787
8788/**
8789 @brief WDI_ExitUapsdReq will be called when the upper MAC to
8790 request the device to get out of UAPSD power state. Upon
8791 the call of this API the WLAN DAL will send a HAL Exit
8792 UAPSD request message to the lower RIVA sub-system if
8793 DAL is in state STARTED.
8794
8795 In state BUSY this request will be queued. Request won't
8796 be allowed in any other state.
8797
8798 WDI_PostAssocReq must have been called.
8799
8800 @param wdiExitUapsdRspCb: callback for passing back the
8801 response of the Exit UAPSD operation received from the
8802 device
8803
8804 pUserData: user data will be passed back with the
8805 callback
8806
8807 @see WDI_PostAssocReq
8808 @return Result of the function call
8809*/
8810WDI_Status
8811WDI_ExitUapsdReq
8812(
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07008813 WDI_ExitUapsdReqParamsType *pwdiExitUapsdReqParams,
Jeff Johnson295189b2012-06-20 16:38:30 -07008814 WDI_ExitUapsdRspCb wdiExitUapsdRspCb,
8815 void* pUserData
8816);
8817
8818/**
8819 @brief WDI_UpdateUapsdParamsReq will be called when the upper
8820 MAC wants to set the UAPSD related configurations
8821 of an associated STA (while acting as an AP) to the WLAN
8822 Device. Upon the call of this API the WLAN DAL will pack
8823 and send a HAL Update UAPSD params request message to
8824 the lower RIVA sub-system if DAL is in state STARTED.
8825
8826 In state BUSY this request will be queued. Request won't
8827 be allowed in any other state.
8828
8829 WDI_ConfigBSSReq must have been called.
8830
8831 @param pwdiUpdateUapsdReqParams: the UAPSD parameters
8832 as specified by the Device Interface
8833
8834 wdiUpdateUapsdParamsCb: callback for passing back the
8835 response of the update UAPSD params operation received
8836 from the device
8837
8838 pUserData: user data will be passed back with the
8839 callback
8840
8841 @see WDI_ConfigBSSReq
8842 @return Result of the function call
8843*/
8844WDI_Status
8845WDI_UpdateUapsdParamsReq
8846(
8847 WDI_UpdateUapsdReqParamsType *pwdiUpdateUapsdReqParams,
8848 WDI_UpdateUapsdParamsCb wdiUpdateUapsdParamsCb,
8849 void* pUserData
8850);
8851
8852/**
8853 @brief WDI_SetUapsdAcParamsReq will be called when the upper
8854 MAC wants to set the UAPSD related configurations before
8855 requesting for enter UAPSD power state to the WLAN
8856 Device. Upon the call of this API the WLAN DAL will pack
8857 and send a HAL Set UAPSD params request message to
8858 the lower RIVA sub-system if DAL is in state STARTED.
8859
8860 In state BUSY this request will be queued. Request won't
8861 be allowed in any other state.
8862
8863 WDI_PostAssocReq must have been called.
8864
8865 @param pwdiUapsdInfo: the UAPSD parameters as specified by
8866 the Device Interface
8867
8868 wdiSetUapsdAcParamsCb: callback for passing back the
8869 response of the set UAPSD params operation received from
8870 the device
8871
8872 pUserData: user data will be passed back with the
8873 callback
8874
8875 @see WDI_PostAssocReq
8876 @return Result of the function call
8877*/
8878WDI_Status
8879WDI_SetUapsdAcParamsReq
8880(
8881 WDI_SetUapsdAcParamsReqParamsType* pwdiPowerSaveCfg,
8882 WDI_SetUapsdAcParamsCb wdiSetUapsdAcParamsCb,
8883 void* pUserData
8884);
8885
8886/**
8887 @brief WDI_ConfigureRxpFilterReq will be called when the upper
8888 MAC wants to set/reset the RXP filters for received pkts
8889 (MC, BC etc.). Upon the call of this API the WLAN DAL will pack
8890 and send a HAL configure RXP filter request message to
8891 the lower RIVA sub-system.
8892
8893 In state BUSY this request will be queued. Request won't
8894 be allowed in any other state.
8895
8896
8897 @param pwdiConfigureRxpFilterReqParams: the RXP
8898 filter as specified by the Device
8899 Interface
8900
8901 wdiConfigureRxpFilterCb: callback for passing back the
8902 response of the configure RXP filter operation received
8903 from the device
8904
8905 pUserData: user data will be passed back with the
8906 callback
8907
8908 @return Result of the function call
8909*/
8910WDI_Status
8911WDI_ConfigureRxpFilterReq
8912(
8913 WDI_ConfigureRxpFilterReqParamsType *pwdiConfigureRxpFilterReqParams,
8914 WDI_ConfigureRxpFilterCb wdiConfigureRxpFilterCb,
8915 void* pUserData
8916);
8917
8918/**
8919 @brief WDI_SetBeaconFilterReq will be called when the upper MAC
8920 wants to set the beacon filters while in power save.
8921 Upon the call of this API the WLAN DAL will pack and
8922 send a Beacon filter request message to the
8923 lower RIVA sub-system.
8924
8925 In state BUSY this request will be queued. Request won't
8926 be allowed in any other state.
8927
8928
8929 @param pwdiBeaconFilterReqParams: the beacon
8930 filter as specified by the Device
8931 Interface
8932
8933 wdiBeaconFilterCb: callback for passing back the
8934 response of the set beacon filter operation received
8935 from the device
8936
8937 pUserData: user data will be passed back with the
8938 callback
8939
8940 @return Result of the function call
8941*/
8942WDI_Status
8943WDI_SetBeaconFilterReq
8944(
8945 WDI_BeaconFilterReqParamsType *pwdiBeaconFilterReqParams,
8946 WDI_SetBeaconFilterCb wdiBeaconFilterCb,
8947 void* pUserData
8948);
8949
8950/**
8951 @brief WDI_RemBeaconFilterReq will be called when the upper MAC
8952 wants to remove the beacon filter for perticular IE
8953 while in power save. Upon the call of this API the WLAN
8954 DAL will pack and send a remove Beacon filter request
8955 message to the lower RIVA sub-system.
8956
8957 In state BUSY this request will be queued. Request won't
8958 be allowed in any other state.
8959
8960
8961 @param pwdiBeaconFilterReqParams: the beacon
8962 filter as specified by the Device
8963 Interface
8964
8965 wdiBeaconFilterCb: callback for passing back the
8966 response of the remove beacon filter operation received
8967 from the device
8968
8969 pUserData: user data will be passed back with the
8970 callback
8971
8972 @return Result of the function call
8973*/
8974WDI_Status
8975WDI_RemBeaconFilterReq
8976(
8977 WDI_RemBeaconFilterReqParamsType *pwdiBeaconFilterReqParams,
8978 WDI_RemBeaconFilterCb wdiBeaconFilterCb,
8979 void* pUserData
8980);
8981
8982/**
8983 @brief WDI_SetRSSIThresholdsReq will be called when the upper
8984 MAC wants to set the RSSI thresholds related
8985 configurations while in power save. Upon the call of
8986 this API the WLAN DAL will pack and send a HAL Set RSSI
8987 thresholds request message to the lower RIVA
8988 sub-system if DAL is in state STARTED.
8989
8990 In state BUSY this request will be queued. Request won't
8991 be allowed in any other state.
8992
8993 WDI_PostAssocReq must have been called.
8994
8995 @param pwdiUapsdInfo: the UAPSD parameters as specified by
8996 the Device Interface
8997
8998 wdiSetUapsdAcParamsCb: callback for passing back the
8999 response of the set UAPSD params operation received from
9000 the device
9001
9002 pUserData: user data will be passed back with the
9003 callback
9004
9005 @see WDI_PostAssocReq
9006 @return Result of the function call
9007*/
9008WDI_Status
9009WDI_SetRSSIThresholdsReq
9010(
9011 WDI_SetRSSIThresholdsReqParamsType* pwdiRSSIThresholdsParams,
9012 WDI_SetRSSIThresholdsCb wdiSetRSSIThresholdsCb,
9013 void* pUserData
9014);
9015
9016/**
9017 @brief WDI_HostOffloadReq will be called when the upper MAC
9018 wants to set the filter to minimize unnecessary host
9019 wakeup due to broadcast traffic while in power save.
9020 Upon the call of this API the WLAN DAL will pack and
9021 send a HAL host offload request message to the
9022 lower RIVA sub-system if DAL is in state STARTED.
9023
9024 In state BUSY this request will be queued. Request won't
9025 be allowed in any other state.
9026
9027 WDI_PostAssocReq must have been called.
9028
9029 @param pwdiHostOffloadParams: the host offload as specified
9030 by the Device Interface
9031
9032 wdiHostOffloadCb: callback for passing back the response
9033 of the host offload operation received from the
9034 device
9035
9036 pUserData: user data will be passed back with the
9037 callback
9038
9039 @see WDI_PostAssocReq
9040 @return Result of the function call
9041*/
9042WDI_Status
9043WDI_HostOffloadReq
9044(
9045 WDI_HostOffloadReqParamsType* pwdiHostOffloadParams,
9046 WDI_HostOffloadCb wdiHostOffloadCb,
9047 void* pUserData
9048);
9049
9050/**
9051 @brief WDI_KeepAliveReq will be called when the upper MAC
9052 wants to set the filter to send NULL or unsolicited ARP responses
9053 and minimize unnecessary host wakeups due to while in power save.
9054 Upon the call of this API the WLAN DAL will pack and
9055 send a HAL Keep Alive request message to the
9056 lower RIVA sub-system if DAL is in state STARTED.
9057
9058 In state BUSY this request will be queued. Request won't
9059 be allowed in any other state.
9060
9061 WDI_PostAssocReq must have been called.
9062
9063 @param pwdiKeepAliveParams: the Keep Alive as specified
9064 by the Device Interface
9065
9066 wdiKeepAliveCb: callback for passing back the response
9067 of the Keep Alive operation received from the
9068 device
9069
9070 pUserData: user data will be passed back with the
9071 callback
9072
9073 @see WDI_PostAssocReq
9074 @return Result of the function call
9075*/
9076WDI_Status
9077WDI_KeepAliveReq
9078(
9079 WDI_KeepAliveReqParamsType* pwdiKeepAliveParams,
9080 WDI_KeepAliveCb wdiKeepAliveCb,
9081 void* pUserData
9082);
9083
9084/**
9085 @brief WDI_WowlAddBcPtrnReq will be called when the upper MAC
9086 wants to set the Wowl Bcast ptrn to minimize unnecessary
9087 host wakeup due to broadcast traffic while in power
9088 save. Upon the call of this API the WLAN DAL will pack
9089 and send a HAL Wowl Bcast ptrn request message to the
9090 lower RIVA sub-system if DAL is in state STARTED.
9091
9092 In state BUSY this request will be queued. Request won't
9093 be allowed in any other state.
9094
9095 WDI_PostAssocReq must have been called.
9096
9097 @param pwdiWowlAddBcPtrnParams: the Wowl bcast ptrn as
9098 specified by the Device Interface
9099
9100 wdiWowlAddBcPtrnCb: callback for passing back the
9101 response of the add Wowl bcast ptrn operation received
9102 from the device
9103
9104 pUserData: user data will be passed back with the
9105 callback
9106
9107 @see WDI_PostAssocReq
9108 @return Result of the function call
9109*/
9110WDI_Status
9111WDI_WowlAddBcPtrnReq
9112(
9113 WDI_WowlAddBcPtrnReqParamsType* pwdiWowlAddBcPtrnParams,
9114 WDI_WowlAddBcPtrnCb wdiWowlAddBcPtrnCb,
9115 void* pUserData
9116);
9117
9118/**
9119 @brief WDI_WowlDelBcPtrnReq will be called when the upper MAC
9120 wants to clear the Wowl Bcast ptrn. Upon the call of
9121 this API the WLAN DAL will pack and send a HAL delete
9122 Wowl Bcast ptrn request message to the lower RIVA
9123 sub-system if DAL is in state STARTED.
9124
9125 In state BUSY this request will be queued. Request won't
9126 be allowed in any other state.
9127
9128 WDI_WowlAddBcPtrnReq must have been called.
9129
9130 @param pwdiWowlDelBcPtrnParams: the Wowl bcast ptrn as
9131 specified by the Device Interface
9132
9133 wdiWowlDelBcPtrnCb: callback for passing back the
9134 response of the del Wowl bcast ptrn operation received
9135 from the device
9136
9137 pUserData: user data will be passed back with the
9138 callback
9139
9140 @see WDI_WowlAddBcPtrnReq
9141 @return Result of the function call
9142*/
9143WDI_Status
9144WDI_WowlDelBcPtrnReq
9145(
9146 WDI_WowlDelBcPtrnReqParamsType* pwdiWowlDelBcPtrnParams,
9147 WDI_WowlDelBcPtrnCb wdiWowlDelBcPtrnCb,
9148 void* pUserData
9149);
9150
9151/**
9152 @brief WDI_WowlEnterReq will be called when the upper MAC
9153 wants to enter the Wowl state to minimize unnecessary
9154 host wakeup while in power save. Upon the call of this
9155 API the WLAN DAL will pack and send a HAL Wowl enter
9156 request message to the lower RIVA sub-system if DAL is
9157 in state STARTED.
9158
9159 In state BUSY this request will be queued. Request won't
9160 be allowed in any other state.
9161
9162 WDI_PostAssocReq must have been called.
9163
9164 @param pwdiWowlEnterReqParams: the Wowl enter info as
9165 specified by the Device Interface
9166
9167 wdiWowlEnterReqCb: callback for passing back the
9168 response of the enter Wowl operation received from the
9169 device
9170
9171 pUserData: user data will be passed back with the
9172 callback
9173
9174 @see WDI_PostAssocReq
9175 @return Result of the function call
9176*/
9177WDI_Status
9178WDI_WowlEnterReq
9179(
9180 WDI_WowlEnterReqParamsType* pwdiWowlEnterParams,
9181 WDI_WowlEnterReqCb wdiWowlEnterCb,
9182 void* pUserData
9183);
9184
9185/**
9186 @brief WDI_WowlExitReq will be called when the upper MAC
9187 wants to exit the Wowl state. Upon the call of this API
9188 the WLAN DAL will pack and send a HAL Wowl exit request
9189 message to the lower RIVA sub-system if DAL is in state
9190 STARTED.
9191
9192 In state BUSY this request will be queued. Request won't
9193 be allowed in any other state.
9194
9195 WDI_WowlEnterReq must have been called.
9196
9197 @param pwdiWowlExitReqParams: the Wowl exit info as
9198 specified by the Device Interface
9199
9200 wdiWowlExitReqCb: callback for passing back the response
9201 of the exit Wowl operation received from the device
9202
9203 pUserData: user data will be passed back with the
9204 callback
9205
9206 @see WDI_WowlEnterReq
9207 @return Result of the function call
9208*/
9209WDI_Status
9210WDI_WowlExitReq
9211(
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07009212 WDI_WowlExitReqParamsType* pwdiWowlExitParams,
Jeff Johnson295189b2012-06-20 16:38:30 -07009213 WDI_WowlExitReqCb wdiWowlExitCb,
9214 void* pUserData
9215);
9216
9217/**
9218 @brief WDI_ConfigureAppsCpuWakeupStateReq will be called when
9219 the upper MAC wants to dynamically adjusts the listen
9220 interval based on the WLAN/MSM activity. Upon the call
9221 of this API the WLAN DAL will pack and send a HAL
9222 configure Apps Cpu Wakeup State request message to the
9223 lower RIVA sub-system.
9224
9225 In state BUSY this request will be queued. Request won't
9226 be allowed in any other state.
9227
9228
9229 @param pwdiConfigureAppsCpuWakeupStateReqParams: the
9230 Apps Cpu Wakeup State as specified by the
9231 Device Interface
9232
9233 wdiConfigureAppsCpuWakeupStateCb: callback for passing
9234 back the response of the configure Apps Cpu Wakeup State
9235 operation received from the device
9236
9237 pUserData: user data will be passed back with the
9238 callback
9239
9240 @return Result of the function call
9241*/
9242WDI_Status
9243WDI_ConfigureAppsCpuWakeupStateReq
9244(
9245 WDI_ConfigureAppsCpuWakeupStateReqParamsType *pwdiConfigureAppsCpuWakeupStateReqParams,
9246 WDI_ConfigureAppsCpuWakeupStateCb wdiConfigureAppsCpuWakeupStateCb,
9247 void* pUserData
9248);
9249/**
9250 @brief WDI_FlushAcReq will be called when the upper MAC wants
9251 to to perform a flush operation on a given AC. Upon the
9252 call of this API the WLAN DAL will pack and send a HAL
9253 Flush AC request message to the lower RIVA sub-system if
9254 DAL is in state STARTED.
9255
9256 In state BUSY this request will be queued. Request won't
9257 be allowed in any other state.
9258
9259
9260 @param pwdiFlushAcReqParams: the Flush AC parameters as
9261 specified by the Device Interface
9262
9263 wdiFlushAcRspCb: callback for passing back the response
9264 of the Flush AC operation received from the device
9265
9266 pUserData: user data will be passed back with the
9267 callback
9268
9269 @return Result of the function call
9270*/
9271WDI_Status
9272WDI_FlushAcReq
9273(
9274 WDI_FlushAcReqParamsType* pwdiFlushAcReqParams,
9275 WDI_FlushAcRspCb wdiFlushAcRspCb,
9276 void* pUserData
9277);
9278
9279/**
9280 @brief WDI_BtAmpEventReq will be called when the upper MAC
9281 wants to notify the lower mac on a BT AMP event. This is
9282 to inform BTC-SLM that some BT AMP event occurred. Upon
9283 the call of this API the WLAN DAL will pack and send a
9284 HAL BT AMP event request message to the lower RIVA
9285 sub-system if DAL is in state STARTED.
9286
9287 In state BUSY this request will be queued. Request won't
9288 be allowed in any other state.
9289
9290
9291 @param wdiBtAmpEventReqParams: the BT AMP event parameters as
9292 specified by the Device Interface
9293
9294 wdiBtAmpEventRspCb: callback for passing back the
9295 response of the BT AMP event operation received from the
9296 device
9297
9298 pUserData: user data will be passed back with the
9299 callback
9300
9301 @return Result of the function call
9302*/
9303WDI_Status
9304WDI_BtAmpEventReq
9305(
9306 WDI_BtAmpEventParamsType* pwdiBtAmpEventReqParams,
9307 WDI_BtAmpEventRspCb wdiBtAmpEventRspCb,
9308 void* pUserData
9309);
9310
Jeff Johnsone7245742012-09-05 17:12:55 -07009311#ifdef FEATURE_OEM_DATA_SUPPORT
9312/**
9313 @brief WDI_Start oem data Req will be called when the upper MAC
9314 wants to notify the lower mac on a oem data Req event.Upon
9315 the call of this API the WLAN DAL will pack and send a
9316 HAL OEM Data Req event request message to the lower RIVA
9317 sub-system if DAL is in state STARTED.
9318
9319 In state BUSY this request will be queued. Request won't
9320 be allowed in any other state.
9321
9322
9323 @param pWdiOemDataReqParams: the oem data req parameters as
9324 specified by the Device Interface
9325
9326 wdiStartOemDataRspCb: callback for passing back the
9327 response of the Oem Data Req received from the
9328 device
9329
9330 pUserData: user data will be passed back with the
9331 callback
9332
9333 @return Result of the function call
9334*/
9335WDI_Status
9336WDI_StartOemDataReq
9337(
9338 WDI_oemDataReqParamsType* pWdiOemDataReqParams,
9339 WDI_oemDataRspCb wdiOemDataRspCb,
9340 void* pUserData
9341);
9342#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07009343
9344/*========================================================================
9345
9346 CONTROL APIs
9347
9348==========================================================================*/
9349/**
9350 @brief WDI_SwitchChReq will be called when the upper MAC wants
9351 the WLAN HW to change the current channel of operation.
9352 Upon the call of this API the WLAN DAL will pack and
9353 send a HAL Start request message to the lower RIVA
9354 sub-system if DAL is in state STARTED.
9355
9356 In state BUSY this request will be queued. Request won't
9357 be allowed in any other state.
9358
9359 WDI_Start must have been called.
9360
9361 @param wdiSwitchChReqParams: the switch ch parameters as
9362 specified by the Device Interface
9363
9364 wdiSwitchChRspCb: callback for passing back the response
9365 of the switch ch operation received from the device
9366
9367 pUserData: user data will be passed back with the
9368 callback
9369
9370 @see WDI_Start
9371 @return Result of the function call
9372*/
9373WDI_Status
9374WDI_SwitchChReq
9375(
9376 WDI_SwitchChReqParamsType* pwdiSwitchChReqParams,
9377 WDI_SwitchChRspCb wdiSwitchChRspCb,
9378 void* pUserData
9379);
9380
Manjunathappa Prakash86f78ca2014-02-10 18:09:15 -08009381/**
Kalikinkar dhara1e83b772014-02-06 12:59:22 -08009382 @brief WDI_SwitchChReq_V1 is similar to WDI_SwitchChReq except
9383 it also send type source for the channel change.
9384 WDI_Start must have been called.
9385
9386 @param wdiSwitchChReqParams: the switch ch parameters as
9387 specified by the Device Interface
9388
9389 wdiSwitchChRspCb: callback for passing back the response
9390 of the switch ch operation received from the device
9391
9392 pUserData: user data will be passed back with the
9393 callback
9394
9395 @see WDI_Start
9396 @return Result of the function call
9397*/
9398
9399WDI_Status
9400WDI_SwitchChReq_V1
9401(
9402 WDI_SwitchChReqParamsType_V1* pwdiSwitchChReqParams,
9403 WDI_SwitchChRspCb_V1 wdiSwitchChRspCb,
9404 void* pUserData
9405);
9406
9407/**
Manjunathappa Prakash86f78ca2014-02-10 18:09:15 -08009408 @brief WDI_UpdateChannelReq will be called when the upper MAC
9409 wants to update the channel list on change in country code.
Manjunathappa Prakash86f78ca2014-02-10 18:09:15 -08009410 In state BUSY this request will be queued. Request won't
9411 be allowed in any other state.
9412
9413 WDI_UpdateChannelReq must have been called.
9414
9415 @param wdiUpdateChannelReqParams: the updated channel parameters
9416 as specified by the Device Interface
9417
9418 wdiUpdateChannelRspCb: callback for passing back the
9419 response of the update channel operation received from
9420 the device
9421
9422 pUserData: user data will be passed back with the
9423 callback
9424
9425 @return Result of the function call
9426*/
9427WDI_Status
9428WDI_UpdateChannelReq
9429(
9430 WDI_UpdateChReqParamsType *pwdiUpdateChannelReqParams,
9431 WDI_UpdateChannelRspCb wdiUpdateChannelRspCb,
9432 void* pUserData
9433);
Jeff Johnson295189b2012-06-20 16:38:30 -07009434
9435/**
9436 @brief WDI_ConfigSTAReq will be called when the upper MAC
9437 wishes to add or update a STA in HW. Upon the call of
9438 this API the WLAN DAL will pack and send a HAL Start
9439 message request message to the lower RIVA sub-system if
9440 DAL is in state STARTED.
9441
9442 In state BUSY this request will be queued. Request won't
9443 be allowed in any other state.
9444
9445 WDI_Start must have been called.
9446
9447 @param wdiConfigSTAReqParams: the config STA parameters as
9448 specified by the Device Interface
9449
9450 wdiConfigSTARspCb: callback for passing back the
9451 response of the config STA operation received from the
9452 device
9453
9454 pUserData: user data will be passed back with the
9455 callback
9456
9457 @see WDI_Start
9458 @return Result of the function call
9459*/
9460WDI_Status
9461WDI_ConfigSTAReq
9462(
9463 WDI_ConfigSTAReqParamsType* pwdiConfigSTAReqParams,
9464 WDI_ConfigSTARspCb wdiConfigSTARspCb,
9465 void* pUserData
9466);
9467
9468/**
9469 @brief WDI_SetLinkStateReq will be called when the upper MAC
9470 wants to change the state of an ongoing link. Upon the
9471 call of this API the WLAN DAL will pack and send a HAL
9472 Start message request message to the lower RIVA
9473 sub-system if DAL is in state STARTED.
9474
9475 In state BUSY this request will be queued. Request won't
9476 be allowed in any other state.
9477
9478 WDI_JoinReq must have been called.
9479
9480 @param wdiSetLinkStateReqParams: the set link state parameters
9481 as specified by the Device Interface
9482
9483 wdiSetLinkStateRspCb: callback for passing back the
9484 response of the set link state operation received from
9485 the device
9486
9487 pUserData: user data will be passed back with the
9488 callback
9489
9490 @see WDI_JoinStartReq
9491 @return Result of the function call
9492*/
9493WDI_Status
9494WDI_SetLinkStateReq
9495(
9496 WDI_SetLinkReqParamsType* pwdiSetLinkStateReqParams,
9497 WDI_SetLinkStateRspCb wdiSetLinkStateRspCb,
9498 void* pUserData
9499);
9500
9501
9502/**
9503 @brief WDI_GetStatsReq will be called when the upper MAC wants
9504 to get statistics (MIB counters) from the device. Upon
9505 the call of this API the WLAN DAL will pack and send a
9506 HAL Start request message to the lower RIVA sub-system
9507 if DAL is in state STARTED.
9508
9509 In state BUSY this request will be queued. Request won't
9510 be allowed in any other state.
9511
9512 WDI_Start must have been called.
9513
9514 @param wdiGetStatsReqParams: the stats parameters to get as
9515 specified by the Device Interface
9516
9517 wdiGetStatsRspCb: callback for passing back the response
9518 of the get stats operation received from the device
9519
9520 pUserData: user data will be passed back with the
9521 callback
9522
9523 @see WDI_Start
9524 @return Result of the function call
9525*/
9526WDI_Status
9527WDI_GetStatsReq
9528(
9529 WDI_GetStatsReqParamsType* pwdiGetStatsReqParams,
9530 WDI_GetStatsRspCb wdiGetStatsRspCb,
9531 void* pUserData
9532);
9533
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08009534#if defined WLAN_FEATURE_VOWIFI_11R || defined FEATURE_WLAN_ESE || defined(FEATURE_WLAN_LFR)
Srinivas Girigowdad34cedb2013-01-25 13:33:11 -08009535/**
9536 @brief WDI_GetRoamRssiReq will be called when the upper MAC wants
9537 to get roam rssi from the device. Upon
9538 the call of this API the WLAN DAL will pack and send a
9539 HAL Start request message to the lower RIVA sub-system
9540 if DAL is in state STARTED.
9541
9542 In state BUSY this request will be queued. Request won't
9543 be allowed in any other state.
9544
9545 WDI_Start must have been called.
9546
9547 @param wdiGetRoamRssiReqParams: the stats parameters to get as
9548 specified by the Device Interface
9549
9550 wdiGetRoamRssispCb: callback for passing back the response
9551 of the get stats operation received from the device
9552
9553 pUserData: user data will be passed back with the
9554 callback
9555
9556 @see WDI_Start
9557 @return Result of the function call
9558*/
9559WDI_Status
9560WDI_GetRoamRssiReq
9561(
9562 WDI_GetRoamRssiReqParamsType* pwdiGetRoamRssiReqParams,
9563 WDI_GetRoamRssiRspCb wdiGetRoamRssiRspCb,
9564 void* pUserData
9565);
9566#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07009567
9568/**
9569 @brief WDI_UpdateCfgReq will be called when the upper MAC when
9570 it wishes to change the configuration of the WLAN
9571 Device. Upon the call of this API the WLAN DAL will pack
9572 and send a HAL Update CFG request message to the lower
9573 RIVA sub-system if DAL is in state STARTED.
9574
9575 In state BUSY this request will be queued. Request won't
9576 be allowed in any other state.
9577
9578 WDI_Start must have been called.
9579
9580 @param wdiUpdateCfgReqParams: the update cfg parameters as
9581 specified by the Device Interface
9582
9583 wdiUpdateCfgsRspCb: callback for passing back the
9584 response of the update cfg operation received from the
9585 device
9586
9587 pUserData: user data will be passed back with the
9588 callback
9589
9590 @see WDI_Start
9591 @return Result of the function call
9592*/
9593WDI_Status
9594WDI_UpdateCfgReq
9595(
9596 WDI_UpdateCfgReqParamsType* pwdiUpdateCfgReqParams,
9597 WDI_UpdateCfgRspCb wdiUpdateCfgsRspCb,
9598 void* pUserData
9599);
9600
9601/**
9602 @brief WDI_NvDownloadReq will be called by the UMAC to dowload the NV blob
9603 to the NV memory.
9604
9605 @param wdiNvDownloadReqParams: the NV Download parameters as specified by
9606 the Device Interface
9607
9608 wdiNvDownloadRspCb: callback for passing back the response of
9609 the NV Download operation received from the device
9610
9611 pUserData: user data will be passed back with the
9612 callback
9613
9614 @see WDI_PostAssocReq
9615 @return Result of the function call
9616*/
9617WDI_Status
9618WDI_NvDownloadReq
9619(
9620 WDI_NvDownloadReqParamsType* pwdiNvDownloadReqParams,
9621 WDI_NvDownloadRspCb wdiNvDownloadRspCb,
9622 void* pUserData
9623);
9624/**
9625 @brief WDI_AddBAReq will be called when the upper MAC has setup
9626 successfully a BA session and needs to notify the HW for
9627 the appropriate settings to take place. Upon the call of
9628 this API the WLAN DAL will pack and send a HAL Add BA
9629 request message to the lower RIVA sub-system if DAL is
9630 in state STARTED.
9631
9632 In state BUSY this request will be queued. Request won't
9633 be allowed in any other state.
9634
9635 WDI_PostAssocReq must have been called.
9636
9637 @param wdiAddBAReqParams: the add BA parameters as specified by
9638 the Device Interface
9639
9640 wdiAddBARspCb: callback for passing back the response of
9641 the add BA operation received from the device
9642
9643 pUserData: user data will be passed back with the
9644 callback
9645
9646 @see WDI_PostAssocReq
9647 @return Result of the function call
9648*/
9649WDI_Status
9650WDI_AddBAReq
9651(
9652 WDI_AddBAReqParamsType* pwdiAddBAReqParams,
9653 WDI_AddBARspCb wdiAddBARspCb,
9654 void* pUserData
9655);
9656
9657/**
9658 @brief WDI_TriggerBAReq will be called when the upper MAC has setup
9659 successfully a BA session and needs to notify the HW for
9660 the appropriate settings to take place. Upon the call of
9661 this API the WLAN DAL will pack and send a HAL Add BA
9662 request message to the lower RIVA sub-system if DAL is
9663 in state STARTED.
9664
9665 In state BUSY this request will be queued. Request won't
9666 be allowed in any other state.
9667
9668 WDI_PostAssocReq must have been called.
9669
9670 @param wdiAddBAReqParams: the add BA parameters as specified by
9671 the Device Interface
9672
9673 wdiAddBARspCb: callback for passing back the response of
9674 the add BA operation received from the device
9675
9676 pUserData: user data will be passed back with the
9677 callback
9678
9679 @see WDI_PostAssocReq
9680 @return Result of the function call
9681*/
9682WDI_Status
9683WDI_TriggerBAReq
9684(
9685 WDI_TriggerBAReqParamsType* pwdiTriggerBAReqParams,
9686 WDI_TriggerBARspCb wdiTriggerBARspCb,
9687 void* pUserData
9688);
9689
9690
9691/**
9692 @brief WDI_IsHwFrameTxTranslationCapable checks to see if HW
9693 frame xtl is enabled for a particular STA.
9694
9695 WDI_PostAssocReq must have been called.
9696
9697 @param uSTAIdx: STA index
9698
9699 @see WDI_PostAssocReq
9700 @return Result of the function call
9701*/
9702wpt_boolean WDI_IsHwFrameTxTranslationCapable
9703(
9704 wpt_uint8 uSTAIdx
9705);
9706
9707#ifdef WLAN_FEATURE_VOWIFI_11R
9708/**
9709 @brief WDI_AggrAddTSReq will be called when the upper MAC to inform
9710 the device of a successful add TSpec negotiation for 11r. HW
9711 needs to receive the TSpec Info from the UMAC in order
9712 to configure properly the QoS data traffic. Upon the
9713 call of this API the WLAN DAL will pack and send a HAL
9714 Aggregated Add TS request message to the lower RIVA sub-system if
9715 DAL is in state STARTED.
9716
9717 In state BUSY this request will be queued. Request won't
9718 be allowed in any other state.
9719
9720 WDI_PostAssocReq must have been called.
9721
9722 @param wdiAggrAddTsReqParams: the add TS parameters as specified by
9723 the Device Interface
9724
9725 wdiAggrAddTsRspCb: callback for passing back the response of
9726 the add TS operation received from the device
9727
9728 pUserData: user data will be passed back with the
9729 callback
9730
9731 @see WDI_PostAssocReq
9732 @return Result of the function call
9733*/
9734WDI_Status
9735WDI_AggrAddTSReq
9736(
9737 WDI_AggrAddTSReqParamsType* pwdiAddTsReqParams,
9738 WDI_AggrAddTsRspCb wdiAggrAddTsRspCb,
9739 void* pUserData
9740);
9741#endif /* WLAN_FEATURE_VOWIFI_11R */
9742/**
9743 @brief WDI_STATableInit - Initializes the STA tables.
9744 Allocates the necesary memory.
9745
9746
9747 @param pWDICtx: pointer to the WLAN DAL context
9748
9749 @see
9750 @return Result of the function call
9751*/
9752
9753WDI_Status WDI_StubRunTest
9754(
9755 wpt_uint8 ucTestNo
9756);
9757
Jeff Johnson295189b2012-06-20 16:38:30 -07009758/**
9759 @brief WDI_FTMCommandReq -
9760 Route FTMRequest Command to HAL
9761
9762 @param ftmCommandReq: FTM request command body
9763 @param ftmCommandRspCb: Response CB
9764 @param pUserData: User data will be included with CB
9765
9766 @return Result of the function call
9767*/
9768WDI_Status WDI_FTMCommandReq
9769(
9770 WDI_FTMCommandReqType *ftmCommandReq,
9771 WDI_FTMCommandRspCb ftmCommandRspCb,
9772 void *pUserData
9773);
Jeff Johnson295189b2012-06-20 16:38:30 -07009774
9775/**
9776 @brief WDI_HostResumeReq will be called
9777
9778 In state BUSY this request will be queued. Request won't
9779 be allowed in any other state.
9780
9781
9782 @param pwdiResumeReqParams: as specified by
9783 the Device Interface
9784
9785 wdiResumeReqRspCb: callback for passing back the response of
9786 the Resume Req received from the device
9787
9788 pUserData: user data will be passed back with the
9789 callback
9790
9791 @see WDI_PostAssocReq
9792 @return Result of the function call
9793*/
9794WDI_Status
9795WDI_HostResumeReq
9796(
9797 WDI_ResumeParamsType* pwdiResumeReqParams,
9798 WDI_HostResumeEventRspCb wdiResumeReqRspCb,
9799 void* pUserData
9800);
9801
9802/**
9803 @brief WDI_GetAvailableResCount - Function to get the available resource
9804 for data and managemnt frames.
9805
9806 @param pContext: pointer to the WDI context
9807 @param wdiResPool: type of resource pool requesting
9808 @see
9809 @return Result of the function call
9810*/
9811
9812wpt_uint32 WDI_GetAvailableResCount
9813(
9814 void *pContext,
9815 WDI_ResPoolType wdiResPool
9816);
9817
9818/**
9819 @brief WDI_SetAddSTASelfReq will be called when the
9820 UMAC wanted to add self STA while opening any new session
9821 In state BUSY this request will be queued. Request won't
9822 be allowed in any other state.
9823
9824
9825 @param pwdiAddSTASelfParams: the add self sta parameters as
9826 specified by the Device Interface
9827
9828 pUserData: user data will be passed back with the
9829 callback
9830
9831 @see
9832 @return Result of the function call
9833*/
9834WDI_Status
9835WDI_AddSTASelfReq
9836(
9837 WDI_AddSTASelfReqParamsType* pwdiAddSTASelfReqParams,
9838 WDI_AddSTASelfParamsRspCb wdiAddSTASelfReqParamsRspCb,
9839 void* pUserData
9840);
9841
9842
9843/**
9844 @brief WDI_DelSTASelfReq will be called .
9845
9846 @param WDI_DelSTASelfReqParamsType
9847
9848 WDI_DelSTASelfRspCb: callback for passing back the
9849 response of the del sta self operation received from the
9850 device
9851
9852 pUserData: user data will be passed back with the
9853 callback
9854
9855 @see WDI_PostAssocReq
9856 @return Result of the function call
9857*/
9858WDI_Status
9859WDI_DelSTASelfReq
9860(
9861 WDI_DelSTASelfReqParamsType* pwdiDelStaSelfParams,
9862 WDI_DelSTASelfRspCb wdiDelStaSelfRspCb,
9863 void* pUserData
9864);
9865
9866/**
9867 @brief WDI_HostSuspendInd
9868
9869 Suspend Indication from the upper layer will be sent
9870 down to HAL
9871
9872 @param WDI_SuspendParamsType
9873
9874 @see
9875
9876 @return Status of the request
9877*/
9878WDI_Status
9879WDI_HostSuspendInd
9880(
9881 WDI_SuspendParamsType* pwdiSuspendIndParams
9882);
9883
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08009884/**
9885 @brief WDI_TrafficStatsInd
9886
9887 Traffic Stats from the upper layer will be sent
9888 down to HAL
9889
9890 @param WDI_TrafficStatsIndType
9891
9892 @see
9893
9894 @return Status of the request
9895*/
9896WDI_Status
9897WDI_TrafficStatsInd
9898(
9899 WDI_TrafficStatsIndType *pWdiTrafficStatsIndParams
9900);
9901
Chet Lanctot186b5732013-03-18 10:26:30 -07009902#ifdef WLAN_FEATURE_11W
9903/**
9904 @brief WDI_ExcludeUnencryptedInd
9905 Register with HAL to receive/drop unencrypted frames
9906
9907 @param WDI_ExcludeUnencryptIndType
9908
9909 @see
9910
9911 @return Status of the request
9912*/
9913WDI_Status
9914WDI_ExcludeUnencryptedInd
9915(
9916 WDI_ExcludeUnencryptIndType *pWdiExcUnencParams
9917);
9918#endif
9919
Yue Mab9c86f42013-08-14 15:59:08 -07009920/**
9921 @brief WDI_AddPeriodicTxPtrnInd
9922
9923 @param WDI_AddPeriodicTxPtrnParamsType
9924
9925 @see
9926
9927 @return Status of the request
9928*/
9929WDI_Status
9930WDI_AddPeriodicTxPtrnInd
9931(
9932 WDI_AddPeriodicTxPtrnParamsType *addPeriodicTxPtrnParams
9933);
9934
9935/**
9936 @brief WDI_DelPeriodicTxPtrnInd
9937
9938 @param WDI_DelPeriodicTxPtrnParamsType
9939
9940 @see
9941
9942 @return Status of the request
9943*/
9944WDI_Status
9945WDI_DelPeriodicTxPtrnInd
9946(
9947 WDI_DelPeriodicTxPtrnParamsType *delPeriodicTxPtrnParams
9948);
9949
Jeff Johnson295189b2012-06-20 16:38:30 -07009950#ifdef FEATURE_WLAN_SCAN_PNO
9951/**
9952 @brief WDI_SetPreferredNetworkList
9953
9954 @param pwdiPNOScanReqParams: the Set PNO as specified
9955 by the Device Interface
9956
9957 wdiPNOScanCb: callback for passing back the response
9958 of the Set PNO operation received from the
9959 device
9960
9961 pUserData: user data will be passed back with the
9962 callback
9963
9964 @see WDI_PostAssocReq
9965 @return Result of the function call
9966*/
9967WDI_Status
9968WDI_SetPreferredNetworkReq
9969(
9970 WDI_PNOScanReqParamsType* pwdiPNOScanReqParams,
9971 WDI_PNOScanCb wdiPNOScanCb,
9972 void* pUserData
9973);
9974
9975/**
9976 @brief WDI_SetRssiFilterReq
9977
9978 @param pwdiRssiFilterReqParams: the Set RSSI Filter as
9979 specified by the Device Interface
9980
9981 wdiRssiFilterCb: callback for passing back the response
9982 of the Set RSSI Filter operation received from the
9983 device
9984
9985 pUserData: user data will be passed back with the
9986 callback
9987
9988 @see WDI_PostAssocReq
9989 @return Result of the function call
9990*/
9991WDI_Status
9992WDI_SetRssiFilterReq
9993(
9994 WDI_SetRssiFilterReqParamsType* pwdiRssiFilterReqParams,
9995 WDI_RssiFilterCb wdiRssiFilterCb,
9996 void* pUserData
9997);
9998
9999/**
10000 @brief WDI_UpdateScanParams
10001
10002 @param pwdiUpdateScanParamsInfoType: the Update Scan Params as specified
10003 by the Device Interface
10004
10005 wdiUpdateScanParamsCb: callback for passing back the response
10006 of the Set PNO operation received from the
10007 device
10008
10009 pUserData: user data will be passed back with the
10010 callback
10011
10012 @see WDI_PostAssocReq
10013 @return Result of the function call
10014*/
10015WDI_Status
10016WDI_UpdateScanParamsReq
10017(
10018 WDI_UpdateScanParamsInfoType* pwdiUpdateScanParamsInfoType,
10019 WDI_UpdateScanParamsCb wdiUpdateScanParamsCb,
10020 void* pUserData
10021);
10022#endif // FEATURE_WLAN_SCAN_PNO
10023
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -070010024#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
10025/**
Varun Reddy Yeturu920df212013-05-22 08:07:23 -070010026 @brief WDI_RoamScanOffloadReq
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -070010027
Varun Reddy Yeturu920df212013-05-22 08:07:23 -070010028 @param pwdiRoamScanOffloadReqParams: Start Roam Candidate Lookup Req as specified
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -070010029 by the Device Interface
10030
10031 wdiRoamOffloadScanCb: callback for passing back the response
10032 of the Start Roam Candidate Lookup operation received from the
10033 device
10034
10035 pUserData: user data will be passed back with the
10036 callback
10037
10038 @return Result of the function call
10039*/
10040WDI_Status
Varun Reddy Yeturu920df212013-05-22 08:07:23 -070010041WDI_RoamScanOffloadReq
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -070010042(
Varun Reddy Yeturu920df212013-05-22 08:07:23 -070010043 WDI_RoamScanOffloadReqParamsType *pwdiRoamScanOffloadReqParams,
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -070010044 WDI_RoamOffloadScanCb wdiRoamOffloadScancb,
10045 void* pUserData
10046);
10047#endif
10048
Jeff Johnson295189b2012-06-20 16:38:30 -070010049/**
10050 @brief WDI_SetTxPerTrackingReq will be called when the upper MAC
10051 wants to set the Tx Per Tracking configurations.
10052 Upon the call of this API the WLAN DAL will pack
10053 and send a HAL Set Tx Per Tracking request message to the
10054 lower RIVA sub-system if DAL is in state STARTED.
10055
10056 In state BUSY this request will be queued. Request won't
10057 be allowed in any other state.
10058
10059 @param wdiSetTxPerTrackingConf: the Set Tx PER Tracking configurations as
10060 specified by the Device Interface
10061
10062 wdiSetTxPerTrackingCb: callback for passing back the
10063 response of the set Tx PER Tracking configurations operation received
10064 from the device
10065
10066 pUserData: user data will be passed back with the
10067 callback
10068
10069 @return Result of the function call
10070*/
10071WDI_Status
10072WDI_SetTxPerTrackingReq
10073(
10074 WDI_SetTxPerTrackingReqParamsType* pwdiSetTxPerTrackingReqParams,
10075 WDI_SetTxPerTrackingRspCb pwdiSetTxPerTrackingRspCb,
10076 void* pUserData
10077);
10078
10079/**
10080 @brief WDI_SetTmLevelReq
10081 If HW Thermal condition changed, driver should react based on new
10082 HW thermal condition.
10083
10084 @param pwdiSetTmLevelReq: New thermal condition information
10085
10086 pwdiSetTmLevelRspCb: callback
10087
10088 usrData: user data will be passed back with the
10089 callback
10090
10091 @return Result of the function call
10092*/
10093WDI_Status
10094WDI_SetTmLevelReq
10095(
10096 WDI_SetTmLevelReqType *pwdiSetTmLevelReq,
10097 WDI_SetTmLevelCb pwdiSetTmLevelRspCb,
10098 void *usrData
10099);
10100
10101#ifdef WLAN_FEATURE_PACKET_FILTERING
10102/**
10103 @brief WDI_8023MulticastListReq
10104
10105 @param pwdiRcvFltPktSetMcListReqInfo: the Set 8023 Multicast
10106 List as specified by the Device Interface
10107
10108 wdi8023MulticastListCallback: callback for passing back
10109 the response of the Set 8023 Multicast List operation
10110 received from the device
10111
10112 pUserData: user data will be passed back with the
10113 callback
10114
10115 @see WDI_PostAssocReq
10116 @return Result of the function call
10117*/
10118WDI_Status
10119WDI_8023MulticastListReq
10120(
10121 WDI_RcvFltPktSetMcListReqParamsType* pwdiRcvFltPktSetMcListReqInfo,
10122 WDI_8023MulticastListCb wdi8023MulticastListCallback,
10123 void* pUserData
10124);
10125
10126/**
10127 @brief WDI_ReceiveFilterSetFilterReq
10128
10129 @param pwdiSetRcvPktFilterReqInfo: the Set Receive Filter as
10130 specified by the Device Interface
10131
10132 wdiReceiveFilterSetFilterReqCallback: callback for
10133 passing back the response of the Set Receive Filter
10134 operation received from the device
10135
10136 pUserData: user data will be passed back with the
10137 callback
10138
10139 @see WDI_PostAssocReq
10140 @return Result of the function call
10141*/
10142WDI_Status
10143WDI_ReceiveFilterSetFilterReq
10144(
10145 WDI_SetRcvPktFilterReqParamsType* pwdiSetRcvPktFilterReqInfo,
10146 WDI_ReceiveFilterSetFilterCb wdiReceiveFilterSetFilterReqCallback,
10147 void* pUserData
10148);
10149
10150/**
10151 @brief WDI_PCFilterMatchCountReq
10152
10153 @param pwdiRcvFltPktMatchCntReqInfo: get D0 PC Filter Match
10154 Count
10155
10156 wdiPCFilterMatchCountCallback: callback for passing back
10157 the response of the D0 PC Filter Match Count operation
10158 received from the device
10159
10160 pUserData: user data will be passed back with the
10161 callback
10162
10163 @see WDI_PostAssocReq
10164 @return Result of the function call
10165*/
10166WDI_Status
10167WDI_FilterMatchCountReq
10168(
10169 WDI_RcvFltPktMatchCntReqParamsType* pwdiRcvFltPktMatchCntReqInfo,
10170 WDI_FilterMatchCountCb wdiFilterMatchCountCallback,
10171 void* pUserData
10172);
10173
10174/**
10175 @brief WDI_ReceiveFilterClearFilterReq
10176
10177 @param pwdiRcvFltPktClearReqInfo: the Clear Filter as
10178 specified by the Device Interface
10179
10180 wdiReceiveFilterClearFilterCallback: callback for
10181 passing back the response of the Clear Filter
10182 operation received from the device
10183
10184 pUserData: user data will be passed back with the
10185 callback
10186
10187 @see WDI_PostAssocReq
10188 @return Result of the function call
10189*/
10190WDI_Status
10191WDI_ReceiveFilterClearFilterReq
10192(
10193 WDI_RcvFltPktClearReqParamsType* pwdiRcvFltPktClearReqInfo,
10194 WDI_ReceiveFilterClearFilterCb wdiReceiveFilterClearFilterCallback,
10195 void* pUserData
10196);
10197#endif // WLAN_FEATURE_PACKET_FILTERING
10198
10199/**
10200 @brief WDI_HALDumpCmdReq
10201 Post HAL DUMP Command Event
10202
10203 @param halDumpCmdReqParams: Hal Dump Command Body
10204 @param halDumpCmdRspCb: callback for passing back the
10205 response
10206 @param pUserData: Client Data
10207
10208 @see
10209 @return Result of the function call
10210*/
10211WDI_Status WDI_HALDumpCmdReq(
10212 WDI_HALDumpCmdReqParamsType *halDumpCmdReqParams,
10213 WDI_HALDumpCmdRspCb halDumpCmdRspCb,
10214 void *pUserData
10215);
10216
10217
10218/**
10219 @brief WDI_SetPowerParamsReq
10220
10221 @param pwdiPowerParamsReqParams: the Set Power Params as
10222 specified by the Device Interface
10223
10224 wdiPowerParamsCb: callback for passing back the response
10225 of the Set Power Params operation received from the
10226 device
10227
10228 pUserData: user data will be passed back with the
10229 callback
10230
10231 @return Result of the function call
10232*/
10233WDI_Status
10234WDI_SetPowerParamsReq
10235(
10236 WDI_SetPowerParamsReqParamsType* pwdiPowerParamsReqParams,
10237 WDI_SetPowerParamsCb wdiPowerParamsCb,
10238 void* pUserData
10239);
Sundaresan Ramachandran76e48e82013-07-15 13:07:17 +053010240/**
10241 @brief WDI_dhcpStartInd
10242 Forward the DHCP Start event
10243
10244 @param
10245
10246 wdiDHCPInd: device mode and MAC address is passed
10247
10248 @see
10249 @return Result of the function call
10250*/
10251
10252WDI_Status
10253WDI_dhcpStartInd
10254(
10255 WDI_DHCPInd *wdiDHCPInd
10256);
10257/**
10258 @brief WDI_dhcpStopReq
10259 Forward the DHCP Stop event
10260
10261 @param
10262
10263 wdiDHCPInd: device mode and MAC address is passed
10264
10265 @see
10266 @return Result of the function call
10267*/
10268
10269WDI_Status
10270WDI_dhcpStopInd
10271(
10272 WDI_DHCPInd *wdiDHCPInd
10273);
Jeff Johnson295189b2012-06-20 16:38:30 -070010274
Chittajit Mitraf5413a42013-10-18 14:20:08 -070010275/**
10276 @brief WDI_RateUpdateInd will be called when the upper MAC
10277 requests the device to update rates.
10278
10279 In state BUSY this request will be queued. Request won't
10280 be allowed in any other state.
10281
10282
10283 @param wdiRateUpdateIndParams
10284
10285
10286 @see WDI_Start
10287 @return Result of the function call
10288*/
10289WDI_Status
10290WDI_RateUpdateInd
10291(
10292 WDI_RateUpdateIndParams *wdiRateUpdateIndParams
10293);
10294
Jeff Johnson295189b2012-06-20 16:38:30 -070010295#ifdef WLAN_FEATURE_GTK_OFFLOAD
10296/**
10297 @brief WDI_GTKOffloadReq will be called when the upper MAC
10298 wants to set GTK Rekey Counter while in power save. Upon
10299 the call of this API the WLAN DAL will pack and send a
10300 HAL GTK offload request message to the lower RIVA
10301 sub-system if DAL is in state STARTED.
10302
10303 In state BUSY this request will be queued. Request won't
10304 be allowed in any other state.
10305
10306 WDI_PostAssocReq must have been called.
10307
10308 @param pwdiGtkOffloadParams: the GTK offload as specified
10309 by the Device Interface
10310
10311 wdiGtkOffloadCb: callback for passing back the response
10312 of the GTK offload operation received from the device
10313
10314 pUserData: user data will be passed back with the
10315 callback
10316
10317 @see WDI_PostAssocReq
10318 @return Result of the function call
10319*/
10320WDI_Status
10321WDI_GTKOffloadReq
10322(
10323 WDI_GtkOffloadReqMsg* pwdiGtkOffloadReqMsg,
10324 WDI_GtkOffloadCb wdiGtkOffloadCb,
10325 void* pUserData
10326);
10327
10328/**
10329 @brief WDI_GTKOffloadGetInfoReq will be called when the upper
10330 MAC wants to get GTK Rekey Counter while in power save.
10331 Upon the call of this API the WLAN DAL will pack and
10332 send a HAL GTK offload request message to the lower RIVA
10333 sub-system if DAL is in state STARTED.
10334
10335 In state BUSY this request will be queued. Request won't
10336 be allowed in any other state.
10337
10338 WDI_PostAssocReq must have been called.
10339
10340 @param pwdiGtkOffloadGetInfoReqMsg: the GTK Offload
10341 Information Message as specified by the
10342 Device Interface
10343
10344 wdiGtkOffloadGetInfoCb: callback for passing back the
10345 response of the GTK offload operation received from the
10346 device
10347
10348 pUserData: user data will be passed back with the
10349 callback
10350
10351 @see WDI_PostAssocReq
10352 @return Result of the function call
10353*/
10354WDI_Status
10355WDI_GTKOffloadGetInfoReq
10356(
10357 WDI_GtkOffloadGetInfoReqMsg* pwdiGtkOffloadGetInfoReqMsg,
10358 WDI_GtkOffloadGetInfoCb wdiGtkOffloadGetInfoCb,
10359 void* pUserData
10360);
10361#endif // WLAN_FEATURE_GTK_OFFLOAD
10362
10363/**
10364 @brief WDI_featureCapsExchangeReq
10365 Post feature capability bitmap exchange event.
10366 Host will send its own capability to FW in this req and
10367 expect FW to send its capability back as a bitmap in Response
10368
10369 @param
10370
10371 wdiFeatCapsExcRspCb: callback called on getting the response.
10372 It is kept to mantain similarity between WDI reqs and if needed, can
10373 be used in future. Currently, It is set to NULL
10374
10375 pUserData: user data will be passed back with the
10376 callback
10377
10378 @see
10379 @return Result of the function call
10380*/
10381WDI_Status
10382WDI_featureCapsExchangeReq
10383(
10384 WDI_featureCapsExchangeCb wdiFeatureCapsExchangeCb,
10385 void* pUserData
10386);
10387
10388/**
Yathish9f22e662012-12-10 14:21:35 -080010389 @brief Disable Active mode offload in Host
10390
10391 @param void
10392 @see
10393 @return void
10394*/
10395void
10396WDI_disableCapablityFeature(wpt_uint8 feature_index);
10397
10398
10399/**
Jeff Johnson295189b2012-06-20 16:38:30 -070010400 @brief WDI_getHostWlanFeatCaps
10401 WDI API that returns whether the feature passed to it as enum value in
10402 "placeHolderInCapBitmap" is supported by Host or not. It uses WDI global
10403 variable storing host capability bitmap to find this. This can be used by
10404 other moduels to decide certain things like call different APIs based on
10405 whether a particular feature is supported.
10406
10407 @param
10408
10409 feat_enum_value: enum value for the feature as in placeHolderInCapBitmap in wlan_hal_msg.h.
10410
10411 @see
10412 @return
10413 0 - if the feature is NOT supported in host
10414 any non-zero value - if the feature is SUPPORTED in host.
10415*/
10416wpt_uint8 WDI_getHostWlanFeatCaps(wpt_uint8 feat_enum_value);
10417
10418/**
10419 @brief WDI_getFwWlanFeatCaps
10420 WDI API that returns whether the feature passed to it as enum value in
10421 "placeHolderInCapBitmap" is supported by FW or not. It uses WDI global
10422 variable storing host capability bitmap to find this. This can be used by
10423 other moduels to decide certain things like call different APIs based on
10424 whether a particular feature is supported.
10425
10426 @param
10427
Jeff Johnsone7245742012-09-05 17:12:55 -070010428 feat_enum_value: enum value for the feature as in placeHolderInCapBitmap
10429 in wlan_hal_msg.h.
Jeff Johnson295189b2012-06-20 16:38:30 -070010430
10431 @see
10432 @return
10433 0 - if the feature is NOT supported in FW
10434 any non-zero value - if the feature is SUPPORTED in FW.
10435*/
10436wpt_uint8 WDI_getFwWlanFeatCaps(wpt_uint8 feat_enum_value);
10437
10438/**
10439 @brief WDI_GetWcnssCompiledApiVersion - Function to get wcnss compiled
10440 api version
10441
10442 @param WDI_WlanVersionType: Wlan version structure
10443 @see
10444 @return none
10445*/
10446
10447void WDI_GetWcnssCompiledApiVersion
10448(
10449 WDI_WlanVersionType *pWcnssApiVersion
10450);
10451
Mohit Khanna4a70d262012-09-11 16:30:12 -070010452#ifdef WLAN_FEATURE_11AC
10453WDI_Status
10454WDI_UpdateVHTOpModeReq
10455(
10456 WDI_UpdateVHTOpMode *pData,
10457 WDI_UpdateVHTOpModeCb wdiUpdateVHTOpModeCb,
10458 void* pUserData
10459);
Jeff Johnson295189b2012-06-20 16:38:30 -070010460
Mohit Khanna4a70d262012-09-11 16:30:12 -070010461#endif
Madan Mohan Koyyalamudi8cb53982012-09-28 14:34:47 -070010462
10463/**
10464 @brief WDI_TransportChannelDebug -
10465 Display DXE Channel debugging information
10466 User may request to display DXE channel snapshot
10467 Or if host driver detects any abnormal stcuk may display
10468
Jeff Johnsonb88db982012-12-10 13:34:59 -080010469 @param displaySnapshot : Display DXE snapshot option
Mihir Shete40a55652014-03-02 14:14:47 +053010470 @param debugFlags : Enable stall detect features
10471 defined by WPAL_DeviceDebugFlags
10472 These features may effect
10473 data performance.
Madan Mohan Koyyalamudi8cb53982012-09-28 14:34:47 -070010474 @see
10475 @return none
10476*/
10477void WDI_TransportChannelDebug
10478(
10479 wpt_boolean displaySnapshot,
Mihir Shete40a55652014-03-02 14:14:47 +053010480 wpt_uint8 debugFlags
Madan Mohan Koyyalamudi8cb53982012-09-28 14:34:47 -070010481);
10482
Madan Mohan Koyyalamudi0bfd0002012-10-24 14:39:37 -070010483/**
10484 @brief WDI_SsrTimerCB
10485 Callback function for SSR timer, if this is called then the graceful
10486 shutdown for Riva did not happen.
10487
10488 @param pUserData : user data to timer
10489
10490 @see
10491 @return none
10492*/
10493void
10494WDI_SsrTimerCB
10495(
10496 void *pUserData
10497);
10498
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -070010499/**
10500 @brief WDI_SetEnableSSR -
10501 This API is called to enable/disable SSR on WDI timeout.
10502
10503 @param enableSSR : enable/disable SSR
10504
10505 @see
10506 @return none
10507*/
10508void WDI_SetEnableSSR(wpt_boolean enableSSR);
10509
Leo Chang9056f462013-08-01 19:21:11 -070010510#ifdef FEATURE_WLAN_LPHB
10511/**
10512 @brief WDI_LPHBConfReq
10513 This API is called to config FW LPHB rule
10514
10515 @param lphbconfParam : LPHB rule should config to FW
10516 usrData : Client context
10517 lphbCfgCb : Configuration status callback
10518 @see
10519 @return SUCCESS or FAIL
10520*/
10521WDI_Status WDI_LPHBConfReq
10522(
10523 void *lphbconfParam,
10524 void *usrData,
10525 WDI_LphbCfgCb lphbCfgCb
10526);
10527#endif /* FEATURE_WLAN_LPHB */
Rajeev79dbe4c2013-10-05 11:03:42 +053010528
10529#ifdef FEATURE_WLAN_BATCH_SCAN
10530/**
10531 @brief WDI_SetBatchScanReq
10532 This API is called to set batch scan request in FW
10533
10534 @param pBatchScanReqParam : pointer to set batch scan re param
10535 usrData : Client context
10536 setBatchScanRspCb : set batch scan resp callback
10537 @see
10538 @return SUCCESS or FAIL
10539*/
10540WDI_Status WDI_SetBatchScanReq
10541(
10542 void *pBatchScanReqParam,
10543 void *usrData,
10544 WDI_SetBatchScanCb setBatchScanRspCb
10545);
10546
10547/**
10548 @brief WDI_StopBatchScanInd
10549
10550 @param none
10551
10552 @see
10553
10554 @return Status of the request
10555*/
10556WDI_Status
10557WDI_StopBatchScanInd(WDI_StopBatchScanIndType *pWdiReq);
10558
10559/**
10560 @brief WDI_TriggerBatchScanResultInd
10561 This API is called to pull batch scan result from FW
10562
10563 @param pBatchScanReqParam : pointer to trigger batch scan ind param
10564 usrData : Client context
10565 setBatchScanRspCb : get batch scan resp callback
10566 @see
10567 @return SUCCESS or FAIL
10568*/
10569WDI_Status
10570WDI_TriggerBatchScanResultInd(WDI_TriggerBatchScanResultIndType *pWdiReq);
10571
10572
10573#endif /*FEATURE_WLAN_BATCH_SCAN*/
10574
Sandeep Puligilla8b8b74b2014-02-10 16:39:05 +053010575/**
10576 @brief wdi_HT40OBSSScanInd
10577 This API is called to start OBSS scan
10578
10579 @param pWdiReq : pointer to get ind param
10580 @see
10581 @return SUCCESS or FAIL
10582*/
10583
10584WDI_Status WDI_HT40OBSSScanInd(WDI_HT40ObssScanParamsType *pWdiReq);
10585
10586/**
10587 @brief wdi_HT40OBSSStopScanInd
10588 This API is called to stop OBSS scan
10589
10590 @param bssIdx : bssIdx to stop
10591 @see
10592 @return SUCCESS or FAIL
10593*/
10594
10595WDI_Status WDI_HT40OBSSStopScanInd(wpt_uint8 bssIdx);
10596
Jeff Johnson295189b2012-06-20 16:38:30 -070010597#ifdef __cplusplus
10598 }
10599#endif
10600
Jeff Johnson295189b2012-06-20 16:38:30 -070010601#endif /* #ifndef WLAN_QCT_WDI_H */