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