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