PageRenderTime 64ms CodeModel.GetById 21ms RepoModel.GetById 0ms app.codeStats 0ms

/drivers/net/wireless/tiwlan1251/common/inc/tiioctl.h

http://github.com/CyanogenMod/cm-kernel
C Header | 1295 lines | 956 code | 272 blank | 67 comment | 0 complexity | cd02700ceedfdec54d765ccb6a06eea2 MD5 | raw file
Possible License(s): AGPL-1.0, GPL-2.0, LGPL-2.0

Large files files are truncated, but you can click here to view the full file

  1. /****************************************************************************
  2. **+-----------------------------------------------------------------------+**
  3. **| |**
  4. **| Copyright(c) 1998 - 2008 Texas Instruments. All rights reserved. |**
  5. **| All rights reserved. |**
  6. **| |**
  7. **| Redistribution and use in source and binary forms, with or without |**
  8. **| modification, are permitted provided that the following conditions |**
  9. **| are met: |**
  10. **| |**
  11. **| * Redistributions of source code must retain the above copyright |**
  12. **| notice, this list of conditions and the following disclaimer. |**
  13. **| * Redistributions in binary form must reproduce the above copyright |**
  14. **| notice, this list of conditions and the following disclaimer in |**
  15. **| the documentation and/or other materials provided with the |**
  16. **| distribution. |**
  17. **| * Neither the name Texas Instruments nor the names of its |**
  18. **| contributors may be used to endorse or promote products derived |**
  19. **| from this software without specific prior written permission. |**
  20. **| |**
  21. **| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |**
  22. **| "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |**
  23. **| LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |**
  24. **| A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |**
  25. **| OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |**
  26. **| SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |**
  27. **| LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |**
  28. **| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |**
  29. **| THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |**
  30. **| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |**
  31. **| OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |**
  32. **| |**
  33. **+-----------------------------------------------------------------------+**
  34. ****************************************************************************/
  35. #ifndef __TIIOCTL_H__
  36. #define __TIIOCTL_H__
  37. /* OID Mode*/
  38. #define IOCTRL_SET 0
  39. #define IOCTRL_GET 1
  40. #define IOCTRL_SET_GET 2
  41. #ifndef FILE_DEVICE_UNKNOWN
  42. /**/
  43. /* Macro definition for defining IOCTL and FSCTL function control codes. Note*/
  44. /* that function codes 0-2047 are reserved for Microsoft Corporation, and*/
  45. /* 2048-4095 are reserved for customers.*/
  46. /**/
  47. #define CTL_CODE( DeviceType, Function, Method, Access ) ( \
  48. ((DeviceType) << 16) | ((Access) << 14) | ((Function) << 2) | (Method) \
  49. )
  50. #define FILE_DEVICE_UNKNOWN 0x00000022
  51. #define METHOD_BUFFERED 0
  52. #define FILE_ANY_ACCESS 0
  53. #endif /* FILE_DEVICE_UNKNOWN */
  54. /* IOCTL info, needs to be visible for application. Should be in a custom range (0x800..)*/
  55. #define SHELLDRV_IOCTL_INDEX 0x00800
  56. /* Offsets for IOTCLS bases*/
  57. #define D11BASIC_IOCTLS_OFFSET 0x0
  58. #define D11PACKET_PARAMS_IOCTLS_OFFSET 0x100
  59. #define RATES_IOCTLS_OFFSET 0x200
  60. #define CHANNEL_IOCTLS_OFFSET 0x300
  61. #define POWER_IOCTLS_OFFSET 0x400
  62. #define SECURITY_IOCTLS_OFFSET 0x500
  63. #define MISC_IOCTLS_OFFSET 0x600
  64. #define DEBUG_IOCTLS_OFFSET 0x700
  65. #define SCAN_IOCTLS_OFFSET 0x800
  66. #define VOICE_QOS_IOCTLS_OFFSET 0x900
  67. #define ROAMING_IOCTLS_OFFSET 0xa00
  68. #define MEASUREMENT_IOCTLS_OFFSET 0xa80
  69. #define PLT_IOCTLS_OFFSET 0xb00
  70. #ifdef _WINDOWS // Windows Mobile specific IOCTL's
  71. #endif /* ifdef _WINDOWS */
  72. /********************************************/
  73. typedef struct tagDeviceInfo
  74. {
  75. char csKeyName[260];
  76. char csDriverKey[260];
  77. char csDescription[260];
  78. } TIWLNDEVINFO, *PTIWLNDEVINFO;
  79. /********************** Basic dot11 Functionality ****************************************/
  80. #define TIWLN_802_11_BSSID_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  81. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 1, \
  82. METHOD_BUFFERED, \
  83. FILE_ANY_ACCESS)
  84. #define TIWLN_802_11_BSSID_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  85. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 2, \
  86. METHOD_BUFFERED, \
  87. FILE_ANY_ACCESS)
  88. #define TIWLN_802_11_BSSID_LIST CTL_CODE(FILE_DEVICE_UNKNOWN, \
  89. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 3, \
  90. METHOD_BUFFERED, \
  91. FILE_ANY_ACCESS)
  92. #define TIWLN_802_11_SSID_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  93. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 4, \
  94. METHOD_BUFFERED, \
  95. FILE_ANY_ACCESS)
  96. #define TIWLN_802_11_SSID_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  97. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 5, \
  98. METHOD_BUFFERED, \
  99. FILE_ANY_ACCESS)
  100. #define TIWLN_802_11_DESIRED_SSID_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  101. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 6, \
  102. METHOD_BUFFERED, \
  103. FILE_ANY_ACCESS)
  104. #define TIWLN_802_11_DISASSOCIATE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  105. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 7, \
  106. METHOD_BUFFERED, \
  107. FILE_ANY_ACCESS)
  108. #define TIWLN_802_11_ASSOCIATION_INFORMATION CTL_CODE(FILE_DEVICE_UNKNOWN, \
  109. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 8, \
  110. METHOD_BUFFERED, \
  111. FILE_ANY_ACCESS)
  112. #define TIWLN_802_11_NETWORK_TYPES_SUPPORTED CTL_CODE(FILE_DEVICE_UNKNOWN, \
  113. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 9, \
  114. METHOD_BUFFERED, \
  115. FILE_ANY_ACCESS)
  116. #define TIWLN_802_11_NETWORK_TYPE_IN_USE_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  117. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 10, \
  118. METHOD_BUFFERED, \
  119. FILE_ANY_ACCESS)
  120. #define TIWLN_802_11_NETWORK_TYPE_IN_USE_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  121. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 11, \
  122. METHOD_BUFFERED, \
  123. FILE_ANY_ACCESS)
  124. #define TIWLN_802_11_INFRASTRUCTURE_MODE_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  125. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 12, \
  126. METHOD_BUFFERED, \
  127. FILE_ANY_ACCESS)
  128. #define TIWLN_802_11_INFRASTRUCTURE_MODE_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  129. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 13, \
  130. METHOD_BUFFERED, \
  131. FILE_ANY_ACCESS)
  132. #define TIWLN_802_11_DESIRED_INFRASTRUCTURE_MODE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  133. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 14, \
  134. METHOD_BUFFERED, \
  135. FILE_ANY_ACCESS)
  136. #define TIWLN_802_11_AUTHENTICATION_MODE_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  137. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 15, \
  138. METHOD_BUFFERED, \
  139. FILE_ANY_ACCESS)
  140. #define TIWLN_802_11_AUTHENTICATION_MODE_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  141. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 16, \
  142. METHOD_BUFFERED, \
  143. FILE_ANY_ACCESS)
  144. #define TIWLN_802_11_CONFIGURATION_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  145. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 17, \
  146. METHOD_BUFFERED, \
  147. FILE_ANY_ACCESS)
  148. #define TIWLN_802_11_CONFIGURATION_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  149. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 18, \
  150. METHOD_BUFFERED, \
  151. FILE_ANY_ACCESS)
  152. #define TIWLN_802_11_FULL_BSSID_LIST CTL_CODE(FILE_DEVICE_UNKNOWN, \
  153. SHELLDRV_IOCTL_INDEX + D11BASIC_IOCTLS_OFFSET + 19, \
  154. METHOD_BUFFERED, \
  155. FILE_ANY_ACCESS)
  156. /********************** Rates Functionality ****************************************/
  157. #define TIWLN_802_11_SUPPORTED_RATES CTL_CODE(FILE_DEVICE_UNKNOWN, \
  158. SHELLDRV_IOCTL_INDEX + RATES_IOCTLS_OFFSET + 1, \
  159. METHOD_BUFFERED, \
  160. FILE_ANY_ACCESS)
  161. #define TIWLN_802_11_DESIRED_RATES_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  162. SHELLDRV_IOCTL_INDEX + RATES_IOCTLS_OFFSET + 2, \
  163. METHOD_BUFFERED, \
  164. FILE_ANY_ACCESS)
  165. #define TIWLN_802_11_SUPPORTED_RATES_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  166. SHELLDRV_IOCTL_INDEX + RATES_IOCTLS_OFFSET + 3, \
  167. METHOD_BUFFERED, \
  168. FILE_ANY_ACCESS)
  169. #define TIWLN_802_11_CURRENT_RATES_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  170. SHELLDRV_IOCTL_INDEX + RATES_IOCTLS_OFFSET + 4, \
  171. METHOD_BUFFERED, \
  172. FILE_ANY_ACCESS)
  173. #define TIWLN_EXT_RATES_IE_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  174. SHELLDRV_IOCTL_INDEX + RATES_IOCTLS_OFFSET + 5, \
  175. METHOD_BUFFERED, \
  176. FILE_ANY_ACCESS)
  177. #define TIWLN_EXT_RATES_IE_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  178. SHELLDRV_IOCTL_INDEX + RATES_IOCTLS_OFFSET + 6, \
  179. METHOD_BUFFERED, \
  180. FILE_ANY_ACCESS)
  181. /********************** Channel Functionality ****************************************/
  182. #define TIWLN_802_11_DESIRED_CHANNEL_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  183. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 1, \
  184. METHOD_BUFFERED, \
  185. FILE_ANY_ACCESS)
  186. #define TIWLN_802_11_DESIRED_CHANNEL_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  187. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 2, \
  188. METHOD_BUFFERED, \
  189. FILE_ANY_ACCESS)
  190. #define TIWLN_802_11_CHANNEL_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  191. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 3, \
  192. METHOD_BUFFERED, \
  193. FILE_ANY_ACCESS)
  194. #define TIWLN_CURRENT_REGDOMAIN_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  195. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 4, \
  196. METHOD_BUFFERED, \
  197. FILE_ANY_ACCESS)
  198. #define TIWLN_CURRENT_REGDOMAIN_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  199. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 5, \
  200. METHOD_BUFFERED, \
  201. FILE_ANY_ACCESS)
  202. #define TIWLN_REGDOMAIN_TABLE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  203. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 6, \
  204. METHOD_BUFFERED, \
  205. FILE_ANY_ACCESS)
  206. #define TIWLN_ROAM_PROFILE_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  207. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 7, \
  208. METHOD_BUFFERED, \
  209. FILE_ANY_ACCESS)
  210. #define TIWLN_ROAM_PROFILE_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  211. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 8, \
  212. METHOD_BUFFERED, \
  213. FILE_ANY_ACCESS)
  214. #define TIWLN_REG_DOMAIN_ENABLE_DISABLE_802_11D CTL_CODE(FILE_DEVICE_UNKNOWN, \
  215. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 9, \
  216. METHOD_BUFFERED, \
  217. FILE_ANY_ACCESS)
  218. #define TIWLN_REG_DOMAIN_ENABLE_DISABLE_802_11H CTL_CODE(FILE_DEVICE_UNKNOWN, \
  219. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 10, \
  220. METHOD_BUFFERED, \
  221. FILE_ANY_ACCESS)
  222. #define TIWLN_REG_DOMAIN_GET_802_11D CTL_CODE(FILE_DEVICE_UNKNOWN, \
  223. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 11, \
  224. METHOD_BUFFERED, \
  225. FILE_ANY_ACCESS)
  226. #define TIWLN_REG_DOMAIN_GET_802_11H CTL_CODE(FILE_DEVICE_UNKNOWN, \
  227. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 12, \
  228. METHOD_BUFFERED, \
  229. FILE_ANY_ACCESS)
  230. #define TIWLN_REG_DOMAIN_GET_COUNTRY_2_4 CTL_CODE(FILE_DEVICE_UNKNOWN, \
  231. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 13, \
  232. METHOD_BUFFERED, \
  233. FILE_ANY_ACCESS)
  234. #define TIWLN_REG_DOMAIN_SET_COUNTRY_2_4 CTL_CODE(FILE_DEVICE_UNKNOWN, \
  235. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 14, \
  236. METHOD_BUFFERED, \
  237. FILE_ANY_ACCESS)
  238. #define TIWLN_REG_DOMAIN_GET_COUNTRY_5 CTL_CODE(FILE_DEVICE_UNKNOWN, \
  239. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 15, \
  240. METHOD_BUFFERED, \
  241. FILE_ANY_ACCESS)
  242. #define TIWLN_REG_DOMAIN_SET_COUNTRY_5 CTL_CODE(FILE_DEVICE_UNKNOWN, \
  243. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 16, \
  244. METHOD_BUFFERED, \
  245. FILE_ANY_ACCESS)
  246. #define TIWLN_REG_DOMAIN_SET_DFS_RANGE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  247. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 17, \
  248. METHOD_BUFFERED, \
  249. FILE_ANY_ACCESS)
  250. #define TIWLN_REG_DOMAIN_GET_DFS_RANGE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  251. SHELLDRV_IOCTL_INDEX + CHANNEL_IOCTLS_OFFSET + 18, \
  252. METHOD_BUFFERED, \
  253. FILE_ANY_ACCESS)
  254. /********************** Power Functionality ****************************************/
  255. #define TIWLN_802_11_POWER_MODE_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  256. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 1, \
  257. METHOD_BUFFERED, \
  258. FILE_ANY_ACCESS)
  259. #define TIWLN_802_11_POWER_MODE_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  260. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 2, \
  261. METHOD_BUFFERED, \
  262. FILE_ANY_ACCESS)
  263. #define TIWLN_802_11_TX_POWER_LEVEL_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  264. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 3, \
  265. METHOD_BUFFERED, \
  266. FILE_ANY_ACCESS)
  267. #define TIWLN_802_11_TX_POWER_DBM_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  268. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 4, \
  269. METHOD_BUFFERED, \
  270. FILE_ANY_ACCESS)
  271. #define TIWLN_802_11_NUMBER_OF_ANTENNAS CTL_CODE(FILE_DEVICE_UNKNOWN, \
  272. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 5, \
  273. METHOD_BUFFERED, \
  274. FILE_ANY_ACCESS)
  275. #define TIWLN_802_11_RX_ANTENNA_SELECTED_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  276. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 6, \
  277. METHOD_BUFFERED, \
  278. FILE_ANY_ACCESS)
  279. #define TIWLN_802_11_RX_ANTENNA_SELECTED_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  280. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 7, \
  281. METHOD_BUFFERED, \
  282. FILE_ANY_ACCESS)
  283. #define TIWLN_802_11_TX_ANTENNA_SELECTED_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  284. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 8, \
  285. METHOD_BUFFERED, \
  286. FILE_ANY_ACCESS)
  287. #define TIWLN_802_11_TX_ANTENNA_SELECTED_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  288. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 9, \
  289. METHOD_BUFFERED, \
  290. FILE_ANY_ACCESS)
  291. #define TIWLAN_802_11_ANTENNA_DIVERSITY_PARAM_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  292. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 10, \
  293. METHOD_BUFFERED, \
  294. FILE_ANY_ACCESS)
  295. #define TIWLN_802_11_RSSI CTL_CODE(FILE_DEVICE_UNKNOWN, \
  296. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 11, \
  297. METHOD_BUFFERED, \
  298. FILE_ANY_ACCESS)
  299. #define TIWLN_802_11_RSSI_TRIGGER_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  300. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 12, \
  301. METHOD_BUFFERED, \
  302. FILE_ANY_ACCESS)
  303. #define TIWLN_802_11_RSSI_TRIGGER_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  304. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 13, \
  305. METHOD_BUFFERED, \
  306. FILE_ANY_ACCESS)
  307. #define TIWLN_SLEEP_CMD CTL_CODE(FILE_DEVICE_UNKNOWN, \
  308. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 14, \
  309. METHOD_BUFFERED, \
  310. FILE_ANY_ACCESS)
  311. #define TIWLN_802_11_TX_POWER_DBM_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  312. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 15, \
  313. METHOD_BUFFERED, \
  314. FILE_ANY_ACCESS)
  315. #define TIWLN_802_11_POWER_MGR_PROFILE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  316. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 16, \
  317. METHOD_BUFFERED, \
  318. FILE_ANY_ACCESS)
  319. #define TIWLN_802_11_POWER_LEVEL_BOUNDARY CTL_CODE(FILE_DEVICE_UNKNOWN, \
  320. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 17, \
  321. METHOD_BUFFERED, \
  322. FILE_ANY_ACCESS)
  323. #define TIWLN_802_11_PERODIC_WAKEUP_MODE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  324. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 18, \
  325. METHOD_BUFFERED, \
  326. FILE_ANY_ACCESS)
  327. #define TIWLN_802_11_PERODIC_WAKEUP_TIMEOUT CTL_CODE(FILE_DEVICE_UNKNOWN, \
  328. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 19, \
  329. METHOD_BUFFERED, \
  330. FILE_ANY_ACCESS)
  331. #define TIWLN_802_11_POWER_LEVEL_DEFAULT_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  332. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 20, \
  333. METHOD_BUFFERED, \
  334. FILE_ANY_ACCESS)
  335. #define TIWLN_802_11_POWER_LEVEL_DEFAULT_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  336. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 21, \
  337. METHOD_BUFFERED, \
  338. FILE_ANY_ACCESS)
  339. #define TIWLN_802_11_POWER_LEVEL_PS_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  340. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 22, \
  341. METHOD_BUFFERED, \
  342. FILE_ANY_ACCESS)
  343. #define TIWLN_802_11_POWER_LEVEL_PS_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  344. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 23, \
  345. METHOD_BUFFERED, \
  346. FILE_ANY_ACCESS)
  347. #define TIWLN_802_11_BEACON_FILTER_DESIRED_STATE_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  348. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 24, \
  349. METHOD_BUFFERED, \
  350. FILE_ANY_ACCESS)
  351. #define TIWLN_802_11_SNR CTL_CODE(FILE_DEVICE_UNKNOWN, \
  352. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 25, \
  353. METHOD_BUFFERED, \
  354. FILE_ANY_ACCESS)
  355. #define TIWLN_802_11_BEACON_FILTER_DESIRED_STATE_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  356. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 26, \
  357. METHOD_BUFFERED, \
  358. FILE_ANY_ACCESS)
  359. #define TIWLN_802_11_POWER_LEVEL_DOZE_MODE_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  360. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 27, \
  361. METHOD_BUFFERED, \
  362. FILE_ANY_ACCESS)
  363. #define TIWLN_802_11_POWER_LEVEL_DOZE_MODE_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  364. SHELLDRV_IOCTL_INDEX + POWER_IOCTLS_OFFSET + 28, \
  365. METHOD_BUFFERED, \
  366. FILE_ANY_ACCESS)
  367. /********************** dot11 Network Packet Parameters ****************************************/
  368. #define TIWLN_802_11_FRAGMENTATION_THRESHOLD_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  369. SHELLDRV_IOCTL_INDEX + D11PACKET_PARAMS_IOCTLS_OFFSET + 1, \
  370. METHOD_BUFFERED, \
  371. FILE_ANY_ACCESS)
  372. #define TIWLN_802_11_FRAGMENTATION_THRESHOLD_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  373. SHELLDRV_IOCTL_INDEX + D11PACKET_PARAMS_IOCTLS_OFFSET + 2, \
  374. METHOD_BUFFERED, \
  375. FILE_ANY_ACCESS)
  376. #define TIWLN_802_11_RTS_THRESHOLD_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  377. SHELLDRV_IOCTL_INDEX + D11PACKET_PARAMS_IOCTLS_OFFSET + 3, \
  378. METHOD_BUFFERED, \
  379. FILE_ANY_ACCESS)
  380. #define TIWLN_802_11_RTS_THRESHOLD_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  381. SHELLDRV_IOCTL_INDEX + D11PACKET_PARAMS_IOCTLS_OFFSET + 4, \
  382. METHOD_BUFFERED, \
  383. FILE_ANY_ACCESS)
  384. #define TIWLN_802_11_SHORT_PREAMBLE_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  385. SHELLDRV_IOCTL_INDEX + D11PACKET_PARAMS_IOCTLS_OFFSET + 5, \
  386. METHOD_BUFFERED, \
  387. FILE_ANY_ACCESS)
  388. #define TIWLN_802_11_SHORT_PREAMBLE_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  389. SHELLDRV_IOCTL_INDEX + D11PACKET_PARAMS_IOCTLS_OFFSET + 6, \
  390. METHOD_BUFFERED, \
  391. FILE_ANY_ACCESS)
  392. #define TIWLN_802_11_SHORT_RETRY_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  393. SHELLDRV_IOCTL_INDEX + D11PACKET_PARAMS_IOCTLS_OFFSET + 7, \
  394. METHOD_BUFFERED, \
  395. FILE_ANY_ACCESS)
  396. #define TIWLN_802_11_SHORT_RETRY_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  397. SHELLDRV_IOCTL_INDEX + D11PACKET_PARAMS_IOCTLS_OFFSET + 8, \
  398. METHOD_BUFFERED, \
  399. FILE_ANY_ACCESS)
  400. #define TIWLN_802_11_LONG_RETRY_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  401. SHELLDRV_IOCTL_INDEX + D11PACKET_PARAMS_IOCTLS_OFFSET + 9, \
  402. METHOD_BUFFERED, \
  403. FILE_ANY_ACCESS)
  404. #define TIWLN_802_11_LONG_RETRY_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  405. SHELLDRV_IOCTL_INDEX + D11PACKET_PARAMS_IOCTLS_OFFSET + 11, \
  406. METHOD_BUFFERED, \
  407. FILE_ANY_ACCESS)
  408. #define TIWLN_SHORT_SLOT_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  409. SHELLDRV_IOCTL_INDEX + D11PACKET_PARAMS_IOCTLS_OFFSET + 12, \
  410. METHOD_BUFFERED, \
  411. FILE_ANY_ACCESS)
  412. #define TIWLN_SHORT_SLOT_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  413. SHELLDRV_IOCTL_INDEX + D11PACKET_PARAMS_IOCTLS_OFFSET + 13, \
  414. METHOD_BUFFERED, \
  415. FILE_ANY_ACCESS)
  416. #define TIWLN_IBSS_PROTECTION_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  417. SHELLDRV_IOCTL_INDEX + D11PACKET_PARAMS_IOCTLS_OFFSET + 14, \
  418. METHOD_BUFFERED, \
  419. FILE_ANY_ACCESS)
  420. #define TIWLN_IBSS_PROTECTION_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  421. SHELLDRV_IOCTL_INDEX + D11PACKET_PARAMS_IOCTLS_OFFSET + 15, \
  422. METHOD_BUFFERED, \
  423. FILE_ANY_ACCESS)
  424. /************************** Security **************************************/
  425. #define TIWLN_802_11_ADD_WEP CTL_CODE(FILE_DEVICE_UNKNOWN, \
  426. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 1, \
  427. METHOD_BUFFERED, \
  428. FILE_ANY_ACCESS)
  429. #define TIWLN_802_11_REMOVE_WEP CTL_CODE(FILE_DEVICE_UNKNOWN, \
  430. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 2, \
  431. METHOD_BUFFERED, \
  432. FILE_ANY_ACCESS)
  433. #define TIWLN_802_11_WEP_STATUS_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  434. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 3, \
  435. METHOD_BUFFERED, \
  436. FILE_ANY_ACCESS)
  437. #define TIWLN_802_11_WEP_STATUS_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  438. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 4, \
  439. METHOD_BUFFERED, \
  440. FILE_ANY_ACCESS)
  441. #define TIWLN_802_11_PRIVACY_FILTER_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  442. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 5, \
  443. METHOD_BUFFERED, \
  444. FILE_ANY_ACCESS)
  445. #define TIWLN_802_11_PRIVACY_FILTER_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  446. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 6, \
  447. METHOD_BUFFERED, \
  448. FILE_ANY_ACCESS)
  449. #define TIWLN_802_11_ADD_KEY CTL_CODE(FILE_DEVICE_UNKNOWN, \
  450. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 13, \
  451. METHOD_BUFFERED, \
  452. FILE_ANY_ACCESS)
  453. #define TIWLN_802_11_REMOVE_KEY CTL_CODE(FILE_DEVICE_UNKNOWN, \
  454. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 14, \
  455. METHOD_BUFFERED, \
  456. FILE_ANY_ACCESS)
  457. #define TIWLN_OPEN_EAPOL_INTERFACE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  458. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 15, \
  459. METHOD_BUFFERED, \
  460. FILE_ANY_ACCESS)
  461. #define TIWLN_CLOSE_EAPOL_INTERFACE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  462. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 16, \
  463. METHOD_BUFFERED, \
  464. FILE_ANY_ACCESS)
  465. #define TIWLN_SEND_EAPOL_PACKET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  466. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 17, \
  467. METHOD_BUFFERED, \
  468. FILE_ANY_ACCESS)
  469. #define TIWLN_802_11_MIXED_MODE_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  470. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 18, \
  471. METHOD_BUFFERED, \
  472. FILE_ANY_ACCESS)
  473. #define TIWLN_802_11_MIXED_MODE_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  474. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 19, \
  475. METHOD_BUFFERED, \
  476. FILE_ANY_ACCESS)
  477. #define TIWLN_802_11_EXC_SECURITY_TYPE_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  478. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 20, \
  479. METHOD_BUFFERED, \
  480. FILE_ANY_ACCESS)
  481. #define TIWLN_802_11_EXC_SECURITY_TYPE_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  482. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 21, \
  483. METHOD_BUFFERED, \
  484. FILE_ANY_ACCESS)
  485. /* Supplicant use only*/
  486. #define TIWLN_SUPPL_INIT CTL_CODE(FILE_DEVICE_UNKNOWN, \
  487. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 22, \
  488. METHOD_BUFFERED, \
  489. FILE_ANY_ACCESS)
  490. /* Supplicant use only*/
  491. #define TIWLN_SUPPL_TERMINATE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  492. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 23, \
  493. METHOD_BUFFERED, \
  494. FILE_ANY_ACCESS)
  495. /* Supplicant use only*/
  496. #define TIWLN_802_11_PSK_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  497. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 24, \
  498. METHOD_BUFFERED, \
  499. FILE_ANY_ACCESS)
  500. /* Supplicant use only*/
  501. #define TIWLN_802_11_EAP_TYPE_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  502. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 25, \
  503. METHOD_BUFFERED, \
  504. FILE_ANY_ACCESS)
  505. /* Supplicant use only*/
  506. #define TIWLN_802_11_USER_ID_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  507. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 26, \
  508. METHOD_BUFFERED, \
  509. FILE_ANY_ACCESS)
  510. /* Supplicant use only*/
  511. #define TIWLN_802_11_USER_PASSWORD_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  512. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 27, \
  513. METHOD_BUFFERED, \
  514. FILE_ANY_ACCESS)
  515. /* Supplicant use only*/
  516. #define TIWLN_802_11_CERT_PARAMS_SHA1_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  517. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 28, \
  518. METHOD_BUFFERED, \
  519. FILE_ANY_ACCESS)
  520. #define TIWLN_802_11_EXC_ROGUE_AP_DETECTED CTL_CODE(FILE_DEVICE_UNKNOWN, \
  521. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 29, \
  522. METHOD_BUFFERED, \
  523. FILE_ANY_ACCESS)
  524. #define TIWLN_802_11_EXC_REPORT_ROGUE_APS CTL_CODE(FILE_DEVICE_UNKNOWN, \
  525. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 30, \
  526. METHOD_BUFFERED, \
  527. FILE_ANY_ACCESS)
  528. #define TIWLN_802_11_EXC_CCKM_REQUEST CTL_CODE(FILE_DEVICE_UNKNOWN, \
  529. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 31, \
  530. METHOD_BUFFERED, \
  531. FILE_ANY_ACCESS)
  532. #define TIWLN_802_11_EXC_CCKM_RESULT CTL_CODE(FILE_DEVICE_UNKNOWN, \
  533. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 32, \
  534. METHOD_BUFFERED, \
  535. FILE_ANY_ACCESS)
  536. #define TIWLN_802_11_PMKID_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  537. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 33, \
  538. METHOD_BUFFERED, \
  539. FILE_ANY_ACCESS)
  540. /* Supplicant use only*/
  541. #define TIWLN_802_11_KEY_TYPE_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  542. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 34, \
  543. METHOD_BUFFERED, \
  544. FILE_ANY_ACCESS)
  545. #define TIWLN_802_11_EXC_CONFIGURATION_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  546. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 35, \
  547. METHOD_BUFFERED, \
  548. FILE_ANY_ACCESS)
  549. #define TIWLN_802_11_EXC_CONFIGURATION_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  550. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 36, \
  551. METHOD_BUFFERED, \
  552. FILE_ANY_ACCESS)
  553. #define TIWLN_802_11_EXC_NETWORK_EAP_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  554. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 37, \
  555. METHOD_BUFFERED, \
  556. FILE_ANY_ACCESS)
  557. #define TIWLN_802_11_EXC_NETWORK_EAP_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  558. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 38, \
  559. METHOD_BUFFERED, \
  560. FILE_ANY_ACCESS)
  561. /* Supplicant use only*/
  562. #define TIWLN_802_11_CERT_PARAMS_FILE_NAME_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  563. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 39, \
  564. METHOD_BUFFERED, \
  565. FILE_ANY_ACCESS)
  566. #define TIWLN_802_11_EXC_AUTH_SUCCESS CTL_CODE(FILE_DEVICE_UNKNOWN, \
  567. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 40, \
  568. METHOD_BUFFERED, \
  569. FILE_ANY_ACCESS)
  570. #define TIWLN_802_11_PMKID_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  571. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 41, \
  572. METHOD_BUFFERED, \
  573. FILE_ANY_ACCESS)
  574. #define TIWLN_802_11_WPA_OPTIONS_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  575. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 42, \
  576. METHOD_BUFFERED, \
  577. FILE_ANY_ACCESS)
  578. #define TIWLN_802_11_WPA_OPTIONS_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  579. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 43, \
  580. METHOD_BUFFERED, \
  581. FILE_ANY_ACCESS)
  582. #define TIWLN_802_11_CAPABILITY_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  583. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 44, \
  584. METHOD_BUFFERED, \
  585. FILE_ANY_ACCESS)
  586. #define TIWLN_802_11_AVAILABLE_OPTIONS_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  587. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 45, \
  588. METHOD_BUFFERED, \
  589. FILE_ANY_ACCESS)
  590. #define TIWLN_802_11_EAP_TYPE_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  591. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 46, \
  592. METHOD_BUFFERED, \
  593. FILE_ANY_ACCESS)
  594. #define TIWLN_802_11_EAP_TYPE_DRIVER_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  595. SHELLDRV_IOCTL_INDEX + SECURITY_IOCTLS_OFFSET + 47, \
  596. METHOD_BUFFERED, \
  597. FILE_ANY_ACCESS)
  598. /************************** Misc **************************************/
  599. #define TIWLN_IOCTL_OID_QUERY_INFORMATION CTL_CODE(FILE_DEVICE_UNKNOWN, \
  600. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 1, \
  601. METHOD_BUFFERED, \
  602. FILE_ANY_ACCESS)
  603. #define TIWLN_IOCTL_OID_SET_INFORMATION CTL_CODE(FILE_DEVICE_UNKNOWN, \
  604. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 2, \
  605. METHOD_BUFFERED, \
  606. FILE_ANY_ACCESS)
  607. #define TIWLN_MEDIUMUSAGE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  608. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 3, \
  609. METHOD_BUFFERED, \
  610. FILE_ANY_ACCESS)
  611. #define TIWLN_802_11_STATISTICS CTL_CODE(FILE_DEVICE_UNKNOWN, \
  612. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 4, \
  613. METHOD_BUFFERED, \
  614. FILE_ANY_ACCESS)
  615. #define TIWLN_802_11_RELOAD_DEFAULTS CTL_CODE(FILE_DEVICE_UNKNOWN, \
  616. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 5, \
  617. METHOD_BUFFERED, \
  618. FILE_ANY_ACCESS)
  619. #define TIWLN_DRIVER_STATUS_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  620. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 6, \
  621. METHOD_BUFFERED, \
  622. FILE_ANY_ACCESS)
  623. #define TIWLN_DRIVER_STATUS_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  624. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 7, \
  625. METHOD_BUFFERED, \
  626. FILE_ANY_ACCESS)
  627. #define TIWLN_HW_READ_REGISTER CTL_CODE(FILE_DEVICE_UNKNOWN, \
  628. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 8, \
  629. METHOD_BUFFERED, \
  630. FILE_ANY_ACCESS)
  631. #define TIWLN_HW_WRITE_REGISTER CTL_CODE(FILE_DEVICE_UNKNOWN, \
  632. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 9, \
  633. METHOD_BUFFERED, \
  634. FILE_ANY_ACCESS)
  635. #define TIWLN_HW_RESET_HW CTL_CODE(FILE_DEVICE_UNKNOWN, \
  636. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 10, \
  637. METHOD_BUFFERED, \
  638. FILE_ANY_ACCESS)
  639. #define TIWLN_802_11_ENABLE_EVENT CTL_CODE(FILE_DEVICE_UNKNOWN, \
  640. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 11, \
  641. METHOD_BUFFERED, \
  642. FILE_ANY_ACCESS)
  643. #define TIWLN_802_11_DISABLE_EVENT CTL_CODE(FILE_DEVICE_UNKNOWN, \
  644. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 12, \
  645. METHOD_BUFFERED, \
  646. FILE_ANY_ACCESS)
  647. #define TIWLN_SET_INIT_INFO CTL_CODE(FILE_DEVICE_UNKNOWN, \
  648. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 13, \
  649. METHOD_BUFFERED, \
  650. FILE_ANY_ACCESS)
  651. #define TIWLN_802_3_CURRENT_ADDRESS CTL_CODE(FILE_DEVICE_UNKNOWN, \
  652. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 14, \
  653. METHOD_BUFFERED, \
  654. FILE_ANY_ACCESS)
  655. #define TIWLN_APIP_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  656. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 15, \
  657. METHOD_BUFFERED, \
  658. FILE_ANY_ACCESS)
  659. #define TIWLN_4XACTIVESTATE_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  660. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 16, \
  661. METHOD_BUFFERED, \
  662. FILE_ANY_ACCESS)
  663. #define TIWLN_GET_SW_VERSION CTL_CODE(FILE_DEVICE_UNKNOWN, \
  664. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 17, \
  665. METHOD_BUFFERED, \
  666. FILE_ANY_ACCESS)
  667. #define TIWLN_GET_EVENT_DATA CTL_CODE(FILE_DEVICE_UNKNOWN, \
  668. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 18, \
  669. METHOD_BUFFERED, \
  670. FILE_ANY_ACCESS)
  671. #define TIWLN_DRIVER_SUSPEND CTL_CODE(FILE_DEVICE_UNKNOWN, \
  672. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 19, \
  673. METHOD_BUFFERED, \
  674. FILE_ANY_ACCESS)
  675. #define SET_IPC_EVENT_HANDLE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  676. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 20, \
  677. METHOD_BUFFERED, \
  678. FILE_ANY_ACCESS)
  679. #define DESTROY_IPC_EVENT_HANDLE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  680. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 21, \
  681. METHOD_BUFFERED, \
  682. FILE_ANY_ACCESS)
  683. #define TIWLN_802_11_CONFIG_EVENTS_RSSI CTL_CODE(FILE_DEVICE_UNKNOWN, \
  684. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 22, \
  685. METHOD_BUFFERED, \
  686. FILE_ANY_ACCESS)
  687. #define TIWLN_802_11_GET_DRIVERS_CAPABILITIES CTL_CODE(FILE_DEVICE_UNKNOWN, \
  688. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 23, \
  689. METHOD_BUFFERED, \
  690. FILE_ANY_ACCESS)
  691. #define TIWLN_802_11_GET_SELECTED_BSSID_INFO CTL_CODE(FILE_DEVICE_UNKNOWN, \
  692. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 24, \
  693. METHOD_BUFFERED, \
  694. FILE_ANY_ACCESS)
  695. #define TIWLN_802_11_GET_DRIVER_STATE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  696. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 25, \
  697. METHOD_BUFFERED, \
  698. FILE_ANY_ACCESS)
  699. #define BT_COEXSISTANCE_SET_ENABLE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  700. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 26, \
  701. METHOD_BUFFERED, \
  702. FILE_ANY_ACCESS)
  703. #define BT_COEXSISTANCE_SET_RATE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  704. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 27, \
  705. METHOD_BUFFERED, \
  706. FILE_ANY_ACCESS)
  707. #define BT_COEXSISTANCE_SET_CONFIG CTL_CODE(FILE_DEVICE_UNKNOWN, \
  708. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 28, \
  709. METHOD_BUFFERED, \
  710. FILE_ANY_ACCESS)
  711. #define BT_COEXSISTANCE_GET_STATUS CTL_CODE(FILE_DEVICE_UNKNOWN, \
  712. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 29, \
  713. METHOD_BUFFERED, \
  714. FILE_ANY_ACCESS)
  715. #define TIWLN_802_11_TX_STATISTICS CTL_CODE(FILE_DEVICE_UNKNOWN, \
  716. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 30, \
  717. METHOD_BUFFERED, \
  718. FILE_ANY_ACCESS)
  719. #define GWSI_DISPATCH_COMMAND CTL_CODE(FILE_DEVICE_UNKNOWN, \
  720. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 31, \
  721. METHOD_BUFFERED, \
  722. FILE_ANY_ACCESS)
  723. #define GWSI_GET_INIT_TABLE_COMMAND CTL_CODE(FILE_DEVICE_UNKNOWN, \
  724. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 32, \
  725. METHOD_BUFFERED, \
  726. FILE_ANY_ACCESS)
  727. #define GWSI_INITIALIZE_COMMAND CTL_CODE(FILE_DEVICE_UNKNOWN, \
  728. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 33, \
  729. METHOD_BUFFERED, \
  730. FILE_ANY_ACCESS)
  731. #define GWSI_CONFIGURE_TABLE_COMMAND CTL_CODE(FILE_DEVICE_UNKNOWN, \
  732. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 34, \
  733. METHOD_BUFFERED, \
  734. FILE_ANY_ACCESS)
  735. #define GWSI_RELEASE_COMMAND CTL_CODE(FILE_DEVICE_UNKNOWN, \
  736. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 36, \
  737. METHOD_BUFFERED, \
  738. FILE_ANY_ACCESS)
  739. #define GWSI_DISPATCH_GET_CMD_LEN(_p_cmd) (*((tiUINT16 *)_p_cmd + 1))
  740. #define TIWLN_802_11_SET_TRAFFIC_INTENSITY_THRESHOLDS CTL_CODE(FILE_DEVICE_UNKNOWN, \
  741. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 37, \
  742. METHOD_BUFFERED, \
  743. FILE_ANY_ACCESS)
  744. #define TIWLN_802_11_GET_TRAFFIC_INTENSITY_THRESHOLDS CTL_CODE(FILE_DEVICE_UNKNOWN, \
  745. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 38, \
  746. METHOD_BUFFERED, \
  747. FILE_ANY_ACCESS)
  748. #define TIWLN_802_11_TOGGLE_TRAFFIC_INTENSITY_EVENTS CTL_CODE(FILE_DEVICE_UNKNOWN, \
  749. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 39, \
  750. METHOD_BUFFERED, \
  751. FILE_ANY_ACCESS)
  752. #define TIWLN_802_11_GET_PRIMARY_BSSID_INFO CTL_CODE(FILE_DEVICE_UNKNOWN, \
  753. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 40, \
  754. METHOD_BUFFERED, \
  755. FILE_ANY_ACCESS)
  756. #define TIWLN_EARLY_WAKEUP_IE_SET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  757. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 41, \
  758. METHOD_BUFFERED, \
  759. FILE_ANY_ACCESS)
  760. #define TIWLN_EARLY_WAKEUP_IE_GET CTL_CODE(FILE_DEVICE_UNKNOWN, \
  761. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 42, \
  762. METHOD_BUFFERED, \
  763. FILE_ANY_ACCESS)
  764. #define TIWLN_ENABLE_DISABLE_RX_DATA_FILTERS CTL_CODE(FILE_DEVICE_UNKNOWN, \
  765. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 43, \
  766. METHOD_BUFFERED, \
  767. FILE_ANY_ACCESS)
  768. #define TIWLN_ADD_RX_DATA_FILTER CTL_CODE(FILE_DEVICE_UNKNOWN, \
  769. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 44, \
  770. METHOD_BUFFERED, \
  771. FILE_ANY_ACCESS)
  772. #define TIWLN_REMOVE_RX_DATA_FILTER CTL_CODE(FILE_DEVICE_UNKNOWN, \
  773. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 45, \
  774. METHOD_BUFFERED, \
  775. FILE_ANY_ACCESS)
  776. #define TIWLN_GET_RX_DATA_FILTERS_STATISTICS CTL_CODE(FILE_DEVICE_UNKNOWN, \
  777. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 46, \
  778. METHOD_BUFFERED, \
  779. FILE_ANY_ACCESS)
  780. #define TIWLN_GET_POWER_CONSUMPTION_STATISTICS CTL_CODE(FILE_DEVICE_UNKNOWN, \
  781. SHELLDRV_IOCTL_INDEX + MISC_IOCTLS_OFFSET + 47, \
  782. METHOD_BUFFERED, \
  783. FILE_ANY_ACCESS)
  784. /************************** Debug **************************************/
  785. #ifdef TI_DBG
  786. #define TIWLN_GET_DBG_BUFFER CTL_CODE(FILE_DEVICE_UNKNOWN, \
  787. SHELLDRV_IOCTL_INDEX + DEBUG_IOCTLS_OFFSET + 2, \
  788. METHOD_BUFFERED, \
  789. FILE_ANY_ACCESS)
  790. #define TIWLN_SET_MODULE CTL_CODE(FILE_DEVICE_UNKNOWN, \
  791. SHELLDRV_IOCTL_INDEX + DEBUG_IOCTLS_OFFSET + 3, \

Large files files are truncated, but you can click here to view the full file