CC33XX API Documentation 2.30.00.15

wlan_if.h
Go to the documentation of this file.
1 /*
2 * Copyright (c) 2024, Texas Instruments Incorporated
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 *
16 * * Neither the name of Texas Instruments Incorporated nor the names of
17 * its contributors may be used to endorse or promote products derived
18 * from this software without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 */
42 #ifndef USER_INTEFACE_WLAN_IF_H_
43 #define USER_INTEFACE_WLAN_IF_H_
44
45 #include "osi_kernel.h"
46 /*****************************************************************************/
47 /* TYPES DEFINITIONS */
48 /*****************************************************************************/
49
50 #ifndef NULL
51 #define NULL (0)
52 #endif
53
54 #ifndef FALSE
55 #define FALSE (0)
56 #endif
57
58 #ifndef TRUE
59 #define TRUE (!FALSE)
60 #endif
61 #define DEVICE_ON (1)
62 #define DEVICE_OFF (0)
63 #define WLAN_WAIT_FOREVER (0xFFFFFFFF)
64 #define WLAN_NO_WAIT (0x00000000)
65 #define WLAN_MAX_SCAN_COUNT (20)
66 #define WLAN_BSSID_LENGTH (6)
67 #define WLAN_SSID_MAX_LENGTH (32)
68 #define WLAN_DOT11_MAX_SUPPORTED_RATES (32)
69 #define WLAN_DOT11_HT_CAPABILITIES_ELE_LEN (26)
70 #define WLAN_DOT11_ERP_ELE_LEN (1)
71 #define WLAN_MAX_BEACON_BODY_LENGTH (700)
72 #define WLAN_DOT11_MAX_RSNE_SIZE (257)
73 #define WLAN_DOT11_MAX_BEACON_BODY_LENGTH (700)
74 #define WLAN_DOT11_MAX_WPSIE_SIZE (350)
75
76 #define WLAN_LEN_OF_IE_HEADER (2)
77
78 #define MAC_ADDRESS_LEN (6)
79 #define WLAN_MAX_MAC_ADDRESSES (4)
80
81 /* WLAN Disconnect Reason Codes */
82 #define WLAN_DISCONNECT_UNSPECIFIED (1)
83 #define WLAN_DISCONNECT_AUTH_NO_LONGER_VALID (2)
84 #define WLAN_DISCONNECT_DEAUTH_SENDING_STA_LEAVING (3)
85 #define WLAN_DISCONNECT_INACTIVITY (4)
86 #define WLAN_DISCONNECT_TOO_MANY_STA (5)
87 #define WLAN_DISCONNECT_FRAME_FROM_NONAUTH_STA (6)
88 #define WLAN_DISCONNECT_FRAME_FROM_NONASSOC_STA (7)
89 #define WLAN_DISCONNECT_DISS_SENDING_STA_LEAVING (8)
90 #define WLAN_DISCONNECT_STA_NOT_AUTH (9)
91 #define WLAN_DISCONNECT_POWER_CAPABILITY_INVALID (10)
92 #define WLAN_DISCONNECT_SUPPORTED_CHANNELS_INVALID (11)
93 #define WLAN_DISCONNECT_INVALID_IE (13)
94 #define WLAN_DISCONNECT_MIC_FAILURE (14)
95 #define WLAN_DISCONNECT_FOURWAY_HANDSHAKE_TIMEOUT (15)
96 #define WLAN_DISCONNECT_GROUPKEY_HANDSHAKE_TIMEOUT (16)
97 #define WLAN_DISCONNECT_REASSOC_INVALID_IE (17)
98 #define WLAN_DISCONNECT_INVALID_GROUP_CIPHER (18)
99 #define WLAN_DISCONNECT_INVALID_PAIRWISE_CIPHER (19)
100 #define WLAN_DISCONNECT_INVALID_AKMP (20)
101 #define WLAN_DISCONNECT_UNSUPPORTED_RSN_VERSION (21)
102 #define WLAN_DISCONNECT_INVALID_RSN_CAPABILITIES (22)
103 #define WLAN_DISCONNECT_IEEE_802_1X_AUTHENTICATION_FAILED (23)
104 #define WLAN_DISCONNECT_CIPHER_SUITE_REJECTED (24)
105 #define WLAN_DISCONNECT_DISASSOC_QOS (32)
106 #define WLAN_DISCONNECT_DISASSOC_QOS_BANDWIDTH (33)
107 #define WLAN_DISCONNECT_DISASSOC_EXCESSIVE_ACK_PENDING (34)
108 #define WLAN_DISCONNECT_DISASSOC_TXOP_LIMIT (35)
109 #define WLAN_DISCONNECT_STA_LEAVING (36)
110 #define WLAN_DISCONNECT_STA_DECLINED (37)
111 #define WLAN_DISCONNECT_STA_UNKNOWN_BA (38)
112 #define WLAN_DISCONNECT_STA_TIMEOUT (39)
113 #define WLAN_DISCONNECT_STA_UNSUPPORTED_CIPHER_SUITE (40)
114 #define WLAN_DISCONNECT_ROAMING_TRIGGER_NONE (100)
115 #define WLAN_DISCONNECT_ROAMING_TRIGGER_LOW_TX_RATE (104)
116 #define WLAN_DISCONNECT_ROAMING_TRIGGER_LOW_SNR (105)
117 #define WLAN_DISCONNECT_ROAMING_TRIGGER_LOW_QUALITY (106)
118 #define WLAN_DISCONNECT_ROAMING_TRIGGER_TSPEC_REJECTED (107)
119 #define WLAN_DISCONNECT_ROAMING_TRIGGER_MAX_TX_RETRIES (108)
120 #define WLAN_DISCONNECT_ROAMING_TRIGGER_BSS_LOSS (109)
121 #define WLAN_DISCONNECT_ROAMING_TRIGGER_BSS_LOSS_DUE_TO_MAX_TX_RETRY (110)
122 #define WLAN_DISCONNECT_ROAMING_TRIGGER_SWITCH_CHANNEL (111)
123 #define WLAN_DISCONNECT_ROAMING_TRIGGER_AP_DISCONNECT (112)
124 #define WLAN_DISCONNECT_ROAMING_TRIGGER_SECURITY_ATTACK (113)
125 #define WLAN_DISCONNECT_USER_INITIATED (200)
126 #define WLAN_DISCONNECT_AUTH_TIMEOUT (202)
127 #define WLAN_DISCONNECT_ASSOC_TIMEOUT (203)
128 #define WLAN_DISCONNECT_SECURITY_FAILURE (204)
129 #define WLAN_DISCONNECT_WHILE_CONNNECTING (208)
130 #define WLAN_DISCONNECT_MISSING_CERT (209)
131 #define WLAN_DISCONNECT_CERTIFICATE_EXPIRED (210)
132
133 #define WLAN_SEC_TYPE_OPEN (0)
134 #define WLAN_SEC_TYPE_WEP (1)
135 #define WLAN_SEC_TYPE_WPA (2) /* deprecated */
136 #define WLAN_SEC_TYPE_WPA_WPA2 (2)
137 #define WLAN_SEC_TYPE_WPS_PBC (3)
138 #define WLAN_SEC_TYPE_WPS_PIN (4)
139 #define WLAN_SEC_TYPE_WPA_ENT (5)
140 #define WLAN_SEC_TYPE_P2P_PBC (6)
141 #define WLAN_SEC_TYPE_P2P_PIN_KEYPAD (7)
142 #define WLAN_SEC_TYPE_P2P_PIN_DISPLAY (8)
143 #define WLAN_SEC_TYPE_P2P_PIN_AUTO (9) /* NOT Supported yet */
144 #define WLAN_SEC_TYPE_WEP_SHARED (10)
145 #define WLAN_SEC_TYPE_WPA2_PLUS (11) /* Support to WPA2 WPA2+PMF (Protected Managmant Frame) networks */
146 #define WLAN_SEC_TYPE_WPA3 (12) /* Support WPA3 only networks */
147 #define WLAN_SEC_TYPE_WPA_PMK (15)
148 #define WLAN_SEC_TYPE_WPA2_WPA3 (16) /*transition mode WPA2 WPA2+PMF WPA3 */
149
150 /* AP access List Macros */
151 #define WLAN_AP_ACCESS_LIST_MODE_DISABLED 0
152 #define WLAN_AP_ACCESS_LIST_MODE_DENY_LIST 1
153 #define WLAN_AP_ACCESS_LIST_MODE_ALLOW_LIST 2
154 #define WLAN_AP_ACCESS_LIST_UPDATE_RAM_FLASH 0
155 #define WLAN_AP_ACCESS_LIST_UPDATE_RAM_ONLY 1
156 #define WLAN_MAX_ACCESS_LIST_STATIONS 16
157 #define WLAN_AP_ACCESS_LIST_WILDCARD_LEN 6
158
159
160 /* Scan results security information */
161
162 #define SL_WLAN_SCAN_RESULT_SEC_TYPE_MASK 0x7
163 #define SL_WLAN_SCAN_RESULT_SEC_TYPE_POSITION 8
164
165 #define SL_WLAN_SCAN_RESULT_GROUP_CIPHER_MASK 0xf
166 #define SL_WLAN_SCAN_RESULT_GROUP_CIPHER_POSITION 0
167
168 #define SL_WLAN_SCAN_RESULT_UNICAST_CIPHER_MASK 0xf
169 #define SL_WLAN_SCAN_RESULT_UNICAST_CIPHER_POSITION 4
170
171 #define SL_WLAN_SCAN_RESULT_KEY_MGMT_MASK 0x3
172 #define SL_WLAN_SCAN_RESULT_KEY_MGMT_POSITION 11
173
174
175 #define WLAN_SCAN_RESULT_GROUP_CIPHER(SecurityInfo) (SecurityInfo & 0xF) /* Possible values: NONE,TKIP,CCMP */
176 #define WLAN_SCAN_RESULT_UNICAST_CIPHER_BITMAP(SecurityInfo) ((SecurityInfo & 0xF0) >> 4 ) /* Possible values: NONE,WEP40,WEP104,TKIP,CCMP*/
177 #define WLAN_SCAN_RESULT_HIDDEN_SSID(SecurityInfo) (SecurityInfo & 0x2000 ) >> 13 /* Possible values: TRUE/FALSE */
178 #define WLAN_SCAN_RESULT_KEY_MGMT_SUITES_BITMAP(SecurityInfo) (SecurityInfo & 0x1800 ) >> 11 /* Possible values: OPEN, PSK*/
179 #define WLAN_SCAN_RESULT_SEC_TYPE_BITMAP(SecurityInfo) ((SecurityInfo & (SL_WLAN_SCAN_RESULT_SEC_TYPE_MASK << SL_WLAN_SCAN_RESULT_SEC_TYPE_POSITION)) >> SL_WLAN_SCAN_RESULT_SEC_TYPE_POSITION) /* Possible values: SL_WLAN_SECURITY_TYPE_BITMAP_OPEN, SL_WLAN_SECURITY_TYPE_BITMAP_WEP, SL_WLAN_SECURITY_TYPE_BITMAP_WPA, SL_WLAN_SECURITY_TYPE_BITMAP_WPA2, 0x6 (mix mode) SL_WLAN_SECURITY_TYPE_BITMAP_WPA | SL_WLAN_SECURITY_TYPE_BITMAP_WPA2 */
180 #define WLAN_SCAN_RESULT_PMF_ENABLE(SecurityInfo) ((SecurityInfo & 0x4000 ) >> 14) /* Possible values: TRUE/FALSE */
181 #define WLAN_SCAN_RESULT_PMF_REQUIRED(SecurityInfo) ((SecurityInfo & 0x8000 ) >> 15) /* Possible values: TRUE/FALSE */
182
183 #define WLAN_BEACON_MAX_SIZE 450
184
185
186 /*****************************************************************************/
187 /* STRUCTURE DEFINITIONS */
188 /*****************************************************************************/
189 typedef struct
190 {
191 uint8_t Ssid[WLAN_SSID_MAX_LENGTH];
192 uint8_t Bssid[WLAN_BSSID_LENGTH];
193 uint8_t SsidLen;
194 int8_t Rssi;
195 uint16_t SecurityInfo;
196 uint8_t Channel;
197 }WlanNetworkEntry_t;
198
199 typedef struct
200 {
201 uint8_t Ssid[WLAN_SSID_MAX_LENGTH];
202 uint8_t Bssid[WLAN_BSSID_LENGTH];
203 uint8_t SsidLen;
204 int8_t Rssi;
205 uint16_t SecurityInfo;
206 uint8_t Channel;
207
208 uint16_t mRatesLen;
209 uint8_t mRates[WLAN_DOT11_MAX_SUPPORTED_RATES + WLAN_LEN_OF_IE_HEADER];
210
211 uint16_t HtCapabilitiesLen; // HT capabilities IE were received
212 uint8_t HtCapabilitiesIe[WLAN_DOT11_HT_CAPABILITIES_ELE_LEN + WLAN_LEN_OF_IE_HEADER]; /* HT capabilities IE unparsed */
213
214 uint16_t erpIeLen; // HT capabilities IE were received
215 uint8_t erpIe[WLAN_DOT11_ERP_ELE_LEN + WLAN_LEN_OF_IE_HEADER];;
216 Bool_e mErpPresent;
217 uint8_t mUseProtection; //erp capabilities
218 uint8_t/*EPreamble*/ mBarkerPreambleMode; //erp capabilities
219
220 uint8_t rsnIeLen;//the len includes the header
221 uint8_t rsnIeData[WLAN_DOT11_MAX_RSNE_SIZE + WLAN_LEN_OF_IE_HEADER];
222
223 uint8_t wpaIeLen;
224 uint8_t wpaIeData[WLAN_DOT11_MAX_RSNE_SIZE + WLAN_LEN_OF_IE_HEADER];
225
226 uint16_t wpsLen;
227 uint8_t wpsIeData[WLAN_DOT11_MAX_WPSIE_SIZE + WLAN_LEN_OF_IE_HEADER];
228 Bool_e wpsPresent;
229
230 uint16_t beaconInterval;
231 uint16_t capabilities;
232
233 }WlanNetworkEntryExtended_t;
234
235 typedef struct
236 {
237 /* Sec Type */
238 uint8_t Type;
239 /* Sec Key */
240 int8_t* Key;
241 /* Key Length */
242 uint8_t KeyLen;
243 }WlanSecParams_t;
244
245 typedef struct WpsParams
246 {
247 /* WPS UUID */
248 const uint8_t *uuid;
249 /* WPS device name */
250 const char *deviceName;
251 /* WPS manufacturer */
252 const char *manufacturer;
253 /* WPS model name */
254 const char *modelName;
255 /* WPS model number */
256 const char *modelNumber;
257 /* WPS serial number */
258 const char *serialNumber;
259 /* WPS device type */
260 const uint8_t *deviceType;
261 /* WPS os version */
262 const uint8_t *osVersion;
263 /* WPS config methods */
264 const char *configMethods;
265 }WpsParams_t;
266
267 typedef struct P2pParams
268 {
269 /* P2P Listen Channel */
270 uint8_t listenChannel;
271 /* P2P Listen Reg Class */
272 uint8_t listenReg;
273 /* P2P Operational Channel */
274 uint8_t operChannel;
275 /* P2P Operational Reg Class */
276 uint8_t operReg;
277 /* P2P GO Intent [0 - 15] */
278 uint8_t goIntent;
279 /* P2P SSID postfix */
280 char *p2pSsidPostfix;
281
282 uint32_t reserved;
283 }P2pParams_t;
284
285 typedef struct RoleUpApCmd
286 { /* Ap's SSID */
287 uint8_t *ssid;
288 /* Determine if AP has hidden SSID */
289 uint8_t hidden;
290 /* 802.11 WLAN channel [1-12] */
291 uint8_t channel;
292 /* The AP's TX power */
293 uint8_t tx_pow;
294 /* Limits the number of stations that the AP's has */
295 uint8_t sta_limit;
296 /* Security parameters - Security Type and Password */
297 WlanSecParams_t secParams;
298 /* Set regulatory Domain */
299 uint8_t countryDomain[3];
300 /* Set AP to start as autonomous P2P Group Owner */
301 uint8_t p2p_aGO; //TRUE/FALSE
302 /* AP WPS enabled/disabled */
303 Bool_e wpsDisabled; //TRUE/FALSE
304 /* Set WPS parameters */
305 WpsParams_t wpsParams;
306 /* P2P enabled/disabled */
307 Bool_e p2pDeviceEnabled; //TRUE/FALSE
308 /* Set P2P Params */
309 P2pParams_t P2pParams;
310 }RoleUpApCmd_t;
311
312 typedef struct
313 {
314 /* Event to wake up on */
315 uint8_t WakeUpEvent;
316 /* number of DTIMs */
317 uint8_t ListenInterval;
318 } WlanLongSleepInterval;
319
320 typedef struct __PACKED__
321 {
322 uint8_t enableVal;
323 uint8_t padding[3];
324 }CalibratorSetTransmitOmiParams_t;
325
326
327 typedef struct __PACKED__
328 {
329 uint8_t enableVal;
330 uint8_t padding[3];
331 }CalibratorSetPowerHeaderParams_t;
332
333 typedef struct __PACKED__
334 {
335 uint8_t index;
336 uint32_t value;
337 uint8_t padding[3];
338 }CalibratorSetPsmParams_t;
339
340 typedef struct __PACKED__
341 {
342 uint8_t enableVal;
343 uint8_t padding[3];
344 }CalibratorSetUplinkMuDataParams_t;
345
346 typedef struct __PACKED__
347 {
348 uint8_t rateVal;
349 uint8_t padding[3];
350 }CalibratorSetMcsRateParams_t;
351
352 typedef struct __PACKED__
353 {
354 uint8_t enableVal;
355 uint8_t padding[3];
356 }CalibratorOperationModeControlParams_t;
357
358 typedef struct __PACKED__
359 {
360 uint8_t enableVal;
361 uint8_t padding[3];
362 }CalibratorUplinkMuParams_t;
363
364 typedef struct __PACKED__
365 {
366 uint8_t value;
367 uint8_t padding[3];
368 }CalibratorGiLtfModeParams_t;
369
370 typedef struct __PACKED__
371 {
372 uint8_t beaconRssi;
373 uint8_t padding[3];
374 }CalibratorBeaconRssiParams_t;
375
376 typedef struct __PACKED__
377 {
378 uint8_t overEnable;
379 uint8_t bw;
380 uint8_t preamble;
381 uint8_t rate;
382 uint8_t dcm;
383 uint8_t txPower;
384 uint8_t giLTF;
385 uint8_t padding;
386 }CalibratorRateOverrideParams_t;
387
388 typedef struct __PACKED__
389 {
390 uint32_t receivedTotalPacketsNumber;
391 uint32_t receivedFcsErrorPacketsNumber;
392 uint32_t receivedAddressMismatchPacketsNumber;
393 uint32_t receivedGoodPackets;
394 int16_t averageDataCtrlRssi;
395 int16_t averageDataCtrlSNR;
396 }CalibratorGetRxParams_t;
397
398 typedef struct __PACKED__
399 {
400 uint8_t channel;
401 uint8_t band;
402 uint8_t bandwidth;
403 }CalibratorChannelTuneParams_t;
404
405 typedef struct __PACKED__
406 {
407 uint32_t bitmask;
408 uint8_t preambleType;
409 uint8_t phyRate;
410 int8_t txPower;
411 uint8_t GI_LTF_Type;
412 uint8_t DCM;
413 uint16_t startLength;
414 uint16_t endLength;
415 uint32_t delay;
416 uint8_t packetMode;
417 uint16_t numberOfPackets;
418 uint8_t dataMode;
419 uint8_t dataConstValue;
420 uint8_t enableCCA;
421 uint8_t bssColor;
422 uint16_t SU_ER_Bandwidth;
423 uint8_t partialAID;
424 uint8_t srcAddr[MAC_ADDRESS_LEN];
425 uint8_t dstAddr[MAC_ADDRESS_LEN];
426 uint8_t nominalPacketExtension;
427 uint8_t feedbackStatus;
428 uint16_t aid;
429 uint8_t groupId;
430 uint8_t ltfMode;
431 uint8_t heLtfNum;
432 uint8_t preFecPaddingFactor;
433 uint16_t commonInfoLen;
434 uint16_t ruAlloc;
435 uint8_t ulBw;
436 uint8_t startsStsNum;
437 uint8_t tbAutoMode;
438 uint8_t disamb;
439 uint8_t padding[1];
440 }CalibratorStartTxParams_t;
441
442
443 typedef struct __PACKED__
444 {
445 uint8_t mode;
446 int8_t offset;
447 int8_t output_power;
448 }CalibratorStartTxToneParams_t;
449
450 typedef struct __PACKED__
451 {
452 uint16_t io_id;
453 uint8_t direction;
454 uint8_t state;
455 }CalibratorSetIoCfgParams_t;
456
457 typedef struct __PACKED__
458 {
459 uint16_t io_id;
460 uint8_t direction;
461 uint8_t value;
462 }CalibratorGetIoCfgParams_t;
463
464 typedef struct __PACKED__
465 {
466 uint8_t ackEnable;
467 uint8_t macAddress[MAC_ADDRESS_LEN];
468 uint16_t aid;
469 uint8_t preambleType;
470 uint8_t rate;
471 uint8_t padding;
472 }CalibratorStartRxParams_t;
473
474 typedef struct
475 {
476 uint8_t calibratorAction;
477 void *calibratorCommandParams;
478 }CalibratorCommandWrapper_t;
479
480 /*****************************************************************************/
481 /* EVENTS DEFINITIONS */
482 /*****************************************************************************/
483 typedef enum
484 {
485 WLAN_EVENT_CONNECT = 1,
486 WLAN_EVENT_DISCONNECT,
487 WLAN_EVENT_SCAN_RESULT,
488 WLAN_EVENT_ADD_PEER,
489 WLAN_EVENT_REMOVE_PEER,
490 WLAN_EVENT_CONNECTING,
491 WLAN_EVENT_ACTION_FRAME_RX,
492 WLAN_EVENT_ASSOCIATED,
493 WLAN_EVENT_AP_EXT_WPS_SETTING_FAILED,
494 WLAN_EVENT_BLE_ENABLED,
495 WLAN_EVENT_CS_FINISH,
496 WLAN_EVENT_ROC_DONE,
497 WLAN_EVENT_CROC_DONE,
498 WLAN_EVENT_SEND_ACTION_DONE,
499 WLAN_EVENT_EXTENDED_SCAN_RESULT,
500 WLAN_EVENT_MAX = 0xFFFF
501 } WlanEventId_e;
502
503 typedef struct
504 {
505 uint8_t SsidLen;
506 uint8_t SsidName[WLAN_SSID_MAX_LENGTH];
507 uint8_t Bssid[WLAN_BSSID_LENGTH];
508 uint8_t Channel;
509 } WlanEventConnect_t;
510
511 typedef struct
512 {
513 uint8_t SsidLen;
514 uint8_t SsidName[WLAN_SSID_MAX_LENGTH];
515 uint8_t Bssid[WLAN_BSSID_LENGTH];
516 } WlanEventConnecting_t;
517
518
519 typedef struct
520 {
521 uint8_t SsidLen;
522 uint8_t SsidName[WLAN_SSID_MAX_LENGTH];
523 uint8_t Bssid[WLAN_BSSID_LENGTH];
524 int16_t ReasonCode;
525 } WlanEventDisconnect_t;
526
527 typedef struct
528 {
529 uint32_t NetworkListResultLen;
530 WlanNetworkEntry_t NetworkListResult[WLAN_MAX_SCAN_COUNT];
531
532 } WlanEventScanResult_t;
533
534 typedef struct
535 {
536 uint32_t NetworkListResultLen;
537 WlanNetworkEntryExtended_t NetworkListResult[WLAN_MAX_SCAN_COUNT];
538
539 }WlanEventExtendedScanResult_t;
540
541 typedef struct
542 {
543 uint8_t Mac[6];
544 uint8_t Padding[2];
545 }WlanEventSTAAdded_t, WlanEventSTARemoved_t;
546
547 typedef struct
548 {
549 uint8* frame;//(struct ieee80211_mgmt *)
550 uint32 frame_len;
551 uint32 dataRate;
552 int32 rssi_signal;
553 int32 rx_freq;
554 }WlanEvenWfdMgmtFrame_t;
555
556 typedef union
557 {
558 /* STA Role */
559 WlanEventConnect_t Connect; /* WLAN_EVENT_CONNECT */
560 WlanEventConnecting_t Connecting; /* WLAN_EVENT_CONNECTING */
561 WlanEventDisconnect_t Disconnect; /* WLAN_EVENT_DISCONNECT */
562 WlanEventScanResult_t ScanResult; /* WLAN_EVENT_SCAN_RESULT */
563 WlanEventExtendedScanResult_t* pExtendedScanResult; /* WLAN_EVENT_EXTENDED_SCAN_RESULT */
564 uint8 newChannel; /* WLAN_EVENT_CS_FINISH */
565
566 /* AP Role */
567 WlanEventSTAAdded_t AddPeer; /* WLAN_EVENT_ADD_PEER */
568 WlanEventSTARemoved_t RemovePeer; /* WLAN_EVENT_REMOVE_PEER */
569 WlanEvenWfdMgmtFrame_t WfdActionFrame;/* WLAN_EVENT_ACTION_FRAME_RX - this event will be triggered only if defined WlanExternalApp_t*/
570 int8_t wpsFailCode; /* WLAN_EVENT_AP_EXT_WPS_SETTING_FAILED - reason code arrives from supplicant */
571 int32_t bleEnableStatus;
572 } WlanEventData_u;
573
574 typedef struct
575 {
576 WlanEventId_e Id;
577 WlanEventData_u Data;
578
579 } WlanEvent_t;
580
581 /* Host Event handler Callback*/
582 typedef void (* WlanEventHandlerCB_t)(WlanEvent_t * pWlanEvent);
583
584 /*****************************************************************************/
585 /* OTHER DEFINITIONS */
586 /*****************************************************************************/
587 typedef enum
588 {
589 WLAN_MAC_OFFSET_ROLE_STA,
590 WLAN_MAC_OFFSET_ROLE_BLE,
591 WLAN_MAC_OFFSET_ROLE_DEVICE,
592 WLAN_MAC_OFFSET_ROLE_AP,
593 WLAN_MAC_OFFSET_ROLE_P2P_GO = WLAN_MAC_OFFSET_ROLE_AP,
594 }WlanMacAddOffset_e;
595
596 //this is also roleTypes must to be same numbers as in :RoleType_e
597 typedef enum
598 {
599 WLAN_ROLE_STA , /* 0 */
600 WLAN_ROLE_IBSS , /* 1 */
601 WLAN_ROLE_AP , /* 2 */
602 WLAN_ROLE_DEVICE , /* 3 */
603 WLAN_ROLE_P2P_CL , /* 4 */
604 WLAN_ROLE_P2P_GO , /* 5 */
605 WLAN_ROLE_RESERVED
606 }WlanRole_e;
607
608 typedef enum
609 {
610 WLAN_STATION_AUTO_PS_MODE,
611 WLAN_STATION_ACTIVE_MODE,
612 WLAN_STATION_POWER_SAVE_MODE,
613 WLAN_STATION_NUM_OF_MODES
614 }WlanPowerSave_e;
615
616 typedef enum
617 {
618 POWER_MANAGEMENT_ALWAYS_ACTIVE_MODE,
619 POWER_MANAGEMENT_POWER_DOWN_MODE,
620 POWER_MANAGEMENT_ELP_MODE,
621 POWER_MANAGEMENT_NUM_OF_MODES
622 } WlanPowerManagement_e;
623
624 typedef enum
625 {
626 WAKE_UP_EVENT_BEACON = 0x01, /* Wake on every Beacon */
627 WAKE_UP_EVENT_DTIM = 0x02, /* Wake on every DTIM */
628 WAKE_UP_EVENT_N_DTIM = 0x04, /* Wake every Nth DTIM */
629 WAKE_UP_EVENT_LIMIT = WAKE_UP_EVENT_N_DTIM,
630 }WlanWakeUpEvent_e;
631
632 typedef struct
633 {
634 /* Saved the configured role bitmap - each bit indicates specific role */
635 uint32_t hostConfiguredRolesBitmap;
636 /* Saved the event handler Callback function */
637 WlanEventHandlerCB_t eventHandlerCB;
638 /* Saved the device current power save mode */
639 WlanPowerSave_e devicePowerSaveMode;
640 } StartRoleApps_t;
641
642 #define WLAN_MAX_SCAN_SSID 5
643 typedef struct
644 {
645 uint8_t ssidLen;
646 uint8_t pSsid[WLAN_SSID_MAX_LENGTH];
647 uint8_t mHidden;// 1 = SSID_TYPE_HIDDEN, 0 = SSID_TYPE_PUBLIC
648 uint8_t padding[2];
649 }scan_ssid_t;
650
651 //Taken from dot11CommonRadioApi.h
652 typedef enum
653 {
654 BAND_SEL_ONLY_2_4GHZ,
655 BAND_SEL_ONLY_5GHZ,
656 BAND_SEL_BOTH
657 } WlanBandCfg_e;
658
659 typedef struct
660 {
661 scan_ssid_t ssidLst[WLAN_MAX_SCAN_SSID];
662 WlanBandCfg_e Band; //added 0 - 2.4, 1 = 5G , 2 = Both
663 uint8_t extWpsMode;
664 }scanCommon_t;
665 typedef enum
666 {
667 WLAN_SET_MACADDRESS,
668 WLAN_SET_POWER_SAVE,
669 WLAN_SET_POWER_MANAGEMENT,
670 WLAN_SET_LSI,
671 WLAN_SET_CALIBRATOR_POWER_MODE,
672 WLAN_SET_CALIBRATOR_CHANNEL_TUNE,
673 WLAN_SET_CALIBRATOR_TX_START,
674 WLAN_SET_CALIBRATOR_TX_TONE_START,
675 WLAN_SET_CALIBRATOR_TX_STOP,
676 WLAN_SET_CALIBRATOR_START_RX,
677 WLAN_SET_CALIBRATOR_STOP_RX,
678 WLAN_SET_CALIBRATOR_TX_PARAMS,
679 WLAN_SET_CALIBRATOR_TB_TX_PARAMS,
680 WLAN_SET_CALIBRATOR_RATE_OVERRIDE,
681 WLAN_SET_CALIBRATOR_GI_LTF,
682 WLAN_SET_CALIBRATOR_UPLINK_MU,
683 WLAN_SET_CALIBRATOR_OPERATION_MODE_CONTROL,
684 WLAN_SET_CALIBRATOR_SWITCH_ANT,
685 WLAN_SET_CALIBRATOR_MCS_RATE,
686 WLAN_SET_CALIBRATOR_UPLINK_MU_DATA,
687 WLAN_SET_CALIBRATOR_PSM,
688 WLAN_SET_CALIBRATOR_UPLINK_POWER_HEADER,
689 WLAN_SET_CALIBRATOR_TRANSMIT_OSI,
690 WLAN_SET_CALIBRATOR_MANUAL_CALIBRATION,
691 WLAN_SET_CALIBRATOR_SET_IO_CFG,
692 WLAN_SET_CALIBRATOR_BLE_ENABLE,
693 WLAN_SET_RESET_COUNTERS,
694 WLAN_SET_ANTENNA_SELECT,
695 WLAN_SET_VENDOR_IE,
696 WLAN_SET_TX_CTRL,
697 WLAN_SET_EXTERNAL,
698 WLAN_SET_EXT_P2P_BUILD_ACTION_FRAME,
699 WLAN_SET_EXT_OFFCHANNEL_ROC,
700 WLAN_SET_EXT_OFFCHANNEL_SEND_RAW_ACTION,
701 WLAN_SET_EXT_WPS_SESSION,
702 WLAN_EXTENDED_SCAN_RESULTS,
703 WLAN_SET_BLE_ENABLE,
704 } WlanSet_e;
705
706 typedef enum
707 {
708 WLAN_GET_MACADDRESS,
709 WLAN_GET_POWER_SAVE,
710 WLAN_GET_CALIBRATOR_TX_PARAMS,
711 WLAN_GET_CALIBRATOR_RX_STATS,
712 WLAN_GET_CALIBRATOR_GET_IO_CFG,
713 WLAN_GET_ANTENNA_SELECT,
714 WLAN_GET_RSSI,
715 WLAN_GET_FWVERSION,
716 WLAN_GET_DEVICE_INFO,
717 WLAN_GET_CALIBRATOR_BEACON_RSSI,
718 WLAN_GET_COUNTERS,
719 WLAN_GET_CONNECTION_KEY_MANAGEMENT,
720 WLAN_GET_EXTERNAL,
721 } WlanGet_e;
722
723 typedef struct
724 {
725 WlanRole_e roleType;
726 unsigned char pMacAddress[6];
727 }WlanMacAddress_t;
728
729 typedef struct
730 {
731 uint16 major_version;
732 uint16 minor_version;
733 uint16 api_version;
734 uint16 build_version;
735
736 uint8 phy_version[6];
737 uint8 pad[2];
738 } WlanFWVersions_t;
739
740 typedef struct __PACKED__
741 {
742 uint8 role_id;
743 uint8 pad[3];
744 uint32 missed_beacons;
745 uint8 snr_data;
746 uint8 snr_beacon;
747 int8 rssi_data;
748 int8 rssi_beacon;
749 } WlanBeaconRssi_t;
750
751
752 typedef enum
753 {
754 CALIBRATOR_ACTION_SET_POWER_MODE,
755 CALIBRATOR_ACTION_CHANNEL_TUNE,
756 CALIBRATOR_ACTION_TX_START,
757 CALIBRATOR_ACTION_TX_STOP,
758 CALIBRATOR_ACTION_TX_TONE_START,
759 CALIBRATOR_ACTION_START_RX,
760 CALIBRATOR_ACTION_STOP_RX,
761 CALIBRATOR_ACTION_GET_RX_STATS,
762 CALIBRATOR_ACTION_SET_TX_PARAMS,
763 CALIBRATOR_ACTION_GET_TX_PARAMS,
764 CALIBRATOR_ACTION_SET_TB_TX_PARAMS,
765 CALIBRATOR_ACTION_RATE_OVERRIDE,
766 CALIBRATOR_ACTION_GET_BEACON_RSSI,
767 CALIBRATOR_ACTION_SET_GI_LTF,
768 CALIBRATOR_ACTION_SET_UPLINK_MU,
769 CALIBRATOR_ACTION_SET_OPERATION_MODE_CONTROL,
770 CALIBRATOR_ACTION_SET_MCS_RATE,
771 CALIBRATOR_ACTION_SET_UPLINK_MU_DATA,
772 CALIBRATOR_ACTION_SET_PSM,
773 CALIBRATOR_ACTION_SET_UPLINK_POWER_HEADER,
774 CALIBRATOR_ACTION_SET_TRANSMIT_OMI,
775 CALIBRATOR_ACTION_MANUAL_CALIBRATION,
776 CALIBRATOR_ACTION_SWITCH_ANT,
777 CALIBRATOR_ACTION_SET_IO_CFG,
778 CALIBRATOR_ACTION_GET_IO_CFG,
779 CALIBRATOR_ACTION__BLE_ENABLE
780
781 } CalibratorAction_e;
782
783 typedef enum
784 {
785 PLT_OFF,
786 PLT_ON
787 } CalibratorPowerModes_e;
788
789 typedef enum {
790 CALIBRATOR_SET_TX_PREAMBLE_TYPE_BIT,
791 CALIBRATOR_SET_TX_PHY_RATE_BIT,
792 CALIBRATOR_SET_TX_TX_POWER_BIT,
793 CALIBRATOR_SET_TX_GI_LTF_TYPE_BIT,
794 CALIBRATOR_SET_TX_DCM_BIT,
795 CALIBRATOR_SET_TX_LENGTH_BIT,
796 CALIBRATOR_SET_TX_DELAY_BIT,
797 CALIBRATOR_SET_TX_PACKET_MODE_BIT,
798 CALIBRATOR_SET_TX_NUMBER_OF_PACKETS_BIT,
799 CALIBRATOR_SET_TX_DATA_MODE_BIT,
800 CALIBRATOR_SET_TX_DATA_CONST_VALUE_BIT,
801 CALIBRATOR_SET_TX_ENABLE_CCA_BIT,
802 CALIBRATOR_SET_TX_BSS_COLOR_BIT,
803 CALIBRATOR_SET_TX_SU_ER_BANDWIDTH_BIT,
804 CALIBRATOR_SET_TX_PARTIAL_AID_BIT,
805 CALIBRATOR_SET_TX_SRC_ADDR_BIT,
806 CALIBRATOR_SET_TX_DST_ADDR_BIT,
807 CALIBRATOR_SET_TX_NOMINAL_PACKET_EXTENSION_BIT,
808 CALIBRATOR_SET_TX_FEEDBACK_STATUS_BIT,
809 CALIBRATOR_SET_TX_AID_BIT,
810 CALIBRATOR_SET_TX_GROUP_ID_BIT,
811 CALIBRATOR_SET_TX_LTF_MODE_BIT,
812 CALIBRATOR_SET_TX_HE_LTF_NUM_BIT,
813 CALIBRATOR_SET_TX_PRE_FEC_PADDING_FACTOR_BIT,
814 CALIBRATOR_SET_TX_COMMON_INFO_LEN_BIT,
815 CALIBRATOR_SET_TX_RU_ALLOC_BIT,
816 CALIBRATOR_SET_TX_UL_BW_BIT,
817 CALIBRATOR_SET_TX_STARTS_STS_NUM_BIT,
818 CALIBRATOR_SET_TX_TB_AUTO_MODE_BIT,
819 CALIBRATOR_SET_TX_TB_DISAMB_MODE_BIT
820 }CalibratorSetTxBits_e;
821
822 typedef struct
823 {
824 /* Threshold of transition between TCP thread and TRANSPORT thread */
825 uint32_t TxSendPaceThresh;
826 /* Tx-Send pacing threshold */
827 uint32_t TxSendPaceTimeoutMsec;
828 /* Indicate if run schedualer after TX Complete */
829 uint32_t TransmitQOnTxComplete ;
830 } WlanCtrlBlk_t;
831
832 typedef struct
833 {
834
835 uint32_t counters_timeLastReset_Ms;
836 uint32_t counters_timeLastUpdate_Ms;
837
841
842 //configured tx rate, not actual !!!
843 uint32_t txRate;
844
845 //entrance to the stack after LWIP
846 uint32_t link_tx_dbgStackTimeFirstPacket_Ms;
847 uint32_t link_tx_dbgStackTimeLastPacket_Ms;
848 uint32_t link_tx_dbgStackEntrNumByteSent ;
849 uint32_t link_tx_dbgStackEntNumPktsXfered ;
850
851 //transport - before sending to the FW
852 uint32_t link_tx_dbgTimeFirstPacket_Ms;
853 uint32_t link_tx_dbgTimeLastPacket_Ms ;
854 uint32_t link_tx_dbgNumPktsSent ;
855 uint32_t link_tx_dbgNumBytesSent ;
856 uint32_t link_tx_dbgNumPktsBusy ;
857 uint32_t link_tx_dbgNumPktsAcBusy ;
858 uint32_t link_tx_dbgNumPktsXfered ;
859 uint32_t link_tx_dbgNumPktsSuccess ;
860 uint32_t link_tx_dbgNumPktsError ;
861
862
863 //transport -after Tx complete
864 uint32_t link_tx_dbgNumTxCmplt ;
865 uint32_t link_tx_dbgNumTxCmpltOk ;
866 uint32_t link_tx_dbgNumTxCmpltError ;
867 uint32_t link_tx_dbgNumTxCmpltOkBytes ;
868 uint32_t link_tx_dbgNumTxCmpltFailBytes;
869
873
874 uint32_t rxRate;
875 /* the number of frames that the NIC receives without errors */
876 uint32_t rxstat_RecvOk;
877 /* the number of bytes in directed packets that are received without errors */
878 uint32_t rxstat_DirectedBytesRecv;
879 /* the number of directed packets that are received without errors */
880 uint32_t rxstat_DirectedFramesRecv;
881 /* the number of bytes in multicast/functional packets that are received without errors */
882 uint32_t rxstat_MulticastBytesRecv;
883 /* the number of multicast/functional packets that are received without errors */
884 uint32_t rxstat_MulticastFramesRecv;
885 /* the number of bytes in broadcast packets that are received without errors. */
886 uint32_t rxstat_BroadcastBytesRecv;
887 /* the number of broadcast packets that are received without errors. */
888 uint32_t rxstat_BroadcastFramesRecv;
889
891 uint32_t link_rx_recvFromWlan;
892 uint32_t link_rx_recvBytesFromWlan;
893 uint32_t link_rx_sendToUwd;
894 uint32_t link_rx_sendToDataDispatcher;
895 uint32_t link_rx_discardWrongHlid;
896 uint32_t link_rx_discardHlidClose;
897 uint32_t link_rx_discardBaEvent;
898 uint32_t link_rx_discardUnknownClass;
899 }dbg_cntr_trnspt_t;
900
901
902 typedef struct
903 {
904 WlanRole_e inp_role;
905 dbg_cntr_trnspt_t out_Param;
906 }dbg_counters_get_t;
907
908 typedef struct
909 {
910 //mac_address[0] --- for STA role
911 //mac_address[1] --- for BLE Role
912 //mac_address[2] ---- for P2P
913 //mac_address[3] ----- for AP or STA-2
914 uint8_t mac_address[WLAN_MAX_MAC_ADDRESSES][MAC_ADDRESS_LEN];//efuse mac address
915 uint8_t struct_is_updateed; //means that this global was update form BTL
916 uint8_t fuse_rom_structure_version;
917 uint8_t device_part_number;
918 uint8_t boot_rom_version;
919 uint8_t pg_version;
920 uint8_t metal_version;
921 uint8_t disable_5g;
922 uint8_t disable_6g;
923 uint8_t disable_ble;
924 uint64_t udi;
925 }device_info_t;
926
927 typedef struct
928 {
929 WlanRole_e role_type;
930 uint16_t length;
931 uint8_t data[WLAN_BEACON_MAX_SIZE];
932 }wlanSetVendorInfo_t;
933
934
935 typedef struct
936 {
937 uint8_t enable;
938 uint8_t peerMac[MAC_ADDRESS_LEN];
939 uint8_t wpsMethod; // 0 - PBC, 1 - PIN
940 unsigned char *pin;
941 }wlanSetExtWpsSession_t;
942
943
944 typedef enum wlan_p2p_action_frame_type {
945 WLAN_P2P_GO_NEG_REQ = 0,
946 WLAN_P2P_GO_NEG_RESP = 1,
947 WLAN_P2P_GO_NEG_CONF = 2,
948 WLAN_P2P_INVITATION_REQ = 3,
949 WLAN_P2P_INVITATION_RESP = 4,
950 WLAN_P2P_DEV_DISC_REQ = 5,
951 WLAN_P2P_DEV_DISC_RESP = 6,
952 WLAN_P2P_PROV_DISC_REQ = 7,
953 WLAN_P2P_PROV_DISC_RESP = 8
954 }WlanP2pActionFrameType_t;
955
956
957 typedef enum wlan_p2p_status_code {// this enum need to be the same as this one :p2p_status_code
958 WLAN_P2P_SC_SUCCESS = 0,
959 WLAN_P2P_SC_FAIL_INFO_CURRENTLY_UNAVAILABLE = 1,
960 WLAN_P2P_SC_FAIL_INCOMPATIBLE_PARAMS = 2,
961 WLAN_P2P_SC_FAIL_LIMIT_REACHED = 3,
962 WLAN_P2P_SC_FAIL_INVALID_PARAMS = 4,
963 WLAN_P2P_SC_FAIL_UNABLE_TO_ACCOMMODATE = 5,
964 WLAN_P2P_SC_FAIL_PREV_PROTOCOL_ERROR = 6,
965 WLAN_P2P_SC_FAIL_NO_COMMON_CHANNELS = 7,
966 WLAN_P2P_SC_FAIL_UNKNOWN_GROUP = 8,
967 WLAN_P2P_SC_FAIL_BOTH_GO_INTENT_15 = 9,
968 WLAN_P2P_SC_FAIL_INCOMPATIBLE_PROV_METHOD = 10,
969 WLAN_P2P_SC_FAIL_REJECTED_BY_USER = 11,
970 WLAN_P2P_SC_SUCCESS_DEFERRED = 12,
971 }WlanP2pStatusCode_t;
972
973
974 typedef struct {
975 uint8_t* device_address;
976 uint8_t connection_capability;
977 uint32_t session_id;
978 uint32_t advertisement_id;
979 uint8_t* session_mac;
980 uint8_t* adv_mac;
981 uint8_t* persist_ssid;
982 uint32_t persist_ssid_len;
983 uint8_t dialog_token;
984 } WlanPeer_t;
985
986 typedef struct
987 {
988 uint8_t dialog_token;
989 uint8_t* p2p_device_addr;
990 uint8_t* oper_ssid; // 32 char+ null
991 uint32_t oper_ssid_len;
992 }WlanGOPeer_t;
993
994
995 typedef struct
996 {
997 WlanRole_e roleId;
998 uint8_t msgType; /*see : wlan_p2p_action_frame_type*/
999 uint8_t status; /*see WlanP2pStatusCode_t*/
1000 uint8_t provDiscReqSa[6];
1001 uint8_t* provDiscReqData;
1002 size_t provDiscReqLen;
1003 int32_t provDiscReqRxFreq;
1004 }WlanProvDiscResp_t;
1005
1006 typedef struct
1007 {
1008 WlanRole_e roleId;
1009 uint8_t msgType; /*see : wlan_p2p_action_frame_type*/
1010 }WlanProvDiscReq_t;
1011
1012 typedef union
1013 {
1014
1015 WlanProvDiscReq_t ProvDiscReq;
1016 WlanProvDiscResp_t ProvDiscResp;
1017
1018 }WlanActionParam_t;
1019
1020 typedef struct
1021 {
1022 WlanP2pActionFrameType_t msgType;
1023 WlanActionParam_t actionParam;
1024 }WlanBuildActionBuffer_t;
1025
1026 typedef struct
1027 {
1028 uint32_t enableROC;
1029 uint32_t channel;
1030 uint8_t* countryDomain;
1031 }WlanROCExt_t;
1032
1033 typedef struct
1034 {
1035 uint8_t* pBuff; // buf is allocate by the stack, expected to be freed by the app
1036 uint32_t bufLen;
1037 } WlanActionBuff_t;
1038
1039 typedef struct
1040 {
1041 uint8_t apDst[MAC_ADDRESS_LEN]; // Destination address
1042 WlanActionBuff_t actionBuff; // the action data
1043 }WlanActionTxExt_t;
1044
1045 typedef struct
1046 {
1047 uint8_t extWps;
1048 uint8_t extP2P;
1049 uint8_t extWpsDone;
1050 }WlanExternalApp_t;
1051 /*****************************************************************************/
1052 /* Data path CB function */
1053 /*****************************************************************************/
1054 typedef void (* WlanNetworkDataRecvCB_t)(WlanRole_e role_id,uint8_t *input,uint32_t input_len);
1055
1056
1057 /*****************************************************************************/
1058 /* USER API */
1059 /*****************************************************************************/
1073 int ctrlCmdFw_EnableBLECmd(void);
1074
1089 int ctrlCmdFw_SetBdAddrCmd(const unsigned char *pBdAddr);
1090
1106 int Wlan_Start(WlanEventHandlerCB_t eventHandlerCB);
1107
1121 int Wlan_Stop(void);
1122
1140 int Wlan_RoleUp(WlanRole_e roleType, void * params, unsigned long int timeout);
1141
1142
1159 int Wlan_RoleDown(WlanRole_e roleType, unsigned long int timeout);
1160
1182 int Wlan_Connect(const signed char *pName, const int NameLen,
1183 const unsigned char *pMacAddr, char SecType, const char *pPass,
1184 const char PassLen);
1185
1197 int Wlan_Disconnect();
1198
1214 int Wlan_Scan(WlanRole_e role, void* params,const unsigned char ScanResultsSize);
1215
1232 int Wlan_Get(WlanGet_e wlanGetType, void *params);
1233
1249 int Wlan_Set(WlanSet_e wlanSetType, void *params);
1250
1251
1268 int Wlan_EtherPacketSend(WlanRole_e role, uint8_t *inbuf, uint32_t inbuf_len,uint32_t flags);
1269
1270
1285 int Wlan_EtherPacketRecvRegisterCallback(WlanRole_e role, WlanNetworkDataRecvCB_t cb);
1286
1287
1288 #endif /* USER_INTEFACE_WLAN_IF_H_ */
1289
Wlan_EtherPacketSend
int Wlan_EtherPacketSend(WlanRole_e role, uint8_t *inbuf, uint32_t inbuf_len, uint32_t flags)
Wlan Ethernet Packet Send.
Wlan_EtherPacketRecvRegisterCallback
int Wlan_EtherPacketRecvRegisterCallback(WlanRole_e role, WlanNetworkDataRecvCB_t cb)
Wlan Ethernet Packet recv callback.
WlanPeer_t
Definition: wlan_if.h:974
Wlan_Stop
int Wlan_Stop(void)
stop the wlan
device_info_t
Definition: wlan_if.h:908
Wlan_Connect
int Wlan_Connect(const signed char *pName, const int NameLen, const unsigned char *pMacAddr, char SecType, const char *pPass, const char PassLen)
Connect to wlan network as a station.
WlanActionBuff_t
Definition: wlan_if.h:1033
__PACKED__
Definition: wlan_if.h:320
WlanEventDisconnect_t
Definition: wlan_if.h:519
scanCommon_t
Definition: wlan_if.h:659
WlanActionParam_t
Definition: wlan_if.h:1012
WlanSecParams_t
Definition: wlan_if.h:235
P2pParams
Definition: wlan_if.h:267
Wlan_RoleUp
int Wlan_RoleUp(WlanRole_e roleType, void *params, unsigned long int timeout)
role up the wlan
WpsParams
Definition: wlan_if.h:245
Wlan_Start
int Wlan_Start(WlanEventHandlerCB_t eventHandlerCB)
start the wlan
WlanCtrlBlk_t
Definition: wlan_if.h:822
WlanProvDiscResp_t
Definition: wlan_if.h:995
WlanMacAddress_t
Definition: wlan_if.h:723
WlanEventSTAAdded_t
Definition: wlan_if.h:541
WlanEventConnect_t
Definition: wlan_if.h:503
WlanEvenWfdMgmtFrame_t
Definition: wlan_if.h:547
WlanEventExtendedScanResult_t
Definition: wlan_if.h:534
WlanEventConnecting_t
Definition: wlan_if.h:511
Wlan_RoleDown
int Wlan_RoleDown(WlanRole_e roleType, unsigned long int timeout)
role down the wlan
WlanNetworkEntry_t
Definition: wlan_if.h:189
scan_ssid_t
Definition: wlan_if.h:643
WlanEventData_u
Definition: wlan_if.h:556
WlanBuildActionBuffer_t
Definition: wlan_if.h:1020
ctrlCmdFw_EnableBLECmd
int ctrlCmdFw_EnableBLECmd(void)
Enable BLE.
WlanProvDiscReq_t
Definition: wlan_if.h:1006
WlanEvent_t
Definition: wlan_if.h:574
RoleUpApCmd
Definition: wlan_if.h:285
dbg_counters_get_t
Definition: wlan_if.h:902
Wlan_Scan
int Wlan_Scan(WlanRole_e role, void *params, const unsigned char ScanResultsSize)
Wlan scan.
WlanLongSleepInterval
Definition: wlan_if.h:312
dbg_cntr_trnspt_t
Definition: wlan_if.h:832
CalibratorCommandWrapper_t
Definition: wlan_if.h:474
StartRoleApps_t
Definition: wlan_if.h:632
ctrlCmdFw_SetBdAddrCmd
int ctrlCmdFw_SetBdAddrCmd(const unsigned char *pBdAddr)
Set BLE BD Address.
Wlan_Disconnect
int Wlan_Disconnect()
Wlan disconnect.
WlanActionTxExt_t
Definition: wlan_if.h:1039
WlanGOPeer_t
Definition: wlan_if.h:986
WlanFWVersions_t
Definition: wlan_if.h:729
WlanNetworkEntryExtended_t
Definition: wlan_if.h:199
WlanROCExt_t
Definition: wlan_if.h:1026
WlanExternalApp_t
Definition: wlan_if.h:1045
Wlan_Get
int Wlan_Get(WlanGet_e wlanGetType, void *params)
Wlan_Get.
WlanEventScanResult_t
Definition: wlan_if.h:527
Wlan_Set
int Wlan_Set(WlanSet_e wlanSetType, void *params)
Wlan_Set.
wlanSetVendorInfo_t
Definition: wlan_if.h:927
wlanSetExtWpsSession_t
Definition: wlan_if.h:935