1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 28fc8598eSJerry Chuang #ifndef _R819XU_PHYREG_H 38fc8598eSJerry Chuang #define _R819XU_PHYREG_H 48fc8598eSJerry Chuang 58fc8598eSJerry Chuang 62160e944SSanjeev Sharma #define RF_DATA 0x1d4 /* FW will write RF data in the register.*/ 78fc8598eSJerry Chuang 82160e944SSanjeev Sharma /* page8 */ 92160e944SSanjeev Sharma #define rFPGA0_RFMOD 0x800 /* RF mode & CCK TxSC */ 108fc8598eSJerry Chuang #define rFPGA0_TxGainStage 0x80c 118fc8598eSJerry Chuang #define rFPGA0_XA_HSSIParameter1 0x820 128fc8598eSJerry Chuang #define rFPGA0_XA_HSSIParameter2 0x824 138fc8598eSJerry Chuang #define rFPGA0_XB_HSSIParameter1 0x828 148fc8598eSJerry Chuang #define rFPGA0_XB_HSSIParameter2 0x82c 158fc8598eSJerry Chuang #define rFPGA0_XC_HSSIParameter1 0x830 168fc8598eSJerry Chuang #define rFPGA0_XC_HSSIParameter2 0x834 178fc8598eSJerry Chuang #define rFPGA0_XD_HSSIParameter1 0x838 188fc8598eSJerry Chuang #define rFPGA0_XD_HSSIParameter2 0x83c 198fc8598eSJerry Chuang #define rFPGA0_XA_LSSIParameter 0x840 208fc8598eSJerry Chuang #define rFPGA0_XB_LSSIParameter 0x844 218fc8598eSJerry Chuang #define rFPGA0_XC_LSSIParameter 0x848 228fc8598eSJerry Chuang #define rFPGA0_XD_LSSIParameter 0x84c 238fc8598eSJerry Chuang #define rFPGA0_XAB_SwitchControl 0x858 248fc8598eSJerry Chuang #define rFPGA0_XCD_SwitchControl 0x85c 258fc8598eSJerry Chuang #define rFPGA0_XA_RFInterfaceOE 0x860 268fc8598eSJerry Chuang #define rFPGA0_XB_RFInterfaceOE 0x864 278fc8598eSJerry Chuang #define rFPGA0_XC_RFInterfaceOE 0x868 288fc8598eSJerry Chuang #define rFPGA0_XD_RFInterfaceOE 0x86c 298fc8598eSJerry Chuang #define rFPGA0_XAB_RFInterfaceSW 0x870 308fc8598eSJerry Chuang #define rFPGA0_XCD_RFInterfaceSW 0x874 318fc8598eSJerry Chuang #define rFPGA0_XAB_RFParameter 0x878 328fc8598eSJerry Chuang #define rFPGA0_XCD_RFParameter 0x87c 338fc8598eSJerry Chuang #define rFPGA0_AnalogParameter1 0x880 348fc8598eSJerry Chuang #define rFPGA0_AnalogParameter4 0x88c 358fc8598eSJerry Chuang #define rFPGA0_XA_LSSIReadBack 0x8a0 368fc8598eSJerry Chuang #define rFPGA0_XB_LSSIReadBack 0x8a4 378fc8598eSJerry Chuang #define rFPGA0_XC_LSSIReadBack 0x8a8 388fc8598eSJerry Chuang #define rFPGA0_XD_LSSIReadBack 0x8ac 398fc8598eSJerry Chuang #define rFPGA0_XAB_RFInterfaceRB 0x8e0 408fc8598eSJerry Chuang #define rFPGA0_XCD_RFInterfaceRB 0x8e4 418fc8598eSJerry Chuang 422160e944SSanjeev Sharma /* page 9 */ 432160e944SSanjeev Sharma #define rFPGA1_RFMOD 0x900 /* RF mode & OFDM TxSC */ 448fc8598eSJerry Chuang 452160e944SSanjeev Sharma /* page a */ 468fc8598eSJerry Chuang #define rCCK0_System 0xa00 478fc8598eSJerry Chuang #define rCCK0_AFESetting 0xa04 488fc8598eSJerry Chuang #define rCCK0_CCA 0xa08 498fc8598eSJerry Chuang #define rCCK0_TxFilter1 0xa20 508fc8598eSJerry Chuang #define rCCK0_TxFilter2 0xa24 512160e944SSanjeev Sharma #define rCCK0_DebugPort 0xa28 /* debug port and Tx filter3 */ 528fc8598eSJerry Chuang 532160e944SSanjeev Sharma /* page c */ 548fc8598eSJerry Chuang #define rOFDM0_TRxPathEnable 0xc04 552160e944SSanjeev Sharma #define rOFDM0_XARxAFE 0xc10 /* RxIQ DC offset, Rx digital filter, DC notch filter */ 56086a76b9SKimberly Brown #define rOFDM0_XARxIQImbalance 0xc14 /* RxIQ imbalance matrix */ 578fc8598eSJerry Chuang #define rOFDM0_XBRxAFE 0xc18 588fc8598eSJerry Chuang #define rOFDM0_XBRxIQImbalance 0xc1c 598fc8598eSJerry Chuang #define rOFDM0_XCRxAFE 0xc20 608fc8598eSJerry Chuang #define rOFDM0_XCRxIQImbalance 0xc24 618fc8598eSJerry Chuang #define rOFDM0_XDRxAFE 0xc28 628fc8598eSJerry Chuang #define rOFDM0_XDRxIQImbalance 0xc2c 632160e944SSanjeev Sharma #define rOFDM0_RxDetector1 0xc30 /* PD,BW & SBD */ 642160e944SSanjeev Sharma #define rOFDM0_RxDetector2 0xc34 /* SBD & Fame Sync.*/ 652160e944SSanjeev Sharma #define rOFDM0_RxDetector3 0xc38 /* Frame Sync.*/ 662160e944SSanjeev Sharma #define rOFDM0_ECCAThreshold 0xc4c /* energy CCA */ 678fc8598eSJerry Chuang #define rOFDM0_XAAGCCore1 0xc50 688fc8598eSJerry Chuang #define rOFDM0_XAAGCCore2 0xc54 698fc8598eSJerry Chuang #define rOFDM0_XBAGCCore1 0xc58 708fc8598eSJerry Chuang #define rOFDM0_XBAGCCore2 0xc5c 718fc8598eSJerry Chuang #define rOFDM0_XCAGCCore1 0xc60 728fc8598eSJerry Chuang #define rOFDM0_XCAGCCore2 0xc64 738fc8598eSJerry Chuang #define rOFDM0_XDAGCCore1 0xc68 748fc8598eSJerry Chuang #define rOFDM0_XDAGCCore2 0xc6c 758fc8598eSJerry Chuang #define rOFDM0_XATxIQImbalance 0xc80 768fc8598eSJerry Chuang #define rOFDM0_XATxAFE 0xc84 778fc8598eSJerry Chuang #define rOFDM0_XBTxIQImbalance 0xc88 788fc8598eSJerry Chuang #define rOFDM0_XBTxAFE 0xc8c 798fc8598eSJerry Chuang #define rOFDM0_XCTxIQImbalance 0xc90 808fc8598eSJerry Chuang #define rOFDM0_XCTxAFE 0xc94 818fc8598eSJerry Chuang #define rOFDM0_XDTxIQImbalance 0xc98 828fc8598eSJerry Chuang #define rOFDM0_XDTxAFE 0xc9c 838fc8598eSJerry Chuang 848fc8598eSJerry Chuang 852160e944SSanjeev Sharma /* page d */ 868fc8598eSJerry Chuang #define rOFDM1_LSTF 0xd00 878fc8598eSJerry Chuang #define rOFDM1_TRxPathEnable 0xd04 888fc8598eSJerry Chuang 892160e944SSanjeev Sharma /* page e */ 908fc8598eSJerry Chuang #define rTxAGC_Rate18_06 0xe00 918fc8598eSJerry Chuang #define rTxAGC_Rate54_24 0xe04 928fc8598eSJerry Chuang #define rTxAGC_CCK_Mcs32 0xe08 938fc8598eSJerry Chuang #define rTxAGC_Mcs03_Mcs00 0xe10 948fc8598eSJerry Chuang #define rTxAGC_Mcs07_Mcs04 0xe14 958fc8598eSJerry Chuang #define rTxAGC_Mcs11_Mcs08 0xe18 968fc8598eSJerry Chuang #define rTxAGC_Mcs15_Mcs12 0xe1c 978fc8598eSJerry Chuang 988fc8598eSJerry Chuang 992160e944SSanjeev Sharma /* RF 1002160e944SSanjeev Sharma * Zebra1 1012160e944SSanjeev Sharma */ 1028fc8598eSJerry Chuang #define rZebra1_Channel 0x7 1038fc8598eSJerry Chuang 1042160e944SSanjeev Sharma /* Zebra4 */ 1058fc8598eSJerry Chuang #define rGlobalCtrl 0 1068fc8598eSJerry Chuang 1072160e944SSanjeev Sharma /* Bit Mask 108531db655SJohn Whitmore * page-8 1092160e944SSanjeev Sharma */ 1108fc8598eSJerry Chuang #define bRFMOD 0x1 1118fc8598eSJerry Chuang #define bCCKEn 0x1000000 1128fc8598eSJerry Chuang #define bOFDMEn 0x2000000 1138fc8598eSJerry Chuang #define bXBTxAGC 0xf00 1148fc8598eSJerry Chuang #define bXCTxAGC 0xf000 1158fc8598eSJerry Chuang #define b3WireDataLength 0x800 1168fc8598eSJerry Chuang #define b3WireAddressLength 0x400 1178fc8598eSJerry Chuang #define bRFSI_RFENV 0x10 1182160e944SSanjeev Sharma #define bLSSIReadAddress 0x3f000000 /* LSSI "Read" Address */ 1192160e944SSanjeev Sharma #define bLSSIReadEdge 0x80000000 /* LSSI "Read" edge signal */ 1208fc8598eSJerry Chuang #define bLSSIReadBackData 0xfff 1218fc8598eSJerry Chuang #define bXtalCap 0x0f000000 1228fc8598eSJerry Chuang 1232160e944SSanjeev Sharma /* page-a */ 1248fc8598eSJerry Chuang #define bCCKSideBand 0x10 1258fc8598eSJerry Chuang 1262160e944SSanjeev Sharma /* page e */ 1278fc8598eSJerry Chuang #define bTxAGCRateCCK 0x7f00 1288fc8598eSJerry Chuang 1292160e944SSanjeev Sharma /* RF 1302160e944SSanjeev Sharma * Zebra1 1312160e944SSanjeev Sharma */ 1328fc8598eSJerry Chuang #define bZebra1_ChannelNum 0xf80 1338fc8598eSJerry Chuang 1342160e944SSanjeev Sharma /* RTL8258 */ 1352160e944SSanjeev Sharma /* for PutRegsetting & GetRegSetting BitMask */ 1368fc8598eSJerry Chuang #define bMaskByte0 0xff 1378fc8598eSJerry Chuang #define bMaskByte1 0xff00 1388fc8598eSJerry Chuang #define bMaskByte2 0xff0000 1398fc8598eSJerry Chuang #define bMaskHWord 0xffff0000 1408fc8598eSJerry Chuang #define bMaskLWord 0x0000ffff 1418fc8598eSJerry Chuang #define bMaskDWord 0xffffffff 1428fc8598eSJerry Chuang 1432160e944SSanjeev Sharma /* for PutRFRegsetting & GetRFRegSetting BitMask */ 1448fc8598eSJerry Chuang #define bMask12Bits 0xfff 1458fc8598eSJerry Chuang 1462160e944SSanjeev Sharma #endif /* __INC_HAL8190PCIPHYREG_H */ 147