Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / drivers / staging / rtl8192u / r819xU_phyreg.h
diff --git a/kernel/drivers/staging/rtl8192u/r819xU_phyreg.h b/kernel/drivers/staging/rtl8192u/r819xU_phyreg.h
new file mode 100644 (file)
index 0000000..b855627
--- /dev/null
@@ -0,0 +1,878 @@
+#ifndef _R819XU_PHYREG_H
+#define _R819XU_PHYREG_H
+
+
+#define   RF_DATA                              0x1d4                                   /* FW will write RF data in the register.*/
+
+/* Register duplicate register due to connection: RF_Mode, TRxRN, NumOf L-STF
+ * page 1
+ */
+#define rPMAC_Reset                            0x100
+#define rPMAC_TxStart                          0x104
+#define rPMAC_TxLegacySIG                      0x108
+#define rPMAC_TxHTSIG1                         0x10c
+#define rPMAC_TxHTSIG2                         0x110
+#define rPMAC_PHYDebug                         0x114
+#define rPMAC_TxPacketNum                      0x118
+#define rPMAC_TxIdle                           0x11c
+#define rPMAC_TxMACHeader0             0x120
+#define rPMAC_TxMACHeader1             0x124
+#define rPMAC_TxMACHeader2             0x128
+#define rPMAC_TxMACHeader3             0x12c
+#define rPMAC_TxMACHeader4             0x130
+#define rPMAC_TxMACHeader5             0x134
+#define rPMAC_TxDataType                       0x138
+#define rPMAC_TxRandomSeed                     0x13c
+#define rPMAC_CCKPLCPPreamble          0x140
+#define rPMAC_CCKPLCPHeader                    0x144
+#define rPMAC_CCKCRC16                         0x148
+#define rPMAC_OFDMRxCRC32OK            0x170
+#define rPMAC_OFDMRxCRC32Er            0x174
+#define rPMAC_OFDMRxParityEr                   0x178
+#define rPMAC_OFDMRxCRC8Er             0x17c
+#define rPMAC_CCKCRxRC16Er                     0x180
+#define rPMAC_CCKCRxRC32Er                     0x184
+#define rPMAC_CCKCRxRC32OK                     0x188
+#define rPMAC_TxStatus                         0x18c
+
+/* page8 */
+#define rFPGA0_RFMOD                           0x800  /* RF mode & CCK TxSC */
+#define rFPGA0_TxInfo                          0x804
+#define rFPGA0_PSDFunction                     0x808
+#define rFPGA0_TxGainStage                     0x80c
+#define rFPGA0_RFTiming1                       0x810
+#define rFPGA0_RFTiming2                       0x814
+/* #define rFPGA0_XC_RFTiming                  0x818
+ * #define rFPGA0_XD_RFTiming                  0x81c
+ */
+#define rFPGA0_XA_HSSIParameter1       0x820
+#define rFPGA0_XA_HSSIParameter2       0x824
+#define rFPGA0_XB_HSSIParameter1       0x828
+#define rFPGA0_XB_HSSIParameter2       0x82c
+#define rFPGA0_XC_HSSIParameter1       0x830
+#define rFPGA0_XC_HSSIParameter2       0x834
+#define rFPGA0_XD_HSSIParameter1       0x838
+#define rFPGA0_XD_HSSIParameter2       0x83c
+#define rFPGA0_XA_LSSIParameter                0x840
+#define rFPGA0_XB_LSSIParameter                0x844
+#define rFPGA0_XC_LSSIParameter                0x848
+#define rFPGA0_XD_LSSIParameter                0x84c
+#define rFPGA0_RFWakeUpParameter       0x850
+#define rFPGA0_RFSleepUpParameter      0x854
+#define rFPGA0_XAB_SwitchControl       0x858
+#define rFPGA0_XCD_SwitchControl       0x85c
+#define rFPGA0_XA_RFInterfaceOE                0x860
+#define rFPGA0_XB_RFInterfaceOE                0x864
+#define rFPGA0_XC_RFInterfaceOE                0x868
+#define rFPGA0_XD_RFInterfaceOE                0x86c
+#define rFPGA0_XAB_RFInterfaceSW       0x870
+#define rFPGA0_XCD_RFInterfaceSW       0x874
+#define rFPGA0_XAB_RFParameter         0x878
+#define rFPGA0_XCD_RFParameter         0x87c
+#define rFPGA0_AnalogParameter1                0x880
+#define rFPGA0_AnalogParameter2                0x884
+#define rFPGA0_AnalogParameter3                0x888
+#define rFPGA0_AnalogParameter4                0x88c
+#define rFPGA0_XA_LSSIReadBack         0x8a0
+#define rFPGA0_XB_LSSIReadBack         0x8a4
+#define rFPGA0_XC_LSSIReadBack         0x8a8
+#define rFPGA0_XD_LSSIReadBack         0x8ac
+#define rFPGA0_PSDReport                       0x8b4
+#define rFPGA0_XAB_RFInterfaceRB       0x8e0
+#define rFPGA0_XCD_RFInterfaceRB       0x8e4
+
+/* page 9 */
+#define rFPGA1_RFMOD                           0x900  /* RF mode & OFDM TxSC */
+#define rFPGA1_TxBlock                         0x904
+#define rFPGA1_DebugSelect                     0x908
+#define rFPGA1_TxInfo                          0x90c
+
+/* page a */
+#define rCCK0_System                           0xa00
+#define rCCK0_AFESetting                       0xa04
+#define rCCK0_CCA                                      0xa08
+#define rCCK0_RxAGC1                           0xa0c  /* AGC default value, saturation level */
+#define rCCK0_RxAGC2                           0xa10  /* AGC & DAGC */
+#define rCCK0_RxHP                             0xa14
+#define rCCK0_DSPParameter1            0xa18  /* Timing recovery & Channel estimation threshold */
+#define rCCK0_DSPParameter2            0xa1c  /* SQ threshold */
+#define rCCK0_TxFilter1                                0xa20
+#define rCCK0_TxFilter2                                0xa24
+#define rCCK0_DebugPort                                0xa28  /* debug port and Tx filter3 */
+#define rCCK0_FalseAlarmReport         0xa2c  /* 0xa2d */
+#define rCCK0_TRSSIReport                      0xa50
+#define rCCK0_RxReport                         0xa54  /* 0xa57 */
+#define rCCK0_FACounterLower           0xa5c  /* 0xa5b */
+#define rCCK0_FACounterUpper           0xa58  /* 0xa5c */
+
+/* page c */
+#define rOFDM0_LSTF                            0xc00
+#define rOFDM0_TRxPathEnable           0xc04
+#define rOFDM0_TRMuxPar                                0xc08
+#define rOFDM0_TRSWIsolation                   0xc0c
+#define rOFDM0_XARxAFE                         0xc10  /* RxIQ DC offset, Rx digital filter, DC notch filter */
+#define rOFDM0_XARxIQImbalance         0xc14  /* RxIQ imblance matrix */
+#define rOFDM0_XBRxAFE                         0xc18
+#define rOFDM0_XBRxIQImbalance         0xc1c
+#define rOFDM0_XCRxAFE                         0xc20
+#define rOFDM0_XCRxIQImbalance         0xc24
+#define rOFDM0_XDRxAFE                         0xc28
+#define rOFDM0_XDRxIQImbalance         0xc2c
+#define rOFDM0_RxDetector1                     0xc30  /* PD,BW & SBD */
+#define rOFDM0_RxDetector2                     0xc34  /* SBD & Fame Sync.*/
+#define rOFDM0_RxDetector3                     0xc38  /* Frame Sync.*/
+#define rOFDM0_RxDetector4                     0xc3c  /* PD, SBD, Frame Sync & Short-GI */
+#define rOFDM0_RxDSP                           0xc40  /* Rx Sync Path */
+#define rOFDM0_CFOandDAGC              0xc44  /* CFO & DAGC */
+#define rOFDM0_CCADropThreshold                0xc48 /* CCA Drop threshold */
+#define rOFDM0_ECCAThreshold           0xc4c /* energy CCA */
+#define rOFDM0_XAAGCCore1              0xc50
+#define rOFDM0_XAAGCCore2              0xc54
+#define rOFDM0_XBAGCCore1              0xc58
+#define rOFDM0_XBAGCCore2              0xc5c
+#define rOFDM0_XCAGCCore1              0xc60
+#define rOFDM0_XCAGCCore2              0xc64
+#define rOFDM0_XDAGCCore1              0xc68
+#define rOFDM0_XDAGCCore2              0xc6c
+#define rOFDM0_AGCParameter1           0xc70
+#define rOFDM0_AGCParameter2           0xc74
+#define rOFDM0_AGCRSSITable            0xc78
+#define rOFDM0_HTSTFAGC                                0xc7c
+#define rOFDM0_XATxIQImbalance         0xc80
+#define rOFDM0_XATxAFE                         0xc84
+#define rOFDM0_XBTxIQImbalance         0xc88
+#define rOFDM0_XBTxAFE                         0xc8c
+#define rOFDM0_XCTxIQImbalance         0xc90
+#define rOFDM0_XCTxAFE                         0xc94
+#define rOFDM0_XDTxIQImbalance         0xc98
+#define rOFDM0_XDTxAFE                         0xc9c
+#define rOFDM0_RxHPParameter           0xce0
+#define rOFDM0_TxPseudoNoiseWgt                0xce4
+#define rOFDM0_FrameSync                       0xcf0
+#define rOFDM0_DFSReport                       0xcf4
+#define rOFDM0_TxCoeff1                                0xca4
+#define rOFDM0_TxCoeff2                                0xca8
+#define rOFDM0_TxCoeff3                                0xcac
+#define rOFDM0_TxCoeff4                                0xcb0
+#define rOFDM0_TxCoeff5                                0xcb4
+#define rOFDM0_TxCoeff6                                0xcb8
+
+
+/* page d */
+#define rOFDM1_LSTF                            0xd00
+#define rOFDM1_TRxPathEnable           0xd04
+#define rOFDM1_CFO                             0xd08
+#define rOFDM1_CSI1                            0xd10
+#define rOFDM1_SBD                             0xd14
+#define rOFDM1_CSI2                            0xd18
+#define rOFDM1_CFOTracking                     0xd2c
+#define rOFDM1_TRxMesaure1             0xd34
+#define rOFDM1_IntfDet                         0xd3c
+#define rOFDM1_PseudoNoiseStateAB 0xd50
+#define rOFDM1_PseudoNoiseStateCD 0xd54
+#define rOFDM1_RxPseudoNoiseWgt   0xd58
+#define rOFDM_PHYCounter1                      0xda0  /* cca, parity fail */
+#define rOFDM_PHYCounter2                      0xda4  /* rate illegal, crc8 fail */
+
+#define rOFDM_PHYCounter3                      0xda8  /* MCS not support */
+#define rOFDM_ShortCFOAB                       0xdac
+#define rOFDM_ShortCFOCD                       0xdb0
+#define rOFDM_LongCFOAB                                0xdb4
+#define rOFDM_LongCFOCD                                0xdb8
+#define rOFDM_TailCFOAB                                0xdbc
+#define rOFDM_TailCFOCD                                0xdc0
+#define rOFDM_PWMeasure1               0xdc4
+#define rOFDM_PWMeasure2               0xdc8
+#define rOFDM_BWReport                         0xdcc
+#define rOFDM_AGCReport                                0xdd0
+#define rOFDM_RxSNR                            0xdd4
+#define rOFDM_RxEVMCSI                         0xdd8
+#define rOFDM_SIGReport                                0xddc
+
+/* page e */
+#define rTxAGC_Rate18_06                       0xe00
+#define rTxAGC_Rate54_24                       0xe04
+#define rTxAGC_CCK_Mcs32                       0xe08
+#define rTxAGC_Mcs03_Mcs00                     0xe10
+#define rTxAGC_Mcs07_Mcs04                     0xe14
+#define rTxAGC_Mcs11_Mcs08                     0xe18
+#define rTxAGC_Mcs15_Mcs12                     0xe1c
+
+
+/* RF
+ * Zebra1
+ */
+#define rZebra1_HSSIEnable             0x0
+#define rZebra1_TRxEnable1             0x1
+#define rZebra1_TRxEnable2             0x2
+#define rZebra1_AGC                            0x4
+#define rZebra1_ChargePump             0x5
+#define rZebra1_Channel                                0x7
+#define rZebra1_TxGain                         0x8
+#define rZebra1_TxLPF                          0x9
+#define rZebra1_RxLPF                          0xb
+#define rZebra1_RxHPFCorner            0xc
+
+/* Zebra4 */
+#define rGlobalCtrl                            0
+#define rRTL8256_TxLPF                         19
+#define rRTL8256_RxLPF                         11
+
+/* RTL8258 */
+#define rRTL8258_TxLPF                         0x11
+#define rRTL8258_RxLPF                         0x13
+#define rRTL8258_RSSILPF               0xa
+
+/* Bit Mask
+ * page-1
+ */
+#define bBBResetB                                      0x100
+#define bGlobalResetB                          0x200
+#define bOFDMTxStart                           0x4
+#define bCCKTxStart                                    0x8
+#define bCRC32Debug                            0x100
+#define bPMACLoopback                          0x10
+#define bTxLSIG                                                0xffffff
+#define bOFDMTxRate                            0xf
+#define bOFDMTxReserved                                0x10
+#define bOFDMTxLength                          0x1ffe0
+#define bOFDMTxParity                          0x20000
+#define bTxHTSIG1                                      0xffffff
+#define bTxHTMCSRate                           0x7f
+#define bTxHTBW                                                0x80
+#define bTxHTLength                            0xffff00
+#define bTxHTSIG2                                      0xffffff
+#define bTxHTSmoothing                         0x1
+#define bTxHTSounding                          0x2
+#define bTxHTReserved                          0x4
+#define bTxHTAggreation                                0x8
+#define bTxHTSTBC                                      0x30
+#define bTxHTAdvanceCoding                     0x40
+#define bTxHTShortGI                           0x80
+#define bTxHTNumberHT_LTF                      0x300
+#define bTxHTCRC8                                      0x3fc00
+#define bCounterReset                          0x10000
+#define bNumOfOFDMTx                           0xffff
+#define bNumOfCCKTx                            0xffff0000
+#define bTxIdleInterval                                        0xffff
+#define bOFDMService                           0xffff0000
+#define bTxMACHeader                           0xffffffff
+#define bTxDataInit                                    0xff
+#define bTxHTMode                              0x100
+#define bTxDataType                            0x30000
+#define bTxRandomSeed                          0xffffffff
+#define bCCKTxPreamble                         0x1
+#define bCCKTxSFD                                      0xffff0000
+#define bCCKTxSIG                                      0xff
+#define bCCKTxService                          0xff00
+#define bCCKLengthExt                          0x8000
+#define bCCKTxLength                           0xffff0000
+#define bCCKTxCRC16                            0xffff
+#define bCCKTxStatus                           0x1
+#define bOFDMTxStatus                          0x2
+
+/* page-8 */
+#define bRFMOD                                         0x1
+#define bJapanMode                             0x2
+#define bCCKTxSC                                       0x30
+#define bCCKEn                                         0x1000000
+#define bOFDMEn                                                0x2000000
+#define bOFDMRxADCPhase                                0x10000
+#define bOFDMTxDACPhase                                0x40000
+#define bXATxAGC                                       0x3f
+#define bXBTxAGC                                       0xf00
+#define bXCTxAGC                                       0xf000
+#define bXDTxAGC                                       0xf0000
+#define bPAStart                                       0xf0000000
+#define bTRStart                                       0x00f00000
+#define bRFStart                                       0x0000f000
+#define bBBStart                                       0x000000f0
+#define bBBCCKStart                            0x0000000f
+#define bPAEnd                                         0xf     /* Reg0x814 */
+#define bTREnd                                         0x0f000000
+#define bRFEnd                                         0x000f0000
+#define bCCAMask                                       0x000000f0   /* T2R */
+#define bR2RCCAMask                            0x00000f00
+#define bHSSI_R2TDelay                         0xf8000000
+#define bHSSI_T2RDelay                         0xf80000
+#define bContTxHSSI                            0x400     /* chane gain at continue Tx */
+#define bIGFromCCK                             0x200
+#define bAGCAddress                            0x3f
+#define bRxHPTx                                                0x7000
+#define bRxHPT2R                                       0x38000
+#define bRxHPCCKIni                            0xc0000
+#define bAGCTxCode                             0xc00000
+#define bAGCRxCode                             0x300000
+#define b3WireDataLength                       0x800
+#define b3WireAddressLength                    0x400
+#define b3WireRFPowerDown                      0x1
+/* #define bHWSISelect                         0x8 */
+#define b5GPAPEPolarity                                0x40000000
+#define b2GPAPEPolarity                                0x80000000
+#define bRFSW_TxDefaultAnt                     0x3
+#define bRFSW_TxOptionAnt                      0x30
+#define bRFSW_RxDefaultAnt                     0x300
+#define bRFSW_RxOptionAnt                      0x3000
+#define bRFSI_3WireData                                0x1
+#define bRFSI_3WireClock                       0x2
+#define bRFSI_3WireLoad                                0x4
+#define bRFSI_3WireRW                          0x8
+#define bRFSI_3Wire                                    0xf  /* 3-wire total control */
+#define bRFSI_RFENV                            0x10
+#define bRFSI_TRSW                             0x20
+#define bRFSI_TRSWB                            0x40
+#define bRFSI_ANTSW                            0x100
+#define bRFSI_ANTSWB                           0x200
+#define bRFSI_PAPE                                     0x400
+#define bRFSI_PAPE5G                           0x800
+#define bBandSelect                                    0x1
+#define bHTSIG2_GI                                     0x80
+#define bHTSIG2_Smoothing                      0x01
+#define bHTSIG2_Sounding                       0x02
+#define bHTSIG2_Aggreaton                      0x08
+#define bHTSIG2_STBC                           0x30
+#define bHTSIG2_AdvCoding                      0x40
+#define bHTSIG2_NumOfHTLTF             0x300
+#define bHTSIG2_CRC8                           0x3fc
+#define bHTSIG1_MCS                            0x7f
+#define bHTSIG1_BandWidth                      0x80
+#define bHTSIG1_HTLength                       0xffff
+#define bLSIG_Rate                                     0xf
+#define bLSIG_Reserved                         0x10
+#define bLSIG_Length                           0x1fffe
+#define bLSIG_Parity                                   0x20
+#define bCCKRxPhase                            0x4
+#define bLSSIReadAddress                       0x3f000000   /* LSSI "Read" Address */
+#define bLSSIReadEdge                          0x80000000   /* LSSI "Read" edge signal */
+#define bLSSIReadBackData                      0xfff
+#define bLSSIReadOKFlag                                0x1000
+#define bCCKSampleRate                         0x8     /* 0: 44MHz, 1:88MHz */
+#define bRegulator0Standby                     0x1
+#define bRegulatorPLLStandby                   0x2
+#define bRegulator1Standby                     0x4
+#define bPLLPowerUp                            0x8
+#define bDPLLPowerUp                           0x10
+#define bDA10PowerUp                           0x20
+#define bAD7PowerUp                            0x200
+#define bDA6PowerUp                            0x2000
+#define bXtalPowerUp                           0x4000
+#define b40MDClkPowerUP                                0x8000
+#define bDA6DebugMode                          0x20000
+#define bDA6Swing                                      0x380000
+#define bADClkPhase                            0x4000000
+#define b80MClkDelay                           0x18000000
+#define bAFEWatchDogEnable                     0x20000000
+#define bXtalCap                                       0x0f000000
+#define bIntDifClkEnable                       0x400
+#define bExtSigClkEnable                       0x800
+#define bBandgapMbiasPowerUp           0x10000
+#define bAD11SHGain                            0xc0000
+#define bAD11InputRange                                0x700000
+#define bAD11OPCurrent                         0x3800000
+#define bIPathLoopback                         0x4000000
+#define bQPathLoopback                         0x8000000
+#define bAFELoopback                           0x10000000
+#define bDA10Swing                             0x7e0
+#define bDA10Reverse                           0x800
+#define bDAClkSource                           0x1000
+#define bAD7InputRange                         0x6000
+#define bAD7Gain                                       0x38000
+#define bAD7OutputCMMode                       0x40000
+#define bAD7InputCMMode                                0x380000
+#define bAD7Current                                    0xc00000
+#define bRegulatorAdjust                       0x7000000
+#define bAD11PowerUpAtTx                       0x1
+#define bDA10PSAtTx                            0x10
+#define bAD11PowerUpAtRx                       0x100
+#define bDA10PSAtRx                            0x1000
+
+#define bCCKRxAGCFormat                                0x200
+
+#define bPSDFFTSamplepPoint                    0xc000
+#define bPSDAverageNum                         0x3000
+#define bIQPathControl                         0xc00
+#define bPSDFreq                                       0x3ff
+#define bPSDAntennaPath                                0x30
+#define bPSDIQSwitch                           0x40
+#define bPSDRxTrigger                          0x400000
+#define bPSDTxTrigger                          0x80000000
+#define bPSDSineToneScale                      0x7f000000
+#define bPSDReport                                     0xffff
+
+/* page-9 */
+#define bOFDMTxSC                              0x30000000
+#define bCCKTxOn                                       0x1
+#define bOFDMTxOn                              0x2
+#define bDebugPage                             0xfff  /* reset debug page and also HWord, LWord */
+#define bDebugItem                             0xff   /* reset debug page and LWord */
+#define bAntL                                  0x10
+#define bAntNonHT                                      0x100
+#define bAntHT1                                        0x1000
+#define bAntHT2                                                0x10000
+#define bAntHT1S1                                      0x100000
+#define bAntNonHTS1                            0x1000000
+
+/* page-a */
+#define bCCKBBMode                             0x3
+#define bCCKTxPowerSaving                      0x80
+#define bCCKRxPowerSaving                      0x40
+#define bCCKSideBand                           0x10
+#define bCCKScramble                           0x8
+#define bCCKAntDiversity                       0x8000
+#define bCCKCarrierRecovery            0x4000
+#define bCCKTxRate                             0x3000
+#define bCCKDCCancel                           0x0800
+#define bCCKISICancel                          0x0400
+#define bCCKMatchFilter                                0x0200
+#define bCCKEqualizer                          0x0100
+#define bCCKPreambleDetect                     0x800000
+#define bCCKFastFalseCCA                       0x400000
+#define bCCKChEstStart                         0x300000
+#define bCCKCCACount                           0x080000
+#define bCCKcs_lim                                     0x070000
+#define bCCKBistMode                           0x80000000
+#define bCCKCCAMask                            0x40000000
+#define bCCKTxDACPhase                 0x4
+#define bCCKRxADCPhase                 0x20000000   /* r_rx_clk */
+#define bCCKr_cp_mode0                 0x0100
+#define bCCKTxDCOffset                         0xf0
+#define bCCKRxDCOffset                         0xf
+#define bCCKCCAMode                            0xc000
+#define bCCKFalseCS_lim                                0x3f00
+#define bCCKCS_ratio                           0xc00000
+#define bCCKCorgBit_sel                                0x300000
+#define bCCKPD_lim                                     0x0f0000
+#define bCCKNewCCA                             0x80000000
+#define bCCKRxHPofIG                           0x8000
+#define bCCKRxIG                                       0x7f00
+#define bCCKLNAPolarity                                0x800000
+#define bCCKRx1stGain                          0x7f0000
+#define bCCKRFExtend                           0x20000000 /* CCK Rx initial gain polarity */
+#define bCCKRxAGCSatLevel                      0x1f000000
+#define bCCKRxAGCSatCount                      0xe0
+#define bCCKRxRFSettle                         0x1f       /* AGCsamp_dly */
+#define bCCKFixedRxAGC                         0x8000
+/* #define bCCKRxAGCFormat                     0x4000 */   /* remove to HSSI register 0x824 */
+#define bCCKAntennaPolarity                    0x2000
+#define bCCKTxFilterType                       0x0c00
+#define bCCKRxAGCReportType            0x0300
+#define bCCKRxDAGCEn                           0x80000000
+#define bCCKRxDAGCPeriod                       0x20000000
+#define bCCKRxDAGCSatLevel             0x1f000000
+#define bCCKTimingRecovery                     0x800000
+#define bCCKTxC0                                       0x3f0000
+#define bCCKTxC1                                       0x3f000000
+#define bCCKTxC2                                       0x3f
+#define bCCKTxC3                                       0x3f00
+#define bCCKTxC4                                       0x3f0000
+#define bCCKTxC5                                       0x3f000000
+#define bCCKTxC6                                       0x3f
+#define bCCKTxC7                                       0x3f00
+#define bCCKDebugPort                          0xff0000
+#define bCCKDACDebug                           0x0f000000
+#define bCCKFalseAlarmEnable                   0x8000
+#define bCCKFalseAlarmRead                     0x4000
+#define bCCKTRSSI                                      0x7f
+#define bCCKRxAGCReport                                0xfe
+#define bCCKRxReport_AntSel                    0x80000000
+#define bCCKRxReport_MFOff                     0x40000000
+#define bCCKRxRxReport_SQLoss          0x20000000
+#define bCCKRxReport_Pktloss                   0x10000000
+#define bCCKRxReport_Lockedbit         0x08000000
+#define bCCKRxReport_RateError         0x04000000
+#define bCCKRxReport_RxRate                    0x03000000
+#define bCCKRxFACounterLower           0xff
+#define bCCKRxFACounterUpper           0xff000000
+#define bCCKRxHPAGCStart                       0xe000
+#define bCCKRxHPAGCFinal                       0x1c00
+
+#define bCCKRxFalseAlarmEnable         0x8000
+#define bCCKFACounterFreeze                    0x4000
+
+#define bCCKTxPathSel                          0x10000000
+#define bCCKDefaultRxPath                      0xc000000
+#define bCCKOptionRxPath                       0x3000000
+
+/* page c */
+#define bNumOfSTF                                      0x3
+#define bShift_L                                       0xc0
+#define bGI_TH                                         0xc
+#define bRxPathA                                       0x1
+#define bRxPathB                                       0x2
+#define bRxPathC                                       0x4
+#define bRxPathD                                       0x8
+#define bTxPathA                                       0x1
+#define bTxPathB                                       0x2
+#define bTxPathC                                       0x4
+#define bTxPathD                                       0x8
+#define bTRSSIFreq                                     0x200
+#define bADCBackoff                                    0x3000
+#define bDFIRBackoff                                   0xc000
+#define bTRSSILatchPhase                       0x10000
+#define bRxIDCOffset                                   0xff
+#define bRxQDCOffset                                   0xff00
+#define bRxDFIRMode                            0x1800000
+#define bRxDCNFType                            0xe000000
+#define bRXIQImb_A                                     0x3ff
+#define bRXIQImb_B                                     0xfc00
+#define bRXIQImb_C                                     0x3f0000
+#define bRXIQImb_D                                     0xffc00000
+#define bDC_dc_Notch                           0x60000
+#define bRxNBINotch                                    0x1f000000
+#define bPD_TH                                         0xf
+#define bPD_TH_Opt2                            0xc000
+#define bPWED_TH                                       0x700
+#define bIfMF_Win_L                                    0x800
+#define bPD_Option                                     0x1000
+#define bMF_Win_L                                      0xe000
+#define bBW_Search_L                           0x30000
+#define bwin_enh_L                                     0xc0000
+#define bBW_TH                                         0x700000
+#define bED_TH2                                                0x3800000
+#define bBW_option                                     0x4000000
+#define bRatio_TH                                      0x18000000
+#define bWindow_L                                      0xe0000000
+#define bSBD_Option                                    0x1
+#define bFrame_TH                                      0x1c
+#define bFS_Option                                     0x60
+#define bDC_Slope_check                                0x80
+#define bFGuard_Counter_DC_L                   0xe00
+#define bFrame_Weight_Short                    0x7000
+#define bSub_Tune                                      0xe00000
+#define bFrame_DC_Length                       0xe000000
+#define bSBD_start_offset                      0x30000000
+#define bFrame_TH_2                            0x7
+#define bFrame_GI2_TH                          0x38
+#define bGI2_Sync_en                           0x40
+#define bSarch_Short_Early                     0x300
+#define bSarch_Short_Late                      0xc00
+#define bSarch_GI2_Late                                0x70000
+#define bCFOAntSum                             0x1
+#define bCFOAcc                                                0x2
+#define bCFOStartOffset                                0xc
+#define bCFOLookBack                           0x70
+#define bCFOSumWeight                          0x80
+#define bDAGCEnable                                    0x10000
+#define bTXIQImb_A                                     0x3ff
+#define bTXIQImb_B                                     0xfc00
+#define bTXIQImb_C                                     0x3f0000
+#define bTXIQImb_D                                     0xffc00000
+#define bTxIDCOffset                                   0xff
+#define bTxQDCOffset                                   0xff00
+#define bTxDFIRMode                            0x10000
+#define bTxPesudoNoiseOn                       0x4000000
+#define bTxPesudoNoise_A                       0xff
+#define bTxPesudoNoise_B                       0xff00
+#define bTxPesudoNoise_C                       0xff0000
+#define bTxPesudoNoise_D                       0xff000000
+#define bCCADropOption                         0x20000
+#define bCCADropThres                          0xfff00000
+#define bEDCCA_H                                       0xf
+#define bEDCCA_L                                       0xf0
+#define bLambda_ED               0x300
+#define bRxInitialGain           0x7f
+#define bRxAntDivEn              0x80
+#define bRxAGCAddressForLNA      0x7f00
+#define bRxHighPowerFlow         0x8000
+#define bRxAGCFreezeThres        0xc0000
+#define bRxFreezeStep_AGC1       0x300000
+#define bRxFreezeStep_AGC2       0xc00000
+#define bRxFreezeStep_AGC3       0x3000000
+#define bRxFreezeStep_AGC0       0xc000000
+#define bRxRssi_Cmp_En           0x10000000
+#define bRxQuickAGCEn            0x20000000
+#define bRxAGCFreezeThresMode    0x40000000
+#define bRxOverFlowCheckType     0x80000000
+#define bRxAGCShift              0x7f
+#define bTRSW_Tri_Only           0x80
+#define bPowerThres              0x300
+#define bRxAGCEn                 0x1
+#define bRxAGCTogetherEn         0x2
+#define bRxAGCMin                0x4
+#define bRxHP_Ini                0x7
+#define bRxHP_TRLNA              0x70
+#define bRxHP_RSSI               0x700
+#define bRxHP_BBP1               0x7000
+#define bRxHP_BBP2               0x70000
+#define bRxHP_BBP3               0x700000
+#define bRSSI_H                  0x7f0000     /* the threshold for high power */
+#define bRSSI_Gen                0x7f000000   /* the threshold for ant diversity */
+#define bRxSettle_TRSW           0x7
+#define bRxSettle_LNA            0x38
+#define bRxSettle_RSSI           0x1c0
+#define bRxSettle_BBP            0xe00
+#define bRxSettle_RxHP           0x7000
+#define bRxSettle_AntSW_RSSI     0x38000
+#define bRxSettle_AntSW          0xc0000
+#define bRxProcessTime_DAGC      0x300000
+#define bRxSettle_HSSI           0x400000
+#define bRxProcessTime_BBPPW     0x800000
+#define bRxAntennaPowerShift     0x3000000
+#define bRSSITableSelect         0xc000000
+#define bRxHP_Final              0x7000000
+#define bRxHTSettle_BBP          0x7
+#define bRxHTSettle_HSSI         0x8
+#define bRxHTSettle_RxHP         0x70
+#define bRxHTSettle_BBPPW        0x80
+#define bRxHTSettle_Idle         0x300
+#define bRxHTSettle_Reserved     0x1c00
+#define bRxHTRxHPEn              0x8000
+#define bRxHTAGCFreezeThres      0x30000
+#define bRxHTAGCTogetherEn       0x40000
+#define bRxHTAGCMin              0x80000
+#define bRxHTAGCEn               0x100000
+#define bRxHTDAGCEn              0x200000
+#define bRxHTRxHP_BBP            0x1c00000
+#define bRxHTRxHP_Final          0xe0000000
+#define bRxPWRatioTH             0x3
+#define bRxPWRatioEn             0x4
+#define bRxMFHold                0x3800
+#define bRxPD_Delay_TH1          0x38
+#define bRxPD_Delay_TH2          0x1c0
+#define bRxPD_DC_COUNT_MAX       0x600
+/* #define bRxMF_Hold               0x3800 */
+#define bRxPD_Delay_TH           0x8000
+#define bRxProcess_Delay         0xf0000
+#define bRxSearchrange_GI2_Early 0x700000
+#define bRxFrame_Guard_Counter_L 0x3800000
+#define bRxSGI_Guard_L           0xc000000
+#define bRxSGI_Search_L          0x30000000
+#define bRxSGI_TH                0xc0000000
+#define bDFSCnt0                 0xff
+#define bDFSCnt1                 0xff00
+#define bDFSFlag                 0xf0000
+
+#define bMFWeightSum             0x300000
+#define bMinIdxTH                0x7f000000
+
+#define bDAFormat                0x40000
+
+#define bTxChEmuEnable           0x01000000
+
+#define bTRSWIsolation_A         0x7f
+#define bTRSWIsolation_B         0x7f00
+#define bTRSWIsolation_C         0x7f0000
+#define bTRSWIsolation_D         0x7f000000
+
+#define bExtLNAGain              0x7c00
+
+/* page d */
+#define bSTBCEn                  0x4
+#define bAntennaMapping          0x10
+#define bNss                     0x20
+#define bCFOAntSumD              0x200
+#define bPHYCounterReset         0x8000000
+#define bCFOReportGet            0x4000000
+#define bOFDMContinueTx          0x10000000
+#define bOFDMSingleCarrier       0x20000000
+#define bOFDMSingleTone          0x40000000
+/* #define bRxPath1                 0x01
+ * #define bRxPath2                 0x02
+ * #define bRxPath3                 0x04
+ * #define bRxPath4                 0x08
+ * #define bTxPath1                 0x10
+ * #define bTxPath2                 0x20
+ */
+#define bHTDetect                0x100
+#define bCFOEn                   0x10000
+#define bCFOValue                0xfff00000
+#define bSigTone_Re              0x3f
+#define bSigTone_Im              0x7f00
+#define bCounter_CCA             0xffff
+#define bCounter_ParityFail      0xffff0000
+#define bCounter_RateIllegal     0xffff
+#define bCounter_CRC8Fail        0xffff0000
+#define bCounter_MCSNoSupport    0xffff
+#define bCounter_FastSync        0xffff
+#define bShortCFO                0xfff
+#define bShortCFOTLength         12   /* total */
+#define bShortCFOFLength         11   /* fraction */
+#define bLongCFO                 0x7ff
+#define bLongCFOTLength          11
+#define bLongCFOFLength          11
+#define bTailCFO                 0x1fff
+#define bTailCFOTLength          13
+#define bTailCFOFLength          12
+
+#define bmax_en_pwdB             0xffff
+#define bCC_power_dB             0xffff0000
+#define bnoise_pwdB              0xffff
+#define bPowerMeasTLength        10
+#define bPowerMeasFLength        3
+#define bRx_HT_BW                0x1
+#define bRxSC                    0x6
+#define bRx_HT                   0x8
+
+#define bNB_intf_det_on          0x1
+#define bIntf_win_len_cfg        0x30
+#define bNB_Intf_TH_cfg          0x1c0
+
+#define bRFGain                  0x3f
+#define bTableSel                0x40
+#define bTRSW                    0x80
+
+#define bRxSNR_A                 0xff
+#define bRxSNR_B                 0xff00
+#define bRxSNR_C                 0xff0000
+#define bRxSNR_D                 0xff000000
+#define bSNREVMTLength           8
+#define bSNREVMFLength           1
+
+#define bCSI1st                  0xff
+#define bCSI2nd                  0xff00
+#define bRxEVM1st                0xff0000
+#define bRxEVM2nd                0xff000000
+
+#define bSIGEVM                  0xff
+#define bPWDB                    0xff00
+#define bSGIEN                   0x10000
+
+#define bSFactorQAM1             0xf
+#define bSFactorQAM2             0xf0
+#define bSFactorQAM3             0xf00
+#define bSFactorQAM4             0xf000
+#define bSFactorQAM5             0xf0000
+#define bSFactorQAM6             0xf0000
+#define bSFactorQAM7             0xf00000
+#define bSFactorQAM8             0xf000000
+#define bSFactorQAM9             0xf0000000
+#define bCSIScheme               0x100000
+
+#define bNoiseLvlTopSet          0x3
+#define bChSmooth                0x4
+#define bChSmoothCfg1            0x38
+#define bChSmoothCfg2            0x1c0
+#define bChSmoothCfg3            0xe00
+#define bChSmoothCfg4            0x7000
+#define bMRCMode                 0x800000
+#define bTHEVMCfg                0x7000000
+
+#define bLoopFitType             0x1
+#define bUpdCFO                  0x40
+#define bUpdCFOOffData           0x80
+#define bAdvUpdCFO               0x100
+#define bAdvTimeCtrl             0x800
+#define bUpdClko                 0x1000
+#define bFC                      0x6000
+#define bTrackingMode            0x8000
+#define bPhCmpEnable             0x10000
+#define bUpdClkoLTF              0x20000
+#define bComChCFO                0x40000
+#define bCSIEstiMode             0x80000
+#define bAdvUpdEqz               0x100000
+#define bUChCfg                  0x7000000
+#define bUpdEqz                  0x8000000
+
+/* page e */
+#define bTxAGCRate18_06                        0x7f7f7f7f
+#define bTxAGCRate54_24                        0x7f7f7f7f
+#define bTxAGCRateMCS32                0x7f
+#define bTxAGCRateCCK                  0x7f00
+#define bTxAGCRateMCS3_MCS0    0x7f7f7f7f
+#define bTxAGCRateMCS7_MCS4    0x7f7f7f7f
+#define bTxAGCRateMCS11_MCS8   0x7f7f7f7f
+#define bTxAGCRateMCS15_MCS12  0x7f7f7f7f
+
+
+/* Rx Pseduo noise */
+#define bRxPesudoNoiseOn         0x20000000
+#define bRxPesudoNoise_A         0xff
+#define bRxPesudoNoise_B         0xff00
+#define bRxPesudoNoise_C         0xff0000
+#define bRxPesudoNoise_D         0xff000000
+#define bPesudoNoiseState_A      0xffff
+#define bPesudoNoiseState_B      0xffff0000
+#define bPesudoNoiseState_C      0xffff
+#define bPesudoNoiseState_D      0xffff0000
+
+/* RF
+ * Zebra1
+ */
+#define bZebra1_HSSIEnable        0x8
+#define bZebra1_TRxControl        0xc00
+#define bZebra1_TRxGainSetting    0x07f
+#define bZebra1_RxCorner          0xc00
+#define bZebra1_TxChargePump      0x38
+#define bZebra1_RxChargePump      0x7
+#define bZebra1_ChannelNum        0xf80
+#define bZebra1_TxLPFBW           0x400
+#define bZebra1_RxLPFBW           0x600
+
+/* Zebra4 */
+#define bRTL8256RegModeCtrl1      0x100
+#define bRTL8256RegModeCtrl0      0x40
+#define bRTL8256_TxLPFBW          0x18
+#define bRTL8256_RxLPFBW          0x600
+
+/* RTL8258 */
+#define bRTL8258_TxLPFBW          0xc
+#define bRTL8258_RxLPFBW          0xc00
+#define bRTL8258_RSSILPFBW        0xc0
+
+/* byte endable for sb_write */
+#define bByte0                    0x1
+#define bByte1                    0x2
+#define bByte2                    0x4
+#define bByte3                    0x8
+#define bWord0                    0x3
+#define bWord1                    0xc
+#define bDWord                    0xf
+
+/* for PutRegsetting & GetRegSetting BitMask */
+#define bMaskByte0                0xff
+#define bMaskByte1                0xff00
+#define bMaskByte2                0xff0000
+#define bMaskByte3                0xff000000
+#define bMaskHWord                0xffff0000
+#define bMaskLWord                0x0000ffff
+#define bMaskDWord                0xffffffff
+
+/* for PutRFRegsetting & GetRFRegSetting BitMask */
+#define bMask12Bits               0xfff
+
+#define bEnable                   0x1
+#define bDisable                  0x0
+
+#define LeftAntenna               0x0
+#define RightAntenna              0x1
+
+#define tCheckTxStatus            500   /* 500ms */
+#define tUpdateRxCounter          100   /* 100ms */
+
+#define rateCCK     0
+#define rateOFDM    1
+#define rateHT      2
+
+/* define Register-End */
+#define bPMAC_End                 0x1ff
+#define bFPGAPHY0_End             0x8ff
+#define bFPGAPHY1_End             0x9ff
+#define bCCKPHY0_End              0xaff
+#define bOFDMPHY0_End             0xcff
+#define bOFDMPHY1_End             0xdff
+
+/* define max debug item in each debug page
+ * #define bMaxItem_FPGA_PHY0        0x9
+ * #define bMaxItem_FPGA_PHY1        0x3
+ * #define bMaxItem_PHY_11B          0x16
+ * #define bMaxItem_OFDM_PHY0        0x29
+ * #define bMaxItem_OFDM_PHY1        0x0
+ */
+
+#define bPMACControl              0x0
+#define bWMACControl              0x1
+#define bWNICControl              0x2
+
+#define PathA                     0x0
+#define PathB                     0x1
+#define PathC                     0x2
+#define PathD                     0x3
+
+#define        rRTL8256RxMixerPole             0xb
+#define                bZebraRxMixerPole               0x6
+#define                rRTL8256TxBBOPBias        0x9
+#define                bRTL8256TxBBOPBias       0x400
+#define                rRTL8256TxBBBW             19
+#define                bRTL8256TxBBBW                  0x18
+
+#endif /* __INC_HAL8190PCIPHYREG_H */