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