blob: 70b5b685cd00fcc56902f8a51ecf9a49a16565f6 [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
Arun Kumar Khandavalliebb19482014-03-25 13:56:53 +05307482 @param devHandle: pointer to the OS specific device handle
Jeff Johnson295189b2012-06-20 16:38:30 -07007483 ppWDIGlobalCtx: output pointer of Global Context
7484 pWdiDevCapability: output pointer of device capability
7485
7486 @return Result of the function call
7487*/
7488WDI_Status
7489WDI_Init
7490(
Arun Kumar Khandavalliebb19482014-03-25 13:56:53 +05307491 void* devHandle,
Jeff Johnson295189b2012-06-20 16:38:30 -07007492 void** ppWDIGlobalCtx,
7493 WDI_DeviceCapabilityType* pWdiDevCapability,
7494 unsigned int driverType
7495);
7496
7497/**
7498 @brief WDI_Start will be called when the upper MAC is ready to
7499 commence operation with the WLAN Device. Upon the call
7500 of this API the WLAN DAL will pack and send a HAL Start
7501 message to the lower RIVA sub-system if the SMD channel
7502 has been fully opened and the RIVA subsystem is up.
7503
7504 If the RIVA sub-system is not yet up and running DAL
7505 will queue the request for Open and will wait for the
7506 SMD notification before attempting to send down the
7507 message to HAL.
7508
7509 WDI_Init must have been called.
7510
7511 @param wdiStartParams: the start parameters as specified by
7512 the Device Interface
7513
7514 wdiStartRspCb: callback for passing back the response of
7515 the start operation received from the device
7516
7517 pUserData: user data will be passed back with the
7518 callback
7519
7520 @see WDI_Start
7521 @return Result of the function call
7522*/
7523WDI_Status
7524WDI_Start
7525(
7526 WDI_StartReqParamsType* pwdiStartParams,
7527 WDI_StartRspCb wdiStartRspCb,
7528 void* pUserData
7529);
7530
7531
7532/**
7533 @brief WDI_Stop will be called when the upper MAC is ready to
7534 stop any operation with the WLAN Device. Upon the call
7535 of this API the WLAN DAL will pack and send a HAL Stop
7536 message to the lower RIVA sub-system if the DAL Core is
7537 in started state.
7538
7539 In state BUSY this request will be queued.
7540
7541 Request will not be accepted in any other state.
7542
7543 WDI_Start must have been called.
7544
7545 @param wdiStopParams: the stop parameters as specified by
7546 the Device Interface
7547
7548 wdiStopRspCb: callback for passing back the response of
7549 the stop operation received from the device
7550
7551 pUserData: user data will be passed back with the
7552 callback
7553
7554 @see WDI_Start
7555 @return Result of the function call
7556*/
7557WDI_Status
7558WDI_Stop
7559(
7560 WDI_StopReqParamsType* pwdiStopParams,
7561 WDI_StopRspCb wdiStopRspCb,
7562 void* pUserData
7563);
7564
7565/**
7566 @brief WDI_Close will be called when the upper MAC no longer
7567 needs to interract with DAL. DAL will free its control
7568 block.
7569
7570 It is only accepted in state STOPPED.
7571
7572 WDI_Stop must have been called.
7573
7574 @param none
7575
7576 @see WDI_Stop
7577 @return Result of the function call
7578*/
7579WDI_Status
7580WDI_Close
7581(
7582 void
7583);
7584
7585
7586/**
7587 @brief WDI_Shutdown will be called during 'SSR shutdown' operation.
7588 This will do most of the WDI stop & close
7589 operations without doing any handshake with Riva
7590
7591 This will also make sure that the control transport
7592 will NOT be closed.
7593
7594 This request will not be queued.
7595
7596
7597 WDI_Start must have been called.
7598
7599 @param closeTransport: Close control channel if this is set
7600
7601 @return Result of the function call
7602*/
7603WDI_Status
7604WDI_Shutdown
7605(
7606 wpt_boolean closeTransport
7607);
7608
7609/*========================================================================
7610
7611 SCAN APIs
7612
7613==========================================================================*/
7614
7615/**
7616 @brief WDI_InitScanReq will be called when the upper MAC wants
7617 the WLAN Device to get ready for a scan procedure. Upon
7618 the call of this API the WLAN DAL will pack and send a
7619 HAL Init Scan request message to the lower RIVA
7620 sub-system if DAL is in state STARTED.
7621
7622 In state BUSY this request will be queued. Request won't
7623 be allowed in any other state.
7624
7625 WDI_Start must have been called.
7626
7627 @param wdiInitScanParams: the init scan parameters as specified
7628 by the Device Interface
7629
7630 wdiInitScanRspCb: callback for passing back the response
7631 of the init scan operation received from the device
7632
7633 pUserData: user data will be passed back with the
7634 callback
7635
7636 @see WDI_Start
7637 @return Result of the function call
7638*/
7639WDI_Status
7640WDI_InitScanReq
7641(
7642 WDI_InitScanReqParamsType* pwdiInitScanParams,
7643 WDI_InitScanRspCb wdiInitScanRspCb,
7644 void* pUserData
7645);
7646
7647/**
7648 @brief WDI_StartScanReq will be called when the upper MAC
7649 wishes to change the Scan channel on the WLAN Device.
7650 Upon the call of this API the WLAN DAL will pack and
7651 send a HAL Start Scan request message to the lower RIVA
7652 sub-system if DAL is in state STARTED.
7653
7654 In state BUSY this request will be queued. Request won't
7655 be allowed in any other state.
7656
7657 WDI_InitScanReq must have been called.
7658
7659 @param wdiStartScanParams: the start scan parameters as
7660 specified by the Device Interface
7661
7662 wdiStartScanRspCb: callback for passing back the
7663 response of the start scan operation received from the
7664 device
7665
7666 pUserData: user data will be passed back with the
7667 callback
7668
7669 @see WDI_InitScanReq
7670 @return Result of the function call
7671*/
7672WDI_Status
7673WDI_StartScanReq
7674(
7675 WDI_StartScanReqParamsType* pwdiStartScanParams,
7676 WDI_StartScanRspCb wdiStartScanRspCb,
7677 void* pUserData
7678);
7679
7680
7681/**
7682 @brief WDI_EndScanReq will be called when the upper MAC is
7683 wants to end scanning for a particular channel that it
7684 had set before by calling Scan Start on the WLAN Device.
7685 Upon the call of this API the WLAN DAL will pack and
7686 send a HAL End Scan request message to the lower RIVA
7687 sub-system if DAL is in state STARTED.
7688
7689 In state BUSY this request will be queued. Request won't
7690 be allowed in any other state.
7691
7692 WDI_StartScanReq must have been called.
7693
7694 @param wdiEndScanParams: the end scan parameters as specified
7695 by the Device Interface
7696
7697 wdiEndScanRspCb: callback for passing back the response
7698 of the end scan operation received from the device
7699
7700 pUserData: user data will be passed back with the
7701 callback
7702
7703 @see WDI_StartScanReq
7704 @return Result of the function call
7705*/
7706WDI_Status
7707WDI_EndScanReq
7708(
7709 WDI_EndScanReqParamsType* pwdiEndScanParams,
7710 WDI_EndScanRspCb wdiEndScanRspCb,
7711 void* pUserData
7712);
7713
7714
7715/**
7716 @brief WDI_FinishScanReq will be called when the upper MAC has
7717 completed the scan process on the WLAN Device. Upon the
7718 call of this API the WLAN DAL will pack and send a HAL
7719 Finish Scan Request request message to the lower RIVA
7720 sub-system if DAL is in state STARTED.
7721
7722 In state BUSY this request will be queued. Request won't
7723 be allowed in any other state.
7724
7725 WDI_InitScanReq must have been called.
7726
7727 @param wdiFinishScanParams: the finish scan parameters as
7728 specified by the Device Interface
7729
7730 wdiFinishScanRspCb: callback for passing back the
7731 response of the finish scan operation received from the
7732 device
7733
7734 pUserData: user data will be passed back with the
7735 callback
7736
7737 @see WDI_InitScanReq
7738 @return Result of the function call
7739*/
7740WDI_Status
7741WDI_FinishScanReq
7742(
7743 WDI_FinishScanReqParamsType* pwdiFinishScanParams,
7744 WDI_FinishScanRspCb wdiFinishScanRspCb,
7745 void* pUserData
7746);
7747
7748/*========================================================================
7749
7750 ASSOCIATION APIs
7751
7752==========================================================================*/
7753
7754/**
7755 @brief WDI_JoinReq will be called when the upper MAC is ready
7756 to start an association procedure to a BSS. Upon the
7757 call of this API the WLAN DAL will pack and send a HAL
7758 Join request message to the lower RIVA sub-system if
7759 DAL is in state STARTED.
7760
7761 In state BUSY this request will be queued. Request won't
7762 be allowed in any other state.
7763
7764 WDI_Start must have been called.
7765
7766 @param wdiJoinParams: the join parameters as specified by
7767 the Device Interface
7768
7769 wdiJoinRspCb: callback for passing back the response of
7770 the join operation received from the device
7771
7772 pUserData: user data will be passed back with the
7773 callback
7774
7775 @see WDI_Start
7776 @return Result of the function call
7777*/
7778WDI_Status
7779WDI_JoinReq
7780(
7781 WDI_JoinReqParamsType* pwdiJoinParams,
7782 WDI_JoinRspCb wdiJoinRspCb,
7783 void* pUserData
7784);
7785
7786/**
7787 @brief WDI_ConfigBSSReq will be called when the upper MAC
7788 wishes to configure the newly acquired or in process of
7789 being acquired BSS to the HW . Upon the call of this API
7790 the WLAN DAL will pack and send a HAL Config BSS request
7791 message to the lower RIVA sub-system if DAL is in state
7792 STARTED.
7793
7794 In state BUSY this request will be queued. Request won't
7795 be allowed in any other state.
7796
7797 WDI_JoinReq must have been called.
7798
7799 @param wdiConfigBSSParams: the config BSS parameters as
7800 specified by the Device Interface
7801
7802 wdiConfigBSSRspCb: callback for passing back the
7803 response of the config BSS operation received from the
7804 device
7805
7806 pUserData: user data will be passed back with the
7807 callback
7808
7809 @see WDI_JoinReq
7810 @return Result of the function call
7811*/
7812WDI_Status
7813WDI_ConfigBSSReq
7814(
7815 WDI_ConfigBSSReqParamsType* pwdiConfigBSSParams,
7816 WDI_ConfigBSSRspCb wdiConfigBSSRspCb,
7817 void* pUserData
7818);
7819
7820/**
7821 @brief WDI_DelBSSReq will be called when the upper MAC is
7822 dissasociating from the BSS and wishes to notify HW.
7823 Upon the call of this API the WLAN DAL will pack and
7824 send a HAL Del BSS request message to the lower RIVA
7825 sub-system if DAL is in state STARTED.
7826
7827 In state BUSY this request will be queued. Request won't
7828 be allowed in any other state.
7829
7830 WDI_ConfigBSSReq or WDI_PostAssocReq must have been called.
7831
7832 @param wdiDelBSSParams: the del BSS parameters as specified by
7833 the Device Interface
7834
7835 wdiDelBSSRspCb: callback for passing back the response
7836 of the del bss operation received from the device
7837
7838 pUserData: user data will be passed back with the
7839 callback
7840
7841 @see WDI_ConfigBSSReq, WDI_PostAssocReq
7842 @return Result of the function call
7843*/
7844WDI_Status
7845WDI_DelBSSReq
7846(
7847 WDI_DelBSSReqParamsType* pwdiDelBSSParams,
7848 WDI_DelBSSRspCb wdiDelBSSRspCb,
7849 void* pUserData
7850);
7851
7852/**
7853 @brief WDI_PostAssocReq will be called when the upper MAC has
7854 associated to a BSS and wishes to configure HW for
7855 associated state. Upon the call of this API the WLAN DAL
7856 will pack and send a HAL Post Assoc request message to
7857 the lower RIVA sub-system if DAL is in state STARTED.
7858
7859 In state BUSY this request will be queued. Request won't
7860 be allowed in any other state.
7861
7862 WDI_JoinReq must have been called.
7863
7864 @param wdiPostAssocReqParams: the assoc parameters as specified
7865 by the Device Interface
7866
7867 wdiPostAssocRspCb: callback for passing back the
7868 response of the post assoc operation received from the
7869 device
7870
7871 pUserData: user data will be passed back with the
7872 callback
7873
7874 @see WDI_JoinReq
7875 @return Result of the function call
7876*/
7877WDI_Status
7878WDI_PostAssocReq
7879(
7880 WDI_PostAssocReqParamsType* pwdiPostAssocReqParams,
7881 WDI_PostAssocRspCb wdiPostAssocRspCb,
7882 void* pUserData
7883);
7884
7885/**
7886 @brief WDI_DelSTAReq will be called when the upper MAC when an
7887 association with another STA has ended and the station
7888 must be deleted from HW. Upon the call of this API the
7889 WLAN DAL will pack and send a HAL Del STA request
7890 message to the lower RIVA sub-system if DAL is in state
7891 STARTED.
7892
7893 In state BUSY this request will be queued. Request won't
7894 be allowed in any other state.
7895
7896 WDI_PostAssocReq must have been called.
7897
7898 @param wdiDelSTAParams: the Del STA parameters as specified by
7899 the Device Interface
7900
7901 wdiDelSTARspCb: callback for passing back the response
7902 of the del STA operation received from the device
7903
7904 pUserData: user data will be passed back with the
7905 callback
7906
7907 @see WDI_PostAssocReq
7908 @return Result of the function call
7909*/
7910WDI_Status
7911WDI_DelSTAReq
7912(
7913 WDI_DelSTAReqParamsType* pwdiDelSTAParams,
7914 WDI_DelSTARspCb wdiDelSTARspCb,
7915 void* pUserData
7916);
7917
7918/*========================================================================
7919
7920 SECURITY APIs
7921
7922==========================================================================*/
7923
7924/**
7925 @brief WDI_SetBSSKeyReq will be called when the upper MAC ito
7926 install a BSS encryption key on the HW. Upon the call of
7927 this API the WLAN DAL will pack and send a HAL Start
7928 request message to the lower RIVA sub-system if DAL is
7929 in state STARTED.
7930
7931 In state BUSY this request will be queued. Request won't
7932 be allowed in any other state.
7933
7934 WDI_PostAssocReq must have been called.
7935
7936 @param wdiSetBSSKeyParams: the BSS Key set parameters as
7937 specified by the Device Interface
7938
7939 wdiSetBSSKeyRspCb: callback for passing back the
7940 response of the set BSS Key operation received from the
7941 device
7942
7943 pUserData: user data will be passed back with the
7944 callback
7945
7946 @see WDI_PostAssocReq
7947 @return Result of the function call
7948*/
7949WDI_Status
7950WDI_SetBSSKeyReq
7951(
7952 WDI_SetBSSKeyReqParamsType* pwdiSetBSSKeyParams,
7953 WDI_SetBSSKeyRspCb wdiSetBSSKeyRspCb,
7954 void* pUserData
7955);
7956
7957
7958/**
7959 @brief WDI_RemoveBSSKeyReq will be called when the upper MAC to
7960 uninstall a BSS key from HW. Upon the call of this API
7961 the WLAN DAL will pack and send a HAL Remove BSS Key
7962 request message to the lower RIVA sub-system if DAL is
7963 in state STARTED.
7964
7965 In state BUSY this request will be queued. Request won't
7966 be allowed in any other state.
7967
7968 WDI_SetBSSKeyReq must have been called.
7969
7970 @param wdiRemoveBSSKeyParams: the remove BSS key parameters as
7971 specified by the Device Interface
7972
7973 wdiRemoveBSSKeyRspCb: callback for passing back the
7974 response of the remove BSS key operation received from
7975 the device
7976
7977 pUserData: user data will be passed back with the
7978 callback
7979
7980 @see WDI_SetBSSKeyReq
7981 @return Result of the function call
7982*/
7983WDI_Status
7984WDI_RemoveBSSKeyReq
7985(
7986 WDI_RemoveBSSKeyReqParamsType* pwdiRemoveBSSKeyParams,
7987 WDI_RemoveBSSKeyRspCb wdiRemoveBSSKeyRspCb,
7988 void* pUserData
7989);
7990
7991
7992/**
7993 @brief WDI_SetSTAKeyReq will be called when the upper MAC is
7994 ready to install a STA(ast) encryption key in HW. Upon
7995 the call of this API the WLAN DAL will pack and send a
7996 HAL Set STA Key request message to the lower RIVA
7997 sub-system if DAL is in state STARTED.
7998
7999 In state BUSY this request will be queued. Request won't
8000 be allowed in any other state.
8001
8002 WDI_PostAssocReq must have been called.
8003
8004 @param wdiSetSTAKeyParams: the set STA key parameters as
8005 specified by the Device Interface
8006
8007 wdiSetSTAKeyRspCb: callback for passing back the
8008 response of the set STA key operation received from the
8009 device
8010
8011 pUserData: user data will be passed back with the
8012 callback
8013
8014 @see WDI_PostAssocReq
8015 @return Result of the function call
8016*/
8017WDI_Status
8018WDI_SetSTAKeyReq
8019(
8020 WDI_SetSTAKeyReqParamsType* pwdiSetSTAKeyParams,
8021 WDI_SetSTAKeyRspCb wdiSetSTAKeyRspCb,
8022 void* pUserData
8023);
8024
8025
8026/**
8027 @brief WDI_RemoveSTAKeyReq will be called when the upper MAC
8028 wants to unistall a previously set STA key in HW. Upon
8029 the call of this API the WLAN DAL will pack and send a
8030 HAL Remove STA Key request message to the lower RIVA
8031 sub-system if DAL is in state STARTED.
8032
8033 In state BUSY this request will be queued. Request won't
8034 be allowed in any other state.
8035
8036 WDI_SetSTAKeyReq must have been called.
8037
8038 @param wdiRemoveSTAKeyParams: the remove STA key parameters as
8039 specified by the Device Interface
8040
8041 wdiRemoveSTAKeyRspCb: callback for passing back the
8042 response of the remove STA key operation received from
8043 the device
8044
8045 pUserData: user data will be passed back with the
8046 callback
8047
8048 @see WDI_SetSTAKeyReq
8049 @return Result of the function call
8050*/
8051WDI_Status
8052WDI_RemoveSTAKeyReq
8053(
8054 WDI_RemoveSTAKeyReqParamsType* pwdiRemoveSTAKeyParams,
8055 WDI_RemoveSTAKeyRspCb wdiRemoveSTAKeyRspCb,
8056 void* pUserData
8057);
8058
8059/**
8060 @brief WDI_SetSTABcastKeyReq will be called when the upper MAC
8061 wants to install a STA Bcast encryption key on the HW.
8062 Upon the call of this API the WLAN DAL will pack and
8063 send a HAL Start request message to the lower RIVA
8064 sub-system if DAL is in state STARTED.
8065
8066 In state BUSY this request will be queued. Request won't
8067 be allowed in any other state.
8068
8069 WDI_PostAssocReq must have been called.
8070
8071 @param pwdiSetSTABcastKeyParams: the BSS Key set parameters as
8072 specified by the Device Interface
8073
8074 wdiSetSTABcastKeyRspCb: callback for passing back the
8075 response of the set BSS Key operation received from the
8076 device
8077
8078 pUserData: user data will be passed back with the
8079 callback
8080
8081 @see WDI_PostAssocReq
8082 @return Result of the function call
8083*/
8084WDI_Status
8085WDI_SetSTABcastKeyReq
8086(
8087 WDI_SetSTAKeyReqParamsType* pwdiSetSTABcastKeyParams,
8088 WDI_SetSTAKeyRspCb wdiSetSTABcastKeyRspCb,
8089 void* pUserData
8090);
8091
8092
8093/**
8094 @brief WDI_RemoveSTABcastKeyReq will be called when the upper
8095 MAC to uninstall a STA Bcast key from HW. Upon the call
8096 of this API the WLAN DAL will pack and send a HAL Remove
8097 STA Bcast Key request message to the lower RIVA
8098 sub-system if DAL is in state STARTED.
8099
8100 In state BUSY this request will be queued. Request won't
8101 be allowed in any other state.
8102
8103 WDI_SetSTABcastKeyReq must have been called.
8104
8105 @param pwdiRemoveSTABcastKeyParams: the remove BSS key
8106 parameters as specified by the Device
8107 Interface
8108
8109 wdiRemoveSTABcastKeyRspCb: callback for passing back the
8110 response of the remove STA Bcast key operation received
8111 from the device
8112
8113 pUserData: user data will be passed back with the
8114 callback
8115
8116 @see WDI_SetSTABcastKeyReq
8117 @return Result of the function call
8118*/
8119WDI_Status
8120WDI_RemoveSTABcastKeyReq
8121(
8122 WDI_RemoveSTAKeyReqParamsType* pwdiRemoveSTABcastKeyParams,
8123 WDI_RemoveSTAKeyRspCb wdiRemoveSTABcastKeyRspCb,
8124 void* pUserData
8125);
8126
schang86c22c42013-03-13 18:41:24 -07008127
8128/**
8129 @brief WDI_SetTxPowerReq will be called when the upper
8130 MAC wants to set Tx Power to HW.
8131 In state BUSY this request will be queued. Request won't
8132 be allowed in any other state.
8133
8134
8135 @param pwdiSetTxPowerParams: set TS Power parameters
8136 BSSID and target TX Power with dbm included
8137
8138 wdiReqStatusCb: callback for passing back the response
8139
8140 pUserData: user data will be passed back with the
8141 callback
8142
8143 @return Result of the function call
8144*/
8145WDI_Status
8146WDI_SetTxPowerReq
8147(
8148 WDI_SetTxPowerParamsType* pwdiSetTxPowerParams,
8149 WDA_SetTxPowerRspCb wdiReqStatusCb,
8150 void* pUserData
8151);
8152
Jeff Johnson295189b2012-06-20 16:38:30 -07008153/**
8154 @brief WDI_SetMaxTxPowerReq will be called when the upper
8155 MAC wants to set Max Tx Power to HW. Upon the
8156 call of this API the WLAN DAL will pack and send a HAL
8157 Remove STA Bcast Key request message to the lower RIVA
8158 sub-system if DAL is in state STARTED.
8159
8160 In state BUSY this request will be queued. Request won't
8161 be allowed in any other state.
8162
8163 WDI_SetSTABcastKeyReq must have been called.
8164
8165 @param pwdiRemoveSTABcastKeyParams: the remove BSS key
8166 parameters as specified by the Device
8167 Interface
8168
8169 wdiRemoveSTABcastKeyRspCb: callback for passing back the
8170 response of the remove STA Bcast key operation received
8171 from the device
8172
8173 pUserData: user data will be passed back with the
8174 callback
8175
8176 @see WDI_SetMaxTxPowerReq
8177 @return Result of the function call
8178*/
8179WDI_Status
8180WDI_SetMaxTxPowerReq
8181(
8182 WDI_SetMaxTxPowerParamsType* pwdiSetMaxTxPowerParams,
8183 WDA_SetMaxTxPowerRspCb wdiReqStatusCb,
8184 void* pUserData
8185);
8186
Arif Hussaina5ebce02013-08-09 15:09:58 -07008187/**
8188 @brief WDI_SetMaxTxPowerPerBandReq will be called when the upper
8189 MAC wants to set Max Tx Power to HW for specific band. Upon the
8190 call of this API the WLAN DAL will pack and send a HAL
8191 Set Max Tx Power Per Band request message to the lower RIVA
8192 sub-system if DAL is in state STARTED.
8193
8194 In state BUSY this request will be queued. Request won't
8195 be allowed in any other state.
8196
8197
8198 @param WDI_SetMaxTxPowerPerBandParamsType: Max Tx Per Band Info
8199
8200 WDA_SetMaxTxPowerPerBandRspCb: This callback is invoked by DAL
8201 when it has received a set max Tx Power Per Band response from
8202 the underlying device.
8203
8204 pUserData: user data will be passed back with the
8205 callback
8206
8207 @see WDI_SetMaxTxPowerPerBandReq
8208 @return Result of the function call
8209*/
8210WDI_Status
8211WDI_SetMaxTxPowerPerBandReq
8212(
8213 WDI_SetMaxTxPowerPerBandParamsType* pwdiSetMaxTxPowerPerBandParams,
8214 WDA_SetMaxTxPowerPerBandRspCb wdiReqStatusCb,
8215 void* pUserData
8216);
8217
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08008218#ifdef FEATURE_WLAN_ESE
Jeff Johnson295189b2012-06-20 16:38:30 -07008219/**
8220 @brief WDI_TSMStatsReq will be called by the upper MAC to fetch
8221 Traffic Stream metrics.
8222 In state BUSY this request will be queued. Request won't
8223 be allowed in any other state.
8224
8225 @param wdiAddTsReqParams: the add TS parameters as specified by
8226 the Device Interface
8227
8228 wdiAddTsRspCb: callback for passing back the response of
8229 the add TS operation received from the device
8230
8231 pUserData: user data will be passed back with the
8232 callback
8233
8234 @see WDI_PostAssocReq
8235 @return Result of the function call
8236*/
8237WDI_Status
8238WDI_TSMStatsReq
8239(
8240 WDI_TSMStatsReqParamsType* pwdiTsmStatsReqParams,
8241 WDI_TsmRspCb wdiTsmStatsRspCb,
8242 void* pUserData
8243);
8244
8245
8246#endif
8247
8248/*========================================================================
8249
8250 QoS and BA APIs
8251
8252==========================================================================*/
8253
8254/**
8255 @brief WDI_AddTSReq will be called when the upper MAC to inform
8256 the device of a successful add TSpec negotiation. HW
8257 needs to receive the TSpec Info from the UMAC in order
8258 to configure properly the QoS data traffic. Upon the
8259 call of this API the WLAN DAL will pack and send a HAL
8260 Add TS request message to the lower RIVA sub-system if
8261 DAL is in state STARTED.
8262
8263 In state BUSY this request will be queued. Request won't
8264 be allowed in any other state.
8265
8266 WDI_PostAssocReq must have been called.
8267
8268 @param wdiAddTsReqParams: the add TS parameters as specified by
8269 the Device Interface
8270
8271 wdiAddTsRspCb: callback for passing back the response of
8272 the add TS operation received from the device
8273
8274 pUserData: user data will be passed back with the
8275 callback
8276
8277 @see WDI_PostAssocReq
8278 @return Result of the function call
8279*/
8280WDI_Status
8281WDI_AddTSReq
8282(
8283 WDI_AddTSReqParamsType* pwdiAddTsReqParams,
8284 WDI_AddTsRspCb wdiAddTsRspCb,
8285 void* pUserData
8286);
8287
8288
8289
8290/**
8291 @brief WDI_DelTSReq will be called when the upper MAC has ended
8292 admission on a specific AC. This is to inform HW that
8293 QoS traffic parameters must be rest. Upon the call of
8294 this API the WLAN DAL will pack and send a HAL Del TS
8295 request message to the lower RIVA sub-system if DAL is
8296 in state STARTED.
8297
8298 In state BUSY this request will be queued. Request won't
8299 be allowed in any other state.
8300
8301 WDI_AddTSReq must have been called.
8302
8303 @param wdiDelTsReqParams: the del TS parameters as specified by
8304 the Device Interface
8305
8306 wdiDelTsRspCb: callback for passing back the response of
8307 the del TS operation received from the device
8308
8309 pUserData: user data will be passed back with the
8310 callback
8311
8312 @see WDI_AddTSReq
8313 @return Result of the function call
8314*/
8315WDI_Status
8316WDI_DelTSReq
8317(
8318 WDI_DelTSReqParamsType* pwdiDelTsReqParams,
8319 WDI_DelTsRspCb wdiDelTsRspCb,
8320 void* pUserData
8321);
8322
8323
8324
8325/**
8326 @brief WDI_UpdateEDCAParams will be called when the upper MAC
8327 wishes to update the EDCA parameters used by HW for QoS
8328 data traffic. Upon the call of this API the WLAN DAL
8329 will pack and send a HAL Update EDCA Params request
8330 message to the lower RIVA sub-system if DAL is in state
8331 STARTED.
8332
8333 In state BUSY this request will be queued. Request won't
8334 be allowed in any other state.
8335
8336 WDI_PostAssocReq must have been called.
8337
8338 @param wdiUpdateEDCAParams: the start parameters as specified
8339 by the Device Interface
8340
8341 wdiUpdateEDCAParamsRspCb: callback for passing back the
8342 response of the start operation received from the device
8343
8344 pUserData: user data will be passed back with the
8345 callback
8346
8347 @see WDI_PostAssocReq
8348 @return Result of the function call
8349*/
8350WDI_Status
8351WDI_UpdateEDCAParams
8352(
8353 WDI_UpdateEDCAParamsType* pwdiUpdateEDCAParams,
8354 WDI_UpdateEDCAParamsRspCb wdiUpdateEDCAParamsRspCb,
8355 void* pUserData
8356);
8357
8358
8359
8360/**
8361 @brief WDI_AddBASessionReq will be called when the upper MAC has setup
8362 successfully a BA session and needs to notify the HW for
8363 the appropriate settings to take place. Upon the call of
8364 this API the WLAN DAL will pack and send a HAL Add BA
8365 request message to the lower RIVA sub-system if DAL is
8366 in state STARTED.
8367
8368 In state BUSY this request will be queued. Request won't
8369 be allowed in any other state.
8370
8371 WDI_PostAssocReq must have been called.
8372
8373 @param wdiAddBAReqParams: the add BA parameters as specified by
8374 the Device Interface
8375
8376 wdiAddBARspCb: callback for passing back the response of
8377 the add BA operation received from the device
8378
8379 pUserData: user data will be passed back with the
8380 callback
8381
8382 @see WDI_PostAssocReq
8383 @return Result of the function call
8384*/
8385WDI_Status
8386WDI_AddBASessionReq
8387(
8388 WDI_AddBASessionReqParamsType* pwdiAddBASessionReqParams,
8389 WDI_AddBASessionRspCb wdiAddBASessionRspCb,
8390 void* pUserData
8391);
8392
8393
8394/**
8395 @brief WDI_DelBAReq will be called when the upper MAC wants to
8396 inform HW that it has deleted a previously created BA
8397 session. Upon the call of this API the WLAN DAL will
8398 pack and send a HAL Del BA request message to the lower
8399 RIVA sub-system if DAL is in state STARTED.
8400
8401 In state BUSY this request will be queued. Request won't
8402 be allowed in any other state.
8403
8404 WDI_AddBAReq must have been called.
8405
8406 @param wdiDelBAReqParams: the del BA parameters as specified by
8407 the Device Interface
8408
8409 wdiDelBARspCb: callback for passing back the response of
8410 the del BA operation received from the device
8411
8412 pUserData: user data will be passed back with the
8413 callback
8414
8415 @see WDI_AddBAReq
8416 @return Result of the function call
8417*/
8418WDI_Status
8419WDI_DelBAReq
8420(
8421 WDI_DelBAReqParamsType* pwdiDelBAReqParams,
8422 WDI_DelBARspCb wdiDelBARspCb,
8423 void* pUserData
8424);
8425
8426/**
8427 @brief WDI_UpdateBeaconParamsReq will be called when the upper MAC wants to
8428 inform HW that there is a change in the beacon parameters
8429 Upon the call of this API the WLAN DAL will
8430 pack and send a UpdateBeacon Params message to the lower
8431 RIVA sub-system if DAL is in state STARTED.
8432
8433 In state BUSY this request will be queued. Request won't
8434 be allowed in any other state.
8435
8436 WDI_UpdateBeaconParamsReq must have been called.
8437
8438 @param WDI_UpdateBeaconParamsType: the Update Beacon parameters as specified by
8439 the Device Interface
8440
8441 WDI_UpdateBeaconParamsRspCb: callback for passing back the response of
8442 the Update Beacon Params operation received from the device
8443
8444 pUserData: user data will be passed back with the
8445 callback
8446
8447 @see WDI_AddBAReq
8448 @return Result of the function call
8449*/
8450
8451WDI_Status
8452WDI_UpdateBeaconParamsReq
8453(
8454 WDI_UpdateBeaconParamsType * pwdiUpdateBeaconParams,
8455 WDI_UpdateBeaconParamsRspCb wdiUpdateBeaconParamsRspCb,
8456 void* pUserData
8457);
8458
8459
8460/**
8461 @brief WDI_SendBeaconParamsReq will be called when the upper MAC wants to
8462 update the beacon template to be transmitted as BT MAP STA/IBSS/Soft AP
8463 Upon the call of this API the WLAN DAL will
8464 pack and send the beacon Template message to the lower
8465 RIVA sub-system if DAL is in state STARTED.
8466
8467 In state BUSY this request will be queued. Request won't
8468 be allowed in any other state.
8469
8470 WDI_SendBeaconParamsReq must have been called.
8471
8472 @param WDI_SendBeaconParamsType: the Update Beacon parameters as specified by
8473 the Device Interface
8474
8475 WDI_SendBeaconParamsRspCb: callback for passing back the response of
8476 the Send Beacon Params operation received from the device
8477
8478 pUserData: user data will be passed back with the
8479 callback
8480
8481 @see WDI_AddBAReq
8482 @return Result of the function call
8483*/
8484
8485WDI_Status
8486WDI_SendBeaconParamsReq
8487(
8488 WDI_SendBeaconParamsType* pwdiSendBeaconParams,
8489 WDI_SendBeaconParamsRspCb wdiSendBeaconParamsRspCb,
8490 void* pUserData
8491);
8492
8493
8494/**
8495 @brief WDI_UpdateProbeRspTemplateReq will be called when the
8496 upper MAC wants to update the probe response template to
8497 be transmitted as Soft AP
8498 Upon the call of this API the WLAN DAL will
8499 pack and send the probe rsp template message to the
8500 lower RIVA sub-system if DAL is in state STARTED.
8501
8502 In state BUSY this request will be queued. Request won't
8503 be allowed in any other state.
8504
8505
8506 @param pwdiUpdateProbeRspParams: the Update Beacon parameters as
8507 specified by the Device Interface
8508
8509 wdiSendBeaconParamsRspCb: callback for passing back the
8510 response of the Send Beacon Params operation received
8511 from the device
8512
8513 pUserData: user data will be passed back with the
8514 callback
8515
8516 @see WDI_AddBAReq
8517 @return Result of the function call
8518*/
8519
8520WDI_Status
8521WDI_UpdateProbeRspTemplateReq
8522(
8523 WDI_UpdateProbeRspTemplateParamsType* pwdiUpdateProbeRspParams,
8524 WDI_UpdateProbeRspTemplateRspCb wdiSendBeaconParamsRspCb,
8525 void* pUserData
8526);
8527
Jeff Johnson295189b2012-06-20 16:38:30 -07008528/**
8529 @brief WDI_SetP2PGONOAReq will be called when the
8530 upper MAC wants to send Notice of Absence
8531 Upon the call of this API the WLAN DAL will
8532 pack and send the probe rsp template message to the
8533 lower RIVA sub-system if DAL is in state STARTED.
8534
8535 In state BUSY this request will be queued. Request won't
8536 be allowed in any other state.
8537
8538
8539 @param pwdiUpdateProbeRspParams: the Update Beacon parameters as
8540 specified by the Device Interface
8541
8542 wdiSendBeaconParamsRspCb: callback for passing back the
8543 response of the Send Beacon Params operation received
8544 from the device
8545
8546 pUserData: user data will be passed back with the
8547 callback
8548
8549 @see WDI_AddBAReq
8550 @return Result of the function call
8551*/
8552WDI_Status
8553WDI_SetP2PGONOAReq
8554(
8555 WDI_SetP2PGONOAReqParamsType* pwdiP2PGONOAReqParams,
8556 WDI_SetP2PGONOAReqParamsRspCb wdiP2PGONOAReqParamsRspCb,
8557 void* pUserData
8558);
Jeff Johnson295189b2012-06-20 16:38:30 -07008559
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05308560/**
8561 @brief WDI_SetTDLSLinkEstablishReq will be called when the
8562 upper MAC wants to send TDLS Link Establish Request Parameters
8563 Upon the call of this API the WLAN DAL will
8564 pack and send the TDLS Link Establish Request message to the
8565 lower RIVA sub-system if DAL is in state STARTED.
8566
8567 In state BUSY this request will be queued. Request won't
8568 be allowed in any other state.
8569
8570
8571 @param pwdiTDLSLinkEstablishReqParams: TDLS Peer Parameters
8572 for Link Establishment (Used for PUAPSD , TDLS Off Channel ...)
8573
8574 wdiTDLSLinkEstablishReqRspCb: callback for passing back the
8575 response of the TDLS Link Establish request received
8576 from the device
8577
8578 pUserData: user data will be passed back with the
8579 callback
8580
8581 @see
8582 @return Result of the function call
8583*/
8584WDI_Status
8585WDI_SetTDLSLinkEstablishReq
8586(
8587 WDI_SetTDLSLinkEstablishReqParamsType* pwdiTDLSLinkEstablishReqParams,
8588 WDI_SetTDLSLinkEstablishReqParamsRspCb wdiTDLSLinkEstablishReqRspCb,
8589 void* pUserData
8590);
Jeff Johnson295189b2012-06-20 16:38:30 -07008591
8592/*========================================================================
8593
8594 Power Save APIs
8595
8596==========================================================================*/
8597
8598/**
8599 @brief WDI_SetPwrSaveCfgReq will be called when the upper MAC
8600 wants to set the power save related configurations of
8601 the WLAN Device. Upon the call of this API the WLAN DAL
8602 will pack and send a HAL Update CFG request message to
8603 the lower RIVA sub-system if DAL is in state STARTED.
8604
8605 In state BUSY this request will be queued. Request won't
8606 be allowed in any other state.
8607
8608 WDI_Start must have been called.
8609
8610 @param pwdiPowerSaveCfg: the power save cfg parameters as
8611 specified by the Device Interface
8612
8613 wdiSetPwrSaveCfgCb: callback for passing back the
8614 response of the set power save cfg operation received
8615 from the device
8616
8617 pUserData: user data will be passed back with the
8618 callback
8619
8620 @see WDI_Start
8621 @return Result of the function call
8622*/
8623WDI_Status
8624WDI_SetPwrSaveCfgReq
8625(
8626 WDI_UpdateCfgReqParamsType* pwdiPowerSaveCfg,
8627 WDI_SetPwrSaveCfgCb wdiSetPwrSaveCfgCb,
8628 void* pUserData
8629);
8630
8631/**
8632 @brief WDI_EnterImpsReq will be called when the upper MAC to
8633 request the device to get into IMPS power state. Upon
8634 the call of this API the WLAN DAL will send a HAL Enter
8635 IMPS request message to the lower RIVA sub-system if DAL
8636 is in state STARTED.
8637
8638 In state BUSY this request will be queued. Request won't
8639 be allowed in any other state.
8640
8641
8642 @param wdiEnterImpsRspCb: callback for passing back the
8643 response of the Enter IMPS operation received from the
8644 device
8645
8646 pUserData: user data will be passed back with the
8647 callback
8648
8649 @see WDI_Start
8650 @return Result of the function call
8651*/
8652WDI_Status
8653WDI_EnterImpsReq
8654(
Mihir Shetea4306052014-03-25 00:02:54 +05308655 WDI_EnterImpsReqParamsType *pwdiEnterImpsReqParams,
Jeff Johnson295189b2012-06-20 16:38:30 -07008656 WDI_EnterImpsRspCb wdiEnterImpsRspCb,
8657 void* pUserData
8658);
8659
8660/**
8661 @brief WDI_ExitImpsReq will be called when the upper MAC to
8662 request the device to get out of IMPS power state. Upon
8663 the call of this API the WLAN DAL will send a HAL Exit
8664 IMPS request message to the lower RIVA sub-system if DAL
8665 is in state STARTED.
8666
8667 In state BUSY this request will be queued. Request won't
8668 be allowed in any other state.
8669
8670
8671
8672 @param wdiExitImpsRspCb: callback for passing back the response
8673 of the Exit IMPS operation received from the device
8674
8675 pUserData: user data will be passed back with the
8676 callback
8677
8678 @see WDI_Start
8679 @return Result of the function call
8680*/
8681WDI_Status
8682WDI_ExitImpsReq
8683(
8684 WDI_ExitImpsRspCb wdiExitImpsRspCb,
8685 void* pUserData
8686);
8687
8688/**
8689 @brief WDI_EnterBmpsReq will be called when the upper MAC to
8690 request the device to get into BMPS power state. Upon
8691 the call of this API the WLAN DAL will pack and send a
8692 HAL Enter BMPS request message to the lower RIVA
8693 sub-system if DAL is in state STARTED.
8694
8695 In state BUSY this request will be queued. Request won't
8696 be allowed in any other state.
8697
8698 WDI_PostAssocReq must have been called.
8699
8700 @param pwdiEnterBmpsReqParams: the Enter BMPS parameters as
8701 specified by the Device Interface
8702
8703 wdiEnterBmpsRspCb: callback for passing back the
8704 response of the Enter BMPS operation received from the
8705 device
8706
8707 pUserData: user data will be passed back with the
8708 callback
8709
8710 @see WDI_PostAssocReq
8711 @return Result of the function call
8712*/
8713WDI_Status
8714WDI_EnterBmpsReq
8715(
8716 WDI_EnterBmpsReqParamsType *pwdiEnterBmpsReqParams,
8717 WDI_EnterBmpsRspCb wdiEnterBmpsRspCb,
8718 void* pUserData
8719);
8720
8721/**
8722 @brief WDI_ExitBmpsReq will be called when the upper MAC to
8723 request the device to get out of BMPS power state. Upon
8724 the call of this API the WLAN DAL will pack and send a
8725 HAL Exit BMPS request message to the lower RIVA
8726 sub-system if DAL is in state STARTED.
8727
8728 In state BUSY this request will be queued. Request won't
8729 be allowed in any other state.
8730
8731 WDI_PostAssocReq must have been called.
8732
8733 @param pwdiExitBmpsReqParams: the Exit BMPS parameters as
8734 specified by the Device Interface
8735
8736 wdiExitBmpsRspCb: callback for passing back the response
8737 of the Exit BMPS operation received from the device
8738
8739 pUserData: user data will be passed back with the
8740 callback
8741
8742 @see WDI_PostAssocReq
8743 @return Result of the function call
8744*/
8745WDI_Status
8746WDI_ExitBmpsReq
8747(
8748 WDI_ExitBmpsReqParamsType *pwdiExitBmpsReqParams,
8749 WDI_ExitBmpsRspCb wdiExitBmpsRspCb,
8750 void* pUserData
8751);
8752
8753/**
8754 @brief WDI_EnterUapsdReq will be called when the upper MAC to
8755 request the device to get into UAPSD power state. Upon
8756 the call of this API the WLAN DAL will pack and send a
8757 HAL Enter UAPSD request message to the lower RIVA
8758 sub-system if DAL is in state STARTED.
8759
8760 In state BUSY this request will be queued. Request won't
8761 be allowed in any other state.
8762
8763 WDI_PostAssocReq must have been called.
8764 WDI_SetUapsdAcParamsReq must have been called.
8765
8766 @param pwdiEnterUapsdReqParams: the Enter UAPSD parameters as
8767 specified by the Device Interface
8768
8769 wdiEnterUapsdRspCb: callback for passing back the
8770 response of the Enter UAPSD operation received from the
8771 device
8772
8773 pUserData: user data will be passed back with the
8774 callback
8775
8776 @see WDI_PostAssocReq, WDI_SetUapsdAcParamsReq
8777 @return Result of the function call
8778*/
8779WDI_Status
8780WDI_EnterUapsdReq
8781(
8782 WDI_EnterUapsdReqParamsType *pwdiEnterUapsdReqParams,
8783 WDI_EnterUapsdRspCb wdiEnterUapsdRspCb,
8784 void* pUserData
8785);
8786
8787/**
8788 @brief WDI_ExitUapsdReq will be called when the upper MAC to
8789 request the device to get out of UAPSD power state. Upon
8790 the call of this API the WLAN DAL will send a HAL Exit
8791 UAPSD request message to the lower RIVA sub-system if
8792 DAL is in state STARTED.
8793
8794 In state BUSY this request will be queued. Request won't
8795 be allowed in any other state.
8796
8797 WDI_PostAssocReq must have been called.
8798
8799 @param wdiExitUapsdRspCb: callback for passing back the
8800 response of the Exit UAPSD operation received from the
8801 device
8802
8803 pUserData: user data will be passed back with the
8804 callback
8805
8806 @see WDI_PostAssocReq
8807 @return Result of the function call
8808*/
8809WDI_Status
8810WDI_ExitUapsdReq
8811(
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07008812 WDI_ExitUapsdReqParamsType *pwdiExitUapsdReqParams,
Jeff Johnson295189b2012-06-20 16:38:30 -07008813 WDI_ExitUapsdRspCb wdiExitUapsdRspCb,
8814 void* pUserData
8815);
8816
8817/**
8818 @brief WDI_UpdateUapsdParamsReq will be called when the upper
8819 MAC wants to set the UAPSD related configurations
8820 of an associated STA (while acting as an AP) to the WLAN
8821 Device. Upon the call of this API the WLAN DAL will pack
8822 and send a HAL Update UAPSD params request message to
8823 the lower RIVA sub-system if DAL is in state STARTED.
8824
8825 In state BUSY this request will be queued. Request won't
8826 be allowed in any other state.
8827
8828 WDI_ConfigBSSReq must have been called.
8829
8830 @param pwdiUpdateUapsdReqParams: the UAPSD parameters
8831 as specified by the Device Interface
8832
8833 wdiUpdateUapsdParamsCb: callback for passing back the
8834 response of the update UAPSD params operation received
8835 from the device
8836
8837 pUserData: user data will be passed back with the
8838 callback
8839
8840 @see WDI_ConfigBSSReq
8841 @return Result of the function call
8842*/
8843WDI_Status
8844WDI_UpdateUapsdParamsReq
8845(
8846 WDI_UpdateUapsdReqParamsType *pwdiUpdateUapsdReqParams,
8847 WDI_UpdateUapsdParamsCb wdiUpdateUapsdParamsCb,
8848 void* pUserData
8849);
8850
8851/**
8852 @brief WDI_SetUapsdAcParamsReq will be called when the upper
8853 MAC wants to set the UAPSD related configurations before
8854 requesting for enter UAPSD power state to the WLAN
8855 Device. Upon the call of this API the WLAN DAL will pack
8856 and send a HAL Set UAPSD params request message to
8857 the lower RIVA sub-system if DAL is in state STARTED.
8858
8859 In state BUSY this request will be queued. Request won't
8860 be allowed in any other state.
8861
8862 WDI_PostAssocReq must have been called.
8863
8864 @param pwdiUapsdInfo: the UAPSD parameters as specified by
8865 the Device Interface
8866
8867 wdiSetUapsdAcParamsCb: callback for passing back the
8868 response of the set UAPSD params operation received from
8869 the device
8870
8871 pUserData: user data will be passed back with the
8872 callback
8873
8874 @see WDI_PostAssocReq
8875 @return Result of the function call
8876*/
8877WDI_Status
8878WDI_SetUapsdAcParamsReq
8879(
8880 WDI_SetUapsdAcParamsReqParamsType* pwdiPowerSaveCfg,
8881 WDI_SetUapsdAcParamsCb wdiSetUapsdAcParamsCb,
8882 void* pUserData
8883);
8884
8885/**
8886 @brief WDI_ConfigureRxpFilterReq will be called when the upper
8887 MAC wants to set/reset the RXP filters for received pkts
8888 (MC, BC etc.). Upon the call of this API the WLAN DAL will pack
8889 and send a HAL configure RXP filter request message to
8890 the lower RIVA sub-system.
8891
8892 In state BUSY this request will be queued. Request won't
8893 be allowed in any other state.
8894
8895
8896 @param pwdiConfigureRxpFilterReqParams: the RXP
8897 filter as specified by the Device
8898 Interface
8899
8900 wdiConfigureRxpFilterCb: callback for passing back the
8901 response of the configure RXP filter operation received
8902 from the device
8903
8904 pUserData: user data will be passed back with the
8905 callback
8906
8907 @return Result of the function call
8908*/
8909WDI_Status
8910WDI_ConfigureRxpFilterReq
8911(
8912 WDI_ConfigureRxpFilterReqParamsType *pwdiConfigureRxpFilterReqParams,
8913 WDI_ConfigureRxpFilterCb wdiConfigureRxpFilterCb,
8914 void* pUserData
8915);
8916
8917/**
8918 @brief WDI_SetBeaconFilterReq will be called when the upper MAC
8919 wants to set the beacon filters while in power save.
8920 Upon the call of this API the WLAN DAL will pack and
8921 send a Beacon filter request message to the
8922 lower RIVA sub-system.
8923
8924 In state BUSY this request will be queued. Request won't
8925 be allowed in any other state.
8926
8927
8928 @param pwdiBeaconFilterReqParams: the beacon
8929 filter as specified by the Device
8930 Interface
8931
8932 wdiBeaconFilterCb: callback for passing back the
8933 response of the set beacon filter operation received
8934 from the device
8935
8936 pUserData: user data will be passed back with the
8937 callback
8938
8939 @return Result of the function call
8940*/
8941WDI_Status
8942WDI_SetBeaconFilterReq
8943(
8944 WDI_BeaconFilterReqParamsType *pwdiBeaconFilterReqParams,
8945 WDI_SetBeaconFilterCb wdiBeaconFilterCb,
8946 void* pUserData
8947);
8948
8949/**
8950 @brief WDI_RemBeaconFilterReq will be called when the upper MAC
8951 wants to remove the beacon filter for perticular IE
8952 while in power save. Upon the call of this API the WLAN
8953 DAL will pack and send a remove Beacon filter request
8954 message to the lower RIVA sub-system.
8955
8956 In state BUSY this request will be queued. Request won't
8957 be allowed in any other state.
8958
8959
8960 @param pwdiBeaconFilterReqParams: the beacon
8961 filter as specified by the Device
8962 Interface
8963
8964 wdiBeaconFilterCb: callback for passing back the
8965 response of the remove beacon filter operation received
8966 from the device
8967
8968 pUserData: user data will be passed back with the
8969 callback
8970
8971 @return Result of the function call
8972*/
8973WDI_Status
8974WDI_RemBeaconFilterReq
8975(
8976 WDI_RemBeaconFilterReqParamsType *pwdiBeaconFilterReqParams,
8977 WDI_RemBeaconFilterCb wdiBeaconFilterCb,
8978 void* pUserData
8979);
8980
8981/**
8982 @brief WDI_SetRSSIThresholdsReq will be called when the upper
8983 MAC wants to set the RSSI thresholds related
8984 configurations while in power save. Upon the call of
8985 this API the WLAN DAL will pack and send a HAL Set RSSI
8986 thresholds request message to the lower RIVA
8987 sub-system if DAL is in state STARTED.
8988
8989 In state BUSY this request will be queued. Request won't
8990 be allowed in any other state.
8991
8992 WDI_PostAssocReq must have been called.
8993
8994 @param pwdiUapsdInfo: the UAPSD parameters as specified by
8995 the Device Interface
8996
8997 wdiSetUapsdAcParamsCb: callback for passing back the
8998 response of the set UAPSD params operation received from
8999 the device
9000
9001 pUserData: user data will be passed back with the
9002 callback
9003
9004 @see WDI_PostAssocReq
9005 @return Result of the function call
9006*/
9007WDI_Status
9008WDI_SetRSSIThresholdsReq
9009(
9010 WDI_SetRSSIThresholdsReqParamsType* pwdiRSSIThresholdsParams,
9011 WDI_SetRSSIThresholdsCb wdiSetRSSIThresholdsCb,
9012 void* pUserData
9013);
9014
9015/**
9016 @brief WDI_HostOffloadReq will be called when the upper MAC
9017 wants to set the filter to minimize unnecessary host
9018 wakeup due to broadcast traffic while in power save.
9019 Upon the call of this API the WLAN DAL will pack and
9020 send a HAL host offload request message to the
9021 lower RIVA sub-system if DAL is in state STARTED.
9022
9023 In state BUSY this request will be queued. Request won't
9024 be allowed in any other state.
9025
9026 WDI_PostAssocReq must have been called.
9027
9028 @param pwdiHostOffloadParams: the host offload as specified
9029 by the Device Interface
9030
9031 wdiHostOffloadCb: callback for passing back the response
9032 of the host offload operation received from the
9033 device
9034
9035 pUserData: user data will be passed back with the
9036 callback
9037
9038 @see WDI_PostAssocReq
9039 @return Result of the function call
9040*/
9041WDI_Status
9042WDI_HostOffloadReq
9043(
9044 WDI_HostOffloadReqParamsType* pwdiHostOffloadParams,
9045 WDI_HostOffloadCb wdiHostOffloadCb,
9046 void* pUserData
9047);
9048
9049/**
9050 @brief WDI_KeepAliveReq will be called when the upper MAC
9051 wants to set the filter to send NULL or unsolicited ARP responses
9052 and minimize unnecessary host wakeups due to while in power save.
9053 Upon the call of this API the WLAN DAL will pack and
9054 send a HAL Keep Alive request message to the
9055 lower RIVA sub-system if DAL is in state STARTED.
9056
9057 In state BUSY this request will be queued. Request won't
9058 be allowed in any other state.
9059
9060 WDI_PostAssocReq must have been called.
9061
9062 @param pwdiKeepAliveParams: the Keep Alive as specified
9063 by the Device Interface
9064
9065 wdiKeepAliveCb: callback for passing back the response
9066 of the Keep Alive operation received from the
9067 device
9068
9069 pUserData: user data will be passed back with the
9070 callback
9071
9072 @see WDI_PostAssocReq
9073 @return Result of the function call
9074*/
9075WDI_Status
9076WDI_KeepAliveReq
9077(
9078 WDI_KeepAliveReqParamsType* pwdiKeepAliveParams,
9079 WDI_KeepAliveCb wdiKeepAliveCb,
9080 void* pUserData
9081);
9082
9083/**
9084 @brief WDI_WowlAddBcPtrnReq will be called when the upper MAC
9085 wants to set the Wowl Bcast ptrn to minimize unnecessary
9086 host wakeup due to broadcast traffic while in power
9087 save. Upon the call of this API the WLAN DAL will pack
9088 and send a HAL Wowl Bcast ptrn request message to the
9089 lower RIVA sub-system if DAL is in state STARTED.
9090
9091 In state BUSY this request will be queued. Request won't
9092 be allowed in any other state.
9093
9094 WDI_PostAssocReq must have been called.
9095
9096 @param pwdiWowlAddBcPtrnParams: the Wowl bcast ptrn as
9097 specified by the Device Interface
9098
9099 wdiWowlAddBcPtrnCb: callback for passing back the
9100 response of the add Wowl bcast ptrn operation received
9101 from the device
9102
9103 pUserData: user data will be passed back with the
9104 callback
9105
9106 @see WDI_PostAssocReq
9107 @return Result of the function call
9108*/
9109WDI_Status
9110WDI_WowlAddBcPtrnReq
9111(
9112 WDI_WowlAddBcPtrnReqParamsType* pwdiWowlAddBcPtrnParams,
9113 WDI_WowlAddBcPtrnCb wdiWowlAddBcPtrnCb,
9114 void* pUserData
9115);
9116
9117/**
9118 @brief WDI_WowlDelBcPtrnReq will be called when the upper MAC
9119 wants to clear the Wowl Bcast ptrn. Upon the call of
9120 this API the WLAN DAL will pack and send a HAL delete
9121 Wowl Bcast ptrn request message to the lower RIVA
9122 sub-system if DAL is in state STARTED.
9123
9124 In state BUSY this request will be queued. Request won't
9125 be allowed in any other state.
9126
9127 WDI_WowlAddBcPtrnReq must have been called.
9128
9129 @param pwdiWowlDelBcPtrnParams: the Wowl bcast ptrn as
9130 specified by the Device Interface
9131
9132 wdiWowlDelBcPtrnCb: callback for passing back the
9133 response of the del Wowl bcast ptrn operation received
9134 from the device
9135
9136 pUserData: user data will be passed back with the
9137 callback
9138
9139 @see WDI_WowlAddBcPtrnReq
9140 @return Result of the function call
9141*/
9142WDI_Status
9143WDI_WowlDelBcPtrnReq
9144(
9145 WDI_WowlDelBcPtrnReqParamsType* pwdiWowlDelBcPtrnParams,
9146 WDI_WowlDelBcPtrnCb wdiWowlDelBcPtrnCb,
9147 void* pUserData
9148);
9149
9150/**
9151 @brief WDI_WowlEnterReq will be called when the upper MAC
9152 wants to enter the Wowl state to minimize unnecessary
9153 host wakeup while in power save. Upon the call of this
9154 API the WLAN DAL will pack and send a HAL Wowl enter
9155 request message to the lower RIVA sub-system if DAL is
9156 in state STARTED.
9157
9158 In state BUSY this request will be queued. Request won't
9159 be allowed in any other state.
9160
9161 WDI_PostAssocReq must have been called.
9162
9163 @param pwdiWowlEnterReqParams: the Wowl enter info as
9164 specified by the Device Interface
9165
9166 wdiWowlEnterReqCb: callback for passing back the
9167 response of the enter Wowl operation received from the
9168 device
9169
9170 pUserData: user data will be passed back with the
9171 callback
9172
9173 @see WDI_PostAssocReq
9174 @return Result of the function call
9175*/
9176WDI_Status
9177WDI_WowlEnterReq
9178(
9179 WDI_WowlEnterReqParamsType* pwdiWowlEnterParams,
9180 WDI_WowlEnterReqCb wdiWowlEnterCb,
9181 void* pUserData
9182);
9183
9184/**
9185 @brief WDI_WowlExitReq will be called when the upper MAC
9186 wants to exit the Wowl state. Upon the call of this API
9187 the WLAN DAL will pack and send a HAL Wowl exit request
9188 message to the lower RIVA sub-system if DAL is in state
9189 STARTED.
9190
9191 In state BUSY this request will be queued. Request won't
9192 be allowed in any other state.
9193
9194 WDI_WowlEnterReq must have been called.
9195
9196 @param pwdiWowlExitReqParams: the Wowl exit info as
9197 specified by the Device Interface
9198
9199 wdiWowlExitReqCb: callback for passing back the response
9200 of the exit Wowl operation received from the device
9201
9202 pUserData: user data will be passed back with the
9203 callback
9204
9205 @see WDI_WowlEnterReq
9206 @return Result of the function call
9207*/
9208WDI_Status
9209WDI_WowlExitReq
9210(
Madan Mohan Koyyalamudi96dd30d2012-10-05 17:24:51 -07009211 WDI_WowlExitReqParamsType* pwdiWowlExitParams,
Jeff Johnson295189b2012-06-20 16:38:30 -07009212 WDI_WowlExitReqCb wdiWowlExitCb,
9213 void* pUserData
9214);
9215
9216/**
9217 @brief WDI_ConfigureAppsCpuWakeupStateReq will be called when
9218 the upper MAC wants to dynamically adjusts the listen
9219 interval based on the WLAN/MSM activity. Upon the call
9220 of this API the WLAN DAL will pack and send a HAL
9221 configure Apps Cpu Wakeup State request message to the
9222 lower RIVA sub-system.
9223
9224 In state BUSY this request will be queued. Request won't
9225 be allowed in any other state.
9226
9227
9228 @param pwdiConfigureAppsCpuWakeupStateReqParams: the
9229 Apps Cpu Wakeup State as specified by the
9230 Device Interface
9231
9232 wdiConfigureAppsCpuWakeupStateCb: callback for passing
9233 back the response of the configure Apps Cpu Wakeup State
9234 operation received from the device
9235
9236 pUserData: user data will be passed back with the
9237 callback
9238
9239 @return Result of the function call
9240*/
9241WDI_Status
9242WDI_ConfigureAppsCpuWakeupStateReq
9243(
9244 WDI_ConfigureAppsCpuWakeupStateReqParamsType *pwdiConfigureAppsCpuWakeupStateReqParams,
9245 WDI_ConfigureAppsCpuWakeupStateCb wdiConfigureAppsCpuWakeupStateCb,
9246 void* pUserData
9247);
9248/**
9249 @brief WDI_FlushAcReq will be called when the upper MAC wants
9250 to to perform a flush operation on a given AC. Upon the
9251 call of this API the WLAN DAL will pack and send a HAL
9252 Flush AC request message to the lower RIVA sub-system if
9253 DAL is in state STARTED.
9254
9255 In state BUSY this request will be queued. Request won't
9256 be allowed in any other state.
9257
9258
9259 @param pwdiFlushAcReqParams: the Flush AC parameters as
9260 specified by the Device Interface
9261
9262 wdiFlushAcRspCb: callback for passing back the response
9263 of the Flush AC operation received from the device
9264
9265 pUserData: user data will be passed back with the
9266 callback
9267
9268 @return Result of the function call
9269*/
9270WDI_Status
9271WDI_FlushAcReq
9272(
9273 WDI_FlushAcReqParamsType* pwdiFlushAcReqParams,
9274 WDI_FlushAcRspCb wdiFlushAcRspCb,
9275 void* pUserData
9276);
9277
9278/**
9279 @brief WDI_BtAmpEventReq will be called when the upper MAC
9280 wants to notify the lower mac on a BT AMP event. This is
9281 to inform BTC-SLM that some BT AMP event occurred. Upon
9282 the call of this API the WLAN DAL will pack and send a
9283 HAL BT AMP event request message to the lower RIVA
9284 sub-system if DAL is in state STARTED.
9285
9286 In state BUSY this request will be queued. Request won't
9287 be allowed in any other state.
9288
9289
9290 @param wdiBtAmpEventReqParams: the BT AMP event parameters as
9291 specified by the Device Interface
9292
9293 wdiBtAmpEventRspCb: callback for passing back the
9294 response of the BT AMP event operation received from the
9295 device
9296
9297 pUserData: user data will be passed back with the
9298 callback
9299
9300 @return Result of the function call
9301*/
9302WDI_Status
9303WDI_BtAmpEventReq
9304(
9305 WDI_BtAmpEventParamsType* pwdiBtAmpEventReqParams,
9306 WDI_BtAmpEventRspCb wdiBtAmpEventRspCb,
9307 void* pUserData
9308);
9309
Jeff Johnsone7245742012-09-05 17:12:55 -07009310#ifdef FEATURE_OEM_DATA_SUPPORT
9311/**
9312 @brief WDI_Start oem data Req will be called when the upper MAC
9313 wants to notify the lower mac on a oem data Req event.Upon
9314 the call of this API the WLAN DAL will pack and send a
9315 HAL OEM Data Req event request message to the lower RIVA
9316 sub-system if DAL is in state STARTED.
9317
9318 In state BUSY this request will be queued. Request won't
9319 be allowed in any other state.
9320
9321
9322 @param pWdiOemDataReqParams: the oem data req parameters as
9323 specified by the Device Interface
9324
9325 wdiStartOemDataRspCb: callback for passing back the
9326 response of the Oem Data Req received from the
9327 device
9328
9329 pUserData: user data will be passed back with the
9330 callback
9331
9332 @return Result of the function call
9333*/
9334WDI_Status
9335WDI_StartOemDataReq
9336(
9337 WDI_oemDataReqParamsType* pWdiOemDataReqParams,
9338 WDI_oemDataRspCb wdiOemDataRspCb,
9339 void* pUserData
9340);
9341#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07009342
9343/*========================================================================
9344
9345 CONTROL APIs
9346
9347==========================================================================*/
9348/**
9349 @brief WDI_SwitchChReq will be called when the upper MAC wants
9350 the WLAN HW to change the current channel of operation.
9351 Upon the call of this API the WLAN DAL will pack and
9352 send a HAL Start request message to the lower RIVA
9353 sub-system if DAL is in state STARTED.
9354
9355 In state BUSY this request will be queued. Request won't
9356 be allowed in any other state.
9357
9358 WDI_Start must have been called.
9359
9360 @param wdiSwitchChReqParams: the switch ch parameters as
9361 specified by the Device Interface
9362
9363 wdiSwitchChRspCb: callback for passing back the response
9364 of the switch ch operation received from the device
9365
9366 pUserData: user data will be passed back with the
9367 callback
9368
9369 @see WDI_Start
9370 @return Result of the function call
9371*/
9372WDI_Status
9373WDI_SwitchChReq
9374(
9375 WDI_SwitchChReqParamsType* pwdiSwitchChReqParams,
9376 WDI_SwitchChRspCb wdiSwitchChRspCb,
9377 void* pUserData
9378);
9379
Manjunathappa Prakash86f78ca2014-02-10 18:09:15 -08009380/**
Kalikinkar dhara1e83b772014-02-06 12:59:22 -08009381 @brief WDI_SwitchChReq_V1 is similar to WDI_SwitchChReq except
9382 it also send type source for the channel change.
9383 WDI_Start must have been called.
9384
9385 @param wdiSwitchChReqParams: the switch ch parameters as
9386 specified by the Device Interface
9387
9388 wdiSwitchChRspCb: callback for passing back the response
9389 of the switch ch operation received from the device
9390
9391 pUserData: user data will be passed back with the
9392 callback
9393
9394 @see WDI_Start
9395 @return Result of the function call
9396*/
9397
9398WDI_Status
9399WDI_SwitchChReq_V1
9400(
9401 WDI_SwitchChReqParamsType_V1* pwdiSwitchChReqParams,
9402 WDI_SwitchChRspCb_V1 wdiSwitchChRspCb,
9403 void* pUserData
9404);
9405
9406/**
Manjunathappa Prakash86f78ca2014-02-10 18:09:15 -08009407 @brief WDI_UpdateChannelReq will be called when the upper MAC
9408 wants to update the channel list on change in country code.
Manjunathappa Prakash86f78ca2014-02-10 18:09:15 -08009409 In state BUSY this request will be queued. Request won't
9410 be allowed in any other state.
9411
9412 WDI_UpdateChannelReq must have been called.
9413
9414 @param wdiUpdateChannelReqParams: the updated channel parameters
9415 as specified by the Device Interface
9416
9417 wdiUpdateChannelRspCb: callback for passing back the
9418 response of the update channel operation received from
9419 the device
9420
9421 pUserData: user data will be passed back with the
9422 callback
9423
9424 @return Result of the function call
9425*/
9426WDI_Status
9427WDI_UpdateChannelReq
9428(
9429 WDI_UpdateChReqParamsType *pwdiUpdateChannelReqParams,
9430 WDI_UpdateChannelRspCb wdiUpdateChannelRspCb,
9431 void* pUserData
9432);
Jeff Johnson295189b2012-06-20 16:38:30 -07009433
9434/**
9435 @brief WDI_ConfigSTAReq will be called when the upper MAC
9436 wishes to add or update a STA in HW. Upon the call of
9437 this API the WLAN DAL will pack and send a HAL Start
9438 message request message to the lower RIVA sub-system if
9439 DAL is in state STARTED.
9440
9441 In state BUSY this request will be queued. Request won't
9442 be allowed in any other state.
9443
9444 WDI_Start must have been called.
9445
9446 @param wdiConfigSTAReqParams: the config STA parameters as
9447 specified by the Device Interface
9448
9449 wdiConfigSTARspCb: callback for passing back the
9450 response of the config STA operation received from the
9451 device
9452
9453 pUserData: user data will be passed back with the
9454 callback
9455
9456 @see WDI_Start
9457 @return Result of the function call
9458*/
9459WDI_Status
9460WDI_ConfigSTAReq
9461(
9462 WDI_ConfigSTAReqParamsType* pwdiConfigSTAReqParams,
9463 WDI_ConfigSTARspCb wdiConfigSTARspCb,
9464 void* pUserData
9465);
9466
9467/**
9468 @brief WDI_SetLinkStateReq will be called when the upper MAC
9469 wants to change the state of an ongoing link. Upon the
9470 call of this API the WLAN DAL will pack and send a HAL
9471 Start message request message to the lower RIVA
9472 sub-system if DAL is in state STARTED.
9473
9474 In state BUSY this request will be queued. Request won't
9475 be allowed in any other state.
9476
9477 WDI_JoinReq must have been called.
9478
9479 @param wdiSetLinkStateReqParams: the set link state parameters
9480 as specified by the Device Interface
9481
9482 wdiSetLinkStateRspCb: callback for passing back the
9483 response of the set link state operation received from
9484 the device
9485
9486 pUserData: user data will be passed back with the
9487 callback
9488
9489 @see WDI_JoinStartReq
9490 @return Result of the function call
9491*/
9492WDI_Status
9493WDI_SetLinkStateReq
9494(
9495 WDI_SetLinkReqParamsType* pwdiSetLinkStateReqParams,
9496 WDI_SetLinkStateRspCb wdiSetLinkStateRspCb,
9497 void* pUserData
9498);
9499
9500
9501/**
9502 @brief WDI_GetStatsReq will be called when the upper MAC wants
9503 to get statistics (MIB counters) from the device. Upon
9504 the call of this API the WLAN DAL will pack and send a
9505 HAL Start request message to the lower RIVA sub-system
9506 if DAL is in state STARTED.
9507
9508 In state BUSY this request will be queued. Request won't
9509 be allowed in any other state.
9510
9511 WDI_Start must have been called.
9512
9513 @param wdiGetStatsReqParams: the stats parameters to get as
9514 specified by the Device Interface
9515
9516 wdiGetStatsRspCb: callback for passing back the response
9517 of the get stats operation received from the device
9518
9519 pUserData: user data will be passed back with the
9520 callback
9521
9522 @see WDI_Start
9523 @return Result of the function call
9524*/
9525WDI_Status
9526WDI_GetStatsReq
9527(
9528 WDI_GetStatsReqParamsType* pwdiGetStatsReqParams,
9529 WDI_GetStatsRspCb wdiGetStatsRspCb,
9530 void* pUserData
9531);
9532
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08009533#if defined WLAN_FEATURE_VOWIFI_11R || defined FEATURE_WLAN_ESE || defined(FEATURE_WLAN_LFR)
Srinivas Girigowdad34cedb2013-01-25 13:33:11 -08009534/**
9535 @brief WDI_GetRoamRssiReq will be called when the upper MAC wants
9536 to get roam rssi from the device. Upon
9537 the call of this API the WLAN DAL will pack and send a
9538 HAL Start request message to the lower RIVA sub-system
9539 if DAL is in state STARTED.
9540
9541 In state BUSY this request will be queued. Request won't
9542 be allowed in any other state.
9543
9544 WDI_Start must have been called.
9545
9546 @param wdiGetRoamRssiReqParams: the stats parameters to get as
9547 specified by the Device Interface
9548
9549 wdiGetRoamRssispCb: callback for passing back the response
9550 of the get stats operation received from the device
9551
9552 pUserData: user data will be passed back with the
9553 callback
9554
9555 @see WDI_Start
9556 @return Result of the function call
9557*/
9558WDI_Status
9559WDI_GetRoamRssiReq
9560(
9561 WDI_GetRoamRssiReqParamsType* pwdiGetRoamRssiReqParams,
9562 WDI_GetRoamRssiRspCb wdiGetRoamRssiRspCb,
9563 void* pUserData
9564);
9565#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07009566
9567/**
9568 @brief WDI_UpdateCfgReq will be called when the upper MAC when
9569 it wishes to change the configuration of the WLAN
9570 Device. Upon the call of this API the WLAN DAL will pack
9571 and send a HAL Update CFG request message to the lower
9572 RIVA sub-system if DAL is in state STARTED.
9573
9574 In state BUSY this request will be queued. Request won't
9575 be allowed in any other state.
9576
9577 WDI_Start must have been called.
9578
9579 @param wdiUpdateCfgReqParams: the update cfg parameters as
9580 specified by the Device Interface
9581
9582 wdiUpdateCfgsRspCb: callback for passing back the
9583 response of the update cfg operation received from the
9584 device
9585
9586 pUserData: user data will be passed back with the
9587 callback
9588
9589 @see WDI_Start
9590 @return Result of the function call
9591*/
9592WDI_Status
9593WDI_UpdateCfgReq
9594(
9595 WDI_UpdateCfgReqParamsType* pwdiUpdateCfgReqParams,
9596 WDI_UpdateCfgRspCb wdiUpdateCfgsRspCb,
9597 void* pUserData
9598);
9599
9600/**
9601 @brief WDI_NvDownloadReq will be called by the UMAC to dowload the NV blob
9602 to the NV memory.
9603
9604 @param wdiNvDownloadReqParams: the NV Download parameters as specified by
9605 the Device Interface
9606
9607 wdiNvDownloadRspCb: callback for passing back the response of
9608 the NV Download operation received from the device
9609
9610 pUserData: user data will be passed back with the
9611 callback
9612
9613 @see WDI_PostAssocReq
9614 @return Result of the function call
9615*/
9616WDI_Status
9617WDI_NvDownloadReq
9618(
9619 WDI_NvDownloadReqParamsType* pwdiNvDownloadReqParams,
9620 WDI_NvDownloadRspCb wdiNvDownloadRspCb,
9621 void* pUserData
9622);
9623/**
9624 @brief WDI_AddBAReq will be called when the upper MAC has setup
9625 successfully a BA session and needs to notify the HW for
9626 the appropriate settings to take place. Upon the call of
9627 this API the WLAN DAL will pack and send a HAL Add BA
9628 request message to the lower RIVA sub-system if DAL is
9629 in state STARTED.
9630
9631 In state BUSY this request will be queued. Request won't
9632 be allowed in any other state.
9633
9634 WDI_PostAssocReq must have been called.
9635
9636 @param wdiAddBAReqParams: the add BA parameters as specified by
9637 the Device Interface
9638
9639 wdiAddBARspCb: callback for passing back the response of
9640 the add BA operation received from the device
9641
9642 pUserData: user data will be passed back with the
9643 callback
9644
9645 @see WDI_PostAssocReq
9646 @return Result of the function call
9647*/
9648WDI_Status
9649WDI_AddBAReq
9650(
9651 WDI_AddBAReqParamsType* pwdiAddBAReqParams,
9652 WDI_AddBARspCb wdiAddBARspCb,
9653 void* pUserData
9654);
9655
9656/**
9657 @brief WDI_TriggerBAReq will be called when the upper MAC has setup
9658 successfully a BA session and needs to notify the HW for
9659 the appropriate settings to take place. Upon the call of
9660 this API the WLAN DAL will pack and send a HAL Add BA
9661 request message to the lower RIVA sub-system if DAL is
9662 in state STARTED.
9663
9664 In state BUSY this request will be queued. Request won't
9665 be allowed in any other state.
9666
9667 WDI_PostAssocReq must have been called.
9668
9669 @param wdiAddBAReqParams: the add BA parameters as specified by
9670 the Device Interface
9671
9672 wdiAddBARspCb: callback for passing back the response of
9673 the add BA operation received from the device
9674
9675 pUserData: user data will be passed back with the
9676 callback
9677
9678 @see WDI_PostAssocReq
9679 @return Result of the function call
9680*/
9681WDI_Status
9682WDI_TriggerBAReq
9683(
9684 WDI_TriggerBAReqParamsType* pwdiTriggerBAReqParams,
9685 WDI_TriggerBARspCb wdiTriggerBARspCb,
9686 void* pUserData
9687);
9688
9689
9690/**
9691 @brief WDI_IsHwFrameTxTranslationCapable checks to see if HW
9692 frame xtl is enabled for a particular STA.
9693
9694 WDI_PostAssocReq must have been called.
9695
9696 @param uSTAIdx: STA index
9697
9698 @see WDI_PostAssocReq
9699 @return Result of the function call
9700*/
9701wpt_boolean WDI_IsHwFrameTxTranslationCapable
9702(
9703 wpt_uint8 uSTAIdx
9704);
9705
9706#ifdef WLAN_FEATURE_VOWIFI_11R
9707/**
9708 @brief WDI_AggrAddTSReq will be called when the upper MAC to inform
9709 the device of a successful add TSpec negotiation for 11r. HW
9710 needs to receive the TSpec Info from the UMAC in order
9711 to configure properly the QoS data traffic. Upon the
9712 call of this API the WLAN DAL will pack and send a HAL
9713 Aggregated Add TS request message to the lower RIVA sub-system if
9714 DAL is in state STARTED.
9715
9716 In state BUSY this request will be queued. Request won't
9717 be allowed in any other state.
9718
9719 WDI_PostAssocReq must have been called.
9720
9721 @param wdiAggrAddTsReqParams: the add TS parameters as specified by
9722 the Device Interface
9723
9724 wdiAggrAddTsRspCb: callback for passing back the response of
9725 the add TS operation received from the device
9726
9727 pUserData: user data will be passed back with the
9728 callback
9729
9730 @see WDI_PostAssocReq
9731 @return Result of the function call
9732*/
9733WDI_Status
9734WDI_AggrAddTSReq
9735(
9736 WDI_AggrAddTSReqParamsType* pwdiAddTsReqParams,
9737 WDI_AggrAddTsRspCb wdiAggrAddTsRspCb,
9738 void* pUserData
9739);
9740#endif /* WLAN_FEATURE_VOWIFI_11R */
9741/**
9742 @brief WDI_STATableInit - Initializes the STA tables.
9743 Allocates the necesary memory.
9744
9745
9746 @param pWDICtx: pointer to the WLAN DAL context
9747
9748 @see
9749 @return Result of the function call
9750*/
9751
9752WDI_Status WDI_StubRunTest
9753(
9754 wpt_uint8 ucTestNo
9755);
9756
Jeff Johnson295189b2012-06-20 16:38:30 -07009757/**
9758 @brief WDI_FTMCommandReq -
9759 Route FTMRequest Command to HAL
9760
9761 @param ftmCommandReq: FTM request command body
9762 @param ftmCommandRspCb: Response CB
9763 @param pUserData: User data will be included with CB
9764
9765 @return Result of the function call
9766*/
9767WDI_Status WDI_FTMCommandReq
9768(
9769 WDI_FTMCommandReqType *ftmCommandReq,
9770 WDI_FTMCommandRspCb ftmCommandRspCb,
9771 void *pUserData
9772);
Jeff Johnson295189b2012-06-20 16:38:30 -07009773
9774/**
9775 @brief WDI_HostResumeReq will be called
9776
9777 In state BUSY this request will be queued. Request won't
9778 be allowed in any other state.
9779
9780
9781 @param pwdiResumeReqParams: as specified by
9782 the Device Interface
9783
9784 wdiResumeReqRspCb: callback for passing back the response of
9785 the Resume Req received from the device
9786
9787 pUserData: user data will be passed back with the
9788 callback
9789
9790 @see WDI_PostAssocReq
9791 @return Result of the function call
9792*/
9793WDI_Status
9794WDI_HostResumeReq
9795(
9796 WDI_ResumeParamsType* pwdiResumeReqParams,
9797 WDI_HostResumeEventRspCb wdiResumeReqRspCb,
9798 void* pUserData
9799);
9800
9801/**
9802 @brief WDI_GetAvailableResCount - Function to get the available resource
9803 for data and managemnt frames.
9804
9805 @param pContext: pointer to the WDI context
9806 @param wdiResPool: type of resource pool requesting
9807 @see
9808 @return Result of the function call
9809*/
9810
9811wpt_uint32 WDI_GetAvailableResCount
9812(
9813 void *pContext,
9814 WDI_ResPoolType wdiResPool
9815);
9816
9817/**
9818 @brief WDI_SetAddSTASelfReq will be called when the
9819 UMAC wanted to add self STA while opening any new session
9820 In state BUSY this request will be queued. Request won't
9821 be allowed in any other state.
9822
9823
9824 @param pwdiAddSTASelfParams: the add self sta parameters as
9825 specified by the Device Interface
9826
9827 pUserData: user data will be passed back with the
9828 callback
9829
9830 @see
9831 @return Result of the function call
9832*/
9833WDI_Status
9834WDI_AddSTASelfReq
9835(
9836 WDI_AddSTASelfReqParamsType* pwdiAddSTASelfReqParams,
9837 WDI_AddSTASelfParamsRspCb wdiAddSTASelfReqParamsRspCb,
9838 void* pUserData
9839);
9840
9841
9842/**
9843 @brief WDI_DelSTASelfReq will be called .
9844
9845 @param WDI_DelSTASelfReqParamsType
9846
9847 WDI_DelSTASelfRspCb: callback for passing back the
9848 response of the del sta self operation received from the
9849 device
9850
9851 pUserData: user data will be passed back with the
9852 callback
9853
9854 @see WDI_PostAssocReq
9855 @return Result of the function call
9856*/
9857WDI_Status
9858WDI_DelSTASelfReq
9859(
9860 WDI_DelSTASelfReqParamsType* pwdiDelStaSelfParams,
9861 WDI_DelSTASelfRspCb wdiDelStaSelfRspCb,
9862 void* pUserData
9863);
9864
9865/**
9866 @brief WDI_HostSuspendInd
9867
9868 Suspend Indication from the upper layer will be sent
9869 down to HAL
9870
9871 @param WDI_SuspendParamsType
9872
9873 @see
9874
9875 @return Status of the request
9876*/
9877WDI_Status
9878WDI_HostSuspendInd
9879(
9880 WDI_SuspendParamsType* pwdiSuspendIndParams
9881);
9882
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08009883/**
9884 @brief WDI_TrafficStatsInd
9885
9886 Traffic Stats from the upper layer will be sent
9887 down to HAL
9888
9889 @param WDI_TrafficStatsIndType
9890
9891 @see
9892
9893 @return Status of the request
9894*/
9895WDI_Status
9896WDI_TrafficStatsInd
9897(
9898 WDI_TrafficStatsIndType *pWdiTrafficStatsIndParams
9899);
9900
Chet Lanctot186b5732013-03-18 10:26:30 -07009901#ifdef WLAN_FEATURE_11W
9902/**
9903 @brief WDI_ExcludeUnencryptedInd
9904 Register with HAL to receive/drop unencrypted frames
9905
9906 @param WDI_ExcludeUnencryptIndType
9907
9908 @see
9909
9910 @return Status of the request
9911*/
9912WDI_Status
9913WDI_ExcludeUnencryptedInd
9914(
9915 WDI_ExcludeUnencryptIndType *pWdiExcUnencParams
9916);
9917#endif
9918
Yue Mab9c86f42013-08-14 15:59:08 -07009919/**
9920 @brief WDI_AddPeriodicTxPtrnInd
9921
9922 @param WDI_AddPeriodicTxPtrnParamsType
9923
9924 @see
9925
9926 @return Status of the request
9927*/
9928WDI_Status
9929WDI_AddPeriodicTxPtrnInd
9930(
9931 WDI_AddPeriodicTxPtrnParamsType *addPeriodicTxPtrnParams
9932);
9933
9934/**
9935 @brief WDI_DelPeriodicTxPtrnInd
9936
9937 @param WDI_DelPeriodicTxPtrnParamsType
9938
9939 @see
9940
9941 @return Status of the request
9942*/
9943WDI_Status
9944WDI_DelPeriodicTxPtrnInd
9945(
9946 WDI_DelPeriodicTxPtrnParamsType *delPeriodicTxPtrnParams
9947);
9948
Jeff Johnson295189b2012-06-20 16:38:30 -07009949#ifdef FEATURE_WLAN_SCAN_PNO
9950/**
9951 @brief WDI_SetPreferredNetworkList
9952
9953 @param pwdiPNOScanReqParams: the Set PNO as specified
9954 by the Device Interface
9955
9956 wdiPNOScanCb: callback for passing back the response
9957 of the Set PNO operation received from the
9958 device
9959
9960 pUserData: user data will be passed back with the
9961 callback
9962
9963 @see WDI_PostAssocReq
9964 @return Result of the function call
9965*/
9966WDI_Status
9967WDI_SetPreferredNetworkReq
9968(
9969 WDI_PNOScanReqParamsType* pwdiPNOScanReqParams,
9970 WDI_PNOScanCb wdiPNOScanCb,
9971 void* pUserData
9972);
9973
9974/**
9975 @brief WDI_SetRssiFilterReq
9976
9977 @param pwdiRssiFilterReqParams: the Set RSSI Filter as
9978 specified by the Device Interface
9979
9980 wdiRssiFilterCb: callback for passing back the response
9981 of the Set RSSI Filter operation received from the
9982 device
9983
9984 pUserData: user data will be passed back with the
9985 callback
9986
9987 @see WDI_PostAssocReq
9988 @return Result of the function call
9989*/
9990WDI_Status
9991WDI_SetRssiFilterReq
9992(
9993 WDI_SetRssiFilterReqParamsType* pwdiRssiFilterReqParams,
9994 WDI_RssiFilterCb wdiRssiFilterCb,
9995 void* pUserData
9996);
9997
9998/**
9999 @brief WDI_UpdateScanParams
10000
10001 @param pwdiUpdateScanParamsInfoType: the Update Scan Params as specified
10002 by the Device Interface
10003
10004 wdiUpdateScanParamsCb: callback for passing back the response
10005 of the Set PNO operation received from the
10006 device
10007
10008 pUserData: user data will be passed back with the
10009 callback
10010
10011 @see WDI_PostAssocReq
10012 @return Result of the function call
10013*/
10014WDI_Status
10015WDI_UpdateScanParamsReq
10016(
10017 WDI_UpdateScanParamsInfoType* pwdiUpdateScanParamsInfoType,
10018 WDI_UpdateScanParamsCb wdiUpdateScanParamsCb,
10019 void* pUserData
10020);
10021#endif // FEATURE_WLAN_SCAN_PNO
10022
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -070010023#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
10024/**
Varun Reddy Yeturu920df212013-05-22 08:07:23 -070010025 @brief WDI_RoamScanOffloadReq
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -070010026
Varun Reddy Yeturu920df212013-05-22 08:07:23 -070010027 @param pwdiRoamScanOffloadReqParams: Start Roam Candidate Lookup Req as specified
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -070010028 by the Device Interface
10029
10030 wdiRoamOffloadScanCb: callback for passing back the response
10031 of the Start Roam Candidate Lookup operation received from the
10032 device
10033
10034 pUserData: user data will be passed back with the
10035 callback
10036
10037 @return Result of the function call
10038*/
10039WDI_Status
Varun Reddy Yeturu920df212013-05-22 08:07:23 -070010040WDI_RoamScanOffloadReq
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -070010041(
Varun Reddy Yeturu920df212013-05-22 08:07:23 -070010042 WDI_RoamScanOffloadReqParamsType *pwdiRoamScanOffloadReqParams,
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -070010043 WDI_RoamOffloadScanCb wdiRoamOffloadScancb,
10044 void* pUserData
10045);
10046#endif
10047
Jeff Johnson295189b2012-06-20 16:38:30 -070010048/**
10049 @brief WDI_SetTxPerTrackingReq will be called when the upper MAC
10050 wants to set the Tx Per Tracking configurations.
10051 Upon the call of this API the WLAN DAL will pack
10052 and send a HAL Set Tx Per Tracking request message to the
10053 lower RIVA sub-system if DAL is in state STARTED.
10054
10055 In state BUSY this request will be queued. Request won't
10056 be allowed in any other state.
10057
10058 @param wdiSetTxPerTrackingConf: the Set Tx PER Tracking configurations as
10059 specified by the Device Interface
10060
10061 wdiSetTxPerTrackingCb: callback for passing back the
10062 response of the set Tx PER Tracking configurations operation received
10063 from the device
10064
10065 pUserData: user data will be passed back with the
10066 callback
10067
10068 @return Result of the function call
10069*/
10070WDI_Status
10071WDI_SetTxPerTrackingReq
10072(
10073 WDI_SetTxPerTrackingReqParamsType* pwdiSetTxPerTrackingReqParams,
10074 WDI_SetTxPerTrackingRspCb pwdiSetTxPerTrackingRspCb,
10075 void* pUserData
10076);
10077
10078/**
10079 @brief WDI_SetTmLevelReq
10080 If HW Thermal condition changed, driver should react based on new
10081 HW thermal condition.
10082
10083 @param pwdiSetTmLevelReq: New thermal condition information
10084
10085 pwdiSetTmLevelRspCb: callback
10086
10087 usrData: user data will be passed back with the
10088 callback
10089
10090 @return Result of the function call
10091*/
10092WDI_Status
10093WDI_SetTmLevelReq
10094(
10095 WDI_SetTmLevelReqType *pwdiSetTmLevelReq,
10096 WDI_SetTmLevelCb pwdiSetTmLevelRspCb,
10097 void *usrData
10098);
10099
10100#ifdef WLAN_FEATURE_PACKET_FILTERING
10101/**
10102 @brief WDI_8023MulticastListReq
10103
10104 @param pwdiRcvFltPktSetMcListReqInfo: the Set 8023 Multicast
10105 List as specified by the Device Interface
10106
10107 wdi8023MulticastListCallback: callback for passing back
10108 the response of the Set 8023 Multicast List operation
10109 received from the device
10110
10111 pUserData: user data will be passed back with the
10112 callback
10113
10114 @see WDI_PostAssocReq
10115 @return Result of the function call
10116*/
10117WDI_Status
10118WDI_8023MulticastListReq
10119(
10120 WDI_RcvFltPktSetMcListReqParamsType* pwdiRcvFltPktSetMcListReqInfo,
10121 WDI_8023MulticastListCb wdi8023MulticastListCallback,
10122 void* pUserData
10123);
10124
10125/**
10126 @brief WDI_ReceiveFilterSetFilterReq
10127
10128 @param pwdiSetRcvPktFilterReqInfo: the Set Receive Filter as
10129 specified by the Device Interface
10130
10131 wdiReceiveFilterSetFilterReqCallback: callback for
10132 passing back the response of the Set Receive Filter
10133 operation received from the device
10134
10135 pUserData: user data will be passed back with the
10136 callback
10137
10138 @see WDI_PostAssocReq
10139 @return Result of the function call
10140*/
10141WDI_Status
10142WDI_ReceiveFilterSetFilterReq
10143(
10144 WDI_SetRcvPktFilterReqParamsType* pwdiSetRcvPktFilterReqInfo,
10145 WDI_ReceiveFilterSetFilterCb wdiReceiveFilterSetFilterReqCallback,
10146 void* pUserData
10147);
10148
10149/**
10150 @brief WDI_PCFilterMatchCountReq
10151
10152 @param pwdiRcvFltPktMatchCntReqInfo: get D0 PC Filter Match
10153 Count
10154
10155 wdiPCFilterMatchCountCallback: callback for passing back
10156 the response of the D0 PC Filter Match Count operation
10157 received from the device
10158
10159 pUserData: user data will be passed back with the
10160 callback
10161
10162 @see WDI_PostAssocReq
10163 @return Result of the function call
10164*/
10165WDI_Status
10166WDI_FilterMatchCountReq
10167(
10168 WDI_RcvFltPktMatchCntReqParamsType* pwdiRcvFltPktMatchCntReqInfo,
10169 WDI_FilterMatchCountCb wdiFilterMatchCountCallback,
10170 void* pUserData
10171);
10172
10173/**
10174 @brief WDI_ReceiveFilterClearFilterReq
10175
10176 @param pwdiRcvFltPktClearReqInfo: the Clear Filter as
10177 specified by the Device Interface
10178
10179 wdiReceiveFilterClearFilterCallback: callback for
10180 passing back the response of the Clear Filter
10181 operation received from the device
10182
10183 pUserData: user data will be passed back with the
10184 callback
10185
10186 @see WDI_PostAssocReq
10187 @return Result of the function call
10188*/
10189WDI_Status
10190WDI_ReceiveFilterClearFilterReq
10191(
10192 WDI_RcvFltPktClearReqParamsType* pwdiRcvFltPktClearReqInfo,
10193 WDI_ReceiveFilterClearFilterCb wdiReceiveFilterClearFilterCallback,
10194 void* pUserData
10195);
10196#endif // WLAN_FEATURE_PACKET_FILTERING
10197
10198/**
10199 @brief WDI_HALDumpCmdReq
10200 Post HAL DUMP Command Event
10201
10202 @param halDumpCmdReqParams: Hal Dump Command Body
10203 @param halDumpCmdRspCb: callback for passing back the
10204 response
10205 @param pUserData: Client Data
10206
10207 @see
10208 @return Result of the function call
10209*/
10210WDI_Status WDI_HALDumpCmdReq(
10211 WDI_HALDumpCmdReqParamsType *halDumpCmdReqParams,
10212 WDI_HALDumpCmdRspCb halDumpCmdRspCb,
10213 void *pUserData
10214);
10215
10216
10217/**
10218 @brief WDI_SetPowerParamsReq
10219
10220 @param pwdiPowerParamsReqParams: the Set Power Params as
10221 specified by the Device Interface
10222
10223 wdiPowerParamsCb: callback for passing back the response
10224 of the Set Power Params operation received from the
10225 device
10226
10227 pUserData: user data will be passed back with the
10228 callback
10229
10230 @return Result of the function call
10231*/
10232WDI_Status
10233WDI_SetPowerParamsReq
10234(
10235 WDI_SetPowerParamsReqParamsType* pwdiPowerParamsReqParams,
10236 WDI_SetPowerParamsCb wdiPowerParamsCb,
10237 void* pUserData
10238);
Sundaresan Ramachandran76e48e82013-07-15 13:07:17 +053010239/**
10240 @brief WDI_dhcpStartInd
10241 Forward the DHCP Start event
10242
10243 @param
10244
10245 wdiDHCPInd: device mode and MAC address is passed
10246
10247 @see
10248 @return Result of the function call
10249*/
10250
10251WDI_Status
10252WDI_dhcpStartInd
10253(
10254 WDI_DHCPInd *wdiDHCPInd
10255);
10256/**
10257 @brief WDI_dhcpStopReq
10258 Forward the DHCP Stop event
10259
10260 @param
10261
10262 wdiDHCPInd: device mode and MAC address is passed
10263
10264 @see
10265 @return Result of the function call
10266*/
10267
10268WDI_Status
10269WDI_dhcpStopInd
10270(
10271 WDI_DHCPInd *wdiDHCPInd
10272);
Jeff Johnson295189b2012-06-20 16:38:30 -070010273
Chittajit Mitraf5413a42013-10-18 14:20:08 -070010274/**
10275 @brief WDI_RateUpdateInd will be called when the upper MAC
10276 requests the device to update rates.
10277
10278 In state BUSY this request will be queued. Request won't
10279 be allowed in any other state.
10280
10281
10282 @param wdiRateUpdateIndParams
10283
10284
10285 @see WDI_Start
10286 @return Result of the function call
10287*/
10288WDI_Status
10289WDI_RateUpdateInd
10290(
10291 WDI_RateUpdateIndParams *wdiRateUpdateIndParams
10292);
10293
Jeff Johnson295189b2012-06-20 16:38:30 -070010294#ifdef WLAN_FEATURE_GTK_OFFLOAD
10295/**
10296 @brief WDI_GTKOffloadReq will be called when the upper MAC
10297 wants to set GTK Rekey Counter while in power save. Upon
10298 the call of this API the WLAN DAL will pack and send a
10299 HAL GTK offload request message to the lower RIVA
10300 sub-system if DAL is in state STARTED.
10301
10302 In state BUSY this request will be queued. Request won't
10303 be allowed in any other state.
10304
10305 WDI_PostAssocReq must have been called.
10306
10307 @param pwdiGtkOffloadParams: the GTK offload as specified
10308 by the Device Interface
10309
10310 wdiGtkOffloadCb: callback for passing back the response
10311 of the GTK offload operation received from the device
10312
10313 pUserData: user data will be passed back with the
10314 callback
10315
10316 @see WDI_PostAssocReq
10317 @return Result of the function call
10318*/
10319WDI_Status
10320WDI_GTKOffloadReq
10321(
10322 WDI_GtkOffloadReqMsg* pwdiGtkOffloadReqMsg,
10323 WDI_GtkOffloadCb wdiGtkOffloadCb,
10324 void* pUserData
10325);
10326
10327/**
10328 @brief WDI_GTKOffloadGetInfoReq will be called when the upper
10329 MAC wants to get GTK Rekey Counter while in power save.
10330 Upon the call of this API the WLAN DAL will pack and
10331 send a HAL GTK offload request message to the lower RIVA
10332 sub-system if DAL is in state STARTED.
10333
10334 In state BUSY this request will be queued. Request won't
10335 be allowed in any other state.
10336
10337 WDI_PostAssocReq must have been called.
10338
10339 @param pwdiGtkOffloadGetInfoReqMsg: the GTK Offload
10340 Information Message as specified by the
10341 Device Interface
10342
10343 wdiGtkOffloadGetInfoCb: callback for passing back the
10344 response of the GTK offload operation received from the
10345 device
10346
10347 pUserData: user data will be passed back with the
10348 callback
10349
10350 @see WDI_PostAssocReq
10351 @return Result of the function call
10352*/
10353WDI_Status
10354WDI_GTKOffloadGetInfoReq
10355(
10356 WDI_GtkOffloadGetInfoReqMsg* pwdiGtkOffloadGetInfoReqMsg,
10357 WDI_GtkOffloadGetInfoCb wdiGtkOffloadGetInfoCb,
10358 void* pUserData
10359);
10360#endif // WLAN_FEATURE_GTK_OFFLOAD
10361
10362/**
10363 @brief WDI_featureCapsExchangeReq
10364 Post feature capability bitmap exchange event.
10365 Host will send its own capability to FW in this req and
10366 expect FW to send its capability back as a bitmap in Response
10367
10368 @param
10369
10370 wdiFeatCapsExcRspCb: callback called on getting the response.
10371 It is kept to mantain similarity between WDI reqs and if needed, can
10372 be used in future. Currently, It is set to NULL
10373
10374 pUserData: user data will be passed back with the
10375 callback
10376
10377 @see
10378 @return Result of the function call
10379*/
10380WDI_Status
10381WDI_featureCapsExchangeReq
10382(
10383 WDI_featureCapsExchangeCb wdiFeatureCapsExchangeCb,
10384 void* pUserData
10385);
10386
10387/**
Yathish9f22e662012-12-10 14:21:35 -080010388 @brief Disable Active mode offload in Host
10389
10390 @param void
10391 @see
10392 @return void
10393*/
10394void
10395WDI_disableCapablityFeature(wpt_uint8 feature_index);
10396
10397
10398/**
Jeff Johnson295189b2012-06-20 16:38:30 -070010399 @brief WDI_getHostWlanFeatCaps
10400 WDI API that returns whether the feature passed to it as enum value in
10401 "placeHolderInCapBitmap" is supported by Host or not. It uses WDI global
10402 variable storing host capability bitmap to find this. This can be used by
10403 other moduels to decide certain things like call different APIs based on
10404 whether a particular feature is supported.
10405
10406 @param
10407
10408 feat_enum_value: enum value for the feature as in placeHolderInCapBitmap in wlan_hal_msg.h.
10409
10410 @see
10411 @return
10412 0 - if the feature is NOT supported in host
10413 any non-zero value - if the feature is SUPPORTED in host.
10414*/
10415wpt_uint8 WDI_getHostWlanFeatCaps(wpt_uint8 feat_enum_value);
10416
10417/**
10418 @brief WDI_getFwWlanFeatCaps
10419 WDI API that returns whether the feature passed to it as enum value in
10420 "placeHolderInCapBitmap" is supported by FW or not. It uses WDI global
10421 variable storing host capability bitmap to find this. This can be used by
10422 other moduels to decide certain things like call different APIs based on
10423 whether a particular feature is supported.
10424
10425 @param
10426
Jeff Johnsone7245742012-09-05 17:12:55 -070010427 feat_enum_value: enum value for the feature as in placeHolderInCapBitmap
10428 in wlan_hal_msg.h.
Jeff Johnson295189b2012-06-20 16:38:30 -070010429
10430 @see
10431 @return
10432 0 - if the feature is NOT supported in FW
10433 any non-zero value - if the feature is SUPPORTED in FW.
10434*/
10435wpt_uint8 WDI_getFwWlanFeatCaps(wpt_uint8 feat_enum_value);
10436
10437/**
10438 @brief WDI_GetWcnssCompiledApiVersion - Function to get wcnss compiled
10439 api version
10440
10441 @param WDI_WlanVersionType: Wlan version structure
10442 @see
10443 @return none
10444*/
10445
10446void WDI_GetWcnssCompiledApiVersion
10447(
10448 WDI_WlanVersionType *pWcnssApiVersion
10449);
10450
Mohit Khanna4a70d262012-09-11 16:30:12 -070010451#ifdef WLAN_FEATURE_11AC
10452WDI_Status
10453WDI_UpdateVHTOpModeReq
10454(
10455 WDI_UpdateVHTOpMode *pData,
10456 WDI_UpdateVHTOpModeCb wdiUpdateVHTOpModeCb,
10457 void* pUserData
10458);
Jeff Johnson295189b2012-06-20 16:38:30 -070010459
Mohit Khanna4a70d262012-09-11 16:30:12 -070010460#endif
Madan Mohan Koyyalamudi8cb53982012-09-28 14:34:47 -070010461
10462/**
10463 @brief WDI_TransportChannelDebug -
10464 Display DXE Channel debugging information
10465 User may request to display DXE channel snapshot
10466 Or if host driver detects any abnormal stcuk may display
10467
Jeff Johnsonb88db982012-12-10 13:34:59 -080010468 @param displaySnapshot : Display DXE snapshot option
Mihir Shete40a55652014-03-02 14:14:47 +053010469 @param debugFlags : Enable stall detect features
10470 defined by WPAL_DeviceDebugFlags
10471 These features may effect
10472 data performance.
Madan Mohan Koyyalamudi8cb53982012-09-28 14:34:47 -070010473 @see
10474 @return none
10475*/
10476void WDI_TransportChannelDebug
10477(
10478 wpt_boolean displaySnapshot,
Mihir Shete40a55652014-03-02 14:14:47 +053010479 wpt_uint8 debugFlags
Madan Mohan Koyyalamudi8cb53982012-09-28 14:34:47 -070010480);
10481
Madan Mohan Koyyalamudi0bfd0002012-10-24 14:39:37 -070010482/**
10483 @brief WDI_SsrTimerCB
10484 Callback function for SSR timer, if this is called then the graceful
10485 shutdown for Riva did not happen.
10486
10487 @param pUserData : user data to timer
10488
10489 @see
10490 @return none
10491*/
10492void
10493WDI_SsrTimerCB
10494(
10495 void *pUserData
10496);
10497
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -070010498/**
10499 @brief WDI_SetEnableSSR -
10500 This API is called to enable/disable SSR on WDI timeout.
10501
10502 @param enableSSR : enable/disable SSR
10503
10504 @see
10505 @return none
10506*/
10507void WDI_SetEnableSSR(wpt_boolean enableSSR);
10508
Leo Chang9056f462013-08-01 19:21:11 -070010509#ifdef FEATURE_WLAN_LPHB
10510/**
10511 @brief WDI_LPHBConfReq
10512 This API is called to config FW LPHB rule
10513
10514 @param lphbconfParam : LPHB rule should config to FW
10515 usrData : Client context
10516 lphbCfgCb : Configuration status callback
10517 @see
10518 @return SUCCESS or FAIL
10519*/
10520WDI_Status WDI_LPHBConfReq
10521(
10522 void *lphbconfParam,
10523 void *usrData,
10524 WDI_LphbCfgCb lphbCfgCb
10525);
10526#endif /* FEATURE_WLAN_LPHB */
Rajeev79dbe4c2013-10-05 11:03:42 +053010527
10528#ifdef FEATURE_WLAN_BATCH_SCAN
10529/**
10530 @brief WDI_SetBatchScanReq
10531 This API is called to set batch scan request in FW
10532
10533 @param pBatchScanReqParam : pointer to set batch scan re param
10534 usrData : Client context
10535 setBatchScanRspCb : set batch scan resp callback
10536 @see
10537 @return SUCCESS or FAIL
10538*/
10539WDI_Status WDI_SetBatchScanReq
10540(
10541 void *pBatchScanReqParam,
10542 void *usrData,
10543 WDI_SetBatchScanCb setBatchScanRspCb
10544);
10545
10546/**
10547 @brief WDI_StopBatchScanInd
10548
10549 @param none
10550
10551 @see
10552
10553 @return Status of the request
10554*/
10555WDI_Status
10556WDI_StopBatchScanInd(WDI_StopBatchScanIndType *pWdiReq);
10557
10558/**
10559 @brief WDI_TriggerBatchScanResultInd
10560 This API is called to pull batch scan result from FW
10561
10562 @param pBatchScanReqParam : pointer to trigger batch scan ind param
10563 usrData : Client context
10564 setBatchScanRspCb : get batch scan resp callback
10565 @see
10566 @return SUCCESS or FAIL
10567*/
10568WDI_Status
10569WDI_TriggerBatchScanResultInd(WDI_TriggerBatchScanResultIndType *pWdiReq);
10570
10571
10572#endif /*FEATURE_WLAN_BATCH_SCAN*/
10573
Sandeep Puligilla8b8b74b2014-02-10 16:39:05 +053010574/**
10575 @brief wdi_HT40OBSSScanInd
10576 This API is called to start OBSS scan
10577
10578 @param pWdiReq : pointer to get ind param
10579 @see
10580 @return SUCCESS or FAIL
10581*/
10582
10583WDI_Status WDI_HT40OBSSScanInd(WDI_HT40ObssScanParamsType *pWdiReq);
10584
10585/**
10586 @brief wdi_HT40OBSSStopScanInd
10587 This API is called to stop OBSS scan
10588
10589 @param bssIdx : bssIdx to stop
10590 @see
10591 @return SUCCESS or FAIL
10592*/
10593
10594WDI_Status WDI_HT40OBSSStopScanInd(wpt_uint8 bssIdx);
10595
Jeff Johnson295189b2012-06-20 16:38:30 -070010596#ifdef __cplusplus
10597 }
10598#endif
10599
Jeff Johnson295189b2012-06-20 16:38:30 -070010600#endif /* #ifndef WLAN_QCT_WDI_H */