158391efdSNathan Chancellor /* SPDX-License-Identifier: GPL-2.0 */ 2554c0a3aSHans de Goede /****************************************************************************** 3554c0a3aSHans de Goede * 4554c0a3aSHans de Goede * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. 5554c0a3aSHans de Goede * 6554c0a3aSHans de Goede ******************************************************************************/ 7554c0a3aSHans de Goede /***************************************************************************** 8554c0a3aSHans de Goede * 9554c0a3aSHans de Goede * Module: __INC_HAL8192CPHYREG_H 10554c0a3aSHans de Goede * 11554c0a3aSHans de Goede * 12554c0a3aSHans de Goede * Note: 1. Define PMAC/BB register map 13554c0a3aSHans de Goede * 2. Define RF register map 14554c0a3aSHans de Goede * 3. PMAC/BB register bit mask. 15554c0a3aSHans de Goede * 4. RF reg bit mask. 16554c0a3aSHans de Goede * 5. Other BB/RF relative definition. 17554c0a3aSHans de Goede * 18554c0a3aSHans de Goede * 19554c0a3aSHans de Goede * Export: Constants, macro, functions(API), global variables(None). 20554c0a3aSHans de Goede * 21554c0a3aSHans de Goede * Abbrev: 22554c0a3aSHans de Goede * 23554c0a3aSHans de Goede * History: 24554c0a3aSHans de Goede * Data Who Remark 25554c0a3aSHans de Goede * 08/07/2007 MHC 1. Porting from 9x series PHYCFG.h. 26554c0a3aSHans de Goede * 2. Reorganize code architecture. 27554c0a3aSHans de Goede *09/25/2008 MH 1. Add RL6052 register definition 28554c0a3aSHans de Goede * 29554c0a3aSHans de Goede *****************************************************************************/ 30554c0a3aSHans de Goede #ifndef __INC_HAL8192CPHYREG_H 31554c0a3aSHans de Goede #define __INC_HAL8192CPHYREG_H 32554c0a3aSHans de Goede 33554c0a3aSHans de Goede 34554c0a3aSHans de Goede /*--------------------------Define Parameters-------------------------------*/ 35554c0a3aSHans de Goede 36554c0a3aSHans de Goede /* */ 37*97f136ecSFabio M. De Francesco /* 8192S Register offset definition */ 38554c0a3aSHans de Goede /* */ 39554c0a3aSHans de Goede 40554c0a3aSHans de Goede /* */ 41554c0a3aSHans de Goede /* BB-PHY register PMAC 0x100 PHY 0x800 - 0xEFF */ 42554c0a3aSHans de Goede /* 1. PMAC duplicate register due to connection: RF_Mode, TRxRN, NumOf L-STF */ 43554c0a3aSHans de Goede /* 2. 0x800/0x900/0xA00/0xC00/0xD00/0xE00 */ 44554c0a3aSHans de Goede /* 3. RF register 0x00-2E */ 45554c0a3aSHans de Goede /* 4. Bit Mask for BB/RF register */ 46*97f136ecSFabio M. De Francesco /* 5. Other definition for BB/RF R/W */ 47554c0a3aSHans de Goede /* */ 48554c0a3aSHans de Goede 49554c0a3aSHans de Goede 50554c0a3aSHans de Goede /* */ 51554c0a3aSHans de Goede /* 1. PMAC duplicate register due to connection: RF_Mode, TRxRN, NumOf L-STF */ 52554c0a3aSHans de Goede /* 1. Page1(0x100) */ 53554c0a3aSHans de Goede /* */ 54554c0a3aSHans de Goede #define rPMAC_Reset 0x100 55554c0a3aSHans de Goede #define rPMAC_TxStart 0x104 56554c0a3aSHans de Goede #define rPMAC_TxLegacySIG 0x108 57554c0a3aSHans de Goede #define rPMAC_TxHTSIG1 0x10c 58554c0a3aSHans de Goede #define rPMAC_TxHTSIG2 0x110 59554c0a3aSHans de Goede #define rPMAC_PHYDebug 0x114 60554c0a3aSHans de Goede #define rPMAC_TxPacketNum 0x118 61554c0a3aSHans de Goede #define rPMAC_TxIdle 0x11c 62554c0a3aSHans de Goede #define rPMAC_TxMACHeader0 0x120 63554c0a3aSHans de Goede #define rPMAC_TxMACHeader1 0x124 64554c0a3aSHans de Goede #define rPMAC_TxMACHeader2 0x128 65554c0a3aSHans de Goede #define rPMAC_TxMACHeader3 0x12c 66554c0a3aSHans de Goede #define rPMAC_TxMACHeader4 0x130 67554c0a3aSHans de Goede #define rPMAC_TxMACHeader5 0x134 68554c0a3aSHans de Goede #define rPMAC_TxDataType 0x138 69554c0a3aSHans de Goede #define rPMAC_TxRandomSeed 0x13c 70554c0a3aSHans de Goede #define rPMAC_CCKPLCPPreamble 0x140 71554c0a3aSHans de Goede #define rPMAC_CCKPLCPHeader 0x144 72554c0a3aSHans de Goede #define rPMAC_CCKCRC16 0x148 73554c0a3aSHans de Goede #define rPMAC_OFDMRxCRC32OK 0x170 74554c0a3aSHans de Goede #define rPMAC_OFDMRxCRC32Er 0x174 75554c0a3aSHans de Goede #define rPMAC_OFDMRxParityEr 0x178 76554c0a3aSHans de Goede #define rPMAC_OFDMRxCRC8Er 0x17c 77554c0a3aSHans de Goede #define rPMAC_CCKCRxRC16Er 0x180 78554c0a3aSHans de Goede #define rPMAC_CCKCRxRC32Er 0x184 79554c0a3aSHans de Goede #define rPMAC_CCKCRxRC32OK 0x188 80554c0a3aSHans de Goede #define rPMAC_TxStatus 0x18c 81554c0a3aSHans de Goede 82554c0a3aSHans de Goede /* */ 83554c0a3aSHans de Goede /* 2. Page2(0x200) */ 84554c0a3aSHans de Goede /* */ 85554c0a3aSHans de Goede /* The following two definition are only used for USB interface. */ 86554c0a3aSHans de Goede #define RF_BB_CMD_ADDR 0x02c0 /* RF/BB read/write command address. */ 87554c0a3aSHans de Goede #define RF_BB_CMD_DATA 0x02c4 /* RF/BB read/write command data. */ 88554c0a3aSHans de Goede 89554c0a3aSHans de Goede /* */ 90554c0a3aSHans de Goede /* 3. Page8(0x800) */ 91554c0a3aSHans de Goede /* */ 92554c0a3aSHans de Goede #define rFPGA0_RFMOD 0x800 /* RF mode & CCK TxSC RF BW Setting?? */ 93554c0a3aSHans de Goede 94554c0a3aSHans de Goede #define rFPGA0_TxInfo 0x804 /* Status report?? */ 95554c0a3aSHans de Goede #define rFPGA0_PSDFunction 0x808 96554c0a3aSHans de Goede 97554c0a3aSHans de Goede #define rFPGA0_TxGainStage 0x80c /* Set TX PWR init gain? */ 98554c0a3aSHans de Goede 99554c0a3aSHans de Goede #define rFPGA0_RFTiming1 0x810 /* Useless now */ 100554c0a3aSHans de Goede #define rFPGA0_RFTiming2 0x814 101554c0a3aSHans de Goede 102554c0a3aSHans de Goede #define rFPGA0_XA_HSSIParameter1 0x820 /* RF 3 wire register */ 103554c0a3aSHans de Goede #define rFPGA0_XA_HSSIParameter2 0x824 104554c0a3aSHans de Goede #define rFPGA0_XB_HSSIParameter1 0x828 105554c0a3aSHans de Goede #define rFPGA0_XB_HSSIParameter2 0x82c 106554c0a3aSHans de Goede #define rTxAGC_B_Rate18_06 0x830 107554c0a3aSHans de Goede #define rTxAGC_B_Rate54_24 0x834 108554c0a3aSHans de Goede #define rTxAGC_B_CCK1_55_Mcs32 0x838 109554c0a3aSHans de Goede #define rTxAGC_B_Mcs03_Mcs00 0x83c 110554c0a3aSHans de Goede 111554c0a3aSHans de Goede #define rTxAGC_B_Mcs07_Mcs04 0x848 112554c0a3aSHans de Goede #define rTxAGC_B_Mcs11_Mcs08 0x84c 113554c0a3aSHans de Goede 114554c0a3aSHans de Goede #define rFPGA0_XA_LSSIParameter 0x840 115554c0a3aSHans de Goede #define rFPGA0_XB_LSSIParameter 0x844 116554c0a3aSHans de Goede 117554c0a3aSHans de Goede #define rFPGA0_RFWakeUpParameter 0x850 /* Useless now */ 118554c0a3aSHans de Goede #define rFPGA0_RFSleepUpParameter 0x854 119554c0a3aSHans de Goede 120554c0a3aSHans de Goede #define rFPGA0_XAB_SwitchControl 0x858 /* RF Channel switch */ 121554c0a3aSHans de Goede #define rFPGA0_XCD_SwitchControl 0x85c 122554c0a3aSHans de Goede 123554c0a3aSHans de Goede #define rFPGA0_XA_RFInterfaceOE 0x860 /* RF Channel switch */ 124554c0a3aSHans de Goede #define rFPGA0_XB_RFInterfaceOE 0x864 125554c0a3aSHans de Goede 126554c0a3aSHans de Goede #define rTxAGC_B_Mcs15_Mcs12 0x868 127554c0a3aSHans de Goede #define rTxAGC_B_CCK11_A_CCK2_11 0x86c 128554c0a3aSHans de Goede 129554c0a3aSHans de Goede #define rFPGA0_XAB_RFInterfaceSW 0x870 /* RF Interface Software Control */ 130554c0a3aSHans de Goede #define rFPGA0_XCD_RFInterfaceSW 0x874 131554c0a3aSHans de Goede 132554c0a3aSHans de Goede #define rFPGA0_XAB_RFParameter 0x878 /* RF Parameter */ 133554c0a3aSHans de Goede #define rFPGA0_XCD_RFParameter 0x87c 134554c0a3aSHans de Goede 135554c0a3aSHans de Goede #define rFPGA0_AnalogParameter1 0x880 /* Crystal cap setting RF-R/W protection for parameter4?? */ 136554c0a3aSHans de Goede #define rFPGA0_AnalogParameter2 0x884 137554c0a3aSHans de Goede #define rFPGA0_AnalogParameter3 0x888 /* Useless now */ 138554c0a3aSHans de Goede #define rFPGA0_AnalogParameter4 0x88c 139554c0a3aSHans de Goede 140*97f136ecSFabio M. De Francesco #define rFPGA0_XA_LSSIReadBack 0x8a0 /* Transceiver LSSI Readback */ 141554c0a3aSHans de Goede #define rFPGA0_XB_LSSIReadBack 0x8a4 142554c0a3aSHans de Goede #define rFPGA0_XC_LSSIReadBack 0x8a8 143554c0a3aSHans de Goede #define rFPGA0_XD_LSSIReadBack 0x8ac 144554c0a3aSHans de Goede 145554c0a3aSHans de Goede #define rFPGA0_PSDReport 0x8b4 /* Useless now */ 146554c0a3aSHans de Goede #define TransceiverA_HSPI_Readback 0x8b8 /* Transceiver A HSPI Readback */ 147554c0a3aSHans de Goede #define TransceiverB_HSPI_Readback 0x8bc /* Transceiver B HSPI Readback */ 148554c0a3aSHans de Goede #define rFPGA0_XAB_RFInterfaceRB 0x8e0 /* Useless now RF Interface Readback Value */ 149554c0a3aSHans de Goede #define rFPGA0_XCD_RFInterfaceRB 0x8e4 /* Useless now */ 150554c0a3aSHans de Goede 151554c0a3aSHans de Goede /* */ 152554c0a3aSHans de Goede /* 4. Page9(0x900) */ 153554c0a3aSHans de Goede /* */ 154554c0a3aSHans de Goede #define rFPGA1_RFMOD 0x900 /* RF mode & OFDM TxSC RF BW Setting?? */ 155554c0a3aSHans de Goede 156554c0a3aSHans de Goede #define rFPGA1_TxBlock 0x904 /* Useless now */ 157554c0a3aSHans de Goede #define rFPGA1_DebugSelect 0x908 /* Useless now */ 158554c0a3aSHans de Goede #define rFPGA1_TxInfo 0x90c /* Useless now Status report?? */ 159554c0a3aSHans de Goede #define rS0S1_PathSwitch 0x948 160554c0a3aSHans de Goede 161554c0a3aSHans de Goede /* */ 162554c0a3aSHans de Goede /* 5. PageA(0xA00) */ 163554c0a3aSHans de Goede /* */ 164554c0a3aSHans de Goede /* Set Control channel to upper or lower. These settings are required only for 40MHz */ 165554c0a3aSHans de Goede #define rCCK0_System 0xa00 166554c0a3aSHans de Goede 167554c0a3aSHans de Goede #define rCCK0_AFESetting 0xa04 /* Disable init gain now Select RX path by RSSI */ 168554c0a3aSHans de Goede #define rCCK0_CCA 0xa08 /* Disable init gain now Init gain */ 169554c0a3aSHans de Goede 170554c0a3aSHans de Goede #define rCCK0_RxAGC1 0xa0c /* AGC default value, saturation level Antenna Diversity, RX AGC, LNA Threshold, RX LNA Threshold useless now. Not the same as 90 series */ 171554c0a3aSHans de Goede #define rCCK0_RxAGC2 0xa10 /* AGC & DAGC */ 172554c0a3aSHans de Goede 173554c0a3aSHans de Goede #define rCCK0_RxHP 0xa14 174554c0a3aSHans de Goede 175554c0a3aSHans de Goede #define rCCK0_DSPParameter1 0xa18 /* Timing recovery & Channel estimation threshold */ 176554c0a3aSHans de Goede #define rCCK0_DSPParameter2 0xa1c /* SQ threshold */ 177554c0a3aSHans de Goede 178554c0a3aSHans de Goede #define rCCK0_TxFilter1 0xa20 179554c0a3aSHans de Goede #define rCCK0_TxFilter2 0xa24 180554c0a3aSHans de Goede #define rCCK0_DebugPort 0xa28 /* debug port and Tx filter3 */ 181554c0a3aSHans de Goede #define rCCK0_FalseAlarmReport 0xa2c /* 0xa2d useless now 0xa30-a4f channel report */ 182554c0a3aSHans de Goede #define rCCK0_TRSSIReport 0xa50 183554c0a3aSHans de Goede #define rCCK0_RxReport 0xa54 /* 0xa57 */ 184554c0a3aSHans de Goede #define rCCK0_FACounterLower 0xa5c /* 0xa5b */ 185554c0a3aSHans de Goede #define rCCK0_FACounterUpper 0xa58 /* 0xa5c */ 186554c0a3aSHans de Goede /* */ 187554c0a3aSHans de Goede /* PageB(0xB00) */ 188554c0a3aSHans de Goede /* */ 189554c0a3aSHans de Goede #define rPdp_AntA 0xb00 190554c0a3aSHans de Goede #define rPdp_AntA_4 0xb04 191554c0a3aSHans de Goede #define rConfig_Pmpd_AntA 0xb28 192554c0a3aSHans de Goede #define rConfig_AntA 0xb68 193554c0a3aSHans de Goede #define rConfig_AntB 0xb6c 194554c0a3aSHans de Goede #define rPdp_AntB 0xb70 195554c0a3aSHans de Goede #define rPdp_AntB_4 0xb74 196554c0a3aSHans de Goede #define rConfig_Pmpd_AntB 0xb98 197554c0a3aSHans de Goede #define rAPK 0xbd8 198554c0a3aSHans de Goede 199554c0a3aSHans de Goede /* */ 200554c0a3aSHans de Goede /* 6. PageC(0xC00) */ 201554c0a3aSHans de Goede /* */ 202554c0a3aSHans de Goede #define rOFDM0_LSTF 0xc00 203554c0a3aSHans de Goede 204554c0a3aSHans de Goede #define rOFDM0_TRxPathEnable 0xc04 205554c0a3aSHans de Goede #define rOFDM0_TRMuxPar 0xc08 206554c0a3aSHans de Goede #define rOFDM0_TRSWIsolation 0xc0c 207554c0a3aSHans de Goede 208554c0a3aSHans de Goede #define rOFDM0_XARxAFE 0xc10 /* RxIQ DC offset, Rx digital filter, DC notch filter */ 209*97f136ecSFabio M. De Francesco #define rOFDM0_XARxIQImbalance 0xc14 /* RxIQ imbalance matrix */ 210554c0a3aSHans de Goede #define rOFDM0_XBRxAFE 0xc18 211554c0a3aSHans de Goede #define rOFDM0_XBRxIQImbalance 0xc1c 212554c0a3aSHans de Goede #define rOFDM0_XCRxAFE 0xc20 213554c0a3aSHans de Goede #define rOFDM0_XCRxIQImbalance 0xc24 214554c0a3aSHans de Goede #define rOFDM0_XDRxAFE 0xc28 215554c0a3aSHans de Goede #define rOFDM0_XDRxIQImbalance 0xc2c 216554c0a3aSHans de Goede 217554c0a3aSHans de Goede #define rOFDM0_RxDetector1 0xc30 /* PD, BW & SBD DM tune init gain */ 218554c0a3aSHans de Goede #define rOFDM0_RxDetector2 0xc34 /* SBD & Fame Sync. */ 219554c0a3aSHans de Goede #define rOFDM0_RxDetector3 0xc38 /* Frame Sync. */ 220554c0a3aSHans de Goede #define rOFDM0_RxDetector4 0xc3c /* PD, SBD, Frame Sync & Short-GI */ 221554c0a3aSHans de Goede 222554c0a3aSHans de Goede #define rOFDM0_RxDSP 0xc40 /* Rx Sync Path */ 223554c0a3aSHans de Goede #define rOFDM0_CFOandDAGC 0xc44 /* CFO & DAGC */ 224554c0a3aSHans de Goede #define rOFDM0_CCADropThreshold 0xc48 /* CCA Drop threshold */ 225554c0a3aSHans de Goede #define rOFDM0_ECCAThreshold 0xc4c /* energy CCA */ 226554c0a3aSHans de Goede 227554c0a3aSHans de Goede #define rOFDM0_XAAGCCore1 0xc50 /* DIG */ 228554c0a3aSHans de Goede #define rOFDM0_XAAGCCore2 0xc54 229554c0a3aSHans de Goede #define rOFDM0_XBAGCCore1 0xc58 230554c0a3aSHans de Goede #define rOFDM0_XBAGCCore2 0xc5c 231554c0a3aSHans de Goede #define rOFDM0_XCAGCCore1 0xc60 232554c0a3aSHans de Goede #define rOFDM0_XCAGCCore2 0xc64 233554c0a3aSHans de Goede #define rOFDM0_XDAGCCore1 0xc68 234554c0a3aSHans de Goede #define rOFDM0_XDAGCCore2 0xc6c 235554c0a3aSHans de Goede 236554c0a3aSHans de Goede #define rOFDM0_AGCParameter1 0xc70 237554c0a3aSHans de Goede #define rOFDM0_AGCParameter2 0xc74 238554c0a3aSHans de Goede #define rOFDM0_AGCRSSITable 0xc78 239554c0a3aSHans de Goede #define rOFDM0_HTSTFAGC 0xc7c 240554c0a3aSHans de Goede 241554c0a3aSHans de Goede #define rOFDM0_XATxIQImbalance 0xc80 /* TX PWR TRACK and DIG */ 242554c0a3aSHans de Goede #define rOFDM0_XATxAFE 0xc84 243554c0a3aSHans de Goede #define rOFDM0_XBTxIQImbalance 0xc88 244554c0a3aSHans de Goede #define rOFDM0_XBTxAFE 0xc8c 245554c0a3aSHans de Goede #define rOFDM0_XCTxIQImbalance 0xc90 246554c0a3aSHans de Goede #define rOFDM0_XCTxAFE 0xc94 247554c0a3aSHans de Goede #define rOFDM0_XDTxIQImbalance 0xc98 248554c0a3aSHans de Goede #define rOFDM0_XDTxAFE 0xc9c 249554c0a3aSHans de Goede 250554c0a3aSHans de Goede #define rOFDM0_RxIQExtAnta 0xca0 251554c0a3aSHans de Goede #define rOFDM0_TxCoeff1 0xca4 252554c0a3aSHans de Goede #define rOFDM0_TxCoeff2 0xca8 253554c0a3aSHans de Goede #define rOFDM0_TxCoeff3 0xcac 254554c0a3aSHans de Goede #define rOFDM0_TxCoeff4 0xcb0 255554c0a3aSHans de Goede #define rOFDM0_TxCoeff5 0xcb4 256554c0a3aSHans de Goede #define rOFDM0_TxCoeff6 0xcb8 257554c0a3aSHans de Goede #define rOFDM0_RxHPParameter 0xce0 258554c0a3aSHans de Goede #define rOFDM0_TxPseudoNoiseWgt 0xce4 259554c0a3aSHans de Goede #define rOFDM0_FrameSync 0xcf0 260554c0a3aSHans de Goede #define rOFDM0_DFSReport 0xcf4 261554c0a3aSHans de Goede 262554c0a3aSHans de Goede /* */ 263554c0a3aSHans de Goede /* 7. PageD(0xD00) */ 264554c0a3aSHans de Goede /* */ 265554c0a3aSHans de Goede #define rOFDM1_LSTF 0xd00 266554c0a3aSHans de Goede #define rOFDM1_TRxPathEnable 0xd04 267554c0a3aSHans de Goede 268554c0a3aSHans de Goede #define rOFDM1_CFO 0xd08 /* No setting now */ 269554c0a3aSHans de Goede #define rOFDM1_CSI1 0xd10 270554c0a3aSHans de Goede #define rOFDM1_SBD 0xd14 271554c0a3aSHans de Goede #define rOFDM1_CSI2 0xd18 272554c0a3aSHans de Goede #define rOFDM1_CFOTracking 0xd2c 273554c0a3aSHans de Goede #define rOFDM1_TRxMesaure1 0xd34 274554c0a3aSHans de Goede #define rOFDM1_IntfDet 0xd3c 275554c0a3aSHans de Goede #define rOFDM1_PseudoNoiseStateAB 0xd50 276554c0a3aSHans de Goede #define rOFDM1_PseudoNoiseStateCD 0xd54 277554c0a3aSHans de Goede #define rOFDM1_RxPseudoNoiseWgt 0xd58 278554c0a3aSHans de Goede 279554c0a3aSHans de Goede #define rOFDM_PHYCounter1 0xda0 /* cca, parity fail */ 280554c0a3aSHans de Goede #define rOFDM_PHYCounter2 0xda4 /* rate illegal, crc8 fail */ 281554c0a3aSHans de Goede #define rOFDM_PHYCounter3 0xda8 /* MCS not support */ 282554c0a3aSHans de Goede 283554c0a3aSHans de Goede #define rOFDM_ShortCFOAB 0xdac /* No setting now */ 284554c0a3aSHans de Goede #define rOFDM_ShortCFOCD 0xdb0 285554c0a3aSHans de Goede #define rOFDM_LongCFOAB 0xdb4 286554c0a3aSHans de Goede #define rOFDM_LongCFOCD 0xdb8 287554c0a3aSHans de Goede #define rOFDM_TailCFOAB 0xdbc 288554c0a3aSHans de Goede #define rOFDM_TailCFOCD 0xdc0 289554c0a3aSHans de Goede #define rOFDM_PWMeasure1 0xdc4 290554c0a3aSHans de Goede #define rOFDM_PWMeasure2 0xdc8 291554c0a3aSHans de Goede #define rOFDM_BWReport 0xdcc 292554c0a3aSHans de Goede #define rOFDM_AGCReport 0xdd0 293554c0a3aSHans de Goede #define rOFDM_RxSNR 0xdd4 294554c0a3aSHans de Goede #define rOFDM_RxEVMCSI 0xdd8 295554c0a3aSHans de Goede #define rOFDM_SIGReport 0xddc 296554c0a3aSHans de Goede 297554c0a3aSHans de Goede 298554c0a3aSHans de Goede /* */ 299554c0a3aSHans de Goede /* 8. PageE(0xE00) */ 300554c0a3aSHans de Goede /* */ 301554c0a3aSHans de Goede #define rTxAGC_A_Rate18_06 0xe00 302554c0a3aSHans de Goede #define rTxAGC_A_Rate54_24 0xe04 303554c0a3aSHans de Goede #define rTxAGC_A_CCK1_Mcs32 0xe08 304554c0a3aSHans de Goede #define rTxAGC_A_Mcs03_Mcs00 0xe10 305554c0a3aSHans de Goede #define rTxAGC_A_Mcs07_Mcs04 0xe14 306554c0a3aSHans de Goede #define rTxAGC_A_Mcs11_Mcs08 0xe18 307554c0a3aSHans de Goede #define rTxAGC_A_Mcs15_Mcs12 0xe1c 308554c0a3aSHans de Goede 309554c0a3aSHans de Goede #define rFPGA0_IQK 0xe28 310554c0a3aSHans de Goede #define rTx_IQK_Tone_A 0xe30 311554c0a3aSHans de Goede #define rRx_IQK_Tone_A 0xe34 312554c0a3aSHans de Goede #define rTx_IQK_PI_A 0xe38 313554c0a3aSHans de Goede #define rRx_IQK_PI_A 0xe3c 314554c0a3aSHans de Goede 315554c0a3aSHans de Goede #define rTx_IQK 0xe40 316554c0a3aSHans de Goede #define rRx_IQK 0xe44 317554c0a3aSHans de Goede #define rIQK_AGC_Pts 0xe48 318554c0a3aSHans de Goede #define rIQK_AGC_Rsp 0xe4c 319554c0a3aSHans de Goede #define rTx_IQK_Tone_B 0xe50 320554c0a3aSHans de Goede #define rRx_IQK_Tone_B 0xe54 321554c0a3aSHans de Goede #define rTx_IQK_PI_B 0xe58 322554c0a3aSHans de Goede #define rRx_IQK_PI_B 0xe5c 323554c0a3aSHans de Goede #define rIQK_AGC_Cont 0xe60 324554c0a3aSHans de Goede 325554c0a3aSHans de Goede #define rBlue_Tooth 0xe6c 326554c0a3aSHans de Goede #define rRx_Wait_CCA 0xe70 327554c0a3aSHans de Goede #define rTx_CCK_RFON 0xe74 328554c0a3aSHans de Goede #define rTx_CCK_BBON 0xe78 329554c0a3aSHans de Goede #define rTx_OFDM_RFON 0xe7c 330554c0a3aSHans de Goede #define rTx_OFDM_BBON 0xe80 331554c0a3aSHans de Goede #define rTx_To_Rx 0xe84 332554c0a3aSHans de Goede #define rTx_To_Tx 0xe88 333554c0a3aSHans de Goede #define rRx_CCK 0xe8c 334554c0a3aSHans de Goede 335554c0a3aSHans de Goede #define rTx_Power_Before_IQK_A 0xe94 336554c0a3aSHans de Goede #define rTx_Power_After_IQK_A 0xe9c 337554c0a3aSHans de Goede 338554c0a3aSHans de Goede #define rRx_Power_Before_IQK_A 0xea0 339554c0a3aSHans de Goede #define rRx_Power_Before_IQK_A_2 0xea4 340554c0a3aSHans de Goede #define rRx_Power_After_IQK_A 0xea8 341554c0a3aSHans de Goede #define rRx_Power_After_IQK_A_2 0xeac 342554c0a3aSHans de Goede 343554c0a3aSHans de Goede #define rTx_Power_Before_IQK_B 0xeb4 344554c0a3aSHans de Goede #define rTx_Power_After_IQK_B 0xebc 345554c0a3aSHans de Goede 346554c0a3aSHans de Goede #define rRx_Power_Before_IQK_B 0xec0 347554c0a3aSHans de Goede #define rRx_Power_Before_IQK_B_2 0xec4 348554c0a3aSHans de Goede #define rRx_Power_After_IQK_B 0xec8 349554c0a3aSHans de Goede #define rRx_Power_After_IQK_B_2 0xecc 350554c0a3aSHans de Goede 351554c0a3aSHans de Goede #define rRx_OFDM 0xed0 352554c0a3aSHans de Goede #define rRx_Wait_RIFS 0xed4 353554c0a3aSHans de Goede #define rRx_TO_Rx 0xed8 354554c0a3aSHans de Goede #define rStandby 0xedc 355554c0a3aSHans de Goede #define rSleep 0xee0 356554c0a3aSHans de Goede #define rPMPD_ANAEN 0xeec 357554c0a3aSHans de Goede 358554c0a3aSHans de Goede /* */ 359554c0a3aSHans de Goede /* 7. RF Register 0x00-0x2E (RF 8256) */ 360554c0a3aSHans de Goede /* RF-0222D 0x00-3F */ 361554c0a3aSHans de Goede /* */ 362554c0a3aSHans de Goede /* Zebra1 */ 363554c0a3aSHans de Goede #define rZebra1_HSSIEnable 0x0 /* Useless now */ 364554c0a3aSHans de Goede #define rZebra1_TRxEnable1 0x1 365554c0a3aSHans de Goede #define rZebra1_TRxEnable2 0x2 366554c0a3aSHans de Goede #define rZebra1_AGC 0x4 367554c0a3aSHans de Goede #define rZebra1_ChargePump 0x5 368554c0a3aSHans de Goede #define rZebra1_Channel 0x7 /* RF channel switch */ 369554c0a3aSHans de Goede 370554c0a3aSHans de Goede /* endif */ 371554c0a3aSHans de Goede #define rZebra1_TxGain 0x8 /* Useless now */ 372554c0a3aSHans de Goede #define rZebra1_TxLPF 0x9 373554c0a3aSHans de Goede #define rZebra1_RxLPF 0xb 374554c0a3aSHans de Goede #define rZebra1_RxHPFCorner 0xc 375554c0a3aSHans de Goede 376554c0a3aSHans de Goede /* Zebra4 */ 377554c0a3aSHans de Goede #define rGlobalCtrl 0 /* Useless now */ 378554c0a3aSHans de Goede #define rRTL8256_TxLPF 19 379554c0a3aSHans de Goede #define rRTL8256_RxLPF 11 380554c0a3aSHans de Goede 381554c0a3aSHans de Goede /* RTL8258 */ 382554c0a3aSHans de Goede #define rRTL8258_TxLPF 0x11 /* Useless now */ 383554c0a3aSHans de Goede #define rRTL8258_RxLPF 0x13 384554c0a3aSHans de Goede #define rRTL8258_RSSILPF 0xa 385554c0a3aSHans de Goede 386554c0a3aSHans de Goede /* */ 387554c0a3aSHans de Goede /* RL6052 Register definition */ 388554c0a3aSHans de Goede /* */ 389554c0a3aSHans de Goede #define RF_AC 0x00 /* */ 390554c0a3aSHans de Goede 391554c0a3aSHans de Goede #define RF_IQADJ_G1 0x01 /* */ 392554c0a3aSHans de Goede #define RF_IQADJ_G2 0x02 /* */ 393554c0a3aSHans de Goede #define RF_BS_PA_APSET_G1_G4 0x03 394554c0a3aSHans de Goede #define RF_BS_PA_APSET_G5_G8 0x04 395554c0a3aSHans de Goede #define RF_POW_TRSW 0x05 /* */ 396554c0a3aSHans de Goede 397554c0a3aSHans de Goede #define RF_GAIN_RX 0x06 /* */ 398554c0a3aSHans de Goede #define RF_GAIN_TX 0x07 /* */ 399554c0a3aSHans de Goede 400554c0a3aSHans de Goede #define RF_TXM_IDAC 0x08 /* */ 401554c0a3aSHans de Goede #define RF_IPA_G 0x09 /* */ 402554c0a3aSHans de Goede #define RF_TXBIAS_G 0x0A 403554c0a3aSHans de Goede #define RF_TXPA_AG 0x0B 404554c0a3aSHans de Goede #define RF_IPA_A 0x0C /* */ 405554c0a3aSHans de Goede #define RF_TXBIAS_A 0x0D 406554c0a3aSHans de Goede #define RF_BS_PA_APSET_G9_G11 0x0E 407554c0a3aSHans de Goede #define RF_BS_IQGEN 0x0F /* */ 408554c0a3aSHans de Goede 409554c0a3aSHans de Goede #define RF_MODE1 0x10 /* */ 410554c0a3aSHans de Goede #define RF_MODE2 0x11 /* */ 411554c0a3aSHans de Goede 412554c0a3aSHans de Goede #define RF_RX_AGC_HP 0x12 /* */ 413554c0a3aSHans de Goede #define RF_TX_AGC 0x13 /* */ 414554c0a3aSHans de Goede #define RF_BIAS 0x14 /* */ 415554c0a3aSHans de Goede #define RF_IPA 0x15 /* */ 416554c0a3aSHans de Goede #define RF_TXBIAS 0x16 /* */ 417554c0a3aSHans de Goede #define RF_POW_ABILITY 0x17 /* */ 418554c0a3aSHans de Goede #define RF_MODE_AG 0x18 /* */ 419554c0a3aSHans de Goede #define rRfChannel 0x18 /* RF channel and BW switch */ 420554c0a3aSHans de Goede #define RF_CHNLBW 0x18 /* RF channel and BW switch */ 421554c0a3aSHans de Goede #define RF_TOP 0x19 /* */ 422554c0a3aSHans de Goede 423554c0a3aSHans de Goede #define RF_RX_G1 0x1A /* */ 424554c0a3aSHans de Goede #define RF_RX_G2 0x1B /* */ 425554c0a3aSHans de Goede 426554c0a3aSHans de Goede #define RF_RX_BB2 0x1C /* */ 427554c0a3aSHans de Goede #define RF_RX_BB1 0x1D /* */ 428554c0a3aSHans de Goede 429554c0a3aSHans de Goede #define RF_RCK1 0x1E /* */ 430554c0a3aSHans de Goede #define RF_RCK2 0x1F /* */ 431554c0a3aSHans de Goede 432554c0a3aSHans de Goede #define RF_TX_G1 0x20 /* */ 433554c0a3aSHans de Goede #define RF_TX_G2 0x21 /* */ 434554c0a3aSHans de Goede #define RF_TX_G3 0x22 /* */ 435554c0a3aSHans de Goede 436554c0a3aSHans de Goede #define RF_TX_BB1 0x23 /* */ 437554c0a3aSHans de Goede 438554c0a3aSHans de Goede #define RF_T_METER 0x24 /* */ 439554c0a3aSHans de Goede 440554c0a3aSHans de Goede #define RF_SYN_G1 0x25 /* RF TX Power control */ 441554c0a3aSHans de Goede #define RF_SYN_G2 0x26 /* RF TX Power control */ 442554c0a3aSHans de Goede #define RF_SYN_G3 0x27 /* RF TX Power control */ 443554c0a3aSHans de Goede #define RF_SYN_G4 0x28 /* RF TX Power control */ 444554c0a3aSHans de Goede #define RF_SYN_G5 0x29 /* RF TX Power control */ 445554c0a3aSHans de Goede #define RF_SYN_G6 0x2A /* RF TX Power control */ 446554c0a3aSHans de Goede #define RF_SYN_G7 0x2B /* RF TX Power control */ 447554c0a3aSHans de Goede #define RF_SYN_G8 0x2C /* RF TX Power control */ 448554c0a3aSHans de Goede 449554c0a3aSHans de Goede #define RF_RCK_OS 0x30 /* RF TX PA control */ 450554c0a3aSHans de Goede 451554c0a3aSHans de Goede #define RF_TXPA_G1 0x31 /* RF TX PA control */ 452554c0a3aSHans de Goede #define RF_TXPA_G2 0x32 /* RF TX PA control */ 453554c0a3aSHans de Goede #define RF_TXPA_G3 0x33 /* RF TX PA control */ 454554c0a3aSHans de Goede #define RF_TX_BIAS_A 0x35 455554c0a3aSHans de Goede #define RF_TX_BIAS_D 0x36 456554c0a3aSHans de Goede #define RF_LOBF_9 0x38 457554c0a3aSHans de Goede #define RF_RXRF_A3 0x3C /* */ 458554c0a3aSHans de Goede #define RF_TRSW 0x3F 459554c0a3aSHans de Goede 460554c0a3aSHans de Goede #define RF_TXRF_A2 0x41 461554c0a3aSHans de Goede #define RF_TXPA_G4 0x46 462554c0a3aSHans de Goede #define RF_TXPA_A4 0x4B 463554c0a3aSHans de Goede #define RF_0x52 0x52 464554c0a3aSHans de Goede #define RF_WE_LUT 0xEF 465554c0a3aSHans de Goede #define RF_S0S1 0xB0 466554c0a3aSHans de Goede 467554c0a3aSHans de Goede /* */ 468554c0a3aSHans de Goede /* Bit Mask */ 469554c0a3aSHans de Goede /* */ 470554c0a3aSHans de Goede /* 1. Page1(0x100) */ 471554c0a3aSHans de Goede #define bBBResetB 0x100 /* Useless now? */ 472554c0a3aSHans de Goede #define bGlobalResetB 0x200 473554c0a3aSHans de Goede #define bOFDMTxStart 0x4 474554c0a3aSHans de Goede #define bCCKTxStart 0x8 475554c0a3aSHans de Goede #define bCRC32Debug 0x100 476554c0a3aSHans de Goede #define bPMACLoopback 0x10 477554c0a3aSHans de Goede #define bTxLSIG 0xffffff 478554c0a3aSHans de Goede #define bOFDMTxRate 0xf 479554c0a3aSHans de Goede #define bOFDMTxReserved 0x10 480554c0a3aSHans de Goede #define bOFDMTxLength 0x1ffe0 481554c0a3aSHans de Goede #define bOFDMTxParity 0x20000 482554c0a3aSHans de Goede #define bTxHTSIG1 0xffffff 483554c0a3aSHans de Goede #define bTxHTMCSRate 0x7f 484554c0a3aSHans de Goede #define bTxHTBW 0x80 485554c0a3aSHans de Goede #define bTxHTLength 0xffff00 486554c0a3aSHans de Goede #define bTxHTSIG2 0xffffff 487554c0a3aSHans de Goede #define bTxHTSmoothing 0x1 488554c0a3aSHans de Goede #define bTxHTSounding 0x2 489554c0a3aSHans de Goede #define bTxHTReserved 0x4 490554c0a3aSHans de Goede #define bTxHTAggreation 0x8 491554c0a3aSHans de Goede #define bTxHTSTBC 0x30 492554c0a3aSHans de Goede #define bTxHTAdvanceCoding 0x40 493554c0a3aSHans de Goede #define bTxHTShortGI 0x80 494554c0a3aSHans de Goede #define bTxHTNumberHT_LTF 0x300 495554c0a3aSHans de Goede #define bTxHTCRC8 0x3fc00 496554c0a3aSHans de Goede #define bCounterReset 0x10000 497554c0a3aSHans de Goede #define bNumOfOFDMTx 0xffff 498554c0a3aSHans de Goede #define bNumOfCCKTx 0xffff0000 499554c0a3aSHans de Goede #define bTxIdleInterval 0xffff 500554c0a3aSHans de Goede #define bOFDMService 0xffff0000 501554c0a3aSHans de Goede #define bTxMACHeader 0xffffffff 502554c0a3aSHans de Goede #define bTxDataInit 0xff 503554c0a3aSHans de Goede #define bTxHTMode 0x100 504554c0a3aSHans de Goede #define bTxDataType 0x30000 505554c0a3aSHans de Goede #define bTxRandomSeed 0xffffffff 506554c0a3aSHans de Goede #define bCCKTxPreamble 0x1 507554c0a3aSHans de Goede #define bCCKTxSFD 0xffff0000 508554c0a3aSHans de Goede #define bCCKTxSIG 0xff 509554c0a3aSHans de Goede #define bCCKTxService 0xff00 510554c0a3aSHans de Goede #define bCCKLengthExt 0x8000 511554c0a3aSHans de Goede #define bCCKTxLength 0xffff0000 512554c0a3aSHans de Goede #define bCCKTxCRC16 0xffff 513554c0a3aSHans de Goede #define bCCKTxStatus 0x1 514554c0a3aSHans de Goede #define bOFDMTxStatus 0x2 515554c0a3aSHans de Goede 516554c0a3aSHans de Goede #define IS_BB_REG_OFFSET_92S(_Offset) ((_Offset >= 0x800) && (_Offset <= 0xfff)) 517554c0a3aSHans de Goede 518554c0a3aSHans de Goede /* 2. Page8(0x800) */ 519554c0a3aSHans de Goede #define bRFMOD 0x1 /* Reg 0x800 rFPGA0_RFMOD */ 520554c0a3aSHans de Goede #define bJapanMode 0x2 521554c0a3aSHans de Goede #define bCCKTxSC 0x30 522554c0a3aSHans de Goede #define bCCKEn 0x1000000 523554c0a3aSHans de Goede #define bOFDMEn 0x2000000 524554c0a3aSHans de Goede 525554c0a3aSHans de Goede #define bOFDMRxADCPhase 0x10000 /* Useless now */ 526554c0a3aSHans de Goede #define bOFDMTxDACPhase 0x40000 527554c0a3aSHans de Goede #define bXATxAGC 0x3f 528554c0a3aSHans de Goede 529554c0a3aSHans de Goede #define bAntennaSelect 0x0300 530554c0a3aSHans de Goede 531554c0a3aSHans de Goede #define bXBTxAGC 0xf00 /* Reg 80c rFPGA0_TxGainStage */ 532554c0a3aSHans de Goede #define bXCTxAGC 0xf000 533554c0a3aSHans de Goede #define bXDTxAGC 0xf0000 534554c0a3aSHans de Goede 535554c0a3aSHans de Goede #define bPAStart 0xf0000000 /* Useless now */ 536554c0a3aSHans de Goede #define bTRStart 0x00f00000 537554c0a3aSHans de Goede #define bRFStart 0x0000f000 538554c0a3aSHans de Goede #define bBBStart 0x000000f0 539554c0a3aSHans de Goede #define bBBCCKStart 0x0000000f 540554c0a3aSHans de Goede #define bPAEnd 0xf /* Reg0x814 */ 541554c0a3aSHans de Goede #define bTREnd 0x0f000000 542554c0a3aSHans de Goede #define bRFEnd 0x000f0000 543554c0a3aSHans de Goede #define bCCAMask 0x000000f0 /* T2R */ 544554c0a3aSHans de Goede #define bR2RCCAMask 0x00000f00 545554c0a3aSHans de Goede #define bHSSI_R2TDelay 0xf8000000 546554c0a3aSHans de Goede #define bHSSI_T2RDelay 0xf80000 547554c0a3aSHans de Goede #define bContTxHSSI 0x400 /* chane gain at continue Tx */ 548554c0a3aSHans de Goede #define bIGFromCCK 0x200 549554c0a3aSHans de Goede #define bAGCAddress 0x3f 550554c0a3aSHans de Goede #define bRxHPTx 0x7000 551554c0a3aSHans de Goede #define bRxHPT2R 0x38000 552554c0a3aSHans de Goede #define bRxHPCCKIni 0xc0000 553554c0a3aSHans de Goede #define bAGCTxCode 0xc00000 554554c0a3aSHans de Goede #define bAGCRxCode 0x300000 555554c0a3aSHans de Goede 556554c0a3aSHans de Goede #define b3WireDataLength 0x800 /* Reg 0x820~84f rFPGA0_XA_HSSIParameter1 */ 557554c0a3aSHans de Goede #define b3WireAddressLength 0x400 558554c0a3aSHans de Goede 559554c0a3aSHans de Goede #define b3WireRFPowerDown 0x1 /* Useless now */ 560554c0a3aSHans de Goede /* define bHWSISelect 0x8 */ 561554c0a3aSHans de Goede #define b5GPAPEPolarity 0x40000000 562554c0a3aSHans de Goede #define b2GPAPEPolarity 0x80000000 563554c0a3aSHans de Goede #define bRFSW_TxDefaultAnt 0x3 564554c0a3aSHans de Goede #define bRFSW_TxOptionAnt 0x30 565554c0a3aSHans de Goede #define bRFSW_RxDefaultAnt 0x300 566554c0a3aSHans de Goede #define bRFSW_RxOptionAnt 0x3000 567554c0a3aSHans de Goede #define bRFSI_3WireData 0x1 568554c0a3aSHans de Goede #define bRFSI_3WireClock 0x2 569554c0a3aSHans de Goede #define bRFSI_3WireLoad 0x4 570554c0a3aSHans de Goede #define bRFSI_3WireRW 0x8 571554c0a3aSHans de Goede #define bRFSI_3Wire 0xf 572554c0a3aSHans de Goede 573554c0a3aSHans de Goede #define bRFSI_RFENV 0x10 /* Reg 0x870 rFPGA0_XAB_RFInterfaceSW */ 574554c0a3aSHans de Goede 575554c0a3aSHans de Goede #define bRFSI_TRSW 0x20 /* Useless now */ 576554c0a3aSHans de Goede #define bRFSI_TRSWB 0x40 577554c0a3aSHans de Goede #define bRFSI_ANTSW 0x100 578554c0a3aSHans de Goede #define bRFSI_ANTSWB 0x200 579554c0a3aSHans de Goede #define bRFSI_PAPE 0x400 580554c0a3aSHans de Goede #define bRFSI_PAPE5G 0x800 581554c0a3aSHans de Goede #define bBandSelect 0x1 582554c0a3aSHans de Goede #define bHTSIG2_GI 0x80 583554c0a3aSHans de Goede #define bHTSIG2_Smoothing 0x01 584554c0a3aSHans de Goede #define bHTSIG2_Sounding 0x02 585554c0a3aSHans de Goede #define bHTSIG2_Aggreaton 0x08 586554c0a3aSHans de Goede #define bHTSIG2_STBC 0x30 587554c0a3aSHans de Goede #define bHTSIG2_AdvCoding 0x40 588554c0a3aSHans de Goede #define bHTSIG2_NumOfHTLTF 0x300 589554c0a3aSHans de Goede #define bHTSIG2_CRC8 0x3fc 590554c0a3aSHans de Goede #define bHTSIG1_MCS 0x7f 591554c0a3aSHans de Goede #define bHTSIG1_BandWidth 0x80 592554c0a3aSHans de Goede #define bHTSIG1_HTLength 0xffff 593554c0a3aSHans de Goede #define bLSIG_Rate 0xf 594554c0a3aSHans de Goede #define bLSIG_Reserved 0x10 595554c0a3aSHans de Goede #define bLSIG_Length 0x1fffe 596554c0a3aSHans de Goede #define bLSIG_Parity 0x20 597554c0a3aSHans de Goede #define bCCKRxPhase 0x4 598554c0a3aSHans de Goede 599554c0a3aSHans de Goede #define bLSSIReadAddress 0x7f800000 /* T65 RF */ 600554c0a3aSHans de Goede 601554c0a3aSHans de Goede #define bLSSIReadEdge 0x80000000 /* LSSI "Read" edge signal */ 602554c0a3aSHans de Goede 603554c0a3aSHans de Goede #define bLSSIReadBackData 0xfffff /* T65 RF */ 604554c0a3aSHans de Goede 605554c0a3aSHans de Goede #define bLSSIReadOKFlag 0x1000 /* Useless now */ 606554c0a3aSHans de Goede #define bCCKSampleRate 0x8 /* 0: 44MHz, 1:88MHz */ 607554c0a3aSHans de Goede #define bRegulator0Standby 0x1 608554c0a3aSHans de Goede #define bRegulatorPLLStandby 0x2 609554c0a3aSHans de Goede #define bRegulator1Standby 0x4 610554c0a3aSHans de Goede #define bPLLPowerUp 0x8 611554c0a3aSHans de Goede #define bDPLLPowerUp 0x10 612554c0a3aSHans de Goede #define bDA10PowerUp 0x20 613554c0a3aSHans de Goede #define bAD7PowerUp 0x200 614554c0a3aSHans de Goede #define bDA6PowerUp 0x2000 615554c0a3aSHans de Goede #define bXtalPowerUp 0x4000 616554c0a3aSHans de Goede #define b40MDClkPowerUP 0x8000 617554c0a3aSHans de Goede #define bDA6DebugMode 0x20000 618554c0a3aSHans de Goede #define bDA6Swing 0x380000 619554c0a3aSHans de Goede 620554c0a3aSHans de Goede #define bADClkPhase 0x4000000 /* Reg 0x880 rFPGA0_AnalogParameter1 20/40 CCK support switch 40/80 BB MHZ */ 621554c0a3aSHans de Goede 622554c0a3aSHans de Goede #define b80MClkDelay 0x18000000 /* Useless */ 623554c0a3aSHans de Goede #define bAFEWatchDogEnable 0x20000000 624554c0a3aSHans de Goede 625554c0a3aSHans de Goede #define bXtalCap01 0xc0000000 /* Reg 0x884 rFPGA0_AnalogParameter2 Crystal cap */ 626554c0a3aSHans de Goede #define bXtalCap23 0x3 627554c0a3aSHans de Goede #define bXtalCap92x 0x0f000000 628554c0a3aSHans de Goede #define bXtalCap 0x0f000000 629554c0a3aSHans de Goede 630554c0a3aSHans de Goede #define bIntDifClkEnable 0x400 /* Useless */ 631554c0a3aSHans de Goede #define bExtSigClkEnable 0x800 632554c0a3aSHans de Goede #define bBandgapMbiasPowerUp 0x10000 633554c0a3aSHans de Goede #define bAD11SHGain 0xc0000 634554c0a3aSHans de Goede #define bAD11InputRange 0x700000 635554c0a3aSHans de Goede #define bAD11OPCurrent 0x3800000 636554c0a3aSHans de Goede #define bIPathLoopback 0x4000000 637554c0a3aSHans de Goede #define bQPathLoopback 0x8000000 638554c0a3aSHans de Goede #define bAFELoopback 0x10000000 639554c0a3aSHans de Goede #define bDA10Swing 0x7e0 640554c0a3aSHans de Goede #define bDA10Reverse 0x800 641554c0a3aSHans de Goede #define bDAClkSource 0x1000 642554c0a3aSHans de Goede #define bAD7InputRange 0x6000 643554c0a3aSHans de Goede #define bAD7Gain 0x38000 644554c0a3aSHans de Goede #define bAD7OutputCMMode 0x40000 645554c0a3aSHans de Goede #define bAD7InputCMMode 0x380000 646554c0a3aSHans de Goede #define bAD7Current 0xc00000 647554c0a3aSHans de Goede #define bRegulatorAdjust 0x7000000 648554c0a3aSHans de Goede #define bAD11PowerUpAtTx 0x1 649554c0a3aSHans de Goede #define bDA10PSAtTx 0x10 650554c0a3aSHans de Goede #define bAD11PowerUpAtRx 0x100 651554c0a3aSHans de Goede #define bDA10PSAtRx 0x1000 652554c0a3aSHans de Goede #define bCCKRxAGCFormat 0x200 653554c0a3aSHans de Goede #define bPSDFFTSamplepPoint 0xc000 654554c0a3aSHans de Goede #define bPSDAverageNum 0x3000 655554c0a3aSHans de Goede #define bIQPathControl 0xc00 656554c0a3aSHans de Goede #define bPSDFreq 0x3ff 657554c0a3aSHans de Goede #define bPSDAntennaPath 0x30 658554c0a3aSHans de Goede #define bPSDIQSwitch 0x40 659554c0a3aSHans de Goede #define bPSDRxTrigger 0x400000 660554c0a3aSHans de Goede #define bPSDTxTrigger 0x80000000 661554c0a3aSHans de Goede #define bPSDSineToneScale 0x7f000000 662554c0a3aSHans de Goede #define bPSDReport 0xffff 663554c0a3aSHans de Goede 664554c0a3aSHans de Goede /* 3. Page9(0x900) */ 665554c0a3aSHans de Goede #define bOFDMTxSC 0x30000000 /* Useless */ 666554c0a3aSHans de Goede #define bCCKTxOn 0x1 667554c0a3aSHans de Goede #define bOFDMTxOn 0x2 668554c0a3aSHans de Goede #define bDebugPage 0xfff /* reset debug page and also HWord, LWord */ 669554c0a3aSHans de Goede #define bDebugItem 0xff /* reset debug page and LWord */ 670554c0a3aSHans de Goede #define bAntL 0x10 671554c0a3aSHans de Goede #define bAntNonHT 0x100 672554c0a3aSHans de Goede #define bAntHT1 0x1000 673554c0a3aSHans de Goede #define bAntHT2 0x10000 674554c0a3aSHans de Goede #define bAntHT1S1 0x100000 675554c0a3aSHans de Goede #define bAntNonHTS1 0x1000000 676554c0a3aSHans de Goede 677554c0a3aSHans de Goede /* 4. PageA(0xA00) */ 678554c0a3aSHans de Goede #define bCCKBBMode 0x3 /* Useless */ 679554c0a3aSHans de Goede #define bCCKTxPowerSaving 0x80 680554c0a3aSHans de Goede #define bCCKRxPowerSaving 0x40 681554c0a3aSHans de Goede 682554c0a3aSHans de Goede #define bCCKSideBand 0x10 /* Reg 0xa00 rCCK0_System 20/40 switch */ 683554c0a3aSHans de Goede 684554c0a3aSHans de Goede #define bCCKScramble 0x8 /* Useless */ 685554c0a3aSHans de Goede #define bCCKAntDiversity 0x8000 686554c0a3aSHans de Goede #define bCCKCarrierRecovery 0x4000 687554c0a3aSHans de Goede #define bCCKTxRate 0x3000 688554c0a3aSHans de Goede #define bCCKDCCancel 0x0800 689554c0a3aSHans de Goede #define bCCKISICancel 0x0400 690554c0a3aSHans de Goede #define bCCKMatchFilter 0x0200 691554c0a3aSHans de Goede #define bCCKEqualizer 0x0100 692554c0a3aSHans de Goede #define bCCKPreambleDetect 0x800000 693554c0a3aSHans de Goede #define bCCKFastFalseCCA 0x400000 694554c0a3aSHans de Goede #define bCCKChEstStart 0x300000 695554c0a3aSHans de Goede #define bCCKCCACount 0x080000 696554c0a3aSHans de Goede #define bCCKcs_lim 0x070000 697554c0a3aSHans de Goede #define bCCKBistMode 0x80000000 698554c0a3aSHans de Goede #define bCCKCCAMask 0x40000000 699554c0a3aSHans de Goede #define bCCKTxDACPhase 0x4 700554c0a3aSHans de Goede #define bCCKRxADCPhase 0x20000000 /* r_rx_clk */ 701554c0a3aSHans de Goede #define bCCKr_cp_mode0 0x0100 702554c0a3aSHans de Goede #define bCCKTxDCOffset 0xf0 703554c0a3aSHans de Goede #define bCCKRxDCOffset 0xf 704554c0a3aSHans de Goede #define bCCKCCAMode 0xc000 705554c0a3aSHans de Goede #define bCCKFalseCS_lim 0x3f00 706554c0a3aSHans de Goede #define bCCKCS_ratio 0xc00000 707554c0a3aSHans de Goede #define bCCKCorgBit_sel 0x300000 708554c0a3aSHans de Goede #define bCCKPD_lim 0x0f0000 709554c0a3aSHans de Goede #define bCCKNewCCA 0x80000000 710554c0a3aSHans de Goede #define bCCKRxHPofIG 0x8000 711554c0a3aSHans de Goede #define bCCKRxIG 0x7f00 712554c0a3aSHans de Goede #define bCCKLNAPolarity 0x800000 713554c0a3aSHans de Goede #define bCCKRx1stGain 0x7f0000 714554c0a3aSHans de Goede #define bCCKRFExtend 0x20000000 /* CCK Rx Iinital gain polarity */ 715554c0a3aSHans de Goede #define bCCKRxAGCSatLevel 0x1f000000 716554c0a3aSHans de Goede #define bCCKRxAGCSatCount 0xe0 717554c0a3aSHans de Goede #define bCCKRxRFSettle 0x1f /* AGCsamp_dly */ 718554c0a3aSHans de Goede #define bCCKFixedRxAGC 0x8000 719554c0a3aSHans de Goede #define bCCKAntennaPolarity 0x2000 720554c0a3aSHans de Goede #define bCCKTxFilterType 0x0c00 721554c0a3aSHans de Goede #define bCCKRxAGCReportType 0x0300 722554c0a3aSHans de Goede #define bCCKRxDAGCEn 0x80000000 723554c0a3aSHans de Goede #define bCCKRxDAGCPeriod 0x20000000 724554c0a3aSHans de Goede #define bCCKRxDAGCSatLevel 0x1f000000 725554c0a3aSHans de Goede #define bCCKTimingRecovery 0x800000 726554c0a3aSHans de Goede #define bCCKTxC0 0x3f0000 727554c0a3aSHans de Goede #define bCCKTxC1 0x3f000000 728554c0a3aSHans de Goede #define bCCKTxC2 0x3f 729554c0a3aSHans de Goede #define bCCKTxC3 0x3f00 730554c0a3aSHans de Goede #define bCCKTxC4 0x3f0000 731554c0a3aSHans de Goede #define bCCKTxC5 0x3f000000 732554c0a3aSHans de Goede #define bCCKTxC6 0x3f 733554c0a3aSHans de Goede #define bCCKTxC7 0x3f00 734554c0a3aSHans de Goede #define bCCKDebugPort 0xff0000 735554c0a3aSHans de Goede #define bCCKDACDebug 0x0f000000 736554c0a3aSHans de Goede #define bCCKFalseAlarmEnable 0x8000 737554c0a3aSHans de Goede #define bCCKFalseAlarmRead 0x4000 738554c0a3aSHans de Goede #define bCCKTRSSI 0x7f 739554c0a3aSHans de Goede #define bCCKRxAGCReport 0xfe 740554c0a3aSHans de Goede #define bCCKRxReport_AntSel 0x80000000 741554c0a3aSHans de Goede #define bCCKRxReport_MFOff 0x40000000 742554c0a3aSHans de Goede #define bCCKRxRxReport_SQLoss 0x20000000 743554c0a3aSHans de Goede #define bCCKRxReport_Pktloss 0x10000000 744554c0a3aSHans de Goede #define bCCKRxReport_Lockedbit 0x08000000 745554c0a3aSHans de Goede #define bCCKRxReport_RateError 0x04000000 746554c0a3aSHans de Goede #define bCCKRxReport_RxRate 0x03000000 747554c0a3aSHans de Goede #define bCCKRxFACounterLower 0xff 748554c0a3aSHans de Goede #define bCCKRxFACounterUpper 0xff000000 749554c0a3aSHans de Goede #define bCCKRxHPAGCStart 0xe000 750554c0a3aSHans de Goede #define bCCKRxHPAGCFinal 0x1c00 751554c0a3aSHans de Goede #define bCCKRxFalseAlarmEnable 0x8000 752554c0a3aSHans de Goede #define bCCKFACounterFreeze 0x4000 753554c0a3aSHans de Goede #define bCCKTxPathSel 0x10000000 754554c0a3aSHans de Goede #define bCCKDefaultRxPath 0xc000000 755554c0a3aSHans de Goede #define bCCKOptionRxPath 0x3000000 756554c0a3aSHans de Goede 757554c0a3aSHans de Goede /* 5. PageC(0xC00) */ 758554c0a3aSHans de Goede #define bNumOfSTF 0x3 /* Useless */ 759554c0a3aSHans de Goede #define bShift_L 0xc0 760554c0a3aSHans de Goede #define bGI_TH 0xc 761554c0a3aSHans de Goede #define bRxPathA 0x1 762554c0a3aSHans de Goede #define bRxPathB 0x2 763554c0a3aSHans de Goede #define bRxPathC 0x4 764554c0a3aSHans de Goede #define bRxPathD 0x8 765554c0a3aSHans de Goede #define bTxPathA 0x1 766554c0a3aSHans de Goede #define bTxPathB 0x2 767554c0a3aSHans de Goede #define bTxPathC 0x4 768554c0a3aSHans de Goede #define bTxPathD 0x8 769554c0a3aSHans de Goede #define bTRSSIFreq 0x200 770554c0a3aSHans de Goede #define bADCBackoff 0x3000 771554c0a3aSHans de Goede #define bDFIRBackoff 0xc000 772554c0a3aSHans de Goede #define bTRSSILatchPhase 0x10000 773554c0a3aSHans de Goede #define bRxIDCOffset 0xff 774554c0a3aSHans de Goede #define bRxQDCOffset 0xff00 775554c0a3aSHans de Goede #define bRxDFIRMode 0x1800000 776554c0a3aSHans de Goede #define bRxDCNFType 0xe000000 777554c0a3aSHans de Goede #define bRXIQImb_A 0x3ff 778554c0a3aSHans de Goede #define bRXIQImb_B 0xfc00 779554c0a3aSHans de Goede #define bRXIQImb_C 0x3f0000 780554c0a3aSHans de Goede #define bRXIQImb_D 0xffc00000 781554c0a3aSHans de Goede #define bDC_dc_Notch 0x60000 782554c0a3aSHans de Goede #define bRxNBINotch 0x1f000000 783554c0a3aSHans de Goede #define bPD_TH 0xf 784554c0a3aSHans de Goede #define bPD_TH_Opt2 0xc000 785554c0a3aSHans de Goede #define bPWED_TH 0x700 786554c0a3aSHans de Goede #define bIfMF_Win_L 0x800 787554c0a3aSHans de Goede #define bPD_Option 0x1000 788554c0a3aSHans de Goede #define bMF_Win_L 0xe000 789554c0a3aSHans de Goede #define bBW_Search_L 0x30000 790554c0a3aSHans de Goede #define bwin_enh_L 0xc0000 791554c0a3aSHans de Goede #define bBW_TH 0x700000 792554c0a3aSHans de Goede #define bED_TH2 0x3800000 793554c0a3aSHans de Goede #define bBW_option 0x4000000 794554c0a3aSHans de Goede #define bRatio_TH 0x18000000 795554c0a3aSHans de Goede #define bWindow_L 0xe0000000 796554c0a3aSHans de Goede #define bSBD_Option 0x1 797554c0a3aSHans de Goede #define bFrame_TH 0x1c 798554c0a3aSHans de Goede #define bFS_Option 0x60 799554c0a3aSHans de Goede #define bDC_Slope_check 0x80 800554c0a3aSHans de Goede #define bFGuard_Counter_DC_L 0xe00 801554c0a3aSHans de Goede #define bFrame_Weight_Short 0x7000 802554c0a3aSHans de Goede #define bSub_Tune 0xe00000 803554c0a3aSHans de Goede #define bFrame_DC_Length 0xe000000 804554c0a3aSHans de Goede #define bSBD_start_offset 0x30000000 805554c0a3aSHans de Goede #define bFrame_TH_2 0x7 806554c0a3aSHans de Goede #define bFrame_GI2_TH 0x38 807554c0a3aSHans de Goede #define bGI2_Sync_en 0x40 808554c0a3aSHans de Goede #define bSarch_Short_Early 0x300 809554c0a3aSHans de Goede #define bSarch_Short_Late 0xc00 810554c0a3aSHans de Goede #define bSarch_GI2_Late 0x70000 811554c0a3aSHans de Goede #define bCFOAntSum 0x1 812554c0a3aSHans de Goede #define bCFOAcc 0x2 813554c0a3aSHans de Goede #define bCFOStartOffset 0xc 814554c0a3aSHans de Goede #define bCFOLookBack 0x70 815554c0a3aSHans de Goede #define bCFOSumWeight 0x80 816554c0a3aSHans de Goede #define bDAGCEnable 0x10000 817554c0a3aSHans de Goede #define bTXIQImb_A 0x3ff 818554c0a3aSHans de Goede #define bTXIQImb_B 0xfc00 819554c0a3aSHans de Goede #define bTXIQImb_C 0x3f0000 820554c0a3aSHans de Goede #define bTXIQImb_D 0xffc00000 821554c0a3aSHans de Goede #define bTxIDCOffset 0xff 822554c0a3aSHans de Goede #define bTxQDCOffset 0xff00 823554c0a3aSHans de Goede #define bTxDFIRMode 0x10000 824554c0a3aSHans de Goede #define bTxPesudoNoiseOn 0x4000000 825554c0a3aSHans de Goede #define bTxPesudoNoise_A 0xff 826554c0a3aSHans de Goede #define bTxPesudoNoise_B 0xff00 827554c0a3aSHans de Goede #define bTxPesudoNoise_C 0xff0000 828554c0a3aSHans de Goede #define bTxPesudoNoise_D 0xff000000 829554c0a3aSHans de Goede #define bCCADropOption 0x20000 830554c0a3aSHans de Goede #define bCCADropThres 0xfff00000 831554c0a3aSHans de Goede #define bEDCCA_H 0xf 832554c0a3aSHans de Goede #define bEDCCA_L 0xf0 833554c0a3aSHans de Goede #define bLambda_ED 0x300 834554c0a3aSHans de Goede #define bRxInitialGain 0x7f 835554c0a3aSHans de Goede #define bRxAntDivEn 0x80 836554c0a3aSHans de Goede #define bRxAGCAddressForLNA 0x7f00 837554c0a3aSHans de Goede #define bRxHighPowerFlow 0x8000 838554c0a3aSHans de Goede #define bRxAGCFreezeThres 0xc0000 839554c0a3aSHans de Goede #define bRxFreezeStep_AGC1 0x300000 840554c0a3aSHans de Goede #define bRxFreezeStep_AGC2 0xc00000 841554c0a3aSHans de Goede #define bRxFreezeStep_AGC3 0x3000000 842554c0a3aSHans de Goede #define bRxFreezeStep_AGC0 0xc000000 843554c0a3aSHans de Goede #define bRxRssi_Cmp_En 0x10000000 844554c0a3aSHans de Goede #define bRxQuickAGCEn 0x20000000 845554c0a3aSHans de Goede #define bRxAGCFreezeThresMode 0x40000000 846554c0a3aSHans de Goede #define bRxOverFlowCheckType 0x80000000 847554c0a3aSHans de Goede #define bRxAGCShift 0x7f 848554c0a3aSHans de Goede #define bTRSW_Tri_Only 0x80 849554c0a3aSHans de Goede #define bPowerThres 0x300 850554c0a3aSHans de Goede #define bRxAGCEn 0x1 851554c0a3aSHans de Goede #define bRxAGCTogetherEn 0x2 852554c0a3aSHans de Goede #define bRxAGCMin 0x4 853554c0a3aSHans de Goede #define bRxHP_Ini 0x7 854554c0a3aSHans de Goede #define bRxHP_TRLNA 0x70 855554c0a3aSHans de Goede #define bRxHP_RSSI 0x700 856554c0a3aSHans de Goede #define bRxHP_BBP1 0x7000 857554c0a3aSHans de Goede #define bRxHP_BBP2 0x70000 858554c0a3aSHans de Goede #define bRxHP_BBP3 0x700000 859554c0a3aSHans de Goede #define bRSSI_H 0x7f0000 /* the threshold for high power */ 860554c0a3aSHans de Goede #define bRSSI_Gen 0x7f000000 /* the threshold for ant diversity */ 861554c0a3aSHans de Goede #define bRxSettle_TRSW 0x7 862554c0a3aSHans de Goede #define bRxSettle_LNA 0x38 863554c0a3aSHans de Goede #define bRxSettle_RSSI 0x1c0 864554c0a3aSHans de Goede #define bRxSettle_BBP 0xe00 865554c0a3aSHans de Goede #define bRxSettle_RxHP 0x7000 866554c0a3aSHans de Goede #define bRxSettle_AntSW_RSSI 0x38000 867554c0a3aSHans de Goede #define bRxSettle_AntSW 0xc0000 868554c0a3aSHans de Goede #define bRxProcessTime_DAGC 0x300000 869554c0a3aSHans de Goede #define bRxSettle_HSSI 0x400000 870554c0a3aSHans de Goede #define bRxProcessTime_BBPPW 0x800000 871554c0a3aSHans de Goede #define bRxAntennaPowerShift 0x3000000 872554c0a3aSHans de Goede #define bRSSITableSelect 0xc000000 873554c0a3aSHans de Goede #define bRxHP_Final 0x7000000 874554c0a3aSHans de Goede #define bRxHTSettle_BBP 0x7 875554c0a3aSHans de Goede #define bRxHTSettle_HSSI 0x8 876554c0a3aSHans de Goede #define bRxHTSettle_RxHP 0x70 877554c0a3aSHans de Goede #define bRxHTSettle_BBPPW 0x80 878554c0a3aSHans de Goede #define bRxHTSettle_Idle 0x300 879554c0a3aSHans de Goede #define bRxHTSettle_Reserved 0x1c00 880554c0a3aSHans de Goede #define bRxHTRxHPEn 0x8000 881554c0a3aSHans de Goede #define bRxHTAGCFreezeThres 0x30000 882554c0a3aSHans de Goede #define bRxHTAGCTogetherEn 0x40000 883554c0a3aSHans de Goede #define bRxHTAGCMin 0x80000 884554c0a3aSHans de Goede #define bRxHTAGCEn 0x100000 885554c0a3aSHans de Goede #define bRxHTDAGCEn 0x200000 886554c0a3aSHans de Goede #define bRxHTRxHP_BBP 0x1c00000 887554c0a3aSHans de Goede #define bRxHTRxHP_Final 0xe0000000 888554c0a3aSHans de Goede #define bRxPWRatioTH 0x3 889554c0a3aSHans de Goede #define bRxPWRatioEn 0x4 890554c0a3aSHans de Goede #define bRxMFHold 0x3800 891554c0a3aSHans de Goede #define bRxPD_Delay_TH1 0x38 892554c0a3aSHans de Goede #define bRxPD_Delay_TH2 0x1c0 893554c0a3aSHans de Goede #define bRxPD_DC_COUNT_MAX 0x600 894554c0a3aSHans de Goede /* define bRxMF_Hold 0x3800 */ 895554c0a3aSHans de Goede #define bRxPD_Delay_TH 0x8000 896554c0a3aSHans de Goede #define bRxProcess_Delay 0xf0000 897554c0a3aSHans de Goede #define bRxSearchrange_GI2_Early 0x700000 898554c0a3aSHans de Goede #define bRxFrame_Guard_Counter_L 0x3800000 899554c0a3aSHans de Goede #define bRxSGI_Guard_L 0xc000000 900554c0a3aSHans de Goede #define bRxSGI_Search_L 0x30000000 901554c0a3aSHans de Goede #define bRxSGI_TH 0xc0000000 902554c0a3aSHans de Goede #define bDFSCnt0 0xff 903554c0a3aSHans de Goede #define bDFSCnt1 0xff00 904554c0a3aSHans de Goede #define bDFSFlag 0xf0000 905554c0a3aSHans de Goede #define bMFWeightSum 0x300000 906554c0a3aSHans de Goede #define bMinIdxTH 0x7f000000 907554c0a3aSHans de Goede #define bDAFormat 0x40000 908554c0a3aSHans de Goede #define bTxChEmuEnable 0x01000000 909554c0a3aSHans de Goede #define bTRSWIsolation_A 0x7f 910554c0a3aSHans de Goede #define bTRSWIsolation_B 0x7f00 911554c0a3aSHans de Goede #define bTRSWIsolation_C 0x7f0000 912554c0a3aSHans de Goede #define bTRSWIsolation_D 0x7f000000 913554c0a3aSHans de Goede #define bExtLNAGain 0x7c00 914554c0a3aSHans de Goede 915554c0a3aSHans de Goede /* 6. PageE(0xE00) */ 916554c0a3aSHans de Goede #define bSTBCEn 0x4 /* Useless */ 917554c0a3aSHans de Goede #define bAntennaMapping 0x10 918554c0a3aSHans de Goede #define bNss 0x20 919554c0a3aSHans de Goede #define bCFOAntSumD 0x200 920554c0a3aSHans de Goede #define bPHYCounterReset 0x8000000 921554c0a3aSHans de Goede #define bCFOReportGet 0x4000000 922554c0a3aSHans de Goede #define bOFDMContinueTx 0x10000000 923554c0a3aSHans de Goede #define bOFDMSingleCarrier 0x20000000 924554c0a3aSHans de Goede #define bOFDMSingleTone 0x40000000 925554c0a3aSHans de Goede /* define bRxPath1 0x01 */ 926554c0a3aSHans de Goede /* define bRxPath2 0x02 */ 927554c0a3aSHans de Goede /* define bRxPath3 0x04 */ 928554c0a3aSHans de Goede /* define bRxPath4 0x08 */ 929554c0a3aSHans de Goede /* define bTxPath1 0x10 */ 930554c0a3aSHans de Goede /* define bTxPath2 0x20 */ 931554c0a3aSHans de Goede #define bHTDetect 0x100 932554c0a3aSHans de Goede #define bCFOEn 0x10000 933554c0a3aSHans de Goede #define bCFOValue 0xfff00000 934554c0a3aSHans de Goede #define bSigTone_Re 0x3f 935554c0a3aSHans de Goede #define bSigTone_Im 0x7f00 936554c0a3aSHans de Goede #define bCounter_CCA 0xffff 937554c0a3aSHans de Goede #define bCounter_ParityFail 0xffff0000 938554c0a3aSHans de Goede #define bCounter_RateIllegal 0xffff 939554c0a3aSHans de Goede #define bCounter_CRC8Fail 0xffff0000 940554c0a3aSHans de Goede #define bCounter_MCSNoSupport 0xffff 941554c0a3aSHans de Goede #define bCounter_FastSync 0xffff 942554c0a3aSHans de Goede #define bShortCFO 0xfff 943554c0a3aSHans de Goede #define bShortCFOTLength 12 /* total */ 944554c0a3aSHans de Goede #define bShortCFOFLength 11 /* fraction */ 945554c0a3aSHans de Goede #define bLongCFO 0x7ff 946554c0a3aSHans de Goede #define bLongCFOTLength 11 947554c0a3aSHans de Goede #define bLongCFOFLength 11 948554c0a3aSHans de Goede #define bTailCFO 0x1fff 949554c0a3aSHans de Goede #define bTailCFOTLength 13 950554c0a3aSHans de Goede #define bTailCFOFLength 12 951554c0a3aSHans de Goede #define bmax_en_pwdB 0xffff 952554c0a3aSHans de Goede #define bCC_power_dB 0xffff0000 953554c0a3aSHans de Goede #define bnoise_pwdB 0xffff 954554c0a3aSHans de Goede #define bPowerMeasTLength 10 955554c0a3aSHans de Goede #define bPowerMeasFLength 3 956554c0a3aSHans de Goede #define bRx_HT_BW 0x1 957554c0a3aSHans de Goede #define bRxSC 0x6 958554c0a3aSHans de Goede #define bRx_HT 0x8 959554c0a3aSHans de Goede #define bNB_intf_det_on 0x1 960554c0a3aSHans de Goede #define bIntf_win_len_cfg 0x30 961554c0a3aSHans de Goede #define bNB_Intf_TH_cfg 0x1c0 962554c0a3aSHans de Goede #define bRFGain 0x3f 963554c0a3aSHans de Goede #define bTableSel 0x40 964554c0a3aSHans de Goede #define bTRSW 0x80 965554c0a3aSHans de Goede #define bRxSNR_A 0xff 966554c0a3aSHans de Goede #define bRxSNR_B 0xff00 967554c0a3aSHans de Goede #define bRxSNR_C 0xff0000 968554c0a3aSHans de Goede #define bRxSNR_D 0xff000000 969554c0a3aSHans de Goede #define bSNREVMTLength 8 970554c0a3aSHans de Goede #define bSNREVMFLength 1 971554c0a3aSHans de Goede #define bCSI1st 0xff 972554c0a3aSHans de Goede #define bCSI2nd 0xff00 973554c0a3aSHans de Goede #define bRxEVM1st 0xff0000 974554c0a3aSHans de Goede #define bRxEVM2nd 0xff000000 975554c0a3aSHans de Goede #define bSIGEVM 0xff 976554c0a3aSHans de Goede #define bPWDB 0xff00 977554c0a3aSHans de Goede #define bSGIEN 0x10000 978554c0a3aSHans de Goede 979554c0a3aSHans de Goede #define bSFactorQAM1 0xf /* Useless */ 980554c0a3aSHans de Goede #define bSFactorQAM2 0xf0 981554c0a3aSHans de Goede #define bSFactorQAM3 0xf00 982554c0a3aSHans de Goede #define bSFactorQAM4 0xf000 983554c0a3aSHans de Goede #define bSFactorQAM5 0xf0000 984554c0a3aSHans de Goede #define bSFactorQAM6 0xf0000 985554c0a3aSHans de Goede #define bSFactorQAM7 0xf00000 986554c0a3aSHans de Goede #define bSFactorQAM8 0xf000000 987554c0a3aSHans de Goede #define bSFactorQAM9 0xf0000000 988554c0a3aSHans de Goede #define bCSIScheme 0x100000 989554c0a3aSHans de Goede 990554c0a3aSHans de Goede #define bNoiseLvlTopSet 0x3 /* Useless */ 991554c0a3aSHans de Goede #define bChSmooth 0x4 992554c0a3aSHans de Goede #define bChSmoothCfg1 0x38 993554c0a3aSHans de Goede #define bChSmoothCfg2 0x1c0 994554c0a3aSHans de Goede #define bChSmoothCfg3 0xe00 995554c0a3aSHans de Goede #define bChSmoothCfg4 0x7000 996554c0a3aSHans de Goede #define bMRCMode 0x800000 997554c0a3aSHans de Goede #define bTHEVMCfg 0x7000000 998554c0a3aSHans de Goede 999554c0a3aSHans de Goede #define bLoopFitType 0x1 /* Useless */ 1000554c0a3aSHans de Goede #define bUpdCFO 0x40 1001554c0a3aSHans de Goede #define bUpdCFOOffData 0x80 1002554c0a3aSHans de Goede #define bAdvUpdCFO 0x100 1003554c0a3aSHans de Goede #define bAdvTimeCtrl 0x800 1004554c0a3aSHans de Goede #define bUpdClko 0x1000 1005554c0a3aSHans de Goede #define bFC 0x6000 1006554c0a3aSHans de Goede #define bTrackingMode 0x8000 1007554c0a3aSHans de Goede #define bPhCmpEnable 0x10000 1008554c0a3aSHans de Goede #define bUpdClkoLTF 0x20000 1009554c0a3aSHans de Goede #define bComChCFO 0x40000 1010554c0a3aSHans de Goede #define bCSIEstiMode 0x80000 1011554c0a3aSHans de Goede #define bAdvUpdEqz 0x100000 1012554c0a3aSHans de Goede #define bUChCfg 0x7000000 1013554c0a3aSHans de Goede #define bUpdEqz 0x8000000 1014554c0a3aSHans de Goede 1015554c0a3aSHans de Goede /* Rx Pseduo noise */ 1016554c0a3aSHans de Goede #define bRxPesudoNoiseOn 0x20000000 /* Useless */ 1017554c0a3aSHans de Goede #define bRxPesudoNoise_A 0xff 1018554c0a3aSHans de Goede #define bRxPesudoNoise_B 0xff00 1019554c0a3aSHans de Goede #define bRxPesudoNoise_C 0xff0000 1020554c0a3aSHans de Goede #define bRxPesudoNoise_D 0xff000000 1021554c0a3aSHans de Goede #define bPesudoNoiseState_A 0xffff 1022554c0a3aSHans de Goede #define bPesudoNoiseState_B 0xffff0000 1023554c0a3aSHans de Goede #define bPesudoNoiseState_C 0xffff 1024554c0a3aSHans de Goede #define bPesudoNoiseState_D 0xffff0000 1025554c0a3aSHans de Goede 1026554c0a3aSHans de Goede /* 7. RF Register */ 1027554c0a3aSHans de Goede /* Zebra1 */ 1028554c0a3aSHans de Goede #define bZebra1_HSSIEnable 0x8 /* Useless */ 1029554c0a3aSHans de Goede #define bZebra1_TRxControl 0xc00 1030554c0a3aSHans de Goede #define bZebra1_TRxGainSetting 0x07f 1031554c0a3aSHans de Goede #define bZebra1_RxCorner 0xc00 1032554c0a3aSHans de Goede #define bZebra1_TxChargePump 0x38 1033554c0a3aSHans de Goede #define bZebra1_RxChargePump 0x7 1034554c0a3aSHans de Goede #define bZebra1_ChannelNum 0xf80 1035554c0a3aSHans de Goede #define bZebra1_TxLPFBW 0x400 1036554c0a3aSHans de Goede #define bZebra1_RxLPFBW 0x600 1037554c0a3aSHans de Goede 1038554c0a3aSHans de Goede /* Zebra4 */ 1039554c0a3aSHans de Goede #define bRTL8256RegModeCtrl1 0x100 /* Useless */ 1040554c0a3aSHans de Goede #define bRTL8256RegModeCtrl0 0x40 1041554c0a3aSHans de Goede #define bRTL8256_TxLPFBW 0x18 1042554c0a3aSHans de Goede #define bRTL8256_RxLPFBW 0x600 1043554c0a3aSHans de Goede 1044554c0a3aSHans de Goede /* RTL8258 */ 1045554c0a3aSHans de Goede #define bRTL8258_TxLPFBW 0xc /* Useless */ 1046554c0a3aSHans de Goede #define bRTL8258_RxLPFBW 0xc00 1047554c0a3aSHans de Goede #define bRTL8258_RSSILPFBW 0xc0 1048554c0a3aSHans de Goede 1049554c0a3aSHans de Goede 1050554c0a3aSHans de Goede /* */ 1051554c0a3aSHans de Goede /* Other Definition */ 1052554c0a3aSHans de Goede /* */ 1053554c0a3aSHans de Goede 1054554c0a3aSHans de Goede /* byte endable for sb_write */ 1055554c0a3aSHans de Goede #define bByte0 0x1 /* Useless */ 1056554c0a3aSHans de Goede #define bByte1 0x2 1057554c0a3aSHans de Goede #define bByte2 0x4 1058554c0a3aSHans de Goede #define bByte3 0x8 1059554c0a3aSHans de Goede #define bWord0 0x3 1060554c0a3aSHans de Goede #define bWord1 0xc 1061554c0a3aSHans de Goede #define bDWord 0xf 1062554c0a3aSHans de Goede 1063554c0a3aSHans de Goede /* for PutRegsetting & GetRegSetting BitMask */ 1064554c0a3aSHans de Goede #define bMaskByte0 0xff /* Reg 0xc50 rOFDM0_XAAGCCore~0xC6f */ 1065554c0a3aSHans de Goede #define bMaskByte1 0xff00 1066554c0a3aSHans de Goede #define bMaskByte2 0xff0000 1067554c0a3aSHans de Goede #define bMaskByte3 0xff000000 1068554c0a3aSHans de Goede #define bMaskHWord 0xffff0000 1069554c0a3aSHans de Goede #define bMaskLWord 0x0000ffff 1070554c0a3aSHans de Goede #define bMaskDWord 0xffffffff 1071554c0a3aSHans de Goede #define bMaskH3Bytes 0xffffff00 1072554c0a3aSHans de Goede #define bMask12Bits 0xfff 1073554c0a3aSHans de Goede #define bMaskH4Bits 0xf0000000 1074554c0a3aSHans de Goede #define bMaskOFDM_D 0xffc00000 1075554c0a3aSHans de Goede #define bMaskCCK 0x3f3f3f3f 1076554c0a3aSHans de Goede 1077554c0a3aSHans de Goede 1078554c0a3aSHans de Goede #define bEnable 0x1 /* Useless */ 1079554c0a3aSHans de Goede #define bDisable 0x0 1080554c0a3aSHans de Goede 1081554c0a3aSHans de Goede #define LeftAntenna 0x0 /* Useless */ 1082554c0a3aSHans de Goede #define RightAntenna 0x1 1083554c0a3aSHans de Goede 1084554c0a3aSHans de Goede #define tCheckTxStatus 500 /* 500ms Useless */ 1085554c0a3aSHans de Goede #define tUpdateRxCounter 100 /* 100ms */ 1086554c0a3aSHans de Goede 1087554c0a3aSHans de Goede #define rateCCK 0 /* Useless */ 1088554c0a3aSHans de Goede #define rateOFDM 1 1089554c0a3aSHans de Goede #define rateHT 2 1090554c0a3aSHans de Goede 1091554c0a3aSHans de Goede /* define Register-End */ 1092554c0a3aSHans de Goede #define bPMAC_End 0x1ff /* Useless */ 1093554c0a3aSHans de Goede #define bFPGAPHY0_End 0x8ff 1094554c0a3aSHans de Goede #define bFPGAPHY1_End 0x9ff 1095554c0a3aSHans de Goede #define bCCKPHY0_End 0xaff 1096554c0a3aSHans de Goede #define bOFDMPHY0_End 0xcff 1097554c0a3aSHans de Goede #define bOFDMPHY1_End 0xdff 1098554c0a3aSHans de Goede 1099554c0a3aSHans de Goede /* define max debug item in each debug page */ 1100554c0a3aSHans de Goede /* define bMaxItem_FPGA_PHY0 0x9 */ 1101554c0a3aSHans de Goede /* define bMaxItem_FPGA_PHY1 0x3 */ 1102554c0a3aSHans de Goede /* define bMaxItem_PHY_11B 0x16 */ 1103554c0a3aSHans de Goede /* define bMaxItem_OFDM_PHY0 0x29 */ 1104554c0a3aSHans de Goede /* define bMaxItem_OFDM_PHY1 0x0 */ 1105554c0a3aSHans de Goede 1106554c0a3aSHans de Goede #define bPMACControl 0x0 /* Useless */ 1107554c0a3aSHans de Goede #define bWMACControl 0x1 1108554c0a3aSHans de Goede #define bWNICControl 0x2 1109554c0a3aSHans de Goede 1110554c0a3aSHans de Goede #define PathA 0x0 /* Useless */ 1111554c0a3aSHans de Goede #define PathB 0x1 1112554c0a3aSHans de Goede #define PathC 0x2 1113554c0a3aSHans de Goede #define PathD 0x3 1114554c0a3aSHans de Goede 1115554c0a3aSHans de Goede /*--------------------------Define Parameters-------------------------------*/ 1116554c0a3aSHans de Goede 1117554c0a3aSHans de Goede 1118554c0a3aSHans de Goede #endif /* __INC_HAL8192SPHYREG_H */ 1119