2 * This file contains definitions of WLAN commands.
8 /** PUBLIC DEFINITIONS */
9 #define DEFAULT_AD_HOC_CHANNEL 6
10 #define DEFAULT_AD_HOC_CHANNEL_A 36
12 /** IEEE 802.11 oids */
13 #define OID_802_11_SSID 0x00008002
14 #define OID_802_11_INFRASTRUCTURE_MODE 0x00008008
15 #define OID_802_11_FRAGMENTATION_THRESHOLD 0x00008009
16 #define OID_802_11_RTS_THRESHOLD 0x0000800A
17 #define OID_802_11_TX_ANTENNA_SELECTED 0x0000800D
18 #define OID_802_11_SUPPORTED_RATES 0x0000800E
19 #define OID_802_11_STATISTICS 0x00008012
20 #define OID_802_11_TX_RETRYCOUNT 0x0000801D
21 #define OID_802_11D_ENABLE 0x00008020
23 #define CMD_OPTION_WAITFORRSP 0x0002
25 /** Host command ID */
26 #define CMD_CODE_DNLD 0x0002
27 #define CMD_GET_HW_SPEC 0x0003
28 #define CMD_EEPROM_UPDATE 0x0004
29 #define CMD_802_11_RESET 0x0005
30 #define CMD_802_11_SCAN 0x0006
31 #define CMD_802_11_GET_LOG 0x000b
32 #define CMD_MAC_MULTICAST_ADR 0x0010
33 #define CMD_802_11_AUTHENTICATE 0x0011
34 #define CMD_802_11_EEPROM_ACCESS 0x0059
35 #define CMD_802_11_ASSOCIATE 0x0050
36 #define CMD_802_11_SET_WEP 0x0013
37 #define CMD_802_11_GET_STAT 0x0014
38 #define CMD_802_3_GET_STAT 0x0015
39 #define CMD_802_11_SNMP_MIB 0x0016
40 #define CMD_MAC_REG_MAP 0x0017
41 #define CMD_BBP_REG_MAP 0x0018
42 #define CMD_MAC_REG_ACCESS 0x0019
43 #define CMD_BBP_REG_ACCESS 0x001a
44 #define CMD_RF_REG_ACCESS 0x001b
45 #define CMD_802_11_RADIO_CONTROL 0x001c
46 #define CMD_802_11_RF_CHANNEL 0x001d
47 #define CMD_802_11_RF_TX_POWER 0x001e
48 #define CMD_802_11_RSSI 0x001f
49 #define CMD_802_11_RF_ANTENNA 0x0020
51 #define CMD_802_11_PS_MODE 0x0021
53 #define CMD_802_11_DATA_RATE 0x0022
54 #define CMD_RF_REG_MAP 0x0023
55 #define CMD_802_11_DEAUTHENTICATE 0x0024
56 #define CMD_802_11_REASSOCIATE 0x0025
57 #define CMD_802_11_DISASSOCIATE 0x0026
58 #define CMD_MAC_CONTROL 0x0028
59 #define CMD_802_11_AD_HOC_START 0x002b
60 #define CMD_802_11_AD_HOC_JOIN 0x002c
62 #define CMD_802_11_QUERY_TKIP_REPLY_CNTRS 0x002e
63 #define CMD_802_11_ENABLE_RSN 0x002f
64 #define CMD_802_11_PAIRWISE_TSC 0x0036
65 #define CMD_802_11_GROUP_TSC 0x0037
66 #define CMD_802_11_KEY_MATERIAL 0x005e
68 #define CMD_802_11_SET_AFC 0x003c
69 #define CMD_802_11_GET_AFC 0x003d
71 #define CMD_802_11_AD_HOC_STOP 0x0040
73 #define CMD_802_11_BEACON_STOP 0x0049
75 #define CMD_802_11_MAC_ADDRESS 0x004D
76 #define CMD_802_11_EEPROM_ACCESS 0x0059
78 #define CMD_802_11_BAND_CONFIG 0x0058
80 #define CMD_802_11D_DOMAIN_INFO 0x005b
82 #define CMD_802_11_SLEEP_PARAMS 0x0066
84 #define CMD_802_11_INACTIVITY_TIMEOUT 0x0067
86 #define CMD_802_11_TPC_CFG 0x0072
87 #define CMD_802_11_PWR_CFG 0x0073
89 #define CMD_802_11_LED_GPIO_CTRL 0x004e
91 #define CMD_802_11_SUBSCRIBE_EVENT 0x0075
93 #define CMD_802_11_RATE_ADAPT_RATESET 0x0076
95 #define CMD_802_11_TX_RATE_QUERY 0x007f
97 #define CMD_GET_TSF 0x0080
99 #define CMD_BT_ACCESS 0x0087
100 #define CMD_RET_BT_ACCESS 0x8087
102 #define CMD_FWT_ACCESS 0x0095
103 #define CMD_RET_FWT_ACCESS 0x8095
105 #define CMD_MESH_ACCESS 0x009b
106 #define CMD_RET_MESH_ACCESS 0x809b
108 /* For the IEEE Power Save */
109 #define CMD_SUBCMD_ENTER_PS 0x0030
110 #define CMD_SUBCMD_EXIT_PS 0x0031
111 #define CMD_SUBCMD_SLEEP_CONFIRMED 0x0034
112 #define CMD_SUBCMD_FULL_POWERDOWN 0x0035
113 #define CMD_SUBCMD_FULL_POWERUP 0x0036
115 /* command RET code, MSB is set to 1 */
116 #define CMD_RET_HW_SPEC_INFO 0x8003
117 #define CMD_RET_EEPROM_UPDATE 0x8004
118 #define CMD_RET_802_11_RESET 0x8005
119 #define CMD_RET_802_11_SCAN 0x8006
120 #define CMD_RET_802_11_GET_LOG 0x800b
121 #define CMD_RET_MAC_CONTROL 0x8028
122 #define CMD_RET_MAC_MULTICAST_ADR 0x8010
123 #define CMD_RET_802_11_AUTHENTICATE 0x8011
124 #define CMD_RET_802_11_DEAUTHENTICATE 0x8024
125 #define CMD_RET_802_11_ASSOCIATE 0x8012
126 #define CMD_RET_802_11_REASSOCIATE 0x8025
127 #define CMD_RET_802_11_DISASSOCIATE 0x8026
128 #define CMD_RET_802_11_SET_WEP 0x8013
129 #define CMD_RET_802_11_STAT 0x8014
130 #define CMD_RET_802_3_STAT 0x8015
131 #define CMD_RET_802_11_SNMP_MIB 0x8016
132 #define CMD_RET_MAC_REG_MAP 0x8017
133 #define CMD_RET_BBP_REG_MAP 0x8018
134 #define CMD_RET_RF_REG_MAP 0x8023
135 #define CMD_RET_MAC_REG_ACCESS 0x8019
136 #define CMD_RET_BBP_REG_ACCESS 0x801a
137 #define CMD_RET_RF_REG_ACCESS 0x801b
138 #define CMD_RET_802_11_RADIO_CONTROL 0x801c
139 #define CMD_RET_802_11_RF_CHANNEL 0x801d
140 #define CMD_RET_802_11_RSSI 0x801f
141 #define CMD_RET_802_11_RF_TX_POWER 0x801e
142 #define CMD_RET_802_11_RF_ANTENNA 0x8020
143 #define CMD_RET_802_11_PS_MODE 0x8021
144 #define CMD_RET_802_11_DATA_RATE 0x8022
146 #define CMD_RET_802_11_AD_HOC_START 0x802B
147 #define CMD_RET_802_11_AD_HOC_JOIN 0x802C
149 #define CMD_RET_802_11_QUERY_TKIP_REPLY_CNTRS 0x802e
150 #define CMD_RET_802_11_ENABLE_RSN 0x802f
151 #define CMD_RET_802_11_PAIRWISE_TSC 0x8036
152 #define CMD_RET_802_11_GROUP_TSC 0x8037
153 #define CMD_RET_802_11_KEY_MATERIAL 0x805e
155 #define CMD_ENABLE_RSN 0x0001
156 #define CMD_DISABLE_RSN 0x0000
158 #define CMD_ACT_SET 0x0001
159 #define CMD_ACT_GET 0x0000
161 #define CMD_ACT_GET_AES (CMD_ACT_GET + 2)
162 #define CMD_ACT_SET_AES (CMD_ACT_SET + 2)
163 #define CMD_ACT_REMOVE_AES (CMD_ACT_SET + 3)
165 #define CMD_RET_802_11_SET_AFC 0x803c
166 #define CMD_RET_802_11_GET_AFC 0x803d
168 #define CMD_RET_802_11_AD_HOC_STOP 0x8040
170 #define CMD_RET_802_11_BEACON_STOP 0x8049
172 #define CMD_RET_802_11_MAC_ADDRESS 0x804D
173 #define CMD_RET_802_11_EEPROM_ACCESS 0x8059
175 #define CMD_RET_802_11_BAND_CONFIG 0x8058
177 #define CMD_RET_802_11_SLEEP_PARAMS 0x8066
179 #define CMD_RET_802_11_INACTIVITY_TIMEOUT 0x8067
181 #define CMD_RET_802_11D_DOMAIN_INFO (0x8000 | \
182 CMD_802_11D_DOMAIN_INFO)
184 #define CMD_RET_802_11_TPC_CFG (CMD_802_11_TPC_CFG | 0x8000)
185 #define CMD_RET_802_11_PWR_CFG (CMD_802_11_PWR_CFG | 0x8000)
187 #define CMD_RET_802_11_LED_GPIO_CTRL 0x804e
189 #define CMD_RET_802_11_SUBSCRIBE_EVENT (CMD_802_11_SUBSCRIBE_EVENT | 0x8000)
191 #define CMD_RET_802_11_RATE_ADAPT_RATESET (CMD_802_11_RATE_ADAPT_RATESET | 0x8000)
193 #define CMD_RTE_802_11_TX_RATE_QUERY (CMD_802_11_TX_RATE_QUERY | 0x8000)
195 #define CMD_RET_GET_TSF 0x8080
197 /* Define action or option for CMD_802_11_SET_WEP */
198 #define CMD_ACT_ADD 0x0002
199 #define CMD_ACT_REMOVE 0x0004
200 #define CMD_ACT_USE_DEFAULT 0x0008
202 #define CMD_TYPE_WEP_40_BIT 0x0001
203 #define CMD_TYPE_WEP_104_BIT 0x0002
205 #define CMD_NUM_OF_WEP_KEYS 4
207 #define CMD_WEP_KEY_INDEX_MASK 0x3fff
209 /* Define action or option for CMD_802_11_RESET */
210 #define CMD_ACT_HALT 0x0003
212 /* Define action or option for CMD_802_11_SCAN */
213 #define CMD_BSS_TYPE_BSS 0x0001
214 #define CMD_BSS_TYPE_IBSS 0x0002
215 #define CMD_BSS_TYPE_ANY 0x0003
217 /* Define action or option for CMD_802_11_SCAN */
218 #define CMD_SCAN_TYPE_ACTIVE 0x0000
219 #define CMD_SCAN_TYPE_PASSIVE 0x0001
221 #define CMD_SCAN_RADIO_TYPE_BG 0
223 #define CMD_SCAN_PROBE_DELAY_TIME 0
225 /* Define action or option for CMD_MAC_CONTROL */
226 #define CMD_ACT_MAC_RX_ON 0x0001
227 #define CMD_ACT_MAC_TX_ON 0x0002
228 #define CMD_ACT_MAC_LOOPBACK_ON 0x0004
229 #define CMD_ACT_MAC_WEP_ENABLE 0x0008
230 #define CMD_ACT_MAC_INT_ENABLE 0x0010
231 #define CMD_ACT_MAC_MULTICAST_ENABLE 0x0020
232 #define CMD_ACT_MAC_BROADCAST_ENABLE 0x0040
233 #define CMD_ACT_MAC_PROMISCUOUS_ENABLE 0x0080
234 #define CMD_ACT_MAC_ALL_MULTICAST_ENABLE 0x0100
235 #define CMD_ACT_MAC_STRICT_PROTECTION_ENABLE 0x0400
237 /* Define action or option for CMD_802_11_RADIO_CONTROL */
238 #define CMD_TYPE_AUTO_PREAMBLE 0x0001
239 #define CMD_TYPE_SHORT_PREAMBLE 0x0002
240 #define CMD_TYPE_LONG_PREAMBLE 0x0003
242 #define TURN_ON_RF 0x01
243 #define RADIO_ON 0x01
244 #define RADIO_OFF 0x00
246 #define SET_AUTO_PREAMBLE 0x05
247 #define SET_SHORT_PREAMBLE 0x03
248 #define SET_LONG_PREAMBLE 0x01
250 /* Define action or option for CMD_802_11_RF_CHANNEL */
251 #define CMD_OPT_802_11_RF_CHANNEL_GET 0x00
252 #define CMD_OPT_802_11_RF_CHANNEL_SET 0x01
254 /* Define action or option for CMD_802_11_RF_TX_POWER */
255 #define CMD_ACT_TX_POWER_OPT_GET 0x0000
256 #define CMD_ACT_TX_POWER_OPT_SET_HIGH 0x8007
257 #define CMD_ACT_TX_POWER_OPT_SET_MID 0x8004
258 #define CMD_ACT_TX_POWER_OPT_SET_LOW 0x8000
260 #define CMD_ACT_TX_POWER_INDEX_HIGH 0x0007
261 #define CMD_ACT_TX_POWER_INDEX_MID 0x0004
262 #define CMD_ACT_TX_POWER_INDEX_LOW 0x0000
264 /* Define action or option for CMD_802_11_DATA_RATE */
265 #define CMD_ACT_SET_tx_auto 0x0000
266 #define CMD_ACT_SET_tx_fix_rate 0x0001
267 #define CMD_ACT_GET_tx_rate 0x0002
269 #define CMD_ACT_SET_rx 0x0001
270 #define CMD_ACT_SET_tx 0x0002
271 #define CMD_ACT_SET_both 0x0003
272 #define CMD_ACT_GET_rx 0x0004
273 #define CMD_ACT_GET_tx 0x0008
274 #define CMD_ACT_GET_both 0x000c
276 /* Define action or option for CMD_802_11_PS_MODE */
277 #define CMD_TYPE_CAM 0x0000
278 #define CMD_TYPE_MAX_PSP 0x0001
279 #define CMD_TYPE_FAST_PSP 0x0002
281 /* Define action or option for CMD_BT_ACCESS */
282 enum CMD_BT_ACCESS_opts {
283 /* The bt commands start at 5 instead of 1 because the old dft commands
284 * are mapped to 1-4. These old commands are no longer maintained and
285 * should not be called.
287 CMD_ACT_BT_ACCESS_ADD = 5,
288 CMD_ACT_BT_ACCESS_DEL,
289 CMD_ACT_BT_ACCESS_LIST,
290 CMD_ACT_BT_ACCESS_RESET,
291 CMD_ACT_BT_ACCESS_SET_INVERT,
292 CMD_ACT_BT_ACCESS_GET_INVERT
295 /* Define action or option for CMD_FWT_ACCESS */
296 enum CMD_FWT_ACCESS_opts {
297 CMD_ACT_FWT_ACCESS_ADD = 1,
298 CMD_ACT_FWT_ACCESS_DEL,
299 CMD_ACT_FWT_ACCESS_LOOKUP,
300 CMD_ACT_FWT_ACCESS_LIST,
301 CMD_ACT_FWT_ACCESS_LIST_route,
302 CMD_ACT_FWT_ACCESS_LIST_neighbor,
303 CMD_ACT_FWT_ACCESS_RESET,
304 CMD_ACT_FWT_ACCESS_CLEANUP,
305 CMD_ACT_FWT_ACCESS_TIME,
308 /* Define action or option for CMD_MESH_ACCESS */
309 enum CMD_MESH_ACCESS_opts {
310 CMD_ACT_MESH_GET_TTL = 1,
311 CMD_ACT_MESH_SET_TTL,
312 CMD_ACT_MESH_GET_STATS,
313 CMD_ACT_MESH_GET_ANYCAST,
314 CMD_ACT_MESH_SET_ANYCAST,
317 /** Card Event definition */
318 #define MACREG_INT_CODE_TX_PPA_FREE 0x00000000
319 #define MACREG_INT_CODE_TX_DMA_DONE 0x00000001
320 #define MACREG_INT_CODE_LINK_LOSE_W_SCAN 0x00000002
321 #define MACREG_INT_CODE_LINK_LOSE_NO_SCAN 0x00000003
322 #define MACREG_INT_CODE_LINK_SENSED 0x00000004
323 #define MACREG_INT_CODE_CMD_FINISHED 0x00000005
324 #define MACREG_INT_CODE_MIB_CHANGED 0x00000006
325 #define MACREG_INT_CODE_INIT_DONE 0x00000007
326 #define MACREG_INT_CODE_DEAUTHENTICATED 0x00000008
327 #define MACREG_INT_CODE_DISASSOCIATED 0x00000009
328 #define MACREG_INT_CODE_PS_AWAKE 0x0000000a
329 #define MACREG_INT_CODE_PS_SLEEP 0x0000000b
330 #define MACREG_INT_CODE_MIC_ERR_MULTICAST 0x0000000d
331 #define MACREG_INT_CODE_MIC_ERR_UNICAST 0x0000000e
332 #define MACREG_INT_CODE_WM_AWAKE 0x0000000f
333 #define MACREG_INT_CODE_ADHOC_BCN_LOST 0x00000011
334 #define MACREG_INT_CODE_RSSI_LOW 0x00000019
335 #define MACREG_INT_CODE_SNR_LOW 0x0000001a
336 #define MACREG_INT_CODE_MAX_FAIL 0x0000001b
337 #define MACREG_INT_CODE_RSSI_HIGH 0x0000001c
338 #define MACREG_INT_CODE_SNR_HIGH 0x0000001d
339 #define MACREG_INT_CODE_MESH_AUTO_STARTED 0x00000023
341 #endif /* _HOST_H_ */