Merge branch 'sched/latest' of git://git.kernel.org/pub/scm/linux/kernel/git/ghaskins...
[linux-2.6] / drivers / staging / winbond / ioctls.h
1 //============================================================================
2 //  IOCTLS.H -
3 //
4 //  Description:
5 //    Define the IOCTL codes.
6 //
7 //  Revision history:
8 //  --------------------------------------------------------------------------
9 //
10 //  Copyright (c) 2002-2004 Winbond Electronics Corp. All rights reserved.
11 //=============================================================================
12
13 #ifndef _IOCTLS_H
14 #define _IOCTLS_H
15
16 // PD43 Keep it - Used with the Win33 application
17 // #include <winioctl.h>
18
19 //========================================================
20 // 20040108 ADD the follow for test
21 //========================================================
22 #define INFORMATION_LENGTH sizeof(unsigned int)
23
24 #define WB32_IOCTL_INDEX  0x0900 //­×§ďĽHŤKŹŰŽe//
25
26 #define Wb32_RegisterRead                       CTL_CODE(       \
27                         FILE_DEVICE_UNKNOWN,                            \
28             WB32_IOCTL_INDEX + 0,                               \
29             METHOD_BUFFERED,                                    \
30             FILE_ANY_ACCESS)
31
32 #define Wb32_RegisterWrite                      CTL_CODE(       \
33             FILE_DEVICE_UNKNOWN,                                \
34             WB32_IOCTL_INDEX + 1,                               \
35             METHOD_BUFFERED,                                    \
36             FILE_ANY_ACCESS)
37
38 #define Wb32_SendPacket                         CTL_CODE(       \
39             FILE_DEVICE_UNKNOWN,                                \
40             WB32_IOCTL_INDEX + 2,                               \
41             METHOD_BUFFERED,                                    \
42             FILE_ANY_ACCESS)
43
44 #define Wb32_QuerySendResult            CTL_CODE(       \
45             FILE_DEVICE_UNKNOWN,                                \
46             WB32_IOCTL_INDEX + 3,                               \
47             METHOD_BUFFERED,                                    \
48             FILE_ANY_ACCESS)
49
50 #define Wb32_SetFragmentThreshold       CTL_CODE(       \
51             FILE_DEVICE_UNKNOWN,                                \
52             WB32_IOCTL_INDEX + 4,                               \
53             METHOD_BUFFERED,                                    \
54             FILE_ANY_ACCESS)
55
56 #define Wb32_SetLinkStatus              CTL_CODE(       \
57             FILE_DEVICE_UNKNOWN,                                \
58             WB32_IOCTL_INDEX + 5,                               \
59             METHOD_BUFFERED,                                    \
60             FILE_ANY_ACCESS)
61
62 #define Wb32_SetBulkIn                  CTL_CODE(       \
63             FILE_DEVICE_UNKNOWN,                                \
64             WB32_IOCTL_INDEX + 6,                               \
65             METHOD_BUFFERED,                                    \
66             FILE_ANY_ACCESS)
67
68 #define Wb32_LoopbackTest                       CTL_CODE(       \
69             FILE_DEVICE_UNKNOWN,                                \
70             WB32_IOCTL_INDEX + 7,                               \
71             METHOD_BUFFERED,                                    \
72             FILE_ANY_ACCESS)
73
74 #define Wb35_EEPromRead                         CTL_CODE(       \
75             FILE_DEVICE_UNKNOWN,                                \
76             WB32_IOCTL_INDEX + 8,                               \
77             METHOD_BUFFERED,                                    \
78             FILE_ANY_ACCESS)
79
80 #define Wb35_EEPromWrite                        CTL_CODE(       \
81             FILE_DEVICE_UNKNOWN,                                \
82             WB32_IOCTL_INDEX + 9,                               \
83             METHOD_BUFFERED,                                    \
84             FILE_ANY_ACCESS)
85
86 #define Wb35_FlashReadData                      CTL_CODE(       \
87             FILE_DEVICE_UNKNOWN,                                \
88             WB32_IOCTL_INDEX + 10,                              \
89             METHOD_BUFFERED,                                    \
90             FILE_ANY_ACCESS)
91
92 #define Wb35_FlashWrite                         CTL_CODE(       \
93             FILE_DEVICE_UNKNOWN,                                \
94             WB32_IOCTL_INDEX + 11,                              \
95             METHOD_BUFFERED,                                    \
96             FILE_ANY_ACCESS)
97
98 #define Wb35_FlashWriteBurst            CTL_CODE(       \
99             FILE_DEVICE_UNKNOWN,                                \
100             WB32_IOCTL_INDEX + 12,                              \
101             METHOD_BUFFERED,                                    \
102             FILE_ANY_ACCESS)
103
104 #define Wb35_TxBurstStart                       CTL_CODE(       \
105             FILE_DEVICE_UNKNOWN,                                \
106             WB32_IOCTL_INDEX + 13,                              \
107             METHOD_BUFFERED,                                    \
108             FILE_ANY_ACCESS)
109
110 #define Wb35_TxBurstStop                        CTL_CODE(       \
111             FILE_DEVICE_UNKNOWN,                                \
112             WB32_IOCTL_INDEX + 14,                              \
113             METHOD_BUFFERED,                                    \
114             FILE_ANY_ACCESS)
115
116 #define Wb35_TxBurstStatus                      CTL_CODE(       \
117             FILE_DEVICE_UNKNOWN,                                \
118             WB32_IOCTL_INDEX + 15,                              \
119             METHOD_BUFFERED,                                    \
120             FILE_ANY_ACCESS)
121
122 // For IOCTL interface
123 //================================================
124 #define LINKNAME_STRING     "\\DosDevices\\W35UND"
125 #define NTDEVICE_STRING     "\\Device\\W35UND"
126 #define APPLICATION_LINK        "\\\\.\\W35UND"
127
128 #define WB_IOCTL_INDEX      0x0800
129 #define WB_IOCTL_TS_INDEX   WB_IOCTL_INDEX + 60
130 #define WB_IOCTL_DUT_INDEX  WB_IOCTL_TS_INDEX + 40
131
132 //=============================================================================
133 // IOCTLS defined for DUT (Device Under Test)
134
135 // IOCTL_WB_802_11_DUT_MAC_ADDRESS
136 // Query: Return the dot11StationID
137 // Set  : Set the dot11StationID. Demo only.
138 //
139 #define IOCTL_WB_802_11_DUT_MAC_ADDRESS     CTL_CODE(  \
140             FILE_DEVICE_UNKNOWN,                        \
141             WB_IOCTL_DUT_INDEX + 1,                     \
142             METHOD_BUFFERED,                            \
143             FILE_ANY_ACCESS)
144
145 // IOCTL_WB_802_11_DUT_BSS_DESCRIPTION
146 // Query: Return the info. of the current connected BSS.
147 // Set  : None.
148 //
149 #define IOCTL_WB_802_11_DUT_BSS_DESCRIPTION   CTL_CODE(  \
150             FILE_DEVICE_UNKNOWN,                          \
151             WB_IOCTL_DUT_INDEX + 2,                       \
152             METHOD_BUFFERED,                              \
153             FILE_ANY_ACCESS)
154
155 // IOCTL_WB_802_11_DUT_TX_RATE
156 // Query: Return the current transmission rate.
157 // Set  : Set the transmission rate of the Tx packets.
158 //
159 #define IOCTL_WB_802_11_DUT_TX_RATE             CTL_CODE(  \
160             FILE_DEVICE_UNKNOWN,                            \
161             WB_IOCTL_DUT_INDEX + 3,                         \
162             METHOD_BUFFERED,                                \
163             FILE_ANY_ACCESS)
164
165 // IOCTL_WB_802_11_DUT_CURRENT_STA_STATE
166 // Query: Return the current STA state. (WB_STASTATE type)
167 // Set  : None.
168 //
169 #define IOCTL_WB_802_11_DUT_CURRENT_STA_STATE   CTL_CODE(  \
170             FILE_DEVICE_UNKNOWN,                            \
171             WB_IOCTL_DUT_INDEX + 4,                         \
172             METHOD_BUFFERED,                                \
173             FILE_ANY_ACCESS)
174
175 /////////// 10/31/02' Added /////////////////////
176
177 // IOCTL_WB_802_11_DUT_START_IBSS_REQUEST
178 // Query: None.
179 // Set  : Start a new IBSS
180 //
181 #define IOCTL_WB_802_11_DUT_START_IBSS_REQUEST  CTL_CODE(  \
182             FILE_DEVICE_UNKNOWN,                            \
183             WB_IOCTL_DUT_INDEX + 5,                         \
184             METHOD_BUFFERED,                                \
185             FILE_ANY_ACCESS)
186
187 // IOCTL_WB_802_11_DUT_JOIN_REQUEST
188 // Query: None.
189 // Set  : Synchronize with the selected BSS
190 //
191 #define IOCTL_WB_802_11_DUT_JOIN_REQUEST        CTL_CODE(  \
192             FILE_DEVICE_UNKNOWN,                            \
193             WB_IOCTL_DUT_INDEX + 6,                         \
194             METHOD_BUFFERED,                                \
195             FILE_ANY_ACCESS)
196
197 // IOCTL_WB_802_11_DUT_AUTHEN_REQUEST
198 // Query: None.
199 // Set  : Authenticate with the BSS
200 //
201 #define IOCTL_WB_802_11_DUT_AUTHEN_REQUEST      CTL_CODE(  \
202             FILE_DEVICE_UNKNOWN,                            \
203             WB_IOCTL_DUT_INDEX + 7,                         \
204             METHOD_BUFFERED,                                \
205             FILE_ANY_ACCESS)
206
207 // IOCTL_WB_802_11_DUT_DEAUTHEN_REQUEST
208 // Query: None.
209 // Set  : DeAuthenticate withe the BSS
210 //
211 #define IOCTL_WB_802_11_DUT_DEAUTHEN_REQUEST    CTL_CODE(  \
212             FILE_DEVICE_UNKNOWN,                            \
213             WB_IOCTL_DUT_INDEX + 8,                         \
214             METHOD_BUFFERED,                                \
215             FILE_ANY_ACCESS)
216
217 // IOCTL_WB_802_11_DUT_ASSOC_REQUEST
218 // Query: None.
219 // Set  : Associate withe the BSS
220 //
221 #define IOCTL_WB_802_11_DUT_ASSOC_REQUEST       CTL_CODE(  \
222             FILE_DEVICE_UNKNOWN,                            \
223             WB_IOCTL_DUT_INDEX + 9,                         \
224             METHOD_BUFFERED,                                \
225             FILE_ANY_ACCESS)
226
227 // IOCTL_WB_802_11_DUT_REASSOC_REQUEST
228 // Query: None.
229 // Set  : ReAssociate withe the BSS
230 //
231 #define IOCTL_WB_802_11_DUT_REASSOC_REQUEST     CTL_CODE(  \
232             FILE_DEVICE_UNKNOWN,                            \
233             WB_IOCTL_DUT_INDEX + 10,                        \
234             METHOD_BUFFERED,                                \
235             FILE_ANY_ACCESS)
236
237
238 // IOCTL_WB_802_11_DUT_DISASSOC_REQUEST
239 // Query: None.
240 // Set  : DisAssociate withe the BSS
241 //
242 #define IOCTL_WB_802_11_DUT_DISASSOC_REQUEST    CTL_CODE(  \
243             FILE_DEVICE_UNKNOWN,                            \
244             WB_IOCTL_DUT_INDEX + 11,                        \
245             METHOD_BUFFERED,                                \
246             FILE_ANY_ACCESS)
247
248 // IOCTL_WB_802_11_DUT_FRAG_THRESHOLD
249 // Query: Return the dot11FragmentThreshold
250 // Set  : Set the dot11FragmentThreshold
251 //
252 #define IOCTL_WB_802_11_DUT_FRAG_THRESHOLD      CTL_CODE(  \
253             FILE_DEVICE_UNKNOWN,                            \
254             WB_IOCTL_DUT_INDEX + 12,                        \
255             METHOD_BUFFERED,                                \
256             FILE_ANY_ACCESS)
257
258 // IOCTL_WB_802_11_DUT_RTS_THRESHOLD
259 // Query: Return the dot11RTSThreshold
260 // Set  : Set the dot11RTSThresold
261 //
262 #define IOCTL_WB_802_11_DUT_RTS_THRESHOLD       CTL_CODE(  \
263             FILE_DEVICE_UNKNOWN,                            \
264             WB_IOCTL_DUT_INDEX + 13,                        \
265             METHOD_BUFFERED,                                \
266             FILE_ANY_ACCESS)
267
268 // IOCTL_WB_802_11_DUT_WEP_KEYMODE
269 // Query: Get the WEP key mode.
270 // Set  : Set the WEP key mode: disable/64 bits/128 bits
271 //
272 #define IOCTL_WB_802_11_DUT_WEP_KEYMODE         CTL_CODE(  \
273             FILE_DEVICE_UNKNOWN,                            \
274             WB_IOCTL_DUT_INDEX + 14,                        \
275             METHOD_BUFFERED,                                \
276             FILE_ANY_ACCESS)
277
278 // IOCTL_WB_802_11_DUT_WEP_KEYVALUE
279 // Query: None.
280 // Set  : fill in the WEP key value
281 //
282 #define IOCTL_WB_802_11_DUT_WEP_KEYVALUE        CTL_CODE(  \
283             FILE_DEVICE_UNKNOWN,                            \
284             WB_IOCTL_DUT_INDEX + 15,                        \
285             METHOD_BUFFERED,                                \
286             FILE_ANY_ACCESS)
287
288 // IOCTL_WB_802_11_DUT_RESET
289 // Query: None.
290 // Set  : Reset S/W and H/W
291 //
292 #define IOCTL_WB_802_11_DUT_RESET          CTL_CODE(       \
293             FILE_DEVICE_UNKNOWN,                            \
294             WB_IOCTL_DUT_INDEX + 16,                        \
295             METHOD_BUFFERED,                                \
296             FILE_ANY_ACCESS)
297
298 // IOCTL_WB_802_11_DUT_POWER_SAVE
299 // Query: None.
300 // Set  : Set Power Save Mode
301 //
302 #define IOCTL_WB_802_11_DUT_POWER_SAVE    CTL_CODE(        \
303             FILE_DEVICE_UNKNOWN,                            \
304             WB_IOCTL_DUT_INDEX + 17,                        \
305             METHOD_BUFFERED,                                \
306             FILE_ANY_ACCESS)
307
308 // IOCTL_WB_802_11_DUT_BSSID_LIST_SCAN
309 // Query: None.
310 // Set  :
311 //
312 #define IOCTL_WB_802_11_DUT_BSSID_LIST_SCAN CTL_CODE(      \
313             FILE_DEVICE_UNKNOWN,                            \
314             WB_IOCTL_DUT_INDEX + 18,                        \
315             METHOD_BUFFERED,                                \
316             FILE_ANY_ACCESS)
317
318 // IOCTL_WB_802_11_DUT_BSSID_LIST
319 // Query: Return the BSS info of BSSs in the last scanning process
320 // Set  : None.
321 //
322 #define IOCTL_WB_802_11_DUT_BSSID_LIST    CTL_CODE(        \
323             FILE_DEVICE_UNKNOWN,                            \
324             WB_IOCTL_DUT_INDEX + 19,                        \
325             METHOD_BUFFERED,                                \
326             FILE_ANY_ACCESS)
327
328 // IOCTL_WB_802_11_DUT_STATISTICS
329 // Query: Return the statistics of Tx/Rx.
330 // Set  : None.
331 //
332 #define IOCTL_WB_802_11_DUT_STATISTICS    CTL_CODE(        \
333             FILE_DEVICE_UNKNOWN,                            \
334             WB_IOCTL_DUT_INDEX + 20,                        \
335             METHOD_BUFFERED,                                \
336             FILE_ANY_ACCESS)
337
338 // IOCTL_WB_802_11_DUT_ACCEPT_BEACON
339 // Query: Return the current mode to accept beacon or not.
340 // Set  : Enable or disable allowing the HW-MAC to pass the beacon to the SW-MAC
341 // Arguments: unsigned char
342 //
343 #define IOCTL_WB_802_11_DUT_ACCEPT_BEACON  CTL_CODE(       \
344             FILE_DEVICE_UNKNOWN,                            \
345             WB_IOCTL_DUT_INDEX + 21,                        \
346             METHOD_BUFFERED,                                \
347             FILE_ANY_ACCESS)
348
349 // IOCTL_WB_802_11_DUT_ROAMING
350 // Query: Return the roaming function status
351 // Set  : Enable/Disable the roaming function.
352 #define IOCTL_WB_802_11_DUT_ROAMING        CTL_CODE(       \
353             FILE_DEVICE_UNKNOWN,                            \
354             WB_IOCTL_DUT_INDEX + 22,                        \
355             METHOD_BUFFERED,                                \
356             FILE_ANY_ACCESS)
357
358 // IOCTL_WB_802_11_DUT_DTO
359 // Query: Return the DTO(Data Throughput Optimization)
360 //        function status (TRUE or FALSE)
361 // Set  : Enable/Disable the DTO function.
362 //
363 #define IOCTL_WB_802_11_DUT_DTO            CTL_CODE(       \
364             FILE_DEVICE_UNKNOWN,                            \
365             WB_IOCTL_DUT_INDEX + 23,                        \
366             METHOD_BUFFERED,                                \
367             FILE_ANY_ACCESS)
368
369 // IOCTL_WB_802_11_DUT_ANTENNA_DIVERSITY
370 // Query: Return the antenna diversity status. (TRUE/ON or FALSE/OFF)
371 // Set  : Enable/Disable the antenna diversity.
372 //
373 #define IOCTL_WB_802_11_DUT_ANTENNA_DIVERSITY CTL_CODE(    \
374             FILE_DEVICE_UNKNOWN,                            \
375             WB_IOCTL_DUT_INDEX + 24,                        \
376             METHOD_BUFFERED,                                \
377             FILE_ANY_ACCESS)
378
379 //-------------- new added for a+b+g ---------------------
380 // IOCTL_WB_802_11_DUT_MAC_OPERATION_MODE
381 // Query: Return the MAC operation mode. (MODE_802_11_BG, MODE_802_11_A,
382 //                       MODE_802_11_ABG, MODE_802_11_BG_IBSS)
383 // Set  : Set the MAC operation mode.
384 //
385 #define IOCTL_WB_802_11_DUT_MAC_OPERATION_MODE CTL_CODE(    \
386             FILE_DEVICE_UNKNOWN,                            \
387             WB_IOCTL_DUT_INDEX + 25,                        \
388             METHOD_BUFFERED,                                \
389             FILE_ANY_ACCESS)
390
391 // IOCTL_WB_802_11_DUT_TX_RATE_REDEFINED
392 // Query: Return the current tx rate which follows the definition in spec. (for
393 //                      example, 5.5M => 0x0b)
394 // Set  : None
395 //
396 #define IOCTL_WB_802_11_DUT_TX_RATE_REDEFINED CTL_CODE(    \
397             FILE_DEVICE_UNKNOWN,                            \
398             WB_IOCTL_DUT_INDEX + 26,                        \
399             METHOD_BUFFERED,                                \
400             FILE_ANY_ACCESS)
401
402 // IOCTL_WB_802_11_DUT_PREAMBLE_MODE
403 // Query: Return the preamble mode. (auto or long)
404 // Set  : Set the preamble mode.
405 //
406 #define IOCTL_WB_802_11_DUT_PREAMBLE_MODE CTL_CODE(    \
407             FILE_DEVICE_UNKNOWN,                            \
408             WB_IOCTL_DUT_INDEX + 27,                        \
409             METHOD_BUFFERED,                                \
410             FILE_ANY_ACCESS)
411
412 // IOCTL_WB_802_11_DUT_SLOT_TIME_MODE
413 // Query: Return the slot time mode. (auto or long)
414 // Set  : Set the slot time mode.
415 //
416 #define IOCTL_WB_802_11_DUT_SLOT_TIME_MODE CTL_CODE(    \
417             FILE_DEVICE_UNKNOWN,                            \
418             WB_IOCTL_DUT_INDEX + 28,                        \
419             METHOD_BUFFERED,                                \
420             FILE_ANY_ACCESS)
421 //------------------------------------------------------------------
422
423 // IOCTL_WB_802_11_DUT_ADVANCE_STATUS
424 // Query:
425 // Set  : NONE
426 //
427 #define IOCTL_WB_802_11_DUT_ADVANCE_STATUS CTL_CODE(    \
428             FILE_DEVICE_UNKNOWN,                            \
429             WB_IOCTL_DUT_INDEX + 29,                        \
430             METHOD_BUFFERED,                                \
431             FILE_ANY_ACCESS)
432
433 // IOCTL_WB_802_11_DUT_TX_RATE_MODE
434 // Query: Return the tx rate mode. (RATE_AUTO, RATE_1M, .., RATE_54M, RATE_MAX)
435 // Set  : Set the tx rate mode.  (RATE_AUTO, RATE_1M, .., RATE_54M, RATE_MAX)
436 //
437 #define IOCTL_WB_802_11_DUT_TX_RATE_MODE CTL_CODE(    \
438             FILE_DEVICE_UNKNOWN,                            \
439             WB_IOCTL_DUT_INDEX + 30,                        \
440             METHOD_BUFFERED,                                \
441             FILE_ANY_ACCESS)
442
443 // IOCTL_WB_802_11_DUT_DTO_PARA
444 // Query: Return the DTO parameters
445 // Set  : Set the DTO parameters
446 //
447 #define IOCTL_WB_802_11_DUT_DTO_PARA CTL_CODE(    \
448             FILE_DEVICE_UNKNOWN,                            \
449             WB_IOCTL_DUT_INDEX + 31,                        \
450             METHOD_BUFFERED,                                \
451             FILE_ANY_ACCESS)
452
453 // IOCTL_WB_802_11_DUT_EVENT_LOG
454 // Query: Return event log
455 // Set  : Reset event log
456 //
457 #define IOCTL_WB_802_11_DUT_EVENT_LOG CTL_CODE(    \
458             FILE_DEVICE_UNKNOWN,                            \
459             WB_IOCTL_DUT_INDEX + 32,                        \
460             METHOD_BUFFERED,                                \
461             FILE_ANY_ACCESS)
462
463 // IOCTL_WB_802_11_DUT_CWMIN
464 // Query: NONE(It will be obtained by IOCTL_WB_802_11_DUT_ADVANCE_STATUS)
465 // Set  : Set CWMin value
466 //
467 #define IOCTL_WB_802_11_DUT_CWMIN CTL_CODE(    \
468             FILE_DEVICE_UNKNOWN,                            \
469             WB_IOCTL_DUT_INDEX + 33,                        \
470             METHOD_BUFFERED,                                \
471             FILE_ANY_ACCESS)
472
473 // IOCTL_WB_802_11_DUT_CWMAX
474 // Query: NONE(It will be obtained by IOCTL_WB_802_11_DUT_ADVANCE_STATUS)
475 // Set  : Set CWMax value
476 //
477 #define IOCTL_WB_802_11_DUT_CWMAX CTL_CODE(    \
478             FILE_DEVICE_UNKNOWN,                            \
479             WB_IOCTL_DUT_INDEX + 34,                        \
480             METHOD_BUFFERED,                                \
481             FILE_ANY_ACCESS)
482
483
484 //==========================================================
485 // IOCTLs for Testing
486
487 // IOCTL_WB_802_11_TS_SET_CXX_REG
488 // Query: None
489 // Set  : Write the value to one of Cxx register.
490 //
491 #define IOCTL_WB_802_11_TS_SET_CXX_REG  CTL_CODE(          \
492             FILE_DEVICE_UNKNOWN,                            \
493             WB_IOCTL_TS_INDEX + 0,                          \
494             METHOD_BUFFERED,                                \
495             FILE_ANY_ACCESS)
496
497 // IOCTL_WB_802_11_TS_GET_CXX_REG
498 // Query: Return the value of the Cxx register.
499 // Set  : Write the reg no. (0x00, 0x04, 0x08 etc)
500 //
501 #define IOCTL_WB_802_11_TS_GET_CXX_REG  CTL_CODE(          \
502             FILE_DEVICE_UNKNOWN,                            \
503             WB_IOCTL_TS_INDEX + 1,                          \
504             METHOD_BUFFERED,                                \
505             FILE_ANY_ACCESS)
506
507 // IOCTL_WB_802_11_TS_SET_DXX_REG
508 // Query: None
509 // Set  : Write the value to one of Dxx register.
510 //
511 #define IOCTL_WB_802_11_TS_SET_DXX_REG  CTL_CODE(          \
512             FILE_DEVICE_UNKNOWN,                            \
513             WB_IOCTL_TS_INDEX + 2,                          \
514             METHOD_BUFFERED,                                \
515             FILE_ANY_ACCESS)
516
517 // IOCTL_WB_802_11_TS_GET_DXX_REG
518 // Query: Return the value of the Dxx register.
519 // Set  : Write the reg no. (0x00, 0x04, 0x08 etc)
520 //
521 #define IOCTL_WB_802_11_TS_GET_DXX_REG  CTL_CODE(          \
522             FILE_DEVICE_UNKNOWN,                            \
523             WB_IOCTL_TS_INDEX + 3,                          \
524             METHOD_BUFFERED,                                \
525             FILE_ANY_ACCESS)
526
527 //============================================================
528 // [TS]
529
530 #define IOCTL_WB_802_11_TS_TX_RATE              CTL_CODE(   \
531             FILE_DEVICE_UNKNOWN,                            \
532             WB_IOCTL_TS_INDEX + 4,                          \
533             METHOD_BUFFERED,                                \
534             FILE_ANY_ACCESS)
535
536 #define IOCTL_WB_802_11_TS_CURRENT_CHANNEL      CTL_CODE(   \
537             FILE_DEVICE_UNKNOWN,                            \
538             WB_IOCTL_TS_INDEX + 5,                          \
539             METHOD_BUFFERED,                                \
540             FILE_ANY_ACCESS)
541
542 #define IOCTL_WB_802_11_TS_ENABLE_SEQNO         CTL_CODE(   \
543             FILE_DEVICE_UNKNOWN,                            \
544             WB_IOCTL_TS_INDEX + 6,                          \
545             METHOD_BUFFERED,                                \
546             FILE_ANY_ACCESS)
547
548 #define IOCTL_WB_802_11_TS_ENALBE_ACKEDPACKET   CTL_CODE(   \
549             FILE_DEVICE_UNKNOWN,                            \
550             WB_IOCTL_TS_INDEX + 7,                          \
551             METHOD_BUFFERED,                                \
552             FILE_ANY_ACCESS)
553
554 #define IOCTL_WB_802_11_TS_INHIBIT_CRC          CTL_CODE(   \
555             FILE_DEVICE_UNKNOWN,                            \
556             WB_IOCTL_TS_INDEX + 8,                          \
557             METHOD_BUFFERED,                                \
558             FILE_ANY_ACCESS)
559
560 #define IOCTL_WB_802_11_TS_RESET_RCV_COUNTER    CTL_CODE(   \
561             FILE_DEVICE_UNKNOWN,                            \
562             WB_IOCTL_TS_INDEX + 9,                          \
563             METHOD_BUFFERED,                                \
564             FILE_ANY_ACCESS)
565
566 #define IOCTL_WB_802_11_TS_SET_TX_TRIGGER       CTL_CODE(   \
567             FILE_DEVICE_UNKNOWN,                            \
568             WB_IOCTL_TS_INDEX + 10,                         \
569             METHOD_BUFFERED,                                \
570             FILE_ANY_ACCESS)
571
572 #define IOCTL_WB_802_11_TS_FAILED_TX_COUNT       CTL_CODE(  \
573             FILE_DEVICE_UNKNOWN,                            \
574             WB_IOCTL_TS_INDEX + 11,                         \
575             METHOD_BUFFERED,                                \
576             FILE_ANY_ACCESS)
577
578 // [TS1]
579 #define IOCTL_WB_802_11_TS_TX_POWER             CTL_CODE(   \
580             FILE_DEVICE_UNKNOWN,                            \
581             WB_IOCTL_TS_INDEX + 12,                         \
582             METHOD_BUFFERED,                                \
583             FILE_ANY_ACCESS)
584
585 #define IOCTL_WB_802_11_TS_MODE_ENABLE                   CTL_CODE(  \
586             FILE_DEVICE_UNKNOWN,                            \
587             WB_IOCTL_TS_INDEX + 13,                         \
588             METHOD_BUFFERED,                                \
589             FILE_ANY_ACCESS)
590
591 #define IOCTL_WB_802_11_TS_MODE_DISABLE                  CTL_CODE(  \
592             FILE_DEVICE_UNKNOWN,                            \
593             WB_IOCTL_TS_INDEX + 14,                         \
594             METHOD_BUFFERED,                                \
595             FILE_ANY_ACCESS)
596
597 #define IOCTL_WB_802_11_TS_ANTENNA                               CTL_CODE(  \
598             FILE_DEVICE_UNKNOWN,                            \
599             WB_IOCTL_TS_INDEX + 15,                         \
600             METHOD_BUFFERED,                                \
601             FILE_ANY_ACCESS)
602
603 #define IOCTL_WB_802_11_TS_ADAPTER_INFO                  CTL_CODE(  \
604             FILE_DEVICE_UNKNOWN,                            \
605             WB_IOCTL_TS_INDEX + 16,                         \
606             METHOD_BUFFERED,                                \
607             FILE_ANY_ACCESS)
608
609 #define IOCTL_WB_802_11_TS_MAC_ADDRESS                   CTL_CODE(  \
610             FILE_DEVICE_UNKNOWN,                            \
611             WB_IOCTL_TS_INDEX + 17,                         \
612             METHOD_BUFFERED,                                \
613             FILE_ANY_ACCESS)
614
615 #define IOCTL_WB_802_11_TS_BSSID                                 CTL_CODE(  \
616             FILE_DEVICE_UNKNOWN,                            \
617             WB_IOCTL_TS_INDEX + 18,                         \
618             METHOD_BUFFERED,                                \
619             FILE_ANY_ACCESS)
620
621 #define IOCTL_WB_802_11_TS_RF_PARAMETER                  CTL_CODE(  \
622             FILE_DEVICE_UNKNOWN,                            \
623             WB_IOCTL_TS_INDEX + 19,                         \
624             METHOD_BUFFERED,                                \
625             FILE_ANY_ACCESS)
626
627 #define IOCTL_WB_802_11_TS_FILTER                                CTL_CODE(  \
628             FILE_DEVICE_UNKNOWN,                            \
629             WB_IOCTL_TS_INDEX + 20,                         \
630             METHOD_BUFFERED,                                \
631             FILE_ANY_ACCESS)
632
633 #define IOCTL_WB_802_11_TS_CALIBRATION                   CTL_CODE(  \
634             FILE_DEVICE_UNKNOWN,                            \
635             WB_IOCTL_TS_INDEX + 21,                         \
636             METHOD_BUFFERED,                                \
637             FILE_ANY_ACCESS)
638
639 #define IOCTL_WB_802_11_TS_BSS_MODE                              CTL_CODE(  \
640             FILE_DEVICE_UNKNOWN,                            \
641             WB_IOCTL_TS_INDEX + 22,                         \
642             METHOD_BUFFERED,                                \
643             FILE_ANY_ACCESS)
644
645 #define IOCTL_WB_802_11_TS_SET_SSID                              CTL_CODE(  \
646             FILE_DEVICE_UNKNOWN,                            \
647             WB_IOCTL_TS_INDEX + 23,                         \
648             METHOD_BUFFERED,                                \
649             FILE_ANY_ACCESS)
650
651 #define IOCTL_WB_802_11_TS_IBSS_CHANNEL                  CTL_CODE(  \
652             FILE_DEVICE_UNKNOWN,                            \
653             WB_IOCTL_TS_INDEX + 24,                         \
654             METHOD_BUFFERED,                                \
655             FILE_ANY_ACCESS)
656
657 // set/query the slot time value(short or long slot time)
658 #define IOCTL_WB_802_11_TS_SLOT_TIME                     CTL_CODE(  \
659             FILE_DEVICE_UNKNOWN,                            \
660             WB_IOCTL_TS_INDEX + 25,                         \
661             METHOD_BUFFERED,                                \
662             FILE_ANY_ACCESS)
663
664 #define IOCTL_WB_802_11_TS_SLOT_TIME                     CTL_CODE(  \
665             FILE_DEVICE_UNKNOWN,                            \
666             WB_IOCTL_TS_INDEX + 25,                         \
667             METHOD_BUFFERED,                                \
668             FILE_ANY_ACCESS)
669
670 #define IOCTL_WB_802_11_TS_RX_STATISTICS                 CTL_CODE(  \
671             FILE_DEVICE_UNKNOWN,                            \
672             WB_IOCTL_TS_INDEX + 26,                         \
673             METHOD_BUFFERED,                                \
674             FILE_ANY_ACCESS)
675
676 #endif  // #ifndef _IOCTLS_H
677
678