Back to home page

OSCL-LXR

 
 

    


0001 
0002 /* SPDX-License-Identifier: GPL-2.0 */
0003 /*
0004  * Copyright (c) 2017, The Linux Foundation. All rights reserved.
0005  */
0006 
0007 #ifndef QCOM_PHY_QMP_QSERDES_TXRX_V5_H_
0008 #define QCOM_PHY_QMP_QSERDES_TXRX_V5_H_
0009 
0010 /* Only for QMP V5 PHY - TX registers */
0011 #define QSERDES_V5_TX_BIST_MODE_LANENO          0x000
0012 #define QSERDES_V5_TX_BIST_INVERT           0x004
0013 #define QSERDES_V5_TX_CLKBUF_ENABLE         0x008
0014 #define QSERDES_V5_TX_TX_EMP_POST1_LVL          0x00c
0015 #define QSERDES_V5_TX_TX_IDLE_LVL_LARGE_AMP     0x010
0016 #define QSERDES_V5_TX_TX_DRV_LVL            0x014
0017 #define QSERDES_V5_TX_TX_DRV_LVL_OFFSET         0x018
0018 #define QSERDES_V5_TX_RESET_TSYNC_EN            0x01c
0019 #define QSERDES_V5_TX_PRE_STALL_LDO_BOOST_EN        0x020
0020 #define QSERDES_V5_TX_TX_BAND               0x024
0021 #define QSERDES_V5_TX_SLEW_CNTL             0x028
0022 #define QSERDES_V5_TX_INTERFACE_SELECT          0x02c
0023 #define QSERDES_V5_TX_LPB_EN                0x030
0024 #define QSERDES_V5_TX_RES_CODE_LANE_TX          0x034
0025 #define QSERDES_V5_TX_RES_CODE_LANE_RX          0x038
0026 #define QSERDES_V5_TX_RES_CODE_LANE_OFFSET_TX       0x03c
0027 #define QSERDES_V5_TX_RES_CODE_LANE_OFFSET_RX       0x040
0028 #define QSERDES_V5_TX_PERL_LENGTH1          0x044
0029 #define QSERDES_V5_TX_PERL_LENGTH2          0x048
0030 #define QSERDES_V5_TX_SERDES_BYP_EN_OUT         0x04c
0031 #define QSERDES_V5_TX_DEBUG_BUS_SEL         0x050
0032 #define QSERDES_V5_TX_TRANSCEIVER_BIAS_EN       0x054
0033 #define QSERDES_V5_TX_HIGHZ_DRVR_EN         0x058
0034 #define QSERDES_V5_TX_TX_POL_INV            0x05c
0035 #define QSERDES_V5_TX_PARRATE_REC_DETECT_IDLE_EN    0x060
0036 #define QSERDES_V5_TX_BIST_PATTERN1         0x064
0037 #define QSERDES_V5_TX_BIST_PATTERN2         0x068
0038 #define QSERDES_V5_TX_BIST_PATTERN3         0x06c
0039 #define QSERDES_V5_TX_BIST_PATTERN4         0x070
0040 #define QSERDES_V5_TX_BIST_PATTERN5         0x074
0041 #define QSERDES_V5_TX_BIST_PATTERN6         0x078
0042 #define QSERDES_V5_TX_BIST_PATTERN7         0x07c
0043 #define QSERDES_V5_TX_BIST_PATTERN8         0x080
0044 #define QSERDES_V5_TX_LANE_MODE_1           0x084
0045 #define QSERDES_V5_TX_LANE_MODE_2           0x088
0046 #define QSERDES_V5_TX_LANE_MODE_3           0x08c
0047 #define QSERDES_V5_TX_LANE_MODE_4           0x090
0048 #define QSERDES_V5_TX_LANE_MODE_5           0x094
0049 #define QSERDES_V5_TX_ATB_SEL1              0x098
0050 #define QSERDES_V5_TX_ATB_SEL2              0x09c
0051 #define QSERDES_V5_TX_RCV_DETECT_LVL            0x0a0
0052 #define QSERDES_V5_TX_RCV_DETECT_LVL_2          0x0a4
0053 #define QSERDES_V5_TX_PRBS_SEED1            0x0a8
0054 #define QSERDES_V5_TX_PRBS_SEED2            0x0ac
0055 #define QSERDES_V5_TX_PRBS_SEED3            0x0b0
0056 #define QSERDES_V5_TX_PRBS_SEED4            0x0b4
0057 #define QSERDES_V5_TX_RESET_GEN             0x0b8
0058 #define QSERDES_V5_TX_RESET_GEN_MUXES           0x0bc
0059 #define QSERDES_V5_TX_TRAN_DRVR_EMP_EN          0x0c0
0060 #define QSERDES_V5_TX_TX_INTERFACE_MODE         0x0c4
0061 #define QSERDES_V5_TX_VMODE_CTRL1           0x0c8
0062 #define QSERDES_V5_TX_ALOG_OBSV_BUS_CTRL_1      0x0cc
0063 #define QSERDES_V5_TX_BIST_STATUS           0x0d0
0064 #define QSERDES_V5_TX_BIST_ERROR_COUNT1         0x0d4
0065 #define QSERDES_V5_TX_BIST_ERROR_COUNT2         0x0d8
0066 #define QSERDES_V5_TX_ALOG_OBSV_BUS_STATUS_1        0x0dc
0067 #define QSERDES_V5_TX_LANE_DIG_CONFIG           0x0e0
0068 #define QSERDES_V5_TX_PI_QEC_CTRL           0x0e4
0069 #define QSERDES_V5_TX_PRE_EMPH              0x0e8
0070 #define QSERDES_V5_TX_SW_RESET              0x0ec
0071 #define QSERDES_V5_TX_DCC_OFFSET            0x0f0
0072 #define QSERDES_V5_TX_DCC_CMUX_POSTCAL_OFFSET       0x0f4
0073 #define QSERDES_V5_TX_DCC_CMUX_CAL_CTRL1        0x0f8
0074 #define QSERDES_V5_TX_DCC_CMUX_CAL_CTRL2        0x0fc
0075 #define QSERDES_V5_TX_DIG_BKUP_CTRL         0x100
0076 #define QSERDES_V5_TX_DEBUG_BUS0            0x104
0077 #define QSERDES_V5_TX_DEBUG_BUS1            0x108
0078 #define QSERDES_V5_TX_DEBUG_BUS2            0x10c
0079 #define QSERDES_V5_TX_DEBUG_BUS3            0x110
0080 #define QSERDES_V5_TX_READ_EQCODE           0x114
0081 #define QSERDES_V5_TX_READ_OFFSETCODE           0x118
0082 #define QSERDES_V5_TX_IA_ERROR_COUNTER_LOW      0x11c
0083 #define QSERDES_V5_TX_IA_ERROR_COUNTER_HIGH     0x120
0084 #define QSERDES_V5_TX_VGA_READ_CODE         0x124
0085 #define QSERDES_V5_TX_VTH_READ_CODE         0x128
0086 #define QSERDES_V5_TX_DFE_TAP1_READ_CODE        0x12c
0087 #define QSERDES_V5_TX_DFE_TAP2_READ_CODE        0x130
0088 #define QSERDES_V5_TX_IDAC_STATUS_I         0x134
0089 #define QSERDES_V5_TX_IDAC_STATUS_IBAR          0x138
0090 #define QSERDES_V5_TX_IDAC_STATUS_Q         0x13c
0091 #define QSERDES_V5_TX_IDAC_STATUS_QBAR          0x140
0092 #define QSERDES_V5_TX_IDAC_STATUS_A         0x144
0093 #define QSERDES_V5_TX_IDAC_STATUS_ABAR          0x148
0094 #define QSERDES_V5_TX_IDAC_STATUS_SM_ON         0x14c
0095 #define QSERDES_V5_TX_IDAC_STATUS_CAL_DONE      0x150
0096 #define QSERDES_V5_TX_IDAC_STATUS_SIGNERROR     0x154
0097 #define QSERDES_V5_TX_DCC_CAL_STATUS            0x158
0098 #define QSERDES_V5_TX_DCC_READ_CODE_STATUS      0x15c
0099 
0100 /* Only for QMP V5 PHY - RX registers */
0101 #define QSERDES_V5_RX_UCDR_FO_GAIN_HALF         0x000
0102 #define QSERDES_V5_RX_UCDR_FO_GAIN_QUARTER      0x004
0103 #define QSERDES_V5_RX_UCDR_FO_GAIN          0x008
0104 #define QSERDES_V5_RX_UCDR_SO_GAIN_HALF         0x00c
0105 #define QSERDES_V5_RX_UCDR_SO_GAIN_QUARTER      0x010
0106 #define QSERDES_V5_RX_UCDR_SO_GAIN          0x014
0107 #define QSERDES_V5_RX_UCDR_SVS_FO_GAIN_HALF     0x018
0108 #define QSERDES_V5_RX_UCDR_SVS_FO_GAIN_QUARTER      0x01c
0109 #define QSERDES_V5_RX_UCDR_SVS_FO_GAIN          0x020
0110 #define QSERDES_V5_RX_UCDR_SVS_SO_GAIN_HALF     0x024
0111 #define QSERDES_V5_RX_UCDR_SVS_SO_GAIN_QUARTER      0x028
0112 #define QSERDES_V5_RX_UCDR_SVS_SO_GAIN          0x02c
0113 #define QSERDES_V5_RX_UCDR_FASTLOCK_FO_GAIN     0x030
0114 #define QSERDES_V5_RX_UCDR_SO_SATURATION_AND_ENABLE 0x034
0115 #define QSERDES_V5_RX_UCDR_FO_TO_SO_DELAY       0x038
0116 #define QSERDES_V5_RX_UCDR_FASTLOCK_COUNT_LOW       0x03c
0117 #define QSERDES_V5_RX_UCDR_FASTLOCK_COUNT_HIGH      0x040
0118 #define QSERDES_V5_RX_UCDR_PI_CONTROLS          0x044
0119 #define QSERDES_V5_RX_UCDR_PI_CTRL2         0x048
0120 #define QSERDES_V5_RX_UCDR_SB2_THRESH1          0x04c
0121 #define QSERDES_V5_RX_UCDR_SB2_THRESH2          0x050
0122 #define QSERDES_V5_RX_UCDR_SB2_GAIN1            0x054
0123 #define QSERDES_V5_RX_UCDR_SB2_GAIN2            0x058
0124 #define QSERDES_V5_RX_AUX_CONTROL           0x05c
0125 #define QSERDES_V5_RX_AUX_DATA_TCOARSE_TFINE        0x060
0126 #define QSERDES_V5_RX_RCLK_AUXDATA_SEL          0x064
0127 #define QSERDES_V5_RX_AC_JTAG_ENABLE            0x068
0128 #define QSERDES_V5_RX_AC_JTAG_INITP         0x06c
0129 #define QSERDES_V5_RX_AC_JTAG_INITN         0x070
0130 #define QSERDES_V5_RX_AC_JTAG_LVL           0x074
0131 #define QSERDES_V5_RX_AC_JTAG_MODE          0x078
0132 #define QSERDES_V5_RX_AC_JTAG_RESET         0x07c
0133 #define QSERDES_V5_RX_RX_TERM_BW            0x080
0134 #define QSERDES_V5_RX_RX_RCVR_IQ_EN         0x084
0135 #define QSERDES_V5_RX_RX_IDAC_I_DC_OFFSETS      0x088
0136 #define QSERDES_V5_RX_RX_IDAC_IBAR_DC_OFFSETS       0x08c
0137 #define QSERDES_V5_RX_RX_IDAC_Q_DC_OFFSETS      0x090
0138 #define QSERDES_V5_RX_RX_IDAC_QBAR_DC_OFFSETS       0x094
0139 #define QSERDES_V5_RX_RX_IDAC_A_DC_OFFSETS      0x098
0140 #define QSERDES_V5_RX_RX_IDAC_ABAR_DC_OFFSETS       0x09c
0141 #define QSERDES_V5_RX_RX_IDAC_EN            0x0a0
0142 #define QSERDES_V5_RX_RX_IDAC_ENABLES           0x0a4
0143 #define QSERDES_V5_RX_RX_IDAC_SIGN          0x0a8
0144 #define QSERDES_V5_RX_RX_HIGHZ_HIGHRATE         0x0ac
0145 #define QSERDES_V5_RX_RX_TERM_AC_BYPASS_DC_COUPLE_OFFSET 0x0b0
0146 #define QSERDES_V5_RX_DFE_1             0x0b4
0147 #define QSERDES_V5_RX_DFE_2             0x0b8
0148 #define QSERDES_V5_RX_DFE_3             0x0bc
0149 #define QSERDES_V5_RX_DFE_4             0x0c0
0150 #define QSERDES_V5_RX_TX_ADAPT_PRE_THRESH1      0x0c4
0151 #define QSERDES_V5_RX_TX_ADAPT_PRE_THRESH2      0x0c8
0152 #define QSERDES_V5_RX_TX_ADAPT_POST_THRESH      0x0cc
0153 #define QSERDES_V5_RX_TX_ADAPT_MAIN_THRESH      0x0d0
0154 #define QSERDES_V5_RX_VGA_CAL_CNTRL1            0x0d4
0155 #define QSERDES_V5_RX_VGA_CAL_CNTRL2            0x0d8
0156 #define QSERDES_V5_RX_GM_CAL                0x0dc
0157 #define QSERDES_V5_RX_RX_VGA_GAIN2_LSB          0x0e0
0158 #define QSERDES_V5_RX_RX_VGA_GAIN2_MSB          0x0e4
0159 #define QSERDES_V5_RX_RX_EQU_ADAPTOR_CNTRL1     0x0e8
0160 #define QSERDES_V5_RX_RX_EQU_ADAPTOR_CNTRL2     0x0ec
0161 #define QSERDES_V5_RX_RX_EQU_ADAPTOR_CNTRL3     0x0f0
0162 #define QSERDES_V5_RX_RX_EQU_ADAPTOR_CNTRL4     0x0f4
0163 #define QSERDES_V5_RX_RX_IDAC_TSETTLE_LOW       0x0f8
0164 #define QSERDES_V5_RX_RX_IDAC_TSETTLE_HIGH      0x0fc
0165 #define QSERDES_V5_RX_RX_IDAC_MEASURE_TIME      0x100
0166 #define QSERDES_V5_RX_RX_IDAC_ACCUMULATOR       0x104
0167 #define QSERDES_V5_RX_RX_EQ_OFFSET_LSB          0x108
0168 #define QSERDES_V5_RX_RX_EQ_OFFSET_MSB          0x10c
0169 #define QSERDES_V5_RX_RX_EQ_OFFSET_ADAPTOR_CNTRL1   0x110
0170 #define QSERDES_V5_RX_RX_OFFSET_ADAPTOR_CNTRL2      0x114
0171 #define QSERDES_V5_RX_SIGDET_ENABLES            0x118
0172 #define QSERDES_V5_RX_SIGDET_CNTRL          0x11c
0173 #define QSERDES_V5_RX_SIGDET_LVL            0x120
0174 #define QSERDES_V5_RX_SIGDET_DEGLITCH_CNTRL     0x124
0175 #define QSERDES_V5_RX_RX_BAND               0x128
0176 #define QSERDES_V5_RX_CDR_FREEZE_UP_DN          0x12c
0177 #define QSERDES_V5_RX_CDR_RESET_OVERRIDE        0x130
0178 #define QSERDES_V5_RX_RX_INTERFACE_MODE         0x134
0179 #define QSERDES_V5_RX_JITTER_GEN_MODE           0x138
0180 #define QSERDES_V5_RX_SJ_AMP1               0x13c
0181 #define QSERDES_V5_RX_SJ_AMP2               0x140
0182 #define QSERDES_V5_RX_SJ_PER1               0x144
0183 #define QSERDES_V5_RX_SJ_PER2               0x148
0184 #define QSERDES_V5_RX_PPM_OFFSET1           0x14c
0185 #define QSERDES_V5_RX_PPM_OFFSET2           0x150
0186 #define QSERDES_V5_RX_SIGN_PPM_PERIOD1          0x154
0187 #define QSERDES_V5_RX_SIGN_PPM_PERIOD2          0x158
0188 #define QSERDES_V5_RX_RX_MODE_00_LOW            0x15c
0189 #define QSERDES_V5_RX_RX_MODE_00_HIGH           0x160
0190 #define QSERDES_V5_RX_RX_MODE_00_HIGH2          0x164
0191 #define QSERDES_V5_RX_RX_MODE_00_HIGH3          0x168
0192 #define QSERDES_V5_RX_RX_MODE_00_HIGH4          0x16c
0193 #define QSERDES_V5_RX_RX_MODE_01_LOW            0x170
0194 #define QSERDES_V5_RX_RX_MODE_01_HIGH           0x174
0195 #define QSERDES_V5_RX_RX_MODE_01_HIGH2          0x178
0196 #define QSERDES_V5_RX_RX_MODE_01_HIGH3          0x17c
0197 #define QSERDES_V5_RX_RX_MODE_01_HIGH4          0x180
0198 #define QSERDES_V5_RX_RX_MODE_10_LOW            0x184
0199 #define QSERDES_V5_RX_RX_MODE_10_HIGH           0x188
0200 #define QSERDES_V5_RX_RX_MODE_10_HIGH2          0x18c
0201 #define QSERDES_V5_RX_RX_MODE_10_HIGH3          0x190
0202 #define QSERDES_V5_RX_RX_MODE_10_HIGH4          0x194
0203 #define QSERDES_V5_RX_PHPRE_CTRL            0x198
0204 #define QSERDES_V5_RX_PHPRE_INITVAL         0x19c
0205 #define QSERDES_V5_RX_DFE_EN_TIMER          0x1a0
0206 #define QSERDES_V5_RX_DFE_CTLE_POST_CAL_OFFSET      0x1a4
0207 #define QSERDES_V5_RX_DCC_CTRL1             0x1a8
0208 #define QSERDES_V5_RX_DCC_CTRL2             0x1ac
0209 #define QSERDES_V5_RX_VTH_CODE              0x1b0
0210 #define QSERDES_V5_RX_VTH_MIN_THRESH            0x1b4
0211 #define QSERDES_V5_RX_VTH_MAX_THRESH            0x1b8
0212 #define QSERDES_V5_RX_ALOG_OBSV_BUS_CTRL_1      0x1bc
0213 #define QSERDES_V5_RX_PI_CTRL1              0x1c0
0214 #define QSERDES_V5_RX_PI_CTRL2              0x1c4
0215 #define QSERDES_V5_RX_PI_QUAD               0x1c8
0216 #define QSERDES_V5_RX_IDATA1                0x1cc
0217 #define QSERDES_V5_RX_IDATA2                0x1d0
0218 #define QSERDES_V5_RX_AUX_DATA1             0x1d4
0219 #define QSERDES_V5_RX_AUX_DATA2             0x1d8
0220 #define QSERDES_V5_RX_AC_JTAG_OUTP          0x1dc
0221 #define QSERDES_V5_RX_AC_JTAG_OUTN          0x1e0
0222 #define QSERDES_V5_RX_RX_SIGDET             0x1e4
0223 #define QSERDES_V5_RX_ALOG_OBSV_BUS_STATUS_1        0x1e8
0224 
0225 /* Only for QMP V5 UFS ? */
0226 #define QSERDES_V5_TX_PWM_GEAR_1_DIVIDER_BAND0_1    0x178
0227 #define QSERDES_V5_TX_PWM_GEAR_2_DIVIDER_BAND0_1    0x17c
0228 #define QSERDES_V5_TX_PWM_GEAR_3_DIVIDER_BAND0_1    0x180
0229 #define QSERDES_V5_TX_PWM_GEAR_4_DIVIDER_BAND0_1    0x184
0230 
0231 #endif