Go to the documentation of this file. 47 #define AR5K_NOQCU_TXDP0 0x0000 48 #define AR5K_NOQCU_TXDP1 0x0004 53 #define AR5K_CR 0x0008 54 #define AR5K_CR_TXE0 0x00000001 55 #define AR5K_CR_TXE1 0x00000002 56 #define AR5K_CR_RXE 0x00000004 57 #define AR5K_CR_TXD0 0x00000008 58 #define AR5K_CR_TXD1 0x00000010 59 #define AR5K_CR_RXD 0x00000020 60 #define AR5K_CR_SWI 0x00000040 65 #define AR5K_RXDP 0x000c 70 #define AR5K_CFG 0x0014 71 #define AR5K_CFG_SWTD 0x00000001 72 #define AR5K_CFG_SWTB 0x00000002 73 #define AR5K_CFG_SWRD 0x00000004 74 #define AR5K_CFG_SWRB 0x00000008 75 #define AR5K_CFG_SWRG 0x00000010 76 #define AR5K_CFG_IBSS 0x00000020 77 #define AR5K_CFG_PHY_OK 0x00000100 78 #define AR5K_CFG_EEBS 0x00000200 79 #define AR5K_CFG_CLKGD 0x00000400 80 #define AR5K_CFG_TXCNT 0x00007800 81 #define AR5K_CFG_TXCNT_S 11 82 #define AR5K_CFG_TXFSTAT 0x00008000 83 #define AR5K_CFG_TXFSTRT 0x00010000 84 #define AR5K_CFG_PCI_THRES 0x00060000 85 #define AR5K_CFG_PCI_THRES_S 17 90 #define AR5K_IER 0x0024 91 #define AR5K_IER_DISABLE 0x00000000 92 #define AR5K_IER_ENABLE 0x00000001 103 #define AR5K_BCR 0x0028 104 #define AR5K_BCR_AP 0x00000000 105 #define AR5K_BCR_ADHOC 0x00000001 106 #define AR5K_BCR_BDMAE 0x00000002 107 #define AR5K_BCR_TQ1FV 0x00000004 108 #define AR5K_BCR_TQ1V 0x00000008 109 #define AR5K_BCR_BCGET 0x00000010 114 #define AR5K_RTSD0 0x0028 115 #define AR5K_RTSD0_6 0x000000ff 116 #define AR5K_RTSD0_6_S 0 117 #define AR5K_RTSD0_9 0x0000ff00 118 #define AR5K_RTSD0_9_S 8 119 #define AR5K_RTSD0_12 0x00ff0000 120 #define AR5K_RTSD0_12_S 16 121 #define AR5K_RTSD0_18 0xff000000 122 #define AR5K_RTSD0_18_S 24 140 #define AR5K_BSR 0x002c 141 #define AR5K_BSR_BDLYSW 0x00000001 142 #define AR5K_BSR_BDLYDMA 0x00000002 143 #define AR5K_BSR_TXQ1F 0x00000004 144 #define AR5K_BSR_ATIMDLY 0x00000008 145 #define AR5K_BSR_SNPADHOC 0x00000100 146 #define AR5K_BSR_SNPBDMAE 0x00000200 147 #define AR5K_BSR_SNPTQ1FV 0x00000400 148 #define AR5K_BSR_SNPTQ1V 0x00000800 149 #define AR5K_BSR_SNAPSHOTSVALID 0x00001000 150 #define AR5K_BSR_SWBA_CNT 0x00ff0000 155 #define AR5K_RTSD1 0x002c 156 #define AR5K_RTSD1_24 0x000000ff 157 #define AR5K_RTSD1_24_S 0 158 #define AR5K_RTSD1_36 0x0000ff00 159 #define AR5K_RTSD1_36_S 8 160 #define AR5K_RTSD1_48 0x00ff0000 161 #define AR5K_RTSD1_48_S 16 162 #define AR5K_RTSD1_54 0xff000000 163 #define AR5K_RTSD1_54_S 24 169 #define AR5K_TXCFG 0x0030 170 #define AR5K_TXCFG_SDMAMR 0x00000007 171 #define AR5K_TXCFG_SDMAMR_S 0 172 #define AR5K_TXCFG_B_MODE 0x00000008 173 #define AR5K_TXCFG_TXFSTP 0x00000008 174 #define AR5K_TXCFG_TXFULL 0x000003f0 175 #define AR5K_TXCFG_TXFULL_S 4 176 #define AR5K_TXCFG_TXFULL_0B 0x00000000 177 #define AR5K_TXCFG_TXFULL_64B 0x00000010 178 #define AR5K_TXCFG_TXFULL_128B 0x00000020 179 #define AR5K_TXCFG_TXFULL_192B 0x00000030 180 #define AR5K_TXCFG_TXFULL_256B 0x00000040 181 #define AR5K_TXCFG_TXCONT_EN 0x00000080 182 #define AR5K_TXCFG_DMASIZE 0x00000100 183 #define AR5K_TXCFG_JUMBO_DESC_EN 0x00000400 184 #define AR5K_TXCFG_ADHOC_BCN_ATIM 0x00000800 185 #define AR5K_TXCFG_ATIM_WINDOW_DEF_DIS 0x00001000 186 #define AR5K_TXCFG_RTSRND 0x00001000 187 #define AR5K_TXCFG_FRMPAD_DIS 0x00002000 188 #define AR5K_TXCFG_RDY_CBR_DIS 0x00004000 189 #define AR5K_TXCFG_JUMBO_FRM_MODE 0x00008000 190 #define AR5K_TXCFG_DCU_DBL_BUF_DIS 0x00008000 191 #define AR5K_TXCFG_DCU_CACHING_DIS 0x00010000 196 #define AR5K_RXCFG 0x0034 197 #define AR5K_RXCFG_SDMAMW 0x00000007 198 #define AR5K_RXCFG_SDMAMW_S 0 199 #define AR5K_RXCFG_ZLFDMA 0x00000008 200 #define AR5K_RXCFG_DEF_ANTENNA 0x00000010 201 #define AR5K_RXCFG_JUMBO_RXE 0x00000020 202 #define AR5K_RXCFG_JUMBO_WRAP 0x00000040 203 #define AR5K_RXCFG_SLE_ENTRY 0x00000080 209 #define AR5K_RXJLA 0x0038 214 #define AR5K_MIBC 0x0040 215 #define AR5K_MIBC_COW 0x00000001 216 #define AR5K_MIBC_FMC 0x00000002 217 #define AR5K_MIBC_CMC 0x00000004 218 #define AR5K_MIBC_MCS 0x00000008 223 #define AR5K_TOPS 0x0044 224 #define AR5K_TOPS_M 0x0000ffff 229 #define AR5K_RXNOFRM 0x0048 230 #define AR5K_RXNOFRM_M 0x000003ff 235 #define AR5K_TXNOFRM 0x004c 236 #define AR5K_TXNOFRM_M 0x000003ff 237 #define AR5K_TXNOFRM_QCU 0x000ffc00 238 #define AR5K_TXNOFRM_QCU_S 10 243 #define AR5K_RPGTO 0x0050 244 #define AR5K_RPGTO_M 0x000003ff 249 #define AR5K_RFCNT 0x0054 250 #define AR5K_RFCNT_M 0x0000001f 251 #define AR5K_RFCNT_RFCL 0x0000000f 257 #define AR5K_MISC 0x0058 258 #define AR5K_MISC_DMA_OBS_M 0x000001e0 259 #define AR5K_MISC_DMA_OBS_S 5 260 #define AR5K_MISC_MISC_OBS_M 0x00000e00 261 #define AR5K_MISC_MISC_OBS_S 9 262 #define AR5K_MISC_MAC_OBS_LSB_M 0x00007000 263 #define AR5K_MISC_MAC_OBS_LSB_S 12 264 #define AR5K_MISC_MAC_OBS_MSB_M 0x00038000 265 #define AR5K_MISC_MAC_OBS_MSB_S 15 266 #define AR5K_MISC_LED_DECAY 0x001c0000 267 #define AR5K_MISC_LED_BLINK 0x00e00000 273 #define AR5K_QCUDCU_CLKGT 0x005c 274 #define AR5K_QCUDCU_CLKGT_QCU 0x0000ffff 275 #define AR5K_QCUDCU_CLKGT_DCU 0x07ff0000 285 #define AR5K_ISR 0x001c 286 #define AR5K_PISR 0x0080 287 #define AR5K_ISR_RXOK 0x00000001 288 #define AR5K_ISR_RXDESC 0x00000002 289 #define AR5K_ISR_RXERR 0x00000004 290 #define AR5K_ISR_RXNOFRM 0x00000008 291 #define AR5K_ISR_RXEOL 0x00000010 292 #define AR5K_ISR_RXORN 0x00000020 293 #define AR5K_ISR_TXOK 0x00000040 294 #define AR5K_ISR_TXDESC 0x00000080 295 #define AR5K_ISR_TXERR 0x00000100 296 #define AR5K_ISR_TXNOFRM 0x00000200 297 #define AR5K_ISR_TXEOL 0x00000400 298 #define AR5K_ISR_TXURN 0x00000800 299 #define AR5K_ISR_MIB 0x00001000 300 #define AR5K_ISR_SWI 0x00002000 301 #define AR5K_ISR_RXPHY 0x00004000 302 #define AR5K_ISR_RXKCM 0x00008000 303 #define AR5K_ISR_SWBA 0x00010000 304 #define AR5K_ISR_BRSSI 0x00020000 305 #define AR5K_ISR_BMISS 0x00040000 306 #define AR5K_ISR_HIUERR 0x00080000 307 #define AR5K_ISR_BNR 0x00100000 308 #define AR5K_ISR_MCABT 0x00100000 309 #define AR5K_ISR_RXCHIRP 0x00200000 310 #define AR5K_ISR_SSERR 0x00200000 311 #define AR5K_ISR_DPERR 0x00400000 312 #define AR5K_ISR_RXDOPPLER 0x00400000 313 #define AR5K_ISR_TIM 0x00800000 314 #define AR5K_ISR_BCNMISC 0x00800000 316 #define AR5K_ISR_GPIO 0x01000000 317 #define AR5K_ISR_QCBRORN 0x02000000 318 #define AR5K_ISR_QCBRURN 0x04000000 319 #define AR5K_ISR_QTRIG 0x08000000 327 #define AR5K_SISR0 0x0084 328 #define AR5K_SISR0_QCU_TXOK 0x000003ff 329 #define AR5K_SISR0_QCU_TXOK_S 0 330 #define AR5K_SISR0_QCU_TXDESC 0x03ff0000 331 #define AR5K_SISR0_QCU_TXDESC_S 16 333 #define AR5K_SISR1 0x0088 334 #define AR5K_SISR1_QCU_TXERR 0x000003ff 335 #define AR5K_SISR1_QCU_TXERR_S 0 336 #define AR5K_SISR1_QCU_TXEOL 0x03ff0000 337 #define AR5K_SISR1_QCU_TXEOL_S 16 339 #define AR5K_SISR2 0x008c 340 #define AR5K_SISR2_QCU_TXURN 0x000003ff 341 #define AR5K_SISR2_QCU_TXURN_S 0 342 #define AR5K_SISR2_MCABT 0x00100000 343 #define AR5K_SISR2_SSERR 0x00200000 344 #define AR5K_SISR2_DPERR 0x00400000 345 #define AR5K_SISR2_TIM 0x01000000 346 #define AR5K_SISR2_CAB_END 0x02000000 347 #define AR5K_SISR2_DTIM_SYNC 0x04000000 348 #define AR5K_SISR2_BCN_TIMEOUT 0x08000000 349 #define AR5K_SISR2_CAB_TIMEOUT 0x10000000 350 #define AR5K_SISR2_DTIM 0x20000000 351 #define AR5K_SISR2_TSFOOR 0x80000000 353 #define AR5K_SISR3 0x0090 354 #define AR5K_SISR3_QCBRORN 0x000003ff 355 #define AR5K_SISR3_QCBRORN_S 0 356 #define AR5K_SISR3_QCBRURN 0x03ff0000 357 #define AR5K_SISR3_QCBRURN_S 16 359 #define AR5K_SISR4 0x0094 360 #define AR5K_SISR4_QTRIG 0x000003ff 361 #define AR5K_SISR4_QTRIG_S 0 366 #define AR5K_RAC_PISR 0x00c0 367 #define AR5K_RAC_SISR0 0x00c4 368 #define AR5K_RAC_SISR1 0x00c8 369 #define AR5K_RAC_SISR2 0x00cc 370 #define AR5K_RAC_SISR3 0x00d0 371 #define AR5K_RAC_SISR4 0x00d4 379 #define AR5K_IMR 0x0020 380 #define AR5K_PIMR 0x00a0 381 #define AR5K_IMR_RXOK 0x00000001 382 #define AR5K_IMR_RXDESC 0x00000002 383 #define AR5K_IMR_RXERR 0x00000004 384 #define AR5K_IMR_RXNOFRM 0x00000008 385 #define AR5K_IMR_RXEOL 0x00000010 386 #define AR5K_IMR_RXORN 0x00000020 387 #define AR5K_IMR_TXOK 0x00000040 388 #define AR5K_IMR_TXDESC 0x00000080 389 #define AR5K_IMR_TXERR 0x00000100 390 #define AR5K_IMR_TXNOFRM 0x00000200 391 #define AR5K_IMR_TXEOL 0x00000400 392 #define AR5K_IMR_TXURN 0x00000800 393 #define AR5K_IMR_MIB 0x00001000 394 #define AR5K_IMR_SWI 0x00002000 395 #define AR5K_IMR_RXPHY 0x00004000 396 #define AR5K_IMR_RXKCM 0x00008000 397 #define AR5K_IMR_SWBA 0x00010000 398 #define AR5K_IMR_BRSSI 0x00020000 399 #define AR5K_IMR_BMISS 0x00040000 400 #define AR5K_IMR_HIUERR 0x00080000 401 #define AR5K_IMR_BNR 0x00100000 402 #define AR5K_IMR_MCABT 0x00100000 403 #define AR5K_IMR_RXCHIRP 0x00200000 404 #define AR5K_IMR_SSERR 0x00200000 405 #define AR5K_IMR_DPERR 0x00400000 406 #define AR5K_IMR_RXDOPPLER 0x00400000 407 #define AR5K_IMR_TIM 0x00800000 408 #define AR5K_IMR_BCNMISC 0x00800000 410 #define AR5K_IMR_GPIO 0x01000000 411 #define AR5K_IMR_QCBRORN 0x02000000 412 #define AR5K_IMR_QCBRURN 0x04000000 413 #define AR5K_IMR_QTRIG 0x08000000 418 #define AR5K_SIMR0 0x00a4 419 #define AR5K_SIMR0_QCU_TXOK 0x000003ff 420 #define AR5K_SIMR0_QCU_TXOK_S 0 421 #define AR5K_SIMR0_QCU_TXDESC 0x03ff0000 422 #define AR5K_SIMR0_QCU_TXDESC_S 16 424 #define AR5K_SIMR1 0x00a8 425 #define AR5K_SIMR1_QCU_TXERR 0x000003ff 426 #define AR5K_SIMR1_QCU_TXERR_S 0 427 #define AR5K_SIMR1_QCU_TXEOL 0x03ff0000 428 #define AR5K_SIMR1_QCU_TXEOL_S 16 430 #define AR5K_SIMR2 0x00ac 431 #define AR5K_SIMR2_QCU_TXURN 0x000003ff 432 #define AR5K_SIMR2_QCU_TXURN_S 0 433 #define AR5K_SIMR2_MCABT 0x00100000 434 #define AR5K_SIMR2_SSERR 0x00200000 435 #define AR5K_SIMR2_DPERR 0x00400000 436 #define AR5K_SIMR2_TIM 0x01000000 437 #define AR5K_SIMR2_CAB_END 0x02000000 438 #define AR5K_SIMR2_DTIM_SYNC 0x04000000 439 #define AR5K_SIMR2_BCN_TIMEOUT 0x08000000 440 #define AR5K_SIMR2_CAB_TIMEOUT 0x10000000 441 #define AR5K_SIMR2_DTIM 0x20000000 442 #define AR5K_SIMR2_TSFOOR 0x80000000 444 #define AR5K_SIMR3 0x00b0 445 #define AR5K_SIMR3_QCBRORN 0x000003ff 446 #define AR5K_SIMR3_QCBRORN_S 0 447 #define AR5K_SIMR3_QCBRURN 0x03ff0000 448 #define AR5K_SIMR3_QCBRURN_S 16 450 #define AR5K_SIMR4 0x00b4 451 #define AR5K_SIMR4_QTRIG 0x000003ff 452 #define AR5K_SIMR4_QTRIG_S 0 462 #define AR5K_DCM_ADDR 0x0400 463 #define AR5K_DCM_DATA 0x0404 468 #define AR5K_WOW_PCFG 0x0410 469 #define AR5K_WOW_PCFG_PAT_MATCH_EN 0x00000001 470 #define AR5K_WOW_PCFG_LONG_FRAME_POL 0x00000002 471 #define AR5K_WOW_PCFG_WOBMISS 0x00000004 472 #define AR5K_WOW_PCFG_PAT_0_EN 0x00000100 473 #define AR5K_WOW_PCFG_PAT_1_EN 0x00000200 474 #define AR5K_WOW_PCFG_PAT_2_EN 0x00000400 475 #define AR5K_WOW_PCFG_PAT_3_EN 0x00000800 476 #define AR5K_WOW_PCFG_PAT_4_EN 0x00001000 477 #define AR5K_WOW_PCFG_PAT_5_EN 0x00002000 482 #define AR5K_WOW_PAT_IDX 0x0414 487 #define AR5K_WOW_PAT_DATA 0x0418 488 #define AR5K_WOW_PAT_DATA_0_3_V 0x00000001 489 #define AR5K_WOW_PAT_DATA_1_4_V 0x00000100 490 #define AR5K_WOW_PAT_DATA_2_5_V 0x00010000 491 #define AR5K_WOW_PAT_DATA_0_3_M 0x01000000 492 #define AR5K_WOW_PAT_DATA_1_4_M 0x04000000 493 #define AR5K_WOW_PAT_DATA_2_5_M 0x10000000 498 #define AR5K_DCCFG 0x0420 499 #define AR5K_DCCFG_GLOBAL_EN 0x00000001 500 #define AR5K_DCCFG_BYPASS_EN 0x00000002 501 #define AR5K_DCCFG_BCAST_EN 0x00000004 502 #define AR5K_DCCFG_MCAST_EN 0x00000008 507 #define AR5K_CCFG 0x0600 508 #define AR5K_CCFG_WINDOW_SIZE 0x00000007 509 #define AR5K_CCFG_CPC_EN 0x00000008 511 #define AR5K_CCFG_CCU 0x0604 512 #define AR5K_CCFG_CCU_CUP_EN 0x00000001 513 #define AR5K_CCFG_CCU_CREDIT 0x00000002 514 #define AR5K_CCFG_CCU_CD_THRES 0x00000080 515 #define AR5K_CCFG_CCU_CUP_LCNT 0x00010000 516 #define AR5K_CCFG_CCU_INIT 0x00100200 521 #define AR5K_CPC0 0x0610 522 #define AR5K_CPC1 0x0614 523 #define AR5K_CPC2 0x0618 524 #define AR5K_CPC3 0x061c 525 #define AR5K_CPCOVF 0x0620 546 #define AR5K_QUEUE_REG(_r, _q) (((_q) << 2) + _r) 547 #define AR5K_QCU_GLOBAL_READ(_r, _q) (AR5K_REG_READ(_r) & (1 << _q)) 548 #define AR5K_QCU_GLOBAL_WRITE(_r, _q) AR5K_REG_WRITE(_r, (1 << _q)) 553 #define AR5K_QCU_TXDP_BASE 0x0800 554 #define AR5K_QUEUE_TXDP(_q) AR5K_QUEUE_REG(AR5K_QCU_TXDP_BASE, _q) 559 #define AR5K_QCU_TXE 0x0840 560 #define AR5K_ENABLE_QUEUE(_q) AR5K_QCU_GLOBAL_WRITE(AR5K_QCU_TXE, _q) 561 #define AR5K_QUEUE_ENABLED(_q) AR5K_QCU_GLOBAL_READ(AR5K_QCU_TXE, _q) 566 #define AR5K_QCU_TXD 0x0880 567 #define AR5K_DISABLE_QUEUE(_q) AR5K_QCU_GLOBAL_WRITE(AR5K_QCU_TXD, _q) 568 #define AR5K_QUEUE_DISABLED(_q) AR5K_QCU_GLOBAL_READ(AR5K_QCU_TXD, _q) 573 #define AR5K_QCU_CBRCFG_BASE 0x08c0 574 #define AR5K_QCU_CBRCFG_INTVAL 0x00ffffff 575 #define AR5K_QCU_CBRCFG_INTVAL_S 0 576 #define AR5K_QCU_CBRCFG_ORN_THRES 0xff000000 577 #define AR5K_QCU_CBRCFG_ORN_THRES_S 24 578 #define AR5K_QUEUE_CBRCFG(_q) AR5K_QUEUE_REG(AR5K_QCU_CBRCFG_BASE, _q) 583 #define AR5K_QCU_RDYTIMECFG_BASE 0x0900 584 #define AR5K_QCU_RDYTIMECFG_INTVAL 0x00ffffff 585 #define AR5K_QCU_RDYTIMECFG_INTVAL_S 0 586 #define AR5K_QCU_RDYTIMECFG_ENABLE 0x01000000 587 #define AR5K_QUEUE_RDYTIMECFG(_q) AR5K_QUEUE_REG(AR5K_QCU_RDYTIMECFG_BASE, _q) 592 #define AR5K_QCU_ONESHOTARM_SET 0x0940 593 #define AR5K_QCU_ONESHOTARM_SET_M 0x0000ffff 598 #define AR5K_QCU_ONESHOTARM_CLEAR 0x0980 599 #define AR5K_QCU_ONESHOTARM_CLEAR_M 0x0000ffff 604 #define AR5K_QCU_MISC_BASE 0x09c0 605 #define AR5K_QCU_MISC_FRSHED_M 0x0000000f 606 #define AR5K_QCU_MISC_FRSHED_ASAP 0 607 #define AR5K_QCU_MISC_FRSHED_CBR 1 608 #define AR5K_QCU_MISC_FRSHED_DBA_GT 2 609 #define AR5K_QCU_MISC_FRSHED_TIM_GT 3 610 #define AR5K_QCU_MISC_FRSHED_BCN_SENT_GT 4 611 #define AR5K_QCU_MISC_ONESHOT_ENABLE 0x00000010 612 #define AR5K_QCU_MISC_CBREXP_DIS 0x00000020 613 #define AR5K_QCU_MISC_CBREXP_BCN_DIS 0x00000040 614 #define AR5K_QCU_MISC_BCN_ENABLE 0x00000080 615 #define AR5K_QCU_MISC_CBR_THRES_ENABLE 0x00000100 616 #define AR5K_QCU_MISC_RDY_VEOL_POLICY 0x00000200 617 #define AR5K_QCU_MISC_CBR_RESET_CNT 0x00000400 618 #define AR5K_QCU_MISC_DCU_EARLY 0x00000800 619 #define AR5K_QCU_MISC_DCU_CMP_EN 0x00001000 620 #define AR5K_QUEUE_MISC(_q) AR5K_QUEUE_REG(AR5K_QCU_MISC_BASE, _q) 626 #define AR5K_QCU_STS_BASE 0x0a00 627 #define AR5K_QCU_STS_FRMPENDCNT 0x00000003 628 #define AR5K_QCU_STS_CBREXPCNT 0x0000ff00 629 #define AR5K_QUEUE_STATUS(_q) AR5K_QUEUE_REG(AR5K_QCU_STS_BASE, _q) 634 #define AR5K_QCU_RDYTIMESHDN 0x0a40 635 #define AR5K_QCU_RDYTIMESHDN_M 0x000003ff 640 #define AR5K_QCU_CBB_SELECT 0x0b00 641 #define AR5K_QCU_CBB_ADDR 0x0b04 642 #define AR5K_QCU_CBB_ADDR_S 9 648 #define AR5K_QCU_CBCFG 0x0b08 671 #define AR5K_DCU_QCUMASK_BASE 0x1000 672 #define AR5K_DCU_QCUMASK_M 0x000003ff 673 #define AR5K_QUEUE_QCUMASK(_q) AR5K_QUEUE_REG(AR5K_DCU_QCUMASK_BASE, _q) 678 #define AR5K_DCU_LCL_IFS_BASE 0x1040 679 #define AR5K_DCU_LCL_IFS_CW_MIN 0x000003ff 680 #define AR5K_DCU_LCL_IFS_CW_MIN_S 0 681 #define AR5K_DCU_LCL_IFS_CW_MAX 0x000ffc00 682 #define AR5K_DCU_LCL_IFS_CW_MAX_S 10 683 #define AR5K_DCU_LCL_IFS_AIFS 0x0ff00000 684 #define AR5K_DCU_LCL_IFS_AIFS_S 20 685 #define AR5K_DCU_LCL_IFS_AIFS_MAX 0xfc 686 #define AR5K_QUEUE_DFS_LOCAL_IFS(_q) AR5K_QUEUE_REG(AR5K_DCU_LCL_IFS_BASE, _q) 691 #define AR5K_DCU_RETRY_LMT_BASE 0x1080 692 #define AR5K_DCU_RETRY_LMT_SH_RETRY 0x0000000f 693 #define AR5K_DCU_RETRY_LMT_SH_RETRY_S 0 694 #define AR5K_DCU_RETRY_LMT_LG_RETRY 0x000000f0 695 #define AR5K_DCU_RETRY_LMT_LG_RETRY_S 4 696 #define AR5K_DCU_RETRY_LMT_SSH_RETRY 0x00003f00 697 #define AR5K_DCU_RETRY_LMT_SSH_RETRY_S 8 698 #define AR5K_DCU_RETRY_LMT_SLG_RETRY 0x000fc000 699 #define AR5K_DCU_RETRY_LMT_SLG_RETRY_S 14 700 #define AR5K_QUEUE_DFS_RETRY_LIMIT(_q) AR5K_QUEUE_REG(AR5K_DCU_RETRY_LMT_BASE, _q) 705 #define AR5K_DCU_CHAN_TIME_BASE 0x10c0 706 #define AR5K_DCU_CHAN_TIME_DUR 0x000fffff 707 #define AR5K_DCU_CHAN_TIME_DUR_S 0 708 #define AR5K_DCU_CHAN_TIME_ENABLE 0x00100000 709 #define AR5K_QUEUE_DFS_CHANNEL_TIME(_q) AR5K_QUEUE_REG(AR5K_DCU_CHAN_TIME_BASE, _q) 723 #define AR5K_DCU_MISC_BASE 0x1100 724 #define AR5K_DCU_MISC_BACKOFF 0x0000003f 725 #define AR5K_DCU_MISC_ETS_RTS_POL 0x00000040 728 #define AR5K_DCU_MISC_ETS_CW_POL 0x00000080 730 #define AR5K_DCU_MISC_FRAG_WAIT 0x00000100 731 #define AR5K_DCU_MISC_BACKOFF_FRAG 0x00000200 732 #define AR5K_DCU_MISC_HCFPOLL_ENABLE 0x00000800 733 #define AR5K_DCU_MISC_BACKOFF_PERSIST 0x00001000 734 #define AR5K_DCU_MISC_FRMPRFTCH_ENABLE 0x00002000 735 #define AR5K_DCU_MISC_VIRTCOL 0x0000c000 736 #define AR5K_DCU_MISC_VIRTCOL_NORMAL 0 737 #define AR5K_DCU_MISC_VIRTCOL_IGNORE 1 738 #define AR5K_DCU_MISC_BCN_ENABLE 0x00010000 739 #define AR5K_DCU_MISC_ARBLOCK_CTL 0x00060000 740 #define AR5K_DCU_MISC_ARBLOCK_CTL_S 17 741 #define AR5K_DCU_MISC_ARBLOCK_CTL_NONE 0 742 #define AR5K_DCU_MISC_ARBLOCK_CTL_INTFRM 1 743 #define AR5K_DCU_MISC_ARBLOCK_CTL_GLOBAL 2 744 #define AR5K_DCU_MISC_ARBLOCK_IGNORE 0x00080000 745 #define AR5K_DCU_MISC_SEQ_NUM_INCR_DIS 0x00100000 746 #define AR5K_DCU_MISC_POST_FR_BKOFF_DIS 0x00200000 747 #define AR5K_DCU_MISC_VIRT_COLL_POLICY 0x00400000 748 #define AR5K_DCU_MISC_BLOWN_IFS_POLICY 0x00800000 749 #define AR5K_DCU_MISC_SEQNUM_CTL 0x01000000 750 #define AR5K_QUEUE_DFS_MISC(_q) AR5K_QUEUE_REG(AR5K_DCU_MISC_BASE, _q) 755 #define AR5K_DCU_SEQNUM_BASE 0x1140 756 #define AR5K_DCU_SEQNUM_M 0x00000fff 757 #define AR5K_QUEUE_DCU_SEQNUM(_q) AR5K_QUEUE_REG(AR5K_DCU_SEQNUM_BASE, _q) 762 #define AR5K_DCU_GBL_IFS_SIFS 0x1030 763 #define AR5K_DCU_GBL_IFS_SIFS_M 0x0000ffff 768 #define AR5K_DCU_GBL_IFS_SLOT 0x1070 769 #define AR5K_DCU_GBL_IFS_SLOT_M 0x0000ffff 774 #define AR5K_DCU_GBL_IFS_EIFS 0x10b0 775 #define AR5K_DCU_GBL_IFS_EIFS_M 0x0000ffff 787 #define AR5K_DCU_GBL_IFS_MISC 0x10f0 788 #define AR5K_DCU_GBL_IFS_MISC_LFSR_SLICE 0x00000007 789 #define AR5K_DCU_GBL_IFS_MISC_TURBO_MODE 0x00000008 790 #define AR5K_DCU_GBL_IFS_MISC_SIFS_DUR_USEC 0x000003f0 791 #define AR5K_DCU_GBL_IFS_MISC_USEC_DUR 0x000ffc00 792 #define AR5K_DCU_GBL_IFS_MISC_USEC_DUR_S 10 793 #define AR5K_DCU_GBL_IFS_MISC_DCU_ARB_DELAY 0x00300000 794 #define AR5K_DCU_GBL_IFS_MISC_SIFS_CNT_RST 0x00400000 795 #define AR5K_DCU_GBL_IFS_MISC_AIFS_CNT_RST 0x00800000 796 #define AR5K_DCU_GBL_IFS_MISC_RND_LFSR_SL_DIS 0x01000000 801 #define AR5K_DCU_FP 0x1230 802 #define AR5K_DCU_FP_NOBURST_DCU_EN 0x00000001 803 #define AR5K_DCU_FP_NOBURST_EN 0x00000010 804 #define AR5K_DCU_FP_BURST_DCU_EN 0x00000020 809 #define AR5K_DCU_TXP 0x1270 810 #define AR5K_DCU_TXP_M 0x000003ff 811 #define AR5K_DCU_TXP_STATUS 0x00010000 818 #define AR5K_DCU_TX_FILTER_0_BASE 0x1038 819 #define AR5K_DCU_TX_FILTER_0(_n) (AR5K_DCU_TX_FILTER_0_BASE + (_n * 64)) 824 #define AR5K_DCU_TX_FILTER_1_BASE 0x103c 825 #define AR5K_DCU_TX_FILTER_1(_n) (AR5K_DCU_TX_FILTER_1_BASE + (_n * 64)) 830 #define AR5K_DCU_TX_FILTER_CLR 0x143c 835 #define AR5K_DCU_TX_FILTER_SET 0x147c 840 #define AR5K_RESET_CTL 0x4000 841 #define AR5K_RESET_CTL_PCU 0x00000001 842 #define AR5K_RESET_CTL_DMA 0x00000002 843 #define AR5K_RESET_CTL_BASEBAND 0x00000002 844 #define AR5K_RESET_CTL_MAC 0x00000004 845 #define AR5K_RESET_CTL_PHY 0x00000008 846 #define AR5K_RESET_CTL_PCI 0x00000010 851 #define AR5K_SLEEP_CTL 0x4004 852 #define AR5K_SLEEP_CTL_SLDUR 0x0000ffff 853 #define AR5K_SLEEP_CTL_SLDUR_S 0 854 #define AR5K_SLEEP_CTL_SLE 0x00030000 855 #define AR5K_SLEEP_CTL_SLE_S 16 856 #define AR5K_SLEEP_CTL_SLE_WAKE 0x00000000 857 #define AR5K_SLEEP_CTL_SLE_SLP 0x00010000 858 #define AR5K_SLEEP_CTL_SLE_ALLOW 0x00020000 859 #define AR5K_SLEEP_CTL_SLE_UNITS 0x00000008 860 #define AR5K_SLEEP_CTL_DUR_TIM_POL 0x00040000 861 #define AR5K_SLEEP_CTL_DUR_WRITE_POL 0x00080000 862 #define AR5K_SLEEP_CTL_SLE_POL 0x00100000 867 #define AR5K_INTPEND 0x4008 868 #define AR5K_INTPEND_M 0x00000001 873 #define AR5K_SFR 0x400c 874 #define AR5K_SFR_EN 0x00000001 880 #define AR5K_PCICFG 0x4010 881 #define AR5K_PCICFG_EEAE 0x00000001 882 #define AR5K_PCICFG_SLEEP_CLOCK_EN 0x00000002 883 #define AR5K_PCICFG_CLKRUNEN 0x00000004 884 #define AR5K_PCICFG_EESIZE 0x00000018 885 #define AR5K_PCICFG_EESIZE_S 3 886 #define AR5K_PCICFG_EESIZE_4K 0 887 #define AR5K_PCICFG_EESIZE_8K 1 888 #define AR5K_PCICFG_EESIZE_16K 2 889 #define AR5K_PCICFG_EESIZE_FAIL 3 890 #define AR5K_PCICFG_LED 0x00000060 891 #define AR5K_PCICFG_LED_NONE 0x00000000 892 #define AR5K_PCICFG_LED_PEND 0x00000020 893 #define AR5K_PCICFG_LED_ASSOC 0x00000040 894 #define AR5K_PCICFG_BUS_SEL 0x00000380 895 #define AR5K_PCICFG_CBEFIX_DIS 0x00000400 896 #define AR5K_PCICFG_SL_INTEN 0x00000800 897 #define AR5K_PCICFG_LED_BCTL 0x00001000 898 #define AR5K_PCICFG_RETRY_FIX 0x00001000 899 #define AR5K_PCICFG_SL_INPEN 0x00002000 900 #define AR5K_PCICFG_SPWR_DN 0x00010000 901 #define AR5K_PCICFG_LEDMODE 0x000e0000 902 #define AR5K_PCICFG_LEDMODE_PROP 0x00000000 903 #define AR5K_PCICFG_LEDMODE_PROM 0x00020000 904 #define AR5K_PCICFG_LEDMODE_PWR 0x00040000 905 #define AR5K_PCICFG_LEDMODE_RAND 0x00060000 906 #define AR5K_PCICFG_LEDBLINK 0x00700000 907 #define AR5K_PCICFG_LEDBLINK_S 20 908 #define AR5K_PCICFG_LEDSLOW 0x00800000 909 #define AR5K_PCICFG_LEDSTATE \ 910 (AR5K_PCICFG_LED | AR5K_PCICFG_LEDMODE | \ 911 AR5K_PCICFG_LEDBLINK | AR5K_PCICFG_LEDSLOW) 912 #define AR5K_PCICFG_SLEEP_CLOCK_RATE 0x03000000 913 #define AR5K_PCICFG_SLEEP_CLOCK_RATE_S 24 931 #define AR5K_NUM_GPIO 6 933 #define AR5K_GPIOCR 0x4014 934 #define AR5K_GPIOCR_INT_ENA 0x00008000 935 #define AR5K_GPIOCR_INT_SELL 0x00000000 936 #define AR5K_GPIOCR_INT_SELH 0x00010000 937 #define AR5K_GPIOCR_IN(n) (0 << ((n) * 2)) 938 #define AR5K_GPIOCR_OUT0(n) (1 << ((n) * 2)) 939 #define AR5K_GPIOCR_OUT1(n) (2 << ((n) * 2)) 940 #define AR5K_GPIOCR_OUT(n) (3 << ((n) * 2)) 941 #define AR5K_GPIOCR_INT_SEL(n) ((n) << 12) 946 #define AR5K_GPIODO 0x4018 951 #define AR5K_GPIODI 0x401c 952 #define AR5K_GPIODI_M 0x0000002f 957 #define AR5K_SREV 0x4020 958 #define AR5K_SREV_REV 0x0000000f 959 #define AR5K_SREV_REV_S 0 960 #define AR5K_SREV_VER 0x000000ff 961 #define AR5K_SREV_VER_S 4 966 #define AR5K_TXEPOST 0x4028 971 #define AR5K_QCU_SLEEP_MASK 0x402c 981 #define AR5K_5414_CBCFG 0x4068 982 #define AR5K_5414_CBCFG_BUF_DIS 0x10 988 #define AR5K_PCIE_PM_CTL 0x4068 990 #define AR5K_PCIE_PM_CTL_L1_WHEN_D2 0x00000001 992 #define AR5K_PCIE_PM_CTL_L0_L0S_CLEAR 0x00000002 993 #define AR5K_PCIE_PM_CTL_L0_L0S_EN 0x00000004 994 #define AR5K_PCIE_PM_CTL_LDRESET_EN 0x00000008 997 #define AR5K_PCIE_PM_CTL_PME_EN 0x00000010 998 #define AR5K_PCIE_PM_CTL_AUX_PWR_DET 0x00000020 999 #define AR5K_PCIE_PM_CTL_PME_CLEAR 0x00000040 1000 #define AR5K_PCIE_PM_CTL_PSM_D0 0x00000080 1001 #define AR5K_PCIE_PM_CTL_PSM_D1 0x00000100 1002 #define AR5K_PCIE_PM_CTL_PSM_D2 0x00000200 1003 #define AR5K_PCIE_PM_CTL_PSM_D3 0x00000400 1008 #define AR5K_PCIE_WAEN 0x407c 1014 #define AR5K_PCIE_SERDES 0x4080 1015 #define AR5K_PCIE_SERDES_RESET 0x4084 1054 #define AR5K_EEPROM_BASE 0x6000 1059 #define AR5K_EEPROM_DATA_5211 0x6004 1060 #define AR5K_EEPROM_DATA_5210 0x6800 1061 #define AR5K_EEPROM_DATA (ah->ah_version == AR5K_AR5210 ? \ 1062 AR5K_EEPROM_DATA_5210 : AR5K_EEPROM_DATA_5211) 1067 #define AR5K_EEPROM_CMD 0x6008 1068 #define AR5K_EEPROM_CMD_READ 0x00000001 1069 #define AR5K_EEPROM_CMD_WRITE 0x00000002 1070 #define AR5K_EEPROM_CMD_RESET 0x00000004 1075 #define AR5K_EEPROM_STAT_5210 0x6c00 1076 #define AR5K_EEPROM_STAT_5211 0x600c 1077 #define AR5K_EEPROM_STATUS (ah->ah_version == AR5K_AR5210 ? \ 1078 AR5K_EEPROM_STAT_5210 : AR5K_EEPROM_STAT_5211) 1079 #define AR5K_EEPROM_STAT_RDERR 0x00000001 1080 #define AR5K_EEPROM_STAT_RDDONE 0x00000002 1081 #define AR5K_EEPROM_STAT_WRERR 0x00000004 1082 #define AR5K_EEPROM_STAT_WRDONE 0x00000008 1087 #define AR5K_EEPROM_CFG 0x6010 1088 #define AR5K_EEPROM_CFG_SIZE 0x00000003 1089 #define AR5K_EEPROM_CFG_SIZE_AUTO 0 1090 #define AR5K_EEPROM_CFG_SIZE_4KBIT 1 1091 #define AR5K_EEPROM_CFG_SIZE_8KBIT 2 1092 #define AR5K_EEPROM_CFG_SIZE_16KBIT 3 1093 #define AR5K_EEPROM_CFG_WR_WAIT_DIS 0x00000004 1094 #define AR5K_EEPROM_CFG_CLK_RATE 0x00000018 1095 #define AR5K_EEPROM_CFG_CLK_RATE_S 3 1096 #define AR5K_EEPROM_CFG_CLK_RATE_156KHZ 0 1097 #define AR5K_EEPROM_CFG_CLK_RATE_312KHZ 1 1098 #define AR5K_EEPROM_CFG_CLK_RATE_625KHZ 2 1099 #define AR5K_EEPROM_CFG_PROT_KEY 0x00ffff00 1100 #define AR5K_EEPROM_CFG_PROT_KEY_S 8 1101 #define AR5K_EEPROM_CFG_LIND_EN 0x01000000 1116 #define AR5K_PCU_MIN 0x8000 1117 #define AR5K_PCU_MAX 0x8fff 1122 #define AR5K_STA_ID0 0x8000 1123 #define AR5K_STA_ID0_ARRD_L32 0xffffffff 1128 #define AR5K_STA_ID1 0x8004 1129 #define AR5K_STA_ID1_ADDR_U16 0x0000ffff 1130 #define AR5K_STA_ID1_AP 0x00010000 1131 #define AR5K_STA_ID1_ADHOC 0x00020000 1132 #define AR5K_STA_ID1_PWR_SV 0x00040000 1133 #define AR5K_STA_ID1_NO_KEYSRCH 0x00080000 1134 #define AR5K_STA_ID1_NO_PSPOLL 0x00100000 1135 #define AR5K_STA_ID1_PCF_5211 0x00100000 1136 #define AR5K_STA_ID1_PCF_5210 0x00200000 1137 #define AR5K_STA_ID1_PCF (ah->ah_version == AR5K_AR5210 ? \ 1138 AR5K_STA_ID1_PCF_5210 : AR5K_STA_ID1_PCF_5211) 1139 #define AR5K_STA_ID1_DEFAULT_ANTENNA 0x00200000 1140 #define AR5K_STA_ID1_DESC_ANTENNA 0x00400000 1141 #define AR5K_STA_ID1_RTS_DEF_ANTENNA 0x00800000 1142 #define AR5K_STA_ID1_ACKCTS_6MB 0x01000000 1143 #define AR5K_STA_ID1_BASE_RATE_11B 0x02000000 1144 #define AR5K_STA_ID1_SELFGEN_DEF_ANT 0x04000000 1145 #define AR5K_STA_ID1_CRYPT_MIC_EN 0x08000000 1146 #define AR5K_STA_ID1_KEYSRCH_MODE 0x10000000 1147 #define AR5K_STA_ID1_PRESERVE_SEQ_NUM 0x20000000 1148 #define AR5K_STA_ID1_CBCIV_ENDIAN 0x40000000 1149 #define AR5K_STA_ID1_KEYSRCH_MCAST 0x80000000 1154 #define AR5K_BSS_ID0 0x8008 1161 #define AR5K_BSS_ID1 0x800c 1162 #define AR5K_BSS_ID1_AID 0xffff0000 1163 #define AR5K_BSS_ID1_AID_S 16 1168 #define AR5K_SLOT_TIME 0x8010 1173 #define AR5K_TIME_OUT 0x8014 1174 #define AR5K_TIME_OUT_ACK 0x00001fff 1175 #define AR5K_TIME_OUT_ACK_S 0 1176 #define AR5K_TIME_OUT_CTS 0x1fff0000 1177 #define AR5K_TIME_OUT_CTS_S 16 1182 #define AR5K_RSSI_THR 0x8018 1183 #define AR5K_RSSI_THR_M 0x000000ff 1184 #define AR5K_RSSI_THR_BMISS_5210 0x00000700 1185 #define AR5K_RSSI_THR_BMISS_5210_S 8 1186 #define AR5K_RSSI_THR_BMISS_5211 0x0000ff00 1187 #define AR5K_RSSI_THR_BMISS_5211_S 8 1188 #define AR5K_RSSI_THR_BMISS (ah->ah_version == AR5K_AR5210 ? \ 1189 AR5K_RSSI_THR_BMISS_5210 : AR5K_RSSI_THR_BMISS_5211) 1190 #define AR5K_RSSI_THR_BMISS_S 8 1205 #define AR5K_NODCU_RETRY_LMT 0x801c 1206 #define AR5K_NODCU_RETRY_LMT_SH_RETRY 0x0000000f 1207 #define AR5K_NODCU_RETRY_LMT_SH_RETRY_S 0 1208 #define AR5K_NODCU_RETRY_LMT_LG_RETRY 0x000000f0 1209 #define AR5K_NODCU_RETRY_LMT_LG_RETRY_S 4 1210 #define AR5K_NODCU_RETRY_LMT_SSH_RETRY 0x00003f00 1211 #define AR5K_NODCU_RETRY_LMT_SSH_RETRY_S 8 1212 #define AR5K_NODCU_RETRY_LMT_SLG_RETRY 0x000fc000 1213 #define AR5K_NODCU_RETRY_LMT_SLG_RETRY_S 14 1214 #define AR5K_NODCU_RETRY_LMT_CW_MIN 0x3ff00000 1215 #define AR5K_NODCU_RETRY_LMT_CW_MIN_S 20 1220 #define AR5K_USEC_5210 0x8020 1221 #define AR5K_USEC_5211 0x801c 1222 #define AR5K_USEC (ah->ah_version == AR5K_AR5210 ? \ 1223 AR5K_USEC_5210 : AR5K_USEC_5211) 1224 #define AR5K_USEC_1 0x0000007f 1225 #define AR5K_USEC_1_S 0 1226 #define AR5K_USEC_32 0x00003f80 1227 #define AR5K_USEC_32_S 7 1228 #define AR5K_USEC_TX_LATENCY_5211 0x007fc000 1229 #define AR5K_USEC_TX_LATENCY_5211_S 14 1230 #define AR5K_USEC_RX_LATENCY_5211 0x1f800000 1231 #define AR5K_USEC_RX_LATENCY_5211_S 23 1232 #define AR5K_USEC_TX_LATENCY_5210 0x000fc000 1233 #define AR5K_USEC_TX_LATENCY_5210_S 14 1234 #define AR5K_USEC_RX_LATENCY_5210 0x03f00000 1235 #define AR5K_USEC_RX_LATENCY_5210_S 20 1240 #define AR5K_BEACON_5210 0x8024 1241 #define AR5K_BEACON_5211 0x8020 1242 #define AR5K_BEACON (ah->ah_version == AR5K_AR5210 ? \ 1243 AR5K_BEACON_5210 : AR5K_BEACON_5211) 1244 #define AR5K_BEACON_PERIOD 0x0000ffff 1245 #define AR5K_BEACON_PERIOD_S 0 1246 #define AR5K_BEACON_TIM 0x007f0000 1247 #define AR5K_BEACON_TIM_S 16 1248 #define AR5K_BEACON_ENABLE 0x00800000 1249 #define AR5K_BEACON_RESET_TSF 0x01000000 1254 #define AR5K_CFP_PERIOD_5210 0x8028 1255 #define AR5K_CFP_PERIOD_5211 0x8024 1256 #define AR5K_CFP_PERIOD (ah->ah_version == AR5K_AR5210 ? \ 1257 AR5K_CFP_PERIOD_5210 : AR5K_CFP_PERIOD_5211) 1262 #define AR5K_TIMER0_5210 0x802c 1263 #define AR5K_TIMER0_5211 0x8028 1264 #define AR5K_TIMER0 (ah->ah_version == AR5K_AR5210 ? \ 1265 AR5K_TIMER0_5210 : AR5K_TIMER0_5211) 1270 #define AR5K_TIMER1_5210 0x8030 1271 #define AR5K_TIMER1_5211 0x802c 1272 #define AR5K_TIMER1 (ah->ah_version == AR5K_AR5210 ? \ 1273 AR5K_TIMER1_5210 : AR5K_TIMER1_5211) 1278 #define AR5K_TIMER2_5210 0x8034 1279 #define AR5K_TIMER2_5211 0x8030 1280 #define AR5K_TIMER2 (ah->ah_version == AR5K_AR5210 ? \ 1281 AR5K_TIMER2_5210 : AR5K_TIMER2_5211) 1286 #define AR5K_TIMER3_5210 0x8038 1287 #define AR5K_TIMER3_5211 0x8034 1288 #define AR5K_TIMER3 (ah->ah_version == AR5K_AR5210 ? \ 1289 AR5K_TIMER3_5210 : AR5K_TIMER3_5211) 1295 #define AR5K_IFS0 0x8040 1296 #define AR5K_IFS0_SIFS 0x000007ff 1297 #define AR5K_IFS0_SIFS_S 0 1298 #define AR5K_IFS0_DIFS 0x007ff800 1299 #define AR5K_IFS0_DIFS_S 11 1304 #define AR5K_IFS1 0x8044 1305 #define AR5K_IFS1_PIFS 0x00000fff 1306 #define AR5K_IFS1_PIFS_S 0 1307 #define AR5K_IFS1_EIFS 0x03fff000 1308 #define AR5K_IFS1_EIFS_S 12 1309 #define AR5K_IFS1_CS_EN 0x04000000 1315 #define AR5K_CFP_DUR_5210 0x8048 1316 #define AR5K_CFP_DUR_5211 0x8038 1317 #define AR5K_CFP_DUR (ah->ah_version == AR5K_AR5210 ? \ 1318 AR5K_CFP_DUR_5210 : AR5K_CFP_DUR_5211) 1323 #define AR5K_RX_FILTER_5210 0x804c 1324 #define AR5K_RX_FILTER_5211 0x803c 1325 #define AR5K_RX_FILTER (ah->ah_version == AR5K_AR5210 ? \ 1326 AR5K_RX_FILTER_5210 : AR5K_RX_FILTER_5211) 1327 #define AR5K_RX_FILTER_UCAST 0x00000001 1328 #define AR5K_RX_FILTER_MCAST 0x00000002 1329 #define AR5K_RX_FILTER_BCAST 0x00000004 1330 #define AR5K_RX_FILTER_CONTROL 0x00000008 1331 #define AR5K_RX_FILTER_BEACON 0x00000010 1332 #define AR5K_RX_FILTER_PROM 0x00000020 1333 #define AR5K_RX_FILTER_XRPOLL 0x00000040 1334 #define AR5K_RX_FILTER_PROBEREQ 0x00000080 1335 #define AR5K_RX_FILTER_PHYERR_5212 0x00000100 1336 #define AR5K_RX_FILTER_RADARERR_5212 0x00000200 1337 #define AR5K_RX_FILTER_PHYERR_5211 0x00000040 1338 #define AR5K_RX_FILTER_RADARERR_5211 0x00000080 1339 #define AR5K_RX_FILTER_PHYERR \ 1340 ((ah->ah_version == AR5K_AR5211 ? \ 1341 AR5K_RX_FILTER_PHYERR_5211 : AR5K_RX_FILTER_PHYERR_5212)) 1342 #define AR5K_RX_FILTER_RADARERR \ 1343 ((ah->ah_version == AR5K_AR5211 ? \ 1344 AR5K_RX_FILTER_RADARERR_5211 : AR5K_RX_FILTER_RADARERR_5212)) 1349 #define AR5K_MCAST_FILTER0_5210 0x8050 1350 #define AR5K_MCAST_FILTER0_5211 0x8040 1351 #define AR5K_MCAST_FILTER0 (ah->ah_version == AR5K_AR5210 ? \ 1352 AR5K_MCAST_FILTER0_5210 : AR5K_MCAST_FILTER0_5211) 1357 #define AR5K_MCAST_FILTER1_5210 0x8054 1358 #define AR5K_MCAST_FILTER1_5211 0x8044 1359 #define AR5K_MCAST_FILTER1 (ah->ah_version == AR5K_AR5210 ? \ 1360 AR5K_MCAST_FILTER1_5210 : AR5K_MCAST_FILTER1_5211) 1366 #define AR5K_TX_MASK0 0x8058 1371 #define AR5K_TX_MASK1 0x805c 1376 #define AR5K_CLR_TMASK 0x8060 1381 #define AR5K_TRIG_LVL 0x8064 1390 #define AR5K_DIAG_SW_5210 0x8068 1391 #define AR5K_DIAG_SW_5211 0x8048 1392 #define AR5K_DIAG_SW (ah->ah_version == AR5K_AR5210 ? \ 1393 AR5K_DIAG_SW_5210 : AR5K_DIAG_SW_5211) 1394 #define AR5K_DIAG_SW_DIS_WEP_ACK 0x00000001 1395 #define AR5K_DIAG_SW_DIS_ACK 0x00000002 1396 #define AR5K_DIAG_SW_DIS_CTS 0x00000004 1397 #define AR5K_DIAG_SW_DIS_ENC 0x00000008 1398 #define AR5K_DIAG_SW_DIS_DEC 0x00000010 1399 #define AR5K_DIAG_SW_DIS_TX 0x00000020 1400 #define AR5K_DIAG_SW_DIS_RX_5210 0x00000040 1401 #define AR5K_DIAG_SW_DIS_RX_5211 0x00000020 1402 #define AR5K_DIAG_SW_DIS_RX (ah->ah_version == AR5K_AR5210 ? \ 1403 AR5K_DIAG_SW_DIS_RX_5210 : AR5K_DIAG_SW_DIS_RX_5211) 1404 #define AR5K_DIAG_SW_LOOP_BACK_5210 0x00000080 1405 #define AR5K_DIAG_SW_LOOP_BACK_5211 0x00000040 1406 #define AR5K_DIAG_SW_LOOP_BACK (ah->ah_version == AR5K_AR5210 ? \ 1407 AR5K_DIAG_SW_LOOP_BACK_5210 : AR5K_DIAG_SW_LOOP_BACK_5211) 1408 #define AR5K_DIAG_SW_CORR_FCS_5210 0x00000100 1409 #define AR5K_DIAG_SW_CORR_FCS_5211 0x00000080 1410 #define AR5K_DIAG_SW_CORR_FCS (ah->ah_version == AR5K_AR5210 ? \ 1411 AR5K_DIAG_SW_CORR_FCS_5210 : AR5K_DIAG_SW_CORR_FCS_5211) 1412 #define AR5K_DIAG_SW_CHAN_INFO_5210 0x00000200 1413 #define AR5K_DIAG_SW_CHAN_INFO_5211 0x00000100 1414 #define AR5K_DIAG_SW_CHAN_INFO (ah->ah_version == AR5K_AR5210 ? \ 1415 AR5K_DIAG_SW_CHAN_INFO_5210 : AR5K_DIAG_SW_CHAN_INFO_5211) 1416 #define AR5K_DIAG_SW_EN_SCRAM_SEED_5210 0x00000400 1417 #define AR5K_DIAG_SW_EN_SCRAM_SEED_5211 0x00000200 1418 #define AR5K_DIAG_SW_EN_SCRAM_SEED (ah->ah_version == AR5K_AR5210 ? \ 1419 AR5K_DIAG_SW_EN_SCRAM_SEED_5210 : AR5K_DIAG_SW_EN_SCRAM_SEED_5211) 1420 #define AR5K_DIAG_SW_ECO_ENABLE 0x00000400 1421 #define AR5K_DIAG_SW_SCVRAM_SEED 0x0003f800 1422 #define AR5K_DIAG_SW_SCRAM_SEED_M 0x0001fc00 1423 #define AR5K_DIAG_SW_SCRAM_SEED_S 10 1424 #define AR5K_DIAG_SW_DIS_SEQ_INC 0x00040000 1425 #define AR5K_DIAG_SW_FRAME_NV0_5210 0x00080000 1426 #define AR5K_DIAG_SW_FRAME_NV0_5211 0x00020000 1427 #define AR5K_DIAG_SW_FRAME_NV0 (ah->ah_version == AR5K_AR5210 ? \ 1428 AR5K_DIAG_SW_FRAME_NV0_5210 : AR5K_DIAG_SW_FRAME_NV0_5211) 1429 #define AR5K_DIAG_SW_OBSPT_M 0x000c0000 1430 #define AR5K_DIAG_SW_OBSPT_S 18 1431 #define AR5K_DIAG_SW_RX_CLEAR_HIGH 0x0010000 1432 #define AR5K_DIAG_SW_IGNORE_CARR_SENSE 0x0020000 1433 #define AR5K_DIAG_SW_CHANEL_IDLE_HIGH 0x0040000 1434 #define AR5K_DIAG_SW_PHEAR_ME 0x0080000 1439 #define AR5K_TSF_L32_5210 0x806c 1440 #define AR5K_TSF_L32_5211 0x804c 1441 #define AR5K_TSF_L32 (ah->ah_version == AR5K_AR5210 ? \ 1442 AR5K_TSF_L32_5210 : AR5K_TSF_L32_5211) 1447 #define AR5K_TSF_U32_5210 0x8070 1448 #define AR5K_TSF_U32_5211 0x8050 1449 #define AR5K_TSF_U32 (ah->ah_version == AR5K_AR5210 ? \ 1450 AR5K_TSF_U32_5210 : AR5K_TSF_U32_5211) 1455 #define AR5K_LAST_TSTP 0x8080 1460 #define AR5K_ADDAC_TEST 0x8054 1461 #define AR5K_ADDAC_TEST_TXCONT 0x00000001 1462 #define AR5K_ADDAC_TEST_TST_MODE 0x00000002 1463 #define AR5K_ADDAC_TEST_LOOP_EN 0x00000004 1464 #define AR5K_ADDAC_TEST_LOOP_LEN 0x00000008 1465 #define AR5K_ADDAC_TEST_USE_U8 0x00004000 1466 #define AR5K_ADDAC_TEST_MSB 0x00008000 1467 #define AR5K_ADDAC_TEST_TRIG_SEL 0x00010000 1468 #define AR5K_ADDAC_TEST_TRIG_PTY 0x00020000 1469 #define AR5K_ADDAC_TEST_RXCONT 0x00040000 1470 #define AR5K_ADDAC_TEST_CAPTURE 0x00080000 1471 #define AR5K_ADDAC_TEST_TST_ARM 0x00100000 1476 #define AR5K_DEFAULT_ANTENNA 0x8058 1482 #define AR5K_FRAME_CTL_QOSM 0x805c 1487 #define AR5K_SEQ_MASK 0x8060 1492 #define AR5K_RETRY_CNT 0x8084 1493 #define AR5K_RETRY_CNT_SSH 0x0000003f 1494 #define AR5K_RETRY_CNT_SLG 0x00000fc0 1499 #define AR5K_BACKOFF 0x8088 1500 #define AR5K_BACKOFF_CW 0x000003ff 1501 #define AR5K_BACKOFF_CNT 0x03ff0000 1508 #define AR5K_NAV_5210 0x808c 1509 #define AR5K_NAV_5211 0x8084 1510 #define AR5K_NAV (ah->ah_version == AR5K_AR5210 ? \ 1511 AR5K_NAV_5210 : AR5K_NAV_5211) 1516 #define AR5K_RTS_OK_5210 0x8090 1517 #define AR5K_RTS_OK_5211 0x8088 1518 #define AR5K_RTS_OK (ah->ah_version == AR5K_AR5210 ? \ 1519 AR5K_RTS_OK_5210 : AR5K_RTS_OK_5211) 1524 #define AR5K_RTS_FAIL_5210 0x8094 1525 #define AR5K_RTS_FAIL_5211 0x808c 1526 #define AR5K_RTS_FAIL (ah->ah_version == AR5K_AR5210 ? \ 1527 AR5K_RTS_FAIL_5210 : AR5K_RTS_FAIL_5211) 1532 #define AR5K_ACK_FAIL_5210 0x8098 1533 #define AR5K_ACK_FAIL_5211 0x8090 1534 #define AR5K_ACK_FAIL (ah->ah_version == AR5K_AR5210 ? \ 1535 AR5K_ACK_FAIL_5210 : AR5K_ACK_FAIL_5211) 1540 #define AR5K_FCS_FAIL_5210 0x809c 1541 #define AR5K_FCS_FAIL_5211 0x8094 1542 #define AR5K_FCS_FAIL (ah->ah_version == AR5K_AR5210 ? \ 1543 AR5K_FCS_FAIL_5210 : AR5K_FCS_FAIL_5211) 1548 #define AR5K_BEACON_CNT_5210 0x80a0 1549 #define AR5K_BEACON_CNT_5211 0x8098 1550 #define AR5K_BEACON_CNT (ah->ah_version == AR5K_AR5210 ? \ 1551 AR5K_BEACON_CNT_5210 : AR5K_BEACON_CNT_5211) 1559 #define AR5K_TPC 0x80e8 1560 #define AR5K_TPC_ACK 0x0000003f 1561 #define AR5K_TPC_ACK_S 0 1562 #define AR5K_TPC_CTS 0x00003f00 1563 #define AR5K_TPC_CTS_S 8 1564 #define AR5K_TPC_CHIRP 0x003f0000 1565 #define AR5K_TPC_CHIRP_S 16 1566 #define AR5K_TPC_DOPPLER 0x0f000000 1567 #define AR5K_TPC_DOPPLER_S 24 1572 #define AR5K_XRMODE 0x80c0 1573 #define AR5K_XRMODE_POLL_TYPE_M 0x0000003f 1574 #define AR5K_XRMODE_POLL_TYPE_S 0 1575 #define AR5K_XRMODE_POLL_SUBTYPE_M 0x0000003c 1576 #define AR5K_XRMODE_POLL_SUBTYPE_S 2 1577 #define AR5K_XRMODE_POLL_WAIT_ALL 0x00000080 1578 #define AR5K_XRMODE_SIFS_DELAY 0x000fff00 1579 #define AR5K_XRMODE_FRAME_HOLD_M 0xfff00000 1580 #define AR5K_XRMODE_FRAME_HOLD_S 20 1585 #define AR5K_XRDELAY 0x80c4 1586 #define AR5K_XRDELAY_SLOT_DELAY_M 0x0000ffff 1587 #define AR5K_XRDELAY_SLOT_DELAY_S 0 1588 #define AR5K_XRDELAY_CHIRP_DELAY_M 0xffff0000 1589 #define AR5K_XRDELAY_CHIRP_DELAY_S 16 1594 #define AR5K_XRTIMEOUT 0x80c8 1595 #define AR5K_XRTIMEOUT_CHIRP_M 0x0000ffff 1596 #define AR5K_XRTIMEOUT_CHIRP_S 0 1597 #define AR5K_XRTIMEOUT_POLL_M 0xffff0000 1598 #define AR5K_XRTIMEOUT_POLL_S 16 1603 #define AR5K_XRCHIRP 0x80cc 1604 #define AR5K_XRCHIRP_SEND 0x00000001 1605 #define AR5K_XRCHIRP_GAP 0xffff0000 1610 #define AR5K_XRSTOMP 0x80d0 1611 #define AR5K_XRSTOMP_TX 0x00000001 1612 #define AR5K_XRSTOMP_RX 0x00000002 1613 #define AR5K_XRSTOMP_TX_RSSI 0x00000004 1614 #define AR5K_XRSTOMP_TX_BSSID 0x00000008 1615 #define AR5K_XRSTOMP_DATA 0x00000010 1616 #define AR5K_XRSTOMP_RSSI_THRES 0x0000ff00 1621 #define AR5K_SLEEP0 0x80d4 1622 #define AR5K_SLEEP0_NEXT_DTIM 0x0007ffff 1623 #define AR5K_SLEEP0_NEXT_DTIM_S 0 1624 #define AR5K_SLEEP0_ASSUME_DTIM 0x00080000 1625 #define AR5K_SLEEP0_ENH_SLEEP_EN 0x00100000 1626 #define AR5K_SLEEP0_CABTO 0xff000000 1627 #define AR5K_SLEEP0_CABTO_S 24 1632 #define AR5K_SLEEP1 0x80d8 1633 #define AR5K_SLEEP1_NEXT_TIM 0x0007ffff 1634 #define AR5K_SLEEP1_NEXT_TIM_S 0 1635 #define AR5K_SLEEP1_BEACON_TO 0xff000000 1636 #define AR5K_SLEEP1_BEACON_TO_S 24 1641 #define AR5K_SLEEP2 0x80dc 1642 #define AR5K_SLEEP2_TIM_PER 0x0000ffff 1643 #define AR5K_SLEEP2_TIM_PER_S 0 1644 #define AR5K_SLEEP2_DTIM_PER 0xffff0000 1645 #define AR5K_SLEEP2_DTIM_PER_S 16 1650 #define AR5K_BSS_IDM0 0x80e0 1651 #define AR5K_BSS_IDM1 0x80e4 1659 #define AR5K_TXPC 0x80e8 1660 #define AR5K_TXPC_ACK_M 0x0000003f 1661 #define AR5K_TXPC_ACK_S 0 1662 #define AR5K_TXPC_CTS_M 0x00003f00 1663 #define AR5K_TXPC_CTS_S 8 1664 #define AR5K_TXPC_CHIRP_M 0x003f0000 1665 #define AR5K_TXPC_CHIRP_S 16 1666 #define AR5K_TXPC_DOPPLER 0x0f000000 1667 #define AR5K_TXPC_DOPPLER_S 24 1672 #define AR5K_PROFCNT_TX 0x80ec 1673 #define AR5K_PROFCNT_RX 0x80f0 1674 #define AR5K_PROFCNT_RXCLR 0x80f4 1675 #define AR5K_PROFCNT_CYCLE 0x80f8 1680 #define AR5K_QUIET_CTL1 0x80fc 1681 #define AR5K_QUIET_CTL1_NEXT_QT_TSF 0x0000ffff 1682 #define AR5K_QUIET_CTL1_NEXT_QT_TSF_S 0 1683 #define AR5K_QUIET_CTL1_QT_EN 0x00010000 1684 #define AR5K_QUIET_CTL1_ACK_CTS_EN 0x00020000 1686 #define AR5K_QUIET_CTL2 0x8100 1687 #define AR5K_QUIET_CTL2_QT_PER 0x0000ffff 1688 #define AR5K_QUIET_CTL2_QT_PER_S 0 1689 #define AR5K_QUIET_CTL2_QT_DUR 0xffff0000 1690 #define AR5K_QUIET_CTL2_QT_DUR_S 16 1695 #define AR5K_TSF_PARM 0x8104 1696 #define AR5K_TSF_PARM_INC 0x000000ff 1697 #define AR5K_TSF_PARM_INC_S 0 1702 #define AR5K_QOS_NOACK 0x8108 1703 #define AR5K_QOS_NOACK_2BIT_VALUES 0x0000000f 1704 #define AR5K_QOS_NOACK_2BIT_VALUES_S 0 1705 #define AR5K_QOS_NOACK_BIT_OFFSET 0x00000070 1706 #define AR5K_QOS_NOACK_BIT_OFFSET_S 4 1707 #define AR5K_QOS_NOACK_BYTE_OFFSET 0x00000180 1708 #define AR5K_QOS_NOACK_BYTE_OFFSET_S 7 1713 #define AR5K_PHY_ERR_FIL 0x810c 1714 #define AR5K_PHY_ERR_FIL_RADAR 0x00000020 1715 #define AR5K_PHY_ERR_FIL_OFDM 0x00020000 1716 #define AR5K_PHY_ERR_FIL_CCK 0x02000000 1721 #define AR5K_XRLAT_TX 0x8110 1726 #define AR5K_ACKSIFS 0x8114 1727 #define AR5K_ACKSIFS_INC 0x00000000 1732 #define AR5K_MIC_QOS_CTL 0x8118 1733 #define AR5K_MIC_QOS_CTL_OFF(_n) (1 << (_n * 2)) 1734 #define AR5K_MIC_QOS_CTL_MQ_EN 0x00010000 1739 #define AR5K_MIC_QOS_SEL 0x811c 1740 #define AR5K_MIC_QOS_SEL_OFF(_n) (1 << (_n * 4)) 1745 #define AR5K_MISC_MODE 0x8120 1746 #define AR5K_MISC_MODE_FBSSID_MATCH 0x00000001 1747 #define AR5K_MISC_MODE_ACKSIFS_MEM 0x00000002 1748 #define AR5K_MISC_MODE_COMBINED_MIC 0x00000004 1754 #define AR5K_OFDM_FIL_CNT 0x8124 1759 #define AR5K_CCK_FIL_CNT 0x8128 1764 #define AR5K_PHYERR_CNT1 0x812c 1765 #define AR5K_PHYERR_CNT1_MASK 0x8130 1767 #define AR5K_PHYERR_CNT2 0x8134 1768 #define AR5K_PHYERR_CNT2_MASK 0x8138 1773 #define AR5K_TSF_THRES 0x813c 1783 #define AR5K_RATE_ACKSIFS_BASE 0x8680 1784 #define AR5K_RATE_ACKSIFS(_n) (AR5K_RATE_ACKSIFS_BSE + ((_n) << 2)) 1785 #define AR5K_RATE_ACKSIFS_NORMAL 0x00000001 1786 #define AR5K_RATE_ACKSIFS_TURBO 0x00000400 1791 #define AR5K_RATE_DUR_BASE 0x8700 1792 #define AR5K_RATE_DUR(_n) (AR5K_RATE_DUR_BASE + ((_n) << 2)) 1798 #define AR5K_RATE2DB_BASE 0x87c0 1799 #define AR5K_RATE2DB(_n) (AR5K_RATE2DB_BASE + ((_n) << 2)) 1805 #define AR5K_DB2RATE_BASE 0x87e0 1806 #define AR5K_DB2RATE(_n) (AR5K_DB2RATE_BASE + ((_n) << 2)) 1813 #define AR5K_KEYTABLE_0_5210 0x9000 1814 #define AR5K_KEYTABLE_0_5211 0x8800 1815 #define AR5K_KEYTABLE_5210(_n) (AR5K_KEYTABLE_0_5210 + ((_n) << 5)) 1816 #define AR5K_KEYTABLE_5211(_n) (AR5K_KEYTABLE_0_5211 + ((_n) << 5)) 1817 #define AR5K_KEYTABLE(_n) (ah->ah_version == AR5K_AR5210 ? \ 1818 AR5K_KEYTABLE_5210(_n) : AR5K_KEYTABLE_5211(_n)) 1819 #define AR5K_KEYTABLE_OFF(_n, x) (AR5K_KEYTABLE(_n) + (x << 2)) 1820 #define AR5K_KEYTABLE_TYPE(_n) AR5K_KEYTABLE_OFF(_n, 5) 1821 #define AR5K_KEYTABLE_TYPE_40 0x00000000 1822 #define AR5K_KEYTABLE_TYPE_104 0x00000001 1823 #define AR5K_KEYTABLE_TYPE_128 0x00000003 1824 #define AR5K_KEYTABLE_TYPE_TKIP 0x00000004 1825 #define AR5K_KEYTABLE_TYPE_AES 0x00000005 1826 #define AR5K_KEYTABLE_TYPE_CCM 0x00000006 1827 #define AR5K_KEYTABLE_TYPE_NULL 0x00000007 1828 #define AR5K_KEYTABLE_ANTENNA 0x00000008 1829 #define AR5K_KEYTABLE_MAC0(_n) AR5K_KEYTABLE_OFF(_n, 6) 1830 #define AR5K_KEYTABLE_MAC1(_n) AR5K_KEYTABLE_OFF(_n, 7) 1831 #define AR5K_KEYTABLE_VALID 0x00008000 1835 #define AR5K_KEYTABLE_MIC_OFFSET 64 1849 #define AR5K_KEYTABLE_SIZE_5210 64 1850 #define AR5K_KEYTABLE_SIZE_5211 128 1851 #define AR5K_KEYTABLE_SIZE (ah->ah_version == AR5K_AR5210 ? \ 1852 AR5K_KEYTABLE_SIZE_5210 : AR5K_KEYTABLE_SIZE_5211) 1860 #define AR5K_PHY_BASE 0x9800 1861 #define AR5K_PHY(_n) (AR5K_PHY_BASE + ((_n) << 2)) 1866 #define AR5K_PHY_TST2 0x9800 1867 #define AR5K_PHY_TST2_TRIG_SEL 0x00000007 1868 #define AR5K_PHY_TST2_TRIG 0x00000010 1869 #define AR5K_PHY_TST2_CBUS_MODE 0x00000060 1870 #define AR5K_PHY_TST2_CLK32 0x00000400 1871 #define AR5K_PHY_TST2_CHANCOR_DUMP_EN 0x00000800 1872 #define AR5K_PHY_TST2_EVEN_CHANCOR_DUMP 0x00001000 1873 #define AR5K_PHY_TST2_RFSILENT_EN 0x00002000 1874 #define AR5K_PHY_TST2_ALT_RFDATA 0x00004000 1875 #define AR5K_PHY_TST2_MINI_OBS_EN 0x00008000 1876 #define AR5K_PHY_TST2_RX2_IS_RX5_INV 0x00010000 1877 #define AR5K_PHY_TST2_SLOW_CLK160 0x00020000 1878 #define AR5K_PHY_TST2_AGC_OBS_SEL_3 0x00040000 1879 #define AR5K_PHY_TST2_BBB_OBS_SEL 0x00080000 1880 #define AR5K_PHY_TST2_ADC_OBS_SEL 0x00800000 1881 #define AR5K_PHY_TST2_RX_CLR_SEL 0x08000000 1882 #define AR5K_PHY_TST2_FORCE_AGC_CLR 0x10000000 1883 #define AR5K_PHY_SHIFT_2GHZ 0x00004007 1884 #define AR5K_PHY_SHIFT_5GHZ 0x00000007 1896 #define AR5K_PHY_TURBO 0x9804 1897 #define AR5K_PHY_TURBO_MODE 0x00000001 1898 #define AR5K_PHY_TURBO_SHORT 0x00000002 1899 #define AR5K_PHY_TURBO_MIMO 0x00000004 1905 #define AR5K_PHY_AGC 0x9808 1906 #define AR5K_PHY_TST1 0x9808 1907 #define AR5K_PHY_AGC_DISABLE 0x08000000 1908 #define AR5K_PHY_TST1_TXHOLD 0x00003800 1909 #define AR5K_PHY_TST1_TXSRC_SRC 0x00000002 1910 #define AR5K_PHY_TST1_TXSRC_SRC_S 1 1911 #define AR5K_PHY_TST1_TXSRC_ALT 0x00000080 1912 #define AR5K_PHY_TST1_TXSRC_ALT_S 7 1918 #define AR5K_PHY_TIMING_3 0x9814 1919 #define AR5K_PHY_TIMING_3_DSC_MAN 0xfffe0000 1920 #define AR5K_PHY_TIMING_3_DSC_MAN_S 17 1921 #define AR5K_PHY_TIMING_3_DSC_EXP 0x0001e000 1922 #define AR5K_PHY_TIMING_3_DSC_EXP_S 13 1927 #define AR5K_PHY_CHIP_ID 0x9818 1932 #define AR5K_PHY_ACT 0x981c 1933 #define AR5K_PHY_ACT_ENABLE 0x00000001 1934 #define AR5K_PHY_ACT_DISABLE 0x00000002 1939 #define AR5K_PHY_RF_CTL2 0x9824 1940 #define AR5K_PHY_RF_CTL2_TXF2TXD_START 0x0000000f 1941 #define AR5K_PHY_RF_CTL2_TXF2TXD_START_S 0 1943 #define AR5K_PHY_RF_CTL3 0x9828 1944 #define AR5K_PHY_RF_CTL3_TXE2XLNA_ON 0x0000ff00 1945 #define AR5K_PHY_RF_CTL3_TXE2XLNA_ON_S 8 1947 #define AR5K_PHY_ADC_CTL 0x982c 1948 #define AR5K_PHY_ADC_CTL_INBUFGAIN_OFF 0x00000003 1949 #define AR5K_PHY_ADC_CTL_INBUFGAIN_OFF_S 0 1950 #define AR5K_PHY_ADC_CTL_PWD_DAC_OFF 0x00002000 1951 #define AR5K_PHY_ADC_CTL_PWD_BAND_GAP_OFF 0x00004000 1952 #define AR5K_PHY_ADC_CTL_PWD_ADC_OFF 0x00008000 1953 #define AR5K_PHY_ADC_CTL_INBUFGAIN_ON 0x00030000 1954 #define AR5K_PHY_ADC_CTL_INBUFGAIN_ON_S 16 1956 #define AR5K_PHY_RF_CTL4 0x9834 1957 #define AR5K_PHY_RF_CTL4_TXF2XPA_A_ON 0x00000001 1958 #define AR5K_PHY_RF_CTL4_TXF2XPA_B_ON 0x00000100 1959 #define AR5K_PHY_RF_CTL4_TXE2XPA_A_OFF 0x00010000 1960 #define AR5K_PHY_RF_CTL4_TXE2XPA_B_OFF 0x01000000 1966 #define AR5K_PHY_PA_CTL 0x9838 1967 #define AR5K_PHY_PA_CTL_XPA_A_HI 0x00000001 1968 #define AR5K_PHY_PA_CTL_XPA_B_HI 0x00000002 1969 #define AR5K_PHY_PA_CTL_XPA_A_EN 0x00000004 1970 #define AR5K_PHY_PA_CTL_XPA_B_EN 0x00000008 1975 #define AR5K_PHY_SETTLING 0x9844 1976 #define AR5K_PHY_SETTLING_AGC 0x0000007f 1977 #define AR5K_PHY_SETTLING_AGC_S 0 1978 #define AR5K_PHY_SETTLING_SWITCH 0x00003f80 1979 #define AR5K_PHY_SETTLING_SWITCH_S 7 1984 #define AR5K_PHY_GAIN 0x9848 1985 #define AR5K_PHY_GAIN_TXRX_ATTEN 0x0003f000 1986 #define AR5K_PHY_GAIN_TXRX_ATTEN_S 12 1987 #define AR5K_PHY_GAIN_TXRX_RF_MAX 0x007c0000 1988 #define AR5K_PHY_GAIN_TXRX_RF_MAX_S 18 1990 #define AR5K_PHY_GAIN_OFFSET 0x984c 1991 #define AR5K_PHY_GAIN_OFFSET_RXTX_FLAG 0x00020000 1997 #define AR5K_PHY_DESIRED_SIZE 0x9850 1998 #define AR5K_PHY_DESIRED_SIZE_ADC 0x000000ff 1999 #define AR5K_PHY_DESIRED_SIZE_ADC_S 0 2000 #define AR5K_PHY_DESIRED_SIZE_PGA 0x0000ff00 2001 #define AR5K_PHY_DESIRED_SIZE_PGA_S 8 2002 #define AR5K_PHY_DESIRED_SIZE_TOT 0x0ff00000 2003 #define AR5K_PHY_DESIRED_SIZE_TOT_S 20 2009 #define AR5K_PHY_SIG 0x9858 2010 #define AR5K_PHY_SIG_FIRSTEP 0x0003f000 2011 #define AR5K_PHY_SIG_FIRSTEP_S 12 2012 #define AR5K_PHY_SIG_FIRPWR 0x03fc0000 2013 #define AR5K_PHY_SIG_FIRPWR_S 18 2019 #define AR5K_PHY_AGCCOARSE 0x985c 2020 #define AR5K_PHY_AGCCOARSE_LO 0x00007f80 2021 #define AR5K_PHY_AGCCOARSE_LO_S 7 2022 #define AR5K_PHY_AGCCOARSE_HI 0x003f8000 2023 #define AR5K_PHY_AGCCOARSE_HI_S 15 2028 #define AR5K_PHY_AGCCTL 0x9860 2029 #define AR5K_PHY_AGCCTL_CAL 0x00000001 2030 #define AR5K_PHY_AGCCTL_NF 0x00000002 2031 #define AR5K_PHY_AGCCTL_NF_EN 0x00008000 2032 #define AR5K_PHY_AGCCTL_NF_NOUPDATE 0x00020000 2037 #define AR5K_PHY_NF 0x9864 2038 #define AR5K_PHY_NF_M 0x000001ff 2039 #define AR5K_PHY_NF_ACTIVE 0x00000100 2040 #define AR5K_PHY_NF_RVAL(_n) (((_n) >> 19) & AR5K_PHY_NF_M) 2041 #define AR5K_PHY_NF_AVAL(_n) (-((_n) ^ AR5K_PHY_NF_M) + 1) 2042 #define AR5K_PHY_NF_SVAL(_n) (((_n) & AR5K_PHY_NF_M) | (1 << 9)) 2043 #define AR5K_PHY_NF_THRESH62 0x0007f000 2044 #define AR5K_PHY_NF_THRESH62_S 12 2045 #define AR5K_PHY_NF_MINCCA_PWR 0x0ff80000 2046 #define AR5K_PHY_NF_MINCCA_PWR_S 19 2051 #define AR5K_PHY_ADCSAT 0x9868 2052 #define AR5K_PHY_ADCSAT_ICNT 0x0001f800 2053 #define AR5K_PHY_ADCSAT_ICNT_S 11 2054 #define AR5K_PHY_ADCSAT_THR 0x000007e0 2055 #define AR5K_PHY_ADCSAT_THR_S 5 2062 #define AR5K_PHY_WEAK_OFDM_HIGH_THR 0x9868 2063 #define AR5K_PHY_WEAK_OFDM_HIGH_THR_M2_COUNT 0x0000001f 2064 #define AR5K_PHY_WEAK_OFDM_HIGH_THR_M2_COUNT_S 0 2065 #define AR5K_PHY_WEAK_OFDM_HIGH_THR_M1 0x00fe0000 2066 #define AR5K_PHY_WEAK_OFDM_HIGH_THR_M1_S 17 2067 #define AR5K_PHY_WEAK_OFDM_HIGH_THR_M2 0x7f000000 2068 #define AR5K_PHY_WEAK_OFDM_HIGH_THR_M2_S 24 2071 #define AR5K_PHY_WEAK_OFDM_LOW_THR 0x986c 2072 #define AR5K_PHY_WEAK_OFDM_LOW_THR_SELFCOR_EN 0x00000001 2073 #define AR5K_PHY_WEAK_OFDM_LOW_THR_M2_COUNT 0x00003f00 2074 #define AR5K_PHY_WEAK_OFDM_LOW_THR_M2_COUNT_S 8 2075 #define AR5K_PHY_WEAK_OFDM_LOW_THR_M1 0x001fc000 2076 #define AR5K_PHY_WEAK_OFDM_LOW_THR_M1_S 14 2077 #define AR5K_PHY_WEAK_OFDM_LOW_THR_M2 0x0fe00000 2078 #define AR5K_PHY_WEAK_OFDM_LOW_THR_M2_S 21 2084 #define AR5K_PHY_SCR 0x9870 2086 #define AR5K_PHY_SLMT 0x9874 2087 #define AR5K_PHY_SLMT_32MHZ 0x0000007f 2089 #define AR5K_PHY_SCAL 0x9878 2090 #define AR5K_PHY_SCAL_32MHZ 0x0000000e 2091 #define AR5K_PHY_SCAL_32MHZ_2417 0x0000000a 2092 #define AR5K_PHY_SCAL_32MHZ_HB63 0x00000032 2097 #define AR5K_PHY_PLL 0x987c 2098 #define AR5K_PHY_PLL_20MHZ 0x00000013 2100 #define AR5K_PHY_PLL_40MHZ_5211 0x00000018 2101 #define AR5K_PHY_PLL_40MHZ_5212 0x000000aa 2102 #define AR5K_PHY_PLL_40MHZ_5413 0x00000004 2103 #define AR5K_PHY_PLL_40MHZ (ah->ah_version == AR5K_AR5211 ? \ 2104 AR5K_PHY_PLL_40MHZ_5211 : AR5K_PHY_PLL_40MHZ_5212) 2106 #define AR5K_PHY_PLL_44MHZ_5211 0x00000019 2107 #define AR5K_PHY_PLL_44MHZ_5212 0x000000ab 2108 #define AR5K_PHY_PLL_44MHZ (ah->ah_version == AR5K_AR5211 ? \ 2109 AR5K_PHY_PLL_44MHZ_5211 : AR5K_PHY_PLL_44MHZ_5212) 2111 #define AR5K_PHY_PLL_RF5111 0x00000000 2112 #define AR5K_PHY_PLL_RF5112 0x00000040 2113 #define AR5K_PHY_PLL_HALF_RATE 0x00000100 2114 #define AR5K_PHY_PLL_QUARTER_RATE 0x00000200 2125 #define AR5K_RF_BUFFER 0x989c 2126 #define AR5K_RF_BUFFER_CONTROL_0 0x98c0 2127 #define AR5K_RF_BUFFER_CONTROL_1 0x98c4 2128 #define AR5K_RF_BUFFER_CONTROL_2 0x98cc 2130 #define AR5K_RF_BUFFER_CONTROL_3 0x98d0 2134 #define AR5K_RF_BUFFER_CONTROL_4 0x98d4 2139 #define AR5K_RF_BUFFER_CONTROL_5 0x98d8 2144 #define AR5K_RF_BUFFER_CONTROL_6 0x98dc 2149 #define AR5K_PHY_RFSTG 0x98d4 2150 #define AR5K_PHY_RFSTG_DISABLE 0x00000021 2155 #define AR5K_PHY_BIN_MASK_1 0x9900 2156 #define AR5K_PHY_BIN_MASK_2 0x9904 2157 #define AR5K_PHY_BIN_MASK_3 0x9908 2159 #define AR5K_PHY_BIN_MASK_CTL 0x990c 2160 #define AR5K_PHY_BIN_MASK_CTL_MASK_4 0x00003fff 2161 #define AR5K_PHY_BIN_MASK_CTL_MASK_4_S 0 2162 #define AR5K_PHY_BIN_MASK_CTL_RATE 0xff000000 2163 #define AR5K_PHY_BIN_MASK_CTL_RATE_S 24 2168 #define AR5K_PHY_ANT_CTL 0x9910 2169 #define AR5K_PHY_ANT_CTL_TXRX_EN 0x00000001 2170 #define AR5K_PHY_ANT_CTL_SECTORED_ANT 0x00000004 2171 #define AR5K_PHY_ANT_CTL_HITUNE5 0x00000008 2172 #define AR5K_PHY_ANT_CTL_SWTABLE_IDLE 0x000003f0 2173 #define AR5K_PHY_ANT_CTL_SWTABLE_IDLE_S 4 2178 #define AR5K_PHY_RX_DELAY 0x9914 2179 #define AR5K_PHY_RX_DELAY_M 0x00003fff 2184 #define AR5K_PHY_MAX_RX_LEN 0x991c 2190 #define AR5K_PHY_IQ 0x9920 2191 #define AR5K_PHY_IQ_CORR_Q_Q_COFF 0x0000001f 2192 #define AR5K_PHY_IQ_CORR_Q_I_COFF 0x000007e0 2193 #define AR5K_PHY_IQ_CORR_Q_I_COFF_S 5 2194 #define AR5K_PHY_IQ_CORR_ENABLE 0x00000800 2195 #define AR5K_PHY_IQ_CAL_NUM_LOG_MAX 0x0000f000 2196 #define AR5K_PHY_IQ_CAL_NUM_LOG_MAX_S 12 2197 #define AR5K_PHY_IQ_RUN 0x00010000 2198 #define AR5K_PHY_IQ_USE_PT_DF 0x00020000 2199 #define AR5K_PHY_IQ_EARLY_TRIG_THR 0x00200000 2200 #define AR5K_PHY_IQ_PILOT_MASK_EN 0x10000000 2201 #define AR5K_PHY_IQ_CHAN_MASK_EN 0x20000000 2202 #define AR5K_PHY_IQ_SPUR_FILT_EN 0x40000000 2203 #define AR5K_PHY_IQ_SPUR_RSSI_EN 0x80000000 2210 #define AR5K_PHY_OFDM_SELFCORR 0x9924 2211 #define AR5K_PHY_OFDM_SELFCORR_CYPWR_THR1_EN 0x00000001 2212 #define AR5K_PHY_OFDM_SELFCORR_CYPWR_THR1 0x000000fe 2213 #define AR5K_PHY_OFDM_SELFCORR_CYPWR_THR1_S 1 2214 #define AR5K_PHY_OFDM_SELFCORR_CYPWR_THR3 0x00000100 2215 #define AR5K_PHY_OFDM_SELFCORR_RSSI_1ATHR_EN 0x00008000 2216 #define AR5K_PHY_OFDM_SELFCORR_RSSI_1ATHR 0x00010000 2217 #define AR5K_PHY_OFDM_SELFCORR_LSCTHR_HIRSSI 0x00800000 2222 #define AR5K_PHY_WARM_RESET 0x9928 2227 #define AR5K_PHY_CTL 0x992c 2228 #define AR5K_PHY_CTL_RX_DRAIN_RATE 0x00000001 2229 #define AR5K_PHY_CTL_LATE_TX_SIG_SYM 0x00000002 2230 #define AR5K_PHY_CTL_GEN_SCRAMBLER 0x00000004 2231 #define AR5K_PHY_CTL_TX_ANT_SEL 0x00000008 2232 #define AR5K_PHY_CTL_TX_ANT_STATIC 0x00000010 2233 #define AR5K_PHY_CTL_RX_ANT_SEL 0x00000020 2234 #define AR5K_PHY_CTL_RX_ANT_STATIC 0x00000040 2235 #define AR5K_PHY_CTL_LOW_FREQ_SLE_EN 0x00000080 2240 #define AR5K_PHY_PAPD_PROBE 0x9930 2241 #define AR5K_PHY_PAPD_PROBE_SH_HI_PAR 0x00000001 2242 #define AR5K_PHY_PAPD_PROBE_PCDAC_BIAS 0x00000002 2243 #define AR5K_PHY_PAPD_PROBE_COMP_GAIN 0x00000040 2244 #define AR5K_PHY_PAPD_PROBE_TXPOWER 0x00007e00 2245 #define AR5K_PHY_PAPD_PROBE_TXPOWER_S 9 2246 #define AR5K_PHY_PAPD_PROBE_TX_NEXT 0x00008000 2247 #define AR5K_PHY_PAPD_PROBE_PREDIST_EN 0x00010000 2248 #define AR5K_PHY_PAPD_PROBE_TYPE 0x01800000 2249 #define AR5K_PHY_PAPD_PROBE_TYPE_S 23 2250 #define AR5K_PHY_PAPD_PROBE_TYPE_OFDM 0 2251 #define AR5K_PHY_PAPD_PROBE_TYPE_XR 1 2252 #define AR5K_PHY_PAPD_PROBE_TYPE_CCK 2 2253 #define AR5K_PHY_PAPD_PROBE_GAINF 0xfe000000 2254 #define AR5K_PHY_PAPD_PROBE_GAINF_S 25 2255 #define AR5K_PHY_PAPD_PROBE_INI_5111 0x00004883 2256 #define AR5K_PHY_PAPD_PROBE_INI_5112 0x00004882 2261 #define AR5K_PHY_TXPOWER_RATE1 0x9934 2262 #define AR5K_PHY_TXPOWER_RATE2 0x9938 2263 #define AR5K_PHY_TXPOWER_RATE_MAX 0x993c 2264 #define AR5K_PHY_TXPOWER_RATE_MAX_TPC_ENABLE 0x00000040 2265 #define AR5K_PHY_TXPOWER_RATE3 0xa234 2266 #define AR5K_PHY_TXPOWER_RATE4 0xa238 2271 #define AR5K_PHY_FRAME_CTL_5210 0x9804 2272 #define AR5K_PHY_FRAME_CTL_5211 0x9944 2273 #define AR5K_PHY_FRAME_CTL (ah->ah_version == AR5K_AR5210 ? \ 2274 AR5K_PHY_FRAME_CTL_5210 : AR5K_PHY_FRAME_CTL_5211) 2276 #define AR5K_PHY_FRAME_CTL_TX_CLIP 0x00000038 2277 #define AR5K_PHY_FRAME_CTL_TX_CLIP_S 3 2278 #define AR5K_PHY_FRAME_CTL_PREP_CHINFO 0x00010000 2279 #define AR5K_PHY_FRAME_CTL_EMU 0x80000000 2280 #define AR5K_PHY_FRAME_CTL_EMU_S 31 2282 #define AR5K_PHY_FRAME_CTL_TIMING_ERR 0x01000000 2283 #define AR5K_PHY_FRAME_CTL_PARITY_ERR 0x02000000 2284 #define AR5K_PHY_FRAME_CTL_ILLRATE_ERR 0x04000000 2285 #define AR5K_PHY_FRAME_CTL_ILLLEN_ERR 0x08000000 2286 #define AR5K_PHY_FRAME_CTL_SERVICE_ERR 0x20000000 2287 #define AR5K_PHY_FRAME_CTL_TXURN_ERR 0x40000000 2288 #define AR5K_PHY_FRAME_CTL_INI AR5K_PHY_FRAME_CTL_SERVICE_ERR | \ 2289 AR5K_PHY_FRAME_CTL_TXURN_ERR | \ 2290 AR5K_PHY_FRAME_CTL_ILLLEN_ERR | \ 2291 AR5K_PHY_FRAME_CTL_ILLRATE_ERR | \ 2292 AR5K_PHY_FRAME_CTL_PARITY_ERR | \ 2293 AR5K_PHY_FRAME_CTL_TIMING_ERR 2298 #define AR5K_PHY_TX_PWR_ADJ 0x994c 2299 #define AR5K_PHY_TX_PWR_ADJ_CCK_GAIN_DELTA 0x00000fc0 2300 #define AR5K_PHY_TX_PWR_ADJ_CCK_GAIN_DELTA_S 6 2301 #define AR5K_PHY_TX_PWR_ADJ_CCK_PCDAC_INDEX 0x00fc0000 2302 #define AR5K_PHY_TX_PWR_ADJ_CCK_PCDAC_INDEX_S 18 2307 #define AR5K_PHY_RADAR 0x9954 2308 #define AR5K_PHY_RADAR_ENABLE 0x00000001 2309 #define AR5K_PHY_RADAR_DISABLE 0x00000000 2310 #define AR5K_PHY_RADAR_INBANDTHR 0x0000003e 2313 #define AR5K_PHY_RADAR_INBANDTHR_S 1 2315 #define AR5K_PHY_RADAR_PRSSI_THR 0x00000fc0 2318 #define AR5K_PHY_RADAR_PRSSI_THR_S 6 2320 #define AR5K_PHY_RADAR_PHEIGHT_THR 0x0003f000 2323 #define AR5K_PHY_RADAR_PHEIGHT_THR_S 12 2325 #define AR5K_PHY_RADAR_RSSI_THR 0x00fc0000 2328 #define AR5K_PHY_RADAR_RSSI_THR_S 18 2330 #define AR5K_PHY_RADAR_FIRPWR_THR 0x7f000000 2334 #define AR5K_PHY_RADAR_FIRPWR_THRS 24 2339 #define AR5K_PHY_ANT_SWITCH_TABLE_0 0x9960 2340 #define AR5K_PHY_ANT_SWITCH_TABLE_1 0x9964 2345 #define AR5K_PHY_NFTHRES 0x9968 2350 #define AR5K_PHY_SIGMA_DELTA 0x996C 2351 #define AR5K_PHY_SIGMA_DELTA_ADC_SEL 0x00000003 2352 #define AR5K_PHY_SIGMA_DELTA_ADC_SEL_S 0 2353 #define AR5K_PHY_SIGMA_DELTA_FILT2 0x000000f8 2354 #define AR5K_PHY_SIGMA_DELTA_FILT2_S 3 2355 #define AR5K_PHY_SIGMA_DELTA_FILT1 0x00001f00 2356 #define AR5K_PHY_SIGMA_DELTA_FILT1_S 8 2357 #define AR5K_PHY_SIGMA_DELTA_ADC_CLIP 0x01ffe000 2358 #define AR5K_PHY_SIGMA_DELTA_ADC_CLIP_S 13 2363 #define AR5K_PHY_RESTART 0x9970 2364 #define AR5K_PHY_RESTART_DIV_GC 0x001c0000 2365 #define AR5K_PHY_RESTART_DIV_GC_S 18 2370 #define AR5K_PHY_RFBUS_REQ 0x997C 2371 #define AR5K_PHY_RFBUS_REQ_REQUEST 0x00000001 2376 #define AR5K_PHY_TIMING_7 0x9980 2377 #define AR5K_PHY_TIMING_8 0x9984 2378 #define AR5K_PHY_TIMING_8_PILOT_MASK_2 0x000fffff 2379 #define AR5K_PHY_TIMING_8_PILOT_MASK_2_S 0 2381 #define AR5K_PHY_BIN_MASK2_1 0x9988 2382 #define AR5K_PHY_BIN_MASK2_2 0x998c 2383 #define AR5K_PHY_BIN_MASK2_3 0x9990 2385 #define AR5K_PHY_BIN_MASK2_4 0x9994 2386 #define AR5K_PHY_BIN_MASK2_4_MASK_4 0x00003fff 2387 #define AR5K_PHY_BIN_MASK2_4_MASK_4_S 0 2389 #define AR5K_PHY_TIMING_9 0x9998 2390 #define AR5K_PHY_TIMING_10 0x999c 2391 #define AR5K_PHY_TIMING_10_PILOT_MASK_2 0x000fffff 2392 #define AR5K_PHY_TIMING_10_PILOT_MASK_2_S 0 2397 #define AR5K_PHY_TIMING_11 0x99a0 2398 #define AR5K_PHY_TIMING_11_SPUR_DELTA_PHASE 0x000fffff 2399 #define AR5K_PHY_TIMING_11_SPUR_DELTA_PHASE_S 0 2400 #define AR5K_PHY_TIMING_11_SPUR_FREQ_SD 0x3ff00000 2401 #define AR5K_PHY_TIMING_11_SPUR_FREQ_SD_S 20 2402 #define AR5K_PHY_TIMING_11_USE_SPUR_IN_AGC 0x40000000 2403 #define AR5K_PHY_TIMING_11_USE_SPUR_IN_SELFCOR 0x80000000 2408 #define AR5K_BB_GAIN_BASE 0x9b00 2409 #define AR5K_BB_GAIN(_n) (AR5K_BB_GAIN_BASE + ((_n) << 2)) 2410 #define AR5K_RF_GAIN_BASE 0x9a00 2411 #define AR5K_RF_GAIN(_n) (AR5K_RF_GAIN_BASE + ((_n) << 2)) 2416 #define AR5K_PHY_IQRES_CAL_PWR_I 0x9c10 2417 #define AR5K_PHY_IQRES_CAL_PWR_Q 0x9c14 2418 #define AR5K_PHY_IQRES_CAL_CORR 0x9c18 2423 #define AR5K_PHY_CURRENT_RSSI 0x9c1c 2428 #define AR5K_PHY_RFBUS_GRANT 0x9c20 2429 #define AR5K_PHY_RFBUS_GRANT_OK 0x00000001 2434 #define AR5K_PHY_ADC_TEST 0x9c24 2435 #define AR5K_PHY_ADC_TEST_I 0x00000001 2436 #define AR5K_PHY_ADC_TEST_Q 0x00000200 2441 #define AR5K_PHY_DAC_TEST 0x9c28 2442 #define AR5K_PHY_DAC_TEST_I 0x00000001 2443 #define AR5K_PHY_DAC_TEST_Q 0x00000200 2448 #define AR5K_PHY_PTAT 0x9c2c 2453 #define AR5K_PHY_BAD_TX_RATE 0x9c30 2458 #define AR5K_PHY_SPUR_PWR 0x9c34 2459 #define AR5K_PHY_SPUR_PWR_I 0x00000001 2460 #define AR5K_PHY_SPUR_PWR_Q 0x00000100 2461 #define AR5K_PHY_SPUR_PWR_FILT 0x00010000 2466 #define AR5K_PHY_CHAN_STATUS 0x9c38 2467 #define AR5K_PHY_CHAN_STATUS_BT_ACT 0x00000001 2468 #define AR5K_PHY_CHAN_STATUS_RX_CLR_RAW 0x00000002 2469 #define AR5K_PHY_CHAN_STATUS_RX_CLR_MAC 0x00000004 2470 #define AR5K_PHY_CHAN_STATUS_RX_CLR_PAP 0x00000008 2475 #define AR5K_PHY_HEAVY_CLIP_ENABLE 0x99e0 2480 #define AR5K_PHY_SCLOCK 0x99f0 2481 #define AR5K_PHY_SCLOCK_32MHZ 0x0000000c 2482 #define AR5K_PHY_SDELAY 0x99f4 2483 #define AR5K_PHY_SDELAY_32MHZ 0x000000ff 2484 #define AR5K_PHY_SPENDING 0x99f8 2491 #define AR5K_PHY_PAPD_I_BASE 0xa000 2492 #define AR5K_PHY_PAPD_I(_n) (AR5K_PHY_PAPD_I_BASE + ((_n) << 2)) 2497 #define AR5K_PHY_PCDAC_TXPOWER_BASE 0xa180 2498 #define AR5K_PHY_PCDAC_TXPOWER(_n) (AR5K_PHY_PCDAC_TXPOWER_BASE + ((_n) << 2)) 2503 #define AR5K_PHY_MODE 0x0a200 2504 #define AR5K_PHY_MODE_MOD 0x00000001 2505 #define AR5K_PHY_MODE_MOD_OFDM 0 2506 #define AR5K_PHY_MODE_MOD_CCK 1 2507 #define AR5K_PHY_MODE_FREQ 0x00000002 2508 #define AR5K_PHY_MODE_FREQ_5GHZ 0 2509 #define AR5K_PHY_MODE_FREQ_2GHZ 2 2510 #define AR5K_PHY_MODE_MOD_DYN 0x00000004 2511 #define AR5K_PHY_MODE_RAD 0x00000008 2512 #define AR5K_PHY_MODE_RAD_RF5111 0 2513 #define AR5K_PHY_MODE_RAD_RF5112 8 2514 #define AR5K_PHY_MODE_XR 0x00000010 2515 #define AR5K_PHY_MODE_HALF_RATE 0x00000020 2516 #define AR5K_PHY_MODE_QUARTER_RATE 0x00000040 2521 #define AR5K_PHY_CCKTXCTL 0xa204 2522 #define AR5K_PHY_CCKTXCTL_WORLD 0x00000000 2523 #define AR5K_PHY_CCKTXCTL_JAPAN 0x00000010 2524 #define AR5K_PHY_CCKTXCTL_SCRAMBLER_DIS 0x00000001 2525 #define AR5K_PHY_CCKTXCTK_DAC_SCALE 0x00000004 2530 #define AR5K_PHY_CCK_CROSSCORR 0xa208 2531 #define AR5K_PHY_CCK_CROSSCORR_WEAK_SIG_THR 0x0000000f 2532 #define AR5K_PHY_CCK_CROSSCORR_WEAK_SIG_THR_S 0 2535 #define AR5K_PHY_FAST_ANT_DIV 0xa208 2536 #define AR5K_PHY_FAST_ANT_DIV_EN 0x00002000 2541 #define AR5K_PHY_GAIN_2GHZ 0xa20c 2542 #define AR5K_PHY_GAIN_2GHZ_MARGIN_TXRX 0x00fc0000 2543 #define AR5K_PHY_GAIN_2GHZ_MARGIN_TXRX_S 18 2544 #define AR5K_PHY_GAIN_2GHZ_INI_5111 0x6480416c 2546 #define AR5K_PHY_CCK_RX_CTL_4 0xa21c 2547 #define AR5K_PHY_CCK_RX_CTL_4_FREQ_EST_SHORT 0x01f80000 2548 #define AR5K_PHY_CCK_RX_CTL_4_FREQ_EST_SHORT_S 19 2550 #define AR5K_PHY_DAG_CCK_CTL 0xa228 2551 #define AR5K_PHY_DAG_CCK_CTL_EN_RSSI_THR 0x00000200 2552 #define AR5K_PHY_DAG_CCK_CTL_RSSI_THR 0x0001fc00 2553 #define AR5K_PHY_DAG_CCK_CTL_RSSI_THR_S 10 2555 #define AR5K_PHY_FAST_ADC 0xa24c 2557 #define AR5K_PHY_BLUETOOTH 0xa254 2563 #define AR5K_PHY_TPC_RG1 0xa258 2564 #define AR5K_PHY_TPC_RG1_NUM_PD_GAIN 0x0000c000 2565 #define AR5K_PHY_TPC_RG1_NUM_PD_GAIN_S 14 2566 #define AR5K_PHY_TPC_RG1_PDGAIN_1 0x00030000 2567 #define AR5K_PHY_TPC_RG1_PDGAIN_1_S 16 2568 #define AR5K_PHY_TPC_RG1_PDGAIN_2 0x000c0000 2569 #define AR5K_PHY_TPC_RG1_PDGAIN_2_S 18 2570 #define AR5K_PHY_TPC_RG1_PDGAIN_3 0x00300000 2571 #define AR5K_PHY_TPC_RG1_PDGAIN_3_S 20 2573 #define AR5K_PHY_TPC_RG5 0xa26C 2574 #define AR5K_PHY_TPC_RG5_PD_GAIN_OVERLAP 0x0000000F 2575 #define AR5K_PHY_TPC_RG5_PD_GAIN_OVERLAP_S 0 2576 #define AR5K_PHY_TPC_RG5_PD_GAIN_BOUNDARY_1 0x000003F0 2577 #define AR5K_PHY_TPC_RG5_PD_GAIN_BOUNDARY_1_S 4 2578 #define AR5K_PHY_TPC_RG5_PD_GAIN_BOUNDARY_2 0x0000FC00 2579 #define AR5K_PHY_TPC_RG5_PD_GAIN_BOUNDARY_2_S 10 2580 #define AR5K_PHY_TPC_RG5_PD_GAIN_BOUNDARY_3 0x003F0000 2581 #define AR5K_PHY_TPC_RG5_PD_GAIN_BOUNDARY_3_S 16 2582 #define AR5K_PHY_TPC_RG5_PD_GAIN_BOUNDARY_4 0x0FC00000 2583 #define AR5K_PHY_TPC_RG5_PD_GAIN_BOUNDARY_4_S 22 2588 #define AR5K_PHY_PDADC_TXPOWER_BASE 0xa280 2589 #define AR5K_PHY_PDADC_TXPOWER(_n) (AR5K_PHY_PDADC_TXPOWER_BASE + ((_n) << 2))