Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
drivers
staging
csr
csr_wifi_nme_ap_prim.h
Go to the documentation of this file.
1
/*****************************************************************************
2
3
(c) Cambridge Silicon Radio Limited 2012
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_NME_AP_PRIM_H__
14
#define CSR_WIFI_NME_AP_PRIM_H__
15
16
#include <linux/types.h>
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
#include "
csr_wifi_sme_ap_prim.h
"
23
#include "
csr_wifi_nme_prim.h
"
24
25
#ifdef __cplusplus
26
extern
"C"
{
27
#endif
28
29
#ifndef CSR_WIFI_NME_ENABLE
30
#error CSR_WIFI_NME_ENABLE MUST be defined inorder to use csr_wifi_nme_ap_prim.h
31
#endif
32
#ifndef CSR_WIFI_AP_ENABLE
33
#error CSR_WIFI_AP_ENABLE MUST be defined inorder to use csr_wifi_nme_ap_prim.h
34
#endif
35
36
#define CSR_WIFI_NME_AP_PRIM (0x0426)
37
38
typedef
CsrPrim
CsrWifiNmeApPrim
;
39
40
41
/*******************************************************************************
42
43
NAME
44
CsrWifiNmeApPersCredentialType
45
46
DESCRIPTION
47
NME Credential Types
48
49
VALUES
50
CSR_WIFI_NME_AP_CREDENTIAL_TYPE_PSK
51
- Use PSK as credential.
52
CSR_WIFI_NME_AP_CREDENTIAL_TYPE_PASSPHRASE
53
- Use the specified passphrase as credential
54
55
*******************************************************************************/
56
typedef
u8
CsrWifiNmeApPersCredentialType
;
57
#define CSR_WIFI_NME_AP_CREDENTIAL_TYPE_PSK ((CsrWifiNmeApPersCredentialType) 0x00)
58
#define CSR_WIFI_NME_AP_CREDENTIAL_TYPE_PASSPHRASE ((CsrWifiNmeApPersCredentialType) 0x01)
59
60
61
/*******************************************************************************
62
63
NAME
64
CsrWifiNmeApConfig
65
66
DESCRIPTION
67
Structure holding AP config data.
68
69
MEMBERS
70
apGroupkeyTimeout - Access point group key timeout.
71
apStrictGtkRekey - Access point strict GTK rekey flag. If set TRUE, the AP
72
shall rekey GTK every time a connected STA leaves BSS.
73
apGmkTimeout - Access point GMK timeout
74
apResponseTimeout - Response timeout
75
apRetransLimit - Max allowed retransmissions
76
77
*******************************************************************************/
78
typedef
struct
79
{
80
u16
apGroupkeyTimeout
;
81
u8
apStrictGtkRekey
;
82
u16
apGmkTimeout
;
83
u16
apResponseTimeout
;
84
u8
apRetransLimit
;
85
}
CsrWifiNmeApConfig
;
86
87
/*******************************************************************************
88
89
NAME
90
CsrWifiNmeApAuthPers
91
92
DESCRIPTION
93
94
MEMBERS
95
authSupport - Credential type value (as defined in the
96
enumeration type).
97
rsnCapabilities - RSN capabilities mask
98
wapiCapabilities - WAPI capabilities mask
99
pskOrPassphrase - Credential type value (as defined in the
100
enumeration type).
101
authPers_credentials - Union containing credentials which depends
102
on credentialType parameter.
103
authPers_credentialspsk -
104
authPers_credentialspassphrase -
105
106
*******************************************************************************/
107
typedef
struct
108
{
109
CsrWifiSmeApAuthSupportMask
authSupport
;
110
CsrWifiSmeApRsnCapabilitiesMask
rsnCapabilities
;
111
CsrWifiSmeApWapiCapabilitiesMask
wapiCapabilities
;
112
CsrWifiNmeApPersCredentialType
pskOrPassphrase
;
113
union
{
114
CsrWifiNmePsk
psk
;
115
CsrWifiNmePassphrase
passphrase
;
116
} authPers_credentials;
117
}
CsrWifiNmeApAuthPers
;
118
119
/*******************************************************************************
120
121
NAME
122
CsrWifiNmeApCredentials
123
124
DESCRIPTION
125
Structure containing the Credentials data.
126
127
MEMBERS
128
authType - Authentication type
129
nmeAuthType - Authentication parameters
130
nmeAuthTypeopenSystemEmpty -
131
nmeAuthTypeauthwep -
132
nmeAuthTypeauthTypePersonal -
133
134
*******************************************************************************/
135
typedef
struct
136
{
137
CsrWifiSmeApAuthType
authType
;
138
union
{
139
CsrWifiSmeEmpty
openSystemEmpty
;
140
CsrWifiSmeWepAuth
authwep
;
141
CsrWifiNmeApAuthPers
authTypePersonal
;
142
} nmeAuthType;
143
}
CsrWifiNmeApCredentials
;
144
145
146
/* Downstream */
147
#define CSR_WIFI_NME_AP_PRIM_DOWNSTREAM_LOWEST (0x0000)
148
149
#define CSR_WIFI_NME_AP_CONFIG_SET_REQ ((CsrWifiNmeApPrim) (0x0000 + CSR_WIFI_NME_AP_PRIM_DOWNSTREAM_LOWEST))
150
#define CSR_WIFI_NME_AP_WPS_REGISTER_REQ ((CsrWifiNmeApPrim) (0x0001 + CSR_WIFI_NME_AP_PRIM_DOWNSTREAM_LOWEST))
151
#define CSR_WIFI_NME_AP_START_REQ ((CsrWifiNmeApPrim) (0x0002 + CSR_WIFI_NME_AP_PRIM_DOWNSTREAM_LOWEST))
152
#define CSR_WIFI_NME_AP_STOP_REQ ((CsrWifiNmeApPrim) (0x0003 + CSR_WIFI_NME_AP_PRIM_DOWNSTREAM_LOWEST))
153
#define CSR_WIFI_NME_AP_WMM_PARAM_UPDATE_REQ ((CsrWifiNmeApPrim) (0x0004 + CSR_WIFI_NME_AP_PRIM_DOWNSTREAM_LOWEST))
154
#define CSR_WIFI_NME_AP_STA_REMOVE_REQ ((CsrWifiNmeApPrim) (0x0005 + CSR_WIFI_NME_AP_PRIM_DOWNSTREAM_LOWEST))
155
156
157
#define CSR_WIFI_NME_AP_PRIM_DOWNSTREAM_HIGHEST (0x0005 + CSR_WIFI_NME_AP_PRIM_DOWNSTREAM_LOWEST)
158
159
/* Upstream */
160
#define CSR_WIFI_NME_AP_PRIM_UPSTREAM_LOWEST (0x0000 + CSR_PRIM_UPSTREAM)
161
162
#define CSR_WIFI_NME_AP_CONFIG_SET_CFM ((CsrWifiNmeApPrim)(0x0000 + CSR_WIFI_NME_AP_PRIM_UPSTREAM_LOWEST))
163
#define CSR_WIFI_NME_AP_WPS_REGISTER_CFM ((CsrWifiNmeApPrim)(0x0001 + CSR_WIFI_NME_AP_PRIM_UPSTREAM_LOWEST))
164
#define CSR_WIFI_NME_AP_START_CFM ((CsrWifiNmeApPrim)(0x0002 + CSR_WIFI_NME_AP_PRIM_UPSTREAM_LOWEST))
165
#define CSR_WIFI_NME_AP_STOP_CFM ((CsrWifiNmeApPrim)(0x0003 + CSR_WIFI_NME_AP_PRIM_UPSTREAM_LOWEST))
166
#define CSR_WIFI_NME_AP_STOP_IND ((CsrWifiNmeApPrim)(0x0004 + CSR_WIFI_NME_AP_PRIM_UPSTREAM_LOWEST))
167
#define CSR_WIFI_NME_AP_WMM_PARAM_UPDATE_CFM ((CsrWifiNmeApPrim)(0x0005 + CSR_WIFI_NME_AP_PRIM_UPSTREAM_LOWEST))
168
#define CSR_WIFI_NME_AP_STATION_IND ((CsrWifiNmeApPrim)(0x0006 + CSR_WIFI_NME_AP_PRIM_UPSTREAM_LOWEST))
169
170
#define CSR_WIFI_NME_AP_PRIM_UPSTREAM_HIGHEST (0x0006 + CSR_WIFI_NME_AP_PRIM_UPSTREAM_LOWEST)
171
172
#define CSR_WIFI_NME_AP_PRIM_DOWNSTREAM_COUNT (CSR_WIFI_NME_AP_PRIM_DOWNSTREAM_HIGHEST + 1 - CSR_WIFI_NME_AP_PRIM_DOWNSTREAM_LOWEST)
173
#define CSR_WIFI_NME_AP_PRIM_UPSTREAM_COUNT (CSR_WIFI_NME_AP_PRIM_UPSTREAM_HIGHEST + 1 - CSR_WIFI_NME_AP_PRIM_UPSTREAM_LOWEST)
174
175
/*******************************************************************************
176
177
NAME
178
CsrWifiNmeApConfigSetReq
179
180
DESCRIPTION
181
This primitive passes AP configuration info for NME. This can be sent at
182
any time but will be acted upon when the AP is started again. This
183
information is common to both P2P GO and AP
184
185
MEMBERS
186
common - Common header for use with the CsrWifiFsm Module
187
apConfig - AP configuration for the NME.
188
apMacConfig - MAC configuration to be acted on when
189
CSR_WIFI_NME_AP_START.request is sent.
190
191
*******************************************************************************/
192
typedef
struct
193
{
194
CsrWifiFsmEvent
common
;
195
CsrWifiNmeApConfig
apConfig
;
196
CsrWifiSmeApMacConfig
apMacConfig
;
197
}
CsrWifiNmeApConfigSetReq
;
198
199
/*******************************************************************************
200
201
NAME
202
CsrWifiNmeApWpsRegisterReq
203
204
DESCRIPTION
205
This primitive allows the NME to accept the WPS registration from an
206
enrollee. Such registration procedure can be cancelled by sending
207
CSR_WIFI_NME_WPS_CANCEL.request.
208
209
MEMBERS
210
common - Common header for use with the CsrWifiFsm Module
211
interfaceTag - Interface Identifier; unique identifier of an
212
interface
213
selectedDevicePasswordId - Selected password type
214
selectedConfigMethod - Selected WPS configuration method type
215
pin - PIN value.
216
Relevant if selected device password ID is PIN.4
217
digit pin is passed by sending the pin digits in
218
pin[0]..pin[3] and rest of the contents filled
219
with '-'.
220
221
*******************************************************************************/
222
typedef
struct
223
{
224
CsrWifiFsmEvent
common
;
225
u16
interfaceTag
;
226
CsrWifiSmeWpsDpid
selectedDevicePasswordId
;
227
CsrWifiSmeWpsConfigType
selectedConfigMethod
;
228
u8
pin
[8];
229
}
CsrWifiNmeApWpsRegisterReq
;
230
231
/*******************************************************************************
232
233
NAME
234
CsrWifiNmeApStartReq
235
236
DESCRIPTION
237
This primitive requests NME to started the AP operation.
238
239
MEMBERS
240
common - Common header for use with the CsrWifiFsm Module
241
interfaceTag - Interface identifier; unique identifier of an interface
242
apType - AP Type specifies the Legacy AP or P2P GO operation
243
cloakSsid - Indicates whether the SSID should be cloaked (hidden and
244
not broadcast in beacon) or not
245
ssid - Service Set Identifier
246
ifIndex - Radio interface
247
channel - Channel number of the channel to use
248
apCredentials - Security credential configuration.
249
maxConnections - Maximum number of stations/P2P clients allowed
250
p2pGoParam - P2P specific GO parameters.
251
wpsEnabled - Indicates whether WPS should be enabled or not
252
253
*******************************************************************************/
254
typedef
struct
255
{
256
CsrWifiFsmEvent
common
;
257
u16
interfaceTag
;
258
CsrWifiSmeApType
apType
;
259
u8
cloakSsid
;
260
CsrWifiSsid
ssid
;
261
CsrWifiSmeRadioIF
ifIndex
;
262
u8
channel
;
263
CsrWifiNmeApCredentials
apCredentials
;
264
u8
maxConnections
;
265
CsrWifiSmeApP2pGoConfig
p2pGoParam
;
266
u8
wpsEnabled
;
267
}
CsrWifiNmeApStartReq
;
268
269
/*******************************************************************************
270
271
NAME
272
CsrWifiNmeApStopReq
273
274
DESCRIPTION
275
This primitive requests NME to stop the AP operation.
276
277
MEMBERS
278
common - Common header for use with the CsrWifiFsm Module
279
interfaceTag - Interface identifier; unique identifier of an interface
280
281
*******************************************************************************/
282
typedef
struct
283
{
284
CsrWifiFsmEvent
common
;
285
u16
interfaceTag
;
286
}
CsrWifiNmeApStopReq
;
287
288
/*******************************************************************************
289
290
NAME
291
CsrWifiNmeApWmmParamUpdateReq
292
293
DESCRIPTION
294
Application uses this primitive to update the WMM parameters
295
296
MEMBERS
297
common - Common header for use with the CsrWifiFsm Module
298
wmmApParams - WMM Access point parameters per access category. The array
299
index corresponds to the ACI
300
wmmApBcParams - WMM station parameters per access category to be advertised
301
in the beacons and probe response The array index
302
corresponds to the ACI
303
304
*******************************************************************************/
305
typedef
struct
306
{
307
CsrWifiFsmEvent
common
;
308
CsrWifiSmeWmmAcParams
wmmApParams[4];
309
CsrWifiSmeWmmAcParams
wmmApBcParams[4];
310
}
CsrWifiNmeApWmmParamUpdateReq
;
311
312
/*******************************************************************************
313
314
NAME
315
CsrWifiNmeApStaRemoveReq
316
317
DESCRIPTION
318
This primitive disconnects a connected station. If keepBlocking is set to
319
TRUE, the station with the specified MAC address is not allowed to
320
connect. If the requested station is not already connected,it may be
321
blocked based on keepBlocking parameter.
322
323
MEMBERS
324
common - Common header for use with the CsrWifiFsm Module
325
interfaceTag - Interface Identifier; unique identifier of an interface
326
staMacAddress - Mac Address of the station to be disconnected or blocked
327
keepBlocking - If TRUE, the station is blocked. If FALSE and the station is
328
connected, disconnect the station. If FALSE and the station
329
is not connected, no action is taken.
330
331
*******************************************************************************/
332
typedef
struct
333
{
334
CsrWifiFsmEvent
common
;
335
u16
interfaceTag
;
336
CsrWifiMacAddress
staMacAddress
;
337
u8
keepBlocking
;
338
}
CsrWifiNmeApStaRemoveReq
;
339
340
/*******************************************************************************
341
342
NAME
343
CsrWifiNmeApConfigSetCfm
344
345
DESCRIPTION
346
This primitive reports the result of the request.
347
348
MEMBERS
349
common - Common header for use with the CsrWifiFsm Module
350
status - Status of the request.
351
352
*******************************************************************************/
353
typedef
struct
354
{
355
CsrWifiFsmEvent
common
;
356
CsrResult
status
;
357
}
CsrWifiNmeApConfigSetCfm
;
358
359
/*******************************************************************************
360
361
NAME
362
CsrWifiNmeApWpsRegisterCfm
363
364
DESCRIPTION
365
This primitive reports the result of WPS procedure.
366
367
MEMBERS
368
common - Common header for use with the CsrWifiFsm Module
369
interfaceTag - Interface identifier; unique identifier of an interface
370
status - Status of the request.
371
372
*******************************************************************************/
373
typedef
struct
374
{
375
CsrWifiFsmEvent
common
;
376
u16
interfaceTag
;
377
CsrResult
status
;
378
}
CsrWifiNmeApWpsRegisterCfm
;
379
380
/*******************************************************************************
381
382
NAME
383
CsrWifiNmeApStartCfm
384
385
DESCRIPTION
386
This primitive reports the result of CSR_WIFI_NME_AP_START.request.
387
388
MEMBERS
389
common - Common header for use with the CsrWifiFsm Module
390
interfaceTag - Interface identifier; unique identifier of an interface
391
status - Status of the request.
392
ssid - Service Set Identifier
393
394
*******************************************************************************/
395
typedef
struct
396
{
397
CsrWifiFsmEvent
common
;
398
u16
interfaceTag
;
399
CsrResult
status
;
400
CsrWifiSsid
ssid
;
401
}
CsrWifiNmeApStartCfm
;
402
403
/*******************************************************************************
404
405
NAME
406
CsrWifiNmeApStopCfm
407
408
DESCRIPTION
409
This primitive confirms that the AP operation is stopped. NME shall send
410
this primitive in response to the request even if AP operation has
411
already been stopped
412
413
MEMBERS
414
common - Common header for use with the CsrWifiFsm Module
415
interfaceTag - Interface identifier; unique identifier of an interface
416
status - Status of the request.
417
418
*******************************************************************************/
419
typedef
struct
420
{
421
CsrWifiFsmEvent
common
;
422
u16
interfaceTag
;
423
CsrResult
status
;
424
}
CsrWifiNmeApStopCfm
;
425
426
/*******************************************************************************
427
428
NAME
429
CsrWifiNmeApStopInd
430
431
DESCRIPTION
432
Indicates that AP operation had stopped because of some unrecoverable
433
error after AP operation was started successfully. NME sends this signal
434
after failing to restart the AP operation internally following an error
435
436
MEMBERS
437
common - Common header for use with the CsrWifiFsm Module
438
interfaceTag - Interface Identifier; unique identifier of an interface
439
apType - Reports AP Type (P2PGO or AP)
440
status - Error Status
441
442
*******************************************************************************/
443
typedef
struct
444
{
445
CsrWifiFsmEvent
common
;
446
u16
interfaceTag
;
447
CsrWifiSmeApType
apType
;
448
CsrResult
status
;
449
}
CsrWifiNmeApStopInd
;
450
451
/*******************************************************************************
452
453
NAME
454
CsrWifiNmeApWmmParamUpdateCfm
455
456
DESCRIPTION
457
A confirm for for the WMM parameters update
458
459
MEMBERS
460
common - Common header for use with the CsrWifiFsm Module
461
status - Status of the request.
462
463
*******************************************************************************/
464
typedef
struct
465
{
466
CsrWifiFsmEvent
common
;
467
CsrResult
status
;
468
}
CsrWifiNmeApWmmParamUpdateCfm
;
469
470
/*******************************************************************************
471
472
NAME
473
CsrWifiNmeApStationInd
474
475
DESCRIPTION
476
This primitive indicates that a station has joined or a previously joined
477
station has left the BSS/group
478
479
MEMBERS
480
common - Common header for use with the CsrWifiFsm Module
481
interfaceTag - Interface Identifier; unique identifier of an interface
482
mediaStatus - Indicates whether the station is connected or
483
disconnected
484
peerMacAddress - MAC address of the station
485
peerDeviceAddress - P2P Device Address
486
487
*******************************************************************************/
488
typedef
struct
489
{
490
CsrWifiFsmEvent
common
;
491
u16
interfaceTag
;
492
CsrWifiSmeMediaStatus
mediaStatus
;
493
CsrWifiMacAddress
peerMacAddress
;
494
CsrWifiMacAddress
peerDeviceAddress
;
495
}
CsrWifiNmeApStationInd
;
496
497
498
#ifdef __cplusplus
499
}
500
#endif
501
502
#endif
/* CSR_WIFI_NME_AP_PRIM_H__ */
503
Generated on Thu Jan 10 2013 14:27:44 for Linux Kernel by
1.8.2