root/drivers/staging/rtl8192e/rtl8192e/r8192E_hw.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 /*
   3  * Copyright(c) 2008 - 2010 Realtek Corporation. All rights reserved.
   4  *
   5  * Contact Information: wlanfae <wlanfae@realtek.com>
   6  */
   7 #ifndef R8180_HW
   8 #define R8180_HW
   9 
  10 enum baseband_config {
  11         BaseBand_Config_PHY_REG = 0,
  12         BaseBand_Config_AGC_TAB = 1,
  13 };
  14 
  15 #define RTL8187_REQT_READ       0xc0
  16 #define RTL8187_REQT_WRITE      0x40
  17 #define RTL8187_REQ_GET_REGS    0x05
  18 #define RTL8187_REQ_SET_REGS    0x05
  19 
  20 #define MAX_TX_URB 5
  21 #define MAX_RX_URB 16
  22 #define RX_URB_SIZE 9100
  23 
  24 #define BB_ANTATTEN_CHAN14      0x0c
  25 #define BB_ANTENNA_B 0x40
  26 
  27 #define BB_HOST_BANG (1<<30)
  28 #define BB_HOST_BANG_EN (1<<2)
  29 #define BB_HOST_BANG_CLK (1<<1)
  30 #define BB_HOST_BANG_RW (1<<3)
  31 #define BB_HOST_BANG_DATA        1
  32 
  33 #define RTL8190_EEPROM_ID       0x8129
  34 #define EEPROM_VID              0x02
  35 #define EEPROM_DID              0x04
  36 #define EEPROM_NODE_ADDRESS_BYTE_0      0x0C
  37 
  38 #define EEPROM_TxPowerDiff      0x1F
  39 
  40 
  41 #define EEPROM_PwDiff           0x21
  42 #define EEPROM_CrystalCap       0x22
  43 
  44 
  45 
  46 #define EEPROM_TxPwIndex_CCK_V1         0x29
  47 #define EEPROM_TxPwIndex_OFDM_24G_V1    0x2C
  48 #define EEPROM_TxPwIndex_Ver            0x27
  49 
  50 #define EEPROM_Default_TxPowerDiff              0x0
  51 #define EEPROM_Default_ThermalMeter             0x77
  52 #define EEPROM_Default_AntTxPowerDiff           0x0
  53 #define EEPROM_Default_TxPwDiff_CrystalCap      0x5
  54 #define EEPROM_Default_PwDiff                   0x4
  55 #define EEPROM_Default_CrystalCap               0x5
  56 #define EEPROM_Default_TxPower                  0x1010
  57 #define EEPROM_ICVersion_ChannelPlan    0x7C
  58 #define EEPROM_Customer_ID                      0x7B
  59 #define EEPROM_RFInd_PowerDiff                  0x28
  60 #define EEPROM_ThermalMeter                     0x29
  61 #define EEPROM_TxPwDiff_CrystalCap              0x2A
  62 #define EEPROM_TxPwIndex_CCK                    0x2C
  63 #define EEPROM_TxPwIndex_OFDM_24G       0x3A
  64 #define EEPROM_Default_TxPowerLevel             0x10
  65 #define EEPROM_IC_VER                           0x7d
  66 #define EEPROM_CRC                              0x7e
  67 
  68 #define EEPROM_CID_DEFAULT                      0x0
  69 #define EEPROM_CID_CAMEO                                0x1
  70 #define EEPROM_CID_RUNTOP                               0x2
  71 #define EEPROM_CID_Senao                                0x3
  72 #define EEPROM_CID_TOSHIBA                              0x4
  73 #define EEPROM_CID_NetCore                              0x5
  74 #define EEPROM_CID_Nettronix                    0x6
  75 #define EEPROM_CID_Pronet                               0x7
  76 #define EEPROM_CID_DLINK                                0x8
  77 #define EEPROM_CID_WHQL                                 0xFE
  78 enum _RTL8192Pci_HW {
  79         MAC0                    = 0x000,
  80         MAC1                    = 0x001,
  81         MAC2                    = 0x002,
  82         MAC3                    = 0x003,
  83         MAC4                    = 0x004,
  84         MAC5                    = 0x005,
  85         PCIF                    = 0x009,
  86 #define MXDMA2_16bytes          0x000
  87 #define MXDMA2_32bytes          0x001
  88 #define MXDMA2_64bytes          0x010
  89 #define MXDMA2_128bytes         0x011
  90 #define MXDMA2_256bytes         0x100
  91 #define MXDMA2_512bytes         0x101
  92 #define MXDMA2_1024bytes        0x110
  93 #define MXDMA2_NoLimit          0x7
  94 
  95 #define MULRW_SHIFT             3
  96 #define MXDMA2_RX_SHIFT         4
  97 #define MXDMA2_TX_SHIFT         0
  98         PMR                     = 0x00c,
  99         EPROM_CMD               = 0x00e,
 100 #define EPROM_CMD_RESERVED_MASK BIT5
 101 #define EPROM_CMD_9356SEL       BIT4
 102 #define EPROM_CMD_OPERATING_MODE_SHIFT 6
 103 #define EPROM_CMD_OPERATING_MODE_MASK ((1<<7)|(1<<6))
 104 #define EPROM_CMD_CONFIG 0x3
 105 #define EPROM_CMD_NORMAL 0
 106 #define EPROM_CMD_LOAD 1
 107 #define EPROM_CMD_PROGRAM 2
 108 #define EPROM_CS_BIT 3
 109 #define EPROM_CK_BIT 2
 110 #define EPROM_W_BIT 1
 111 #define EPROM_R_BIT 0
 112 
 113         AFR                      = 0x010,
 114 #define AFR_CardBEn             (1<<0)
 115 #define AFR_CLKRUN_SEL          (1<<1)
 116 #define AFR_FuncRegEn           (1<<2)
 117 
 118         ANAPAR                  = 0x17,
 119 #define BB_GLOBAL_RESET_BIT     0x1
 120         BB_GLOBAL_RESET         = 0x020,
 121         BSSIDR                  = 0x02E,
 122         CMDR                    = 0x037,
 123 #define         CR_RST                                  0x10
 124 #define         CR_RE                                   0x08
 125 #define         CR_TE                                   0x04
 126 #define         CR_MulRW                                0x01
 127         SIFS            = 0x03E,
 128         TCR                     = 0x040,
 129         RCR                     = 0x044,
 130 #define RCR_FILTER_MASK (BIT0 | BIT1 | BIT2 | BIT3 | BIT5 | BIT12 |     \
 131                         BIT18 | BIT19 | BIT20 | BIT21 | BIT22 | BIT23)
 132 #define RCR_ONLYERLPKT          BIT31
 133 #define RCR_ENCS2               BIT30
 134 #define RCR_ENCS1               BIT29
 135 #define RCR_ENMBID              BIT27
 136 #define RCR_ACKTXBW             (BIT24|BIT25)
 137 #define RCR_CBSSID              BIT23
 138 #define RCR_APWRMGT             BIT22
 139 #define RCR_ADD3                BIT21
 140 #define RCR_AMF                 BIT20
 141 #define RCR_ACF                 BIT19
 142 #define RCR_ADF                 BIT18
 143 #define RCR_RXFTH               BIT13
 144 #define RCR_AICV                BIT12
 145 #define RCR_ACRC32              BIT5
 146 #define RCR_AB                  BIT3
 147 #define RCR_AM                  BIT2
 148 #define RCR_APM                 BIT1
 149 #define RCR_AAP                 BIT0
 150 #define RCR_MXDMA_OFFSET        8
 151 #define RCR_FIFO_OFFSET         13
 152         SLOT_TIME               = 0x049,
 153         ACK_TIMEOUT             = 0x04c,
 154         PIFS_TIME               = 0x04d,
 155         USTIME                  = 0x04e,
 156         EDCAPARA_BE             = 0x050,
 157         EDCAPARA_BK             = 0x054,
 158         EDCAPARA_VO             = 0x058,
 159         EDCAPARA_VI             = 0x05C,
 160 #define AC_PARAM_TXOP_LIMIT_OFFSET              16
 161 #define AC_PARAM_ECW_MAX_OFFSET         12
 162 #define AC_PARAM_ECW_MIN_OFFSET                 8
 163 #define AC_PARAM_AIFS_OFFSET                            0
 164         RFPC                    = 0x05F,
 165         CWRR                    = 0x060,
 166         BCN_TCFG                = 0x062,
 167 #define BCN_TCFG_CW_SHIFT               8
 168 #define BCN_TCFG_IFS                    0
 169         BCN_INTERVAL            = 0x070,
 170         ATIMWND                 = 0x072,
 171         BCN_DRV_EARLY_INT       = 0x074,
 172 #define BCN_DRV_EARLY_INT_SWBCN_SHIFT   8
 173 #define BCN_DRV_EARLY_INT_TIME_SHIFT    0
 174         BCN_DMATIME             = 0x076,
 175         BCN_ERR_THRESH          = 0x078,
 176         RWCAM                   = 0x0A0,
 177 #define   CAM_CM_SecCAMPolling          BIT31
 178 #define   CAM_CM_SecCAMClr                      BIT30
 179 #define   CAM_CM_SecCAMWE                       BIT16
 180 #define   CAM_VALID                            BIT15
 181 #define   CAM_NOTVALID                  0x0000
 182 #define   CAM_USEDK                             BIT5
 183 
 184 #define   CAM_NONE                              0x0
 185 #define   CAM_WEP40                             0x01
 186 #define   CAM_TKIP                              0x02
 187 #define   CAM_AES                               0x04
 188 #define   CAM_WEP104                    0x05
 189 
 190 #define   TOTAL_CAM_ENTRY                               32
 191 
 192 #define   CAM_CONFIG_USEDK      true
 193 #define   CAM_CONFIG_NO_USEDK   false
 194 #define   CAM_WRITE             BIT16
 195 #define   CAM_READ              0x00000000
 196 #define   CAM_POLLINIG          BIT31
 197 #define   SCR_UseDK             0x01
 198         WCAMI                   = 0x0A4,
 199         RCAMO                   = 0x0A8,
 200         SECR                    = 0x0B0,
 201 #define SCR_TxUseDK                     BIT0
 202 #define   SCR_RxUseDK                   BIT1
 203 #define   SCR_TxEncEnable               BIT2
 204 #define   SCR_RxDecEnable               BIT3
 205 #define   SCR_SKByA2                            BIT4
 206 #define   SCR_NoSKMC                            BIT5
 207         SWREGULATOR     = 0x0BD,
 208         INTA_MASK               = 0x0f4,
 209 #define IMR8190_DISABLED                0x0
 210 #define IMR_ATIMEND                     BIT28
 211 #define IMR_TBDOK                       BIT27
 212 #define IMR_TBDER                       BIT26
 213 #define IMR_TXFOVW                      BIT15
 214 #define IMR_TIMEOUT0                    BIT14
 215 #define IMR_BcnInt                      BIT13
 216 #define IMR_RXFOVW                      BIT12
 217 #define IMR_RDU                         BIT11
 218 #define IMR_RXCMDOK                     BIT10
 219 #define IMR_BDOK                        BIT9
 220 #define IMR_HIGHDOK                     BIT8
 221 #define IMR_COMDOK                      BIT7
 222 #define IMR_MGNTDOK                     BIT6
 223 #define IMR_HCCADOK                     BIT5
 224 #define IMR_BKDOK                       BIT4
 225 #define IMR_BEDOK                       BIT3
 226 #define IMR_VIDOK                       BIT2
 227 #define IMR_VODOK                       BIT1
 228 #define IMR_ROK                         BIT0
 229         ISR                     = 0x0f8,
 230         TPPoll                  = 0x0fd,
 231 #define TPPoll_BKQ              BIT0
 232 #define TPPoll_BEQ              BIT1
 233 #define TPPoll_VIQ              BIT2
 234 #define TPPoll_VOQ              BIT3
 235 #define TPPoll_BQ               BIT4
 236 #define TPPoll_CQ               BIT5
 237 #define TPPoll_MQ               BIT6
 238 #define TPPoll_HQ               BIT7
 239 #define TPPoll_HCCAQ            BIT8
 240 #define TPPoll_StopBK   BIT9
 241 #define TPPoll_StopBE   BIT10
 242 #define TPPoll_StopVI           BIT11
 243 #define TPPoll_StopVO   BIT12
 244 #define TPPoll_StopMgt  BIT13
 245 #define TPPoll_StopHigh BIT14
 246 #define TPPoll_StopHCCA BIT15
 247 #define TPPoll_SHIFT            8
 248 
 249         PSR                     = 0x0ff,
 250 #define PSR_GEN                 0x0
 251 #define PSR_CPU                 0x1
 252         CPU_GEN                 = 0x100,
 253         BB_RESET                        = 0x101,
 254 #define CPU_CCK_LOOPBACK        0x00030000
 255 #define CPU_GEN_SYSTEM_RESET    0x00000001
 256 #define CPU_GEN_FIRMWARE_RESET  0x00000008
 257 #define CPU_GEN_BOOT_RDY        0x00000010
 258 #define CPU_GEN_FIRM_RDY        0x00000020
 259 #define CPU_GEN_PUT_CODE_OK     0x00000080
 260 #define CPU_GEN_BB_RST          0x00000100
 261 #define CPU_GEN_PWR_STB_CPU     0x00000004
 262 #define CPU_GEN_NO_LOOPBACK_MSK 0xFFF8FFFF
 263 #define CPU_GEN_NO_LOOPBACK_SET 0x00080000
 264 #define CPU_GEN_GPIO_UART               0x00007000
 265 
 266         LED1Cfg                 = 0x154,
 267         LED0Cfg                 = 0x155,
 268 
 269         AcmAvg                  = 0x170,
 270         AcmHwCtrl               = 0x171,
 271 #define AcmHw_HwEn              BIT0
 272 #define AcmHw_BeqEn             BIT1
 273 #define AcmHw_ViqEn             BIT2
 274 #define AcmHw_VoqEn             BIT3
 275 #define AcmHw_BeqStatus         BIT4
 276 #define AcmHw_ViqStatus         BIT5
 277 #define AcmHw_VoqStatus         BIT6
 278         AcmFwCtrl               = 0x172,
 279 #define AcmFw_BeqStatus         BIT0
 280 #define AcmFw_ViqStatus         BIT1
 281 #define AcmFw_VoqStatus         BIT2
 282         VOAdmTime               = 0x174,
 283         VIAdmTime               = 0x178,
 284         BEAdmTime               = 0x17C,
 285         RQPN1                   = 0x180,
 286         RQPN2                   = 0x184,
 287         RQPN3                   = 0x188,
 288         QPRR                    = 0x1E0,
 289         QPNR                    = 0x1F0,
 290         BQDA                    = 0x200,
 291         HQDA                    = 0x204,
 292         CQDA                    = 0x208,
 293         MQDA                    = 0x20C,
 294         HCCAQDA                 = 0x210,
 295         VOQDA                   = 0x214,
 296         VIQDA                   = 0x218,
 297         BEQDA                   = 0x21C,
 298         BKQDA                   = 0x220,
 299         RCQDA                   = 0x224,
 300         RDQDA                   = 0x228,
 301 
 302         MAR0                    = 0x240,
 303         MAR4                    = 0x244,
 304 
 305         CCX_PERIOD              = 0x250,
 306         CLM_RESULT              = 0x251,
 307         NHM_PERIOD              = 0x252,
 308 
 309         NHM_THRESHOLD0          = 0x253,
 310         NHM_THRESHOLD1          = 0x254,
 311         NHM_THRESHOLD2          = 0x255,
 312         NHM_THRESHOLD3          = 0x256,
 313         NHM_THRESHOLD4          = 0x257,
 314         NHM_THRESHOLD5          = 0x258,
 315         NHM_THRESHOLD6          = 0x259,
 316 
 317         MCTRL                   = 0x25A,
 318 
 319         NHM_RPI_COUNTER0        = 0x264,
 320         NHM_RPI_COUNTER1        = 0x265,
 321         NHM_RPI_COUNTER2        = 0x266,
 322         NHM_RPI_COUNTER3        = 0x267,
 323         NHM_RPI_COUNTER4        = 0x268,
 324         NHM_RPI_COUNTER5        = 0x269,
 325         NHM_RPI_COUNTER6        = 0x26A,
 326         NHM_RPI_COUNTER7        = 0x26B,
 327         WFCRC0            = 0x2f0,
 328         WFCRC1            = 0x2f4,
 329         WFCRC2            = 0x2f8,
 330 
 331         BW_OPMODE               = 0x300,
 332 #define BW_OPMODE_11J                   BIT0
 333 #define BW_OPMODE_5G                    BIT1
 334 #define BW_OPMODE_20MHZ                 BIT2
 335         IC_VERRSION             = 0x301,
 336         MSR                     = 0x303,
 337 #define MSR_LINK_MASK      ((1<<0)|(1<<1))
 338 #define MSR_LINK_MANAGED   2
 339 #define MSR_LINK_NONE      0
 340 #define MSR_LINK_SHIFT     0
 341 #define MSR_LINK_ADHOC     1
 342 #define MSR_LINK_MASTER    3
 343 #define MSR_LINK_ENEDCA    (1<<4)
 344 
 345 #define MSR_NOLINK                                      0x00
 346 #define MSR_ADHOC                                       0x01
 347 #define MSR_INFRA                                       0x02
 348 #define MSR_AP                                          0x03
 349 
 350         RETRY_LIMIT             = 0x304,
 351 #define RETRY_LIMIT_SHORT_SHIFT 8
 352 #define RETRY_LIMIT_LONG_SHIFT 0
 353         TSFR                    = 0x308,
 354         RRSR                    = 0x310,
 355 #define RRSR_RSC_OFFSET                         21
 356 #define RRSR_SHORT_OFFSET                       23
 357 #define RRSR_RSC_DUPLICATE                      0x600000
 358 #define RRSR_RSC_UPSUBCHNL                      0x400000
 359 #define RRSR_RSC_LOWSUBCHNL                     0x200000
 360 #define RRSR_SHORT                              0x800000
 361 #define RRSR_1M                                 BIT0
 362 #define RRSR_2M                                 BIT1
 363 #define RRSR_5_5M                               BIT2
 364 #define RRSR_11M                                BIT3
 365 #define RRSR_6M                                 BIT4
 366 #define RRSR_9M                                 BIT5
 367 #define RRSR_12M                                BIT6
 368 #define RRSR_18M                                BIT7
 369 #define RRSR_24M                                BIT8
 370 #define RRSR_36M                                BIT9
 371 #define RRSR_48M                                BIT10
 372 #define RRSR_54M                                BIT11
 373 #define RRSR_MCS0                               BIT12
 374 #define RRSR_MCS1                               BIT13
 375 #define RRSR_MCS2                               BIT14
 376 #define RRSR_MCS3                               BIT15
 377 #define RRSR_MCS4                               BIT16
 378 #define RRSR_MCS5                               BIT17
 379 #define RRSR_MCS6                               BIT18
 380 #define RRSR_MCS7                               BIT19
 381 #define BRSR_AckShortPmb                        BIT23
 382         UFWP                    = 0x318,
 383         RATR0                   = 0x320,
 384 #define RATR_1M                 0x00000001
 385 #define RATR_2M                 0x00000002
 386 #define RATR_55M                0x00000004
 387 #define RATR_11M                0x00000008
 388 #define RATR_6M                 0x00000010
 389 #define RATR_9M                 0x00000020
 390 #define RATR_12M                0x00000040
 391 #define RATR_18M                0x00000080
 392 #define RATR_24M                0x00000100
 393 #define RATR_36M                0x00000200
 394 #define RATR_48M                0x00000400
 395 #define RATR_54M                0x00000800
 396 #define RATR_MCS0               0x00001000
 397 #define RATR_MCS1               0x00002000
 398 #define RATR_MCS2               0x00004000
 399 #define RATR_MCS3               0x00008000
 400 #define RATR_MCS4               0x00010000
 401 #define RATR_MCS5               0x00020000
 402 #define RATR_MCS6               0x00040000
 403 #define RATR_MCS7               0x00080000
 404 #define RATR_MCS8               0x00100000
 405 #define RATR_MCS9               0x00200000
 406 #define RATR_MCS10              0x00400000
 407 #define RATR_MCS11              0x00800000
 408 #define RATR_MCS12              0x01000000
 409 #define RATR_MCS13              0x02000000
 410 #define RATR_MCS14              0x04000000
 411 #define RATR_MCS15              0x08000000
 412 #define RATE_ALL_CCK            (RATR_1M | RATR_2M | RATR_55M | RATR_11M)
 413 #define RATE_ALL_OFDM_AG        (RATR_6M | RATR_9M | RATR_12M | RATR_18M | \
 414                                 RATR_24M | RATR_36M | RATR_48M | RATR_54M)
 415 #define RATE_ALL_OFDM_1SS       (RATR_MCS0 | RATR_MCS1 | RATR_MCS2 |    \
 416                                 RATR_MCS3 | RATR_MCS4 | RATR_MCS5 |     \
 417                                 RATR_MCS6 | RATR_MCS7)
 418 #define RATE_ALL_OFDM_2SS       (RATR_MCS8 | RATR_MCS9 | RATR_MCS10 |   \
 419                                 RATR_MCS11 | RATR_MCS12 | RATR_MCS13 |  \
 420                                 RATR_MCS14|RATR_MCS15)
 421 
 422 
 423         DRIVER_RSSI             = 0x32c,
 424         MCS_TXAGC               = 0x340,
 425         CCK_TXAGC               = 0x348,
 426         MacBlkCtrl              = 0x403,
 427 
 428 }
 429 ;
 430 
 431 #define GPI 0x108
 432 #define GPO 0x109
 433 #define GPE 0x10a
 434 
 435 #define  HWSET_MAX_SIZE_92S                             128
 436 
 437 #define ANAPAR_FOR_8192PciE                             0x17
 438 
 439 #endif

/* [<][>][^][v][top][bottom][index][help] */