xref: /arm-trusted-firmware/drivers/marvell/comphy.h (revision 91f16700b400a8c0651d24a598fc48ee2997a0d7)
1*91f16700Schasinglulu /*
2*91f16700Schasinglulu  * Copyright (C) 2018 Marvell International Ltd.
3*91f16700Schasinglulu  *
4*91f16700Schasinglulu  * SPDX-License-Identifier:     BSD-3-Clause
5*91f16700Schasinglulu  * https://spdx.org/licenses
6*91f16700Schasinglulu  */
7*91f16700Schasinglulu 
8*91f16700Schasinglulu /* Driver for COMPHY unit that is part or Marvell A8K SoCs */
9*91f16700Schasinglulu 
10*91f16700Schasinglulu #ifndef COMPHY_H
11*91f16700Schasinglulu #define COMPHY_H
12*91f16700Schasinglulu 
13*91f16700Schasinglulu /* COMPHY registers */
14*91f16700Schasinglulu #define COMMON_PHY_CFG1_REG			0x0
15*91f16700Schasinglulu #define COMMON_PHY_CFG1_PWR_UP_OFFSET		1
16*91f16700Schasinglulu #define COMMON_PHY_CFG1_PWR_UP_MASK		\
17*91f16700Schasinglulu 				(0x1 << COMMON_PHY_CFG1_PWR_UP_OFFSET)
18*91f16700Schasinglulu #define COMMON_PHY_CFG1_PIPE_SELECT_OFFSET	2
19*91f16700Schasinglulu #define COMMON_PHY_CFG1_PIPE_SELECT_MASK	\
20*91f16700Schasinglulu 				(0x1 << COMMON_PHY_CFG1_PIPE_SELECT_OFFSET)
21*91f16700Schasinglulu #define COMMON_PHY_CFG1_PWR_ON_RESET_OFFSET	13
22*91f16700Schasinglulu #define COMMON_PHY_CFG1_PWR_ON_RESET_MASK	\
23*91f16700Schasinglulu 				(0x1 << COMMON_PHY_CFG1_PWR_ON_RESET_OFFSET)
24*91f16700Schasinglulu #define COMMON_PHY_CFG1_CORE_RSTN_OFFSET	14
25*91f16700Schasinglulu #define COMMON_PHY_CFG1_CORE_RSTN_MASK		\
26*91f16700Schasinglulu 				(0x1 << COMMON_PHY_CFG1_CORE_RSTN_OFFSET)
27*91f16700Schasinglulu #define COMMON_PHY_PHY_MODE_OFFSET		15
28*91f16700Schasinglulu #define COMMON_PHY_PHY_MODE_MASK		\
29*91f16700Schasinglulu 				(0x1 << COMMON_PHY_PHY_MODE_OFFSET)
30*91f16700Schasinglulu 
31*91f16700Schasinglulu #define COMMON_SELECTOR_PHY_OFFSET			0x140
32*91f16700Schasinglulu #define COMMON_SELECTOR_PIPE_OFFSET			0x144
33*91f16700Schasinglulu 
34*91f16700Schasinglulu #define COMMON_PHY_SD_CTRL1				0x148
35*91f16700Schasinglulu #define COMMON_PHY_SD_CTRL1_COMPHY_0_4_PORT_OFFSET	0
36*91f16700Schasinglulu #define COMMON_PHY_SD_CTRL1_COMPHY_0_4_PORT_MASK	0xFFFF
37*91f16700Schasinglulu #define COMMON_PHY_SD_CTRL1_PCIE_X4_EN_OFFSET		24
38*91f16700Schasinglulu #define COMMON_PHY_SD_CTRL1_PCIE_X4_EN_MASK		\
39*91f16700Schasinglulu 				(0x1 << COMMON_PHY_SD_CTRL1_PCIE_X4_EN_OFFSET)
40*91f16700Schasinglulu #define COMMON_PHY_SD_CTRL1_PCIE_X2_EN_OFFSET		25
41*91f16700Schasinglulu #define COMMON_PHY_SD_CTRL1_PCIE_X2_EN_MASK		\
42*91f16700Schasinglulu 				(0x1 << COMMON_PHY_SD_CTRL1_PCIE_X2_EN_OFFSET)
43*91f16700Schasinglulu 
44*91f16700Schasinglulu #define DFX_DEV_GEN_CTRL12			0x80
45*91f16700Schasinglulu #define DFX_DEV_GEN_PCIE_CLK_SRC_OFFSET		7
46*91f16700Schasinglulu #define DFX_DEV_GEN_PCIE_CLK_SRC_MASK		\
47*91f16700Schasinglulu 				(0x3 << DFX_DEV_GEN_PCIE_CLK_SRC_OFFSET)
48*91f16700Schasinglulu 
49*91f16700Schasinglulu /* HPIPE register */
50*91f16700Schasinglulu #define HPIPE_PWR_PLL_REG			0x4
51*91f16700Schasinglulu #define HPIPE_PWR_PLL_REF_FREQ_OFFSET		0
52*91f16700Schasinglulu #define HPIPE_PWR_PLL_REF_FREQ_MASK		\
53*91f16700Schasinglulu 				(0x1f << HPIPE_PWR_PLL_REF_FREQ_OFFSET)
54*91f16700Schasinglulu #define HPIPE_PWR_PLL_PHY_MODE_OFFSET		5
55*91f16700Schasinglulu #define HPIPE_PWR_PLL_PHY_MODE_MASK		\
56*91f16700Schasinglulu 				(0x7 << HPIPE_PWR_PLL_PHY_MODE_OFFSET)
57*91f16700Schasinglulu 
58*91f16700Schasinglulu #define HPIPE_DFE_REG0				0x01C
59*91f16700Schasinglulu #define HPIPE_DFE_RES_FORCE_OFFSET		15
60*91f16700Schasinglulu #define HPIPE_DFE_RES_FORCE_MASK		\
61*91f16700Schasinglulu 				(0x1 << HPIPE_DFE_RES_FORCE_OFFSET)
62*91f16700Schasinglulu 
63*91f16700Schasinglulu #define HPIPE_G2_SET_1_REG			0x040
64*91f16700Schasinglulu #define HPIPE_G2_SET_1_G2_RX_SELMUPI_OFFSET	0
65*91f16700Schasinglulu #define HPIPE_G2_SET_1_G2_RX_SELMUPI_MASK	\
66*91f16700Schasinglulu 				(0x7 << HPIPE_G2_SET_1_G2_RX_SELMUPI_OFFSET)
67*91f16700Schasinglulu #define HPIPE_G2_SET_1_G2_RX_SELMUPP_OFFSET	3
68*91f16700Schasinglulu #define HPIPE_G2_SET_1_G2_RX_SELMUPP_MASK	\
69*91f16700Schasinglulu 				(0x7 << HPIPE_G2_SET_1_G2_RX_SELMUPP_OFFSET)
70*91f16700Schasinglulu #define HPIPE_G2_SET_1_G2_RX_SELMUFI_OFFSET	6
71*91f16700Schasinglulu #define HPIPE_G2_SET_1_G2_RX_SELMUFI_MASK	\
72*91f16700Schasinglulu 				(0x3 << HPIPE_G2_SET_1_G2_RX_SELMUFI_OFFSET)
73*91f16700Schasinglulu 
74*91f16700Schasinglulu #define HPIPE_G3_SETTINGS_1_REG			0x048
75*91f16700Schasinglulu #define HPIPE_G3_RX_SELMUPI_OFFSET		0
76*91f16700Schasinglulu #define HPIPE_G3_RX_SELMUPI_MASK		\
77*91f16700Schasinglulu 				(0x7 << HPIPE_G3_RX_SELMUPI_OFFSET)
78*91f16700Schasinglulu #define HPIPE_G3_RX_SELMUPF_OFFSET		3
79*91f16700Schasinglulu #define HPIPE_G3_RX_SELMUPF_MASK		\
80*91f16700Schasinglulu 				(0x7 << HPIPE_G3_RX_SELMUPF_OFFSET)
81*91f16700Schasinglulu #define HPIPE_G3_SETTING_BIT_OFFSET		13
82*91f16700Schasinglulu #define HPIPE_G3_SETTING_BIT_MASK		\
83*91f16700Schasinglulu 				(0x1 << HPIPE_G3_SETTING_BIT_OFFSET)
84*91f16700Schasinglulu 
85*91f16700Schasinglulu #define HPIPE_INTERFACE_REG			0x94
86*91f16700Schasinglulu #define HPIPE_INTERFACE_GEN_MAX_OFFSET		10
87*91f16700Schasinglulu #define HPIPE_INTERFACE_GEN_MAX_MASK		\
88*91f16700Schasinglulu 				(0x3 << HPIPE_INTERFACE_GEN_MAX_OFFSET)
89*91f16700Schasinglulu #define HPIPE_INTERFACE_DET_BYPASS_OFFSET	12
90*91f16700Schasinglulu #define HPIPE_INTERFACE_DET_BYPASS_MASK		\
91*91f16700Schasinglulu 				(0x1 << HPIPE_INTERFACE_DET_BYPASS_OFFSET)
92*91f16700Schasinglulu #define HPIPE_INTERFACE_LINK_TRAIN_OFFSET	14
93*91f16700Schasinglulu #define HPIPE_INTERFACE_LINK_TRAIN_MASK		\
94*91f16700Schasinglulu 				(0x1 << HPIPE_INTERFACE_LINK_TRAIN_OFFSET)
95*91f16700Schasinglulu 
96*91f16700Schasinglulu #define HPIPE_VDD_CAL_CTRL_REG			0x114
97*91f16700Schasinglulu #define HPIPE_EXT_SELLV_RXSAMPL_OFFSET		5
98*91f16700Schasinglulu #define HPIPE_EXT_SELLV_RXSAMPL_MASK		\
99*91f16700Schasinglulu 				(0x1f << HPIPE_EXT_SELLV_RXSAMPL_OFFSET)
100*91f16700Schasinglulu 
101*91f16700Schasinglulu #define HPIPE_PCIE_REG0				0x120
102*91f16700Schasinglulu #define HPIPE_PCIE_IDLE_SYNC_OFFSET		12
103*91f16700Schasinglulu #define HPIPE_PCIE_IDLE_SYNC_MASK		\
104*91f16700Schasinglulu 				(0x1 << HPIPE_PCIE_IDLE_SYNC_OFFSET)
105*91f16700Schasinglulu #define HPIPE_PCIE_SEL_BITS_OFFSET		13
106*91f16700Schasinglulu #define HPIPE_PCIE_SEL_BITS_MASK		\
107*91f16700Schasinglulu 				(0x3 << HPIPE_PCIE_SEL_BITS_OFFSET)
108*91f16700Schasinglulu 
109*91f16700Schasinglulu #define HPIPE_LANE_ALIGN_REG			0x124
110*91f16700Schasinglulu #define HPIPE_LANE_ALIGN_OFF_OFFSET		12
111*91f16700Schasinglulu #define HPIPE_LANE_ALIGN_OFF_MASK		\
112*91f16700Schasinglulu 				(0x1 << HPIPE_LANE_ALIGN_OFF_OFFSET)
113*91f16700Schasinglulu 
114*91f16700Schasinglulu #define HPIPE_MISC_REG				0x13C
115*91f16700Schasinglulu #define HPIPE_MISC_CLK100M_125M_OFFSET		4
116*91f16700Schasinglulu #define HPIPE_MISC_CLK100M_125M_MASK		\
117*91f16700Schasinglulu 				(0x1 << HPIPE_MISC_CLK100M_125M_OFFSET)
118*91f16700Schasinglulu #define HPIPE_MISC_ICP_FORCE_OFFSET		5
119*91f16700Schasinglulu #define HPIPE_MISC_ICP_FORCE_MASK		\
120*91f16700Schasinglulu 				(0x1 << HPIPE_MISC_ICP_FORCE_OFFSET)
121*91f16700Schasinglulu #define HPIPE_MISC_TXDCLK_2X_OFFSET		6
122*91f16700Schasinglulu #define HPIPE_MISC_TXDCLK_2X_MASK		\
123*91f16700Schasinglulu 				(0x1 << HPIPE_MISC_TXDCLK_2X_OFFSET)
124*91f16700Schasinglulu #define HPIPE_MISC_CLK500_EN_OFFSET		7
125*91f16700Schasinglulu #define HPIPE_MISC_CLK500_EN_MASK		\
126*91f16700Schasinglulu 				(0x1 << HPIPE_MISC_CLK500_EN_OFFSET)
127*91f16700Schasinglulu #define HPIPE_MISC_REFCLK_SEL_OFFSET		10
128*91f16700Schasinglulu #define HPIPE_MISC_REFCLK_SEL_MASK		\
129*91f16700Schasinglulu 				(0x1 << HPIPE_MISC_REFCLK_SEL_OFFSET)
130*91f16700Schasinglulu 
131*91f16700Schasinglulu #define HPIPE_SAMPLER_N_PROC_CALIB_CTRL_REG	0x16C
132*91f16700Schasinglulu #define HPIPE_SMAPLER_OFFSET			12
133*91f16700Schasinglulu #define HPIPE_SMAPLER_MASK			(0x1 << HPIPE_SMAPLER_OFFSET)
134*91f16700Schasinglulu 
135*91f16700Schasinglulu #define HPIPE_PWR_CTR_DTL_REG			0x184
136*91f16700Schasinglulu #define HPIPE_PWR_CTR_DTL_FLOOP_EN_OFFSET	2
137*91f16700Schasinglulu #define HPIPE_PWR_CTR_DTL_FLOOP_EN_MASK		\
138*91f16700Schasinglulu 				(0x1 << HPIPE_PWR_CTR_DTL_FLOOP_EN_OFFSET)
139*91f16700Schasinglulu 
140*91f16700Schasinglulu #define HPIPE_FRAME_DET_CONTROL_REG		0x220
141*91f16700Schasinglulu #define HPIPE_FRAME_DET_LOCK_LOST_TO_OFFSET	12
142*91f16700Schasinglulu #define HPIPE_FRAME_DET_LOCK_LOST_TO_MASK	\
143*91f16700Schasinglulu 				(0x1 << HPIPE_FRAME_DET_LOCK_LOST_TO_OFFSET)
144*91f16700Schasinglulu 
145*91f16700Schasinglulu #define HPIPE_TX_TRAIN_CTRL_0_REG		0x268
146*91f16700Schasinglulu #define HPIPE_TX_TRAIN_P2P_HOLD_OFFSET		15
147*91f16700Schasinglulu #define HPIPE_TX_TRAIN_P2P_HOLD_MASK		\
148*91f16700Schasinglulu 				(0x1 << HPIPE_TX_TRAIN_P2P_HOLD_OFFSET)
149*91f16700Schasinglulu 
150*91f16700Schasinglulu #define HPIPE_TX_TRAIN_CTRL_REG			0x26C
151*91f16700Schasinglulu #define HPIPE_TX_TRAIN_CTRL_G1_OFFSET		0
152*91f16700Schasinglulu #define HPIPE_TX_TRAIN_CTRL_G1_MASK		\
153*91f16700Schasinglulu 				(0x1 << HPIPE_TX_TRAIN_CTRL_G1_OFFSET)
154*91f16700Schasinglulu #define HPIPE_TX_TRAIN_CTRL_GN1_OFFSET		1
155*91f16700Schasinglulu #define HPIPE_TX_TRAIN_CTRL_GN1_MASK		\
156*91f16700Schasinglulu 				(0x1 << HPIPE_TX_TRAIN_CTRL_GN1_OFFSET)
157*91f16700Schasinglulu #define HPIPE_TX_TRAIN_CTRL_G0_OFFSET		2
158*91f16700Schasinglulu #define HPIPE_TX_TRAIN_CTRL_G0_MASK		\
159*91f16700Schasinglulu 				(0x1 << HPIPE_TX_TRAIN_CTRL_G0_OFFSET)
160*91f16700Schasinglulu 
161*91f16700Schasinglulu #define HPIPE_TX_TRAIN_CTRL_4_REG		0x278
162*91f16700Schasinglulu #define HPIPE_TRX_TRAIN_TIMER_OFFSET		0
163*91f16700Schasinglulu #define HPIPE_TRX_TRAIN_TIMER_MASK		\
164*91f16700Schasinglulu 				(0x3FF << HPIPE_TRX_TRAIN_TIMER_OFFSET)
165*91f16700Schasinglulu 
166*91f16700Schasinglulu #define HPIPE_TX_TRAIN_CTRL_5_REG		0x2A4
167*91f16700Schasinglulu #define HPIPE_TX_TRAIN_START_SQ_EN_OFFSET	11
168*91f16700Schasinglulu #define HPIPE_TX_TRAIN_START_SQ_EN_MASK		\
169*91f16700Schasinglulu 				(0x1 << HPIPE_TX_TRAIN_START_SQ_EN_OFFSET)
170*91f16700Schasinglulu #define HPIPE_TX_TRAIN_START_FRM_DET_EN_OFFSET	12
171*91f16700Schasinglulu #define HPIPE_TX_TRAIN_START_FRM_DET_EN_MASK	\
172*91f16700Schasinglulu 				(0x1 << HPIPE_TX_TRAIN_START_FRM_DET_EN_OFFSET)
173*91f16700Schasinglulu #define HPIPE_TX_TRAIN_START_FRM_LOCK_EN_OFFSET	13
174*91f16700Schasinglulu #define HPIPE_TX_TRAIN_START_FRM_LOCK_EN_MASK	\
175*91f16700Schasinglulu 				(0x1 << HPIPE_TX_TRAIN_START_FRM_LOCK_EN_OFFSET)
176*91f16700Schasinglulu #define HPIPE_TX_TRAIN_WAIT_TIME_EN_OFFSET	14
177*91f16700Schasinglulu #define HPIPE_TX_TRAIN_WAIT_TIME_EN_MASK	\
178*91f16700Schasinglulu 				(0x1 << HPIPE_TX_TRAIN_WAIT_TIME_EN_OFFSET)
179*91f16700Schasinglulu 
180*91f16700Schasinglulu #define HPIPE_TX_TRAIN_REG			0x31C
181*91f16700Schasinglulu #define HPIPE_TX_TRAIN_CHK_INIT_OFFSET		4
182*91f16700Schasinglulu #define HPIPE_TX_TRAIN_CHK_INIT_MASK		\
183*91f16700Schasinglulu 				(0x1 << HPIPE_TX_TRAIN_CHK_INIT_OFFSET)
184*91f16700Schasinglulu #define HPIPE_TX_TRAIN_COE_FM_PIN_PCIE3_OFFSET	7
185*91f16700Schasinglulu #define HPIPE_TX_TRAIN_COE_FM_PIN_PCIE3_MASK	\
186*91f16700Schasinglulu 				(0x1 << HPIPE_TX_TRAIN_COE_FM_PIN_PCIE3_OFFSET)
187*91f16700Schasinglulu 
188*91f16700Schasinglulu #define HPIPE_CDR_CONTROL_REG			0x418
189*91f16700Schasinglulu #define HPIPE_CDR_RX_MAX_DFE_ADAPT_0_OFFSET	14
190*91f16700Schasinglulu #define HPIPE_CDR_RX_MAX_DFE_ADAPT_0_MASK	\
191*91f16700Schasinglulu 				(0x3 << HPIPE_CDR_RX_MAX_DFE_ADAPT_0_OFFSET)
192*91f16700Schasinglulu #define HPIPE_CDR_RX_MAX_DFE_ADAPT_1_OFFSET	12
193*91f16700Schasinglulu #define HPIPE_CDR_RX_MAX_DFE_ADAPT_1_MASK	\
194*91f16700Schasinglulu 				(0x3 << HPIPE_CDR_RX_MAX_DFE_ADAPT_1_OFFSET)
195*91f16700Schasinglulu #define HPIPE_CDR_MAX_DFE_ADAPT_0_OFFSET	9
196*91f16700Schasinglulu #define HPIPE_CDR_MAX_DFE_ADAPT_0_MASK		\
197*91f16700Schasinglulu 				(0x7 << HPIPE_CDR_MAX_DFE_ADAPT_0_OFFSET)
198*91f16700Schasinglulu #define HPIPE_CDR_MAX_DFE_ADAPT_1_OFFSET	6
199*91f16700Schasinglulu #define HPIPE_CDR_MAX_DFE_ADAPT_1_MASK		\
200*91f16700Schasinglulu 				(0x7 << HPIPE_CDR_MAX_DFE_ADAPT_1_OFFSET)
201*91f16700Schasinglulu 
202*91f16700Schasinglulu #define HPIPE_TX_TRAIN_CTRL_11_REG		0x438
203*91f16700Schasinglulu #define HPIPE_TX_STATUS_CHECK_MODE_OFFSET	6
204*91f16700Schasinglulu #define HPIPE_TX_TX_STATUS_CHECK_MODE_MASK	\
205*91f16700Schasinglulu 				(0x1 << HPIPE_TX_STATUS_CHECK_MODE_OFFSET)
206*91f16700Schasinglulu #define HPIPE_TX_NUM_OF_PRESET_OFFSET		10
207*91f16700Schasinglulu #define HPIPE_TX_NUM_OF_PRESET_MASK		\
208*91f16700Schasinglulu 				(0x7 << HPIPE_TX_NUM_OF_PRESET_OFFSET)
209*91f16700Schasinglulu #define HPIPE_TX_SWEEP_PRESET_EN_OFFSET		15
210*91f16700Schasinglulu #define HPIPE_TX_SWEEP_PRESET_EN_MASK		\
211*91f16700Schasinglulu 				(0x1 << HPIPE_TX_SWEEP_PRESET_EN_OFFSET)
212*91f16700Schasinglulu #define HPIPE_G2_SETTINGS_4_REG			0x44C
213*91f16700Schasinglulu #define HPIPE_G2_DFE_RES_OFFSET			8
214*91f16700Schasinglulu #define HPIPE_G2_DFE_RES_MASK			(0x3 << HPIPE_G2_DFE_RES_OFFSET)
215*91f16700Schasinglulu 
216*91f16700Schasinglulu #define HPIPE_G3_SETTING_3_REG			0x450
217*91f16700Schasinglulu #define HPIPE_G3_FFE_CAP_SEL_OFFSET		0
218*91f16700Schasinglulu #define HPIPE_G3_FFE_CAP_SEL_MASK		\
219*91f16700Schasinglulu 				(0xf << HPIPE_G3_FFE_CAP_SEL_OFFSET)
220*91f16700Schasinglulu #define HPIPE_G3_FFE_RES_SEL_OFFSET		4
221*91f16700Schasinglulu #define HPIPE_G3_FFE_RES_SEL_MASK		\
222*91f16700Schasinglulu 				(0x7 << HPIPE_G3_FFE_RES_SEL_OFFSET)
223*91f16700Schasinglulu #define HPIPE_G3_FFE_SETTING_FORCE_OFFSET	7
224*91f16700Schasinglulu #define HPIPE_G3_FFE_SETTING_FORCE_MASK		\
225*91f16700Schasinglulu 				(0x1 << HPIPE_G3_FFE_SETTING_FORCE_OFFSET)
226*91f16700Schasinglulu #define HPIPE_G3_FFE_DEG_RES_LEVEL_OFFSET	12
227*91f16700Schasinglulu #define HPIPE_G3_FFE_DEG_RES_LEVEL_MASK		\
228*91f16700Schasinglulu 				(0x3 << HPIPE_G3_FFE_DEG_RES_LEVEL_OFFSET)
229*91f16700Schasinglulu #define HPIPE_G3_FFE_LOAD_RES_LEVEL_OFFSET	14
230*91f16700Schasinglulu #define HPIPE_G3_FFE_LOAD_RES_LEVEL_MASK	\
231*91f16700Schasinglulu 				(0x3 << HPIPE_G3_FFE_LOAD_RES_LEVEL_OFFSET)
232*91f16700Schasinglulu 
233*91f16700Schasinglulu #define HPIPE_G3_SETTING_4_REG			0x454
234*91f16700Schasinglulu #define HPIPE_G3_DFE_RES_OFFSET			8
235*91f16700Schasinglulu #define HPIPE_G3_DFE_RES_MASK			(0x3 << HPIPE_G3_DFE_RES_OFFSET)
236*91f16700Schasinglulu 
237*91f16700Schasinglulu #define HPIPE_DFE_CONTROL_REG			0x470
238*91f16700Schasinglulu #define HPIPE_DFE_TX_MAX_DFE_ADAPT_OFFSET	14
239*91f16700Schasinglulu #define HPIPE_DFE_TX_MAX_DFE_ADAPT_MASK		\
240*91f16700Schasinglulu 				(0x3 << HPIPE_DFE_TX_MAX_DFE_ADAPT_OFFSET)
241*91f16700Schasinglulu 
242*91f16700Schasinglulu #define HPIPE_DFE_CTRL_28_REG			0x49C
243*91f16700Schasinglulu #define HPIPE_DFE_CTRL_28_PIPE4_OFFSET		7
244*91f16700Schasinglulu #define HPIPE_DFE_CTRL_28_PIPE4_MASK		\
245*91f16700Schasinglulu 				(0x1 << HPIPE_DFE_CTRL_28_PIPE4_OFFSET)
246*91f16700Schasinglulu 
247*91f16700Schasinglulu #define HPIPE_G3_SETTING_5_REG			0x548
248*91f16700Schasinglulu #define HPIPE_G3_SETTING_5_G3_ICP_OFFSET	0
249*91f16700Schasinglulu #define HPIPE_G3_SETTING_5_G3_ICP_MASK		\
250*91f16700Schasinglulu 				(0xf << HPIPE_G3_SETTING_5_G3_ICP_OFFSET)
251*91f16700Schasinglulu 
252*91f16700Schasinglulu #define HPIPE_LANE_STATUS1_REG			0x60C
253*91f16700Schasinglulu #define HPIPE_LANE_STATUS1_PCLK_EN_OFFSET	0
254*91f16700Schasinglulu #define HPIPE_LANE_STATUS1_PCLK_EN_MASK		\
255*91f16700Schasinglulu 				(0x1 << HPIPE_LANE_STATUS1_PCLK_EN_OFFSET)
256*91f16700Schasinglulu 
257*91f16700Schasinglulu #define HPIPE_LANE_CFG4_REG			0x620
258*91f16700Schasinglulu #define HPIPE_LANE_CFG4_DFE_EN_SEL_OFFSET	3
259*91f16700Schasinglulu #define HPIPE_LANE_CFG4_DFE_EN_SEL_MASK		\
260*91f16700Schasinglulu 				(0x1 << HPIPE_LANE_CFG4_DFE_EN_SEL_OFFSET)
261*91f16700Schasinglulu 
262*91f16700Schasinglulu #define HPIPE_LANE_EQU_CONFIG_0_REG		0x69C
263*91f16700Schasinglulu #define HPIPE_CFG_EQ_FS_OFFSET			0
264*91f16700Schasinglulu #define HPIPE_CFG_EQ_FS_MASK			(0x3f << HPIPE_CFG_EQ_FS_OFFSET)
265*91f16700Schasinglulu #define HPIPE_CFG_EQ_LF_OFFSET			6
266*91f16700Schasinglulu #define HPIPE_CFG_EQ_LF_MASK			(0x3f << HPIPE_CFG_EQ_LF_OFFSET)
267*91f16700Schasinglulu #define HPIPE_CFG_PHY_RC_EP_OFFSET		12
268*91f16700Schasinglulu #define HPIPE_CFG_PHY_RC_EP_MASK		\
269*91f16700Schasinglulu 				(0x1 << HPIPE_CFG_PHY_RC_EP_OFFSET)
270*91f16700Schasinglulu 
271*91f16700Schasinglulu #define HPIPE_LANE_EQ_CFG1_REG			0x6a0
272*91f16700Schasinglulu #define HPIPE_CFG_UPDATE_POLARITY_OFFSET	12
273*91f16700Schasinglulu #define HPIPE_CFG_UPDATE_POLARITY_MASK		\
274*91f16700Schasinglulu 				(0x1 << HPIPE_CFG_UPDATE_POLARITY_OFFSET)
275*91f16700Schasinglulu 
276*91f16700Schasinglulu #define HPIPE_LANE_EQ_CFG2_REG			0x6a4
277*91f16700Schasinglulu #define HPIPE_CFG_EQ_BUNDLE_DIS_OFFSET		14
278*91f16700Schasinglulu #define HPIPE_CFG_EQ_BUNDLE_DIS_MASK		\
279*91f16700Schasinglulu 				(0x1 << HPIPE_CFG_EQ_BUNDLE_DIS_OFFSET)
280*91f16700Schasinglulu 
281*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG0_REG		0x6a8
282*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET0_OFFSET		0
283*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET0_MASK		\
284*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_CURSOR_PRESET0_OFFSET)
285*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET1_OFFSET		6
286*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET1_MASK		\
287*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_CURSOR_PRESET1_OFFSET)
288*91f16700Schasinglulu 
289*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG1_REG		0x6ac
290*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET2_OFFSET		0
291*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET2_MASK		\
292*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_CURSOR_PRESET2_OFFSET)
293*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET3_OFFSET		6
294*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET3_MASK		\
295*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_CURSOR_PRESET3_OFFSET)
296*91f16700Schasinglulu 
297*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG2_REG		0x6b0
298*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET4_OFFSET		0
299*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET4_MASK		\
300*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_CURSOR_PRESET4_OFFSET)
301*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET5_OFFSET		6
302*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET5_MASK		\
303*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_CURSOR_PRESET5_OFFSET)
304*91f16700Schasinglulu 
305*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG3_REG		0x6b4
306*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET6_OFFSET		0
307*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET6_MASK		\
308*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_CURSOR_PRESET6_OFFSET)
309*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET7_OFFSET		6
310*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET7_MASK		\
311*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_CURSOR_PRESET7_OFFSET)
312*91f16700Schasinglulu 
313*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG4_REG		0x6b8
314*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET8_OFFSET		0
315*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET8_MASK		\
316*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_CURSOR_PRESET8_OFFSET)
317*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET9_OFFSET		6
318*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET9_MASK		\
319*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_CURSOR_PRESET9_OFFSET)
320*91f16700Schasinglulu 
321*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG5_REG		0x6bc
322*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET10_OFFSET	0
323*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET10_MASK		\
324*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_CURSOR_PRESET10_OFFSET)
325*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET11_OFFSET	6
326*91f16700Schasinglulu #define HPIPE_CFG_CURSOR_PRESET11_MASK		\
327*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_CURSOR_PRESET11_OFFSET)
328*91f16700Schasinglulu 
329*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG6_REG		0x6c0
330*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET0_OFFSET	0
331*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET0_MASK	\
332*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_PRE_CURSOR_PRESET0_OFFSET)
333*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET0_OFFSET	6
334*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET0_MASK	\
335*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_POST_CURSOR_PRESET0_OFFSET)
336*91f16700Schasinglulu 
337*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG7_REG		0x6c4
338*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET1_OFFSET	0
339*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET1_MASK	\
340*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_PRE_CURSOR_PRESET1_OFFSET)
341*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET1_OFFSET	6
342*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET1_MASK	\
343*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_POST_CURSOR_PRESET1_OFFSET)
344*91f16700Schasinglulu 
345*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG8_REG		0x6c8
346*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET2_OFFSET	0
347*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET2_MASK	\
348*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_PRE_CURSOR_PRESET2_OFFSET)
349*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET2_OFFSET	6
350*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET2_MASK	\
351*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_POST_CURSOR_PRESET2_OFFSET)
352*91f16700Schasinglulu 
353*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG9_REG		0x6cc
354*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET3_OFFSET	0
355*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET3_MASK	\
356*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_PRE_CURSOR_PRESET3_OFFSET)
357*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET3_OFFSET	6
358*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET3_MASK	\
359*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_POST_CURSOR_PRESET3_OFFSET)
360*91f16700Schasinglulu 
361*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG10_REG		0x6d0
362*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET4_OFFSET	0
363*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET4_MASK	\
364*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_PRE_CURSOR_PRESET4_OFFSET)
365*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET4_OFFSET	6
366*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET4_MASK	\
367*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_POST_CURSOR_PRESET4_OFFSET)
368*91f16700Schasinglulu 
369*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG11_REG		0x6d4
370*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET5_OFFSET	0
371*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET5_MASK	\
372*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_PRE_CURSOR_PRESET5_OFFSET)
373*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET5_OFFSET	6
374*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET5_MASK	\
375*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_POST_CURSOR_PRESET5_OFFSET)
376*91f16700Schasinglulu 
377*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG12_REG		0x6d8
378*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET6_OFFSET	0
379*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET6_MASK	\
380*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_PRE_CURSOR_PRESET6_OFFSET)
381*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET6_OFFSET	6
382*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET6_MASK	\
383*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_POST_CURSOR_PRESET6_OFFSET)
384*91f16700Schasinglulu 
385*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG13_REG		0x6dc
386*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET7_OFFSET	0
387*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET7_MASK	\
388*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_PRE_CURSOR_PRESET7_OFFSET)
389*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET7_OFFSET	6
390*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET7_MASK	\
391*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_POST_CURSOR_PRESET7_OFFSET)
392*91f16700Schasinglulu 
393*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG14_REG		0x6e0
394*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET8_OFFSET	0
395*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET8_MASK	\
396*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_PRE_CURSOR_PRESET8_OFFSET)
397*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET8_OFFSET	6
398*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET8_MASK	\
399*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_POST_CURSOR_PRESET8_OFFSET)
400*91f16700Schasinglulu 
401*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG15_REG		0x6e4
402*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET9_OFFSET	0
403*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET9_MASK	\
404*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_PRE_CURSOR_PRESET9_OFFSET)
405*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET9_OFFSET	6
406*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET9_MASK	\
407*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_POST_CURSOR_PRESET9_OFFSET)
408*91f16700Schasinglulu 
409*91f16700Schasinglulu #define HPIPE_LANE_PRESET_CFG16_REG		0x6e8
410*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET10_OFFSET	0
411*91f16700Schasinglulu #define HPIPE_CFG_PRE_CURSOR_PRESET10_MASK	\
412*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_PRE_CURSOR_PRESET10_OFFSET)
413*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET10_OFFSET	6
414*91f16700Schasinglulu #define HPIPE_CFG_POST_CURSOR_PRESET10_MASK	\
415*91f16700Schasinglulu 				(0x3f << HPIPE_CFG_POST_CURSOR_PRESET10_OFFSET)
416*91f16700Schasinglulu 
417*91f16700Schasinglulu #define HPIPE_LANE_EQ_REMOTE_SETTING_REG	0x6f8
418*91f16700Schasinglulu #define HPIPE_LANE_CFG_FOM_DIRN_OVERRIDE_OFFSET	0
419*91f16700Schasinglulu #define HPIPE_LANE_CFG_FOM_DIRN_OVERRIDE_MASK	\
420*91f16700Schasinglulu 				(0x1 << HPIPE_LANE_CFG_FOM_DIRN_OVERRIDE_OFFSET)
421*91f16700Schasinglulu #define HPIPE_LANE_CFG_FOM_ONLY_MODE_OFFFSET	1
422*91f16700Schasinglulu #define HPIPE_LANE_CFG_FOM_ONLY_MODE_MASK	\
423*91f16700Schasinglulu 				(0x1 << HPIPE_LANE_CFG_FOM_ONLY_MODE_OFFFSET)
424*91f16700Schasinglulu #define HPIPE_LANE_CFG_FOM_PRESET_VECTOR_OFFSET	2
425*91f16700Schasinglulu #define HPIPE_LANE_CFG_FOM_PRESET_VECTOR_MASK	\
426*91f16700Schasinglulu 				(0xf << HPIPE_LANE_CFG_FOM_PRESET_VECTOR_OFFSET)
427*91f16700Schasinglulu 
428*91f16700Schasinglulu #define HPIPE_RST_CLK_CTRL_REG			0x704
429*91f16700Schasinglulu #define HPIPE_RST_CLK_CTRL_PIPE_RST_OFFSET	0
430*91f16700Schasinglulu #define HPIPE_RST_CLK_CTRL_PIPE_RST_MASK	\
431*91f16700Schasinglulu 				(0x1 << HPIPE_RST_CLK_CTRL_PIPE_RST_OFFSET)
432*91f16700Schasinglulu #define HPIPE_RST_CLK_CTRL_FIXED_PCLK_OFFSET	2
433*91f16700Schasinglulu #define HPIPE_RST_CLK_CTRL_FIXED_PCLK_MASK	\
434*91f16700Schasinglulu 				(0x1 << HPIPE_RST_CLK_CTRL_FIXED_PCLK_OFFSET)
435*91f16700Schasinglulu #define HPIPE_RST_CLK_CTRL_PIPE_WIDTH_OFFSET	3
436*91f16700Schasinglulu #define HPIPE_RST_CLK_CTRL_PIPE_WIDTH_MASK	\
437*91f16700Schasinglulu 				(0x1 << HPIPE_RST_CLK_CTRL_PIPE_WIDTH_OFFSET)
438*91f16700Schasinglulu #define HPIPE_RST_CLK_CTRL_CORE_FREQ_SEL_OFFSET	9
439*91f16700Schasinglulu #define HPIPE_RST_CLK_CTRL_CORE_FREQ_SEL_MASK	\
440*91f16700Schasinglulu 				(0x1 << HPIPE_RST_CLK_CTRL_CORE_FREQ_SEL_OFFSET)
441*91f16700Schasinglulu 
442*91f16700Schasinglulu #define HPIPE_CLK_SRC_LO_REG				0x70c
443*91f16700Schasinglulu #define HPIPE_CLK_SRC_LO_BUNDLE_PERIOD_SEL_OFFSET	1
444*91f16700Schasinglulu #define HPIPE_CLK_SRC_LO_BUNDLE_PERIOD_SEL_MASK		\
445*91f16700Schasinglulu 			(0x1 << HPIPE_CLK_SRC_LO_BUNDLE_PERIOD_SEL_OFFSET)
446*91f16700Schasinglulu #define HPIPE_CLK_SRC_LO_BUNDLE_PERIOD_SCALE_OFFSET	2
447*91f16700Schasinglulu #define HPIPE_CLK_SRC_LO_BUNDLE_PERIOD_SCALE_MASK	\
448*91f16700Schasinglulu 			(0x3 << HPIPE_CLK_SRC_LO_BUNDLE_PERIOD_SCALE_OFFSET)
449*91f16700Schasinglulu #define HPIPE_CLK_SRC_LO_PLL_RDY_DL_OFFSET		5
450*91f16700Schasinglulu #define HPIPE_CLK_SRC_LO_PLL_RDY_DL_MASK		\
451*91f16700Schasinglulu 			(0x7 << HPIPE_CLK_SRC_LO_PLL_RDY_DL_OFFSET)
452*91f16700Schasinglulu 
453*91f16700Schasinglulu #define HPIPE_CLK_SRC_HI_REG			0x710
454*91f16700Schasinglulu #define HPIPE_CLK_SRC_HI_LANE_STRT_OFFSET	0
455*91f16700Schasinglulu #define HPIPE_CLK_SRC_HI_LANE_STRT_MASK		\
456*91f16700Schasinglulu 			(0x1 << HPIPE_CLK_SRC_HI_LANE_STRT_OFFSET)
457*91f16700Schasinglulu #define HPIPE_CLK_SRC_HI_LANE_BREAK_OFFSET	1
458*91f16700Schasinglulu #define HPIPE_CLK_SRC_HI_LANE_BREAK_MASK	\
459*91f16700Schasinglulu 			(0x1 << HPIPE_CLK_SRC_HI_LANE_BREAK_OFFSET)
460*91f16700Schasinglulu #define HPIPE_CLK_SRC_HI_LANE_MASTER_OFFSET	2
461*91f16700Schasinglulu #define HPIPE_CLK_SRC_HI_LANE_MASTER_MASK	\
462*91f16700Schasinglulu 			(0x1 << HPIPE_CLK_SRC_HI_LANE_MASTER_OFFSET)
463*91f16700Schasinglulu #define HPIPE_CLK_SRC_HI_MODE_PIPE_OFFSET	7
464*91f16700Schasinglulu #define HPIPE_CLK_SRC_HI_MODE_PIPE_MASK		\
465*91f16700Schasinglulu 			(0x1 << HPIPE_CLK_SRC_HI_MODE_PIPE_OFFSET)
466*91f16700Schasinglulu 
467*91f16700Schasinglulu #define HPIPE_GLOBAL_PM_CTRL			0x740
468*91f16700Schasinglulu #define HPIPE_GLOBAL_PM_RXDLOZ_WAIT_OFFSET	0
469*91f16700Schasinglulu #define HPIPE_GLOBAL_PM_RXDLOZ_WAIT_MASK	\
470*91f16700Schasinglulu 			(0xFF << HPIPE_GLOBAL_PM_RXDLOZ_WAIT_OFFSET)
471*91f16700Schasinglulu 
472*91f16700Schasinglulu #endif /* COMPHY_H */
473