Merge branch 'drm-nouveau-fixes-3.9' of git://anongit.freedesktop.org/git/nouveau...
[deliverable/linux.git] / drivers / staging / csr / csr_wifi_sme_prim.h
CommitLineData
635d2b00
GKH
1/*****************************************************************************
2
95edd09e 3 (c) Cambridge Silicon Radio Limited 2012
635d2b00
GKH
4 All rights reserved and confidential information of CSR
5
6 Refer to LICENSE.txt included with this source for details
7 on the license terms.
8
9*****************************************************************************/
10
11/* Note: this is an auto-generated file. */
12
13#ifndef CSR_WIFI_SME_PRIM_H__
14#define CSR_WIFI_SME_PRIM_H__
15
980b5a2b 16#include <linux/types.h>
635d2b00
GKH
17#include "csr_prim_defs.h"
18#include "csr_sched.h"
19#include "csr_wifi_common.h"
20#include "csr_result.h"
21#include "csr_wifi_fsm_event.h"
22
635d2b00
GKH
23#define CSR_WIFI_SME_PRIM (0x0404)
24
25typedef CsrPrim CsrWifiSmePrim;
26
27
28/*******************************************************************************
29
30 NAME
31 CsrWifiSme80211NetworkType
32
33 DESCRIPTION
34 Indicates the physical layer of the network
35
36 VALUES
37 CSR_WIFI_SME_80211_NETWORK_TYPE_DS
38 - Direct-sequence spread spectrum
39 CSR_WIFI_SME_80211_NETWORK_TYPE_OFDM24
40 - Orthogonal Frequency Division Multiplexing at 2.4 GHz
41 CSR_WIFI_SME_80211_NETWORK_TYPE_OFDM5
42 - Orthogonal Frequency Division Multiplexing at 5 GHz
43 CSR_WIFI_SME_80211_NETWORK_TYPE_AUTO
44 - Automatic
45
46*******************************************************************************/
7e6f5794 47typedef u8 CsrWifiSme80211NetworkType;
635d2b00
GKH
48#define CSR_WIFI_SME_80211_NETWORK_TYPE_DS ((CsrWifiSme80211NetworkType) 0x00)
49#define CSR_WIFI_SME_80211_NETWORK_TYPE_OFDM24 ((CsrWifiSme80211NetworkType) 0x01)
50#define CSR_WIFI_SME_80211_NETWORK_TYPE_OFDM5 ((CsrWifiSme80211NetworkType) 0x02)
51#define CSR_WIFI_SME_80211_NETWORK_TYPE_AUTO ((CsrWifiSme80211NetworkType) 0x03)
52
53/*******************************************************************************
54
55 NAME
56 CsrWifiSme80211PrivacyMode
57
58 DESCRIPTION
59 Bits to enable or disable the privacy mode
60
61 VALUES
62 CSR_WIFI_SME_80211_PRIVACY_MODE_DISABLED
63 - Privacy mode is enabled: use of WEP for confidentiality is
64 required.
65 CSR_WIFI_SME_80211_PRIVACY_MODE_ENABLED
66 - Privacy mode is disabled
67
68*******************************************************************************/
7e6f5794 69typedef u8 CsrWifiSme80211PrivacyMode;
635d2b00
GKH
70#define CSR_WIFI_SME_80211_PRIVACY_MODE_DISABLED ((CsrWifiSme80211PrivacyMode) 0x00)
71#define CSR_WIFI_SME_80211_PRIVACY_MODE_ENABLED ((CsrWifiSme80211PrivacyMode) 0x01)
72
73/*******************************************************************************
74
75 NAME
76 CsrWifiSme80211dTrustLevel
77
78 DESCRIPTION
79 Level of trust for the information coming from the network
80
81 VALUES
82 CSR_WIFI_SME_80211D_TRUST_LEVEL_STRICT
83 - Start with passive scanning and only accept country IE for
84 updating channel lists
85 CSR_WIFI_SME_80211D_TRUST_LEVEL_ADJUNCT
86 - As above plus accept adjunct technology location
87 information
88 CSR_WIFI_SME_80211D_TRUST_LEVEL_BSS
89 - As above accept plus receiving channel from infrastructure
90 networks
91 CSR_WIFI_SME_80211D_TRUST_LEVEL_IBSS
92 - As above accept plus receiving channel from the ad hoc
93 networks
94 CSR_WIFI_SME_80211D_TRUST_LEVEL_MIB
95 - Start with active scanning with list of active channels
96 from the MIB and accept as above
97 CSR_WIFI_SME_80211D_TRUST_LEVEL_DISABLED
98 - Start with active scanning with list of active channels
99 from the MIB and ignore any channel information from the
100 network
101
102*******************************************************************************/
7e6f5794 103typedef u8 CsrWifiSme80211dTrustLevel;
635d2b00
GKH
104#define CSR_WIFI_SME_80211D_TRUST_LEVEL_STRICT ((CsrWifiSme80211dTrustLevel) 0x01)
105#define CSR_WIFI_SME_80211D_TRUST_LEVEL_ADJUNCT ((CsrWifiSme80211dTrustLevel) 0x02)
106#define CSR_WIFI_SME_80211D_TRUST_LEVEL_BSS ((CsrWifiSme80211dTrustLevel) 0x03)
107#define CSR_WIFI_SME_80211D_TRUST_LEVEL_IBSS ((CsrWifiSme80211dTrustLevel) 0x04)
108#define CSR_WIFI_SME_80211D_TRUST_LEVEL_MIB ((CsrWifiSme80211dTrustLevel) 0x05)
109#define CSR_WIFI_SME_80211D_TRUST_LEVEL_DISABLED ((CsrWifiSme80211dTrustLevel) 0x06)
110
111/*******************************************************************************
112
113 NAME
114 CsrWifiSmeAmpStatus
115
116 DESCRIPTION
117 AMP Current Status
118
119 VALUES
120 CSR_WIFI_SME_AMP_ACTIVE - AMP ACTIVE.
121 CSR_WIFI_SME_AMP_INACTIVE - AMP INACTIVE
122
123*******************************************************************************/
7e6f5794 124typedef u8 CsrWifiSmeAmpStatus;
635d2b00
GKH
125#define CSR_WIFI_SME_AMP_ACTIVE ((CsrWifiSmeAmpStatus) 0x00)
126#define CSR_WIFI_SME_AMP_INACTIVE ((CsrWifiSmeAmpStatus) 0x01)
127
128/*******************************************************************************
129
130 NAME
131 CsrWifiSmeAuthMode
132
133 DESCRIPTION
134 Define bits for CsrWifiSmeAuthMode
135
136 VALUES
137 CSR_WIFI_SME_AUTH_MODE_80211_OPEN
138 - Connects to an open system network (i.e. no authentication,
139 no encryption) or to a WEP enabled network.
140 CSR_WIFI_SME_AUTH_MODE_80211_SHARED
141 - Connect to a WEP enabled network.
142 CSR_WIFI_SME_AUTH_MODE_8021X_WPA
143 - Connects to a WPA Enterprise enabled network.
144 CSR_WIFI_SME_AUTH_MODE_8021X_WPAPSK
145 - Connects to a WPA with Pre-Shared Key enabled network.
146 CSR_WIFI_SME_AUTH_MODE_8021X_WPA2
147 - Connects to a WPA2 Enterprise enabled network.
148 CSR_WIFI_SME_AUTH_MODE_8021X_WPA2PSK
149 - Connects to a WPA2 with Pre-Shared Key enabled network.
150 CSR_WIFI_SME_AUTH_MODE_8021X_CCKM
151 - Connects to a CCKM enabled network.
152 CSR_WIFI_SME_AUTH_MODE_WAPI_WAI
153 - Connects to a WAPI Enterprise enabled network.
154 CSR_WIFI_SME_AUTH_MODE_WAPI_WAIPSK
155 - Connects to a WAPI with Pre-Shared Key enabled network.
156 CSR_WIFI_SME_AUTH_MODE_8021X_OTHER1X
157 - For future use.
158
159*******************************************************************************/
8c87f69a 160typedef u16 CsrWifiSmeAuthMode;
635d2b00
GKH
161#define CSR_WIFI_SME_AUTH_MODE_80211_OPEN ((CsrWifiSmeAuthMode) 0x0001)
162#define CSR_WIFI_SME_AUTH_MODE_80211_SHARED ((CsrWifiSmeAuthMode) 0x0002)
163#define CSR_WIFI_SME_AUTH_MODE_8021X_WPA ((CsrWifiSmeAuthMode) 0x0004)
164#define CSR_WIFI_SME_AUTH_MODE_8021X_WPAPSK ((CsrWifiSmeAuthMode) 0x0008)
165#define CSR_WIFI_SME_AUTH_MODE_8021X_WPA2 ((CsrWifiSmeAuthMode) 0x0010)
166#define CSR_WIFI_SME_AUTH_MODE_8021X_WPA2PSK ((CsrWifiSmeAuthMode) 0x0020)
167#define CSR_WIFI_SME_AUTH_MODE_8021X_CCKM ((CsrWifiSmeAuthMode) 0x0040)
168#define CSR_WIFI_SME_AUTH_MODE_WAPI_WAI ((CsrWifiSmeAuthMode) 0x0080)
169#define CSR_WIFI_SME_AUTH_MODE_WAPI_WAIPSK ((CsrWifiSmeAuthMode) 0x0100)
170#define CSR_WIFI_SME_AUTH_MODE_8021X_OTHER1X ((CsrWifiSmeAuthMode) 0x0200)
171
172/*******************************************************************************
173
174 NAME
175 CsrWifiSmeBasicUsability
176
177 DESCRIPTION
178 Indicates the usability level of a channel
179
180 VALUES
181 CSR_WIFI_SME_BASIC_USABILITY_UNUSABLE
182 - Not usable; connection not recommended
183 CSR_WIFI_SME_BASIC_USABILITY_POOR
184 - Poor quality; connect only if nothing better is available
185 CSR_WIFI_SME_BASIC_USABILITY_SATISFACTORY
186 - Quality is satisfactory
187 CSR_WIFI_SME_BASIC_USABILITY_NOT_CONNECTED
188 - Not connected
189
190*******************************************************************************/
7e6f5794 191typedef u8 CsrWifiSmeBasicUsability;
635d2b00
GKH
192#define CSR_WIFI_SME_BASIC_USABILITY_UNUSABLE ((CsrWifiSmeBasicUsability) 0x00)
193#define CSR_WIFI_SME_BASIC_USABILITY_POOR ((CsrWifiSmeBasicUsability) 0x01)
194#define CSR_WIFI_SME_BASIC_USABILITY_SATISFACTORY ((CsrWifiSmeBasicUsability) 0x02)
195#define CSR_WIFI_SME_BASIC_USABILITY_NOT_CONNECTED ((CsrWifiSmeBasicUsability) 0x03)
196
197/*******************************************************************************
198
199 NAME
200 CsrWifiSmeBssType
201
202 DESCRIPTION
203 Indicates the BSS type
204
205 VALUES
206 CSR_WIFI_SME_BSS_TYPE_INFRASTRUCTURE
207 - Infrastructure BSS.
208 CSR_WIFI_SME_BSS_TYPE_ADHOC
209 - Ad hoc or Independent BSS.
210 CSR_WIFI_SME_BSS_TYPE_ANY_BSS
211 - Specifies any type of BSS
212 CSR_WIFI_SME_BSS_TYPE_P2P
213 - Specifies P2P
214
215*******************************************************************************/
7e6f5794 216typedef u8 CsrWifiSmeBssType;
635d2b00
GKH
217#define CSR_WIFI_SME_BSS_TYPE_INFRASTRUCTURE ((CsrWifiSmeBssType) 0x00)
218#define CSR_WIFI_SME_BSS_TYPE_ADHOC ((CsrWifiSmeBssType) 0x01)
219#define CSR_WIFI_SME_BSS_TYPE_ANY_BSS ((CsrWifiSmeBssType) 0x02)
220#define CSR_WIFI_SME_BSS_TYPE_P2P ((CsrWifiSmeBssType) 0x03)
221
222/*******************************************************************************
223
224 NAME
225 CsrWifiSmeCoexScheme
226
227 DESCRIPTION
228 Options for the coexistence signalling
229 Same as MibValues
230
231 VALUES
232 CSR_WIFI_SME_COEX_SCHEME_DISABLED
233 - The coexistence signalling is disabled
234 CSR_WIFI_SME_COEX_SCHEME_CSR
235 - Basic CSR coexistence signalling
236 CSR_WIFI_SME_COEX_SCHEME_CSR_CHANNEL
237 - Full CSR coexistence signalling
238 CSR_WIFI_SME_COEX_SCHEME_PTA
239 - Packet Traffic Arbitrator coexistence signalling
240
241*******************************************************************************/
7e6f5794 242typedef u8 CsrWifiSmeCoexScheme;
635d2b00
GKH
243#define CSR_WIFI_SME_COEX_SCHEME_DISABLED ((CsrWifiSmeCoexScheme) 0x00)
244#define CSR_WIFI_SME_COEX_SCHEME_CSR ((CsrWifiSmeCoexScheme) 0x01)
245#define CSR_WIFI_SME_COEX_SCHEME_CSR_CHANNEL ((CsrWifiSmeCoexScheme) 0x02)
246#define CSR_WIFI_SME_COEX_SCHEME_PTA ((CsrWifiSmeCoexScheme) 0x03)
247
248/*******************************************************************************
249
250 NAME
251 CsrWifiSmeControlIndication
252
253 DESCRIPTION
254 Indicates the reason why the Wi-Fi has been switched off.
255 The values of this type are used across the NME/SME/Router API's and they
256 must be kept consistent with the corresponding types in the .xml of the
257 ottherinterfaces
258
259 VALUES
260 CSR_WIFI_SME_CONTROL_INDICATION_ERROR
261 - An unrecoverable error (for example, an unrecoverable SDIO
262 error) has occurred.
263 The wireless manager application should reinitialise the
264 chip by calling CSR_WIFI_SME_WIFI_ON_REQ.
265 CSR_WIFI_SME_CONTROL_INDICATION_EXIT
266 - The chip became unavailable due to an external action, for
267 example, when a plug-in card is ejected or the driver is
268 unloaded.
269 CSR_WIFI_SME_CONTROL_INDICATION_USER_REQUESTED
270 - The Wi-Fi has been switched off as the wireless manager
271 application has sent CSR_WIFI_SME_WIFI_OFF_REQ
272
273*******************************************************************************/
7e6f5794 274typedef u8 CsrWifiSmeControlIndication;
635d2b00
GKH
275#define CSR_WIFI_SME_CONTROL_INDICATION_ERROR ((CsrWifiSmeControlIndication) 0x01)
276#define CSR_WIFI_SME_CONTROL_INDICATION_EXIT ((CsrWifiSmeControlIndication) 0x02)
277#define CSR_WIFI_SME_CONTROL_INDICATION_USER_REQUESTED ((CsrWifiSmeControlIndication) 0x03)
278
279/*******************************************************************************
280
281 NAME
282 CsrWifiSmeCtsProtectionType
283
284 DESCRIPTION
285 SME CTS Protection Types
286
287 VALUES
288 CSR_WIFI_SME_CTS_PROTECTION_AUTOMATIC
289 - AP CTS Protection automatic based on non-ERP station in own
290 BSS or neighbouring BSS on the same channel based on OLBC.
291 This requires monitoring of beacons from other APs.
292 CSR_WIFI_SME_CTS_PROTECTION_FORCE_ENABLED
293 - AP CTS Protection Force enabled
294 CSR_WIFI_SME_CTS_PROTECTION_FORCE_DISABLED
295 - AP CTS Protection Force disabled.
296 CSR_WIFI_SME_CTS_PROTECTION_AUTOMATIC_NO_OLBC
297 - AP CTS Protection automatic without considering OLBC but
298 considering non-ERP station in the own BSS Valid only if AP
299 is configured to work in 802.11bg or 802.11g mode otherwise
300 this option specifies the same behaviour as AUTOMATIC
301
302*******************************************************************************/
7e6f5794 303typedef u8 CsrWifiSmeCtsProtectionType;
635d2b00
GKH
304#define CSR_WIFI_SME_CTS_PROTECTION_AUTOMATIC ((CsrWifiSmeCtsProtectionType) 0x00)
305#define CSR_WIFI_SME_CTS_PROTECTION_FORCE_ENABLED ((CsrWifiSmeCtsProtectionType) 0x01)
306#define CSR_WIFI_SME_CTS_PROTECTION_FORCE_DISABLED ((CsrWifiSmeCtsProtectionType) 0x02)
307#define CSR_WIFI_SME_CTS_PROTECTION_AUTOMATIC_NO_OLBC ((CsrWifiSmeCtsProtectionType) 0x03)
308
309/*******************************************************************************
310
311 NAME
312 CsrWifiSmeD3AutoScanMode
313
314 DESCRIPTION
315 Autonomous scan status while in D3 suspended period
316
317 VALUES
318 CSR_WIFI_SME_D3AUTO_SCAN_MODE_PSON
319 - Autonomous scan stays on
320 CSR_WIFI_SME_D3AUTO_SCAN_MODE_PSOFF
321 - Autonomous scan is switched off
322 CSR_WIFI_SME_D3AUTO_SCAN_MODE_PSAUTO
323 - Automatically select autoscanning behaviour.
324 CURRENTLY NOT SUPPORTED
325
326*******************************************************************************/
7e6f5794 327typedef u8 CsrWifiSmeD3AutoScanMode;
635d2b00
GKH
328#define CSR_WIFI_SME_D3AUTO_SCAN_MODE_PSON ((CsrWifiSmeD3AutoScanMode) 0x00)
329#define CSR_WIFI_SME_D3AUTO_SCAN_MODE_PSOFF ((CsrWifiSmeD3AutoScanMode) 0x01)
330#define CSR_WIFI_SME_D3AUTO_SCAN_MODE_PSAUTO ((CsrWifiSmeD3AutoScanMode) 0x02)
331
332/*******************************************************************************
333
334 NAME
335 CsrWifiSmeEncryption
336
337 DESCRIPTION
338 Defines bits for CsrWifiSmeEncryption
339 For a WEP enabled network, the caller must specify the correct
340 combination of flags in the encryptionModeMask.
341
342 VALUES
343 CSR_WIFI_SME_ENCRYPTION_CIPHER_NONE
344 - No encryption set
345 CSR_WIFI_SME_ENCRYPTION_CIPHER_PAIRWISE_WEP40
346 - Selects 40 byte key WEP for unicast communication
347 CSR_WIFI_SME_ENCRYPTION_CIPHER_PAIRWISE_WEP104
348 - Selects 104 byte key WEP for unicast communication
349 CSR_WIFI_SME_ENCRYPTION_CIPHER_PAIRWISE_TKIP
350 - Selects TKIP for unicast communication
351 CSR_WIFI_SME_ENCRYPTION_CIPHER_PAIRWISE_CCMP
352 - Selects CCMP for unicast communication
353 CSR_WIFI_SME_ENCRYPTION_CIPHER_PAIRWISE_SMS4
354 - Selects SMS4 for unicast communication
355 CSR_WIFI_SME_ENCRYPTION_CIPHER_GROUP_WEP40
356 - Selects 40 byte key WEP for broadcast messages
357 CSR_WIFI_SME_ENCRYPTION_CIPHER_GROUP_WEP104
358 - Selects 104 byte key WEP for broadcast messages
359 CSR_WIFI_SME_ENCRYPTION_CIPHER_GROUP_TKIP
360 - Selects a TKIP for broadcast messages
361 CSR_WIFI_SME_ENCRYPTION_CIPHER_GROUP_CCMP
362 - Selects CCMP for broadcast messages
363 CSR_WIFI_SME_ENCRYPTION_CIPHER_GROUP_SMS4
364 - Selects SMS4 for broadcast messages
365
366*******************************************************************************/
8c87f69a 367typedef u16 CsrWifiSmeEncryption;
635d2b00
GKH
368#define CSR_WIFI_SME_ENCRYPTION_CIPHER_NONE ((CsrWifiSmeEncryption) 0x0000)
369#define CSR_WIFI_SME_ENCRYPTION_CIPHER_PAIRWISE_WEP40 ((CsrWifiSmeEncryption) 0x0001)
370#define CSR_WIFI_SME_ENCRYPTION_CIPHER_PAIRWISE_WEP104 ((CsrWifiSmeEncryption) 0x0002)
371#define CSR_WIFI_SME_ENCRYPTION_CIPHER_PAIRWISE_TKIP ((CsrWifiSmeEncryption) 0x0004)
372#define CSR_WIFI_SME_ENCRYPTION_CIPHER_PAIRWISE_CCMP ((CsrWifiSmeEncryption) 0x0008)
373#define CSR_WIFI_SME_ENCRYPTION_CIPHER_PAIRWISE_SMS4 ((CsrWifiSmeEncryption) 0x0010)
374#define CSR_WIFI_SME_ENCRYPTION_CIPHER_GROUP_WEP40 ((CsrWifiSmeEncryption) 0x0020)
375#define CSR_WIFI_SME_ENCRYPTION_CIPHER_GROUP_WEP104 ((CsrWifiSmeEncryption) 0x0040)
376#define CSR_WIFI_SME_ENCRYPTION_CIPHER_GROUP_TKIP ((CsrWifiSmeEncryption) 0x0080)
377#define CSR_WIFI_SME_ENCRYPTION_CIPHER_GROUP_CCMP ((CsrWifiSmeEncryption) 0x0100)
378#define CSR_WIFI_SME_ENCRYPTION_CIPHER_GROUP_SMS4 ((CsrWifiSmeEncryption) 0x0200)
379
380/*******************************************************************************
381
382 NAME
383 CsrWifiSmeFirmwareDriverInterface
384
385 DESCRIPTION
386 Type of communication between Host and Firmware
387
388 VALUES
389 CSR_WIFI_SME_FIRMWARE_DRIVER_INTERFACE_UNIT_DATA_INTERFACE
390 - No preformated header. NOT SUPPORTED in the current release
391 CSR_WIFI_SME_FIRMWARE_DRIVER_INTERFACE_PACKET_INTERFACE
392 - Preformated IEEE 802.11 header for user plane
393
394*******************************************************************************/
7e6f5794 395typedef u8 CsrWifiSmeFirmwareDriverInterface;
635d2b00
GKH
396#define CSR_WIFI_SME_FIRMWARE_DRIVER_INTERFACE_UNIT_DATA_INTERFACE ((CsrWifiSmeFirmwareDriverInterface) 0x00)
397#define CSR_WIFI_SME_FIRMWARE_DRIVER_INTERFACE_PACKET_INTERFACE ((CsrWifiSmeFirmwareDriverInterface) 0x01)
398
399/*******************************************************************************
400
401 NAME
402 CsrWifiSmeHostPowerMode
403
404 DESCRIPTION
405 Defines the power mode
406
407 VALUES
408 CSR_WIFI_SME_HOST_POWER_MODE_ACTIVE
409 - Host device is running on external power.
410 CSR_WIFI_SME_HOST_POWER_MODE_POWER_SAVE
411 - Host device is running on (internal) battery power.
412 CSR_WIFI_SME_HOST_POWER_MODE_FULL_POWER_SAVE
413 - For future use.
414
415*******************************************************************************/
7e6f5794 416typedef u8 CsrWifiSmeHostPowerMode;
635d2b00
GKH
417#define CSR_WIFI_SME_HOST_POWER_MODE_ACTIVE ((CsrWifiSmeHostPowerMode) 0x00)
418#define CSR_WIFI_SME_HOST_POWER_MODE_POWER_SAVE ((CsrWifiSmeHostPowerMode) 0x01)
419#define CSR_WIFI_SME_HOST_POWER_MODE_FULL_POWER_SAVE ((CsrWifiSmeHostPowerMode) 0x02)
420
421/*******************************************************************************
422
423 NAME
424 CsrWifiSmeIEEE80211Reason
425
426 DESCRIPTION
427 As definined in the IEEE 802.11 standards
428
429 VALUES
430 CSR_WIFI_SME_IEEE80211_REASON_SUCCESS
431 - See IEEE 802.11 Standard
432 CSR_WIFI_SME_IEEE80211_REASON_UNSPECIFIED_REASON
433 - See IEEE 802.11 Standard
434 CSR_WIFI_SME_IEEE80211_REASON_AUTHENTICATION_NOT_VALID
435 - See IEEE 802.11 Standard
436 CSR_WIFI_SME_IEEE80211_REASON_DEAUTHENTICATED_LEAVE_BSS
437 - See IEEE 802.11 Standard
438 CSR_WIFI_SME_IEEE80211_REASON_DISASSOCIATED_INACTIVITY
439 - See IEEE 802.11 Standard
440 CSR_WIFI_SME_IEEE80211_REASON_AP_OVERLOAD
441 - See IEEE 802.11 Standard
442 CSR_WIFI_SME_IEEE80211_REASON_CLASS_2FRAME_ERROR
443 - See IEEE 802.11 Standard
444 CSR_WIFI_SME_IEEE80211_REASON_CLASS_3FRAME_ERROR
445 - See IEEE 802.11 Standard
446 CSR_WIFI_SME_IEEE80211_REASON_DISASSOCIATED_LEAVE_BSS
447 - See IEEE 802.11 Standard
448 CSR_WIFI_SME_IEEE80211_REASON_ASSOCIATION_NOT_AUTHENTICATED
449 - See IEEE 802.11 Standard
450 CSR_WIFI_SME_IEEE80211_REASON_DISASSOCIATED_POWER_CAPABILITY
451 - See IEEE 802.11 Standard
452 CSR_WIFI_SME_IEEE80211_REASON_DISASSOCIATED_SUPPORTED_CHANNELS
453 - See IEEE 802.11 Standard
454 CSR_WIFI_SME_IEEE80211_REASON_INVALID_INFORMATION_ELEMENT
455 - See IEEE 802.11 Standard
456 CSR_WIFI_SME_IEEE80211_REASON_MICHAEL_MIC_FAILURE
457 - See IEEE 802.11 Standard
458 CSR_WIFI_SME_IEEE80211_REASON_FOURWAY_HANDSHAKE_TIMEOUT
459 - See IEEE 802.11 Standard
460 CSR_WIFI_SME_IEEE80211_REASON_GROUP_KEY_UPDATE_TIMEOUT
461 - See IEEE 802.11 Standard
462 CSR_WIFI_SME_IEEE80211_REASON_HANDSHAKE_ELEMENT_DIFFERENT
463 - See IEEE 802.11 Standard
464 CSR_WIFI_SME_IEEE80211_REASON_INVALID_GROUP_CIPHER
465 - See IEEE 802.11 Standard
466 CSR_WIFI_SME_IEEE80211_REASON_INVALID_PAIRWISE_CIPHER
467 - See IEEE 802.11 Standard
468 CSR_WIFI_SME_IEEE80211_REASON_INVALID_AKMP
469 - See IEEE 802.11 Standard
470 CSR_WIFI_SME_IEEE80211_REASON_UNSUPPORTED_RSN_IEVERSION
471 - See IEEE 802.11 Standard
472 CSR_WIFI_SME_IEEE80211_REASON_INVALID_RSN_IECAPABILITIES
473 - See IEEE 802.11 Standard
474 CSR_WIFI_SME_IEEE80211_REASON_DOT1X_AUTH_FAILED
475 - See IEEE 802.11 Standard
476 CSR_WIFI_SME_IEEE80211_REASON_CIPHER_REJECTED_BY_POLICY
477 - See IEEE 802.11 Standard
478 CSR_WIFI_SME_IEEE80211_REASON_SERVICE_CHANGE_PRECLUDES_TS
479 - See IEEE 802.11 Standard
480 CSR_WIFI_SME_IEEE80211_REASON_QOS_UNSPECIFIED_REASON
481 - See IEEE 802.11 Standard
482 CSR_WIFI_SME_IEEE80211_REASON_QOS_INSUFFICIENT_BANDWIDTH
483 - See IEEE 802.11 Standard
484 CSR_WIFI_SME_IEEE80211_REASON_QOS_EXCESSIVE_NOT_ACK
485 - See IEEE 802.11 Standard
486 CSR_WIFI_SME_IEEE80211_REASON_QOS_TXOPLIMIT_EXCEEDED
487 - See IEEE 802.11 Standard
488 CSR_WIFI_SME_IEEE80211_REASON_QSTA_LEAVING
489 - See IEEE 802.11 Standard
490 CSR_WIFI_SME_IEEE80211_REASON_END_TS
491 - See IEEE 802.11 Standard
492 CSR_WIFI_SME_IEEE80211_REASON_END_DLS
493 - See IEEE 802.11 Standard
494 CSR_WIFI_SME_IEEE80211_REASON_END_BA
495 - See IEEE 802.11 Standard
496 CSR_WIFI_SME_IEEE80211_REASON_UNKNOWN_TS
497 - See IEEE 802.11 Standard
498 CSR_WIFI_SME_IEEE80211_REASON_UNKNOWN_BA
499 - See IEEE 802.11 Standard
500 CSR_WIFI_SME_IEEE80211_REASON_UNKNOWN_DLS
501 - See IEEE 802.11 Standard
502 CSR_WIFI_SME_IEEE80211_REASON_TIMEOUT
503 - See IEEE 802.11 Standard
504 CSR_WIFI_SME_IEEE80211_REASON_STAKEY_MISMATCH
505 - See IEEE 802.11 Standard
506 CSR_WIFI_SME_IEEE80211_REASON_UNICAST_KEY_NEGOTIATION_TIMEOUT
507 - See IEEE 802.11 Standard
508 CSR_WIFI_SME_IEEE80211_REASON_MULTICAST_KEY_ANNOUNCEMENT_TIMEOUT
509 - See IEEE 802.11 Standard
510 CSR_WIFI_SME_IEEE80211_REASON_INCOMPATIBLE_UNICAST_KEY_NEGOTIATION_IE
511 - See IEEE 802.11 Standard
512 CSR_WIFI_SME_IEEE80211_REASON_INVALID_MULTICAST_CIPHER
513 - See IEEE 802.11 Standard
514 CSR_WIFI_SME_IEEE80211_REASON_INVALID_UNICAST_CIPHER
515 - See IEEE 802.11 Standard
516 CSR_WIFI_SME_IEEE80211_REASON_UNSUPPORTED_WAPI_IE_VERSION
517 - See IEEE 802.11 Standard
518 CSR_WIFI_SME_IEEE80211_REASON_INVALID_WAPI_CAPABILITY_IE
519 - See IEEE 802.11 Standard
520 CSR_WIFI_SME_IEEE80211_REASON_WAI_CERTIFICATE_AUTHENTICATION_FAILED
521 - See IEEE 802.11 Standard
522
523*******************************************************************************/
8c87f69a 524typedef u16 CsrWifiSmeIEEE80211Reason;
635d2b00
GKH
525#define CSR_WIFI_SME_IEEE80211_REASON_SUCCESS ((CsrWifiSmeIEEE80211Reason) 0x0000)
526#define CSR_WIFI_SME_IEEE80211_REASON_UNSPECIFIED_REASON ((CsrWifiSmeIEEE80211Reason) 0x0001)
527#define CSR_WIFI_SME_IEEE80211_REASON_AUTHENTICATION_NOT_VALID ((CsrWifiSmeIEEE80211Reason) 0x0002)
528#define CSR_WIFI_SME_IEEE80211_REASON_DEAUTHENTICATED_LEAVE_BSS ((CsrWifiSmeIEEE80211Reason) 0x0003)
529#define CSR_WIFI_SME_IEEE80211_REASON_DISASSOCIATED_INACTIVITY ((CsrWifiSmeIEEE80211Reason) 0x0004)
530#define CSR_WIFI_SME_IEEE80211_REASON_AP_OVERLOAD ((CsrWifiSmeIEEE80211Reason) 0x0005)
531#define CSR_WIFI_SME_IEEE80211_REASON_CLASS_2FRAME_ERROR ((CsrWifiSmeIEEE80211Reason) 0x0006)
532#define CSR_WIFI_SME_IEEE80211_REASON_CLASS_3FRAME_ERROR ((CsrWifiSmeIEEE80211Reason) 0x0007)
533#define CSR_WIFI_SME_IEEE80211_REASON_DISASSOCIATED_LEAVE_BSS ((CsrWifiSmeIEEE80211Reason) 0x0008)
534#define CSR_WIFI_SME_IEEE80211_REASON_ASSOCIATION_NOT_AUTHENTICATED ((CsrWifiSmeIEEE80211Reason) 0x0009)
535#define CSR_WIFI_SME_IEEE80211_REASON_DISASSOCIATED_POWER_CAPABILITY ((CsrWifiSmeIEEE80211Reason) 0x000a)
536#define CSR_WIFI_SME_IEEE80211_REASON_DISASSOCIATED_SUPPORTED_CHANNELS ((CsrWifiSmeIEEE80211Reason) 0x000b)
537#define CSR_WIFI_SME_IEEE80211_REASON_INVALID_INFORMATION_ELEMENT ((CsrWifiSmeIEEE80211Reason) 0x000d)
538#define CSR_WIFI_SME_IEEE80211_REASON_MICHAEL_MIC_FAILURE ((CsrWifiSmeIEEE80211Reason) 0x000e)
539#define CSR_WIFI_SME_IEEE80211_REASON_FOURWAY_HANDSHAKE_TIMEOUT ((CsrWifiSmeIEEE80211Reason) 0x000f)
540#define CSR_WIFI_SME_IEEE80211_REASON_GROUP_KEY_UPDATE_TIMEOUT ((CsrWifiSmeIEEE80211Reason) 0x0010)
541#define CSR_WIFI_SME_IEEE80211_REASON_HANDSHAKE_ELEMENT_DIFFERENT ((CsrWifiSmeIEEE80211Reason) 0x0011)
542#define CSR_WIFI_SME_IEEE80211_REASON_INVALID_GROUP_CIPHER ((CsrWifiSmeIEEE80211Reason) 0x0012)
543#define CSR_WIFI_SME_IEEE80211_REASON_INVALID_PAIRWISE_CIPHER ((CsrWifiSmeIEEE80211Reason) 0x0013)
544#define CSR_WIFI_SME_IEEE80211_REASON_INVALID_AKMP ((CsrWifiSmeIEEE80211Reason) 0x0014)
545#define CSR_WIFI_SME_IEEE80211_REASON_UNSUPPORTED_RSN_IEVERSION ((CsrWifiSmeIEEE80211Reason) 0x0015)
546#define CSR_WIFI_SME_IEEE80211_REASON_INVALID_RSN_IECAPABILITIES ((CsrWifiSmeIEEE80211Reason) 0x0016)
547#define CSR_WIFI_SME_IEEE80211_REASON_DOT1X_AUTH_FAILED ((CsrWifiSmeIEEE80211Reason) 0x0017)
548#define CSR_WIFI_SME_IEEE80211_REASON_CIPHER_REJECTED_BY_POLICY ((CsrWifiSmeIEEE80211Reason) 0x0018)
549#define CSR_WIFI_SME_IEEE80211_REASON_SERVICE_CHANGE_PRECLUDES_TS ((CsrWifiSmeIEEE80211Reason) 0x001F)
550#define CSR_WIFI_SME_IEEE80211_REASON_QOS_UNSPECIFIED_REASON ((CsrWifiSmeIEEE80211Reason) 0x0020)
551#define CSR_WIFI_SME_IEEE80211_REASON_QOS_INSUFFICIENT_BANDWIDTH ((CsrWifiSmeIEEE80211Reason) 0x0021)
552#define CSR_WIFI_SME_IEEE80211_REASON_QOS_EXCESSIVE_NOT_ACK ((CsrWifiSmeIEEE80211Reason) 0x0022)
553#define CSR_WIFI_SME_IEEE80211_REASON_QOS_TXOPLIMIT_EXCEEDED ((CsrWifiSmeIEEE80211Reason) 0x0023)
554#define CSR_WIFI_SME_IEEE80211_REASON_QSTA_LEAVING ((CsrWifiSmeIEEE80211Reason) 0x0024)
555#define CSR_WIFI_SME_IEEE80211_REASON_END_TS ((CsrWifiSmeIEEE80211Reason) 0x0025)
556#define CSR_WIFI_SME_IEEE80211_REASON_END_DLS ((CsrWifiSmeIEEE80211Reason) 0x0025)
557#define CSR_WIFI_SME_IEEE80211_REASON_END_BA ((CsrWifiSmeIEEE80211Reason) 0x0025)
558#define CSR_WIFI_SME_IEEE80211_REASON_UNKNOWN_TS ((CsrWifiSmeIEEE80211Reason) 0x0026)
559#define CSR_WIFI_SME_IEEE80211_REASON_UNKNOWN_BA ((CsrWifiSmeIEEE80211Reason) 0x0026)
560#define CSR_WIFI_SME_IEEE80211_REASON_UNKNOWN_DLS ((CsrWifiSmeIEEE80211Reason) 0x0026)
561#define CSR_WIFI_SME_IEEE80211_REASON_TIMEOUT ((CsrWifiSmeIEEE80211Reason) 0x0027)
562#define CSR_WIFI_SME_IEEE80211_REASON_STAKEY_MISMATCH ((CsrWifiSmeIEEE80211Reason) 0x002d)
563#define CSR_WIFI_SME_IEEE80211_REASON_UNICAST_KEY_NEGOTIATION_TIMEOUT ((CsrWifiSmeIEEE80211Reason) 0xf019)
564#define CSR_WIFI_SME_IEEE80211_REASON_MULTICAST_KEY_ANNOUNCEMENT_TIMEOUT ((CsrWifiSmeIEEE80211Reason) 0xf01a)
565#define CSR_WIFI_SME_IEEE80211_REASON_INCOMPATIBLE_UNICAST_KEY_NEGOTIATION_IE ((CsrWifiSmeIEEE80211Reason) 0xf01b)
566#define CSR_WIFI_SME_IEEE80211_REASON_INVALID_MULTICAST_CIPHER ((CsrWifiSmeIEEE80211Reason) 0xf01c)
567#define CSR_WIFI_SME_IEEE80211_REASON_INVALID_UNICAST_CIPHER ((CsrWifiSmeIEEE80211Reason) 0xf01d)
568#define CSR_WIFI_SME_IEEE80211_REASON_UNSUPPORTED_WAPI_IE_VERSION ((CsrWifiSmeIEEE80211Reason) 0xf01e)
569#define CSR_WIFI_SME_IEEE80211_REASON_INVALID_WAPI_CAPABILITY_IE ((CsrWifiSmeIEEE80211Reason) 0xf01f)
570#define CSR_WIFI_SME_IEEE80211_REASON_WAI_CERTIFICATE_AUTHENTICATION_FAILED ((CsrWifiSmeIEEE80211Reason) 0xf020)
571
572/*******************************************************************************
573
574 NAME
575 CsrWifiSmeIEEE80211Result
576
577 DESCRIPTION
578 As definined in the IEEE 802.11 standards
579
580 VALUES
581 CSR_WIFI_SME_IEEE80211_RESULT_SUCCESS
582 - See IEEE 802.11 Standard
583 CSR_WIFI_SME_IEEE80211_RESULT_UNSPECIFIED_FAILURE
584 - See IEEE 802.11 Standard
585 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_CAPABILITIES_MISMATCH
586 - See IEEE 802.11 Standard
587 CSR_WIFI_SME_IEEE80211_RESULT_REASSOCIATION_DENIED_NO_ASSOCIATION
588 - See IEEE 802.11 Standard
589 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_EXTERNAL_REASON
590 - See IEEE 802.11 Standard
591 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_AUTHENTICATION_MISMATCH
592 - See IEEE 802.11 Standard
593 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_INVALID_AUTHENTICATION_SEQUENCE_NUMBER
594 - See IEEE 802.11 Standard
595 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_CHALLENGE_FAILURE
596 - See IEEE 802.11 Standard
597 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_AUTHENTICATION_TIMEOUT
598 - See IEEE 802.11 Standard
599 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_AP_OUT_OF_MEMORY
600 - See IEEE 802.11 Standard
601 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_BASIC_RATES_MISMATCH
602 - See IEEE 802.11 Standard
603 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_SHORT_PREAMBLE_REQUIRED
604 - See IEEE 802.11 Standard
605 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_PBCC_MODULATION_REQUIRED
606 - See IEEE 802.11 Standard
607 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_CHANNEL_AGILITY_REQUIRED
608 - See IEEE 802.11 Standard
609 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_SPECTRUM_MANAGEMENT_REQUIRED
610 - See IEEE 802.11 Standard
611 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_POWER_CAPABILITY_UNACCEPTABLE
612 - See IEEE 802.11 Standard
613 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_SUPPORTED_CHANNELS_UNACCEPTABLE
614 - See IEEE 802.11 Standard
615 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_SHORT_SLOT_REQUIRED
616 - See IEEE 802.11 Standard
617 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_DSSS_OFDMREQUIRED
618 - See IEEE 802.11 Standard
619 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_NO_HT_SUPPORT
620 - See IEEE 802.11 Standard
621 CSR_WIFI_SME_IEEE80211_RESULT_R0KH_UNREACHABLE
622 - See IEEE 802.11 Standard
623 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_PCO_TRANSITION_SUPPORT
624 - See IEEE 802.11 Standard
625 CSR_WIFI_SME_IEEE80211_RESULT_ASSOCIATION_REQUEST_REJECTED_TEMPORARILY
626 - See IEEE 802.11 Standard
627 CSR_WIFI_SME_IEEE80211_RESULT_ROBUST_MANAGEMENT_FRAME_POLICY_VIOLATION
628 - See IEEE 802.11 Standard
629 CSR_WIFI_SME_IEEE80211_RESULT_FAILURE
630 - See IEEE 802.11 Standard
631 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_AP_BANDWIDTH_INSUFFICIENT
632 - See IEEE 802.11 Standard
633 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_POOR_OPERATING_CHANNEL
634 - See IEEE 802.11 Standard
635 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_QOS_REQUIRED
636 - See IEEE 802.11 Standard
637 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_REASON_UNSPECIFIED
638 - See IEEE 802.11 Standard
639 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED
640 - See IEEE 802.11 Standard
641 CSR_WIFI_SME_IEEE80211_RESULT_INVALID_PARAMETERS
642 - See IEEE 802.11 Standard
643 CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_WITH_SUGGESTED_TSPEC_CHANGES
644 - See IEEE 802.11 Standard
645 CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_INVALID_IE
646 - See IEEE 802.11 Standard
647 CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_INVALID_GROUP_CIPHER
648 - See IEEE 802.11 Standard
649 CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_INVALID_PAIRWISE_CIPHER
650 - See IEEE 802.11 Standard
651 CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_INVALID_AKMP
652 - See IEEE 802.11 Standard
653 CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_UNSUPPORTED_RSN_VERSION
654 - See IEEE 802.11 Standard
655 CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_INVALID_RSN_CAPABILITY
656 - See IEEE 802.11 Standard
657 CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_SECURITY_POLICY
658 - See IEEE 802.11 Standard
659 CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_FOR_DELAY_PERIOD
660 - See IEEE 802.11 Standard
661 CSR_WIFI_SME_IEEE80211_RESULT_NOT_ALLOWED
662 - See IEEE 802.11 Standard
663 CSR_WIFI_SME_IEEE80211_RESULT_NOT_PRESENT
664 - See IEEE 802.11 Standard
665 CSR_WIFI_SME_IEEE80211_RESULT_NOT_QSTA
666 - See IEEE 802.11 Standard
667 CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_LISTEN_INTERVAL_TOO_LARGE
668 - See IEEE 802.11 Standard
669 CSR_WIFI_SME_IEEE80211_RESULT_INVALID_FT_ACTION_FRAME_COUNT
670 - See IEEE 802.11 Standard
671 CSR_WIFI_SME_IEEE80211_RESULT_INVALID_PMKID
672 - See IEEE 802.11 Standard
673 CSR_WIFI_SME_IEEE80211_RESULT_INVALID_MDIE
674 - See IEEE 802.11 Standard
675 CSR_WIFI_SME_IEEE80211_RESULT_INVALID_FTIE
676 - See IEEE 802.11 Standard
677 CSR_WIFI_SME_IEEE80211_RESULT_UNSPECIFIED_QOS_FAILURE
678 - See IEEE 802.11 Standard
679 CSR_WIFI_SME_IEEE80211_RESULT_WRONG_POLICY
680 - See IEEE 802.11 Standard
681 CSR_WIFI_SME_IEEE80211_RESULT_INSUFFICIENT_BANDWIDTH
682 - See IEEE 802.11 Standard
683 CSR_WIFI_SME_IEEE80211_RESULT_INVALID_TSPEC_PARAMETERS
684 - See IEEE 802.11 Standard
685 CSR_WIFI_SME_IEEE80211_RESULT_TIMEOUT
686 - See IEEE 802.11 Standard
687 CSR_WIFI_SME_IEEE80211_RESULT_TOO_MANY_SIMULTANEOUS_REQUESTS
688 - See IEEE 802.11 Standard
689 CSR_WIFI_SME_IEEE80211_RESULT_BSS_ALREADY_STARTED_OR_JOINED
690 - See IEEE 802.11 Standard
691 CSR_WIFI_SME_IEEE80211_RESULT_NOT_SUPPORTED
692 - See IEEE 802.11 Standard
693 CSR_WIFI_SME_IEEE80211_RESULT_TRANSMISSION_FAILURE
694 - See IEEE 802.11 Standard
695 CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_NOT_AUTHENTICATED
696 - See IEEE 802.11 Standard
697 CSR_WIFI_SME_IEEE80211_RESULT_RESET_REQUIRED_BEFORE_START
698 - See IEEE 802.11 Standard
699 CSR_WIFI_SME_IEEE80211_RESULT_LM_INFO_UNAVAILABLE
700 - See IEEE 802.11 Standard
701 CSR_WIFI_SME_IEEE80211_RESULT_INVALID_UNICAST_CIPHER
702 - See IEEE 802.11 Standard
703 CSR_WIFI_SME_IEEE80211_RESULT_INVALID_MULTICAST_CIPHER
704 - See IEEE 802.11 Standard
705 CSR_WIFI_SME_IEEE80211_RESULT_UNSUPPORTED_WAPI_IE_VERSION
706 - See IEEE 802.11 Standard
707 CSR_WIFI_SME_IEEE80211_RESULT_INVALID_WAPI_CAPABILITY_IE
708 - See IEEE 802.11 Standard
709
710*******************************************************************************/
8c87f69a 711typedef u16 CsrWifiSmeIEEE80211Result;
635d2b00
GKH
712#define CSR_WIFI_SME_IEEE80211_RESULT_SUCCESS ((CsrWifiSmeIEEE80211Result) 0x0000)
713#define CSR_WIFI_SME_IEEE80211_RESULT_UNSPECIFIED_FAILURE ((CsrWifiSmeIEEE80211Result) 0x0001)
714#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_CAPABILITIES_MISMATCH ((CsrWifiSmeIEEE80211Result) 0x000a)
715#define CSR_WIFI_SME_IEEE80211_RESULT_REASSOCIATION_DENIED_NO_ASSOCIATION ((CsrWifiSmeIEEE80211Result) 0x000b)
716#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_EXTERNAL_REASON ((CsrWifiSmeIEEE80211Result) 0x000c)
717#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_AUTHENTICATION_MISMATCH ((CsrWifiSmeIEEE80211Result) 0x000d)
718#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_INVALID_AUTHENTICATION_SEQUENCE_NUMBER ((CsrWifiSmeIEEE80211Result) 0x000e)
719#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_CHALLENGE_FAILURE ((CsrWifiSmeIEEE80211Result) 0x000f)
720#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_AUTHENTICATION_TIMEOUT ((CsrWifiSmeIEEE80211Result) 0x0010)
721#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_AP_OUT_OF_MEMORY ((CsrWifiSmeIEEE80211Result) 0x0011)
722#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_BASIC_RATES_MISMATCH ((CsrWifiSmeIEEE80211Result) 0x0012)
723#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_SHORT_PREAMBLE_REQUIRED ((CsrWifiSmeIEEE80211Result) 0x0013)
724#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_PBCC_MODULATION_REQUIRED ((CsrWifiSmeIEEE80211Result) 0x0014)
725#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_CHANNEL_AGILITY_REQUIRED ((CsrWifiSmeIEEE80211Result) 0x0015)
726#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_SPECTRUM_MANAGEMENT_REQUIRED ((CsrWifiSmeIEEE80211Result) 0x0016)
727#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_POWER_CAPABILITY_UNACCEPTABLE ((CsrWifiSmeIEEE80211Result) 0x0017)
728#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_SUPPORTED_CHANNELS_UNACCEPTABLE ((CsrWifiSmeIEEE80211Result) 0x0018)
729#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_SHORT_SLOT_REQUIRED ((CsrWifiSmeIEEE80211Result) 0x0019)
730#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_DSSS_OFDMREQUIRED ((CsrWifiSmeIEEE80211Result) 0x001a)
731#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_NO_HT_SUPPORT ((CsrWifiSmeIEEE80211Result) 0x001b)
732#define CSR_WIFI_SME_IEEE80211_RESULT_R0KH_UNREACHABLE ((CsrWifiSmeIEEE80211Result) 0x001c)
733#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_PCO_TRANSITION_SUPPORT ((CsrWifiSmeIEEE80211Result) 0x001d)
734#define CSR_WIFI_SME_IEEE80211_RESULT_ASSOCIATION_REQUEST_REJECTED_TEMPORARILY ((CsrWifiSmeIEEE80211Result) 0x001e)
735#define CSR_WIFI_SME_IEEE80211_RESULT_ROBUST_MANAGEMENT_FRAME_POLICY_VIOLATION ((CsrWifiSmeIEEE80211Result) 0x001f)
736#define CSR_WIFI_SME_IEEE80211_RESULT_FAILURE ((CsrWifiSmeIEEE80211Result) 0x0020)
737#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_AP_BANDWIDTH_INSUFFICIENT ((CsrWifiSmeIEEE80211Result) 0x0021)
738#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_POOR_OPERATING_CHANNEL ((CsrWifiSmeIEEE80211Result) 0x0022)
739#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_QOS_REQUIRED ((CsrWifiSmeIEEE80211Result) 0x0023)
740#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_REASON_UNSPECIFIED ((CsrWifiSmeIEEE80211Result) 0x0025)
741#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED ((CsrWifiSmeIEEE80211Result) 0x0025)
742#define CSR_WIFI_SME_IEEE80211_RESULT_INVALID_PARAMETERS ((CsrWifiSmeIEEE80211Result) 0x0026)
743#define CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_WITH_SUGGESTED_TSPEC_CHANGES ((CsrWifiSmeIEEE80211Result) 0x0027)
744#define CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_INVALID_IE ((CsrWifiSmeIEEE80211Result) 0x0028)
745#define CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_INVALID_GROUP_CIPHER ((CsrWifiSmeIEEE80211Result) 0x0029)
746#define CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_INVALID_PAIRWISE_CIPHER ((CsrWifiSmeIEEE80211Result) 0x002a)
747#define CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_INVALID_AKMP ((CsrWifiSmeIEEE80211Result) 0x002b)
748#define CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_UNSUPPORTED_RSN_VERSION ((CsrWifiSmeIEEE80211Result) 0x002c)
749#define CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_INVALID_RSN_CAPABILITY ((CsrWifiSmeIEEE80211Result) 0x002d)
750#define CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_SECURITY_POLICY ((CsrWifiSmeIEEE80211Result) 0x002e)
751#define CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_FOR_DELAY_PERIOD ((CsrWifiSmeIEEE80211Result) 0x002f)
752#define CSR_WIFI_SME_IEEE80211_RESULT_NOT_ALLOWED ((CsrWifiSmeIEEE80211Result) 0x0030)
753#define CSR_WIFI_SME_IEEE80211_RESULT_NOT_PRESENT ((CsrWifiSmeIEEE80211Result) 0x0031)
754#define CSR_WIFI_SME_IEEE80211_RESULT_NOT_QSTA ((CsrWifiSmeIEEE80211Result) 0x0032)
755#define CSR_WIFI_SME_IEEE80211_RESULT_REJECTED_LISTEN_INTERVAL_TOO_LARGE ((CsrWifiSmeIEEE80211Result) 0x0033)
756#define CSR_WIFI_SME_IEEE80211_RESULT_INVALID_FT_ACTION_FRAME_COUNT ((CsrWifiSmeIEEE80211Result) 0x0034)
757#define CSR_WIFI_SME_IEEE80211_RESULT_INVALID_PMKID ((CsrWifiSmeIEEE80211Result) 0x0035)
758#define CSR_WIFI_SME_IEEE80211_RESULT_INVALID_MDIE ((CsrWifiSmeIEEE80211Result) 0x0036)
759#define CSR_WIFI_SME_IEEE80211_RESULT_INVALID_FTIE ((CsrWifiSmeIEEE80211Result) 0x0037)
760#define CSR_WIFI_SME_IEEE80211_RESULT_UNSPECIFIED_QOS_FAILURE ((CsrWifiSmeIEEE80211Result) 0x00c8)
761#define CSR_WIFI_SME_IEEE80211_RESULT_WRONG_POLICY ((CsrWifiSmeIEEE80211Result) 0x00c9)
762#define CSR_WIFI_SME_IEEE80211_RESULT_INSUFFICIENT_BANDWIDTH ((CsrWifiSmeIEEE80211Result) 0x00ca)
763#define CSR_WIFI_SME_IEEE80211_RESULT_INVALID_TSPEC_PARAMETERS ((CsrWifiSmeIEEE80211Result) 0x00cb)
764#define CSR_WIFI_SME_IEEE80211_RESULT_TIMEOUT ((CsrWifiSmeIEEE80211Result) 0x8000)
765#define CSR_WIFI_SME_IEEE80211_RESULT_TOO_MANY_SIMULTANEOUS_REQUESTS ((CsrWifiSmeIEEE80211Result) 0x8001)
766#define CSR_WIFI_SME_IEEE80211_RESULT_BSS_ALREADY_STARTED_OR_JOINED ((CsrWifiSmeIEEE80211Result) 0x8002)
767#define CSR_WIFI_SME_IEEE80211_RESULT_NOT_SUPPORTED ((CsrWifiSmeIEEE80211Result) 0x8003)
768#define CSR_WIFI_SME_IEEE80211_RESULT_TRANSMISSION_FAILURE ((CsrWifiSmeIEEE80211Result) 0x8004)
769#define CSR_WIFI_SME_IEEE80211_RESULT_REFUSED_NOT_AUTHENTICATED ((CsrWifiSmeIEEE80211Result) 0x8005)
770#define CSR_WIFI_SME_IEEE80211_RESULT_RESET_REQUIRED_BEFORE_START ((CsrWifiSmeIEEE80211Result) 0x8006)
771#define CSR_WIFI_SME_IEEE80211_RESULT_LM_INFO_UNAVAILABLE ((CsrWifiSmeIEEE80211Result) 0x8007)
772#define CSR_WIFI_SME_IEEE80211_RESULT_INVALID_UNICAST_CIPHER ((CsrWifiSmeIEEE80211Result) 0xf02f)
773#define CSR_WIFI_SME_IEEE80211_RESULT_INVALID_MULTICAST_CIPHER ((CsrWifiSmeIEEE80211Result) 0xf030)
774#define CSR_WIFI_SME_IEEE80211_RESULT_UNSUPPORTED_WAPI_IE_VERSION ((CsrWifiSmeIEEE80211Result) 0xf031)
775#define CSR_WIFI_SME_IEEE80211_RESULT_INVALID_WAPI_CAPABILITY_IE ((CsrWifiSmeIEEE80211Result) 0xf032)
776
777/*******************************************************************************
778
779 NAME
780 CsrWifiSmeIndications
781
782 DESCRIPTION
783 Defines bits for CsrWifiSmeIndicationsMask
784
785 VALUES
786 CSR_WIFI_SME_INDICATIONS_NONE
787 - Used to cancel the registrations for receiving indications
788 CSR_WIFI_SME_INDICATIONS_WIFIOFF
789 - Used to register for CSR_WIFI_SME_WIFI_OFF_IND events
790 CSR_WIFI_SME_INDICATIONS_SCANRESULT
791 - Used to register for CSR_WIFI_SME_SCAN_RESULT_IND events
792 CSR_WIFI_SME_INDICATIONS_CONNECTIONQUALITY
793 - Used to register for CSR_WIFI_SME_CONNECTION_QUALITY_IND
794 events
795 CSR_WIFI_SME_INDICATIONS_MEDIASTATUS
796 - Used to register for CSR_WIFI_SME_MEDIA_STATUS_IND events
797 CSR_WIFI_SME_INDICATIONS_MICFAILURE
798 - Used to register for CSR_WIFI_SME_MICFAILURE_IND events
799 CSR_WIFI_SME_INDICATIONS_PMKIDCANDIDATELIST
800 - Used to register for CSR_WIFI_SME_PMKIDCANDIDATE_LIST_IND
801 events
802 CSR_WIFI_SME_INDICATIONS_TSPEC
803 - Used to register for CSR_WIFI_SME_TSPEC_IND events
804 CSR_WIFI_SME_INDICATIONS_ROAMSTART
805 - Used to register for CSR_WIFI_SME_ROAM_START_IND events
806 CSR_WIFI_SME_INDICATIONS_ROAMCOMPLETE
807 - Used to register for CSR_WIFI_SME_ROAM_COMPLETE_IND events
808 CSR_WIFI_SME_INDICATIONS_ASSOCIATIONSTART
809 - Used to register for CSR_WIFI_SME_ASSOCIATION_START_IND
810 events
811 CSR_WIFI_SME_INDICATIONS_ASSOCIATIONCOMPLETE
812 - Used to register for CSR_WIFI_SME_ASSOCIATION_COMPLETE_IND
813 events
814 CSR_WIFI_SME_INDICATIONS_IBSSSTATION
815 - Used to register for CSR_WIFI_SME_IBSS_STATION_IND events
816 CSR_WIFI_SME_INDICATIONS_WIFION
817 - Used to register for CSR_WIFI_SME_WIFI_ON_IND events
818 CSR_WIFI_SME_INDICATIONS_ERROR
819 - Used to register for CSR_WIFI_SME_ERROR_IND events
820 CSR_WIFI_SME_INDICATIONS_INFO
821 - Used to register for CSR_WIFI_SME_INFO_IND events
822 CSR_WIFI_SME_INDICATIONS_COREDUMP
823 - Used to register for CSR_WIFI_SME_CORE_DUMP_IND events
824 CSR_WIFI_SME_INDICATIONS_ALL
825 - Used to register for all available indications
826
827*******************************************************************************/
26a6b2e1 828typedef u32 CsrWifiSmeIndications;
635d2b00
GKH
829#define CSR_WIFI_SME_INDICATIONS_NONE ((CsrWifiSmeIndications) 0x00000000)
830#define CSR_WIFI_SME_INDICATIONS_WIFIOFF ((CsrWifiSmeIndications) 0x00000001)
831#define CSR_WIFI_SME_INDICATIONS_SCANRESULT ((CsrWifiSmeIndications) 0x00000002)
832#define CSR_WIFI_SME_INDICATIONS_CONNECTIONQUALITY ((CsrWifiSmeIndications) 0x00000004)
833#define CSR_WIFI_SME_INDICATIONS_MEDIASTATUS ((CsrWifiSmeIndications) 0x00000008)
834#define CSR_WIFI_SME_INDICATIONS_MICFAILURE ((CsrWifiSmeIndications) 0x00000010)
835#define CSR_WIFI_SME_INDICATIONS_PMKIDCANDIDATELIST ((CsrWifiSmeIndications) 0x00000020)
836#define CSR_WIFI_SME_INDICATIONS_TSPEC ((CsrWifiSmeIndications) 0x00000040)
837#define CSR_WIFI_SME_INDICATIONS_ROAMSTART ((CsrWifiSmeIndications) 0x00000080)
838#define CSR_WIFI_SME_INDICATIONS_ROAMCOMPLETE ((CsrWifiSmeIndications) 0x00000100)
839#define CSR_WIFI_SME_INDICATIONS_ASSOCIATIONSTART ((CsrWifiSmeIndications) 0x00000200)
840#define CSR_WIFI_SME_INDICATIONS_ASSOCIATIONCOMPLETE ((CsrWifiSmeIndications) 0x00000400)
841#define CSR_WIFI_SME_INDICATIONS_IBSSSTATION ((CsrWifiSmeIndications) 0x00000800)
842#define CSR_WIFI_SME_INDICATIONS_WIFION ((CsrWifiSmeIndications) 0x00001000)
843#define CSR_WIFI_SME_INDICATIONS_ERROR ((CsrWifiSmeIndications) 0x00002000)
844#define CSR_WIFI_SME_INDICATIONS_INFO ((CsrWifiSmeIndications) 0x00004000)
845#define CSR_WIFI_SME_INDICATIONS_COREDUMP ((CsrWifiSmeIndications) 0x00008000)
846#define CSR_WIFI_SME_INDICATIONS_ALL ((CsrWifiSmeIndications) 0xFFFFFFFF)
847
848/*******************************************************************************
849
850 NAME
851 CsrWifiSmeKeyType
852
853 DESCRIPTION
854 Indicates the type of the key
855
856 VALUES
857 CSR_WIFI_SME_KEY_TYPE_GROUP - Key for broadcast communication
858 CSR_WIFI_SME_KEY_TYPE_PAIRWISE - Key for unicast communication
859 CSR_WIFI_SME_KEY_TYPE_STAKEY - Key for direct link communication to
860 another station in infrastructure networks
861 CSR_WIFI_SME_KEY_TYPE_IGTK - Integrity Group Temporal Key
862 CSR_WIFI_SME_KEY_TYPE_CCKM - Key for Cisco Centralized Key Management
863
864*******************************************************************************/
7e6f5794 865typedef u8 CsrWifiSmeKeyType;
635d2b00
GKH
866#define CSR_WIFI_SME_KEY_TYPE_GROUP ((CsrWifiSmeKeyType) 0x00)
867#define CSR_WIFI_SME_KEY_TYPE_PAIRWISE ((CsrWifiSmeKeyType) 0x01)
868#define CSR_WIFI_SME_KEY_TYPE_STAKEY ((CsrWifiSmeKeyType) 0x02)
869#define CSR_WIFI_SME_KEY_TYPE_IGTK ((CsrWifiSmeKeyType) 0x03)
870#define CSR_WIFI_SME_KEY_TYPE_CCKM ((CsrWifiSmeKeyType) 0x04)
871
872/*******************************************************************************
873
874 NAME
875 CsrWifiSmeListAction
876
877 DESCRIPTION
878 Identifies the type of action to be performed on a list of items
879 The values of this type are used across the NME/SME/Router API's and they
880 must be kept consistent with the corresponding types in the .xml of the
881 ottherinterfaces
882
883 VALUES
884 CSR_WIFI_SME_LIST_ACTION_GET - Retrieve the current list of items
885 CSR_WIFI_SME_LIST_ACTION_ADD - Add one or more items
886 CSR_WIFI_SME_LIST_ACTION_REMOVE - Remove one or more items
887 CSR_WIFI_SME_LIST_ACTION_FLUSH - Remove all items
888
889*******************************************************************************/
7e6f5794 890typedef u8 CsrWifiSmeListAction;
635d2b00
GKH
891#define CSR_WIFI_SME_LIST_ACTION_GET ((CsrWifiSmeListAction) 0x00)
892#define CSR_WIFI_SME_LIST_ACTION_ADD ((CsrWifiSmeListAction) 0x01)
893#define CSR_WIFI_SME_LIST_ACTION_REMOVE ((CsrWifiSmeListAction) 0x02)
894#define CSR_WIFI_SME_LIST_ACTION_FLUSH ((CsrWifiSmeListAction) 0x03)
895
896/*******************************************************************************
897
898 NAME
899 CsrWifiSmeMediaStatus
900
901 DESCRIPTION
902 Indicates the connection status
903 The values of this type are used across the NME/SME/Router API's and they
904 must be kept consistent with the corresponding types in the .xml of the
905 ottherinterfaces
906
907 VALUES
908 CSR_WIFI_SME_MEDIA_STATUS_CONNECTED
909 - Value CSR_WIFI_SME_MEDIA_STATUS_CONNECTED can happen in two
910 situations:
911 * A network connection is established. Specifically, this is
912 when the MLME_ASSOCIATION completes or the first peer
913 relationship is established in an IBSS. In a WPA/WPA2
914 network, this indicates that the stack is ready to perform
915 the 4-way handshake or 802.1x authentication if CSR NME
916 security library is not used. If CSR NME security library
917 is used this indicates, completion of 4way handshake or
918 802.1x authentication
919 * The SME roams to another AP on the same ESS
920 During the AP operation, it indicates that the peer station
921 is connected to the AP and is ready for data transfer.
922 CSR_WIFI_SME_MEDIA_STATUS_DISCONNECTED
923 - Value CSR_WIFI_SME_MEDIA_STATUS_DISCONNECTED can happen in
924 two situations:
925 * when the connection to a network is lost and there is no
926 alternative on the same ESS to roam to
927 * when a CSR_WIFI_SME_DISCONNECT_REQ request is issued
928 During AP or P2PGO operation, it indicates that the peer
929 station has disconnected from the AP
930
931*******************************************************************************/
7e6f5794 932typedef u8 CsrWifiSmeMediaStatus;
635d2b00
GKH
933#define CSR_WIFI_SME_MEDIA_STATUS_CONNECTED ((CsrWifiSmeMediaStatus) 0x00)
934#define CSR_WIFI_SME_MEDIA_STATUS_DISCONNECTED ((CsrWifiSmeMediaStatus) 0x01)
935
936/*******************************************************************************
937
938 NAME
939 CsrWifiSmeP2pCapability
940
941 DESCRIPTION
942 Defines P2P Device Capabilities
943
944 VALUES
945 CSR_WIFI_SME_P2P_SERVICE_DISCOVERY_CAPABILITY
946 - This field is set to 1 if the P2P Device supports Service
947 Discovery, and to 0 otherwise
948 CSR_WIFI_SME_P2P_CLIENT_DISCOVERABILITY_CAPABILITY
949 - This field is set to 1 when the P2P Device supports P2P
950 Client Discoverability, and to 0 otherwise.
951 CSR_WIFI_SME_P2P_CONCURRENT_OPERATION_CAPABILITY
952 - This field is set to 1 when the P2P Device supports
953 Concurrent Operation with WLAN, and to 0 otherwise.
954 CSR_WIFI_SME_P2P_MANAGED_DEVICE_CAPABILITY
955 - This field is set to 1 when the P2P interface of the P2P
956 Device is capable of being managed by the WLAN
957 (infrastructure network) based on P2P coexistence
958 parameters, and to 0 otherwise
959 CSR_WIFI_SME_P2P_INVITAION_CAPABILITY
960 - This field is set to 1 if the P2P Device is capable of
961 processing P2P Invitation Procedure signaling, and to 0
962 otherwise.
963
964*******************************************************************************/
7e6f5794 965typedef u8 CsrWifiSmeP2pCapability;
635d2b00
GKH
966#define CSR_WIFI_SME_P2P_SERVICE_DISCOVERY_CAPABILITY ((CsrWifiSmeP2pCapability) 0x01)
967#define CSR_WIFI_SME_P2P_CLIENT_DISCOVERABILITY_CAPABILITY ((CsrWifiSmeP2pCapability) 0x02)
968#define CSR_WIFI_SME_P2P_CONCURRENT_OPERATION_CAPABILITY ((CsrWifiSmeP2pCapability) 0x04)
969#define CSR_WIFI_SME_P2P_MANAGED_DEVICE_CAPABILITY ((CsrWifiSmeP2pCapability) 0x08)
970#define CSR_WIFI_SME_P2P_INVITAION_CAPABILITY ((CsrWifiSmeP2pCapability) 0x20)
971
972/*******************************************************************************
973
974 NAME
975 CsrWifiSmeP2pGroupCapability
976
977 DESCRIPTION
978 Define bits for P2P Group Capability
979
980 VALUES
981 CSR_WIFI_P2P_GRP_CAP_GO
982 - Indicates if the local device has become a GO after GO
983 negotiation
984 CSR_WIFI_P2P_GRP_CAP_PERSISTENT
985 - Persistent group
986 CSR_WIFI_P2P_GRP_CAP_INTRABSS_DIST
987 - Intra-BSS data distribution support
988 CSR_WIFI_P2P_GRP_CAP_CROSS_CONN
989 - Support of cross connection
990 CSR_WIFI_P2P_GRP_CAP_PERSISTENT_RECONNECT
991 - Support of persistent reconnect
992
993*******************************************************************************/
7e6f5794 994typedef u8 CsrWifiSmeP2pGroupCapability;
635d2b00
GKH
995#define CSR_WIFI_P2P_GRP_CAP_GO ((CsrWifiSmeP2pGroupCapability) 0x01)
996#define CSR_WIFI_P2P_GRP_CAP_PERSISTENT ((CsrWifiSmeP2pGroupCapability) 0x02)
997#define CSR_WIFI_P2P_GRP_CAP_INTRABSS_DIST ((CsrWifiSmeP2pGroupCapability) 0x08)
998#define CSR_WIFI_P2P_GRP_CAP_CROSS_CONN ((CsrWifiSmeP2pGroupCapability) 0x10)
999#define CSR_WIFI_P2P_GRP_CAP_PERSISTENT_RECONNECT ((CsrWifiSmeP2pGroupCapability) 0x20)
1000
1001/*******************************************************************************
1002
1003 NAME
1004 CsrWifiSmeP2pNoaConfigMethod
1005
1006 DESCRIPTION
1007 Notice of Absece Configuration
1008
1009 VALUES
1010 CSR_WIFI_P2P_NOA_NONE - Do not use NOA
1011 CSR_WIFI_P2P_NOA_AUTONOMOUS - NOA based on the traffic analysis
1012 CSR_WIFI_P2P_NOA_USER_DEFINED - NOA as specified by the user
1013
1014*******************************************************************************/
7e6f5794 1015typedef u8 CsrWifiSmeP2pNoaConfigMethod;
635d2b00
GKH
1016#define CSR_WIFI_P2P_NOA_NONE ((CsrWifiSmeP2pNoaConfigMethod) 0x00)
1017#define CSR_WIFI_P2P_NOA_AUTONOMOUS ((CsrWifiSmeP2pNoaConfigMethod) 0x01)
1018#define CSR_WIFI_P2P_NOA_USER_DEFINED ((CsrWifiSmeP2pNoaConfigMethod) 0x02)
1019
1020/*******************************************************************************
1021
1022 NAME
1023 CsrWifiSmeP2pRole
1024
1025 DESCRIPTION
1026 Definition of roles for a P2P Device
1027
1028 VALUES
1029 CSR_WIFI_SME_P2P_ROLE_NONE - A non-P2PDevice device
1030 CSR_WIFI_SME_P2P_ROLE_STANDALONE - A Standalone P2P device
1031 CSR_WIFI_SME_P2P_ROLE_GO - Role Assumed is that of a Group Owner
1032 within a P2P Group
1033 CSR_WIFI_SME_P2P_ROLE_CLI - Role Assumed is that of a P2P Client
1034 within a P2P Group
1035
1036*******************************************************************************/
7e6f5794 1037typedef u8 CsrWifiSmeP2pRole;
635d2b00
GKH
1038#define CSR_WIFI_SME_P2P_ROLE_NONE ((CsrWifiSmeP2pRole) 0x00)
1039#define CSR_WIFI_SME_P2P_ROLE_STANDALONE ((CsrWifiSmeP2pRole) 0x01)
1040#define CSR_WIFI_SME_P2P_ROLE_GO ((CsrWifiSmeP2pRole) 0x02)
1041#define CSR_WIFI_SME_P2P_ROLE_CLI ((CsrWifiSmeP2pRole) 0x03)
1042
1043/*******************************************************************************
1044
1045 NAME
1046 CsrWifiSmeP2pStatus
1047
1048 DESCRIPTION
1049 This data type enumerates the outcome of P2P procedure
1050
1051 VALUES
1052 CSR_WIFI_SME_P2P_STATUS_SUCCESS
1053 - Success
1054 CSR_WIFI_SME_P2P_STATUS_FAIL_INFO_UNAVAILABLE
1055 - Fail; information is currently unavailable
1056 CSR_WIFI_SME_P2P_STATUS_FAIL_INCOMPATIBLE_PARAM
1057 - Fail; incompatible parameters
1058 CSR_WIFI_SME_P2P_STATUS_FAIL_LIMIT_REACHED
1059 - Fail; limit reached
1060 CSR_WIFI_SME_P2P_STATUS_FAIL_INVALID_PARAM
1061 - Fail; invalid parameters
1062 CSR_WIFI_SME_P2P_STATUS_FAIL_ACCOMODATE
1063 - Fail; unable to accommodate request
1064 CSR_WIFI_SME_P2P_STATUS_FAIL_PREV_ERROR
1065 - Fail; previous protocol error, or disruptive behavior
1066 CSR_WIFI_SME_P2P_STATUS_FAIL_COMMON_CHANNELS
1067 - Fail; no common channels
1068 CSR_WIFI_SME_P2P_STATUS_FAIL_UNKNOWN_GROUP
1069 - Fail; unknown P2P Group
1070 CSR_WIFI_SME_P2P_STATUS_FAIL_GO_INTENT
1071 - Fail: both P2P Devices indicated an Intent of 15 in Group
1072 Owner Negotiation
1073 CSR_WIFI_SME_P2P_STATUS_FAIL_PROVISION_METHOD_INCOMPATIBLE
1074 - Fail; incompatible provisioning method
1075 CSR_WIFI_SME_P2P_STATUS_FAIL_REJECT
1076 - Fail: rejected by user
1077 CSR_WIFI_SME_P2P_STATUS_FAIL_RESERVED
1078 - Fail; Status Reserved
1079
1080*******************************************************************************/
7e6f5794 1081typedef u8 CsrWifiSmeP2pStatus;
635d2b00
GKH
1082#define CSR_WIFI_SME_P2P_STATUS_SUCCESS ((CsrWifiSmeP2pStatus) 0x00)
1083#define CSR_WIFI_SME_P2P_STATUS_FAIL_INFO_UNAVAILABLE ((CsrWifiSmeP2pStatus) 0x01)
1084#define CSR_WIFI_SME_P2P_STATUS_FAIL_INCOMPATIBLE_PARAM ((CsrWifiSmeP2pStatus) 0x02)
1085#define CSR_WIFI_SME_P2P_STATUS_FAIL_LIMIT_REACHED ((CsrWifiSmeP2pStatus) 0x03)
1086#define CSR_WIFI_SME_P2P_STATUS_FAIL_INVALID_PARAM ((CsrWifiSmeP2pStatus) 0x04)
1087#define CSR_WIFI_SME_P2P_STATUS_FAIL_ACCOMODATE ((CsrWifiSmeP2pStatus) 0x05)
1088#define CSR_WIFI_SME_P2P_STATUS_FAIL_PREV_ERROR ((CsrWifiSmeP2pStatus) 0x06)
1089#define CSR_WIFI_SME_P2P_STATUS_FAIL_COMMON_CHANNELS ((CsrWifiSmeP2pStatus) 0x07)
1090#define CSR_WIFI_SME_P2P_STATUS_FAIL_UNKNOWN_GROUP ((CsrWifiSmeP2pStatus) 0x08)
1091#define CSR_WIFI_SME_P2P_STATUS_FAIL_GO_INTENT ((CsrWifiSmeP2pStatus) 0x09)
1092#define CSR_WIFI_SME_P2P_STATUS_FAIL_PROVISION_METHOD_INCOMPATIBLE ((CsrWifiSmeP2pStatus) 0x0A)
1093#define CSR_WIFI_SME_P2P_STATUS_FAIL_REJECT ((CsrWifiSmeP2pStatus) 0x0B)
1094#define CSR_WIFI_SME_P2P_STATUS_FAIL_RESERVED ((CsrWifiSmeP2pStatus) 0xFF)
1095
1096/*******************************************************************************
1097
1098 NAME
1099 CsrWifiSmePacketFilterMode
1100
1101 DESCRIPTION
1102 Options for the filter mode parameter.
1103 The Values here match the HIP interface
1104
1105 VALUES
1106 CSR_WIFI_SME_PACKET_FILTER_MODE_OPT_OUT
1107 - Broadcast packets are always reported to the host unless
1108 they match at least one of the specified TCLAS IEs.
1109 CSR_WIFI_SME_PACKET_FILTER_MODE_OPT_IN
1110 - Broadcast packets are reported to the host only if they
1111 match at least one of the specified TCLAS IEs.
1112
1113*******************************************************************************/
7e6f5794 1114typedef u8 CsrWifiSmePacketFilterMode;
635d2b00
GKH
1115#define CSR_WIFI_SME_PACKET_FILTER_MODE_OPT_OUT ((CsrWifiSmePacketFilterMode) 0x00)
1116#define CSR_WIFI_SME_PACKET_FILTER_MODE_OPT_IN ((CsrWifiSmePacketFilterMode) 0x03)
1117
1118/*******************************************************************************
1119
1120 NAME
1121 CsrWifiSmePowerSaveLevel
1122
1123 DESCRIPTION
1124 Power Save Level options as defined in the IEEE 802.11 standards
1125 First 3 values are set to match the mlme PowerManagementMode
1126
1127 VALUES
1128 CSR_WIFI_SME_POWER_SAVE_LEVEL_LOW - No power save: the driver will remain
1129 active at all times
1130 CSR_WIFI_SME_POWER_SAVE_LEVEL_HIGH - Enter power save after all packets in
1131 the queues are transmitted and received
1132 CSR_WIFI_SME_POWER_SAVE_LEVEL_MED - Enter power save after all packets in
1133 the queues are transmitted and received
1134 and a further configurable delay
1135 (default 1s) has elapsed
1136 CSR_WIFI_SME_POWER_SAVE_LEVEL_AUTO - The SME will decide when to enter power
1137 save mode according to the traffic
1138 analysis
1139
1140*******************************************************************************/
7e6f5794 1141typedef u8 CsrWifiSmePowerSaveLevel;
635d2b00
GKH
1142#define CSR_WIFI_SME_POWER_SAVE_LEVEL_LOW ((CsrWifiSmePowerSaveLevel) 0x00)
1143#define CSR_WIFI_SME_POWER_SAVE_LEVEL_HIGH ((CsrWifiSmePowerSaveLevel) 0x01)
1144#define CSR_WIFI_SME_POWER_SAVE_LEVEL_MED ((CsrWifiSmePowerSaveLevel) 0x02)
1145#define CSR_WIFI_SME_POWER_SAVE_LEVEL_AUTO ((CsrWifiSmePowerSaveLevel) 0x03)
1146
1147/*******************************************************************************
1148
1149 NAME
1150 CsrWifiSmePreambleType
1151
1152 DESCRIPTION
1153 SME Preamble Types
1154
1155 VALUES
1156 CSR_WIFI_SME_USE_LONG_PREAMBLE - Use legacy (long) preamble
1157 CSR_WIFI_SME_USE_SHORT_PREAMBLE - Use short PPDU format
1158
1159*******************************************************************************/
7e6f5794 1160typedef u8 CsrWifiSmePreambleType;
635d2b00
GKH
1161#define CSR_WIFI_SME_USE_LONG_PREAMBLE ((CsrWifiSmePreambleType) 0x00)
1162#define CSR_WIFI_SME_USE_SHORT_PREAMBLE ((CsrWifiSmePreambleType) 0x01)
1163
1164/*******************************************************************************
1165
1166 NAME
1167 CsrWifiSmeRadioIF
1168
1169 DESCRIPTION
1170 Indicates the frequency
1171
1172 VALUES
1173 CSR_WIFI_SME_RADIO_IF_GHZ_2_4 - Indicates the 2.4 GHZ frequency
1174 CSR_WIFI_SME_RADIO_IF_GHZ_5_0 - Future use: currently not supported
1175 CSR_WIFI_SME_RADIO_IF_BOTH - Future use: currently not supported
1176
1177*******************************************************************************/
7e6f5794 1178typedef u8 CsrWifiSmeRadioIF;
635d2b00
GKH
1179#define CSR_WIFI_SME_RADIO_IF_GHZ_2_4 ((CsrWifiSmeRadioIF) 0x01)
1180#define CSR_WIFI_SME_RADIO_IF_GHZ_5_0 ((CsrWifiSmeRadioIF) 0x02)
1181#define CSR_WIFI_SME_RADIO_IF_BOTH ((CsrWifiSmeRadioIF) 0x03)
1182
1183/*******************************************************************************
1184
1185 NAME
1186 CsrWifiSmeRegulatoryDomain
1187
1188 DESCRIPTION
1189 Indicates the regulatory domain as defined in IEEE 802.11 standards
1190
1191 VALUES
1192 CSR_WIFI_SME_REGULATORY_DOMAIN_OTHER
1193 - See IEEE 802.11 Standard
1194 CSR_WIFI_SME_REGULATORY_DOMAIN_FCC
1195 - See IEEE 802.11 Standard
1196 CSR_WIFI_SME_REGULATORY_DOMAIN_IC
1197 - See IEEE 802.11 Standard
1198 CSR_WIFI_SME_REGULATORY_DOMAIN_ETSI
1199 - See IEEE 802.11 Standard
1200 CSR_WIFI_SME_REGULATORY_DOMAIN_SPAIN
1201 - See IEEE 802.11 Standard
1202 CSR_WIFI_SME_REGULATORY_DOMAIN_FRANCE
1203 - See IEEE 802.11 Standard
1204 CSR_WIFI_SME_REGULATORY_DOMAIN_JAPAN
1205 - See IEEE 802.11 Standard
1206 CSR_WIFI_SME_REGULATORY_DOMAIN_JAPANBIS
1207 - See IEEE 802.11 Standard
1208 CSR_WIFI_SME_REGULATORY_DOMAIN_CHINA
1209 - See IEEE 802.11 Standard
1210 CSR_WIFI_SME_REGULATORY_DOMAIN_CHINABIS
1211 - See IEEE 802.11 Standard
1212 CSR_WIFI_SME_REGULATORY_DOMAIN_NONE
1213 - See IEEE 802.11 Standard
1214
1215*******************************************************************************/
7e6f5794 1216typedef u8 CsrWifiSmeRegulatoryDomain;
635d2b00
GKH
1217#define CSR_WIFI_SME_REGULATORY_DOMAIN_OTHER ((CsrWifiSmeRegulatoryDomain) 0x00)
1218#define CSR_WIFI_SME_REGULATORY_DOMAIN_FCC ((CsrWifiSmeRegulatoryDomain) 0x10)
1219#define CSR_WIFI_SME_REGULATORY_DOMAIN_IC ((CsrWifiSmeRegulatoryDomain) 0x20)
1220#define CSR_WIFI_SME_REGULATORY_DOMAIN_ETSI ((CsrWifiSmeRegulatoryDomain) 0x30)
1221#define CSR_WIFI_SME_REGULATORY_DOMAIN_SPAIN ((CsrWifiSmeRegulatoryDomain) 0x31)
1222#define CSR_WIFI_SME_REGULATORY_DOMAIN_FRANCE ((CsrWifiSmeRegulatoryDomain) 0x32)
1223#define CSR_WIFI_SME_REGULATORY_DOMAIN_JAPAN ((CsrWifiSmeRegulatoryDomain) 0x40)
1224#define CSR_WIFI_SME_REGULATORY_DOMAIN_JAPANBIS ((CsrWifiSmeRegulatoryDomain) 0x41)
1225#define CSR_WIFI_SME_REGULATORY_DOMAIN_CHINA ((CsrWifiSmeRegulatoryDomain) 0x50)
1226#define CSR_WIFI_SME_REGULATORY_DOMAIN_CHINABIS ((CsrWifiSmeRegulatoryDomain) 0x51)
1227#define CSR_WIFI_SME_REGULATORY_DOMAIN_NONE ((CsrWifiSmeRegulatoryDomain) 0xFF)
1228
1229/*******************************************************************************
1230
1231 NAME
1232 CsrWifiSmeRoamReason
1233
1234 DESCRIPTION
1235 Indicates the reason for roaming
1236
1237 VALUES
1238 CSR_WIFI_SME_ROAM_REASON_BEACONLOST
1239 - The station cannot receive the beacon signal any more
1240 CSR_WIFI_SME_ROAM_REASON_DISASSOCIATED
1241 - The station has been disassociated
1242 CSR_WIFI_SME_ROAM_REASON_DEAUTHENTICATED
1243 - The station has been deauthenticated
1244 CSR_WIFI_SME_ROAM_REASON_BETTERAPFOUND
1245 - A better AP has been found
1246
1247*******************************************************************************/
7e6f5794 1248typedef u8 CsrWifiSmeRoamReason;
635d2b00
GKH
1249#define CSR_WIFI_SME_ROAM_REASON_BEACONLOST ((CsrWifiSmeRoamReason) 0x00)
1250#define CSR_WIFI_SME_ROAM_REASON_DISASSOCIATED ((CsrWifiSmeRoamReason) 0x01)
1251#define CSR_WIFI_SME_ROAM_REASON_DEAUTHENTICATED ((CsrWifiSmeRoamReason) 0x02)
1252#define CSR_WIFI_SME_ROAM_REASON_BETTERAPFOUND ((CsrWifiSmeRoamReason) 0x03)
1253
1254/*******************************************************************************
1255
1256 NAME
1257 CsrWifiSmeScanType
1258
1259 DESCRIPTION
1260 Identifies the type of scan to be performed
1261
1262 VALUES
1263 CSR_WIFI_SME_SCAN_TYPE_ALL - Scan actively or passively according to the
1264 regulatory domain restrictions
1265 CSR_WIFI_SME_SCAN_TYPE_ACTIVE - Scan actively only: send probes and listen
1266 for answers
1267 CSR_WIFI_SME_SCAN_TYPE_PASSIVE - Scan passively only: listen for beacon
1268 messages
1269
1270*******************************************************************************/
7e6f5794 1271typedef u8 CsrWifiSmeScanType;
635d2b00
GKH
1272#define CSR_WIFI_SME_SCAN_TYPE_ALL ((CsrWifiSmeScanType) 0x00)
1273#define CSR_WIFI_SME_SCAN_TYPE_ACTIVE ((CsrWifiSmeScanType) 0x01)
1274#define CSR_WIFI_SME_SCAN_TYPE_PASSIVE ((CsrWifiSmeScanType) 0x02)
1275
1276/*******************************************************************************
1277
1278 NAME
1279 CsrWifiSmeTrafficType
1280
1281 DESCRIPTION
1282 Identifies the type of traffic going on on the connection.
1283 The values of this type are used across the NME/SME/Router API's and they
1284 must be kept consistent with the corresponding types in the .xml of the
1285 ottherinterfaces
1286
1287 VALUES
1288 CSR_WIFI_SME_TRAFFIC_TYPE_OCCASIONAL
1289 - During the last 30 seconds there were fewer than 20 packets
1290 per seconds in each second in both directions
1291 CSR_WIFI_SME_TRAFFIC_TYPE_BURSTY
1292 - During the last 30 seconds there was at least one second
1293 during which more than 20 packets were received in either
1294 direction
1295 CSR_WIFI_SME_TRAFFIC_TYPE_PERIODIC
1296 - During the last 5 seconds there were at least 10 packets
1297 received each second and a defined period for the traffic
1298 can be recognized
1299 CSR_WIFI_SME_TRAFFIC_TYPE_CONTINUOUS
1300 - During the last 5 seconds there were at least 20 packets
1301 received each second in either direction
1302
1303*******************************************************************************/
7e6f5794 1304typedef u8 CsrWifiSmeTrafficType;
635d2b00
GKH
1305#define CSR_WIFI_SME_TRAFFIC_TYPE_OCCASIONAL ((CsrWifiSmeTrafficType) 0x00)
1306#define CSR_WIFI_SME_TRAFFIC_TYPE_BURSTY ((CsrWifiSmeTrafficType) 0x01)
1307#define CSR_WIFI_SME_TRAFFIC_TYPE_PERIODIC ((CsrWifiSmeTrafficType) 0x02)
1308#define CSR_WIFI_SME_TRAFFIC_TYPE_CONTINUOUS ((CsrWifiSmeTrafficType) 0x03)
1309
1310/*******************************************************************************
1311
1312 NAME
1313 CsrWifiSmeTspecCtrl
1314
1315 DESCRIPTION
1316 Defines bits for CsrWifiSmeTspecCtrlMask for additional CCX configuration.
1317 CURRENTLY NOT SUPPORTED.
1318
1319 VALUES
1320 CSR_WIFI_SME_TSPEC_CTRL_STRICT
1321 - No automatic negotiation
1322 CSR_WIFI_SME_TSPEC_CTRL_CCX_SIGNALLING
1323 - Signalling TSPEC
1324 CSR_WIFI_SME_TSPEC_CTRL_CCX_VOICE
1325 - Voice traffic TSPEC
1326
1327*******************************************************************************/
7e6f5794 1328typedef u8 CsrWifiSmeTspecCtrl;
635d2b00
GKH
1329#define CSR_WIFI_SME_TSPEC_CTRL_STRICT ((CsrWifiSmeTspecCtrl) 0x01)
1330#define CSR_WIFI_SME_TSPEC_CTRL_CCX_SIGNALLING ((CsrWifiSmeTspecCtrl) 0x02)
1331#define CSR_WIFI_SME_TSPEC_CTRL_CCX_VOICE ((CsrWifiSmeTspecCtrl) 0x04)
1332
1333/*******************************************************************************
1334
1335 NAME
1336 CsrWifiSmeTspecResultCode
1337
1338 DESCRIPTION
1339 Defines the result of the TSPEC exchanges with the AP
1340
1341 VALUES
1342 CSR_WIFI_SME_TSPEC_RESULT_SUCCESS
1343 - TSPEC command has been processed correctly
1344 CSR_WIFI_SME_TSPEC_RESULT_UNSPECIFIED_QOS_FAILURE
1345 - The Access Point reported a failure
1346 CSR_WIFI_SME_TSPEC_RESULT_FAILURE
1347 - Internal failure in the SME
1348 CSR_WIFI_SME_TSPEC_RESULT_INVALID_TSPEC_PARAMETERS
1349 - The TSPEC parameters are invalid
1350 CSR_WIFI_SME_TSPEC_RESULT_INVALID_TCLAS_PARAMETERS
1351 - The TCLASS parameters are invalid
1352 CSR_WIFI_SME_TSPEC_RESULT_INSUFFICIENT_BANDWIDTH
1353 - As specified by the WMM Spec
1354 CSR_WIFI_SME_TSPEC_RESULT_WRONG_POLICY
1355 - As specified by the WMM Spec
1356 CSR_WIFI_SME_TSPEC_RESULT_REJECTED_WITH_SUGGESTED_CHANGES
1357 - As specified by the WMM Spec
1358 CSR_WIFI_SME_TSPEC_RESULT_TIMEOUT
1359 - The TSPEC negotiation timed out
1360 CSR_WIFI_SME_TSPEC_RESULT_NOT_SUPPORTED
1361 - The Access Point does not support the TSPEC
1362 CSR_WIFI_SME_TSPEC_RESULT_IE_LENGTH_INCORRECT
1363 - The length of the TSPEC is not correct
1364 CSR_WIFI_SME_TSPEC_RESULT_INVALID_TRANSACTION_ID
1365 - The TSPEC transaction id is not in the list
1366 CSR_WIFI_SME_TSPEC_RESULT_INSTALLED
1367 - The TSPEC has been installed and it is now active.
1368 CSR_WIFI_SME_TSPEC_RESULT_TID_ALREADY_INSTALLED
1369 - The Traffic ID has already been installed
1370 CSR_WIFI_SME_TSPEC_RESULT_TSPEC_REMOTELY_DELETED
1371 - The AP has deleted the TSPEC
1372
1373*******************************************************************************/
7e6f5794 1374typedef u8 CsrWifiSmeTspecResultCode;
635d2b00
GKH
1375#define CSR_WIFI_SME_TSPEC_RESULT_SUCCESS ((CsrWifiSmeTspecResultCode) 0x00)
1376#define CSR_WIFI_SME_TSPEC_RESULT_UNSPECIFIED_QOS_FAILURE ((CsrWifiSmeTspecResultCode) 0x01)
1377#define CSR_WIFI_SME_TSPEC_RESULT_FAILURE ((CsrWifiSmeTspecResultCode) 0x02)
1378#define CSR_WIFI_SME_TSPEC_RESULT_INVALID_TSPEC_PARAMETERS ((CsrWifiSmeTspecResultCode) 0x05)
1379#define CSR_WIFI_SME_TSPEC_RESULT_INVALID_TCLAS_PARAMETERS ((CsrWifiSmeTspecResultCode) 0x06)
1380#define CSR_WIFI_SME_TSPEC_RESULT_INSUFFICIENT_BANDWIDTH ((CsrWifiSmeTspecResultCode) 0x07)
1381#define CSR_WIFI_SME_TSPEC_RESULT_WRONG_POLICY ((CsrWifiSmeTspecResultCode) 0x08)
1382#define CSR_WIFI_SME_TSPEC_RESULT_REJECTED_WITH_SUGGESTED_CHANGES ((CsrWifiSmeTspecResultCode) 0x09)
1383#define CSR_WIFI_SME_TSPEC_RESULT_TIMEOUT ((CsrWifiSmeTspecResultCode) 0x0D)
1384#define CSR_WIFI_SME_TSPEC_RESULT_NOT_SUPPORTED ((CsrWifiSmeTspecResultCode) 0x0E)
1385#define CSR_WIFI_SME_TSPEC_RESULT_IE_LENGTH_INCORRECT ((CsrWifiSmeTspecResultCode) 0x10)
1386#define CSR_WIFI_SME_TSPEC_RESULT_INVALID_TRANSACTION_ID ((CsrWifiSmeTspecResultCode) 0x11)
1387#define CSR_WIFI_SME_TSPEC_RESULT_INSTALLED ((CsrWifiSmeTspecResultCode) 0x12)
1388#define CSR_WIFI_SME_TSPEC_RESULT_TID_ALREADY_INSTALLED ((CsrWifiSmeTspecResultCode) 0x13)
1389#define CSR_WIFI_SME_TSPEC_RESULT_TSPEC_REMOTELY_DELETED ((CsrWifiSmeTspecResultCode) 0x14)
1390
1391/*******************************************************************************
1392
1393 NAME
1394 CsrWifiSmeWepAuthMode
1395
1396 DESCRIPTION
1397 Define bits for CsrWifiSmeWepAuthMode
1398
1399 VALUES
1400 CSR_WIFI_SME_WEP_AUTH_MODE_OPEN - Open-WEP enabled network
1401 CSR_WIFI_SME_WEP_AUTH_MODE_SHARED - Shared-key WEP enabled network.
1402
1403*******************************************************************************/
7e6f5794 1404typedef u8 CsrWifiSmeWepAuthMode;
635d2b00
GKH
1405#define CSR_WIFI_SME_WEP_AUTH_MODE_OPEN ((CsrWifiSmeWepAuthMode) 0x00)
1406#define CSR_WIFI_SME_WEP_AUTH_MODE_SHARED ((CsrWifiSmeWepAuthMode) 0x01)
1407
1408/*******************************************************************************
1409
1410 NAME
1411 CsrWifiSmeWepCredentialType
1412
1413 DESCRIPTION
1414 Definition of types of WEP Credentials
1415
1416 VALUES
1417 CSR_WIFI_SME_CREDENTIAL_TYPE_WEP64
1418 - WEP 64 credential
1419 CSR_WIFI_SME_CREDENTIAL_TYPE_WEP128
1420 - WEP 128 credential
1421
1422*******************************************************************************/
7e6f5794 1423typedef u8 CsrWifiSmeWepCredentialType;
635d2b00
GKH
1424#define CSR_WIFI_SME_CREDENTIAL_TYPE_WEP64 ((CsrWifiSmeWepCredentialType) 0x00)
1425#define CSR_WIFI_SME_CREDENTIAL_TYPE_WEP128 ((CsrWifiSmeWepCredentialType) 0x01)
1426
1427/*******************************************************************************
1428
1429 NAME
1430 CsrWifiSmeWmmMode
1431
1432 DESCRIPTION
95edd09e 1433 Defines bits for CsrWifiSmeWmmModeMask: enable/disable WMM features.
635d2b00
GKH
1434
1435 VALUES
1436 CSR_WIFI_SME_WMM_MODE_DISABLED - Disables the WMM features.
1437 CSR_WIFI_SME_WMM_MODE_AC_ENABLED - Enables support for WMM-AC.
1438 CSR_WIFI_SME_WMM_MODE_PS_ENABLED - Enables support for WMM Power Save.
1439 CSR_WIFI_SME_WMM_MODE_SA_ENABLED - Currently not supported
1440 CSR_WIFI_SME_WMM_MODE_ENABLED - Enables support for all currently
1441 available WMM features.
1442
1443*******************************************************************************/
7e6f5794 1444typedef u8 CsrWifiSmeWmmMode;
635d2b00
GKH
1445#define CSR_WIFI_SME_WMM_MODE_DISABLED ((CsrWifiSmeWmmMode) 0x00)
1446#define CSR_WIFI_SME_WMM_MODE_AC_ENABLED ((CsrWifiSmeWmmMode) 0x01)
1447#define CSR_WIFI_SME_WMM_MODE_PS_ENABLED ((CsrWifiSmeWmmMode) 0x02)
1448#define CSR_WIFI_SME_WMM_MODE_SA_ENABLED ((CsrWifiSmeWmmMode) 0x04)
1449#define CSR_WIFI_SME_WMM_MODE_ENABLED ((CsrWifiSmeWmmMode) 0xFF)
1450
1451/*******************************************************************************
1452
1453 NAME
1454 CsrWifiSmeWmmQosInfo
1455
1456 DESCRIPTION
1457 Defines bits for the QoS Info Octect as defined in the WMM specification.
1458 The first four values define one bit each that can be set or cleared.
1459 Each of the last four values define all the remaining 4 bits and only one
1460 of them at the time shall be used.
1461 For more information, see 'WMM (including WMM Power Save) Specification -
1462 Version 1.1' and 'UniFi Configuring WMM and WMM-PS, Application Note'.
1463
1464 VALUES
1465 CSR_WIFI_SME_WMM_QOS_INFO_AC_MAX_SP_ALL
1466 - WMM AP may deliver all buffered frames
1467 CSR_WIFI_SME_WMM_QOS_INFO_AC_VO
1468 - Enable UAPSD(both trigger and delivery) for Voice Access
1469 Category
1470 CSR_WIFI_SME_WMM_QOS_INFO_AC_VI
1471 - Enable UAPSD(both trigger and delivery) for Video Access
1472 Category
1473 CSR_WIFI_SME_WMM_QOS_INFO_AC_BK
1474 - Enable UAPSD(both trigger and delivery) for Background
1475 Access Category
1476 CSR_WIFI_SME_WMM_QOS_INFO_AC_BE
1477 - Enable UAPSD(both trigger and delivery) for Best Effort
1478 Access Category
1479 CSR_WIFI_SME_WMM_QOS_INFO_AC_MAX_SP_TWO
1480 - WMM AP may deliver a maximum of 2 buffered frames (MSDUs
1481 and MMPDUs) per USP
1482 CSR_WIFI_SME_WMM_QOS_INFO_AC_MAX_SP_FOUR
1483 - WMM AP may deliver a maximum of 4 buffered frames (MSDUs
1484 and MMPDUs) per USP
1485 CSR_WIFI_SME_WMM_QOS_INFO_AC_MAX_SP_SIX
1486 - WMM AP may deliver a maximum of 6 buffered frames (MSDUs
1487 and MMPDUs) per USP
1488
1489*******************************************************************************/
7e6f5794 1490typedef u8 CsrWifiSmeWmmQosInfo;
635d2b00
GKH
1491#define CSR_WIFI_SME_WMM_QOS_INFO_AC_MAX_SP_ALL ((CsrWifiSmeWmmQosInfo) 0x00)
1492#define CSR_WIFI_SME_WMM_QOS_INFO_AC_VO ((CsrWifiSmeWmmQosInfo) 0x01)
1493#define CSR_WIFI_SME_WMM_QOS_INFO_AC_VI ((CsrWifiSmeWmmQosInfo) 0x02)
1494#define CSR_WIFI_SME_WMM_QOS_INFO_AC_BK ((CsrWifiSmeWmmQosInfo) 0x04)
1495#define CSR_WIFI_SME_WMM_QOS_INFO_AC_BE ((CsrWifiSmeWmmQosInfo) 0x08)
1496#define CSR_WIFI_SME_WMM_QOS_INFO_AC_MAX_SP_TWO ((CsrWifiSmeWmmQosInfo) 0x20)
1497#define CSR_WIFI_SME_WMM_QOS_INFO_AC_MAX_SP_FOUR ((CsrWifiSmeWmmQosInfo) 0x40)
1498#define CSR_WIFI_SME_WMM_QOS_INFO_AC_MAX_SP_SIX ((CsrWifiSmeWmmQosInfo) 0x60)
1499
1500/*******************************************************************************
1501
1502 NAME
1503 CsrWifiSmeWpsConfigType
1504
1505 DESCRIPTION
1506 WPS config methods supported/used by a device
1507
1508 VALUES
1509 CSR_WIFI_WPS_CONFIG_LABEL
1510 - Label
1511 CSR_WIFI_WPS_CONFIG_DISPLAY
1512 - Display
1513 CSR_WIFI_WPS_CONFIG_EXT_NFC
1514 - External NFC : Not supported in this release
1515 CSR_WIFI_WPS_CONFIG_INT_NFC
1516 - Internal NFC : Not supported in this release
1517 CSR_WIFI_WPS_CONFIG_NFC_IFACE
1518 - NFC interface : Not supported in this release
1519 CSR_WIFI_WPS_CONFIG_PBC
1520 - PBC
1521 CSR_WIFI_WPS_CONFIG_KEYPAD
1522 - KeyPad
1523 CSR_WIFI_WPS_CONFIG_VIRTUAL_PBC
1524 - PBC through software user interface
1525 CSR_WIFI_WPS_CONFIG_PHYSICAL_PBC
1526 - Physical PBC
1527 CSR_WIFI_WPS_CONFIG_VIRTUAL_DISPLAY
1528 - Virtual Display : via html config page etc
1529 CSR_WIFI_WPS_CONFIG_PHYSICAL_DISPLAY
1530 - Physical Display : Attached to the device
1531
1532*******************************************************************************/
8c87f69a 1533typedef u16 CsrWifiSmeWpsConfigType;
635d2b00
GKH
1534#define CSR_WIFI_WPS_CONFIG_LABEL ((CsrWifiSmeWpsConfigType) 0x0004)
1535#define CSR_WIFI_WPS_CONFIG_DISPLAY ((CsrWifiSmeWpsConfigType) 0x0008)
1536#define CSR_WIFI_WPS_CONFIG_EXT_NFC ((CsrWifiSmeWpsConfigType) 0x0010)
1537#define CSR_WIFI_WPS_CONFIG_INT_NFC ((CsrWifiSmeWpsConfigType) 0x0020)
1538#define CSR_WIFI_WPS_CONFIG_NFC_IFACE ((CsrWifiSmeWpsConfigType) 0x0040)
1539#define CSR_WIFI_WPS_CONFIG_PBC ((CsrWifiSmeWpsConfigType) 0x0080)
1540#define CSR_WIFI_WPS_CONFIG_KEYPAD ((CsrWifiSmeWpsConfigType) 0x0100)
1541#define CSR_WIFI_WPS_CONFIG_VIRTUAL_PBC ((CsrWifiSmeWpsConfigType) 0x0280)
1542#define CSR_WIFI_WPS_CONFIG_PHYSICAL_PBC ((CsrWifiSmeWpsConfigType) 0x0480)
1543#define CSR_WIFI_WPS_CONFIG_VIRTUAL_DISPLAY ((CsrWifiSmeWpsConfigType) 0x2008)
1544#define CSR_WIFI_WPS_CONFIG_PHYSICAL_DISPLAY ((CsrWifiSmeWpsConfigType) 0x4008)
1545
1546/*******************************************************************************
1547
1548 NAME
1549 CsrWifiSmeWpsDeviceCategory
1550
1551 DESCRIPTION
1552 Wps Primary Device Types
1553
1554 VALUES
1555 CSR_WIFI_SME_WPS_CATEGORY_UNSPECIFIED
1556 - Unspecified.
1557 CSR_WIFI_SME_WPS_CATEGORY_COMPUTER
1558 - Computer.
1559 CSR_WIFI_SME_WPS_CATEGORY_INPUT_DEV
1560 - Input device
1561 CSR_WIFI_SME_WPS_CATEGORY_PRT_SCAN_FX_CP
1562 - Printer Scanner Fax Copier etc
1563 CSR_WIFI_SME_WPS_CATEGORY_CAMERA
1564 - Camera
1565 CSR_WIFI_SME_WPS_CATEGORY_STORAGE
1566 - Storage
1567 CSR_WIFI_SME_WPS_CATEGORY_NET_INFRA
1568 - Net Infra
1569 CSR_WIFI_SME_WPS_CATEGORY_DISPLAY
1570 - Display
1571 CSR_WIFI_SME_WPS_CATEGORY_MULTIMEDIA
1572 - Multimedia
1573 CSR_WIFI_SME_WPS_CATEGORY_GAMING
1574 - Gaming.
1575 CSR_WIFI_SME_WPS_CATEGORY_TELEPHONE
1576 - Telephone.
1577 CSR_WIFI_SME_WPS_CATEGORY_AUDIO
1578 - Audio
1579 CSR_WIFI_SME_WPS_CATEOARY_OTHERS
1580 - Others.
1581
1582*******************************************************************************/
7e6f5794 1583typedef u8 CsrWifiSmeWpsDeviceCategory;
635d2b00
GKH
1584#define CSR_WIFI_SME_WPS_CATEGORY_UNSPECIFIED ((CsrWifiSmeWpsDeviceCategory) 0x00)
1585#define CSR_WIFI_SME_WPS_CATEGORY_COMPUTER ((CsrWifiSmeWpsDeviceCategory) 0x01)
1586#define CSR_WIFI_SME_WPS_CATEGORY_INPUT_DEV ((CsrWifiSmeWpsDeviceCategory) 0x02)
1587#define CSR_WIFI_SME_WPS_CATEGORY_PRT_SCAN_FX_CP ((CsrWifiSmeWpsDeviceCategory) 0x03)
1588#define CSR_WIFI_SME_WPS_CATEGORY_CAMERA ((CsrWifiSmeWpsDeviceCategory) 0x04)
1589#define CSR_WIFI_SME_WPS_CATEGORY_STORAGE ((CsrWifiSmeWpsDeviceCategory) 0x05)
1590#define CSR_WIFI_SME_WPS_CATEGORY_NET_INFRA ((CsrWifiSmeWpsDeviceCategory) 0x06)
1591#define CSR_WIFI_SME_WPS_CATEGORY_DISPLAY ((CsrWifiSmeWpsDeviceCategory) 0x07)
1592#define CSR_WIFI_SME_WPS_CATEGORY_MULTIMEDIA ((CsrWifiSmeWpsDeviceCategory) 0x08)
1593#define CSR_WIFI_SME_WPS_CATEGORY_GAMING ((CsrWifiSmeWpsDeviceCategory) 0x09)
1594#define CSR_WIFI_SME_WPS_CATEGORY_TELEPHONE ((CsrWifiSmeWpsDeviceCategory) 0x0A)
1595#define CSR_WIFI_SME_WPS_CATEGORY_AUDIO ((CsrWifiSmeWpsDeviceCategory) 0x0B)
1596#define CSR_WIFI_SME_WPS_CATEOARY_OTHERS ((CsrWifiSmeWpsDeviceCategory) 0xFF)
1597
1598/*******************************************************************************
1599
1600 NAME
1601 CsrWifiSmeWpsDeviceSubCategory
1602
1603 DESCRIPTION
1604 Wps Secondary Device Types
1605
1606 VALUES
1607 CSR_WIFI_SME_WPS_SUB_CATEGORY_UNSPECIFIED
1608 - Unspecied
1609 CSR_WIFI_SME_WPS_STORAGE_SUB_CATEGORY_NAS
1610 - Network Associated Storage
1611 CSR_WIFI_SME_WPS_PSFC_SUB_CATEGORY_PRNTR
1612 - Printer or print server
1613 CSR_WIFI_SME_WPS_TELEPHONE_SUB_CATEGORY_WM
1614 - Windows mobile
1615 CSR_WIFI_SME_WPS_AUDIO_SUB_CATEGORY_TUNER
1616 - Audio tuner/receiver
1617 CSR_WIFI_SME_WPS_CAMERA_SUB_CATEGORY_DIG_STL
1618 - Digital still camera
1619 CSR_WIFI_SME_WPS_NET_INFRA_SUB_CATEGORY_AP
1620 - Access Point
1621 CSR_WIFI_SME_WPS_DISPLAY_SUB_CATEGORY_TV
1622 - TV.
1623 CSR_WIFI_SME_WPS_MM_SUB_CATEGORY_DAR
1624 - DAR.
1625 CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_KEYBD
1626 - Keyboard.
1627 CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_PC
1628 - PC.
1629 CSR_WIFI_SME_WPS_GAMING_SUB_CATEGORY_XBOX
1630 - Xbox.
1631 CSR_WIFI_SME_WPS_PSFC_SUB_CATEGORY_SCNR
1632 - Scanner
1633 CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_SERVER
1634 - Server
1635 CSR_WIFI_SME_WPS_NET_INFRA_SUB_CATEGORY_ROUTER
1636 - Router
1637 CSR_WIFI_SME_WPS_MM_SUB_CATEGORY_PVR
1638 - PVR
1639 CSR_WIFI_SME_WPS_AUDIO_SUB_CATEGORY_SPEAKER
1640 - Speaker
1641 CSR_WIFI_SME_WPS_TELEPHONE_SUB_CATEGORY_FP_SM
1642 - Feature phone - Single mode
1643 CSR_WIFI_SME_WPS_CAMERA_SUB_CATEGORY_VIDEO
1644 - Video camera
1645 CSR_WIFI_SME_WPS_DISPLAY_SUB_CATEGORY_PIC_FRM
1646 - Picture frame
1647 CSR_WIFI_SME_WPS_GAMING_SUB_CATEGORY_XBOX_360
1648 - Xbox360
1649 CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_MOUSE
1650 - Mouse
1651 CSR_WIFI_SME_WPS_NET_INFRA_SUB_CATEGORY_SWITCH
1652 - Switch
1653 CSR_WIFI_SME_WPS_AUDIO_SUB_CATEGORY_PMP
1654 - Portable music player
1655 CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_JOYSTK
1656 - Joy stick
1657 CSR_WIFI_SME_WPS_GAMING_SUB_CATEGORY_PLAY_STN
1658 - Play-station
1659 CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_MED_CENT
1660 - Media Center
1661 CSR_WIFI_SME_WPS_MM_SUB_CATEGORY_MCX
1662 - MCX
1663 CSR_WIFI_SME_WPS_TELEPHONE_SUB_CATEGORY_FP_DM
1664 - Feature phone - Dual mode
1665 CSR_WIFI_SME_WPS_CAMERA_SUB_CATEGORY_WEB
1666 - Web camera
1667 CSR_WIFI_SME_WPS_PSFC_SUB_CATEGORY_FAX
1668 - Fax
1669 CSR_WIFI_SME_WPS_DISPLAY_SUB_CATEGORY_PROJECTOR
1670 - Projector
1671 CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_TRKBL
1672 - Track Ball
1673 CSR_WIFI_SME_WPS_MM_SUB_CATEGORY_ST_BOX
1674 - Set-Top-Box
1675 CSR_WIFI_SME_WPS_NET_INFRA_SUB_CATEGORY_GATEWAY
1676 - GateWay.
1677 CSR_WIFI_SME_WPS_CAMERA_SUB_CATEGORY_SECURITY
1678 - Security camera
1679 CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_ULTRA_MOB_PC
1680 - Ultra mobile PC.
1681 CSR_WIFI_SME_WPS_GAMING_SUB_CATEGORY_CONSOLE
1682 - Game console/Game console adapter
1683 CSR_WIFI_SME_WPS_PSFC_SUB_CATEGORY_CPR
1684 - Copier
1685 CSR_WIFI_SME_WPS_AUDIO_SUB_CATEGORY_HEADSET
1686 - Headset(headphones + microphone)
1687 CSR_WIFI_SME_WPS_TELEPHONE_SUB_CATEGORY_SP_SM
1688 - Smart phone - Single mode
1689 CSR_WIFI_SME_WPS_DISPLAY_SUB_CATEGORY_MONITOR
1690 - Monitor.
1691 CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_GAME_CTRL
1692 - Game control.
1693 CSR_WIFI_SME_WPS_PSFC_SUB_CATEGORY_ALL
1694 - All-in-One
1695 CSR_WIFI_SME_WPS_MM_SUB_CATEGORY_MEDIA
1696 - Media Server/Media Adapter/Media Extender
1697 CSR_WIFI_SME_WPS_TELEPHONE_SUB_CATEGORY_SP_DM
1698 - Smart phone - Dual mode
1699 CSR_WIFI_SME_WPS_GAMING_SUB_CATEGORY_PORT_DEV
1700 - Portable gaming device
1701 CSR_WIFI_SME_WPS_AUDIO_SUB_CATEGORY_HEADPHONE
1702 - Headphone.
1703 CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_NOTEBOOK
1704 - Notebook.
1705 CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_REMOTE
1706 - Remote control
1707 CSR_WIFI_SME_WPS_AUDIO_SUB_CATEGORY_MIC
1708 - Microphone
1709 CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_DESKTOP
1710 - Desktop.
1711 CSR_WIFI_SME_WPS_MM_SUB_CATEGORY_VP
1712 - Portable video player
1713 CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_MID
1714 - Mobile internet device
1715 CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_TOUCH_SCRN
1716 - Touch screen
1717 CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_BIOMET_RDR
1718 - Biometric reader
1719 CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_NETBOOK
1720 - Netbook
1721 CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_BRCD_RDR
1722 - Bar code reader.
1723
1724*******************************************************************************/
7e6f5794 1725typedef u8 CsrWifiSmeWpsDeviceSubCategory;
635d2b00
GKH
1726#define CSR_WIFI_SME_WPS_SUB_CATEGORY_UNSPECIFIED ((CsrWifiSmeWpsDeviceSubCategory) 0x00)
1727#define CSR_WIFI_SME_WPS_STORAGE_SUB_CATEGORY_NAS ((CsrWifiSmeWpsDeviceSubCategory) 0x01)
1728#define CSR_WIFI_SME_WPS_PSFC_SUB_CATEGORY_PRNTR ((CsrWifiSmeWpsDeviceSubCategory) 0x01)
1729#define CSR_WIFI_SME_WPS_TELEPHONE_SUB_CATEGORY_WM ((CsrWifiSmeWpsDeviceSubCategory) 0x01)
1730#define CSR_WIFI_SME_WPS_AUDIO_SUB_CATEGORY_TUNER ((CsrWifiSmeWpsDeviceSubCategory) 0x01)
1731#define CSR_WIFI_SME_WPS_CAMERA_SUB_CATEGORY_DIG_STL ((CsrWifiSmeWpsDeviceSubCategory) 0x01)
1732#define CSR_WIFI_SME_WPS_NET_INFRA_SUB_CATEGORY_AP ((CsrWifiSmeWpsDeviceSubCategory) 0x01)
1733#define CSR_WIFI_SME_WPS_DISPLAY_SUB_CATEGORY_TV ((CsrWifiSmeWpsDeviceSubCategory) 0x01)
1734#define CSR_WIFI_SME_WPS_MM_SUB_CATEGORY_DAR ((CsrWifiSmeWpsDeviceSubCategory) 0x01)
1735#define CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_KEYBD ((CsrWifiSmeWpsDeviceSubCategory) 0x01)
1736#define CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_PC ((CsrWifiSmeWpsDeviceSubCategory) 0x01)
1737#define CSR_WIFI_SME_WPS_GAMING_SUB_CATEGORY_XBOX ((CsrWifiSmeWpsDeviceSubCategory) 0x01)
1738#define CSR_WIFI_SME_WPS_PSFC_SUB_CATEGORY_SCNR ((CsrWifiSmeWpsDeviceSubCategory) 0x02)
1739#define CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_SERVER ((CsrWifiSmeWpsDeviceSubCategory) 0x02)
1740#define CSR_WIFI_SME_WPS_NET_INFRA_SUB_CATEGORY_ROUTER ((CsrWifiSmeWpsDeviceSubCategory) 0x02)
1741#define CSR_WIFI_SME_WPS_MM_SUB_CATEGORY_PVR ((CsrWifiSmeWpsDeviceSubCategory) 0x02)
1742#define CSR_WIFI_SME_WPS_AUDIO_SUB_CATEGORY_SPEAKER ((CsrWifiSmeWpsDeviceSubCategory) 0x02)
1743#define CSR_WIFI_SME_WPS_TELEPHONE_SUB_CATEGORY_FP_SM ((CsrWifiSmeWpsDeviceSubCategory) 0x02)
1744#define CSR_WIFI_SME_WPS_CAMERA_SUB_CATEGORY_VIDEO ((CsrWifiSmeWpsDeviceSubCategory) 0x02)
1745#define CSR_WIFI_SME_WPS_DISPLAY_SUB_CATEGORY_PIC_FRM ((CsrWifiSmeWpsDeviceSubCategory) 0x02)
1746#define CSR_WIFI_SME_WPS_GAMING_SUB_CATEGORY_XBOX_360 ((CsrWifiSmeWpsDeviceSubCategory) 0x02)
1747#define CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_MOUSE ((CsrWifiSmeWpsDeviceSubCategory) 0x02)
1748#define CSR_WIFI_SME_WPS_NET_INFRA_SUB_CATEGORY_SWITCH ((CsrWifiSmeWpsDeviceSubCategory) 0x03)
1749#define CSR_WIFI_SME_WPS_AUDIO_SUB_CATEGORY_PMP ((CsrWifiSmeWpsDeviceSubCategory) 0x03)
1750#define CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_JOYSTK ((CsrWifiSmeWpsDeviceSubCategory) 0x03)
1751#define CSR_WIFI_SME_WPS_GAMING_SUB_CATEGORY_PLAY_STN ((CsrWifiSmeWpsDeviceSubCategory) 0x03)
1752#define CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_MED_CENT ((CsrWifiSmeWpsDeviceSubCategory) 0x03)
1753#define CSR_WIFI_SME_WPS_MM_SUB_CATEGORY_MCX ((CsrWifiSmeWpsDeviceSubCategory) 0x03)
1754#define CSR_WIFI_SME_WPS_TELEPHONE_SUB_CATEGORY_FP_DM ((CsrWifiSmeWpsDeviceSubCategory) 0x03)
1755#define CSR_WIFI_SME_WPS_CAMERA_SUB_CATEGORY_WEB ((CsrWifiSmeWpsDeviceSubCategory) 0x03)
1756#define CSR_WIFI_SME_WPS_PSFC_SUB_CATEGORY_FAX ((CsrWifiSmeWpsDeviceSubCategory) 0x03)
1757#define CSR_WIFI_SME_WPS_DISPLAY_SUB_CATEGORY_PROJECTOR ((CsrWifiSmeWpsDeviceSubCategory) 0x03)
1758#define CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_TRKBL ((CsrWifiSmeWpsDeviceSubCategory) 0x04)
1759#define CSR_WIFI_SME_WPS_MM_SUB_CATEGORY_ST_BOX ((CsrWifiSmeWpsDeviceSubCategory) 0x04)
1760#define CSR_WIFI_SME_WPS_NET_INFRA_SUB_CATEGORY_GATEWAY ((CsrWifiSmeWpsDeviceSubCategory) 0x04)
1761#define CSR_WIFI_SME_WPS_CAMERA_SUB_CATEGORY_SECURITY ((CsrWifiSmeWpsDeviceSubCategory) 0x04)
1762#define CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_ULTRA_MOB_PC ((CsrWifiSmeWpsDeviceSubCategory) 0x04)
1763#define CSR_WIFI_SME_WPS_GAMING_SUB_CATEGORY_CONSOLE ((CsrWifiSmeWpsDeviceSubCategory) 0x04)
1764#define CSR_WIFI_SME_WPS_PSFC_SUB_CATEGORY_CPR ((CsrWifiSmeWpsDeviceSubCategory) 0x04)
1765#define CSR_WIFI_SME_WPS_AUDIO_SUB_CATEGORY_HEADSET ((CsrWifiSmeWpsDeviceSubCategory) 0x04)
1766#define CSR_WIFI_SME_WPS_TELEPHONE_SUB_CATEGORY_SP_SM ((CsrWifiSmeWpsDeviceSubCategory) 0x04)
1767#define CSR_WIFI_SME_WPS_DISPLAY_SUB_CATEGORY_MONITOR ((CsrWifiSmeWpsDeviceSubCategory) 0x04)
1768#define CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_GAME_CTRL ((CsrWifiSmeWpsDeviceSubCategory) 0x05)
1769#define CSR_WIFI_SME_WPS_PSFC_SUB_CATEGORY_ALL ((CsrWifiSmeWpsDeviceSubCategory) 0x05)
1770#define CSR_WIFI_SME_WPS_MM_SUB_CATEGORY_MEDIA ((CsrWifiSmeWpsDeviceSubCategory) 0x05)
1771#define CSR_WIFI_SME_WPS_TELEPHONE_SUB_CATEGORY_SP_DM ((CsrWifiSmeWpsDeviceSubCategory) 0x05)
1772#define CSR_WIFI_SME_WPS_GAMING_SUB_CATEGORY_PORT_DEV ((CsrWifiSmeWpsDeviceSubCategory) 0x05)
1773#define CSR_WIFI_SME_WPS_AUDIO_SUB_CATEGORY_HEADPHONE ((CsrWifiSmeWpsDeviceSubCategory) 0x05)
1774#define CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_NOTEBOOK ((CsrWifiSmeWpsDeviceSubCategory) 0x05)
1775#define CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_REMOTE ((CsrWifiSmeWpsDeviceSubCategory) 0x06)
1776#define CSR_WIFI_SME_WPS_AUDIO_SUB_CATEGORY_MIC ((CsrWifiSmeWpsDeviceSubCategory) 0x06)
1777#define CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_DESKTOP ((CsrWifiSmeWpsDeviceSubCategory) 0x06)
1778#define CSR_WIFI_SME_WPS_MM_SUB_CATEGORY_VP ((CsrWifiSmeWpsDeviceSubCategory) 0x06)
1779#define CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_MID ((CsrWifiSmeWpsDeviceSubCategory) 0x07)
1780#define CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_TOUCH_SCRN ((CsrWifiSmeWpsDeviceSubCategory) 0x07)
1781#define CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_BIOMET_RDR ((CsrWifiSmeWpsDeviceSubCategory) 0x08)
1782#define CSR_WIFI_SME_WPS_COMPUTER_SUB_CATEGORY_NETBOOK ((CsrWifiSmeWpsDeviceSubCategory) 0x08)
1783#define CSR_WIFI_SME_WPS_INPUT_DEV_SUB_CATEGORY_BRCD_RDR ((CsrWifiSmeWpsDeviceSubCategory) 0x09)
1784
1785/*******************************************************************************
1786
1787 NAME
1788 CsrWifiSmeWpsDpid
1789
1790 DESCRIPTION
1791 Device Password ID for the chosen config method
1792
1793 VALUES
1794 CSR_WIFI_SME_WPS_DPID_PIN - PIN
1795 CSR_WIFI_SME_WPS_DPID_USER - User specified : Used only during P2P GO
1796 negotiation procedure
1797 CSR_WIFI_SME_WPS_DPID_MACHINE - Machine specified i: Not used in this
1798 release
1799 CSR_WIFI_SME_WPS_DPID_REKEY - Rekey : Not used in this release
1800 CSR_WIFI_SME_WPS_DPID_PBC - PBC
1801 CSR_WIFI_SME_WPS_DPID_REGISTRAR - Registrar specified : Used only in P2P Go
1802 negotiation procedure
1803
1804*******************************************************************************/
8c87f69a 1805typedef u16 CsrWifiSmeWpsDpid;
635d2b00
GKH
1806#define CSR_WIFI_SME_WPS_DPID_PIN ((CsrWifiSmeWpsDpid) 0x0000)
1807#define CSR_WIFI_SME_WPS_DPID_USER ((CsrWifiSmeWpsDpid) 0x0001)
1808#define CSR_WIFI_SME_WPS_DPID_MACHINE ((CsrWifiSmeWpsDpid) 0x0002)
1809#define CSR_WIFI_SME_WPS_DPID_REKEY ((CsrWifiSmeWpsDpid) 0x0003)
1810#define CSR_WIFI_SME_WPS_DPID_PBC ((CsrWifiSmeWpsDpid) 0x0004)
1811#define CSR_WIFI_SME_WPS_DPID_REGISTRAR ((CsrWifiSmeWpsDpid) 0x0005)
1812
1813/*******************************************************************************
1814
1815 NAME
1816 CsrWifiSmeWpsRegistration
1817
1818 DESCRIPTION
1819
1820 VALUES
1821 CSR_WIFI_SME_WPS_REG_NOT_REQUIRED - No encryption set
1822 CSR_WIFI_SME_WPS_REG_REQUIRED - No encryption set
1823 CSR_WIFI_SME_WPS_REG_UNKNOWN - No encryption set
1824
1825*******************************************************************************/
7e6f5794 1826typedef u8 CsrWifiSmeWpsRegistration;
635d2b00
GKH
1827#define CSR_WIFI_SME_WPS_REG_NOT_REQUIRED ((CsrWifiSmeWpsRegistration) 0x00)
1828#define CSR_WIFI_SME_WPS_REG_REQUIRED ((CsrWifiSmeWpsRegistration) 0x01)
1829#define CSR_WIFI_SME_WPS_REG_UNKNOWN ((CsrWifiSmeWpsRegistration) 0x02)
1830
1831
1832/*******************************************************************************
1833
1834 NAME
1835 CsrWifiSmeAuthModeMask
1836
1837 DESCRIPTION
1838 Mask type for use with the values defined by CsrWifiSmeAuthMode
1839
1840*******************************************************************************/
8c87f69a 1841typedef u16 CsrWifiSmeAuthModeMask;
635d2b00
GKH
1842/*******************************************************************************
1843
1844 NAME
1845 CsrWifiSmeEncryptionMask
1846
1847 DESCRIPTION
1848 Mask type for use with the values defined by CsrWifiSmeEncryption
1849
1850*******************************************************************************/
8c87f69a 1851typedef u16 CsrWifiSmeEncryptionMask;
635d2b00
GKH
1852/*******************************************************************************
1853
1854 NAME
1855 CsrWifiSmeIndicationsMask
1856
1857 DESCRIPTION
1858 Mask type for use with the values defined by CsrWifiSmeIndications
1859
1860*******************************************************************************/
26a6b2e1 1861typedef u32 CsrWifiSmeIndicationsMask;
635d2b00
GKH
1862/*******************************************************************************
1863
1864 NAME
1865 CsrWifiSmeP2pCapabilityMask
1866
1867 DESCRIPTION
1868 Mask type for use with the values defined by CsrWifiSmeP2pCapability
1869
1870*******************************************************************************/
7e6f5794 1871typedef u8 CsrWifiSmeP2pCapabilityMask;
635d2b00
GKH
1872/*******************************************************************************
1873
1874 NAME
1875 CsrWifiSmeP2pGroupCapabilityMask
1876
1877 DESCRIPTION
1878 Mask type for use with the values defined by CsrWifiSmeP2pGroupCapability
1879
1880*******************************************************************************/
7e6f5794 1881typedef u8 CsrWifiSmeP2pGroupCapabilityMask;
635d2b00
GKH
1882/*******************************************************************************
1883
1884 NAME
1885 CsrWifiSmeTspecCtrlMask
1886
1887 DESCRIPTION
1888 Mask type for use with the values defined by CsrWifiSmeTspecCtrl
1889
1890*******************************************************************************/
7e6f5794 1891typedef u8 CsrWifiSmeTspecCtrlMask;
635d2b00
GKH
1892/*******************************************************************************
1893
1894 NAME
1895 CsrWifiSmeWmmModeMask
1896
1897 DESCRIPTION
1898 Mask type for use with the values defined by CsrWifiSmeWmmMode
1899
1900*******************************************************************************/
7e6f5794 1901typedef u8 CsrWifiSmeWmmModeMask;
635d2b00
GKH
1902/*******************************************************************************
1903
1904 NAME
1905 CsrWifiSmeWmmQosInfoMask
1906
1907 DESCRIPTION
1908 Mask type for use with the values defined by CsrWifiSmeWmmQosInfo
1909
1910*******************************************************************************/
7e6f5794 1911typedef u8 CsrWifiSmeWmmQosInfoMask;
635d2b00
GKH
1912/*******************************************************************************
1913
1914 NAME
1915 CsrWifiSmeWpsConfigTypeMask
1916
1917 DESCRIPTION
1918 Mask type for use with the values defined by CsrWifiSmeWpsConfigType
1919
1920*******************************************************************************/
8c87f69a 1921typedef u16 CsrWifiSmeWpsConfigTypeMask;
635d2b00
GKH
1922
1923
1924/*******************************************************************************
1925
1926 NAME
1927 CsrWifiSmeAdHocConfig
1928
1929 DESCRIPTION
1930 Defines values to use when starting an Ad-hoc (IBSS) network.
1931
1932 MEMBERS
1933 atimWindowTu - ATIM window specified for IBSS
1934 beaconPeriodTu - Interval between beacon packets
1935 joinOnlyAttempts - Maximum number of attempts to join an ad-hoc network.
1936 The default value is 1.
1937 Set to 0 for infinite attempts.
1938 joinAttemptIntervalMs - Time between scans for joining the requested IBSS.
1939
1940*******************************************************************************/
1941typedef struct
1942{
8c87f69a
GKH
1943 u16 atimWindowTu;
1944 u16 beaconPeriodTu;
1945 u16 joinOnlyAttempts;
1946 u16 joinAttemptIntervalMs;
635d2b00
GKH
1947} CsrWifiSmeAdHocConfig;
1948
1949/*******************************************************************************
1950
1951 NAME
1952 CsrWifiSmeAvailabilityConfig
1953
1954 DESCRIPTION
1955
1956 MEMBERS
1957 listenChannel -
1958 availabilityDuration -
1959 avalabilityPeriod -
1960
1961*******************************************************************************/
1962typedef struct
1963{
7e6f5794 1964 u8 listenChannel;
8c87f69a
GKH
1965 u16 availabilityDuration;
1966 u16 avalabilityPeriod;
635d2b00
GKH
1967} CsrWifiSmeAvailabilityConfig;
1968
1969/*******************************************************************************
1970
1971 NAME
1972 CsrWifiSmeCcxConfig
1973
1974 DESCRIPTION
1975 This type is reserved for future use and should not be used.
1976
1977 MEMBERS
1978 keepAliveTimeMs - NOT USED
1979 apRoamingEnabled - NOT USED
1980 measurementsMask - NOT USED
1981 ccxRadioMgtEnabled - NOT USED
1982
1983*******************************************************************************/
1984typedef struct
1985{
7e6f5794 1986 u8 keepAliveTimeMs;
5379b13d 1987 u8 apRoamingEnabled;
7e6f5794 1988 u8 measurementsMask;
5379b13d 1989 u8 ccxRadioMgtEnabled;
635d2b00
GKH
1990} CsrWifiSmeCcxConfig;
1991
1992/*******************************************************************************
1993
1994 NAME
1995 CsrWifiSmeCoexConfig
1996
1997 DESCRIPTION
1998 Parameters for the coexistence behaviour.
1999
2000 MEMBERS
2001 coexEnableSchemeManagement - Enables the Coexistence Management Scheme
2002 coexPeriodicWakeHost - If TRUE the firmware wakes up the host
2003 periodically according to the traffic
2004 period and latency parameters; the host
2005 will then send the data to transmit only
2006 when woken up.
2007 If FALSE, the firmware does not wake up the
2008 host and the host will send the data to
2009 transmit to the firmware whenever there is
2010 data to transmit
2011 coexTrafficBurstyLatencyMs - Period of awakening for the firmware used
2012 when bursty traffic is detected
2013 coexTrafficContinuousLatencyMs - Period of awakening for the firmware used
2014 when continuous traffic is detected
2015 coexObexBlackoutDurationMs - Blackout Duration when a Obex Connection is
2016 used
2017 coexObexBlackoutPeriodMs - Blackout Period when a Obex Connection is
2018 used
2019 coexA2dpBrBlackoutDurationMs - Blackout Duration when a Basic Rate A2DP
2020 Connection streaming data
2021 coexA2dpBrBlackoutPeriodMs - Blackout Period when a Basic Rate A2DP
2022 Connection streaming data
2023 coexA2dpEdrBlackoutDurationMs - Blackout Duration when an Enhanced Data
2024 Rate A2DP Connection streaming data
2025 coexA2dpEdrBlackoutPeriodMs - Blackout Period when an Enhanced Data Rate
2026 A2DP Connection streaming data
2027 coexPagingBlackoutDurationMs - Blackout Duration when a BT page is active
2028 coexPagingBlackoutPeriodMs - Blackout Period when a BT page is active
2029 coexInquiryBlackoutDurationMs - Blackout Duration when a BT inquiry is
2030 active
2031 coexInquiryBlackoutPeriodMs - Blackout Period when a BT inquiry is active
2032
2033*******************************************************************************/
2034typedef struct
2035{
5379b13d
GKH
2036 u8 coexEnableSchemeManagement;
2037 u8 coexPeriodicWakeHost;
8c87f69a
GKH
2038 u16 coexTrafficBurstyLatencyMs;
2039 u16 coexTrafficContinuousLatencyMs;
2040 u16 coexObexBlackoutDurationMs;
2041 u16 coexObexBlackoutPeriodMs;
2042 u16 coexA2dpBrBlackoutDurationMs;
2043 u16 coexA2dpBrBlackoutPeriodMs;
2044 u16 coexA2dpEdrBlackoutDurationMs;
2045 u16 coexA2dpEdrBlackoutPeriodMs;
2046 u16 coexPagingBlackoutDurationMs;
2047 u16 coexPagingBlackoutPeriodMs;
2048 u16 coexInquiryBlackoutDurationMs;
2049 u16 coexInquiryBlackoutPeriodMs;
635d2b00
GKH
2050} CsrWifiSmeCoexConfig;
2051
2052/*******************************************************************************
2053
2054 NAME
2055 CsrWifiSmeConnectionStats
2056
2057 DESCRIPTION
2058 Indicates the statistics of the connection.
2059 The dot11 fields are defined in the Annex D of the IEEE 802.11 standard.
2060
2061 MEMBERS
2062 unifiTxDataRate
2063 - The bit rate currently in use for transmissions of unicast
2064 data frames; a data rate in units of 500kbit/s.
2065 On an infrastructure BSS, this is the data rate used in
2066 communicating with the associated access point; if there is
2067 none, an error is returned.
2068 On an IBSS, this is the data rate used for the last
2069 transmission of a unicast data frame to any station in the
2070 IBSS. If no such transmission has been made, an error is
2071 returned.
2072 unifiRxDataRate
2073 - As above for receiving data
2074 dot11RetryCount
2075 - See IEEE 802.11 Standard
2076 dot11MultipleRetryCount
2077 - See IEEE 802.11 Standard
2078 dot11AckFailureCount
2079 - See IEEE 802.11 Standard
2080 dot11FrameDuplicateCount
2081 - See IEEE 802.11 Standard
2082 dot11FcsErrorCount
2083 - See IEEE 802.11 Standard
2084 dot11RtsSuccessCount
2085 - See IEEE 802.11 Standard
2086 dot11RtsFailureCount
2087 - See IEEE 802.11 Standard
2088 dot11FailedCount
2089 - See IEEE 802.11 Standard
2090 dot11TransmittedFragmentCount
2091 - See IEEE 802.11 Standard
2092 dot11TransmittedFrameCount
2093 - See IEEE 802.11 Standard
2094 dot11WepExcludedCount
2095 - See IEEE 802.11 Standard
2096 dot11WepIcvErrorCount
2097 - See IEEE 802.11 Standard
2098 dot11WepUndecryptableCount
2099 - See IEEE 802.11 Standard
2100 dot11MulticastReceivedFrameCount
2101 - See IEEE 802.11 Standard
2102 dot11MulticastTransmittedFrameCount
2103 - See IEEE 802.11 Standard
2104 dot11ReceivedFragmentCount
2105 - See IEEE 802.11 Standard
2106 dot11Rsna4WayHandshakeFailures
2107 - See IEEE 802.11 Standard
2108 dot11RsnaTkipCounterMeasuresInvoked
2109 - See IEEE 802.11 Standard
2110 dot11RsnaStatsTkipLocalMicFailures
2111 - See IEEE 802.11 Standard
2112 dot11RsnaStatsTkipReplays
2113 - See IEEE 802.11 Standard
2114 dot11RsnaStatsTkipIcvErrors
2115 - See IEEE 802.11 Standard
2116 dot11RsnaStatsCcmpReplays
2117 - See IEEE 802.11 Standard
2118 dot11RsnaStatsCcmpDecryptErrors
2119 - See IEEE 802.11 Standard
2120
2121*******************************************************************************/
2122typedef struct
2123{
7e6f5794
GKH
2124 u8 unifiTxDataRate;
2125 u8 unifiRxDataRate;
26a6b2e1
GKH
2126 u32 dot11RetryCount;
2127 u32 dot11MultipleRetryCount;
2128 u32 dot11AckFailureCount;
2129 u32 dot11FrameDuplicateCount;
2130 u32 dot11FcsErrorCount;
2131 u32 dot11RtsSuccessCount;
2132 u32 dot11RtsFailureCount;
2133 u32 dot11FailedCount;
2134 u32 dot11TransmittedFragmentCount;
2135 u32 dot11TransmittedFrameCount;
2136 u32 dot11WepExcludedCount;
2137 u32 dot11WepIcvErrorCount;
2138 u32 dot11WepUndecryptableCount;
2139 u32 dot11MulticastReceivedFrameCount;
2140 u32 dot11MulticastTransmittedFrameCount;
2141 u32 dot11ReceivedFragmentCount;
2142 u32 dot11Rsna4WayHandshakeFailures;
2143 u32 dot11RsnaTkipCounterMeasuresInvoked;
2144 u32 dot11RsnaStatsTkipLocalMicFailures;
2145 u32 dot11RsnaStatsTkipReplays;
2146 u32 dot11RsnaStatsTkipIcvErrors;
2147 u32 dot11RsnaStatsCcmpReplays;
2148 u32 dot11RsnaStatsCcmpDecryptErrors;
635d2b00
GKH
2149} CsrWifiSmeConnectionStats;
2150
2151/*******************************************************************************
2152
2153 NAME
2154 CsrWifiSmeDataBlock
2155
2156 DESCRIPTION
2157 Holds a generic data block to be passed through the interface
2158
2159 MEMBERS
2160 length - Length of the data block
2161 data - Points to the first byte of the data block
2162
2163*******************************************************************************/
2164typedef struct
2165{
8c87f69a 2166 u16 length;
7e6f5794 2167 u8 *data;
635d2b00
GKH
2168} CsrWifiSmeDataBlock;
2169
2170/*******************************************************************************
2171
2172 NAME
2173 CsrWifiSmeEmpty
2174
2175 DESCRIPTION
2176 Empty Structure to indicate that no parameters are available.
2177
2178 MEMBERS
2179 empty - Only element of the empty structure (always set to 0).
2180
2181*******************************************************************************/
2182typedef struct
2183{
7e6f5794 2184 u8 empty;
635d2b00
GKH
2185} CsrWifiSmeEmpty;
2186
2187/*******************************************************************************
2188
2189 NAME
2190 CsrWifiSmeLinkQuality
2191
2192 DESCRIPTION
2193 Indicates the quality of the link
2194
2195 MEMBERS
2196 unifiRssi - Indicates the received signal strength indication of the link in
2197 dBm
2198 unifiSnr - Indicates the signal to noise ratio of the link in dB
2199
2200*******************************************************************************/
2201typedef struct
2202{
ab2b8c73
GKH
2203 s16 unifiRssi;
2204 s16 unifiSnr;
635d2b00
GKH
2205} CsrWifiSmeLinkQuality;
2206
2207/*******************************************************************************
2208
2209 NAME
2210 CsrWifiSmeMibConfig
2211
2212 DESCRIPTION
2213 Allows low level configuration in the chip.
2214
2215 MEMBERS
2216 unifiFixMaxTxDataRate - This attribute is used in combination with
2217 unifiFixTxDataRate. If it is FALSE, then
2218 unifiFixTxDataRate specifies a specific data
2219 rate to use. If it is TRUE, unifiFixTxDataRate
2220 instead specifies a maximum data rate.
2221 unifiFixTxDataRate - Transmit rate for unicast data.
2222 See MIB description for more details
2223 dot11RtsThreshold - See IEEE 802.11 Standard
2224 dot11FragmentationThreshold - See IEEE 802.11 Standard
2225 dot11CurrentTxPowerLevel - See IEEE 802.11 Standard
2226
2227*******************************************************************************/
2228typedef struct
2229{
5379b13d 2230 u8 unifiFixMaxTxDataRate;
7e6f5794 2231 u8 unifiFixTxDataRate;
8c87f69a
GKH
2232 u16 dot11RtsThreshold;
2233 u16 dot11FragmentationThreshold;
2234 u16 dot11CurrentTxPowerLevel;
635d2b00
GKH
2235} CsrWifiSmeMibConfig;
2236
2237/*******************************************************************************
2238
2239 NAME
2240 CsrWifiSmeP2pProfileIdentity
2241
2242 DESCRIPTION
2243 Details to be filled in
2244
2245 MEMBERS
2246 listenChannel -
2247 availabilityDuration -
2248 avalabilityPeriod -
2249
2250*******************************************************************************/
2251typedef struct
2252{
7e6f5794 2253 u8 listenChannel;
8c87f69a
GKH
2254 u16 availabilityDuration;
2255 u16 avalabilityPeriod;
635d2b00
GKH
2256} CsrWifiSmeP2pProfileIdentity;
2257
2258/*******************************************************************************
2259
2260 NAME
2261 CsrWifiSmePmkid
2262
2263 DESCRIPTION
2264 Defines a PMKID association with BSS
2265
2266 MEMBERS
2267 bssid - BSS identifier
2268 pmkid - PMKID
2269
2270*******************************************************************************/
2271typedef struct
2272{
2273 CsrWifiMacAddress bssid;
7e6f5794 2274 u8 pmkid[16];
635d2b00
GKH
2275} CsrWifiSmePmkid;
2276
2277/*******************************************************************************
2278
2279 NAME
2280 CsrWifiSmePmkidCandidate
2281
2282 DESCRIPTION
2283 Information for a PMKID candidate
2284
2285 MEMBERS
2286 bssid - BSS identifier
2287 preAuthAllowed - Indicates whether preauthentication is allowed
2288
2289*******************************************************************************/
2290typedef struct
2291{
2292 CsrWifiMacAddress bssid;
5379b13d 2293 u8 preAuthAllowed;
635d2b00
GKH
2294} CsrWifiSmePmkidCandidate;
2295
2296/*******************************************************************************
2297
2298 NAME
2299 CsrWifiSmePmkidList
2300
2301 DESCRIPTION
2302 NOT USED
2303 Used in the Sync access API
2304
2305 MEMBERS
2306 pmkidsCount - Number of PMKIDs in the list
2307 pmkids - Points to the first PMKID in the list
2308
2309*******************************************************************************/
2310typedef struct
2311{
7e6f5794 2312 u8 pmkidsCount;
635d2b00
GKH
2313 CsrWifiSmePmkid *pmkids;
2314} CsrWifiSmePmkidList;
2315
2316/*******************************************************************************
2317
2318 NAME
2319 CsrWifiSmeRegulatoryDomainInfo
2320
2321 DESCRIPTION
2322 Regulatory domain options.
2323
2324 MEMBERS
2325 dot11MultiDomainCapabilityImplemented
2326 - TRUE is the multi domain capability is implemented
2327 dot11MultiDomainCapabilityEnabled
2328 - TRUE is the multi domain capability is enabled
2329 currentRegulatoryDomain
2330 - Current regulatory domain
2331 currentCountryCode
2332 - Current country code as defined by the IEEE 802.11
2333 standards
2334
2335*******************************************************************************/
2336typedef struct
2337{
5379b13d
GKH
2338 u8 dot11MultiDomainCapabilityImplemented;
2339 u8 dot11MultiDomainCapabilityEnabled;
635d2b00 2340 CsrWifiSmeRegulatoryDomain currentRegulatoryDomain;
7e6f5794 2341 u8 currentCountryCode[2];
635d2b00
GKH
2342} CsrWifiSmeRegulatoryDomainInfo;
2343
2344/*******************************************************************************
2345
2346 NAME
2347 CsrWifiSmeRoamingBandData
2348
2349 DESCRIPTION
2350 Thresholds to define one usability level category for the received signal
2351
2352 MEMBERS
2353 rssiHighThreshold - Received Signal Strength Indication upper bound in dBm
2354 for the usability level
2355 rssiLowThreshold - Received Signal Strength Indication lower bound in dBm
2356 for the usability level
2357 snrHighThreshold - Signal to Noise Ratio upper bound in dB for the
2358 usability level
2359 snrLowThreshold - Signal to Noise Ratio lower bound in dB for the
2360 usability level
2361
2362*******************************************************************************/
2363typedef struct
2364{
ab2b8c73
GKH
2365 s16 rssiHighThreshold;
2366 s16 rssiLowThreshold;
2367 s16 snrHighThreshold;
2368 s16 snrLowThreshold;
635d2b00
GKH
2369} CsrWifiSmeRoamingBandData;
2370
2371/*******************************************************************************
2372
2373 NAME
2374 CsrWifiSmeScanConfigData
2375
2376 DESCRIPTION
2377 Configures the scanning behaviour of the driver and firmware
2378
2379 MEMBERS
2380 intervalSeconds - All the channels will be scanned once in this time
2381 interval.
2382 If connected, the channel scans are spread across
2383 the interval.
2384 If disconnected, all the channels will be scanned
2385 together
2386 validitySeconds - How long the scan result are cached
2387 minActiveChannelTimeTu - Minimum time of listening on a channel being
2388 actively scanned before leaving if no probe
2389 responses or beacon frames have been received
2390 maxActiveChannelTimeTu - Maximum time of listening on a channel being
2391 actively scanned
2392 minPassiveChannelTimeTu - Minimum time of listening on a channel being
2393 passive scanned before leaving if no beacon frames
2394 have been received
2395 maxPassiveChannelTimeTu - Maximum time of listening on a channel being
2396 passively scanned
2397
2398*******************************************************************************/
2399typedef struct
2400{
8c87f69a
GKH
2401 u16 intervalSeconds;
2402 u16 validitySeconds;
2403 u16 minActiveChannelTimeTu;
2404 u16 maxActiveChannelTimeTu;
2405 u16 minPassiveChannelTimeTu;
2406 u16 maxPassiveChannelTimeTu;
635d2b00
GKH
2407} CsrWifiSmeScanConfigData;
2408
635d2b00
GKH
2409/*******************************************************************************
2410
2411 NAME
2412 CsrWifiSmeTsfTime
2413
2414 DESCRIPTION
2415 Time stamp representation
2416
2417 MEMBERS
2418 data - TSF Bytes
2419
2420*******************************************************************************/
2421typedef struct
2422{
7e6f5794 2423 u8 data[8];
635d2b00
GKH
2424} CsrWifiSmeTsfTime;
2425
2426/*******************************************************************************
2427
2428 NAME
2429 CsrWifiSmeVersions
2430
2431 DESCRIPTION
2432 Reports version information for the chip, the firmware and the driver and
2433 the SME.
2434
2435 MEMBERS
2436 chipId - Chip ID
2437 chipVersion - Chip version ID
2438 firmwareBuild - Firmware Rom build number
2439 firmwarePatch - Firmware Patch build number (if applicable)
2440 firmwareHip - Firmware HIP protocol version number
2441 routerBuild - Router build number
2442 routerHip - Router HIP protocol version number
2443 smeBuild - SME build number
2444 smeHip - SME HIP protocol version number
2445
2446*******************************************************************************/
2447typedef struct
2448{
26a6b2e1
GKH
2449 u32 chipId;
2450 u32 chipVersion;
2451 u32 firmwareBuild;
2452 u32 firmwarePatch;
2453 u32 firmwareHip;
c781b96b 2454 char *routerBuild;
26a6b2e1 2455 u32 routerHip;
c781b96b 2456 char *smeBuild;
26a6b2e1 2457 u32 smeHip;
635d2b00
GKH
2458} CsrWifiSmeVersions;
2459
2460/*******************************************************************************
2461
2462 NAME
2463 CsrWifiSmeWmmAcParams
2464
2465 DESCRIPTION
2466 Structure holding WMM AC params data.
2467
2468 MEMBERS
2469 cwMin - Exponent for the calculation of CWmin. Range: 0
2470 to 15
2471 cwMax - Exponent for the calculation of CWmax. Range: 0
2472 to15
2473 aifs - Arbitration Inter Frame Spacing in terms of
2474 number of timeslots. Range 2 to 15
2475 txopLimit - TXOP Limit in the units of 32 microseconds
2476 admissionControlMandatory - Indicates whether the admission control is
2477 mandatory or not. Current release does not
2478 support admission control , hence shall be set
2479 to FALSE.
2480
2481*******************************************************************************/
2482typedef struct
2483{
7e6f5794
GKH
2484 u8 cwMin;
2485 u8 cwMax;
2486 u8 aifs;
8c87f69a 2487 u16 txopLimit;
5379b13d 2488 u8 admissionControlMandatory;
635d2b00
GKH
2489} CsrWifiSmeWmmAcParams;
2490
2491/*******************************************************************************
2492
2493 NAME
2494 CsrWifiSmeWpsDeviceType
2495
2496 DESCRIPTION
2497 Structure holding AP WPS device type data.
2498
2499 MEMBERS
2500 deviceDetails - category , sub category etc
2501
2502*******************************************************************************/
2503typedef struct
2504{
7e6f5794 2505 u8 deviceDetails[8];
635d2b00
GKH
2506} CsrWifiSmeWpsDeviceType;
2507
2508/*******************************************************************************
2509
2510 NAME
2511 CsrWifiSmeWpsDeviceTypeCommon
2512
2513 DESCRIPTION
2514
2515 MEMBERS
2516 spportWps -
2517 deviceType -
2518
2519*******************************************************************************/
2520typedef struct
2521{
5379b13d 2522 u8 spportWps;
7e6f5794 2523 u8 deviceType;
635d2b00
GKH
2524} CsrWifiSmeWpsDeviceTypeCommon;
2525
2526/*******************************************************************************
2527
2528 NAME
2529 CsrWifiSmeWpsInfo
2530
2531 DESCRIPTION
2532
2533 MEMBERS
2534 version -
2535 configMethods -
2536 devicePassworId -
2537
2538*******************************************************************************/
2539typedef struct
2540{
8c87f69a
GKH
2541 u16 version;
2542 u16 configMethods;
2543 u16 devicePassworId;
635d2b00
GKH
2544} CsrWifiSmeWpsInfo;
2545
2546/*******************************************************************************
2547
2548 NAME
2549 CsrWifiSmeCloakedSsidConfig
2550
2551 DESCRIPTION
2552 List of cloaked SSIDs .
2553
2554 MEMBERS
2555 cloakedSsidsCount - Number of cloaked SSID
2556 cloakedSsids - Points to the first byte of the first SSID provided
2557
2558*******************************************************************************/
2559typedef struct
2560{
7e6f5794 2561 u8 cloakedSsidsCount;
635d2b00
GKH
2562 CsrWifiSsid *cloakedSsids;
2563} CsrWifiSmeCloakedSsidConfig;
2564
2565/*******************************************************************************
2566
2567 NAME
2568 CsrWifiSmeCoexInfo
2569
2570 DESCRIPTION
2571 Information and state related to coexistence.
2572
2573 MEMBERS
2574 hasTrafficData - TRUE if any Wi-Fi traffic is detected
2575 currentTrafficType - Current type of traffic
2576 currentPeriodMs - Period of the traffic as detected by the traffic
2577 analysis.
2578 If the traffic is not periodic, it is set to 0.
2579 currentPowerSave - Current power save level
2580 currentCoexPeriodMs - Period of awakening for the firmware used when
2581 periodic traffic is detected.
2582 If the traffic is not periodic, it is set to 0.
2583 currentCoexLatencyMs - Period of awakening for the firmware used when
2584 non-periodic traffic is detected
2585 hasBtDevice - TRUE if there is a Bluetooth device connected
2586 currentBlackoutDurationUs - Current blackout duration for protecting
2587 Bluetooth
2588 currentBlackoutPeriodUs - Current blackout period
2589 currentCoexScheme - Defines the scheme for the coexistence
2590 signalling
2591
2592*******************************************************************************/
2593typedef struct
2594{
5379b13d 2595 u8 hasTrafficData;
635d2b00 2596 CsrWifiSmeTrafficType currentTrafficType;
8c87f69a 2597 u16 currentPeriodMs;
635d2b00 2598 CsrWifiSmePowerSaveLevel currentPowerSave;
8c87f69a
GKH
2599 u16 currentCoexPeriodMs;
2600 u16 currentCoexLatencyMs;
5379b13d 2601 u8 hasBtDevice;
26a6b2e1
GKH
2602 u32 currentBlackoutDurationUs;
2603 u32 currentBlackoutPeriodUs;
635d2b00
GKH
2604 CsrWifiSmeCoexScheme currentCoexScheme;
2605} CsrWifiSmeCoexInfo;
2606
2607/*******************************************************************************
2608
2609 NAME
2610 CsrWifiSmeConnectionConfig
2611
2612 DESCRIPTION
2613 Specifies the parameters that the SME should use in selecting a network.
2614
2615 MEMBERS
2616 ssid
2617 - Service Set identifier
2618 bssid
2619 - BSS identifier
2620 bssType
2621 - Indicates the type of BSS
2622 ifIndex
2623 - Indicates the radio interface
2624 privacyMode
2625 - Specifies whether the privacy mode is enabled or disabled.
2626 authModeMask
2627 - Sets the authentication options that the SME can use while
2628 associating to the AP
2629 Set mask with values from CsrWifiSmeAuthMode
2630 encryptionModeMask
2631 - Sets the encryption options that the SME can use while
2632 associating to the AP
2633 Set mask with values from CsrWifiSmeEncryption
2634 mlmeAssociateReqInformationElementsLength
2635 - Length in bytes of information elements to be sent in the
2636 Association Request.
2637 mlmeAssociateReqInformationElements
2638 - Points to the first byte of the information elements, if
2639 any.
2640 wmmQosInfo
2641 - This parameter allows the driver's WMM behaviour to be
2642 configured.
2643 To enable support for WMM, use
2644 CSR_WIFI_SME_SME_CONFIG_SET_REQ with the
2645 CSR_WIFI_SME_WMM_MODE_AC_ENABLED bit set in wmmModeMask
2646 field in smeConfig parameter.
2647 Set mask with values from CsrWifiSmeWmmQosInfo
2648 adhocJoinOnly
2649 - This parameter is relevant only if bssType is NOT set to
2650 CSR_WIFI_SME_BSS_TYPE_INFRASTRUCTURE:
2651 if TRUE the SME will only try to join an ad-hoc network if
2652 there is one already established;
2653 if FALSE the SME will try to join an ad-hoc network if
2654 there is one already established or it will try to
2655 establish a new one
2656 adhocChannel
2657 - This parameter is relevant only if bssType is NOT set to
2658 CSR_WIFI_SME_BSS_TYPE_INFRASTRUCTURE:
2659 it indicates the channel to use joining an ad hoc network.
2660 Setting this to 0 causes the SME to select a channel from
2661 those permitted in the regulatory domain.
2662
2663*******************************************************************************/
2664typedef struct
2665{
2666 CsrWifiSsid ssid;
2667 CsrWifiMacAddress bssid;
2668 CsrWifiSmeBssType bssType;
2669 CsrWifiSmeRadioIF ifIndex;
2670 CsrWifiSme80211PrivacyMode privacyMode;
2671 CsrWifiSmeAuthModeMask authModeMask;
2672 CsrWifiSmeEncryptionMask encryptionModeMask;
8c87f69a 2673 u16 mlmeAssociateReqInformationElementsLength;
7e6f5794 2674 u8 *mlmeAssociateReqInformationElements;
635d2b00 2675 CsrWifiSmeWmmQosInfoMask wmmQosInfo;
5379b13d 2676 u8 adhocJoinOnly;
7e6f5794 2677 u8 adhocChannel;
635d2b00
GKH
2678} CsrWifiSmeConnectionConfig;
2679
2680/*******************************************************************************
2681
2682 NAME
2683 CsrWifiSmeConnectionInfo
2684
2685 DESCRIPTION
2686 Parameters that the SME should use in selecting a network
2687
2688 MEMBERS
2689 ssid - Service set identifier
2690 bssid - BSS identifier
2691 networkType80211 - Physical layer used for the connection
2692 channelNumber - Channel number
2693 channelFrequency - Channel frequency
2694 authMode - Authentication mode used for the connection
2695 pairwiseCipher - Encryption type for peer to peer communication
2696 groupCipher - Encryption type for broadcast and multicast
2697 communication
2698 ifIndex - Indicates the radio interface
2699 atimWindowTu - ATIM window specified for IBSS
2700 beaconPeriodTu - Interval between beacon packets
2701 reassociation - Indicates whether a reassociation occurred
2702 beaconFrameLength - Indicates the number of bytes of the beacon
2703 frame
2704 beaconFrame - Points at the first byte of the beacon frame
2705 associationReqFrameLength - Indicates the number of bytes of the
2706 association request frame
2707 associationReqFrame - Points at the first byte of the association
2708 request frame
2709 associationRspFrameLength - Indicates the number of bytes of the
2710 association response frame
2711 associationRspFrame - Points at the first byte of the association
2712 response frame
2713 assocScanInfoElementsLength - Indicates the number of bytes in the buffer
2714 pointed by assocScanInfoElements
2715 assocScanInfoElements - Pointer to the buffer containing the
2716 information elements of the probe response
2717 received after the probe requests sent before
2718 attempting to authenticate to the network
2719 assocReqCapabilities - Reports the content of the Capability
2720 information element as specified in the
2721 association request.
2722 assocReqListenIntervalTu - Listen Interval specified in the association
2723 request
2724 assocReqApAddress - AP address to which the association requests
2725 has been sent
2726 assocReqInfoElementsLength - Indicates the number of bytes of the
2727 association request information elements
2728 assocReqInfoElements - Points at the first byte of the association
2729 request information elements
2730 assocRspResult - Result reported in the association response
2731 assocRspCapabilityInfo - Reports the content of the Capability
2732 information element as received in the
2733 association response.
2734 assocRspAssociationId - Reports the association ID received in the
2735 association response.
2736 assocRspInfoElementsLength - Indicates the number of bytes of the
2737 association response information elements
2738 assocRspInfoElements - Points at the first byte of the association
2739 response information elements
2740
2741*******************************************************************************/
2742typedef struct
2743{
2744 CsrWifiSsid ssid;
2745 CsrWifiMacAddress bssid;
2746 CsrWifiSme80211NetworkType networkType80211;
7e6f5794 2747 u8 channelNumber;
8c87f69a 2748 u16 channelFrequency;
635d2b00
GKH
2749 CsrWifiSmeAuthMode authMode;
2750 CsrWifiSmeEncryption pairwiseCipher;
2751 CsrWifiSmeEncryption groupCipher;
2752 CsrWifiSmeRadioIF ifIndex;
8c87f69a
GKH
2753 u16 atimWindowTu;
2754 u16 beaconPeriodTu;
5379b13d 2755 u8 reassociation;
8c87f69a 2756 u16 beaconFrameLength;
7e6f5794 2757 u8 *beaconFrame;
8c87f69a 2758 u16 associationReqFrameLength;
7e6f5794 2759 u8 *associationReqFrame;
8c87f69a 2760 u16 associationRspFrameLength;
7e6f5794 2761 u8 *associationRspFrame;
8c87f69a 2762 u16 assocScanInfoElementsLength;
7e6f5794 2763 u8 *assocScanInfoElements;
8c87f69a
GKH
2764 u16 assocReqCapabilities;
2765 u16 assocReqListenIntervalTu;
635d2b00 2766 CsrWifiMacAddress assocReqApAddress;
8c87f69a 2767 u16 assocReqInfoElementsLength;
7e6f5794 2768 u8 *assocReqInfoElements;
635d2b00 2769 CsrWifiSmeIEEE80211Result assocRspResult;
8c87f69a
GKH
2770 u16 assocRspCapabilityInfo;
2771 u16 assocRspAssociationId;
2772 u16 assocRspInfoElementsLength;
7e6f5794 2773 u8 *assocRspInfoElements;
635d2b00
GKH
2774} CsrWifiSmeConnectionInfo;
2775
2776/*******************************************************************************
2777
2778 NAME
2779 CsrWifiSmeDeviceConfig
2780
2781 DESCRIPTION
2782 General configuration options in the SME
2783
2784 MEMBERS
2785 trustLevel - Level of trust of the information coming from the
2786 network
2787 countryCode - Country code as specified by IEEE 802.11 standard
2788 firmwareDriverInterface - Specifies the type of communication between Host
2789 and Firmware
2790 enableStrictDraftN - If TRUE TKIP is disallowed when connecting to
2791 802.11n enabled access points
2792
2793*******************************************************************************/
2794typedef struct
2795{
2796 CsrWifiSme80211dTrustLevel trustLevel;
7e6f5794 2797 u8 countryCode[2];
635d2b00 2798 CsrWifiSmeFirmwareDriverInterface firmwareDriverInterface;
5379b13d 2799 u8 enableStrictDraftN;
635d2b00
GKH
2800} CsrWifiSmeDeviceConfig;
2801
2802/*******************************************************************************
2803
2804 NAME
2805 CsrWifiSmeDeviceInfo
2806
2807 DESCRIPTION
2808 P2P Information for a P2P Device
2809
2810 MEMBERS
2811 deviceAddress - Device Address of the P2P device
2812 configMethods - Supported WPS configuration methods.
2813 p2PDeviceCap - P2P device capabilities
2814 primDeviceType - Primary WPS device type
2815 secondaryDeviceTypeCount - Number of secondary device types
2816 secDeviceType - list of secondary WPS device types
2817 deviceName - Device name without up to 32 characters'\0'.
2818 deviceNameLength - Number of characters of the device name
2819
2820*******************************************************************************/
2821typedef struct
2822{
2823 CsrWifiMacAddress deviceAddress;
2824 CsrWifiSmeWpsConfigTypeMask configMethods;
2825 CsrWifiSmeP2pCapabilityMask p2PDeviceCap;
2826 CsrWifiSmeWpsDeviceType primDeviceType;
7e6f5794 2827 u8 secondaryDeviceTypeCount;
635d2b00 2828 CsrWifiSmeWpsDeviceType *secDeviceType;
7e6f5794
GKH
2829 u8 deviceName[32];
2830 u8 deviceNameLength;
635d2b00
GKH
2831} CsrWifiSmeDeviceInfo;
2832
2833/*******************************************************************************
2834
2835 NAME
2836 CsrWifiSmeDeviceInfoCommon
2837
2838 DESCRIPTION
2839 Structure holding device information.
2840
2841 MEMBERS
2842 p2pDeviceAddress -
2843 primaryDeviceType -
2844 secondaryDeviceTypesCount -
2845 secondaryDeviceTypes -
2846 deviceNameLength -
2847 deviceName -
2848
2849*******************************************************************************/
2850typedef struct
2851{
2852 CsrWifiMacAddress p2pDeviceAddress;
2853 CsrWifiSmeWpsDeviceTypeCommon primaryDeviceType;
7e6f5794
GKH
2854 u8 secondaryDeviceTypesCount;
2855 u8 secondaryDeviceTypes[10];
2856 u8 deviceNameLength;
2857 u8 deviceName[32];
635d2b00
GKH
2858} CsrWifiSmeDeviceInfoCommon;
2859
2860/*******************************************************************************
2861
2862 NAME
2863 CsrWifiSmeHostConfig
2864
2865 DESCRIPTION
2866 Defines the host power state (for example, on mains power, on battery
2867 power etc) and the periodicity of the traffic data.
2868
2869 MEMBERS
2870 powerMode - The wireless manager application should use the
2871 powerMode parameter to inform the SME of the host
2872 power state.
2873 applicationDataPeriodMs - The applicationDataPeriodMs parameter allows a
2874 wireless manager application to inform the SME
2875 that an application is running that generates
2876 periodic network traffic and the period of the
2877 traffic.
2878 An example of such an application is a VoIP client.
2879 The wireless manager application should set
2880 applicationDataPeriodMs to the period in
2881 milliseconds between data packets or zero if no
2882 periodic application is running.
2883 Voip etc 0 = No Periodic Data
2884
2885*******************************************************************************/
2886typedef struct
2887{
2888 CsrWifiSmeHostPowerMode powerMode;
8c87f69a 2889 u16 applicationDataPeriodMs;
635d2b00
GKH
2890} CsrWifiSmeHostConfig;
2891
2892/*******************************************************************************
2893
2894 NAME
2895 CsrWifiSmeKey
2896
2897 DESCRIPTION
2898 Information for a key to be used for encryption
2899
2900 MEMBERS
2901 keyType - Specifies whether the key is a pairwise or group key; it
2902 should be set to CSR_WIFI_SME_GROUP_KEY or
2903 CSR_WIFI_SME_PAIRWISE_KEY, as required.
2904 keyIndex - Specifies which WEP key (0-3) to set; it should be set to 0
2905 for a WPA/WPA2 pairwise key and non-zero for a WPA/WPA2
2906 group key.
2907 wepTxKey - If wepTxKey is TRUE, and the key is a WEP key, the key will
2908 be selected for encrypting transmitted packets.
2909 To select a previously defined key as the transmit
2910 encryption key, set keyIndex to the required key, wepTxKey
2911 to TRUE and the keyLength to 0.
2912 keyRsc - Key Receive Sequence Counter
2913 authenticator - If TRUE the WMA will act as authenticator.
2914 CURRENTLY NOT SUPPORTED
2915 address - BSS identifier of the AP
2916 keyLength - Length of the key in bytes
2917 key - Points to the first byte of the key
2918
2919*******************************************************************************/
2920typedef struct
2921{
2922 CsrWifiSmeKeyType keyType;
7e6f5794 2923 u8 keyIndex;
5379b13d 2924 u8 wepTxKey;
8c87f69a 2925 u16 keyRsc[8];
5379b13d 2926 u8 authenticator;
635d2b00 2927 CsrWifiMacAddress address;
7e6f5794
GKH
2928 u8 keyLength;
2929 u8 key[32];
635d2b00
GKH
2930} CsrWifiSmeKey;
2931
2932/*******************************************************************************
2933
2934 NAME
2935 CsrWifiSmeP2pClientInfoType
2936
2937 DESCRIPTION
2938 P2P Information for a P2P Client
2939
2940 MEMBERS
2941 p2PClientInterfaceAddress - MAC address of the P2P Client
2942 clientDeviceInfo - Device Information
2943
2944*******************************************************************************/
2945typedef struct
2946{
2947 CsrWifiMacAddress p2PClientInterfaceAddress;
2948 CsrWifiSmeDeviceInfo clientDeviceInfo;
2949} CsrWifiSmeP2pClientInfoType;
2950
2951/*******************************************************************************
2952
2953 NAME
2954 CsrWifiSmeP2pGroupInfo
2955
2956 DESCRIPTION
2957 P2P Information for a P2P Group
2958
2959 MEMBERS
2960 groupCapability - P2P group capabilities
2961 p2pDeviceAddress - Device Address of the GO
2962 p2pClientInfoCount - Number of P2P Clients that belong to the group.
2963 p2PClientInfo - Pointer to the list containing client information for
2964 each client in the group
2965
2966*******************************************************************************/
2967typedef struct
2968{
2969 CsrWifiSmeP2pGroupCapabilityMask groupCapability;
2970 CsrWifiMacAddress p2pDeviceAddress;
7e6f5794 2971 u8 p2pClientInfoCount;
635d2b00
GKH
2972 CsrWifiSmeP2pClientInfoType *p2PClientInfo;
2973} CsrWifiSmeP2pGroupInfo;
2974
2975/*******************************************************************************
2976
2977 NAME
2978 CsrWifiSmePowerConfig
2979
2980 DESCRIPTION
2981 Configures the power-save behaviour of the driver and firmware.
2982
2983 MEMBERS
2984 powerSaveLevel - Power Save Level option
2985 listenIntervalTu - Interval for waking to receive beacon frames
2986 rxDtims - If TRUE, wake for DTIM every beacon period, to
2987 allow the reception broadcast packets
2988 d3AutoScanMode - Defines whether the autonomous scanning will be
2989 turned off or will stay on during a D3 suspended
2990 period
2991 clientTrafficWindow - Deprecated
2992 opportunisticPowerSave - Deprecated
2993 noticeOfAbsence - Deprecated
2994
2995*******************************************************************************/
2996typedef struct
2997{
2998 CsrWifiSmePowerSaveLevel powerSaveLevel;
8c87f69a 2999 u16 listenIntervalTu;
5379b13d 3000 u8 rxDtims;
635d2b00 3001 CsrWifiSmeD3AutoScanMode d3AutoScanMode;
7e6f5794 3002 u8 clientTrafficWindow;
5379b13d
GKH
3003 u8 opportunisticPowerSave;
3004 u8 noticeOfAbsence;
635d2b00
GKH
3005} CsrWifiSmePowerConfig;
3006
3007/*******************************************************************************
3008
3009 NAME
3010 CsrWifiSmeRoamingConfig
3011
3012 DESCRIPTION
3013 Configures the roaming behaviour of the driver and firmware
3014
3015 MEMBERS
3016 roamingBands - Defines the thresholds to determine the usability
3017 level of the current connection.
3018 roamingBands is indexed by the first 3 entries of
3019 the CsrWifiSmeBasicUsability enum
3020 disableSmoothRoaming - Disable the RSSI/SNR triggers from the Firmware
3021 that the SME uses to detect the quality of the
3022 connection.
3023 This implicitly disables disableRoamScans
3024 disableRoamScans - Disables the scanning for the roaming operation
3025 reconnectLimit - Maximum number of times SME may reconnect in the
3026 given interval
3027 reconnectLimitIntervalMs - Interval for maximum number of times SME may
3028 reconnect to the same Access Point
3029 roamScanCfg - Scanning behaviour for the specifically aimed at
3030 improving roaming performance.
3031 roamScanCfg is indexed by the first 3 entries of
3032 the CsrWifiSmeBasicUsability enum
3033
3034*******************************************************************************/
3035typedef struct
3036{
3037 CsrWifiSmeRoamingBandData roamingBands[3];
5379b13d
GKH
3038 u8 disableSmoothRoaming;
3039 u8 disableRoamScans;
7e6f5794 3040 u8 reconnectLimit;
8c87f69a 3041 u16 reconnectLimitIntervalMs;
635d2b00
GKH
3042 CsrWifiSmeScanConfigData roamScanCfg[3];
3043} CsrWifiSmeRoamingConfig;
3044
3045/*******************************************************************************
3046
3047 NAME
3048 CsrWifiSmeScanConfig
3049
3050 DESCRIPTION
3051 Parameters for the autonomous scanning behaviour of the system
3052
3053 MEMBERS
3054 scanCfg - Scan configuration data.
3055 Indexed by the CsrWifiSmeBasicUsability enum
3056 disableAutonomousScans - Enables or disables the autonomous scan
3057 maxResults - Maximum number of results to be cached in the SME
3058 highRssiThreshold - High received signal strength indication threshold
3059 in dBm for an AP above which the system will
3060 report scan indications
3061 lowRssiThreshold - Low received signal strength indication threshold
3062 in dBm for an AP below which the system will
3063 report scan indications
3064 deltaRssiThreshold - Minimum difference for received signal strength
3065 indication in dBm for an AP which trigger a scan
3066 indication to be sent.
3067 highSnrThreshold - High Signal to Noise Ratio threshold in dB for an
3068 AP above which the system will report scan
3069 indications
3070 lowSnrThreshold - Low Signal to Noise Ratio threshold in dB for an
3071 AP below which the system will report scan
3072 indications
3073 deltaSnrThreshold - Minimum difference for Signal to Noise Ratio in dB
3074 for an AP which trigger a scan indication to be
3075 sent.
3076 passiveChannelListCount - Number of channels to be scanned passively.
3077 passiveChannelList - Points to the first channel to be scanned
3078 passively , if any.
3079
3080*******************************************************************************/
3081typedef struct
3082{
3083 CsrWifiSmeScanConfigData scanCfg[4];
5379b13d 3084 u8 disableAutonomousScans;
8c87f69a 3085 u16 maxResults;
163eb0d8
GKH
3086 s8 highRssiThreshold;
3087 s8 lowRssiThreshold;
3088 s8 deltaRssiThreshold;
3089 s8 highSnrThreshold;
3090 s8 lowSnrThreshold;
3091 s8 deltaSnrThreshold;
8c87f69a 3092 u16 passiveChannelListCount;
7e6f5794 3093 u8 *passiveChannelList;
635d2b00
GKH
3094} CsrWifiSmeScanConfig;
3095
3096/*******************************************************************************
3097
3098 NAME
3099 CsrWifiSmeScanResult
3100
3101 DESCRIPTION
3102 This structure defines the scan result for each BSS found
3103
3104 MEMBERS
3105 ssid - Service set identifier
3106 bssid - BSS identifier
3107 rssi - Received signal strength indication in dBm
3108 snr - Signal to noise ratio in dB
3109 ifIndex - Indicates the radio interface
3110 beaconPeriodTu - Interval between beacon frames
3111 timeStamp - Timestamp in the BSS
3112 localTime - Timestamp in the Access Point
3113 channelFrequency - Channel frequency
3114 capabilityInformation - Capabilities of the BSS.
3115 channelNumber - Channel number
3116 usability - Indicates the usability level.
3117 bssType - Type of BSS.
3118 informationElementsLength - Number of bytes of the information elements
3119 received as part of the beacon or probe
3120 response.
3121 informationElements - Points to the first byte of the IEs received
3122 as part of the beacon or probe response.
3123 The format of the IEs is as specified in the
3124 IEEE 802.11 specification.
3125 p2pDeviceRole - Role of the P2P device.
3126 Relevant only if bssType is
3127 CSR_WIFI_SME_BSS_TYPE_P2P
3128 deviceInfo - Union containing P2P device info which
3129 depends on p2pDeviceRole parameter.
3130 deviceInforeservedCli -
3131 deviceInfogroupInfo -
3132 deviceInforeservedNone -
3133 deviceInfostandalonedevInfo -
3134
3135*******************************************************************************/
3136typedef struct
3137{
3138 CsrWifiSsid ssid;
3139 CsrWifiMacAddress bssid;
ab2b8c73
GKH
3140 s16 rssi;
3141 s16 snr;
635d2b00 3142 CsrWifiSmeRadioIF ifIndex;
8c87f69a 3143 u16 beaconPeriodTu;
635d2b00
GKH
3144 CsrWifiSmeTsfTime timeStamp;
3145 CsrWifiSmeTsfTime localTime;
8c87f69a
GKH
3146 u16 channelFrequency;
3147 u16 capabilityInformation;
7e6f5794 3148 u8 channelNumber;
635d2b00
GKH
3149 CsrWifiSmeBasicUsability usability;
3150 CsrWifiSmeBssType bssType;
8c87f69a 3151 u16 informationElementsLength;
7e6f5794 3152 u8 *informationElements;
635d2b00
GKH
3153 CsrWifiSmeP2pRole p2pDeviceRole;
3154 union {
3155 CsrWifiSmeEmpty reservedCli;
3156 CsrWifiSmeP2pGroupInfo groupInfo;
3157 CsrWifiSmeEmpty reservedNone;
3158 CsrWifiSmeDeviceInfo standalonedevInfo;
3159 } deviceInfo;
3160} CsrWifiSmeScanResult;
3161
95edd09e
GKH
3162/*******************************************************************************
3163
3164 NAME
3165 CsrWifiSmeStaConfig
3166
3167 DESCRIPTION
3168 Station configuration options in the SME
3169
3170 MEMBERS
3171 connectionQualityRssiChangeTrigger - Sets the difference of RSSI
3172 measurements which triggers reports
3173 from the Firmware
3174 connectionQualitySnrChangeTrigger - Sets the difference of SNR measurements
3175 which triggers reports from the
3176 Firmware
3177 wmmModeMask - Mask containing one or more values from
3178 CsrWifiSmeWmmMode
3179 ifIndex - Indicates the band of frequencies used
3180 allowUnicastUseGroupCipher - If TRUE, it allows to use groupwise
3181 keys if no pairwise key is specified
3182 enableOpportunisticKeyCaching - If TRUE, enables the Opportunistic Key
3183 Caching feature
3184
3185*******************************************************************************/
3186typedef struct
3187{
7e6f5794
GKH
3188 u8 connectionQualityRssiChangeTrigger;
3189 u8 connectionQualitySnrChangeTrigger;
95edd09e
GKH
3190 CsrWifiSmeWmmModeMask wmmModeMask;
3191 CsrWifiSmeRadioIF ifIndex;
5379b13d
GKH
3192 u8 allowUnicastUseGroupCipher;
3193 u8 enableOpportunisticKeyCaching;
95edd09e
GKH
3194} CsrWifiSmeStaConfig;
3195
635d2b00
GKH
3196/*******************************************************************************
3197
3198 NAME
3199 CsrWifiSmeWep128Keys
3200
3201 DESCRIPTION
3202 Structure holding WEP Authentication Type and WEP keys that can be used
3203 when using WEP128.
3204
3205 MEMBERS
3206 wepAuthType - Mask to select the WEP authentication type (Open or Shared)
3207 selectedWepKey - Index to one of the four keys below indicating the
3208 currently used WEP key. Mapping From SME/User -> firmware.
3209 Key 1 -> Index 0. Key 2 -> Index 1. key 3 -> Index 2. Key
3210 4-> Index 3.
3211 key1 - Value for key number 1.
3212 key2 - Value for key number 2.
3213 key3 - Value for key number 3.
3214 key4 - Value for key number 4.
3215
3216*******************************************************************************/
3217typedef struct
3218{
3219 CsrWifiSmeWepAuthMode wepAuthType;
7e6f5794
GKH
3220 u8 selectedWepKey;
3221 u8 key1[13];
3222 u8 key2[13];
3223 u8 key3[13];
3224 u8 key4[13];
635d2b00
GKH
3225} CsrWifiSmeWep128Keys;
3226
3227/*******************************************************************************
3228
3229 NAME
3230 CsrWifiSmeWep64Keys
3231
3232 DESCRIPTION
3233 Structure holding WEP Authentication Type and WEP keys that can be used
3234 when using WEP64.
3235
3236 MEMBERS
3237 wepAuthType - Mask to select the WEP authentication type (Open or Shared)
3238 selectedWepKey - Index to one of the four keys below indicating the
3239 currently used WEP key. Mapping From SME/User -> firmware.
3240 Key 1 -> Index 0. Key 2 -> Index 1. key 3 -> Index 2. Key
3241 4-> Index 3.
3242 key1 - Value for key number 1.
3243 key2 - Value for key number 2.
3244 key3 - Value for key number 3.
3245 key4 - Value for key number 4.
3246
3247*******************************************************************************/
3248typedef struct
3249{
3250 CsrWifiSmeWepAuthMode wepAuthType;
7e6f5794
GKH
3251 u8 selectedWepKey;
3252 u8 key1[5];
3253 u8 key2[5];
3254 u8 key3[5];
3255 u8 key4[5];
635d2b00
GKH
3256} CsrWifiSmeWep64Keys;
3257
3258/*******************************************************************************
3259
3260 NAME
3261 CsrWifiSmeWepAuth
3262
3263 DESCRIPTION
3264 WEP authentication parameter structure
3265
3266 MEMBERS
3267 wepKeyType - WEP key try (128 bit or 64 bit)
3268 wepCredentials - Union containing credentials which depends on
3269 wepKeyType parameter.
3270 wepCredentialswep128Key -
3271 wepCredentialswep64Key -
3272
3273*******************************************************************************/
3274typedef struct
3275{
3276 CsrWifiSmeWepCredentialType wepKeyType;
3277 union {
3278 CsrWifiSmeWep128Keys wep128Key;
3279 CsrWifiSmeWep64Keys wep64Key;
3280 } wepCredentials;
3281} CsrWifiSmeWepAuth;
3282
3283/*******************************************************************************
3284
3285 NAME
3286 CsrWifiSmeWpsConfig
3287
3288 DESCRIPTION
3289 Structure holding AP WPS Config data.
3290
3291 MEMBERS
3292 wpsVersion - wpsVersion should be 0x10 for WPS1.0h or 0x20 for
3293 WSC2.0
3294 uuid - uuid.
3295 deviceName - Device name upto 32 characters without '\0'.
3296 deviceNameLength - deviceNameLen.
3297 manufacturer - manufacturer: CSR
3298 manufacturerLength - manufacturerLen.
3299 modelName - modelName Unifi
3300 modelNameLength - modelNameLen.
3301 modelNumber - modelNumber
3302 modelNumberLength - modelNumberLen.
3303 serialNumber - serialNumber
3304 primDeviceType - Primary WPS device type
3305 secondaryDeviceTypeCount - Number of secondary device types
3306 secondaryDeviceType - list of secondary WPS device types
3307 configMethods - Supported WPS config methods
3308 rfBands - RfBands.
3309 osVersion - Os version on which the device is running
3310
3311*******************************************************************************/
3312typedef struct
3313{
7e6f5794
GKH
3314 u8 wpsVersion;
3315 u8 uuid[16];
3316 u8 deviceName[32];
3317 u8 deviceNameLength;
3318 u8 manufacturer[64];
3319 u8 manufacturerLength;
3320 u8 modelName[32];
3321 u8 modelNameLength;
3322 u8 modelNumber[32];
3323 u8 modelNumberLength;
3324 u8 serialNumber[32];
635d2b00 3325 CsrWifiSmeWpsDeviceType primDeviceType;
7e6f5794 3326 u8 secondaryDeviceTypeCount;
635d2b00
GKH
3327 CsrWifiSmeWpsDeviceType *secondaryDeviceType;
3328 CsrWifiSmeWpsConfigTypeMask configMethods;
7e6f5794
GKH
3329 u8 rfBands;
3330 u8 osVersion[4];
635d2b00
GKH
3331} CsrWifiSmeWpsConfig;
3332
3333
3334/* Downstream */
3335#define CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST (0x0000)
3336
3337#define CSR_WIFI_SME_ACTIVATE_REQ ((CsrWifiSmePrim) (0x0000 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3338#define CSR_WIFI_SME_ADHOC_CONFIG_GET_REQ ((CsrWifiSmePrim) (0x0001 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3339#define CSR_WIFI_SME_ADHOC_CONFIG_SET_REQ ((CsrWifiSmePrim) (0x0002 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3340#define CSR_WIFI_SME_BLACKLIST_REQ ((CsrWifiSmePrim) (0x0003 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3341#define CSR_WIFI_SME_CALIBRATION_DATA_GET_REQ ((CsrWifiSmePrim) (0x0004 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3342#define CSR_WIFI_SME_CALIBRATION_DATA_SET_REQ ((CsrWifiSmePrim) (0x0005 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3343#define CSR_WIFI_SME_CCX_CONFIG_GET_REQ ((CsrWifiSmePrim) (0x0006 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3344#define CSR_WIFI_SME_CCX_CONFIG_SET_REQ ((CsrWifiSmePrim) (0x0007 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3345#define CSR_WIFI_SME_COEX_CONFIG_GET_REQ ((CsrWifiSmePrim) (0x0008 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3346#define CSR_WIFI_SME_COEX_CONFIG_SET_REQ ((CsrWifiSmePrim) (0x0009 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3347#define CSR_WIFI_SME_COEX_INFO_GET_REQ ((CsrWifiSmePrim) (0x000A + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3348#define CSR_WIFI_SME_CONNECT_REQ ((CsrWifiSmePrim) (0x000B + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3349#define CSR_WIFI_SME_CONNECTION_CONFIG_GET_REQ ((CsrWifiSmePrim) (0x000C + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3350#define CSR_WIFI_SME_CONNECTION_INFO_GET_REQ ((CsrWifiSmePrim) (0x000D + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3351#define CSR_WIFI_SME_CONNECTION_STATS_GET_REQ ((CsrWifiSmePrim) (0x000E + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3352#define CSR_WIFI_SME_DEACTIVATE_REQ ((CsrWifiSmePrim) (0x000F + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3353#define CSR_WIFI_SME_DISCONNECT_REQ ((CsrWifiSmePrim) (0x0010 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3354#define CSR_WIFI_SME_EVENT_MASK_SET_REQ ((CsrWifiSmePrim) (0x0011 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3355#define CSR_WIFI_SME_HOST_CONFIG_GET_REQ ((CsrWifiSmePrim) (0x0012 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3356#define CSR_WIFI_SME_HOST_CONFIG_SET_REQ ((CsrWifiSmePrim) (0x0013 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3357#define CSR_WIFI_SME_KEY_REQ ((CsrWifiSmePrim) (0x0014 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3358#define CSR_WIFI_SME_LINK_QUALITY_GET_REQ ((CsrWifiSmePrim) (0x0015 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3359#define CSR_WIFI_SME_MIB_CONFIG_GET_REQ ((CsrWifiSmePrim) (0x0016 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3360#define CSR_WIFI_SME_MIB_CONFIG_SET_REQ ((CsrWifiSmePrim) (0x0017 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3361#define CSR_WIFI_SME_MIB_GET_NEXT_REQ ((CsrWifiSmePrim) (0x0018 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3362#define CSR_WIFI_SME_MIB_GET_REQ ((CsrWifiSmePrim) (0x0019 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3363#define CSR_WIFI_SME_MIB_SET_REQ ((CsrWifiSmePrim) (0x001A + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3364#define CSR_WIFI_SME_MULTICAST_ADDRESS_REQ ((CsrWifiSmePrim) (0x001B + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3365#define CSR_WIFI_SME_PACKET_FILTER_SET_REQ ((CsrWifiSmePrim) (0x001C + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3366#define CSR_WIFI_SME_PERMANENT_MAC_ADDRESS_GET_REQ ((CsrWifiSmePrim) (0x001D + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3367#define CSR_WIFI_SME_PMKID_REQ ((CsrWifiSmePrim) (0x001E + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3368#define CSR_WIFI_SME_POWER_CONFIG_GET_REQ ((CsrWifiSmePrim) (0x001F + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3369#define CSR_WIFI_SME_POWER_CONFIG_SET_REQ ((CsrWifiSmePrim) (0x0020 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3370#define CSR_WIFI_SME_REGULATORY_DOMAIN_INFO_GET_REQ ((CsrWifiSmePrim) (0x0021 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3371#define CSR_WIFI_SME_ROAMING_CONFIG_GET_REQ ((CsrWifiSmePrim) (0x0022 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3372#define CSR_WIFI_SME_ROAMING_CONFIG_SET_REQ ((CsrWifiSmePrim) (0x0023 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3373#define CSR_WIFI_SME_SCAN_CONFIG_GET_REQ ((CsrWifiSmePrim) (0x0024 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3374#define CSR_WIFI_SME_SCAN_CONFIG_SET_REQ ((CsrWifiSmePrim) (0x0025 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3375#define CSR_WIFI_SME_SCAN_FULL_REQ ((CsrWifiSmePrim) (0x0026 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3376#define CSR_WIFI_SME_SCAN_RESULTS_FLUSH_REQ ((CsrWifiSmePrim) (0x0027 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3377#define CSR_WIFI_SME_SCAN_RESULTS_GET_REQ ((CsrWifiSmePrim) (0x0028 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3378#define CSR_WIFI_SME_SME_STA_CONFIG_GET_REQ ((CsrWifiSmePrim) (0x0029 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3379#define CSR_WIFI_SME_SME_STA_CONFIG_SET_REQ ((CsrWifiSmePrim) (0x002A + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3380#define CSR_WIFI_SME_STATION_MAC_ADDRESS_GET_REQ ((CsrWifiSmePrim) (0x002B + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3381#define CSR_WIFI_SME_TSPEC_REQ ((CsrWifiSmePrim) (0x002C + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3382#define CSR_WIFI_SME_VERSIONS_GET_REQ ((CsrWifiSmePrim) (0x002D + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3383#define CSR_WIFI_SME_WIFI_FLIGHTMODE_REQ ((CsrWifiSmePrim) (0x002E + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3384#define CSR_WIFI_SME_WIFI_OFF_REQ ((CsrWifiSmePrim) (0x002F + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3385#define CSR_WIFI_SME_WIFI_ON_REQ ((CsrWifiSmePrim) (0x0030 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3386#define CSR_WIFI_SME_CLOAKED_SSIDS_SET_REQ ((CsrWifiSmePrim) (0x0031 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3387#define CSR_WIFI_SME_CLOAKED_SSIDS_GET_REQ ((CsrWifiSmePrim) (0x0032 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3388#define CSR_WIFI_SME_SME_COMMON_CONFIG_GET_REQ ((CsrWifiSmePrim) (0x0033 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3389#define CSR_WIFI_SME_SME_COMMON_CONFIG_SET_REQ ((CsrWifiSmePrim) (0x0034 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3390#define CSR_WIFI_SME_INTERFACE_CAPABILITY_GET_REQ ((CsrWifiSmePrim) (0x0035 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
3391#define CSR_WIFI_SME_WPS_CONFIGURATION_REQ ((CsrWifiSmePrim) (0x0036 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
95edd09e 3392#define CSR_WIFI_SME_SET_REQ ((CsrWifiSmePrim) (0x0037 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST))
635d2b00
GKH
3393
3394
95edd09e 3395#define CSR_WIFI_SME_PRIM_DOWNSTREAM_HIGHEST (0x0037 + CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST)
635d2b00
GKH
3396
3397/* Upstream */
3398#define CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST (0x0000 + CSR_PRIM_UPSTREAM)
3399
3400#define CSR_WIFI_SME_ACTIVATE_CFM ((CsrWifiSmePrim)(0x0000 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3401#define CSR_WIFI_SME_ADHOC_CONFIG_GET_CFM ((CsrWifiSmePrim)(0x0001 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3402#define CSR_WIFI_SME_ADHOC_CONFIG_SET_CFM ((CsrWifiSmePrim)(0x0002 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3403#define CSR_WIFI_SME_ASSOCIATION_COMPLETE_IND ((CsrWifiSmePrim)(0x0003 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3404#define CSR_WIFI_SME_ASSOCIATION_START_IND ((CsrWifiSmePrim)(0x0004 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3405#define CSR_WIFI_SME_BLACKLIST_CFM ((CsrWifiSmePrim)(0x0005 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3406#define CSR_WIFI_SME_CALIBRATION_DATA_GET_CFM ((CsrWifiSmePrim)(0x0006 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3407#define CSR_WIFI_SME_CALIBRATION_DATA_SET_CFM ((CsrWifiSmePrim)(0x0007 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3408#define CSR_WIFI_SME_CCX_CONFIG_GET_CFM ((CsrWifiSmePrim)(0x0008 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3409#define CSR_WIFI_SME_CCX_CONFIG_SET_CFM ((CsrWifiSmePrim)(0x0009 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3410#define CSR_WIFI_SME_COEX_CONFIG_GET_CFM ((CsrWifiSmePrim)(0x000A + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3411#define CSR_WIFI_SME_COEX_CONFIG_SET_CFM ((CsrWifiSmePrim)(0x000B + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3412#define CSR_WIFI_SME_COEX_INFO_GET_CFM ((CsrWifiSmePrim)(0x000C + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3413#define CSR_WIFI_SME_CONNECT_CFM ((CsrWifiSmePrim)(0x000D + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3414#define CSR_WIFI_SME_CONNECTION_CONFIG_GET_CFM ((CsrWifiSmePrim)(0x000E + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3415#define CSR_WIFI_SME_CONNECTION_INFO_GET_CFM ((CsrWifiSmePrim)(0x000F + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3416#define CSR_WIFI_SME_CONNECTION_QUALITY_IND ((CsrWifiSmePrim)(0x0010 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3417#define CSR_WIFI_SME_CONNECTION_STATS_GET_CFM ((CsrWifiSmePrim)(0x0011 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3418#define CSR_WIFI_SME_DEACTIVATE_CFM ((CsrWifiSmePrim)(0x0012 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3419#define CSR_WIFI_SME_DISCONNECT_CFM ((CsrWifiSmePrim)(0x0013 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3420#define CSR_WIFI_SME_EVENT_MASK_SET_CFM ((CsrWifiSmePrim)(0x0014 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3421#define CSR_WIFI_SME_HOST_CONFIG_GET_CFM ((CsrWifiSmePrim)(0x0015 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3422#define CSR_WIFI_SME_HOST_CONFIG_SET_CFM ((CsrWifiSmePrim)(0x0016 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3423#define CSR_WIFI_SME_IBSS_STATION_IND ((CsrWifiSmePrim)(0x0017 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3424#define CSR_WIFI_SME_KEY_CFM ((CsrWifiSmePrim)(0x0018 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3425#define CSR_WIFI_SME_LINK_QUALITY_GET_CFM ((CsrWifiSmePrim)(0x0019 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3426#define CSR_WIFI_SME_MEDIA_STATUS_IND ((CsrWifiSmePrim)(0x001A + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3427#define CSR_WIFI_SME_MIB_CONFIG_GET_CFM ((CsrWifiSmePrim)(0x001B + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3428#define CSR_WIFI_SME_MIB_CONFIG_SET_CFM ((CsrWifiSmePrim)(0x001C + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3429#define CSR_WIFI_SME_MIB_GET_CFM ((CsrWifiSmePrim)(0x001D + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3430#define CSR_WIFI_SME_MIB_GET_NEXT_CFM ((CsrWifiSmePrim)(0x001E + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3431#define CSR_WIFI_SME_MIB_SET_CFM ((CsrWifiSmePrim)(0x001F + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3432#define CSR_WIFI_SME_MIC_FAILURE_IND ((CsrWifiSmePrim)(0x0020 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3433#define CSR_WIFI_SME_MULTICAST_ADDRESS_CFM ((CsrWifiSmePrim)(0x0021 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3434#define CSR_WIFI_SME_PACKET_FILTER_SET_CFM ((CsrWifiSmePrim)(0x0022 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3435#define CSR_WIFI_SME_PERMANENT_MAC_ADDRESS_GET_CFM ((CsrWifiSmePrim)(0x0023 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3436#define CSR_WIFI_SME_PMKID_CANDIDATE_LIST_IND ((CsrWifiSmePrim)(0x0024 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3437#define CSR_WIFI_SME_PMKID_CFM ((CsrWifiSmePrim)(0x0025 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3438#define CSR_WIFI_SME_POWER_CONFIG_GET_CFM ((CsrWifiSmePrim)(0x0026 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3439#define CSR_WIFI_SME_POWER_CONFIG_SET_CFM ((CsrWifiSmePrim)(0x0027 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3440#define CSR_WIFI_SME_REGULATORY_DOMAIN_INFO_GET_CFM ((CsrWifiSmePrim)(0x0028 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3441#define CSR_WIFI_SME_ROAM_COMPLETE_IND ((CsrWifiSmePrim)(0x0029 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3442#define CSR_WIFI_SME_ROAM_START_IND ((CsrWifiSmePrim)(0x002A + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3443#define CSR_WIFI_SME_ROAMING_CONFIG_GET_CFM ((CsrWifiSmePrim)(0x002B + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3444#define CSR_WIFI_SME_ROAMING_CONFIG_SET_CFM ((CsrWifiSmePrim)(0x002C + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3445#define CSR_WIFI_SME_SCAN_CONFIG_GET_CFM ((CsrWifiSmePrim)(0x002D + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3446#define CSR_WIFI_SME_SCAN_CONFIG_SET_CFM ((CsrWifiSmePrim)(0x002E + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3447#define CSR_WIFI_SME_SCAN_FULL_CFM ((CsrWifiSmePrim)(0x002F + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3448#define CSR_WIFI_SME_SCAN_RESULT_IND ((CsrWifiSmePrim)(0x0030 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3449#define CSR_WIFI_SME_SCAN_RESULTS_FLUSH_CFM ((CsrWifiSmePrim)(0x0031 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3450#define CSR_WIFI_SME_SCAN_RESULTS_GET_CFM ((CsrWifiSmePrim)(0x0032 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3451#define CSR_WIFI_SME_SME_STA_CONFIG_GET_CFM ((CsrWifiSmePrim)(0x0033 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3452#define CSR_WIFI_SME_SME_STA_CONFIG_SET_CFM ((CsrWifiSmePrim)(0x0034 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3453#define CSR_WIFI_SME_STATION_MAC_ADDRESS_GET_CFM ((CsrWifiSmePrim)(0x0035 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3454#define CSR_WIFI_SME_TSPEC_IND ((CsrWifiSmePrim)(0x0036 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3455#define CSR_WIFI_SME_TSPEC_CFM ((CsrWifiSmePrim)(0x0037 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3456#define CSR_WIFI_SME_VERSIONS_GET_CFM ((CsrWifiSmePrim)(0x0038 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3457#define CSR_WIFI_SME_WIFI_FLIGHTMODE_CFM ((CsrWifiSmePrim)(0x0039 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3458#define CSR_WIFI_SME_WIFI_OFF_IND ((CsrWifiSmePrim)(0x003A + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3459#define CSR_WIFI_SME_WIFI_OFF_CFM ((CsrWifiSmePrim)(0x003B + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3460#define CSR_WIFI_SME_WIFI_ON_CFM ((CsrWifiSmePrim)(0x003C + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3461#define CSR_WIFI_SME_CLOAKED_SSIDS_SET_CFM ((CsrWifiSmePrim)(0x003D + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3462#define CSR_WIFI_SME_CLOAKED_SSIDS_GET_CFM ((CsrWifiSmePrim)(0x003E + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3463#define CSR_WIFI_SME_WIFI_ON_IND ((CsrWifiSmePrim)(0x003F + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3464#define CSR_WIFI_SME_SME_COMMON_CONFIG_GET_CFM ((CsrWifiSmePrim)(0x0040 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3465#define CSR_WIFI_SME_SME_COMMON_CONFIG_SET_CFM ((CsrWifiSmePrim)(0x0041 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3466#define CSR_WIFI_SME_INTERFACE_CAPABILITY_GET_CFM ((CsrWifiSmePrim)(0x0042 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3467#define CSR_WIFI_SME_ERROR_IND ((CsrWifiSmePrim)(0x0043 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3468#define CSR_WIFI_SME_INFO_IND ((CsrWifiSmePrim)(0x0044 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3469#define CSR_WIFI_SME_CORE_DUMP_IND ((CsrWifiSmePrim)(0x0045 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3470#define CSR_WIFI_SME_AMP_STATUS_CHANGE_IND ((CsrWifiSmePrim)(0x0046 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3471#define CSR_WIFI_SME_WPS_CONFIGURATION_CFM ((CsrWifiSmePrim)(0x0047 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST))
3472
3473#define CSR_WIFI_SME_PRIM_UPSTREAM_HIGHEST (0x0047 + CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST)
3474
3475#define CSR_WIFI_SME_PRIM_DOWNSTREAM_COUNT (CSR_WIFI_SME_PRIM_DOWNSTREAM_HIGHEST + 1 - CSR_WIFI_SME_PRIM_DOWNSTREAM_LOWEST)
3476#define CSR_WIFI_SME_PRIM_UPSTREAM_COUNT (CSR_WIFI_SME_PRIM_UPSTREAM_HIGHEST + 1 - CSR_WIFI_SME_PRIM_UPSTREAM_LOWEST)
3477
3478/*******************************************************************************
3479
3480 NAME
3481 CsrWifiSmeActivateReq
3482
3483 DESCRIPTION
3484 The WMA sends this primitive to activate the SME.
3485 The WMA must activate the SME before it can send any other primitive.
3486
3487 MEMBERS
3488 common - Common header for use with the CsrWifiFsm Module
3489
3490*******************************************************************************/
3491typedef struct
3492{
3493 CsrWifiFsmEvent common;
3494} CsrWifiSmeActivateReq;
3495
3496/*******************************************************************************
3497
3498 NAME
3499 CsrWifiSmeAdhocConfigGetReq
3500
3501 DESCRIPTION
3502 This primitive gets the value of the adHocConfig parameter.
3503
3504 MEMBERS
3505 common - Common header for use with the CsrWifiFsm Module
3506
3507*******************************************************************************/
3508typedef struct
3509{
3510 CsrWifiFsmEvent common;
3511} CsrWifiSmeAdhocConfigGetReq;
3512
3513/*******************************************************************************
3514
3515 NAME
3516 CsrWifiSmeAdhocConfigSetReq
3517
3518 DESCRIPTION
3519 This primitive sets the value of the adHocConfig parameter.
3520
3521 MEMBERS
3522 common - Common header for use with the CsrWifiFsm Module
3523 adHocConfig - Sets the values to use when starting an ad hoc network.
3524
3525*******************************************************************************/
3526typedef struct
3527{
3528 CsrWifiFsmEvent common;
3529 CsrWifiSmeAdHocConfig adHocConfig;
3530} CsrWifiSmeAdhocConfigSetReq;
3531
3532/*******************************************************************************
3533
3534 NAME
3535 CsrWifiSmeBlacklistReq
3536
3537 DESCRIPTION
3538 The wireless manager application should call this primitive to notify the
3539 driver of any networks that should not be connected to. The interface
3540 allows the wireless manager application to query, add, remove, and flush
3541 the BSSIDs that the driver may not connect or roam to.
3542 When this primitive adds to the black list the BSSID to which the SME is
3543 currently connected, the SME will try to roam, if applicable, to another
3544 BSSID in the same ESS; if the roaming procedure fails, the SME will
3545 disconnect.
3546
3547 MEMBERS
3548 common - Common header for use with the CsrWifiFsm Module
3549 interfaceTag - Interface Identifier; unique identifier of an interface
3550 action - The value of the CsrWifiSmeListAction parameter instructs
3551 the driver to modify or provide the list of blacklisted
3552 networks.
3553 setAddressCount - Number of BSSIDs sent with this primitive
3554 setAddresses - Pointer to the list of BBSIDs sent with the primitive, set
3555 to NULL if none is sent.
3556
3557*******************************************************************************/
3558typedef struct
3559{
3560 CsrWifiFsmEvent common;
8c87f69a 3561 u16 interfaceTag;
635d2b00 3562 CsrWifiSmeListAction action;
7e6f5794 3563 u8 setAddressCount;
635d2b00
GKH
3564 CsrWifiMacAddress *setAddresses;
3565} CsrWifiSmeBlacklistReq;
3566
3567/*******************************************************************************
3568
3569 NAME
3570 CsrWifiSmeCalibrationDataGetReq
3571
3572 DESCRIPTION
3573 This primitive retrieves the Wi-Fi radio calibration data.
3574
3575 MEMBERS
3576 common - Common header for use with the CsrWifiFsm Module
3577
3578*******************************************************************************/
3579typedef struct
3580{
3581 CsrWifiFsmEvent common;
3582} CsrWifiSmeCalibrationDataGetReq;
3583
3584/*******************************************************************************
3585
3586 NAME
3587 CsrWifiSmeCalibrationDataSetReq
3588
3589 DESCRIPTION
3590 This primitive sets the Wi-Fi radio calibration data.
3591 The usage of the primitive with proper calibration data will avoid
3592 time-consuming configuration after power-up.
3593
3594 MEMBERS
3595 common - Common header for use with the CsrWifiFsm Module
3596 calibrationDataLength - Number of bytes in the buffer pointed by
3597 calibrationData
3598 calibrationData - Pointer to a buffer of length calibrationDataLength
3599 containing the calibration data
3600
3601*******************************************************************************/
3602typedef struct
3603{
3604 CsrWifiFsmEvent common;
8c87f69a 3605 u16 calibrationDataLength;
7e6f5794 3606 u8 *calibrationData;
635d2b00
GKH
3607} CsrWifiSmeCalibrationDataSetReq;
3608
3609/*******************************************************************************
3610
3611 NAME
3612 CsrWifiSmeCcxConfigGetReq
3613
3614 DESCRIPTION
3615 This primitive gets the value of the CcxConfig parameter.
3616 CURRENTLY NOT SUPPORTED.
3617
3618 MEMBERS
3619 common - Common header for use with the CsrWifiFsm Module
3620 interfaceTag - Interface Identifier; unique identifier of an interface
3621
3622*******************************************************************************/
3623typedef struct
3624{
3625 CsrWifiFsmEvent common;
8c87f69a 3626 u16 interfaceTag;
635d2b00
GKH
3627} CsrWifiSmeCcxConfigGetReq;
3628
3629/*******************************************************************************
3630
3631 NAME
3632 CsrWifiSmeCcxConfigSetReq
3633
3634 DESCRIPTION
3635 This primitive sets the value of the CcxConfig parameter.
3636 CURRENTLY NOT SUPPORTED.
3637
3638 MEMBERS
3639 common - Common header for use with the CsrWifiFsm Module
3640 interfaceTag - Interface Identifier; unique identifier of an interface
3641 ccxConfig - Currently not supported
3642
3643*******************************************************************************/
3644typedef struct
3645{
3646 CsrWifiFsmEvent common;
8c87f69a 3647 u16 interfaceTag;
635d2b00
GKH
3648 CsrWifiSmeCcxConfig ccxConfig;
3649} CsrWifiSmeCcxConfigSetReq;
3650
3651/*******************************************************************************
3652
3653 NAME
3654 CsrWifiSmeCoexConfigGetReq
3655
3656 DESCRIPTION
3657 This primitive gets the value of the CoexConfig parameter.
3658
3659 MEMBERS
3660 common - Common header for use with the CsrWifiFsm Module
3661
3662*******************************************************************************/
3663typedef struct
3664{
3665 CsrWifiFsmEvent common;
3666} CsrWifiSmeCoexConfigGetReq;
3667
3668/*******************************************************************************
3669
3670 NAME
3671 CsrWifiSmeCoexConfigSetReq
3672
3673 DESCRIPTION
3674 This primitive sets the value of the CoexConfig parameter.
3675
3676 MEMBERS
3677 common - Common header for use with the CsrWifiFsm Module
3678 coexConfig - Configures the coexistence behaviour
3679
3680*******************************************************************************/
3681typedef struct
3682{
3683 CsrWifiFsmEvent common;
3684 CsrWifiSmeCoexConfig coexConfig;
3685} CsrWifiSmeCoexConfigSetReq;
3686
3687/*******************************************************************************
3688
3689 NAME
3690 CsrWifiSmeCoexInfoGetReq
3691
3692 DESCRIPTION
3693 This primitive gets the value of the CoexInfo parameter.
3694
3695 MEMBERS
3696 common - Common header for use with the CsrWifiFsm Module
3697
3698*******************************************************************************/
3699typedef struct
3700{
3701 CsrWifiFsmEvent common;
3702} CsrWifiSmeCoexInfoGetReq;
3703
3704/*******************************************************************************
3705
3706 NAME
3707 CsrWifiSmeConnectReq
3708
3709 DESCRIPTION
3710 The wireless manager application calls this primitive to start the
3711 process of joining an 802.11 wireless network or to start an ad hoc
3712 network.
3713 The structure pointed by connectionConfig contains parameters describing
3714 the network to join or, in case of an ad hoc network, to host or join.
3715 The SME will select a network, perform the IEEE 802.11 Join, Authenticate
3716 and Associate exchanges.
3717 The SME selects the networks from the current scan list that match both
3718 the SSID and BSSID, however either or both of these may be the wildcard
3719 value. Using this rule, the following operations are possible:
3720 * To connect to a network by name, specify the SSID and set the BSSID to
3721 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF. If there are two or more networks visible,
3722 the SME will select the one with the strongest signal.
3723 * To connect to a specific network, specify the BSSID. The SSID is
3724 optional, but if given it must match the SSID of the network. An empty
3725 SSID may be specified by setting the SSID length to zero. Please note
3726 that if the BSSID is specified (i.e. not equal to 0xFF 0xFF 0xFF 0xFF
3727 0xFF 0xFF), the SME will not attempt to roam if signal conditions become
3728 poor, even if there is an alternative AP with an SSID that matches the
3729 current network SSID.
3730 * To connect to any network matching the other parameters (i.e. security,
3731 etc), set the SSID length to zero and set the BSSID to 0xFF 0xFF 0xFF
3732 0xFF 0xFF 0xFF. In this case, the SME will order all available networks
3733 by their signal strengths and will iterate through this list until it
3734 successfully connects.
3735 NOTE: Specifying the BSSID will restrict the selection to one specific
3736 network. If SSID and BSSID are given, they must both match the network
3737 for it to be selected. To select a network based on the SSID only, the
3738 wireless manager application must set the BSSID to 0xFF 0xFF 0xFF 0xFF
3739 0xFF 0xFF.
3740 The SME will try to connect to each network that matches the provided
3741 parameters, one by one, until it succeeds or has tried unsuccessfully
3742 with all the matching networks.
3743 If there is no network that matches the parameters and the request allows
3744 to host an ad hoc network, the SME will advertise a new ad hoc network
3745 instead.
3746 If the SME cannot connect, it will notify the failure in the confirm.
3747
3748 MEMBERS
3749 common - Common header for use with the CsrWifiFsm Module
3750 interfaceTag - Interface Identifier; unique identifier of an interface
3751 connectionConfig - Describes the candidate network to join or to host.
3752
3753*******************************************************************************/
3754typedef struct
3755{
3756 CsrWifiFsmEvent common;
8c87f69a 3757 u16 interfaceTag;
635d2b00
GKH
3758 CsrWifiSmeConnectionConfig connectionConfig;
3759} CsrWifiSmeConnectReq;
3760
3761/*******************************************************************************
3762
3763 NAME
3764 CsrWifiSmeConnectionConfigGetReq
3765
3766 DESCRIPTION
3767 This primitive gets the value of the ConnectionConfig parameter.
3768
3769 MEMBERS
3770 common - Common header for use with the CsrWifiFsm Module
3771 interfaceTag - Interface Identifier; unique identifier of an interface
3772
3773*******************************************************************************/
3774typedef struct
3775{
3776 CsrWifiFsmEvent common;
8c87f69a 3777 u16 interfaceTag;
635d2b00
GKH
3778} CsrWifiSmeConnectionConfigGetReq;
3779
3780/*******************************************************************************
3781
3782 NAME
3783 CsrWifiSmeConnectionInfoGetReq
3784
3785 DESCRIPTION
3786 This primitive gets the value of the ConnectionInfo parameter.
3787
3788 MEMBERS
3789 common - Common header for use with the CsrWifiFsm Module
3790 interfaceTag - Interface Identifier; unique identifier of an interface
3791
3792*******************************************************************************/
3793typedef struct
3794{
3795 CsrWifiFsmEvent common;
8c87f69a 3796 u16 interfaceTag;
635d2b00
GKH
3797} CsrWifiSmeConnectionInfoGetReq;
3798
3799/*******************************************************************************
3800
3801 NAME
3802 CsrWifiSmeConnectionStatsGetReq
3803
3804 DESCRIPTION
3805 This primitive gets the value of the ConnectionStats parameter.
3806
3807 MEMBERS
3808 common - Common header for use with the CsrWifiFsm Module
3809 interfaceTag - Interface Identifier; unique identifier of an interface
3810
3811*******************************************************************************/
3812typedef struct
3813{
3814 CsrWifiFsmEvent common;
8c87f69a 3815 u16 interfaceTag;
635d2b00
GKH
3816} CsrWifiSmeConnectionStatsGetReq;
3817
3818/*******************************************************************************
3819
3820 NAME
3821 CsrWifiSmeDeactivateReq
3822
3823 DESCRIPTION
3824 The WMA sends this primitive to deactivate the SME.
3825
3826 MEMBERS
3827 common - Common header for use with the CsrWifiFsm Module
3828
3829*******************************************************************************/
3830typedef struct
3831{
3832 CsrWifiFsmEvent common;
3833} CsrWifiSmeDeactivateReq;
3834
3835/*******************************************************************************
3836
3837 NAME
3838 CsrWifiSmeDisconnectReq
3839
3840 DESCRIPTION
3841 The wireless manager application may disconnect from the current network
3842 by calling this primitive
3843
3844 MEMBERS
3845 common - Common header for use with the CsrWifiFsm Module
3846 interfaceTag - Interface Identifier; unique identifier of an interface
3847
3848*******************************************************************************/
3849typedef struct
3850{
3851 CsrWifiFsmEvent common;
8c87f69a 3852 u16 interfaceTag;
635d2b00
GKH
3853} CsrWifiSmeDisconnectReq;
3854
3855/*******************************************************************************
3856
3857 NAME
3858 CsrWifiSmeEventMaskSetReq
3859
3860 DESCRIPTION
3861 The wireless manager application may register with the SME to receive
3862 notification of interesting events. Indications will be sent only if the
3863 wireless manager explicitly registers to be notified of that event.
3864 indMask is a bit mask of values defined in CsrWifiSmeIndicationsMask.
3865
3866 MEMBERS
3867 common - Common header for use with the CsrWifiFsm Module
3868 indMask - Set mask with values from CsrWifiSmeIndications
3869
3870*******************************************************************************/
3871typedef struct
3872{
3873 CsrWifiFsmEvent common;
3874 CsrWifiSmeIndicationsMask indMask;
3875} CsrWifiSmeEventMaskSetReq;
3876
3877/*******************************************************************************
3878
3879 NAME
3880 CsrWifiSmeHostConfigGetReq
3881
3882 DESCRIPTION
3883 This primitive gets the value of the hostConfig parameter.
3884
3885 MEMBERS
3886 common - Common header for use with the CsrWifiFsm Module
3887 interfaceTag - Interface Identifier; unique identifier of an interface
3888
3889*******************************************************************************/
3890typedef struct
3891{
3892 CsrWifiFsmEvent common;
8c87f69a 3893 u16 interfaceTag;
635d2b00
GKH
3894} CsrWifiSmeHostConfigGetReq;
3895
3896/*******************************************************************************
3897
3898 NAME
3899 CsrWifiSmeHostConfigSetReq
3900
3901 DESCRIPTION
3902 This primitive sets the value of the hostConfig parameter.
3903
3904 MEMBERS
3905 common - Common header for use with the CsrWifiFsm Module
3906 interfaceTag - Interface Identifier; unique identifier of an interface
3907 hostConfig - Communicates a change of host power state (for example, on
3908 mains power, on battery power etc) and of the periodicity of
3909 traffic data
3910
3911*******************************************************************************/
3912typedef struct
3913{
3914 CsrWifiFsmEvent common;
8c87f69a 3915 u16 interfaceTag;
635d2b00
GKH
3916 CsrWifiSmeHostConfig hostConfig;
3917} CsrWifiSmeHostConfigSetReq;
3918
3919/*******************************************************************************
3920
3921 NAME
3922 CsrWifiSmeKeyReq
3923
3924 DESCRIPTION
3925 The wireless manager application calls this primitive to add or remove
3926 keys that the chip should use for encryption of data.
3927 The interface allows the wireless manager application to add and remove
3928 keys according to the specified action.
3929
3930 MEMBERS
3931 common - Common header for use with the CsrWifiFsm Module
3932 interfaceTag - Interface Identifier; unique identifier of an interface
3933 action - The value of the CsrWifiSmeListAction parameter instructs the
3934 driver to modify or provide the list of keys.
3935 CSR_WIFI_SME_LIST_ACTION_GET is not supported here.
3936 key - Key to be added or removed
3937
3938*******************************************************************************/
3939typedef struct
3940{
3941 CsrWifiFsmEvent common;
8c87f69a 3942 u16 interfaceTag;
635d2b00
GKH
3943 CsrWifiSmeListAction action;
3944 CsrWifiSmeKey key;
3945} CsrWifiSmeKeyReq;
3946
3947/*******************************************************************************
3948
3949 NAME
3950 CsrWifiSmeLinkQualityGetReq
3951
3952 DESCRIPTION
3953 This primitive gets the value of the LinkQuality parameter.
3954
3955 MEMBERS
3956 common - Common header for use with the CsrWifiFsm Module
3957 interfaceTag - Interface Identifier; unique identifier of an interface
3958
3959*******************************************************************************/
3960typedef struct
3961{
3962 CsrWifiFsmEvent common;
8c87f69a 3963 u16 interfaceTag;
635d2b00
GKH
3964} CsrWifiSmeLinkQualityGetReq;
3965
3966/*******************************************************************************
3967
3968 NAME
3969 CsrWifiSmeMibConfigGetReq
3970
3971 DESCRIPTION
3972 This primitive gets the value of the MibConfig parameter.
3973
3974 MEMBERS
3975 common - Common header for use with the CsrWifiFsm Module
3976
3977*******************************************************************************/
3978typedef struct
3979{
3980 CsrWifiFsmEvent common;
3981} CsrWifiSmeMibConfigGetReq;
3982
3983/*******************************************************************************
3984
3985 NAME
3986 CsrWifiSmeMibConfigSetReq
3987
3988 DESCRIPTION
3989 This primitive sets the value of the MibConfig parameter.
3990
3991 MEMBERS
3992 common - Common header for use with the CsrWifiFsm Module
3993 mibConfig - Conveys the desired value of various IEEE 802.11 attributes as
3994 currently configured
3995
3996*******************************************************************************/
3997typedef struct
3998{
3999 CsrWifiFsmEvent common;
4000 CsrWifiSmeMibConfig mibConfig;
4001} CsrWifiSmeMibConfigSetReq;
4002
4003/*******************************************************************************
4004
4005 NAME
4006 CsrWifiSmeMibGetNextReq
4007
4008 DESCRIPTION
4009 To read a sequence of MIB parameters, for example a table, call this
4010 primitive to find the name of the next MIB variable
4011
4012 MEMBERS
4013 common - Common header for use with the CsrWifiFsm Module
4014 mibAttributeLength - Length of mibAttribute
4015 mibAttribute - Points to a VarBind or VarBindList containing the
4016 name(s) of the MIB variable(s) to search from.
4017
4018*******************************************************************************/
4019typedef struct
4020{
4021 CsrWifiFsmEvent common;
8c87f69a 4022 u16 mibAttributeLength;
7e6f5794 4023 u8 *mibAttribute;
635d2b00
GKH
4024} CsrWifiSmeMibGetNextReq;
4025
4026/*******************************************************************************
4027
4028 NAME
4029 CsrWifiSmeMibGetReq
4030
4031 DESCRIPTION
4032 The wireless manager application calls this primitive to retrieve one or
4033 more MIB variables.
4034
4035 MEMBERS
4036 common - Common header for use with the CsrWifiFsm Module
4037 mibAttributeLength - Length of mibAttribute
4038 mibAttribute - Points to the VarBind or VarBindList containing the
4039 names of the MIB variables to be retrieved
4040
4041*******************************************************************************/
4042typedef struct
4043{
4044 CsrWifiFsmEvent common;
8c87f69a 4045 u16 mibAttributeLength;
7e6f5794 4046 u8 *mibAttribute;
635d2b00
GKH
4047} CsrWifiSmeMibGetReq;
4048
4049/*******************************************************************************
4050
4051 NAME
4052 CsrWifiSmeMibSetReq
4053
4054 DESCRIPTION
4055 The SME provides raw access to the MIB on the chip, which may be used by
4056 some configuration or diagnostic utilities, but is not normally needed by
4057 the wireless manager application.
4058 The MIB access functions use BER encoded names (OID) of the MIB
4059 parameters and BER encoded values, as described in the chip Host
4060 Interface Protocol Specification.
4061 The MIB parameters are described in 'Wi-Fi 5.0.0 Management Information
4062 Base Reference Guide'.
4063 The wireless manager application calls this primitive to set one or more
4064 MIB variables
4065
4066 MEMBERS
4067 common - Common header for use with the CsrWifiFsm Module
4068 mibAttributeLength - Length of mibAttribute
4069 mibAttribute - Points to the VarBind or VarBindList containing the
4070 names and values of the MIB variables to set
4071
4072*******************************************************************************/
4073typedef struct
4074{
4075 CsrWifiFsmEvent common;
8c87f69a 4076 u16 mibAttributeLength;
7e6f5794 4077 u8 *mibAttribute;
635d2b00
GKH
4078} CsrWifiSmeMibSetReq;
4079
4080/*******************************************************************************
4081
4082 NAME
4083 CsrWifiSmeMulticastAddressReq
4084
4085 DESCRIPTION
4086 The wireless manager application calls this primitive to specify the
4087 multicast addresses which the chip should recognise. The interface allows
4088 the wireless manager application to query, add, remove and flush the
4089 multicast addresses for the network interface according to the specified
4090 action.
4091
4092 MEMBERS
4093 common - Common header for use with the CsrWifiFsm Module
4094 interfaceTag - Interface Identifier; unique identifier of an interface
4095 action - The value of the CsrWifiSmeListAction parameter
4096 instructs the driver to modify or provide the list of
4097 MAC addresses.
4098 setAddressesCount - Number of MAC addresses sent with the primitive
4099 setAddresses - Pointer to the list of MAC Addresses sent with the
4100 primitive, set to NULL if none is sent.
4101
4102*******************************************************************************/
4103typedef struct
4104{
4105 CsrWifiFsmEvent common;
8c87f69a 4106 u16 interfaceTag;
635d2b00 4107 CsrWifiSmeListAction action;
7e6f5794 4108 u8 setAddressesCount;
635d2b00
GKH
4109 CsrWifiMacAddress *setAddresses;
4110} CsrWifiSmeMulticastAddressReq;
4111
4112/*******************************************************************************
4113
4114 NAME
4115 CsrWifiSmePacketFilterSetReq
4116
4117 DESCRIPTION
4118 The wireless manager application should call this primitive to enable or
4119 disable filtering of broadcast packets: uninteresting broadcast packets
4120 will be dropped by the Wi-Fi chip, instead of passing them up to the
4121 host.
4122 This has the advantage of saving power in the host application processor
4123 as it removes the need to process unwanted packets.
4124 All broadcast packets are filtered according to the filter and the filter
4125 mode provided, except ARP packets, which are filtered using
4126 arpFilterAddress.
4127 Filters are not cumulative: only the parameters specified in the most
4128 recent successful request are significant.
4129 For more information, see 'UniFi Firmware API Specification'.
4130
4131 MEMBERS
4132 common - Common header for use with the CsrWifiFsm Module
4133 interfaceTag - Interface Identifier; unique identifier of an interface
4134 filterLength - Length of the filter in bytes.
4135 filterLength=0 disables the filter previously set
4136 filter - Points to the first byte of the filter provided, if any.
4137 This shall include zero or more instance of the
4138 information elements of one of these types
4139 * Traffic Classification (TCLAS) elements
4140 * WMM-SA TCLAS elements
4141 mode - Specifies whether the filter selects or excludes packets
4142 matching the filter
4143 arpFilterAddress - IPv4 address to be used for filtering the ARP packets.
4144 * If the specified address is the IPv4 broadcast address
4145 (255.255.255.255), all ARP packets are reported to the
4146 host,
4147 * If the specified address is NOT the IPv4 broadcast
4148 address, only ARP packets with the specified address in
4149 the Source or Target Protocol Address fields are reported
4150 to the host
4151
4152*******************************************************************************/
4153typedef struct
4154{
4155 CsrWifiFsmEvent common;
8c87f69a
GKH
4156 u16 interfaceTag;
4157 u16 filterLength;
7e6f5794 4158 u8 *filter;
635d2b00
GKH
4159 CsrWifiSmePacketFilterMode mode;
4160 CsrWifiIp4Address arpFilterAddress;
4161} CsrWifiSmePacketFilterSetReq;
4162
4163/*******************************************************************************
4164
4165 NAME
4166 CsrWifiSmePermanentMacAddressGetReq
4167
4168 DESCRIPTION
4169 This primitive retrieves the MAC address stored in EEPROM
4170
4171 MEMBERS
4172 common - Common header for use with the CsrWifiFsm Module
4173
4174*******************************************************************************/
4175typedef struct
4176{
4177 CsrWifiFsmEvent common;
4178} CsrWifiSmePermanentMacAddressGetReq;
4179
4180/*******************************************************************************
4181
4182 NAME
4183 CsrWifiSmePmkidReq
4184
4185 DESCRIPTION
4186 The wireless manager application calls this primitive to request an
4187 operation on the SME PMKID list.
4188 The action argument specifies the operation to perform.
4189 When the connection is complete, the wireless manager application may
4190 then send and receive EAPOL packets to complete WPA or WPA2
4191 authentication if appropriate.
4192 The wireless manager application can then pass the resulting encryption
4193 keys using this primitive.
4194
4195 MEMBERS
4196 common - Common header for use with the CsrWifiFsm Module
4197 interfaceTag - Interface Identifier; unique identifier of an interface
4198 action - The value of the CsrWifiSmeListAction parameter instructs
4199 the driver to modify or provide the list of PMKIDs.
4200 setPmkidsCount - Number of PMKIDs sent with the primitive
4201 setPmkids - Pointer to the list of PMKIDs sent with the primitive, set
4202 to NULL if none is sent.
4203
4204*******************************************************************************/
4205typedef struct
4206{
4207 CsrWifiFsmEvent common;
8c87f69a 4208 u16 interfaceTag;
635d2b00 4209 CsrWifiSmeListAction action;
7e6f5794 4210 u8 setPmkidsCount;
635d2b00
GKH
4211 CsrWifiSmePmkid *setPmkids;
4212} CsrWifiSmePmkidReq;
4213
4214/*******************************************************************************
4215
4216 NAME
4217 CsrWifiSmePowerConfigGetReq
4218
4219 DESCRIPTION
4220 This primitive gets the value of the PowerConfig parameter.
4221
4222 MEMBERS
4223 common - Common header for use with the CsrWifiFsm Module
4224
4225*******************************************************************************/
4226typedef struct
4227{
4228 CsrWifiFsmEvent common;
4229} CsrWifiSmePowerConfigGetReq;
4230
4231/*******************************************************************************
4232
4233 NAME
4234 CsrWifiSmePowerConfigSetReq
4235
4236 DESCRIPTION
4237 This primitive sets the value of the PowerConfig parameter.
4238
4239 MEMBERS
4240 common - Common header for use with the CsrWifiFsm Module
4241 powerConfig - Power saving configuration
4242
4243*******************************************************************************/
4244typedef struct
4245{
4246 CsrWifiFsmEvent common;
4247 CsrWifiSmePowerConfig powerConfig;
4248} CsrWifiSmePowerConfigSetReq;
4249
4250/*******************************************************************************
4251
4252 NAME
4253 CsrWifiSmeRegulatoryDomainInfoGetReq
4254
4255 DESCRIPTION
4256 This primitive gets the value of the RegulatoryDomainInfo parameter.
4257
4258 MEMBERS
4259 common - Common header for use with the CsrWifiFsm Module
4260
4261*******************************************************************************/
4262typedef struct
4263{
4264 CsrWifiFsmEvent common;
4265} CsrWifiSmeRegulatoryDomainInfoGetReq;
4266
4267/*******************************************************************************
4268
4269 NAME
4270 CsrWifiSmeRoamingConfigGetReq
4271
4272 DESCRIPTION
4273 This primitive gets the value of the RoamingConfig parameter.
4274
4275 MEMBERS
4276 common - Common header for use with the CsrWifiFsm Module
4277 interfaceTag - Interface Identifier; unique identifier of an interface
4278
4279*******************************************************************************/
4280typedef struct
4281{
4282 CsrWifiFsmEvent common;
8c87f69a 4283 u16 interfaceTag;
635d2b00
GKH
4284} CsrWifiSmeRoamingConfigGetReq;
4285
4286/*******************************************************************************
4287
4288 NAME
4289 CsrWifiSmeRoamingConfigSetReq
4290
4291 DESCRIPTION
4292 This primitive sets the value of the RoamingConfig parameter.
4293
4294 MEMBERS
4295 common - Common header for use with the CsrWifiFsm Module
4296 interfaceTag - Interface Identifier; unique identifier of an interface
4297 roamingConfig - Desired roaming behaviour values
4298
4299*******************************************************************************/
4300typedef struct
4301{
4302 CsrWifiFsmEvent common;
8c87f69a 4303 u16 interfaceTag;
635d2b00
GKH
4304 CsrWifiSmeRoamingConfig roamingConfig;
4305} CsrWifiSmeRoamingConfigSetReq;
4306
4307/*******************************************************************************
4308
4309 NAME
4310 CsrWifiSmeScanConfigGetReq
4311
4312 DESCRIPTION
4313 This primitive gets the value of the ScanConfig parameter.
4314
4315 MEMBERS
4316 common - Common header for use with the CsrWifiFsm Module
4317
4318*******************************************************************************/
4319typedef struct
4320{
4321 CsrWifiFsmEvent common;
4322} CsrWifiSmeScanConfigGetReq;
4323
4324/*******************************************************************************
4325
4326 NAME
4327 CsrWifiSmeScanConfigSetReq
4328
4329 DESCRIPTION
4330 This primitive sets the value of the ScanConfig parameter.
4331 The SME normally configures the firmware to perform autonomous scanning
4332 without involving the host.
4333 The firmware passes beacon / probe response or indicates loss of beacon
4334 on certain changes of state, for example:
4335 * A new AP is seen for the first time
4336 * An AP is no longer visible
4337 * The signal strength of an AP changes by more than a certain amount, as
4338 configured by the thresholds in the scanConfig parameter
4339 In addition to the autonomous scan, the wireless manager application may
4340 request a scan at any time using CSR_WIFI_SME_SCAN_FULL_REQ.
4341
4342 MEMBERS
4343 common - Common header for use with the CsrWifiFsm Module
4344 scanConfig - Reports the configuration for the autonomous scanning behaviour
4345 of the firmware
4346
4347*******************************************************************************/
4348typedef struct
4349{
4350 CsrWifiFsmEvent common;
4351 CsrWifiSmeScanConfig scanConfig;
4352} CsrWifiSmeScanConfigSetReq;
4353
4354/*******************************************************************************
4355
4356 NAME
4357 CsrWifiSmeScanFullReq
4358
4359 DESCRIPTION
4360 The wireless manager application should call this primitive to request a
4361 full scan.
4362 Channels are scanned actively or passively according to the requirement
4363 set by regulatory domain.
4364 If the SME receives this primitive while a full scan is going on, the new
4365 request is buffered and it will be served after the current full scan is
4366 completed.
4367
4368 MEMBERS
4369 common - Common header for use with the CsrWifiFsm Module
4370 ssidCount - Number of SSIDs provided.
4371 If it is 0, the SME will attempt to detect any network
4372 ssid - Points to the first SSID provided, if any.
4373 bssid - BSS identifier.
4374 If it is equal to FF-FF-FF-FF-FF, the SME will listen for
4375 messages from any BSS.
4376 If it is different from FF-FF-FF-FF-FF and any SSID is
4377 provided, one SSID must match the network of the BSS.
4378 forceScan - Forces the scan even if the SME is in a state which would
4379 normally prevent it (e.g. autonomous scan is running).
4380 bssType - Type of BSS to scan for
4381 scanType - Type of scan to perform
4382 channelListCount - Number of channels provided.
4383 If it is 0, the SME will initiate a scan of all the
4384 supported channels that are permitted by the current
4385 regulatory domain.
4386 channelList - Points to the first channel , or NULL if channelListCount
4387 is zero.
4388 probeIeLength - Length of the information element in bytes to be sent
4389 with the probe message.
4390 probeIe - Points to the first byte of the information element to be
4391 sent with the probe message.
4392
4393*******************************************************************************/
4394typedef struct
4395{
4396 CsrWifiFsmEvent common;
7e6f5794 4397 u8 ssidCount;
635d2b00
GKH
4398 CsrWifiSsid *ssid;
4399 CsrWifiMacAddress bssid;
5379b13d 4400 u8 forceScan;
635d2b00
GKH
4401 CsrWifiSmeBssType bssType;
4402 CsrWifiSmeScanType scanType;
8c87f69a 4403 u16 channelListCount;
7e6f5794 4404 u8 *channelList;
8c87f69a 4405 u16 probeIeLength;
7e6f5794 4406 u8 *probeIe;
635d2b00
GKH
4407} CsrWifiSmeScanFullReq;
4408
4409/*******************************************************************************
4410
4411 NAME
4412 CsrWifiSmeScanResultsFlushReq
4413
4414 DESCRIPTION
4415 The Wireless Manager calls this primitive to ask the SME to delete all
4416 scan results from its cache, except for the scan result of any currently
4417 connected network.
4418 As scan results are received by the SME from the firmware, they are
4419 cached in the SME memory.
4420 Any time the Wireless Manager requests scan results, they are returned
4421 from the SME internal cache.
4422 For some applications it may be desirable to clear this cache prior to
4423 requesting that a scan be performed; this will ensure that the cache then
4424 only contains the networks detected in the most recent scan.
4425
4426 MEMBERS
4427 common - Common header for use with the CsrWifiFsm Module
4428
4429*******************************************************************************/
4430typedef struct
4431{
4432 CsrWifiFsmEvent common;
4433} CsrWifiSmeScanResultsFlushReq;
4434
4435/*******************************************************************************
4436
4437 NAME
4438 CsrWifiSmeScanResultsGetReq
4439
4440 DESCRIPTION
4441 The wireless manager application calls this primitive to retrieve the
4442 current set of scan results, either after receiving a successful
4443 CSR_WIFI_SME_SCAN_FULL_CFM, or to get autonomous scan results.
4444
4445 MEMBERS
4446 common - Common header for use with the CsrWifiFsm Module
4447
4448*******************************************************************************/
4449typedef struct
4450{
4451 CsrWifiFsmEvent common;
4452} CsrWifiSmeScanResultsGetReq;
4453
4454/*******************************************************************************
4455
4456 NAME
4457 CsrWifiSmeSmeStaConfigGetReq
4458
4459 DESCRIPTION
4460 This primitive gets the value of the SmeStaConfig parameter.
4461
4462 MEMBERS
4463 common - Common header for use with the CsrWifiFsm Module
4464 interfaceTag - Interface Identifier; unique identifier of an interface
4465
4466*******************************************************************************/
4467typedef struct
4468{
4469 CsrWifiFsmEvent common;
8c87f69a 4470 u16 interfaceTag;
635d2b00
GKH
4471} CsrWifiSmeSmeStaConfigGetReq;
4472
4473/*******************************************************************************
4474
4475 NAME
4476 CsrWifiSmeSmeStaConfigSetReq
4477
4478 DESCRIPTION
4479 This primitive sets the value of the SmeConfig parameter.
4480
4481 MEMBERS
4482 common - Common header for use with the CsrWifiFsm Module
4483 interfaceTag - Interface Identifier; unique identifier of an interface
4484 smeConfig - SME Station Parameters to be set
4485
4486*******************************************************************************/
4487typedef struct
4488{
4489 CsrWifiFsmEvent common;
8c87f69a 4490 u16 interfaceTag;
635d2b00
GKH
4491 CsrWifiSmeStaConfig smeConfig;
4492} CsrWifiSmeSmeStaConfigSetReq;
4493
4494/*******************************************************************************
4495
4496 NAME
4497 CsrWifiSmeStationMacAddressGetReq
4498
4499 DESCRIPTION
4500 This primitives is used to retrieve the current MAC address used by the
4501 station.
4502
4503 MEMBERS
4504 common - Common header for use with the CsrWifiFsm Module
4505
4506*******************************************************************************/
4507typedef struct
4508{
4509 CsrWifiFsmEvent common;
4510} CsrWifiSmeStationMacAddressGetReq;
4511
4512/*******************************************************************************
4513
4514 NAME
4515 CsrWifiSmeTspecReq
4516
4517 DESCRIPTION
4518 The wireless manager application should call this primitive to use the
4519 TSPEC feature.
4520 The chip supports the use of TSPECs and TCLAS for the use of IEEE
4521 802.11/WMM Quality of Service features.
4522 The API allows the wireless manager application to supply a correctly
4523 formatted TSPEC and TCLAS pair to the driver.
4524 After performing basic validation, the driver negotiates the installation
4525 of the TSPEC with the AP as defined by the 802.11 specification.
4526 The driver retains all TSPEC and TCLAS pairs until they are specifically
4527 removed.
4528 It is not compulsory for a TSPEC to have a TCLAS (NULL is used to
4529 indicate that no TCLAS is supplied), while a TCLASS always require a
4530 TSPEC.
4531 The format of the TSPEC element is specified in 'WMM (including WMM Power
4532 Save) Specification - Version 1.1' and 'ANSI/IEEE Std 802.11-REVmb/D3.0'.
4533 For more information, see 'UniFi Configuring WMM and WMM-PS'.
4534
4535 MEMBERS
4536 common - Common header for use with the CsrWifiFsm Module
4537 interfaceTag - Interface Identifier; unique identifier of an interface
4538 action - Specifies the action to be carried out on the list of TSPECs.
4539 CSR_WIFI_SME_LIST_ACTION_FLUSH is not applicable here.
4540 transactionId - Unique Transaction ID for the TSPEC, as assigned by the
4541 driver
4542 strict - If it set to false, allows the SME to perform automatic
4543 TSPEC negotiation
4544 ctrlMask - Additional TSPEC configuration for CCX.
4545 Set mask with values from CsrWifiSmeTspecCtrl.
4546 CURRENTLY NOT SUPPORTED
4547 tspecLength - Length of the TSPEC.
4548 tspec - Points to the first byte of the TSPEC
4549 tclasLength - Length of the TCLAS.
4550 If it is equal to 0, no TCLASS is provided for the TSPEC
4551 tclas - Points to the first byte of the TCLAS, if any.
4552
4553*******************************************************************************/
4554typedef struct
4555{
4556 CsrWifiFsmEvent common;
8c87f69a 4557 u16 interfaceTag;
635d2b00 4558 CsrWifiSmeListAction action;
26a6b2e1 4559 u32 transactionId;
5379b13d 4560 u8 strict;
635d2b00 4561 CsrWifiSmeTspecCtrlMask ctrlMask;
8c87f69a 4562 u16 tspecLength;
7e6f5794 4563 u8 *tspec;
8c87f69a 4564 u16 tclasLength;
7e6f5794 4565 u8 *tclas;
635d2b00
GKH
4566} CsrWifiSmeTspecReq;
4567
4568/*******************************************************************************
4569
4570 NAME
4571 CsrWifiSmeVersionsGetReq
4572
4573 DESCRIPTION
4574 This primitive gets the value of the Versions parameter.
4575
4576 MEMBERS
4577 common - Common header for use with the CsrWifiFsm Module
4578
4579*******************************************************************************/
4580typedef struct
4581{
4582 CsrWifiFsmEvent common;
4583} CsrWifiSmeVersionsGetReq;
4584
4585/*******************************************************************************
4586
4587 NAME
4588 CsrWifiSmeWifiFlightmodeReq
4589
4590 DESCRIPTION
4591 The wireless manager application may call this primitive on boot-up of
4592 the platform to ensure that the chip is placed in a mode that prevents
4593 any emission of RF energy.
4594 This primitive is an alternative to CSR_WIFI_SME_WIFI_ON_REQ.
4595 As in CSR_WIFI_SME_WIFI_ON_REQ, it causes the download of the patch file
4596 (if any) and the programming of the initial MIB settings (if supplied by
4597 the WMA), but it also ensures that the chip is left in its lowest
4598 possible power-mode with the radio subsystems disabled.
4599 This feature is useful on platforms where power cannot be removed from
4600 the chip (leaving the chip not initialised will cause it to consume more
4601 power so calling this function ensures that the chip is initialised into
4602 a low power mode but without entering a state where it could emit any RF
4603 energy).
4604 NOTE: this primitive does not cause the Wi-Fi to change state: Wi-Fi
4605 stays conceptually off. Configuration primitives can be sent after
4606 CSR_WIFI_SME_WIFI_FLIGHTMODE_REQ and the configuration will be maintained.
4607 Requests that require the state of the Wi-Fi to be ON will return
4608 CSR_WIFI_SME_STATUS_WIFI_OFF in their confirms.
4609
4610 MEMBERS
4611 common - Common header for use with the CsrWifiFsm Module
4612 address - Optionally specifies a station MAC address.
4613 In normal use, the manager should set the address to 0xFF
4614 0xFF 0xFF 0xFF 0xFF 0xFF, which will cause the chip to use
4615 the MAC address in the MIB.
4616 mibFilesCount - Number of provided data blocks with initial MIB values
4617 mibFiles - Points to the first data block with initial MIB values.
4618 These data blocks are typically the contents of the provided
4619 files ufmib.dat and localmib.dat, available from the host
4620 file system, if they exist.
4621 These files typically contain radio tuning and calibration
4622 values.
4623 More values can be created using the Host Tools.
4624
4625*******************************************************************************/
4626typedef struct
4627{
4628 CsrWifiFsmEvent common;
4629 CsrWifiMacAddress address;
8c87f69a 4630 u16 mibFilesCount;
635d2b00
GKH
4631 CsrWifiSmeDataBlock *mibFiles;
4632} CsrWifiSmeWifiFlightmodeReq;
4633
4634/*******************************************************************************
4635
4636 NAME
4637 CsrWifiSmeWifiOffReq
4638
4639 DESCRIPTION
4640 The wireless manager application calls this primitive to turn off the
4641 chip, thus saving power when Wi-Fi is not in use.
4642
4643 MEMBERS
4644 common - Common header for use with the CsrWifiFsm Module
4645
4646*******************************************************************************/
4647typedef struct
4648{
4649 CsrWifiFsmEvent common;
4650} CsrWifiSmeWifiOffReq;
4651
4652/*******************************************************************************
4653
4654 NAME
4655 CsrWifiSmeWifiOnReq
4656
4657 DESCRIPTION
4658 The wireless manager application calls this primitive to turn on the
4659 Wi-Fi chip.
4660 If the Wi-Fi chip is currently off, the SME turns the Wi-Fi chip on,
4661 downloads the patch file (if any), and programs the initial MIB settings
4662 (if supplied by the WMA).
4663 The patch file is not provided with the SME API; its downloading is
4664 automatic and handled internally by the system.
4665 The MIB settings, when provided, override the default values that the
4666 firmware loads from EEPROM.
4667 If the Wi-Fi chip is already on, the SME takes no action and returns a
4668 successful status in the confirm.
4669
4670 MEMBERS
4671 common - Common header for use with the CsrWifiFsm Module
4672 address - Optionally specifies a station MAC address.
4673 In normal use, the manager should set the address to 0xFF
4674 0xFF 0xFF 0xFF 0xFF 0xFF, which will cause the chip to use
4675 the MAC address in the MIB
4676 mibFilesCount - Number of provided data blocks with initial MIB values
4677 mibFiles - Points to the first data block with initial MIB values.
4678 These data blocks are typically the contents of the provided
4679 files ufmib.dat and localmib.dat, available from the host
4680 file system, if they exist.
4681 These files typically contain radio tuning and calibration
4682 values.
4683 More values can be created using the Host Tools.
4684
4685*******************************************************************************/
4686typedef struct
4687{
4688 CsrWifiFsmEvent common;
4689 CsrWifiMacAddress address;
8c87f69a 4690 u16 mibFilesCount;
635d2b00
GKH
4691 CsrWifiSmeDataBlock *mibFiles;
4692} CsrWifiSmeWifiOnReq;
4693
4694/*******************************************************************************
4695
4696 NAME
4697 CsrWifiSmeCloakedSsidsSetReq
4698
4699 DESCRIPTION
4700 This primitive sets the list of cloaked SSIDs for which the WMA possesses
4701 profiles.
4702 When the driver detects a cloaked AP, the SME will explicitly scan for it
4703 using the list of cloaked SSIDs provided it, and, if the scan succeeds,
4704 it will report the AP to the WMA either via CSR_WIFI_SME_SCAN_RESULT_IND
4705 (if registered) or via CSR_WIFI_SCAN_RESULT_GET_CFM.
4706
4707 MEMBERS
4708 common - Common header for use with the CsrWifiFsm Module
4709 cloakedSsids - Sets the list of cloaked SSIDs
4710
4711*******************************************************************************/
4712typedef struct
4713{
4714 CsrWifiFsmEvent common;
4715 CsrWifiSmeCloakedSsidConfig cloakedSsids;
4716} CsrWifiSmeCloakedSsidsSetReq;
4717
4718/*******************************************************************************
4719
4720 NAME
4721 CsrWifiSmeCloakedSsidsGetReq
4722
4723 DESCRIPTION
4724 This primitive gets the value of the CloakedSsids parameter.
4725
4726 MEMBERS
4727 common - Common header for use with the CsrWifiFsm Module
4728
4729*******************************************************************************/
4730typedef struct
4731{
4732 CsrWifiFsmEvent common;
4733} CsrWifiSmeCloakedSsidsGetReq;
4734
4735/*******************************************************************************
4736
4737 NAME
4738 CsrWifiSmeSmeCommonConfigGetReq
4739
4740 DESCRIPTION
4741 This primitive gets the value of the Sme common parameter.
4742
4743 MEMBERS
4744 common - Common header for use with the CsrWifiFsm Module
4745
4746*******************************************************************************/
4747typedef struct
4748{
4749 CsrWifiFsmEvent common;
4750} CsrWifiSmeSmeCommonConfigGetReq;
4751
4752/*******************************************************************************
4753
4754 NAME
4755 CsrWifiSmeSmeCommonConfigSetReq
4756
4757 DESCRIPTION
4758 This primitive sets the value of the Sme common.
4759
4760 MEMBERS
4761 common - Common header for use with the CsrWifiFsm Module
4762 deviceConfig - Configuration options in the SME
4763
4764*******************************************************************************/
4765typedef struct
4766{
4767 CsrWifiFsmEvent common;
4768 CsrWifiSmeDeviceConfig deviceConfig;
4769} CsrWifiSmeSmeCommonConfigSetReq;
4770
4771/*******************************************************************************
4772
4773 NAME
4774 CsrWifiSmeInterfaceCapabilityGetReq
4775
4776 DESCRIPTION
4777 The Wireless Manager calls this primitive to ask the SME for the
4778 capabilities of the supported interfaces
4779
4780 MEMBERS
4781 common - Common header for use with the CsrWifiFsm Module
4782
4783*******************************************************************************/
4784typedef struct
4785{
4786 CsrWifiFsmEvent common;
4787} CsrWifiSmeInterfaceCapabilityGetReq;
4788
4789/*******************************************************************************
4790
4791 NAME
4792 CsrWifiSmeWpsConfigurationReq
4793
4794 DESCRIPTION
4795 This primitive passes the WPS information for the device to SME. This may
4796 be accepted only if no interface is active.
4797
4798 MEMBERS
4799 common - Common header for use with the CsrWifiFsm Module
4800 wpsConfig - WPS config.
4801
4802*******************************************************************************/
4803typedef struct
4804{
4805 CsrWifiFsmEvent common;
4806 CsrWifiSmeWpsConfig wpsConfig;
4807} CsrWifiSmeWpsConfigurationReq;
4808
95edd09e
GKH
4809/*******************************************************************************
4810
4811 NAME
4812 CsrWifiSmeSetReq
4813
4814 DESCRIPTION
4815 Used to pass custom data to the SME. Format is the same as 802.11 Info
4816 Elements => | Id | Length | Data
4817 1) Cmanr Test Mode "Id:0 Length:1 Data:0x00 = OFF 0x01 = ON" "0x00 0x01
4818 (0x00|0x01)"
4819
4820 MEMBERS
4821 common - Common header for use with the CsrWifiFsm Module
4822 dataLength - Number of bytes in the buffer pointed to by 'data'
4823 data - Pointer to the buffer containing 'dataLength' bytes
4824
4825*******************************************************************************/
4826typedef struct
4827{
4828 CsrWifiFsmEvent common;
26a6b2e1 4829 u32 dataLength;
7e6f5794 4830 u8 *data;
95edd09e
GKH
4831} CsrWifiSmeSetReq;
4832
635d2b00
GKH
4833/*******************************************************************************
4834
4835 NAME
4836 CsrWifiSmeActivateCfm
4837
4838 DESCRIPTION
4839 The SME sends this primitive when the activation is complete.
4840
4841 MEMBERS
4842 common - Common header for use with the CsrWifiFsm Module
4843 status - Reports the result of the request
4844
4845*******************************************************************************/
4846typedef struct
4847{
4848 CsrWifiFsmEvent common;
4849 CsrResult status;
4850} CsrWifiSmeActivateCfm;
4851
4852/*******************************************************************************
4853
4854 NAME
4855 CsrWifiSmeAdhocConfigGetCfm
4856
4857 DESCRIPTION
4858 This primitive reports the result of the request.
4859
4860 MEMBERS
4861 common - Common header for use with the CsrWifiFsm Module
4862 status - Reports the result of the request
4863 adHocConfig - Contains the values used when starting an Ad-hoc (IBSS)
4864 connection.
4865
4866*******************************************************************************/
4867typedef struct
4868{
4869 CsrWifiFsmEvent common;
4870 CsrResult status;
4871 CsrWifiSmeAdHocConfig adHocConfig;
4872} CsrWifiSmeAdhocConfigGetCfm;
4873
4874/*******************************************************************************
4875
4876 NAME
4877 CsrWifiSmeAdhocConfigSetCfm
4878
4879 DESCRIPTION
4880 This primitive reports the result of the request.
4881
4882 MEMBERS
4883 common - Common header for use with the CsrWifiFsm Module
4884 status - Reports the result of the request
4885
4886*******************************************************************************/
4887typedef struct
4888{
4889 CsrWifiFsmEvent common;
4890 CsrResult status;
4891} CsrWifiSmeAdhocConfigSetCfm;
4892
4893/*******************************************************************************
4894
4895 NAME
4896 CsrWifiSmeAssociationCompleteInd
4897
4898 DESCRIPTION
4899 The SME will send this primitive to all the tasks that have registered to
4900 receive it whenever it completes an attempt to associate with an AP. If
4901 the association was successful, status will be set to
4902 CSR_WIFI_SME_STATUS_SUCCESS, otherwise status and deauthReason shall be
4903 set to appropriate error codes.
4904
4905 MEMBERS
4906 common - Common header for use with the CsrWifiFsm Module
4907 interfaceTag - Interface Identifier; unique identifier of an interface
4908 status - Reports the result of the association procedure
4909 connectionInfo - This parameter is relevant only if result is
4910 CSR_WIFI_SME_STATUS_SUCCESS:
4911 it points to the connection information for the new network
4912 deauthReason - This parameter is relevant only if result is not
4913 CSR_WIFI_SME_STATUS_SUCCESS:
4914 if the AP deauthorised the station, it gives the reason of
4915 the deauthorization
4916
4917*******************************************************************************/
4918typedef struct
4919{
4920 CsrWifiFsmEvent common;
8c87f69a 4921 u16 interfaceTag;
635d2b00
GKH
4922 CsrResult status;
4923 CsrWifiSmeConnectionInfo connectionInfo;
4924 CsrWifiSmeIEEE80211Reason deauthReason;
4925} CsrWifiSmeAssociationCompleteInd;
4926
4927/*******************************************************************************
4928
4929 NAME
4930 CsrWifiSmeAssociationStartInd
4931
4932 DESCRIPTION
4933 The SME will send this primitive to all the tasks that have registered to
4934 receive it whenever it begins an attempt to associate with an AP.
4935
4936 MEMBERS
4937 common - Common header for use with the CsrWifiFsm Module
4938 interfaceTag - Interface Identifier; unique identifier of an interface
4939 address - BSSID of the associating network
4940 ssid - Service Set identifier of the associating network
4941
4942*******************************************************************************/
4943typedef struct
4944{
4945 CsrWifiFsmEvent common;
8c87f69a 4946 u16 interfaceTag;
635d2b00
GKH
4947 CsrWifiMacAddress address;
4948 CsrWifiSsid ssid;
4949} CsrWifiSmeAssociationStartInd;
4950
4951/*******************************************************************************
4952
4953 NAME
4954 CsrWifiSmeBlacklistCfm
4955
4956 DESCRIPTION
4957 The SME will call this primitive when the action on the blacklist has
4958 completed. For a GET action, this primitive also reports the list of
4959 BBSIDs in the blacklist.
4960
4961 MEMBERS
4962 common - Common header for use with the CsrWifiFsm Module
4963 interfaceTag - Interface Identifier; unique identifier of an interface
4964 status - Reports the result of the request
4965 action - Action in the request
4966 getAddressCount - This parameter is only relevant if action is
4967 CSR_WIFI_SME_LIST_ACTION_GET:
4968 number of BSSIDs sent with this primitive
4969 getAddresses - Pointer to the list of BBSIDs sent with the primitive, set
4970 to NULL if none is sent.
4971
4972*******************************************************************************/
4973typedef struct
4974{
4975 CsrWifiFsmEvent common;
8c87f69a 4976 u16 interfaceTag;
635d2b00
GKH
4977 CsrResult status;
4978 CsrWifiSmeListAction action;
7e6f5794 4979 u8 getAddressCount;
635d2b00
GKH
4980 CsrWifiMacAddress *getAddresses;
4981} CsrWifiSmeBlacklistCfm;
4982
4983/*******************************************************************************
4984
4985 NAME
4986 CsrWifiSmeCalibrationDataGetCfm
4987
4988 DESCRIPTION
4989 This primitive reports the result of the request.
4990
4991 MEMBERS
4992 common - Common header for use with the CsrWifiFsm Module
4993 status - Reports the result of the request
4994 calibrationDataLength - Number of bytes in the buffer pointed by
4995 calibrationData
4996 calibrationData - Pointer to a buffer of length calibrationDataLength
4997 containing the calibration data
4998
4999*******************************************************************************/
5000typedef struct
5001{
5002 CsrWifiFsmEvent common;
5003 CsrResult status;
8c87f69a 5004 u16 calibrationDataLength;
7e6f5794 5005 u8 *calibrationData;
635d2b00
GKH
5006} CsrWifiSmeCalibrationDataGetCfm;
5007
5008/*******************************************************************************
5009
5010 NAME
5011 CsrWifiSmeCalibrationDataSetCfm
5012
5013 DESCRIPTION
5014 This primitive reports the result of the request.
5015
5016 MEMBERS
5017 common - Common header for use with the CsrWifiFsm Module
5018 status - Reports the result of the request
5019
5020*******************************************************************************/
5021typedef struct
5022{
5023 CsrWifiFsmEvent common;
5024 CsrResult status;
5025} CsrWifiSmeCalibrationDataSetCfm;
5026
5027/*******************************************************************************
5028
5029 NAME
5030 CsrWifiSmeCcxConfigGetCfm
5031
5032 DESCRIPTION
5033 This primitive reports the result of the request.
5034
5035 MEMBERS
5036 common - Common header for use with the CsrWifiFsm Module
5037 interfaceTag - Interface Identifier; unique identifier of an interface
5038 status - Reports the result of the request
5039 ccxConfig - Currently not supported
5040
5041*******************************************************************************/
5042typedef struct
5043{
5044 CsrWifiFsmEvent common;
8c87f69a 5045 u16 interfaceTag;
635d2b00
GKH
5046 CsrResult status;
5047 CsrWifiSmeCcxConfig ccxConfig;
5048} CsrWifiSmeCcxConfigGetCfm;
5049
5050/*******************************************************************************
5051
5052 NAME
5053 CsrWifiSmeCcxConfigSetCfm
5054
5055 DESCRIPTION
5056 This primitive reports the result of the request.
5057
5058 MEMBERS
5059 common - Common header for use with the CsrWifiFsm Module
5060 interfaceTag - Interface Identifier; unique identifier of an interface
5061 status - Reports the result of the request
5062
5063*******************************************************************************/
5064typedef struct
5065{
5066 CsrWifiFsmEvent common;
8c87f69a 5067 u16 interfaceTag;
635d2b00
GKH
5068 CsrResult status;
5069} CsrWifiSmeCcxConfigSetCfm;
5070
5071/*******************************************************************************
5072
5073 NAME
5074 CsrWifiSmeCoexConfigGetCfm
5075
5076 DESCRIPTION
5077 This primitive reports the result of the request.
5078
5079 MEMBERS
5080 common - Common header for use with the CsrWifiFsm Module
5081 status - Reports the result of the request
5082 coexConfig - Reports the parameters used to configure the coexistence
5083 behaviour
5084
5085*******************************************************************************/
5086typedef struct
5087{
5088 CsrWifiFsmEvent common;
5089 CsrResult status;
5090 CsrWifiSmeCoexConfig coexConfig;
5091} CsrWifiSmeCoexConfigGetCfm;
5092
5093/*******************************************************************************
5094
5095 NAME
5096 CsrWifiSmeCoexConfigSetCfm
5097
5098 DESCRIPTION
5099 This primitive reports the result of the request.
5100
5101 MEMBERS
5102 common - Common header for use with the CsrWifiFsm Module
5103 status - Reports the result of the request
5104
5105*******************************************************************************/
5106typedef struct
5107{
5108 CsrWifiFsmEvent common;
5109 CsrResult status;
5110} CsrWifiSmeCoexConfigSetCfm;
5111
5112/*******************************************************************************
5113
5114 NAME
5115 CsrWifiSmeCoexInfoGetCfm
5116
5117 DESCRIPTION
5118 This primitive reports the result of the request.
5119
5120 MEMBERS
5121 common - Common header for use with the CsrWifiFsm Module
5122 status - Reports the result of the request
5123 coexInfo - Reports information and state related to coexistence.
5124
5125*******************************************************************************/
5126typedef struct
5127{
5128 CsrWifiFsmEvent common;
5129 CsrResult status;
5130 CsrWifiSmeCoexInfo coexInfo;
5131} CsrWifiSmeCoexInfoGetCfm;
5132
5133/*******************************************************************************
5134
5135 NAME
5136 CsrWifiSmeConnectCfm
5137
5138 DESCRIPTION
5139 The SME calls this primitive when the connection exchange is complete or
5140 all connection attempts fail.
5141
5142 MEMBERS
5143 common - Common header for use with the CsrWifiFsm Module
5144 interfaceTag - Interface Identifier; unique identifier of an interface
5145 status - Reports the result of the request.
5146 CSR_WIFI_SME_STATUS_NOT_FOUND: all attempts by the SME to
5147 locate the requested AP failed
5148
5149*******************************************************************************/
5150typedef struct
5151{
5152 CsrWifiFsmEvent common;
8c87f69a 5153 u16 interfaceTag;
635d2b00
GKH
5154 CsrResult status;
5155} CsrWifiSmeConnectCfm;
5156
5157/*******************************************************************************
5158
5159 NAME
5160 CsrWifiSmeConnectionConfigGetCfm
5161
5162 DESCRIPTION
5163 This primitive reports the result of the request.
5164
5165 MEMBERS
5166 common - Common header for use with the CsrWifiFsm Module
5167 interfaceTag - Interface Identifier; unique identifier of an interface
5168 status - Reports the result of the request
5169 connectionConfig - Parameters used by the SME for selecting a network
5170
5171*******************************************************************************/
5172typedef struct
5173{
5174 CsrWifiFsmEvent common;
8c87f69a 5175 u16 interfaceTag;
635d2b00
GKH
5176 CsrResult status;
5177 CsrWifiSmeConnectionConfig connectionConfig;
5178} CsrWifiSmeConnectionConfigGetCfm;
5179
5180/*******************************************************************************
5181
5182 NAME
5183 CsrWifiSmeConnectionInfoGetCfm
5184
5185 DESCRIPTION
5186 This primitive reports the result of the request.
5187
5188 MEMBERS
5189 common - Common header for use with the CsrWifiFsm Module
5190 interfaceTag - Interface Identifier; unique identifier of an interface
5191 status - Reports the result of the request
5192 connectionInfo - Information about the current connection
5193
5194*******************************************************************************/
5195typedef struct
5196{
5197 CsrWifiFsmEvent common;
8c87f69a 5198 u16 interfaceTag;
635d2b00
GKH
5199 CsrResult status;
5200 CsrWifiSmeConnectionInfo connectionInfo;
5201} CsrWifiSmeConnectionInfoGetCfm;
5202
5203/*******************************************************************************
5204
5205 NAME
5206 CsrWifiSmeConnectionQualityInd
5207
5208 DESCRIPTION
5209 The SME sends this primitive to all the tasks that have registered to
5210 receive it whenever the value of the current connection quality
5211 parameters change by more than a certain configurable amount.
5212 The wireless manager application may configure the trigger thresholds for
5213 this indication using the field in smeConfig parameter of
5214 CSR_WIFI_SME_SME_CONFIG_SET_REQ.
5215 Connection quality messages can be suppressed by setting both thresholds
5216 to zero.
5217
5218 MEMBERS
5219 common - Common header for use with the CsrWifiFsm Module
5220 interfaceTag - Interface Identifier; unique identifier of an interface
5221 linkQuality - Indicates the quality of the link
5222
5223*******************************************************************************/
5224typedef struct
5225{
5226 CsrWifiFsmEvent common;
8c87f69a 5227 u16 interfaceTag;
635d2b00
GKH
5228 CsrWifiSmeLinkQuality linkQuality;
5229} CsrWifiSmeConnectionQualityInd;
5230
5231/*******************************************************************************
5232
5233 NAME
5234 CsrWifiSmeConnectionStatsGetCfm
5235
5236 DESCRIPTION
5237 This primitive reports the result of the request.
5238
5239 MEMBERS
5240 common - Common header for use with the CsrWifiFsm Module
5241 interfaceTag - Interface Identifier; unique identifier of an interface
5242 status - Reports the result of the request
5243 connectionStats - Statistics for current connection.
5244
5245*******************************************************************************/
5246typedef struct
5247{
5248 CsrWifiFsmEvent common;
8c87f69a 5249 u16 interfaceTag;
635d2b00
GKH
5250 CsrResult status;
5251 CsrWifiSmeConnectionStats connectionStats;
5252} CsrWifiSmeConnectionStatsGetCfm;
5253
5254/*******************************************************************************
5255
5256 NAME
5257 CsrWifiSmeDeactivateCfm
5258
5259 DESCRIPTION
5260 The SME sends this primitive when the deactivation is complete.
5261 The WMA cannot send any more primitives until it actives the SME again
5262 sending another CSR_WIFI_SME_ACTIVATE_REQ.
5263
5264 MEMBERS
5265 common - Common header for use with the CsrWifiFsm Module
5266 status - Reports the result of the request
5267
5268*******************************************************************************/
5269typedef struct
5270{
5271 CsrWifiFsmEvent common;
5272 CsrResult status;
5273} CsrWifiSmeDeactivateCfm;
5274
5275/*******************************************************************************
5276
5277 NAME
5278 CsrWifiSmeDisconnectCfm
5279
5280 DESCRIPTION
5281 On reception of CSR_WIFI_SME_DISCONNECT_REQ the SME will perform a
5282 disconnect operation, sending a CsrWifiSmeMediaStatusInd with
5283 CSR_WIFI_SME_MEDIA_STATUS_DISCONNECTED and then call this primitive when
5284 disconnection is complete.
5285
5286 MEMBERS
5287 common - Common header for use with the CsrWifiFsm Module
5288 interfaceTag - Interface Identifier; unique identifier of an interface
5289 status - Reports the result of the request
5290
5291*******************************************************************************/
5292typedef struct
5293{
5294 CsrWifiFsmEvent common;
8c87f69a 5295 u16 interfaceTag;
635d2b00
GKH
5296 CsrResult status;
5297} CsrWifiSmeDisconnectCfm;
5298
5299/*******************************************************************************
5300
5301 NAME
5302 CsrWifiSmeEventMaskSetCfm
5303
5304 DESCRIPTION
5305 The SME calls the primitive to report the result of the request
5306 primitive.
5307
5308 MEMBERS
5309 common - Common header for use with the CsrWifiFsm Module
5310 status - Reports the result of the request
5311
5312*******************************************************************************/
5313typedef struct
5314{
5315 CsrWifiFsmEvent common;
5316 CsrResult status;
5317} CsrWifiSmeEventMaskSetCfm;
5318
5319/*******************************************************************************
5320
5321 NAME
5322 CsrWifiSmeHostConfigGetCfm
5323
5324 DESCRIPTION
5325 This primitive reports the result of the request.
5326
5327 MEMBERS
5328 common - Common header for use with the CsrWifiFsm Module
5329 interfaceTag - Interface Identifier; unique identifier of an interface
5330 status - Reports the result of the request
5331 hostConfig - Current host power state.
5332
5333*******************************************************************************/
5334typedef struct
5335{
5336 CsrWifiFsmEvent common;
8c87f69a 5337 u16 interfaceTag;
635d2b00
GKH
5338 CsrResult status;
5339 CsrWifiSmeHostConfig hostConfig;
5340} CsrWifiSmeHostConfigGetCfm;
5341
5342/*******************************************************************************
5343
5344 NAME
5345 CsrWifiSmeHostConfigSetCfm
5346
5347 DESCRIPTION
5348 This primitive reports the result of the request.
5349
5350 MEMBERS
5351 common - Common header for use with the CsrWifiFsm Module
5352 interfaceTag - Interface Identifier; unique identifier of an interface
5353 status - Reports the result of the request
5354
5355*******************************************************************************/
5356typedef struct
5357{
5358 CsrWifiFsmEvent common;
8c87f69a 5359 u16 interfaceTag;
635d2b00
GKH
5360 CsrResult status;
5361} CsrWifiSmeHostConfigSetCfm;
5362
5363/*******************************************************************************
5364
5365 NAME
5366 CsrWifiSmeIbssStationInd
5367
5368 DESCRIPTION
5369 The SME will send this primitive to indicate that a station has joined or
5370 left the ad-hoc network.
5371
5372 MEMBERS
5373 common - Common header for use with the CsrWifiFsm Module
5374 address - MAC address of the station that has joined or left
5375 isconnected - TRUE if the station joined, FALSE if the station left
5376
5377*******************************************************************************/
5378typedef struct
5379{
5380 CsrWifiFsmEvent common;
5381 CsrWifiMacAddress address;
5379b13d 5382 u8 isconnected;
635d2b00
GKH
5383} CsrWifiSmeIbssStationInd;
5384
5385/*******************************************************************************
5386
5387 NAME
5388 CsrWifiSmeKeyCfm
5389
5390 DESCRIPTION
5391 The SME calls the primitive to report the result of the request
5392 primitive.
5393
5394 MEMBERS
5395 common - Common header for use with the CsrWifiFsm Module
5396 interfaceTag - Interface Identifier; unique identifier of an interface
5397 status - Reports the result of the request
5398 action - Action in the request
5399 keyType - Type of the key added/deleted
5400 peerMacAddress - Peer MAC Address of the key added/deleted
5401
5402*******************************************************************************/
5403typedef struct
5404{
5405 CsrWifiFsmEvent common;
8c87f69a 5406 u16 interfaceTag;
635d2b00
GKH
5407 CsrResult status;
5408 CsrWifiSmeListAction action;
5409 CsrWifiSmeKeyType keyType;
5410 CsrWifiMacAddress peerMacAddress;
5411} CsrWifiSmeKeyCfm;
5412
5413/*******************************************************************************
5414
5415 NAME
5416 CsrWifiSmeLinkQualityGetCfm
5417
5418 DESCRIPTION
5419 This primitive reports the result of the request.
5420
5421 MEMBERS
5422 common - Common header for use with the CsrWifiFsm Module
5423 interfaceTag - Interface Identifier; unique identifier of an interface
5424 status - Reports the result of the request
5425 linkQuality - Indicates the quality of the link
5426
5427*******************************************************************************/
5428typedef struct
5429{
5430 CsrWifiFsmEvent common;
8c87f69a 5431 u16 interfaceTag;
635d2b00
GKH
5432 CsrResult status;
5433 CsrWifiSmeLinkQuality linkQuality;
5434} CsrWifiSmeLinkQualityGetCfm;
5435
5436/*******************************************************************************
5437
5438 NAME
5439 CsrWifiSmeMediaStatusInd
5440
5441 DESCRIPTION
5442 The SME sends this primitive to all the tasks that have registered to
5443 receive it when a network connection is established, lost or has moved to
5444 another AP.
5445
5446 MEMBERS
5447 common - Common header for use with the CsrWifiFsm Module
5448 interfaceTag - Interface Identifier; unique identifier of an interface
5449 mediaStatus - Indicates the media status
5450 connectionInfo - This parameter is relevant only if the mediaStatus is
5451 CSR_WIFI_SME_MEDIA_STATUS_CONNECTED:
5452 it points to the connection information for the new network
5453 disassocReason - This parameter is relevant only if the mediaStatus is
5454 CSR_WIFI_SME_MEDIA_STATUS_DISCONNECTED:
5455 if a disassociation has occurred it gives the reason of the
5456 disassociation
5457 deauthReason - This parameter is relevant only if the mediaStatus is
5458 CSR_WIFI_SME_MEDIA_STATUS_DISCONNECTED:
5459 if a deauthentication has occurred it gives the reason of
5460 the deauthentication
5461
5462*******************************************************************************/
5463typedef struct
5464{
5465 CsrWifiFsmEvent common;
8c87f69a 5466 u16 interfaceTag;
635d2b00
GKH
5467 CsrWifiSmeMediaStatus mediaStatus;
5468 CsrWifiSmeConnectionInfo connectionInfo;
5469 CsrWifiSmeIEEE80211Reason disassocReason;
5470 CsrWifiSmeIEEE80211Reason deauthReason;
5471} CsrWifiSmeMediaStatusInd;
5472
5473/*******************************************************************************
5474
5475 NAME
5476 CsrWifiSmeMibConfigGetCfm
5477
5478 DESCRIPTION
5479 This primitive reports the result of the request.
5480
5481 MEMBERS
5482 common - Common header for use with the CsrWifiFsm Module
5483 status - Reports the result of the request
5484 mibConfig - Reports various IEEE 802.11 attributes as currently configured
5485
5486*******************************************************************************/
5487typedef struct
5488{
5489 CsrWifiFsmEvent common;
5490 CsrResult status;
5491 CsrWifiSmeMibConfig mibConfig;
5492} CsrWifiSmeMibConfigGetCfm;
5493
5494/*******************************************************************************
5495
5496 NAME
5497 CsrWifiSmeMibConfigSetCfm
5498
5499 DESCRIPTION
5500 This primitive reports the result of the request.
5501
5502 MEMBERS
5503 common - Common header for use with the CsrWifiFsm Module
5504 status - Reports the result of the request
5505
5506*******************************************************************************/
5507typedef struct
5508{
5509 CsrWifiFsmEvent common;
5510 CsrResult status;
5511} CsrWifiSmeMibConfigSetCfm;
5512
5513/*******************************************************************************
5514
5515 NAME
5516 CsrWifiSmeMibGetCfm
5517
5518 DESCRIPTION
5519 The SME calls this primitive to return the requested MIB variable values.
5520
5521 MEMBERS
5522 common - Common header for use with the CsrWifiFsm Module
5523 status - Reports the result of the request
5524 mibAttributeLength - Length of mibAttribute
5525 mibAttribute - Points to the VarBind or VarBindList containing the
5526 names and values of the MIB variables requested
5527
5528*******************************************************************************/
5529typedef struct
5530{
5531 CsrWifiFsmEvent common;
5532 CsrResult status;
8c87f69a 5533 u16 mibAttributeLength;
7e6f5794 5534 u8 *mibAttribute;
635d2b00
GKH
5535} CsrWifiSmeMibGetCfm;
5536
5537/*******************************************************************************
5538
5539 NAME
5540 CsrWifiSmeMibGetNextCfm
5541
5542 DESCRIPTION
5543 The SME calls this primitive to return the requested MIB name(s).
5544 The wireless manager application can then read the value of the MIB
5545 variable using CSR_WIFI_SME_MIB_GET_REQ, using the names provided.
5546
5547 MEMBERS
5548 common - Common header for use with the CsrWifiFsm Module
5549 status - Reports the result of the request
5550 mibAttributeLength - Length of mibAttribute
5551 mibAttribute - Points to a VarBind or VarBindList containing the
5552 name(s) of the MIB variable(s) lexicographically
5553 following the name(s) given in the request
5554
5555*******************************************************************************/
5556typedef struct
5557{
5558 CsrWifiFsmEvent common;
5559 CsrResult status;
8c87f69a 5560 u16 mibAttributeLength;
7e6f5794 5561 u8 *mibAttribute;
635d2b00
GKH
5562} CsrWifiSmeMibGetNextCfm;
5563
5564/*******************************************************************************
5565
5566 NAME
5567 CsrWifiSmeMibSetCfm
5568
5569 DESCRIPTION
5570 The SME calls the primitive to report the result of the set primitive.
5571
5572 MEMBERS
5573 common - Common header for use with the CsrWifiFsm Module
5574 status - Reports the result of the request
5575
5576*******************************************************************************/
5577typedef struct
5578{
5579 CsrWifiFsmEvent common;
5580 CsrResult status;
5581} CsrWifiSmeMibSetCfm;
5582
5583/*******************************************************************************
5584
5585 NAME
5586 CsrWifiSmeMicFailureInd
5587
5588 DESCRIPTION
5589 The SME sends this primitive to all the tasks that have registered to
5590 receive it whenever the chip firmware reports a MIC failure.
5591
5592 MEMBERS
5593 common - Common header for use with the CsrWifiFsm Module
5594 interfaceTag - Interface Identifier; unique identifier of an interface
5595 secondFailure - TRUE if this indication is for a second failure in 60
5596 seconds
5597 count - The number of MIC failure events since the connection was
5598 established
5599 address - MAC address of the transmitter that caused the MIC failure
5600 keyType - Type of key for which the failure occurred
5601
5602*******************************************************************************/
5603typedef struct
5604{
5605 CsrWifiFsmEvent common;
8c87f69a 5606 u16 interfaceTag;
5379b13d 5607 u8 secondFailure;
8c87f69a 5608 u16 count;
635d2b00
GKH
5609 CsrWifiMacAddress address;
5610 CsrWifiSmeKeyType keyType;
5611} CsrWifiSmeMicFailureInd;
5612
5613/*******************************************************************************
5614
5615 NAME
5616 CsrWifiSmeMulticastAddressCfm
5617
5618 DESCRIPTION
5619 The SME will call this primitive when the operation is complete. For a
5620 GET action, this primitive reports the current list of MAC addresses.
5621
5622 MEMBERS
5623 common - Common header for use with the CsrWifiFsm Module
5624 interfaceTag - Interface Identifier; unique identifier of an interface
5625 status - Reports the result of the request
5626 action - Action in the request
5627 getAddressesCount - This parameter is only relevant if action is
5628 CSR_WIFI_SME_LIST_ACTION_GET:
5629 number of MAC addresses sent with the primitive
5630 getAddresses - Pointer to the list of MAC Addresses sent with the
5631 primitive, set to NULL if none is sent.
5632
5633*******************************************************************************/
5634typedef struct
5635{
5636 CsrWifiFsmEvent common;
8c87f69a 5637 u16 interfaceTag;
635d2b00
GKH
5638 CsrResult status;
5639 CsrWifiSmeListAction action;
7e6f5794 5640 u8 getAddressesCount;
635d2b00
GKH
5641 CsrWifiMacAddress *getAddresses;
5642} CsrWifiSmeMulticastAddressCfm;
5643
5644/*******************************************************************************
5645
5646 NAME
5647 CsrWifiSmePacketFilterSetCfm
5648
5649 DESCRIPTION
5650 The SME calls the primitive to report the result of the set primitive.
5651
5652 MEMBERS
5653 common - Common header for use with the CsrWifiFsm Module
5654 interfaceTag - Interface Identifier; unique identifier of an interface
5655 status - Reports the result of the request
5656
5657*******************************************************************************/
5658typedef struct
5659{
5660 CsrWifiFsmEvent common;
8c87f69a 5661 u16 interfaceTag;
635d2b00
GKH
5662 CsrResult status;
5663} CsrWifiSmePacketFilterSetCfm;
5664
5665/*******************************************************************************
5666
5667 NAME
5668 CsrWifiSmePermanentMacAddressGetCfm
5669
5670 DESCRIPTION
5671 This primitive reports the result of the request.
5672
5673 MEMBERS
5674 common - Common header for use with the CsrWifiFsm Module
5675 status - Reports the result of the request
5676 permanentMacAddress - MAC address stored in the EEPROM
5677
5678*******************************************************************************/
5679typedef struct
5680{
5681 CsrWifiFsmEvent common;
5682 CsrResult status;
5683 CsrWifiMacAddress permanentMacAddress;
5684} CsrWifiSmePermanentMacAddressGetCfm;
5685
5686/*******************************************************************************
5687
5688 NAME
5689 CsrWifiSmePmkidCandidateListInd
5690
5691 DESCRIPTION
5692 The SME will send this primitive to all the tasks that have registered to
5693 receive it when a new network supporting preauthentication and/or PMK
5694 caching is seen.
5695
5696 MEMBERS
5697 common - Common header for use with the CsrWifiFsm Module
5698 interfaceTag - Interface Identifier; unique identifier of an
5699 interface
5700 pmkidCandidatesCount - Number of PMKID candidates provided
5701 pmkidCandidates - Points to the first PMKID candidate
5702
5703*******************************************************************************/
5704typedef struct
5705{
5706 CsrWifiFsmEvent common;
8c87f69a 5707 u16 interfaceTag;
7e6f5794 5708 u8 pmkidCandidatesCount;
635d2b00
GKH
5709 CsrWifiSmePmkidCandidate *pmkidCandidates;
5710} CsrWifiSmePmkidCandidateListInd;
5711
5712/*******************************************************************************
5713
5714 NAME
5715 CsrWifiSmePmkidCfm
5716
5717 DESCRIPTION
5718 The SME will call this primitive when the operation is complete. For a
5719 GET action, this primitive reports the current list of PMKIDs
5720
5721 MEMBERS
5722 common - Common header for use with the CsrWifiFsm Module
5723 interfaceTag - Interface Identifier; unique identifier of an interface
5724 status - Reports the result of the request
5725 action - Action in the request
5726 getPmkidsCount - This parameter is only relevant if action is
5727 CSR_WIFI_SME_LIST_ACTION_GET:
5728 number of PMKIDs sent with the primitive
5729 getPmkids - Pointer to the list of PMKIDs sent with the primitive, set
5730 to NULL if none is sent.
5731
5732*******************************************************************************/
5733typedef struct
5734{
5735 CsrWifiFsmEvent common;
8c87f69a 5736 u16 interfaceTag;
635d2b00
GKH
5737 CsrResult status;
5738 CsrWifiSmeListAction action;
7e6f5794 5739 u8 getPmkidsCount;
635d2b00
GKH
5740 CsrWifiSmePmkid *getPmkids;
5741} CsrWifiSmePmkidCfm;
5742
5743/*******************************************************************************
5744
5745 NAME
5746 CsrWifiSmePowerConfigGetCfm
5747
5748 DESCRIPTION
5749 This primitive reports the result of the request.
5750
5751 MEMBERS
5752 common - Common header for use with the CsrWifiFsm Module
5753 status - Reports the result of the request
5754 powerConfig - Returns the current parameters for the power configuration of
5755 the firmware
5756
5757*******************************************************************************/
5758typedef struct
5759{
5760 CsrWifiFsmEvent common;
5761 CsrResult status;
5762 CsrWifiSmePowerConfig powerConfig;
5763} CsrWifiSmePowerConfigGetCfm;
5764
5765/*******************************************************************************
5766
5767 NAME
5768 CsrWifiSmePowerConfigSetCfm
5769
5770 DESCRIPTION
5771 This primitive reports the result of the request.
5772
5773 MEMBERS
5774 common - Common header for use with the CsrWifiFsm Module
5775 status - Reports the result of the request
5776
5777*******************************************************************************/
5778typedef struct
5779{
5780 CsrWifiFsmEvent common;
5781 CsrResult status;
5782} CsrWifiSmePowerConfigSetCfm;
5783
5784/*******************************************************************************
5785
5786 NAME
5787 CsrWifiSmeRegulatoryDomainInfoGetCfm
5788
5789 DESCRIPTION
5790 This primitive reports the result of the request.
5791
5792 MEMBERS
5793 common - Common header for use with the CsrWifiFsm Module
5794 status - Reports the result of the request
5795 regDomInfo - Reports information and state related to regulatory domain
5796 operation.
5797
5798*******************************************************************************/
5799typedef struct
5800{
5801 CsrWifiFsmEvent common;
5802 CsrResult status;
5803 CsrWifiSmeRegulatoryDomainInfo regDomInfo;
5804} CsrWifiSmeRegulatoryDomainInfoGetCfm;
5805
5806/*******************************************************************************
5807
5808 NAME
5809 CsrWifiSmeRoamCompleteInd
5810
5811 DESCRIPTION
5812 The SME will send this primitive to all the tasks that have registered to
5813 receive it whenever it completes an attempt to roam to an AP. If the roam
5814 attempt was successful, status will be set to CSR_WIFI_SME_SUCCESS,
5815 otherwise it shall be set to the appropriate error code.
5816
5817 MEMBERS
5818 common - Common header for use with the CsrWifiFsm Module
5819 interfaceTag - Interface Identifier; unique identifier of an interface
5820 status - Reports the result of the roaming procedure
5821
5822*******************************************************************************/
5823typedef struct
5824{
5825 CsrWifiFsmEvent common;
8c87f69a 5826 u16 interfaceTag;
635d2b00
GKH
5827 CsrResult status;
5828} CsrWifiSmeRoamCompleteInd;
5829
5830/*******************************************************************************
5831
5832 NAME
5833 CsrWifiSmeRoamStartInd
5834
5835 DESCRIPTION
5836 The SME will send this primitive to all the tasks that have registered to
5837 receive it whenever it begins an attempt to roam to an AP.
5838 If the wireless manager application connect request specified the SSID
5839 and the BSSID was set to the broadcast address (0xFF 0xFF 0xFF 0xFF 0xFF
5840 0xFF), the SME monitors the signal quality and maintains a list of
5841 candidates to roam to. When the signal quality of the current connection
5842 falls below a threshold, and there is a candidate with better quality,
5843 the SME will attempt to the candidate AP.
5844 If the roaming procedure succeeds, the SME will also issue a Media
5845 Connect indication to inform the wireless manager application of the
5846 change.
5847 NOTE: to prevent the SME from initiating roaming the WMA must specify the
5848 BSSID in the connection request; this forces the SME to connect only to
5849 that AP.
5850 The wireless manager application can obtain statistics for roaming
5851 purposes using CSR_WIFI_SME_CONNECTION_QUALITY_IND and
5852 CSR_WIFI_SME_CONNECTION_STATS_GET_REQ.
5853 When the wireless manager application wishes to roam to another AP, it
5854 must issue a connection request specifying the BSSID of the desired AP.
5855
5856 MEMBERS
5857 common - Common header for use with the CsrWifiFsm Module
5858 interfaceTag - Interface Identifier; unique identifier of an interface
5859 roamReason - Indicates the reason for starting the roaming procedure
5860 reason80211 - Indicates the reason for deauthentication or disassociation
5861
5862*******************************************************************************/
5863typedef struct
5864{
5865 CsrWifiFsmEvent common;
8c87f69a 5866 u16 interfaceTag;
635d2b00
GKH
5867 CsrWifiSmeRoamReason roamReason;
5868 CsrWifiSmeIEEE80211Reason reason80211;
5869} CsrWifiSmeRoamStartInd;
5870
5871/*******************************************************************************
5872
5873 NAME
5874 CsrWifiSmeRoamingConfigGetCfm
5875
5876 DESCRIPTION
5877 This primitive reports the result of the request.
5878
5879 MEMBERS
5880 common - Common header for use with the CsrWifiFsm Module
5881 interfaceTag - Interface Identifier; unique identifier of an interface
5882 status - Reports the result of the request
5883 roamingConfig - Reports the roaming behaviour of the driver and firmware
5884
5885*******************************************************************************/
5886typedef struct
5887{
5888 CsrWifiFsmEvent common;
8c87f69a 5889 u16 interfaceTag;
635d2b00
GKH
5890 CsrResult status;
5891 CsrWifiSmeRoamingConfig roamingConfig;
5892} CsrWifiSmeRoamingConfigGetCfm;
5893
5894/*******************************************************************************
5895
5896 NAME
5897 CsrWifiSmeRoamingConfigSetCfm
5898
5899 DESCRIPTION
5900 This primitive sets the value of the RoamingConfig parameter.
5901
5902 MEMBERS
5903 common - Common header for use with the CsrWifiFsm Module
5904 interfaceTag - Interface Identifier; unique identifier of an interface
5905 status - Reports the result of the request
5906
5907*******************************************************************************/
5908typedef struct
5909{
5910 CsrWifiFsmEvent common;
8c87f69a 5911 u16 interfaceTag;
635d2b00
GKH
5912 CsrResult status;
5913} CsrWifiSmeRoamingConfigSetCfm;
5914
5915/*******************************************************************************
5916
5917 NAME
5918 CsrWifiSmeScanConfigGetCfm
5919
5920 DESCRIPTION
5921 This primitive reports the result of the request.
5922
5923 MEMBERS
5924 common - Common header for use with the CsrWifiFsm Module
5925 status - Reports the result of the request
5926 scanConfig - Returns the current parameters for the autonomous scanning
5927 behaviour of the firmware
5928
5929*******************************************************************************/
5930typedef struct
5931{
5932 CsrWifiFsmEvent common;
5933 CsrResult status;
5934 CsrWifiSmeScanConfig scanConfig;
5935} CsrWifiSmeScanConfigGetCfm;
5936
5937/*******************************************************************************
5938
5939 NAME
5940 CsrWifiSmeScanConfigSetCfm
5941
5942 DESCRIPTION
5943 This primitive reports the result of the request.
5944
5945 MEMBERS
5946 common - Common header for use with the CsrWifiFsm Module
5947 status - Reports the result of the request
5948
5949*******************************************************************************/
5950typedef struct
5951{
5952 CsrWifiFsmEvent common;
5953 CsrResult status;
5954} CsrWifiSmeScanConfigSetCfm;
5955
5956/*******************************************************************************
5957
5958 NAME
5959 CsrWifiSmeScanFullCfm
5960
5961 DESCRIPTION
5962 The SME calls this primitive when the results from the scan are
5963 available.
5964
5965 MEMBERS
5966 common - Common header for use with the CsrWifiFsm Module
5967 status - Reports the result of the request
5968
5969*******************************************************************************/
5970typedef struct
5971{
5972 CsrWifiFsmEvent common;
5973 CsrResult status;
5974} CsrWifiSmeScanFullCfm;
5975
5976/*******************************************************************************
5977
5978 NAME
5979 CsrWifiSmeScanResultInd
5980
5981 DESCRIPTION
5982 The SME sends this primitive to all the tasks that have registered to
5983 receive it whenever a scan indication is received from the firmware.
5984
5985 MEMBERS
5986 common - Common header for use with the CsrWifiFsm Module
5987 result - Points to a buffer containing a scan result.
5988
5989*******************************************************************************/
5990typedef struct
5991{
5992 CsrWifiFsmEvent common;
5993 CsrWifiSmeScanResult result;
5994} CsrWifiSmeScanResultInd;
5995
5996/*******************************************************************************
5997
5998 NAME
5999 CsrWifiSmeScanResultsFlushCfm
6000
6001 DESCRIPTION
6002 The SME will call this primitive when the cache has been cleared.
6003
6004 MEMBERS
6005 common - Common header for use with the CsrWifiFsm Module
6006 status - Reports the result of the request
6007
6008*******************************************************************************/
6009typedef struct
6010{
6011 CsrWifiFsmEvent common;
6012 CsrResult status;
6013} CsrWifiSmeScanResultsFlushCfm;
6014
6015/*******************************************************************************
6016
6017 NAME
6018 CsrWifiSmeScanResultsGetCfm
6019
6020 DESCRIPTION
6021 The SME sends this primitive to provide the current set of scan results.
6022
6023 MEMBERS
6024 common - Common header for use with the CsrWifiFsm Module
6025 status - Reports the result of the request
6026 scanResultsCount - Number of scan results
6027 scanResults - Points to a buffer containing an array of
6028 CsrWifiSmeScanResult structures.
6029
6030*******************************************************************************/
6031typedef struct
6032{
6033 CsrWifiFsmEvent common;
6034 CsrResult status;
8c87f69a 6035 u16 scanResultsCount;
635d2b00
GKH
6036 CsrWifiSmeScanResult *scanResults;
6037} CsrWifiSmeScanResultsGetCfm;
6038
6039/*******************************************************************************
6040
6041 NAME
6042 CsrWifiSmeSmeStaConfigGetCfm
6043
6044 DESCRIPTION
6045 This primitive reports the result of the request.
6046
6047 MEMBERS
6048 common - Common header for use with the CsrWifiFsm Module
6049 interfaceTag - Interface Identifier; unique identifier of an interface
6050 status - Reports the result of the request
6051 smeConfig - Current SME Station Parameters
6052
6053*******************************************************************************/
6054typedef struct
6055{
6056 CsrWifiFsmEvent common;
8c87f69a 6057 u16 interfaceTag;
635d2b00
GKH
6058 CsrResult status;
6059 CsrWifiSmeStaConfig smeConfig;
6060} CsrWifiSmeSmeStaConfigGetCfm;
6061
6062/*******************************************************************************
6063
6064 NAME
6065 CsrWifiSmeSmeStaConfigSetCfm
6066
6067 DESCRIPTION
6068 This primitive reports the result of the request.
6069
6070 MEMBERS
6071 common - Common header for use with the CsrWifiFsm Module
6072 interfaceTag - Interface Identifier; unique identifier of an interface
6073 status - Reports the result of the request
6074
6075*******************************************************************************/
6076typedef struct
6077{
6078 CsrWifiFsmEvent common;
8c87f69a 6079 u16 interfaceTag;
635d2b00
GKH
6080 CsrResult status;
6081} CsrWifiSmeSmeStaConfigSetCfm;
6082
6083/*******************************************************************************
6084
6085 NAME
6086 CsrWifiSmeStationMacAddressGetCfm
6087
6088 DESCRIPTION
6089 This primitive reports the result of the request.
6090
6091 MEMBERS
6092 common - Common header for use with the CsrWifiFsm Module
6093 status - Reports the result of the request
6094 stationMacAddress - Current MAC address of the station.
6095
6096*******************************************************************************/
6097typedef struct
6098{
6099 CsrWifiFsmEvent common;
6100 CsrResult status;
6101 CsrWifiMacAddress stationMacAddress[2];
6102} CsrWifiSmeStationMacAddressGetCfm;
6103
6104/*******************************************************************************
6105
6106 NAME
6107 CsrWifiSmeTspecInd
6108
6109 DESCRIPTION
6110 The SME will send this primitive to all the task that have registered to
6111 receive it when a status change in the TSPEC occurs.
6112
6113 MEMBERS
6114 common - Common header for use with the CsrWifiFsm Module
6115 interfaceTag - Interface Identifier; unique identifier of an interface
6116 transactionId - Unique Transaction ID for the TSPEC, as assigned by the
6117 driver
6118 tspecResultCode - Specifies the TSPEC operation requested by the peer
6119 station
6120 tspecLength - Length of the TSPEC.
6121 tspec - Points to the first byte of the TSPEC
6122
6123*******************************************************************************/
6124typedef struct
6125{
6126 CsrWifiFsmEvent common;
8c87f69a 6127 u16 interfaceTag;
26a6b2e1 6128 u32 transactionId;
635d2b00 6129 CsrWifiSmeTspecResultCode tspecResultCode;
8c87f69a 6130 u16 tspecLength;
7e6f5794 6131 u8 *tspec;
635d2b00
GKH
6132} CsrWifiSmeTspecInd;
6133
6134/*******************************************************************************
6135
6136 NAME
6137 CsrWifiSmeTspecCfm
6138
6139 DESCRIPTION
6140 The SME calls the primitive to report the result of the TSpec primitive
6141 request.
6142
6143 MEMBERS
6144 common - Common header for use with the CsrWifiFsm Module
6145 interfaceTag - Interface Identifier; unique identifier of an interface
6146 status - Reports the result of the request
6147 transactionId - Unique Transaction ID for the TSPEC, as assigned by the
6148 driver
6149 tspecResultCode - Specifies the result of the negotiated TSPEC operation
6150 tspecLength - Length of the TSPEC.
6151 tspec - Points to the first byte of the TSPEC
6152
6153*******************************************************************************/
6154typedef struct
6155{
6156 CsrWifiFsmEvent common;
8c87f69a 6157 u16 interfaceTag;
635d2b00 6158 CsrResult status;
26a6b2e1 6159 u32 transactionId;
635d2b00 6160 CsrWifiSmeTspecResultCode tspecResultCode;
8c87f69a 6161 u16 tspecLength;
7e6f5794 6162 u8 *tspec;
635d2b00
GKH
6163} CsrWifiSmeTspecCfm;
6164
6165/*******************************************************************************
6166
6167 NAME
6168 CsrWifiSmeVersionsGetCfm
6169
6170 DESCRIPTION
6171 This primitive reports the result of the request.
6172
6173 MEMBERS
6174 common - Common header for use with the CsrWifiFsm Module
6175 status - Reports the result of the request
6176 versions - Version IDs of the product
6177
6178*******************************************************************************/
6179typedef struct
6180{
6181 CsrWifiFsmEvent common;
6182 CsrResult status;
6183 CsrWifiSmeVersions versions;
6184} CsrWifiSmeVersionsGetCfm;
6185
6186/*******************************************************************************
6187
6188 NAME
6189 CsrWifiSmeWifiFlightmodeCfm
6190
6191 DESCRIPTION
6192 The SME calls this primitive when the chip is initialised for low power
6193 mode and with the radio subsystem disabled. To leave flight mode, and
6194 enable Wi-Fi, the wireless manager application should call
6195 CSR_WIFI_SME_WIFI_ON_REQ.
6196
6197 MEMBERS
6198 common - Common header for use with the CsrWifiFsm Module
6199 status - Reports the result of the request
6200
6201*******************************************************************************/
6202typedef struct
6203{
6204 CsrWifiFsmEvent common;
6205 CsrResult status;
6206} CsrWifiSmeWifiFlightmodeCfm;
6207
6208/*******************************************************************************
6209
6210 NAME
6211 CsrWifiSmeWifiOffInd
6212
6213 DESCRIPTION
6214 The SME sends this primitive to all the tasks that have registered to
6215 receive it to report that the chip has been turned off.
6216
6217 MEMBERS
6218 common - Common header for use with the CsrWifiFsm Module
6219 reason - Indicates the reason why the Wi-Fi has been switched off.
6220
6221*******************************************************************************/
6222typedef struct
6223{
6224 CsrWifiFsmEvent common;
6225 CsrWifiSmeControlIndication reason;
6226} CsrWifiSmeWifiOffInd;
6227
6228/*******************************************************************************
6229
6230 NAME
6231 CsrWifiSmeWifiOffCfm
6232
6233 DESCRIPTION
6234 After receiving CSR_WIFI_SME_WIFI_OFF_REQ, if the chip is connected to a
6235 network, the SME will perform a disconnect operation, will send a
6236 CSR_WIFI_SME_MEDIA_STATUS_IND with
6237 CSR_WIFI_SME_MEDIA_STATUS_DISCONNECTED, and then will call
6238 CSR_WIFI_SME_WIFI_OFF_CFM when the chip is off.
6239
6240 MEMBERS
6241 common - Common header for use with the CsrWifiFsm Module
6242 status - Reports the result of the request
6243
6244*******************************************************************************/
6245typedef struct
6246{
6247 CsrWifiFsmEvent common;
6248 CsrResult status;
6249} CsrWifiSmeWifiOffCfm;
6250
6251/*******************************************************************************
6252
6253 NAME
6254 CsrWifiSmeWifiOnCfm
6255
6256 DESCRIPTION
6257 The SME sends this primitive to the task that has sent the request once
6258 the chip has been initialised and is available for use.
6259
6260 MEMBERS
6261 common - Common header for use with the CsrWifiFsm Module
6262 status - Reports the result of the request
6263
6264*******************************************************************************/
6265typedef struct
6266{
6267 CsrWifiFsmEvent common;
6268 CsrResult status;
6269} CsrWifiSmeWifiOnCfm;
6270
6271/*******************************************************************************
6272
6273 NAME
6274 CsrWifiSmeCloakedSsidsSetCfm
6275
6276 DESCRIPTION
6277 This primitive reports the result of the request.
6278
6279 MEMBERS
6280 common - Common header for use with the CsrWifiFsm Module
6281 status - Reports the result of the request
6282
6283*******************************************************************************/
6284typedef struct
6285{
6286 CsrWifiFsmEvent common;
6287 CsrResult status;
6288} CsrWifiSmeCloakedSsidsSetCfm;
6289
6290/*******************************************************************************
6291
6292 NAME
6293 CsrWifiSmeCloakedSsidsGetCfm
6294
6295 DESCRIPTION
6296 This primitive reports the result of the request.
6297
6298 MEMBERS
6299 common - Common header for use with the CsrWifiFsm Module
6300 status - Reports the result of the request
6301 cloakedSsids - Reports list of cloaked SSIDs that are explicitly scanned for
6302 by the driver
6303
6304*******************************************************************************/
6305typedef struct
6306{
6307 CsrWifiFsmEvent common;
6308 CsrResult status;
6309 CsrWifiSmeCloakedSsidConfig cloakedSsids;
6310} CsrWifiSmeCloakedSsidsGetCfm;
6311
6312/*******************************************************************************
6313
6314 NAME
6315 CsrWifiSmeWifiOnInd
6316
6317 DESCRIPTION
6318 The SME sends this primitive to all tasks that have registered to receive
6319 it once the chip becomes available and ready to use.
6320
6321 MEMBERS
6322 common - Common header for use with the CsrWifiFsm Module
6323 address - Current MAC address
6324
6325*******************************************************************************/
6326typedef struct
6327{
6328 CsrWifiFsmEvent common;
6329 CsrWifiMacAddress address;
6330} CsrWifiSmeWifiOnInd;
6331
6332/*******************************************************************************
6333
6334 NAME
6335 CsrWifiSmeSmeCommonConfigGetCfm
6336
6337 DESCRIPTION
6338 This primitive reports the result of the request.
6339
6340 MEMBERS
6341 common - Common header for use with the CsrWifiFsm Module
6342 status - Reports the result of the request
6343 deviceConfig - Configuration options in the SME
6344
6345*******************************************************************************/
6346typedef struct
6347{
6348 CsrWifiFsmEvent common;
6349 CsrResult status;
6350 CsrWifiSmeDeviceConfig deviceConfig;
6351} CsrWifiSmeSmeCommonConfigGetCfm;
6352
6353/*******************************************************************************
6354
6355 NAME
6356 CsrWifiSmeSmeCommonConfigSetCfm
6357
6358 DESCRIPTION
6359 Reports the result of the request
6360
6361 MEMBERS
6362 common - Common header for use with the CsrWifiFsm Module
6363 status - Reports the result of the request
6364
6365*******************************************************************************/
6366typedef struct
6367{
6368 CsrWifiFsmEvent common;
6369 CsrResult status;
6370} CsrWifiSmeSmeCommonConfigSetCfm;
6371
6372/*******************************************************************************
6373
6374 NAME
6375 CsrWifiSmeInterfaceCapabilityGetCfm
6376
6377 DESCRIPTION
6378 This primitive reports the result of the request.
6379
6380 MEMBERS
6381 common - Common header for use with the CsrWifiFsm Module
6382 status - Result of the request
6383 numInterfaces - Number of the interfaces supported
6384 capBitmap - Points to the list of capabilities bitmaps provided for each
6385 interface.
6386 The bits represent the following capabilities:
6387 -bits 7 to 4-Reserved
6388 -bit 3-AMP
6389 -bit 2-P2P
6390 -bit 1-AP
6391 -bit 0-STA
6392
6393*******************************************************************************/
6394typedef struct
6395{
6396 CsrWifiFsmEvent common;
6397 CsrResult status;
8c87f69a 6398 u16 numInterfaces;
7e6f5794 6399 u8 capBitmap[2];
635d2b00
GKH
6400} CsrWifiSmeInterfaceCapabilityGetCfm;
6401
6402/*******************************************************************************
6403
6404 NAME
6405 CsrWifiSmeErrorInd
6406
6407 DESCRIPTION
6408 Important error message indicating a error of some importance
6409
6410 MEMBERS
6411 common - Common header for use with the CsrWifiFsm Module
6412 errorMessage - Contains the error message.
6413
6414*******************************************************************************/
6415typedef struct
6416{
6417 CsrWifiFsmEvent common;
c781b96b 6418 char *errorMessage;
635d2b00
GKH
6419} CsrWifiSmeErrorInd;
6420
6421/*******************************************************************************
6422
6423 NAME
6424 CsrWifiSmeInfoInd
6425
6426 DESCRIPTION
6427 Message indicating a some info about current activity. Mostly of interest
6428 in testing but may be useful in the field.
6429
6430 MEMBERS
6431 common - Common header for use with the CsrWifiFsm Module
6432 infoMessage - Contains the message.
6433
6434*******************************************************************************/
6435typedef struct
6436{
6437 CsrWifiFsmEvent common;
c781b96b 6438 char *infoMessage;
635d2b00
GKH
6439} CsrWifiSmeInfoInd;
6440
6441/*******************************************************************************
6442
6443 NAME
6444 CsrWifiSmeCoreDumpInd
6445
6446 DESCRIPTION
6447 The SME will send this primitive to all the tasks that have registered to
6448 receive Wi-Fi Chip core dump data.
6449 The core dump data may be fragmented and sent using more than one
6450 indication.
6451 To indicate that all the data has been sent, the last indication contains
6452 a 'length' of 0 and 'data' of NULL.
6453
6454 MEMBERS
6455 common - Common header for use with the CsrWifiFsm Module
6456 dataLength - Number of bytes in the buffer pointed to by 'data'
6457 data - Pointer to the buffer containing 'dataLength' bytes of core
6458 dump data
6459
6460*******************************************************************************/
6461typedef struct
6462{
6463 CsrWifiFsmEvent common;
26a6b2e1 6464 u32 dataLength;
7e6f5794 6465 u8 *data;
635d2b00
GKH
6466} CsrWifiSmeCoreDumpInd;
6467
6468/*******************************************************************************
6469
6470 NAME
6471 CsrWifiSmeAmpStatusChangeInd
6472
6473 DESCRIPTION
6474 Indication of change to AMP activity.
6475
6476 MEMBERS
6477 common - Common header for use with the CsrWifiFsm Module
6478 interfaceTag - Interface on which the AMP activity changed.
6479 ampStatus - The new status of AMP activity.Range: {AMP_ACTIVE,
6480 AMP_INACTIVE}.
6481
6482*******************************************************************************/
6483typedef struct
6484{
6485 CsrWifiFsmEvent common;
8c87f69a 6486 u16 interfaceTag;
635d2b00
GKH
6487 CsrWifiSmeAmpStatus ampStatus;
6488} CsrWifiSmeAmpStatusChangeInd;
6489
6490/*******************************************************************************
6491
6492 NAME
6493 CsrWifiSmeWpsConfigurationCfm
6494
6495 DESCRIPTION
6496 Confirm.
6497
6498 MEMBERS
6499 common - Common header for use with the CsrWifiFsm Module
6500 status - Status of the request.
6501
6502*******************************************************************************/
6503typedef struct
6504{
6505 CsrWifiFsmEvent common;
6506 CsrResult status;
6507} CsrWifiSmeWpsConfigurationCfm;
6508
635d2b00
GKH
6509#endif /* CSR_WIFI_SME_PRIM_H__ */
6510
This page took 0.338664 seconds and 5 git commands to generate.