1 2 /** @file moal_priv.h 3 * 4 * @brief This file contains definition for extended private IOCTL call. 5 * 6 * Copyright (C) 2008-2017, Marvell International Ltd. 7 * 8 * This software file (the "File") is distributed by Marvell International 9 * Ltd. under the terms of the GNU General Public License Version 2, June 1991 10 * (the "License"). You may use, redistribute and/or modify this File in 11 * accordance with the terms and conditions of the License, a copy of which 12 * is available by writing to the Free Software Foundation, Inc., 13 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or on the 14 * worldwide web at http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt. 15 * 16 * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE 17 * IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE 18 * ARE EXPRESSLY DISCLAIMED. The License provides additional details about 19 * this warranty disclaimer. 20 * 21 */ 22 23 /******************************************************** 24 Change log: 25 10/31/2008: initial version 26 ********************************************************/ 27 28 #ifndef _WOAL_PRIV_H_ 29 #define _WOAL_PRIV_H_ 30 31 /** 2K bytes */ 32 #define WOAL_2K_BYTES 2000 33 34 /** PRIVATE CMD ID */ 35 #define WOAL_IOCTL (SIOCIWFIRSTPRIV) /* 0x8BE0 defined in wireless.h */ 36 37 /** Private command ID to set one int/get word char */ 38 #define WOAL_SETONEINT_GETWORDCHAR (WOAL_IOCTL + 1) 39 /** Private command ID to get version */ 40 #define WOAL_VERSION 1 41 /** Private command ID to get extended version */ 42 #define WOAL_VEREXT 2 43 44 /** Private command ID to set/get none */ 45 #define WOAL_SETNONE_GETNONE (WOAL_IOCTL + 2) 46 /** Private command ID for warm reset */ 47 #define WOAL_WARMRESET 1 48 49 /** 50 * Linux Kernels later 3.9 use CONFIG_PM_RUNTIME instead of 51 * CONFIG_USB_SUSPEND 52 */ 53 #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0) 54 #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 19, 0) 55 #ifdef CONFIG_PM 56 #ifndef CONFIG_USB_SUSPEND 57 #define CONFIG_USB_SUSPEND 58 #endif 59 #endif 60 #else /* LINUX_VERSION_CODE >= KERNEL_VERSION(3, 19, 0) */ 61 #ifdef CONFIG_PM_RUNTIME 62 #ifndef CONFIG_USB_SUSPEND 63 #define CONFIG_USB_SUSPEND 64 #endif 65 #endif 66 #endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3, 19, 0) */ 67 #endif 68 69 /** Private command ID to clear 11d chan table */ 70 #define WOAL_11D_CLR_CHAN_TABLE 4 71 72 /** Private command ID to set/get sixteen int */ 73 #define WOAL_SET_GET_SIXTEEN_INT (WOAL_IOCTL + 3) 74 /** Private command ID to set/get TX power configurations */ 75 #define WOAL_TX_POWERCFG 1 76 #ifdef DEBUG_LEVEL1 77 /** Private command ID to set/get driver debug */ 78 #define WOAL_DRV_DBG 2 79 #endif 80 /** Private command ID to set/get beacon interval */ 81 #define WOAL_BEACON_INTERVAL 3 82 /** Private command ID to set/get ATIM window */ 83 #define WOAL_ATIM_WINDOW 4 84 /** Private command ID to get RSSI */ 85 #define WOAL_SIGNAL 5 86 /** Private command ID to set/get Deep Sleep mode */ 87 #define WOAL_DEEP_SLEEP 7 88 /** Private command ID for 11n ht configration */ 89 #define WOAL_11N_TX_CFG 8 90 /** Private command ID for 11n usr ht configration */ 91 #define WOAL_11N_HTCAP_CFG 9 92 /** Private command ID for TX Aggregation */ 93 #define WOAL_PRIO_TBL 10 94 /** Private command ID for Updating ADDBA variables */ 95 #define WOAL_ADDBA_UPDT 11 96 /** Private command ID to set/get Host Sleep configuration */ 97 #define WOAL_HS_CFG 12 98 /** Private command ID to set Host Sleep parameters */ 99 #define WOAL_HS_SETPARA 13 100 /** Private command ID to read/write registers */ 101 #define WOAL_REG_READ_WRITE 14 102 /** Private command ID to set/get band/adhocband */ 103 #define WOAL_BAND_CFG 15 104 /** Private command ID for TX Aggregation */ 105 #define WOAL_11N_AMSDU_AGGR_CTRL 17 106 /** Private command ID to set/get Inactivity timeout */ 107 #define WOAL_INACTIVITY_TIMEOUT_EXT 18 108 /** Private command ID to turn on/off sdio clock */ 109 #define WOAL_SDIO_CLOCK 19 110 /** Private command ID to read/write Command 52 */ 111 #define WOAL_CMD_52RDWR 20 112 /** Private command ID to set/get scan configuration parameter */ 113 #define WOAL_SCAN_CFG 21 114 /** Private command ID to set/get PS configuration parameter */ 115 #define WOAL_PS_CFG 22 116 /** Private command ID to read/write memory */ 117 #define WOAL_MEM_READ_WRITE 23 118 #if defined(SDIO_MULTI_PORT_TX_AGGR) || defined(SDIO_MULTI_PORT_RX_AGGR) 119 /** Private command ID to control SDIO MP-A */ 120 #define WOAL_SDIO_MPA_CTRL 25 121 #endif 122 /** Private command ID for Updating ADDBA variables */ 123 #define WOAL_ADDBA_REJECT 27 124 /** Private command ID to set/get sleep parameters */ 125 #define WOAL_SLEEP_PARAMS 28 126 /** Private command ID to set/get network monitor */ 127 #define WOAL_NET_MONITOR 30 128 /** Private command ID to set/get TX BF capabilities */ 129 #define WOAL_TX_BF_CAP 31 130 #if defined(DFS_TESTING_SUPPORT) 131 /** Private command ID to set/get dfs testing settings */ 132 #define WOAL_DFS_TESTING 33 133 #endif 134 /** Private command ID to set/get CFP table codes */ 135 #define WOAL_CFP_CODE 34 136 /** Private command ID to set/get tx/rx antenna */ 137 #define WOAL_SET_GET_TX_RX_ANT 35 138 /** Private command ID to set/get management frame passthru mask */ 139 #define WOAL_MGMT_FRAME_CTRL 36 140 141 /** Private command ID to configure gpio independent reset */ 142 #define WOAL_IND_RST_CFG 37 143 144 /** Private command ID to set one int/get one int */ 145 #define WOAL_SETONEINT_GETONEINT (WOAL_IOCTL + 5) 146 /** Private command ID to set/get Tx rate */ 147 #define WOAL_SET_GET_TXRATE 1 148 /** Private command ID to set/get region code */ 149 #define WOAL_SET_GET_REGIONCODE 2 150 /** Private command ID to turn on/off radio */ 151 #define WOAL_SET_RADIO 3 152 /** Private command ID to enable WMM */ 153 #define WOAL_WMM_ENABLE 4 154 /** Private command ID to enable 802.11D */ 155 #define WOAL_11D_ENABLE 5 156 /** Private command ID to set/get QoS configuration */ 157 #define WOAL_SET_GET_QOS_CFG 7 158 #if defined(REASSOCIATION) 159 /** Private command ID to set/get reassociation setting */ 160 #define WOAL_SET_GET_REASSOC 9 161 #endif /* REASSOCIATION */ 162 /** Private command ID for Updating Transmit buffer configration */ 163 #define WOAL_TXBUF_CFG 10 164 /** Private command ID to set/get WWS mode */ 165 #define WOAL_SET_GET_WWS_CFG 12 166 /** Private command ID to set/get sleep period */ 167 #define WOAL_SLEEP_PD 13 168 /** Private command ID to set/get firmware wakeup method */ 169 #define WOAL_FW_WAKEUP_METHOD 15 170 /** Private command ID to set/get auth type */ 171 #define WOAL_AUTH_TYPE 18 172 /** Private command ID to set/get port control */ 173 #define WOAL_PORT_CTRL 19 174 /** Private command ID for coalesced status */ 175 #define WOAL_COALESCING_STATUS 20 176 #if defined(WIFI_DIRECT_SUPPORT) 177 #if defined(STA_SUPPORT) && defined(UAP_SUPPORT) 178 /** Private command ID for set/get BSS role */ 179 #define WOAL_SET_GET_BSS_ROLE 21 180 #endif 181 #endif 182 /** Private command ID for set/get 11h local power constraint */ 183 #define WOAL_SET_GET_11H_LOCAL_PWR_CONSTRAINT 22 184 /** Private command ID to set/get MAC control */ 185 #define WOAL_MAC_CONTROL 24 186 /** Private command ID to get thermal value */ 187 #define WOAL_THERMAL 25 188 189 /** Private command ID to get log */ 190 #define WOALGETLOG (WOAL_IOCTL + 7) 191 192 /** Private command ID to set a wext address variable */ 193 #define WOAL_SETADDR_GETNONE (WOAL_IOCTL + 8) 194 /** Private command ID to send deauthentication */ 195 #define WOAL_DEAUTH 1 196 197 /** Private command to get/set 256 chars */ 198 #define WOAL_SET_GET_256_CHAR (WOAL_IOCTL + 9) 199 /** Private command to read/write passphrase */ 200 #define WOAL_PASSPHRASE 1 201 /** Private command to get/set Ad-Hoc AES */ 202 #define WOAL_ADHOC_AES 2 203 #define WOAL_ASSOCIATE 3 204 /** Private command ID to get WMM queue status */ 205 #define WOAL_WMM_QUEUE_STATUS 4 206 /** Private command ID to get Traffic stream status */ 207 #define WOAL_WMM_TS_STATUS 5 208 #define WOAL_IP_ADDRESS 7 209 /** Private command ID to set/get TX bemaforming */ 210 #define WOAL_TX_BF_CFG 8 211 212 /** Get log buffer size */ 213 #define GETLOG_BUFSIZE 512 214 215 /** Private command ID to set none/get twelve chars*/ 216 #define WOAL_SETNONE_GETTWELVE_CHAR (WOAL_IOCTL + 11) 217 /** Private command ID for WPS session */ 218 #define WOAL_WPS_SESSION 1 219 220 /** Private command ID to set none/get four int */ 221 #define WOAL_SETNONE_GET_FOUR_INT (WOAL_IOCTL + 13) 222 /** Private command ID to get data rates */ 223 #define WOAL_DATA_RATE 1 224 /** Private command ID to get E-Supplicant mode */ 225 #define WOAL_ESUPP_MODE 2 226 227 /** Private command to get/set 64 ints */ 228 #define WOAL_SET_GET_64_INT (WOAL_IOCTL + 15) 229 /** Private command ID to set/get ECL system clock */ 230 #define WOAL_ECL_SYS_CLOCK 1 231 232 /** Private command ID for hostcmd */ 233 #define WOAL_HOST_CMD (WOAL_IOCTL + 17) 234 235 /** Private command ID for arpfilter */ 236 #define WOAL_ARP_FILTER (WOAL_IOCTL + 19) 237 238 /** Private command ID to set ints and get chars */ 239 #define WOAL_SET_INTS_GET_CHARS (WOAL_IOCTL + 21) 240 /** Private command ID to read EEPROM data */ 241 #define WOAL_READ_EEPROM 1 242 243 /** Private command ID to set/get 2K bytes */ 244 #define WOAL_SET_GET_2K_BYTES (WOAL_IOCTL + 23) 245 246 /** Private command ID to read/write Command 53 */ 247 #define WOAL_CMD_53RDWR 2 248 249 /** Private command ID for setuserscan */ 250 #define WOAL_SET_USER_SCAN 3 251 /** Private command ID for getscantable */ 252 #define WOAL_GET_SCAN_TABLE 4 253 /** Private command ID for setuserscanext: async without wait */ 254 #define WOAL_SET_USER_SCAN_EXT 5 255 256 /** Private command ID to request ADDTS */ 257 #define WOAL_WMM_ADDTS 7 258 /** Private command ID to request DELTS */ 259 #define WOAL_WMM_DELTS 8 260 /** Private command ID to queue configuration */ 261 #define WOAL_WMM_QUEUE_CONFIG 9 262 /** Private command ID to queue stats */ 263 #define WOAL_WMM_QUEUE_STATS 10 264 /** Private command ID to Bypass auth packet */ 265 #define WOAL_BYPASSED_PACKET 11 266 267 #ifdef UAP_WEXT 268 /** The following command IDs are for Froyo app */ 269 /** Private command ID to start driver */ 270 #define WOAL_FROYO_START (WOAL_IOCTL + 28) 271 /** Private command ID to reload FW */ 272 #define WOAL_FROYO_WL_FW_RELOAD (WOAL_IOCTL + 29) 273 /** Private command ID to stop driver */ 274 #define WOAL_FROYO_STOP (WOAL_IOCTL + 30) 275 #endif 276 277 /** 278 * iwpriv ioctl handlers 279 */ 280 static const struct iw_priv_args woal_private_args[] = { 281 { 282 WOAL_SETONEINT_GETWORDCHAR, 283 IW_PRIV_TYPE_INT | 1, 284 IW_PRIV_TYPE_CHAR | 128, 285 ""}, 286 { 287 WOAL_VERSION, 288 IW_PRIV_TYPE_INT | 1, 289 IW_PRIV_TYPE_CHAR | 128, 290 "version"}, 291 { 292 WOAL_VEREXT, 293 IW_PRIV_TYPE_INT | 1, 294 IW_PRIV_TYPE_CHAR | 128, 295 "verext"}, 296 { 297 WOAL_SETNONE_GETNONE, 298 IW_PRIV_TYPE_NONE, 299 IW_PRIV_TYPE_NONE, 300 ""}, 301 { 302 WOAL_WARMRESET, 303 IW_PRIV_TYPE_NONE, 304 IW_PRIV_TYPE_NONE, 305 "warmreset"}, 306 { 307 WOAL_SETONEINT_GETONEINT, 308 IW_PRIV_TYPE_INT | 1, 309 IW_PRIV_TYPE_INT | 1, 310 ""}, 311 { 312 WOAL_SET_GET_TXRATE, 313 IW_PRIV_TYPE_INT | 1, 314 IW_PRIV_TYPE_INT | 1, 315 "txratecfg"}, 316 { 317 WOAL_SET_GET_REGIONCODE, 318 IW_PRIV_TYPE_INT | 1, 319 IW_PRIV_TYPE_INT | 1, 320 "regioncode"}, 321 { 322 WOAL_SET_RADIO, 323 IW_PRIV_TYPE_INT | 1, 324 IW_PRIV_TYPE_INT | 1, 325 "radioctrl"}, 326 { 327 WOAL_WMM_ENABLE, 328 IW_PRIV_TYPE_INT | 1, 329 IW_PRIV_TYPE_INT | 1, 330 "wmmcfg"}, 331 { 332 WOAL_11D_ENABLE, 333 IW_PRIV_TYPE_INT | 1, 334 IW_PRIV_TYPE_INT | 1, 335 "11dcfg"}, 336 { 337 WOAL_11D_CLR_CHAN_TABLE, 338 IW_PRIV_TYPE_NONE, 339 IW_PRIV_TYPE_NONE, 340 "11dclrtbl"}, 341 { 342 WOAL_SET_GET_QOS_CFG, 343 IW_PRIV_TYPE_INT | 1, 344 IW_PRIV_TYPE_INT | 1, 345 "qoscfg"}, 346 { 347 WOAL_SET_GET_WWS_CFG, 348 IW_PRIV_TYPE_INT | 1, 349 IW_PRIV_TYPE_INT | 1, 350 "wwscfg"}, 351 #if defined(REASSOCIATION) 352 { 353 WOAL_SET_GET_REASSOC, 354 IW_PRIV_TYPE_INT | 1, 355 IW_PRIV_TYPE_INT | 1, 356 "reassoctrl"}, 357 #endif 358 { 359 WOAL_TXBUF_CFG, 360 IW_PRIV_TYPE_INT | 1, 361 IW_PRIV_TYPE_INT | 1, 362 "txbufcfg"}, 363 { 364 WOAL_SLEEP_PD, 365 IW_PRIV_TYPE_INT | 1, 366 IW_PRIV_TYPE_INT | 1, 367 "sleeppd"}, 368 { 369 WOAL_FW_WAKEUP_METHOD, 370 IW_PRIV_TYPE_INT | 1, 371 IW_PRIV_TYPE_INT | 1, 372 "fwwakeupmethod"}, 373 { 374 WOAL_AUTH_TYPE, 375 IW_PRIV_TYPE_INT | 1, 376 IW_PRIV_TYPE_INT | 1, 377 "authtype"}, 378 { 379 WOAL_PORT_CTRL, 380 IW_PRIV_TYPE_INT | 1, 381 IW_PRIV_TYPE_INT | 1, 382 "port_ctrl"}, 383 { 384 WOAL_COALESCING_STATUS, 385 IW_PRIV_TYPE_INT | 1, 386 IW_PRIV_TYPE_INT | 1, 387 "coalesce_status"}, 388 #if defined(WIFI_DIRECT_SUPPORT) 389 #if defined(STA_SUPPORT) && defined(UAP_SUPPORT) 390 { 391 WOAL_SET_GET_BSS_ROLE, 392 IW_PRIV_TYPE_INT | 1, 393 IW_PRIV_TYPE_INT | 1, 394 "bssrole"}, 395 #endif 396 #endif 397 { 398 WOAL_SET_GET_11H_LOCAL_PWR_CONSTRAINT, 399 IW_PRIV_TYPE_INT | 1, 400 IW_PRIV_TYPE_INT | 1, 401 "powercons"}, 402 { 403 WOAL_MAC_CONTROL, 404 IW_PRIV_TYPE_INT | 1, 405 IW_PRIV_TYPE_INT | 1, 406 "macctrl"}, 407 { 408 WOAL_THERMAL, 409 IW_PRIV_TYPE_INT | 1, 410 IW_PRIV_TYPE_INT | 1, 411 "thermal"}, 412 { 413 WOAL_SET_GET_SIXTEEN_INT, 414 IW_PRIV_TYPE_INT | 16, 415 IW_PRIV_TYPE_INT | 16, 416 ""}, 417 { 418 WOAL_TX_POWERCFG, 419 IW_PRIV_TYPE_INT | 16, 420 IW_PRIV_TYPE_INT | 16, 421 "txpowercfg"}, 422 #ifdef DEBUG_LEVEL1 423 { 424 WOAL_DRV_DBG, 425 IW_PRIV_TYPE_INT | 16, 426 IW_PRIV_TYPE_INT | 16, 427 "drvdbg"}, 428 #endif 429 { 430 WOAL_BEACON_INTERVAL, 431 IW_PRIV_TYPE_INT | 16, 432 IW_PRIV_TYPE_INT | 16, 433 "bcninterval"}, 434 { 435 WOAL_ATIM_WINDOW, 436 IW_PRIV_TYPE_INT | 16, 437 IW_PRIV_TYPE_INT | 16, 438 "atimwindow"}, 439 { 440 WOAL_SIGNAL, 441 IW_PRIV_TYPE_INT | 16, 442 IW_PRIV_TYPE_INT | 16, 443 "getsignal"}, 444 { 445 WOAL_DEEP_SLEEP, 446 IW_PRIV_TYPE_INT | 16, 447 IW_PRIV_TYPE_INT | 16, 448 "deepsleep", 449 }, 450 { 451 WOAL_11N_TX_CFG, 452 IW_PRIV_TYPE_INT | 16, 453 IW_PRIV_TYPE_INT | 16, 454 "httxcfg"}, 455 { 456 WOAL_11N_HTCAP_CFG, 457 IW_PRIV_TYPE_INT | 16, 458 IW_PRIV_TYPE_INT | 16, 459 "htcapinfo"}, 460 { 461 WOAL_PRIO_TBL, 462 IW_PRIV_TYPE_INT | 16, 463 IW_PRIV_TYPE_INT | 16, 464 "aggrpriotbl"}, 465 { 466 WOAL_11N_AMSDU_AGGR_CTRL, 467 IW_PRIV_TYPE_INT | 16, 468 IW_PRIV_TYPE_INT | 16, 469 "amsduaggrctrl"}, 470 { 471 WOAL_ADDBA_UPDT, 472 IW_PRIV_TYPE_INT | 16, 473 IW_PRIV_TYPE_INT | 16, 474 "addbapara"}, 475 { 476 WOAL_ADDBA_REJECT, 477 IW_PRIV_TYPE_INT | 16, 478 IW_PRIV_TYPE_INT | 16, 479 "addbareject"}, 480 { 481 WOAL_TX_BF_CAP, 482 IW_PRIV_TYPE_INT | 16, 483 IW_PRIV_TYPE_INT | 16, 484 "httxbfcap"}, 485 { 486 WOAL_HS_CFG, 487 IW_PRIV_TYPE_INT | 16, 488 IW_PRIV_TYPE_INT | 16, 489 "hscfg"}, 490 { 491 WOAL_HS_SETPARA, 492 IW_PRIV_TYPE_INT | 16, 493 IW_PRIV_TYPE_INT | 16, 494 "hssetpara"}, 495 { 496 WOAL_REG_READ_WRITE, 497 IW_PRIV_TYPE_INT | 16, 498 IW_PRIV_TYPE_INT | 16, 499 "regrdwr"}, 500 { 501 WOAL_BAND_CFG, 502 IW_PRIV_TYPE_INT | 16, 503 IW_PRIV_TYPE_INT | 16, 504 "bandcfg"}, 505 { 506 WOAL_INACTIVITY_TIMEOUT_EXT, 507 IW_PRIV_TYPE_INT | 16, 508 IW_PRIV_TYPE_INT | 16, 509 "inactivityto"}, 510 { 511 WOAL_SDIO_CLOCK, 512 IW_PRIV_TYPE_INT | 16, 513 IW_PRIV_TYPE_INT | 16, 514 "sdioclock"}, 515 { 516 WOAL_CMD_52RDWR, 517 IW_PRIV_TYPE_INT | 16, 518 IW_PRIV_TYPE_INT | 16, 519 "sdcmd52rw"}, 520 { 521 WOAL_SCAN_CFG, 522 IW_PRIV_TYPE_INT | 16, 523 IW_PRIV_TYPE_INT | 16, 524 "scancfg"}, 525 { 526 WOAL_PS_CFG, 527 IW_PRIV_TYPE_INT | 16, 528 IW_PRIV_TYPE_INT | 16, 529 "pscfg"}, 530 { 531 WOAL_MEM_READ_WRITE, 532 IW_PRIV_TYPE_INT | 16, 533 IW_PRIV_TYPE_INT | 16, 534 "memrdwr"}, 535 #if defined(SDIO_MULTI_PORT_TX_AGGR) || defined(SDIO_MULTI_PORT_RX_AGGR) 536 { 537 WOAL_SDIO_MPA_CTRL, 538 IW_PRIV_TYPE_INT | 16, 539 IW_PRIV_TYPE_INT | 16, 540 "mpactrl"}, 541 #endif 542 { 543 WOAL_SLEEP_PARAMS, 544 IW_PRIV_TYPE_INT | 16, 545 IW_PRIV_TYPE_INT | 16, 546 "sleepparams"}, 547 { 548 WOAL_NET_MONITOR, 549 IW_PRIV_TYPE_INT | 16, 550 IW_PRIV_TYPE_INT | 16, 551 "netmon"}, 552 #if defined(DFS_TESTING_SUPPORT) 553 { 554 WOAL_DFS_TESTING, 555 IW_PRIV_TYPE_INT | 16, 556 IW_PRIV_TYPE_INT | 16, 557 "dfstesting"}, 558 #endif 559 { 560 WOAL_MGMT_FRAME_CTRL, 561 IW_PRIV_TYPE_INT | 16, 562 IW_PRIV_TYPE_INT | 16, 563 "mgmtframectrl"}, 564 { 565 WOAL_CFP_CODE, 566 IW_PRIV_TYPE_INT | 16, 567 IW_PRIV_TYPE_INT | 16, 568 "cfpcode"}, 569 { 570 WOAL_SET_GET_TX_RX_ANT, 571 IW_PRIV_TYPE_INT | 16, 572 IW_PRIV_TYPE_INT | 16, 573 "antcfg"}, 574 { 575 WOAL_IND_RST_CFG, 576 IW_PRIV_TYPE_INT | 16, 577 IW_PRIV_TYPE_INT | 16, 578 "indrstcfg"}, 579 { 580 WOALGETLOG, 581 IW_PRIV_TYPE_NONE, 582 IW_PRIV_TYPE_CHAR | GETLOG_BUFSIZE, 583 "getlog"}, 584 { 585 WOAL_SETADDR_GETNONE, 586 IW_PRIV_TYPE_ADDR | 1, 587 IW_PRIV_TYPE_NONE, 588 ""}, 589 { 590 WOAL_DEAUTH, 591 IW_PRIV_TYPE_ADDR | 1, 592 IW_PRIV_TYPE_NONE, 593 "deauth"}, 594 { 595 WOAL_SET_GET_256_CHAR, 596 IW_PRIV_TYPE_CHAR | 256, 597 IW_PRIV_TYPE_CHAR | 256, 598 ""}, 599 { 600 WOAL_PASSPHRASE, 601 IW_PRIV_TYPE_CHAR | 256, 602 IW_PRIV_TYPE_CHAR | 256, 603 "passphrase"}, 604 { 605 WOAL_ADHOC_AES, 606 IW_PRIV_TYPE_CHAR | 256, 607 IW_PRIV_TYPE_CHAR | 256, 608 "adhocaes"}, 609 { 610 WOAL_ASSOCIATE, 611 IW_PRIV_TYPE_CHAR | 256, 612 IW_PRIV_TYPE_CHAR | 256, 613 "associate"}, 614 { 615 WOAL_WMM_QUEUE_STATUS, 616 IW_PRIV_TYPE_CHAR | 256, 617 IW_PRIV_TYPE_CHAR | 256, 618 "qstatus"}, 619 { 620 WOAL_WMM_TS_STATUS, 621 IW_PRIV_TYPE_CHAR | 256, 622 IW_PRIV_TYPE_CHAR | 256, 623 "ts_status"}, 624 { 625 WOAL_IP_ADDRESS, 626 IW_PRIV_TYPE_CHAR | 256, 627 IW_PRIV_TYPE_CHAR | 256, 628 "ipaddr"}, 629 { 630 WOAL_TX_BF_CFG, 631 IW_PRIV_TYPE_CHAR | 256, 632 IW_PRIV_TYPE_CHAR | 256, 633 "httxbfcfg"}, 634 { 635 WOAL_SETNONE_GETTWELVE_CHAR, 636 IW_PRIV_TYPE_NONE, 637 IW_PRIV_TYPE_CHAR | 12, 638 ""}, 639 { 640 WOAL_WPS_SESSION, 641 IW_PRIV_TYPE_NONE, 642 IW_PRIV_TYPE_CHAR | 12, 643 "wpssession"}, 644 { 645 WOAL_SETNONE_GET_FOUR_INT, 646 IW_PRIV_TYPE_NONE, 647 IW_PRIV_TYPE_INT | 4, 648 ""}, 649 { 650 WOAL_DATA_RATE, 651 IW_PRIV_TYPE_NONE, 652 IW_PRIV_TYPE_INT | 4, 653 "getdatarate"}, 654 { 655 WOAL_ESUPP_MODE, 656 IW_PRIV_TYPE_NONE, 657 IW_PRIV_TYPE_INT | 4, 658 "esuppmode"}, 659 { 660 WOAL_SET_GET_64_INT, 661 IW_PRIV_TYPE_INT | 64, 662 IW_PRIV_TYPE_INT | 64, 663 ""}, 664 { 665 WOAL_ECL_SYS_CLOCK, 666 IW_PRIV_TYPE_INT | 64, 667 IW_PRIV_TYPE_INT | 64, 668 "sysclock"}, 669 { 670 WOAL_HOST_CMD, 671 IW_PRIV_TYPE_BYTE | 2047, 672 IW_PRIV_TYPE_BYTE | 2047, 673 "hostcmd"}, 674 { 675 WOAL_ARP_FILTER, 676 IW_PRIV_TYPE_BYTE | 2047, 677 IW_PRIV_TYPE_BYTE | 2047, 678 "arpfilter"}, 679 { 680 WOAL_SET_INTS_GET_CHARS, 681 IW_PRIV_TYPE_INT | 16, 682 IW_PRIV_TYPE_BYTE | 256, 683 ""}, 684 { 685 WOAL_READ_EEPROM, 686 IW_PRIV_TYPE_INT | 16, 687 IW_PRIV_TYPE_BYTE | 256, 688 "rdeeprom"}, 689 { 690 WOAL_SET_GET_2K_BYTES, 691 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 692 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 693 ""}, 694 { 695 WOAL_CMD_53RDWR, 696 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 697 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 698 "sdcmd53rw"}, 699 { 700 WOAL_SET_USER_SCAN, 701 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 702 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 703 "setuserscan"}, 704 { 705 WOAL_GET_SCAN_TABLE, 706 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 707 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 708 "getscantable"}, 709 { 710 WOAL_SET_USER_SCAN_EXT, 711 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 712 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 713 "setuserscanext"}, 714 { 715 WOAL_WMM_ADDTS, 716 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 717 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 718 "addts"}, 719 { 720 WOAL_WMM_DELTS, 721 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 722 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 723 "delts"}, 724 { 725 WOAL_WMM_QUEUE_CONFIG, 726 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 727 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 728 "qconfig"}, 729 { 730 WOAL_WMM_QUEUE_STATS, 731 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 732 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 733 "qstats"}, 734 { 735 WOAL_BYPASSED_PACKET, 736 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 737 IW_PRIV_TYPE_BYTE | WOAL_2K_BYTES, 738 "pb_bypass"}, 739 #ifdef UAP_WEXT 740 { 741 WOAL_FROYO_START, 742 IW_PRIV_TYPE_NONE, 743 IW_PRIV_TYPE_NONE, 744 "START"}, 745 { 746 WOAL_FROYO_STOP, 747 IW_PRIV_TYPE_NONE, 748 IW_PRIV_TYPE_NONE, 749 "STOP"}, 750 { 751 WOAL_FROYO_WL_FW_RELOAD, 752 IW_PRIV_TYPE_CHAR | 256, 753 IW_PRIV_TYPE_CHAR | 256, 754 "WL_FW_RELOAD"}, 755 #endif 756 }; 757 758 /** moal_802_11_rates */ 759 typedef struct _moal_802_11_rates { 760 /** Num of rates */ 761 t_u8 num_of_rates; 762 /** Rates */ 763 t_u8 rates[MLAN_SUPPORTED_RATES]; 764 } moal_802_11_rates; 765 766 #if defined(STA_WEXT) || defined(UAP_WEXT) 767 int woal_wext_do_ioctl(struct net_device *dev, struct ifreq *req, int cmd); 768 #endif 769 770 #endif /* _WOAL_PRIV_H_ */ 771