Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma
[deliverable/linux.git] / drivers / staging / wilc1000 / wilc_wlan_if.h
CommitLineData
d4cebe4d 1/* ///////////////////////////////////////////////////////////////////////// */
c5c77ba1
JK
2/* */
3/* Copyright (c) Atmel Corporation. All rights reserved. */
4/* */
5/* Module Name: wilc_wlan_if.h */
6/* */
7/* */
8/* ///////////////////////////////////////////////////////////////////////// */
9
c5c77ba1
JK
10#ifndef WILC_WLAN_IF_H
11#define WILC_WLAN_IF_H
12
e215a871 13#include <linux/semaphore.h>
c5c77ba1
JK
14#include "linux_wlan_common.h"
15
c5c77ba1
JK
16/********************************************
17 *
18 * Debug Flags
19 *
20 ********************************************/
21
531c7ceb
LK
22#define N_INIT 0x00000001
23#define N_ERR 0x00000002
24#define N_TXQ 0x00000004
25#define N_INTR 0x00000008
26#define N_RXQ 0x00000010
c5c77ba1
JK
27
28/********************************************
29 *
30 * Host Interface Defines
31 *
32 ********************************************/
33
531c7ceb
LK
34#define HIF_SDIO (0)
35#define HIF_SPI BIT(0)
36#define HIF_SDIO_GPIO_IRQ BIT(2)
c5c77ba1 37
c5c77ba1
JK
38/********************************************
39 *
40 * Tx/Rx Buffer Size Defines
41 *
42 ********************************************/
43
531c7ceb
LK
44#define CE_TX_BUFFER_SIZE (64 * 1024)
45#define CE_RX_BUFFER_SIZE (384 * 1024)
c5c77ba1
JK
46
47/********************************************
48 *
49 * Wlan Interface Defines
50 *
51 ********************************************/
52
53typedef struct {
531c7ceb
LK
54 u32 read_write: 1;
55 u32 function: 3;
56 u32 raw: 1;
57 u32 address: 17;
58 u32 data: 8;
c5c77ba1
JK
59} sdio_cmd52_t;
60
61typedef struct {
62 /* struct { */
531c7ceb
LK
63 u32 read_write: 1;
64 u32 function: 3;
65 u32 block_mode: 1;
66 u32 increment: 1;
67 u32 address: 17;
68 u32 count: 9;
c5c77ba1 69 /* } bit; */
51e825f7 70 u8 *buffer;
fbc2fe16 71 u32 block_size;
c5c77ba1
JK
72} sdio_cmd53_t;
73
c5c77ba1
JK
74typedef struct {
75 int io_type;
76 int (*io_init)(void *);
77 void (*io_deinit)(void *);
78 union {
79 struct {
80 int (*sdio_cmd52)(sdio_cmd52_t *);
81 int (*sdio_cmd53)(sdio_cmd53_t *);
82 int (*sdio_set_max_speed)(void);
83 int (*sdio_set_default_speed)(void);
84 } sdio;
85 struct {
86 int (*spi_max_speed)(void);
fbc2fe16
CL
87 int (*spi_tx)(u8 *, u32);
88 int (*spi_rx)(u8 *, u32);
89 int (*spi_trx)(u8 *, u8 *, u32);
c5c77ba1
JK
90 } spi;
91 } u;
92} wilc_wlan_io_func_t;
93
531c7ceb
LK
94#define WILC_MAC_INDICATE_STATUS 0x1
95#define WILC_MAC_STATUS_INIT -1
96#define WILC_MAC_STATUS_READY 0
97#define WILC_MAC_STATUS_CONNECT 1
c5c77ba1
JK
98
99#define WILC_MAC_INDICATE_SCAN 0x2
100
101typedef struct {
102 void *os_private;
c5c77ba1
JK
103} wilc_wlan_os_context_t;
104
105typedef struct {
106 wilc_wlan_os_context_t os_context;
c5c77ba1 107 wilc_wlan_io_func_t io_func;
c5c77ba1
JK
108} wilc_wlan_inp_t;
109
c5c77ba1 110struct tx_complete_data {
c5c77ba1
JK
111 int size;
112 void *buff;
51e825f7 113 u8 *pBssid;
c5c77ba1
JK
114 struct sk_buff *skb;
115};
116
c5c77ba1
JK
117typedef void (*wilc_tx_complete_func_t)(void *, int);
118
531c7ceb 119#define WILC_TX_ERR_NO_BUF (-2)
c5c77ba1 120
c5c77ba1
JK
121/********************************************
122 *
123 * Wlan Configuration ID
124 *
125 ********************************************/
126
127#define MAX_SSID_LEN 33
128#define MAX_RATES_SUPPORTED 12
129
531c7ceb 130#define INFINITE_SLEEP_TIME ((u32)0xFFFFFFFF)
c5c77ba1 131
c5c77ba1 132typedef enum {
531c7ceb
LK
133 SUPP_RATES_IE = 1,
134 EXT_SUPP_RATES_IE = 50,
135 HT_CAPABILITY_IE = 45,
136 RSN_IE = 48,
137 WPA_IE = 221,
138 WMM_IE = 221,
139 P2P_IE = 221,
c5c77ba1 140} BEACON_IE;
438b293e 141
c5c77ba1 142typedef enum {
531c7ceb 143 INFRASTRUCTURE = 0,
c5c77ba1
JK
144 INDEPENDENT,
145 AP,
146} BSSTYPE_T;
147
148typedef enum {
531c7ceb
LK
149 RATE_AUTO = 0,
150 RATE_1MB = 1,
151 RATE_2MB = 2,
152 RATE_5MB = 5,
153 RATE_6MB = 6,
154 RATE_9MB = 9,
155 RATE_11MB = 11,
156 RATE_12MB = 12,
157 RATE_18MB = 18,
158 RATE_24MB = 24,
159 RATE_26MB = 36,
160 RATE_48MB = 48,
161 RATE_54MB = 54
c5c77ba1
JK
162} TX_RATE_T;
163
164typedef enum {
531c7ceb
LK
165 B_ONLY_MODE = 0, /* 1, 2 M, otherwise 5, 11 M */
166 G_ONLY_MODE, /* 6,12,24 otherwise 9,18,36,48,54 */
167 G_MIXED_11B_1_MODE, /* 1,2,5.5,11 otherwise all on */
168 G_MIXED_11B_2_MODE, /* 1,2,5,11,6,12,24 otherwise all on */
c5c77ba1
JK
169} G_OPERATING_MODE_T;
170
171typedef enum {
531c7ceb
LK
172 G_SHORT_PREAMBLE = 0, /* Short Preamble */
173 G_LONG_PREAMBLE = 1, /* Long Preamble */
174 G_AUTO_PREAMBLE = 2, /* Auto Preamble Selection */
c5c77ba1
JK
175} G_PREAMBLE_T;
176
531c7ceb
LK
177#define MAC_CONNECTED 1
178#define MAC_DISCONNECTED 0
c5c77ba1 179
c5c77ba1
JK
180#define SCAN_DONE TRUE
181typedef enum {
531c7ceb
LK
182 PASSIVE_SCAN = 0,
183 ACTIVE_SCAN = 1,
c5c77ba1
JK
184} SCANTYPE_T;
185
186typedef enum {
531c7ceb
LK
187 NO_POWERSAVE = 0,
188 MIN_FAST_PS = 1,
189 MAX_FAST_PS = 2,
190 MIN_PSPOLL_PS = 3,
191 MAX_PSPOLL_PS = 4
c5c77ba1
JK
192} USER_PS_MODE_T;
193
194typedef enum {
531c7ceb 195 CHIP_WAKEDUP = 0,
c5c77ba1 196 CHIP_SLEEPING_AUTO = 1,
531c7ceb 197 CHIP_SLEEPING_MANUAL = 2
c5c77ba1
JK
198} CHIP_PS_STATE_T;
199
200typedef enum {
531c7ceb 201 ACQUIRE_ONLY = 0,
c5c77ba1
JK
202 ACQUIRE_AND_WAKEUP = 1,
203} BUS_ACQUIRE_T;
204
205typedef enum {
531c7ceb
LK
206 RELEASE_ONLY = 0,
207 RELEASE_ALLOW_SLEEP = 1,
c5c77ba1
JK
208} BUS_RELEASE_T;
209
210typedef enum {
531c7ceb
LK
211 NO_SECURITY = 0,
212 WEP_40 = 0x3,
213 WEP_104 = 0x7,
214 WPA_AES = 0x29,
215 WPA_TKIP = 0x49,
216 WPA_AES_TKIP = 0x69, /* Aes or Tkip */
217 WPA2_AES = 0x31,
218 WPA2_TKIP = 0x51,
219 WPA2_AES_TKIP = 0x71, /* Aes or Tkip */
c5c77ba1
JK
220} SECURITY_T;
221
841dfc42 222enum AUTHTYPE {
531c7ceb
LK
223 OPEN_SYSTEM = 1,
224 SHARED_KEY = 2,
225 ANY = 3,
226 IEEE8021 = 5
841dfc42 227};
c5c77ba1 228
073b8d0c 229enum SITESURVEY {
531c7ceb
LK
230 SITE_SURVEY_1CH = 0,
231 SITE_SURVEY_ALL_CH = 1,
232 SITE_SURVEY_OFF = 2
073b8d0c 233};
c5c77ba1
JK
234
235typedef enum {
531c7ceb 236 NORMAL_ACK = 0,
c5c77ba1
JK
237 NO_ACK,
238} ACK_POLICY_T;
239
240typedef enum {
531c7ceb
LK
241 DONT_RESET = 0,
242 DO_RESET = 1,
243 NO_REQUEST = 2,
c5c77ba1
JK
244} RESET_REQ_T;
245
246typedef enum {
531c7ceb 247 REKEY_DISABLE = 1,
c5c77ba1
JK
248 REKEY_TIME_BASE,
249 REKEY_PKT_BASE,
250 REKEY_TIME_PKT_BASE
251} RSNA_REKEY_POLICY_T;
252
253typedef enum {
531c7ceb
LK
254 FILTER_NO = 0x00,
255 FILTER_AP_ONLY = 0x01,
256 FILTER_STA_ONLY = 0x02
c5c77ba1
JK
257} SCAN_CLASS_FITLER_T;
258
259typedef enum {
531c7ceb
LK
260 PRI_HIGH_RSSI = 0x00,
261 PRI_LOW_RSSI = 0x04,
262 PRI_DETECT = 0x08
c5c77ba1
JK
263} SCAN_PRI_T;
264
265typedef enum {
531c7ceb
LK
266 CH_FILTER_OFF = 0x00,
267 CH_FILTER_ON = 0x10
c5c77ba1
JK
268} CH_FILTER_T;
269
270typedef enum {
531c7ceb
LK
271 AUTO_PROT = 0, /* Auto */
272 NO_PROT, /* Do not use any protection */
273 ERP_PROT, /* Protect all ERP frame exchanges */
274 HT_PROT, /* Protect all HT frame exchanges */
275 GF_PROT, /* Protect all GF frame exchanges */
c5c77ba1
JK
276} N_PROTECTION_MODE_T;
277
278typedef enum {
279 G_SELF_CTS_PROT,
280 G_RTS_CTS_PROT,
281} G_PROTECTION_MODE_T;
282
283typedef enum {
531c7ceb 284 HT_MIXED_MODE = 1,
c5c77ba1
JK
285 HT_ONLY_20MHZ_MODE,
286 HT_ONLY_20_40MHZ_MODE,
287} N_OPERATING_MODE_T;
288
289typedef enum {
531c7ceb
LK
290 NO_DETECT = 0,
291 DETECT_ONLY = 1,
292 DETECT_PROTECT = 2,
293 DETECT_PROTECT_REPORT = 3,
c5c77ba1
JK
294} N_OBSS_DETECTION_T;
295
296typedef enum {
531c7ceb
LK
297 RTS_CTS_NONHT_PROT = 0, /* RTS-CTS at non-HT rate */
298 FIRST_FRAME_NONHT_PROT, /* First frame at non-HT rate */
299 LSIG_TXOP_PROT, /* LSIG TXOP Protection */
300 FIRST_FRAME_MIXED_PROT, /* First frame at Mixed format */
c5c77ba1
JK
301} N_PROTECTION_TYPE_T;
302
303typedef enum {
531c7ceb
LK
304 STATIC_MODE = 1,
305 DYNAMIC_MODE = 2,
306 MIMO_MODE = 3, /* power save disable */
c5c77ba1
JK
307} N_SMPS_MODE_T;
308
309typedef enum {
310 DISABLE_SELF_CTS,
311 ENABLE_SELF_CTS,
312 DISABLE_TX_ABORT,
313 ENABLE_TX_ABORT,
314 HW_TRIGGER_ABORT,
315 SW_TRIGGER_ABORT,
316} TX_ABORT_OPTION_T;
317
20212c03 318enum WID_TYPE {
531c7ceb
LK
319 WID_CHAR = 0,
320 WID_SHORT = 1,
321 WID_INT = 2,
322 WID_STR = 3,
323 WID_BIN_DATA = 4,
324 WID_BIN = 5,
325 WID_IP = 6,
326 WID_ADR = 7,
327 WID_UNDEF = 8,
328 WID_TYPE_FORCE_32BIT = 0xFFFFFFFF
20212c03 329};
c5c77ba1
JK
330
331typedef enum {
531c7ceb 332 WID_NIL = 0xffff,
c5c77ba1 333
d4cebe4d
LK
334 /*
335 * BSS Type
336 * -----------------------------------------------------------
337 * Configuration : Infrastructure Independent Access Point
338 * Values to set : 0 1 2
339 * -----------------------------------------------------------
340 */
531c7ceb 341 WID_BSS_TYPE = 0x0000,
c5c77ba1 342
d4cebe4d
LK
343 /*
344 * Transmit Rate
345 * -----------------------------------------------------------
346 * Configuration : 1 2 5.5 11 6 9 12 18 24 36 48 54
347 * Values to set : 1 2 5 11 6 9 12 18 24 36 48 54
348 * -----------------------------------------------------------
349 */
531c7ceb 350 WID_CURRENT_TX_RATE = 0x0001,
c5c77ba1 351
d4cebe4d
LK
352 /*
353 * Channel
354 * -----------------------------------------------------------
355 * Configuration(g) : 1 2 3 4 5 6 7 8 9 10 11 12 13 14
356 * Values to set : 1 2 3 4 5 6 7 8 9 10 11 12 13 14
357 * -----------------------------------------------------------
358 */
531c7ceb 359 WID_CURRENT_CHANNEL = 0x0002,
c5c77ba1 360
d4cebe4d
LK
361 /*
362 * Preamble
363 * -----------------------------------------------------------
364 * Configuration : short long Auto
365 * Values to set : 0 1 2
366 * -----------------------------------------------------------
367 */
531c7ceb 368 WID_PREAMBLE = 0x0003,
c5c77ba1 369
d4cebe4d
LK
370 /*
371 * 11g operating mode (ignored if 11g not present)
372 * -----------------------------------------------------------
373 * Configuration : HighPerf Compat(RSet #1) Compat(RSet #2)
374 * Values to set : 1 2 3
375 * -----------------------------------------------------------
376 */
531c7ceb 377 WID_11G_OPERATING_MODE = 0x0004,
c5c77ba1 378
d4cebe4d
LK
379 /*
380 * Mac status (response only)
381 * -----------------------------------------------------------
382 * Configuration : disconnect connect
383 * Values to get : 0 1
384 * -----------------------------------------------------------
385 */
531c7ceb 386 WID_STATUS = 0x0005,
c5c77ba1 387
d4cebe4d
LK
388 /*
389 * Scan type
390 * -----------------------------------------------------------
391 * Configuration : Passive Scanning Active Scanning
392 * Values to set : 0 1
393 * -----------------------------------------------------------
394 */
531c7ceb 395 WID_SCAN_TYPE = 0x0007,
c5c77ba1 396
d4cebe4d
LK
397 /*
398 * Key Id (WEP default key Id)
399 * -----------------------------------------------------------
400 * Configuration : Any value between 0 to 3
401 * Values to set : Same value. Default is 0
402 * -----------------------------------------------------------
403 */
531c7ceb 404 WID_KEY_ID = 0x0009,
c5c77ba1 405
d4cebe4d
LK
406 /*
407 * QoS Enable
408 * -----------------------------------------------------------
409 * Configuration : QoS Disable WMM Enable
410 * Values to set : 0 1
411 * -----------------------------------------------------------
412 */
531c7ceb 413 WID_QOS_ENABLE = 0x000A,
c5c77ba1 414
d4cebe4d
LK
415 /*
416 * Power Management
417 * -----------------------------------------------------------
418 * Configuration : NO_POWERSAVE MIN_POWERSAVE MAX_POWERSAVE
419 * Values to set : 0 1 2
420 * -----------------------------------------------------------
421 */
531c7ceb 422 WID_POWER_MANAGEMENT = 0x000B,
c5c77ba1 423
d4cebe4d
LK
424 /*
425 * WEP/802 11I Configuration
426 * -----------------------------------------------------------
427 * Configuration:Disable WP40 WP104 WPA-AES WPA-TKIP RSN-AES RSN-TKIP
428 * Values (0x) : 00 03 07 29 49 31 51
429 * Configuration:WPA-AES+TKIP RSN-AES+TKIP
430 * Values (0x) : 69 71
431 * -----------------------------------------------------------
432 */
531c7ceb 433 WID_11I_MODE = 0x000C,
c5c77ba1 434
d4cebe4d
LK
435 /*
436 * WEP Configuration: Used in BSS STA mode only when WEP is enabled
437 * -----------------------------------------------------------
438 * Configuration : Open System Shared Key Any Type | 802.1x Auth
439 * Values (0x) : 01 02 03 | BIT2
440 * -----------------------------------------------------------
441 */
531c7ceb 442 WID_AUTH_TYPE = 0x000D,
c5c77ba1 443
d4cebe4d
LK
444 /*
445 * Site Survey Type
446 * -----------------------------------------------------------
447 * Configuration : Values to set
448 * Survey 1 Channel : 0
449 * survey all Channels : 1
450 * Disable Site Survey : 2
451 * -----------------------------------------------------------
452 */
531c7ceb 453 WID_SITE_SURVEY = 0x000E,
c5c77ba1 454
d4cebe4d
LK
455 /*
456 * Listen Interval
457 * -----------------------------------------------------------
458 * Configuration : Any value between 1 to 255
459 * Values to set : Same value. Default is 3
460 * -----------------------------------------------------------
461 */
531c7ceb 462 WID_LISTEN_INTERVAL = 0x000F,
c5c77ba1 463
d4cebe4d
LK
464 /*
465 * DTIM Period
466 * -----------------------------------------------------------
467 * Configuration : Any value between 1 to 255
468 * Values to set : Same value. Default is 3
469 * -----------------------------------------------------------
470 */
531c7ceb 471 WID_DTIM_PERIOD = 0x0010,
c5c77ba1 472
d4cebe4d
LK
473 /*
474 * ACK Policy
475 * -----------------------------------------------------------
476 * Configuration : Normal Ack No Ack
477 * Values to set : 0 1
478 * -----------------------------------------------------------
479 */
531c7ceb 480 WID_ACK_POLICY = 0x0011,
c5c77ba1 481
d4cebe4d
LK
482 /*
483 * Reset MAC (Set only)
484 * -----------------------------------------------------------
485 * Configuration : Don't Reset Reset No Request
486 * Values to set : 0 1 2
487 * -----------------------------------------------------------
488 */
531c7ceb 489 WID_RESET = 0x0012,
c5c77ba1 490
d4cebe4d
LK
491 /*
492 * Broadcast SSID Option: Setting this will adhere to "" SSID element
493 * -----------------------------------------------------------
494 * Configuration : Enable Disable
495 * Values to set : 1 0
496 * -----------------------------------------------------------
497 */
531c7ceb 498 WID_BCAST_SSID = 0x0015,
c5c77ba1 499
d4cebe4d
LK
500 /*
501 * Disconnect (Station)
502 * -----------------------------------------------------------
503 * Configuration : Association ID
504 * Values to set : Association ID
505 * -----------------------------------------------------------
506 */
531c7ceb 507 WID_DISCONNECT = 0x0016,
c5c77ba1 508
d4cebe4d
LK
509 /*
510 * 11a Tx Power Level
511 * -----------------------------------------------------------
512 * Configuration : Sets TX Power (Higher the value greater the power)
513 * Values to set : Any value between 0 and 63 (inclusive Default 48)
514 * -----------------------------------------------------------
515 */
531c7ceb 516 WID_TX_POWER_LEVEL_11A = 0x0018,
c5c77ba1 517
d4cebe4d
LK
518 /*
519 * Group Key Update Policy Selection
520 * -----------------------------------------------------------
521 * Configuration : Disabled timeBased packetBased timePacketBased
522 * Values to set : 1 2 3 4
523 * -----------------------------------------------------------
524 */
531c7ceb 525 WID_REKEY_POLICY = 0x0019,
c5c77ba1 526
d4cebe4d
LK
527 /*
528 * Allow Short Slot
529 * -----------------------------------------------------------
530 * Configuration : Disallow Short Slot Allow Short Slot
531 * (Enable Only Long Slot) (Enable Short Slot if applicable)
532 * Values to set : 0 1
533 * -----------------------------------------------------------
534 */
531c7ceb 535 WID_SHORT_SLOT_ALLOWED = 0x001A,
c5c77ba1 536
531c7ceb 537 WID_PHY_ACTIVE_REG = 0x001B,
c5c77ba1 538
d4cebe4d
LK
539 /*
540 * 11b Tx Power Level
541 * -----------------------------------------------------------
542 * Configuration : Sets TX Power (Higher the value greater the power)
543 * Values to set : Any value between 0 and 63 (inclusive Default 48)
544 * -----------------------------------------------------------
545 */
531c7ceb 546 WID_TX_POWER_LEVEL_11B = 0x001D,
c5c77ba1 547
d4cebe4d
LK
548 /*
549 * Scan Request
550 * -----------------------------------------------------------
551 * Configuration : Request default scan
552 * Values to set : 0
553 * -----------------------------------------------------------
554 */
531c7ceb 555 WID_START_SCAN_REQ = 0x001E,
c5c77ba1 556
d4cebe4d
LK
557 /*
558 * Rssi (get only)
559 * -----------------------------------------------------------
560 * Configuration :
561 * Values to get : Rssi value
562 * -----------------------------------------------------------
563 */
531c7ceb 564 WID_RSSI = 0x001F,
c5c77ba1 565
d4cebe4d
LK
566 /*
567 * Join Request
568 * -----------------------------------------------------------
569 * Configuration : Request to join
570 * Values to set : index of scan result
571 * -----------------------------------------------------------
572 */
531c7ceb 573 WID_JOIN_REQ = 0x0020,
c5c77ba1 574
d4cebe4d 575 WID_LINKSPEED = 0x0026,
c5c77ba1 576
d4cebe4d
LK
577 /*
578 * Enable User Control of TX Power
579 * -----------------------------------------------------------
580 * Configuration : Disable Enable
581 * Values to set : 0 1
582 * -----------------------------------------------------------
583 */
531c7ceb 584 WID_USER_CONTROL_ON_TX_POWER = 0x0027,
c5c77ba1 585
531c7ceb 586 WID_MEMORY_ACCESS_8BIT = 0x0029,
c5c77ba1 587
d4cebe4d
LK
588 /*
589 * Enable Auto RX Sensitivity feature
590 * -----------------------------------------------------------
591 * Configuration : Disable Enable
592 * Values to set : 0 1
593 * -----------------------------------------------------------
594 */
531c7ceb 595 WID_AUTO_RX_SENSITIVITY = 0x0032,
c5c77ba1 596
d4cebe4d
LK
597 /*
598 * Receive Buffer Based Ack
599 * -----------------------------------------------------------
600 * Configuration : Disable Enable
601 * Values to set : 0 1
602 * -----------------------------------------------------------
603 */
531c7ceb 604 WID_DATAFLOW_CONTROL = 0x0033,
c5c77ba1 605
d4cebe4d
LK
606 /*
607 * Scan Filter
608 * -----------------------------------------------------------
609 * Configuration : Class No filter AP only Station Only
610 * Values to set : 0 1 2
611 * Configuration : Priority High Rssi Low Rssi Detect
612 * Values to set : 0 0x4 0x0
613 * Configuration : Channel filter off filter on
614 * Values to set : 0 0x10
615 * -----------------------------------------------------------
616 */
531c7ceb 617 WID_SCAN_FILTER = 0x0036,
c5c77ba1 618
d4cebe4d
LK
619 /*
620 * Link Loss Threshold (measure in the beacon period)
621 * -----------------------------------------------------------
622 * Configuration : Any value between 10 and 254(Set to 255 disable)
623 * Values to set : Same value. Default is 10
624 * -----------------------------------------------------------
625 */
531c7ceb 626 WID_LINK_LOSS_THRESHOLD = 0x0037,
c5c77ba1 627
531c7ceb 628 WID_ABORT_RUNNING_SCAN = 0x003E,
c5c77ba1
JK
629
630 /* NMAC Character WID list */
531c7ceb 631 WID_WPS_START = 0x0043,
c5c77ba1 632
d4cebe4d
LK
633 /*
634 * Protection mode for MAC
635 * -----------------------------------------------------------
636 * Configuration : Auto No protection ERP HT GF
637 * Values to set : 0 1 2 3 4
638 * -----------------------------------------------------------
639 */
531c7ceb 640 WID_11N_PROT_MECH = 0x0080,
c5c77ba1 641
d4cebe4d
LK
642 /*
643 * ERP Protection type for MAC
644 * -----------------------------------------------------------
645 * Configuration : Self-CTS RTS-CTS
646 * Values to set : 0 1
647 * -----------------------------------------------------------
648 */
531c7ceb 649 WID_11N_ERP_PROT_TYPE = 0x0081,
c5c77ba1 650
d4cebe4d
LK
651 /*
652 * HT Option Enable
653 * -----------------------------------------------------------
654 * Configuration : HT Enable HT Disable
655 * Values to set : 1 0
656 * -----------------------------------------------------------
657 */
531c7ceb 658 WID_11N_ENABLE = 0x0082,
c5c77ba1 659
d4cebe4d
LK
660 /*
661 * 11n Operating mode (Note that 11g operating mode will also be
662 * used in addition to this, if this is set to HT Mixed mode)
663 * -----------------------------------------------------------
664 * Configuration : HT Mixed HT Only-20MHz HT Only-20/40MHz
665 * Values to set : 1 2 3
666 * -----------------------------------------------------------
667 */
531c7ceb 668 WID_11N_OPERATING_MODE = 0x0083,
c5c77ba1 669
d4cebe4d
LK
670 /*
671 * 11n OBSS non-HT STA Detection flag
672 * -----------------------------------------------------------
673 * Configuration : Do not detect
674 * Values to set : 0
675 * Configuration : Detect, do not protect or report
676 * Values to set : 1
677 * Configuration : Detect, protect and do not report
678 * Values to set : 2
679 * Configuration : Detect, protect and report to other BSS
680 * Values to set : 3
681 * -----------------------------------------------------------
682 */
531c7ceb 683 WID_11N_OBSS_NONHT_DETECTION = 0x0084,
c5c77ba1 684
d4cebe4d
LK
685 /*
686 * 11n HT Protection Type
687 * -----------------------------------------------------------
688 * Configuration : RTS-CTS First Frame Exchange at non-HT-rate
689 * Values to set : 0 1
690 * Configuration : LSIG TXOP First Frame Exchange in Mixed Fmt
691 * Values to set : 2 3
692 * -----------------------------------------------------------
693 */
531c7ceb 694 WID_11N_HT_PROT_TYPE = 0x0085,
c5c77ba1 695
d4cebe4d
LK
696 /*
697 * 11n RIFS Protection Enable Flag
698 * -----------------------------------------------------------
699 * Configuration : Disable Enable
700 * Values to set : 0 1
701 * -----------------------------------------------------------
702 */
531c7ceb 703 WID_11N_RIFS_PROT_ENABLE = 0x0086,
c5c77ba1 704
d4cebe4d
LK
705 /*
706 * SMPS Mode
707 * -----------------------------------------------------------
708 * Configuration : Static Dynamic MIMO (Power Save Disabled)
709 * Values to set : 1 2 3
710 * -----------------------------------------------------------
711 */
531c7ceb 712 WID_11N_SMPS_MODE = 0x0087,
c5c77ba1 713
d4cebe4d
LK
714 /*
715 * Current transmit MCS
716 * -----------------------------------------------------------
717 * Configuration : MCS Index for data rate
718 * Values to set : 0 to 7
719 * -----------------------------------------------------------
720 */
531c7ceb 721 WID_11N_CURRENT_TX_MCS = 0x0088,
c5c77ba1 722
531c7ceb 723 WID_11N_PRINT_STATS = 0x0089,
c5c77ba1 724
d4cebe4d
LK
725 /*
726 * 11n Short GI Enable Flag
727 * -----------------------------------------------------------
728 * Configuration : Disable Enable
729 * Values to set : 0 1
730 * -----------------------------------------------------------
731 */
531c7ceb 732 WID_11N_SHORT_GI_ENABLE = 0x008D,
c5c77ba1 733
d4cebe4d
LK
734 /*
735 * 11n RIFS Enable Flag
736 * -----------------------------------------------------------
737 * Configuration : Disable Enable
738 * Values to set : 0 1
739 * -----------------------------------------------------------
740 */
531c7ceb 741 WID_RIFS_MODE = 0x0094,
c5c77ba1 742
d4cebe4d
LK
743 /*
744 * TX Abort Feature
745 * -----------------------------------------------------------
746 * Configuration : Disable Self CTS Enable Self CTS
747 * Values to set : 0 1
748 * Configuration : Disable TX Abort Enable TX Abort
749 * Values to set : 2 3
750 * Configuration : Enable HW TX Abort Enable SW TX Abort
751 * Values to set : 4 5
752 * -----------------------------------------------------------
753 */
531c7ceb 754 WID_TX_ABORT_CONFIG = 0x00A1,
c5c77ba1 755
531c7ceb
LK
756 WID_REG_TSSI_11B_VALUE = 0x00A6,
757 WID_REG_TSSI_11G_VALUE = 0x00A7,
758 WID_REG_TSSI_11N_VALUE = 0x00A8,
759 WID_TX_CALIBRATION = 0x00A9,
760 WID_DSCR_TSSI_11B_VALUE = 0x00AA,
761 WID_DSCR_TSSI_11G_VALUE = 0x00AB,
762 WID_DSCR_TSSI_11N_VALUE = 0x00AC,
c5c77ba1 763
d4cebe4d
LK
764 /*
765 * Immediate Block-Ack Support
766 * -----------------------------------------------------------
767 * Configuration : Disable Enable
768 * Values to set : 0 1
769 * -----------------------------------------------------------
770 */
531c7ceb 771 WID_11N_IMMEDIATE_BA_ENABLED = 0x00AF,
c5c77ba1 772
d4cebe4d
LK
773 /*
774 * TXOP Disable Flag
775 * -----------------------------------------------------------
776 * Configuration : Disable Enable
777 * Values to set : 1 0
778 * -----------------------------------------------------------
779 */
531c7ceb 780 WID_11N_TXOP_PROT_DISABLE = 0x00B0,
c5c77ba1 781
531c7ceb 782 WID_TX_POWER_LEVEL_11N = 0x00B1,
c5c77ba1
JK
783
784 /* Custom Character WID list */
531c7ceb 785 WID_PC_TEST_MODE = 0x00C8,
c5c77ba1
JK
786 /* SCAN Complete notification WID*/
787 WID_SCAN_COMPLETE = 0x00C9,
788
531c7ceb 789 WID_DEL_BEACON = 0x00CA,
c5c77ba1 790
531c7ceb 791 WID_LOGTerminal_Switch = 0x00CD,
d4cebe4d
LK
792 /* EMAC Short WID list */
793 /* RTS Threshold */
794 /*
795 * -----------------------------------------------------------
796 * Configuration : Any value between 256 to 2347
797 * Values to set : Same value. Default is 2347
798 * -----------------------------------------------------------
799 */
531c7ceb 800 WID_RTS_THRESHOLD = 0x1000,
c5c77ba1 801
d4cebe4d
LK
802 /*
803 * Fragmentation Threshold
804 * -----------------------------------------------------------
805 * Configuration : Any value between 256 to 2346
806 * Values to set : Same value. Default is 2346
807 * -----------------------------------------------------------
808 */
531c7ceb 809 WID_FRAG_THRESHOLD = 0x1001,
c5c77ba1 810
531c7ceb
LK
811 WID_SHORT_RETRY_LIMIT = 0x1002,
812 WID_LONG_RETRY_LIMIT = 0x1003,
813 WID_BEACON_INTERVAL = 0x1006,
814 WID_MEMORY_ACCESS_16BIT = 0x1008,
815 WID_RX_SENSE = 0x100B,
816 WID_ACTIVE_SCAN_TIME = 0x100C,
817 WID_PASSIVE_SCAN_TIME = 0x100D,
c5c77ba1 818
531c7ceb
LK
819 WID_SITE_SURVEY_SCAN_TIME = 0x100E,
820 WID_JOIN_START_TIMEOUT = 0x100F,
821 WID_AUTH_TIMEOUT = 0x1010,
822 WID_ASOC_TIMEOUT = 0x1011,
823 WID_11I_PROTOCOL_TIMEOUT = 0x1012,
824 WID_EAPOL_RESPONSE_TIMEOUT = 0x1013,
c5c77ba1
JK
825
826 /* NMAC Short WID list */
531c7ceb
LK
827 WID_11N_SIG_QUAL_VAL = 0x1085,
828 WID_CCA_THRESHOLD = 0x1087,
c5c77ba1
JK
829
830 /* Custom Short WID list */
831
832 /* EMAC Integer WID list */
531c7ceb
LK
833 WID_FAILED_COUNT = 0x2000,
834 WID_RETRY_COUNT = 0x2001,
835 WID_MULTIPLE_RETRY_COUNT = 0x2002,
836 WID_FRAME_DUPLICATE_COUNT = 0x2003,
837 WID_ACK_FAILURE_COUNT = 0x2004,
838 WID_RECEIVED_FRAGMENT_COUNT = 0x2005,
839 WID_MCAST_RECEIVED_FRAME_COUNT = 0x2006,
840 WID_FCS_ERROR_COUNT = 0x2007,
841 WID_SUCCESS_FRAME_COUNT = 0x2008,
842 WID_HUT_TX_COUNT = 0x200A,
843 WID_TX_FRAGMENT_COUNT = 0x200B,
844 WID_TX_MULTICAST_FRAME_COUNT = 0x200C,
845 WID_RTS_SUCCESS_COUNT = 0x200D,
846 WID_RTS_FAILURE_COUNT = 0x200E,
847 WID_WEP_UNDECRYPTABLE_COUNT = 0x200F,
848 WID_REKEY_PERIOD = 0x2010,
849 WID_REKEY_PACKET_COUNT = 0x2011,
850 WID_1X_SERV_ADDR = 0x2012,
851 WID_STACK_IP_ADDR = 0x2013,
852 WID_STACK_NETMASK_ADDR = 0x2014,
853 WID_HW_RX_COUNT = 0x2015,
854 WID_MEMORY_ADDRESS = 0x201E,
855 WID_MEMORY_ACCESS_32BIT = 0x201F,
856 WID_RF_REG_VAL = 0x2021,
c5c77ba1 857
c5c77ba1 858 /* NMAC Integer WID list */
531c7ceb 859 WID_11N_PHY_ACTIVE_REG_VAL = 0x2080,
c5c77ba1
JK
860
861 /* Custom Integer WID list */
531c7ceb
LK
862 WID_GET_INACTIVE_TIME = 0x2084,
863 WID_SET_DRV_HANDLER = 0X2085,
864 WID_SET_OPERATION_MODE = 0X2086,
c5c77ba1 865 /* EMAC String WID list */
531c7ceb
LK
866 WID_SSID = 0x3000,
867 WID_FIRMWARE_VERSION = 0x3001,
868 WID_OPERATIONAL_RATE_SET = 0x3002,
869 WID_BSSID = 0x3003,
870 WID_WEP_KEY_VALUE = 0x3004,
871 WID_11I_PSK = 0x3008,
872 WID_11E_P_ACTION_REQ = 0x3009,
873 WID_1X_KEY = 0x300A,
874 WID_HARDWARE_VERSION = 0x300B,
875 WID_MAC_ADDR = 0x300C,
876 WID_HUT_DEST_ADDR = 0x300D,
877 WID_PHY_VERSION = 0x300F,
878 WID_SUPP_USERNAME = 0x3010,
879 WID_SUPP_PASSWORD = 0x3011,
880 WID_SITE_SURVEY_RESULTS = 0x3012,
881 WID_RX_POWER_LEVEL = 0x3013,
882 WID_DEL_ALL_RX_BA = 0x3014,
883 WID_SET_STA_MAC_INACTIVE_TIME = 0x3017,
884 WID_ADD_WEP_KEY = 0x3019,
885 WID_REMOVE_WEP_KEY = 0x301A,
886 WID_ADD_PTK = 0x301B,
887 WID_ADD_RX_GTK = 0x301C,
888 WID_ADD_TX_GTK = 0x301D,
889 WID_REMOVE_KEY = 0x301E,
890 WID_ASSOC_REQ_INFO = 0x301F,
891 WID_ASSOC_RES_INFO = 0x3020,
892 WID_MANUFACTURER = 0x3026, /*Added for CAPI tool */
893 WID_MODEL_NAME = 0x3027, /*Added for CAPI tool */
894 WID_MODEL_NUM = 0x3028, /*Added for CAPI tool */
895 WID_DEVICE_NAME = 0x3029, /*Added for CAPI tool */
c5c77ba1
JK
896
897 /* NMAC String WID list */
531c7ceb
LK
898 WID_11N_P_ACTION_REQ = 0x3080,
899 WID_HUT_TEST_ID = 0x3081,
900 WID_PMKID_INFO = 0x3082,
901 WID_FIRMWARE_INFO = 0x3083,
902 WID_REGISTER_FRAME = 0x3084,
903 WID_DEL_ALL_STA = 0x3085,
904 WID_REMAIN_ON_CHAN = 0x3996,
905 WID_SSID_PROBE_REQ = 0x3997,
906 WID_JOIN_REQ_EXTENDED = 0x3998,
907
908 WID_IP_ADDRESS = 0x3999,
c5c77ba1 909
c5c77ba1
JK
910 /* Custom String WID list */
911
912 /* EMAC Binary WID list */
531c7ceb
LK
913 WID_UAPSD_CONFIG = 0x4001,
914 WID_UAPSD_STATUS = 0x4002,
915 WID_WMM_AP_AC_PARAMS = 0x4003,
916 WID_WMM_STA_AC_PARAMS = 0x4004,
917 WID_NETWORK_INFO = 0x4005,
918 WID_STA_JOIN_INFO = 0x4006,
919 WID_CONNECTED_STA_LIST = 0x4007,
c5c77ba1
JK
920
921 /* NMAC Binary WID list */
531c7ceb 922 WID_11N_AUTORATE_TABLE = 0x4080,
c5c77ba1 923
531c7ceb 924 WID_SCAN_CHANNEL_LIST = 0x4084,
c5c77ba1 925
531c7ceb
LK
926 WID_INFO_ELEMENT_PROBE = 0x4085,
927 WID_INFO_ELEMENT_ASSOCIATE = 0x4086,
928 WID_ADD_STA = 0X4087,
929 WID_REMOVE_STA = 0X4088,
930 WID_EDIT_STA = 0X4089,
931 WID_ADD_BEACON = 0x408a,
c5c77ba1 932
c5c77ba1
JK
933 WID_SETUP_MULTICAST_FILTER = 0x408b,
934
935 /* Miscellaneous WIDs */
531c7ceb
LK
936 WID_ALL = 0x7FFE,
937 WID_MAX = 0xFFFF
c5c77ba1
JK
938} WID_T;
939
c9d4834d 940int wilc_wlan_init(wilc_wlan_inp_t *inp);
c5c77ba1
JK
941
942void wilc_bus_set_max_speed(void);
943void wilc_bus_set_default_speed(void);
fbc2fe16 944u32 wilc_get_chipid(u8 update);
c5c77ba1 945
c5c77ba1 946#endif
This page took 0.158378 seconds and 5 git commands to generate.