xref: /rk3399_ARM-atf/drivers/marvell/comphy/comphy-cp110.h (revision c3cf06f1a3a9b9ee8ac7a0ae505f95c45f7dca84)
10ade8cd8SKonstantin Porotchkin /*
20ade8cd8SKonstantin Porotchkin  * Copyright (C) 2018 Marvell International Ltd.
30ade8cd8SKonstantin Porotchkin  *
40ade8cd8SKonstantin Porotchkin  * SPDX-License-Identifier:     BSD-3-Clause
50ade8cd8SKonstantin Porotchkin  * https://spdx.org/licenses
60ade8cd8SKonstantin Porotchkin  */
70ade8cd8SKonstantin Porotchkin 
80ade8cd8SKonstantin Porotchkin /* Marvell CP110 SoC COMPHY unit driver */
90ade8cd8SKonstantin Porotchkin 
10*c3cf06f1SAntonio Nino Diaz #ifndef COMPHY_CP110_H
11*c3cf06f1SAntonio Nino Diaz #define COMPHY_CP110_H
120ade8cd8SKonstantin Porotchkin 
130ade8cd8SKonstantin Porotchkin #define SD_ADDR(base, lane)			(base + 0x1000 * lane)
140ade8cd8SKonstantin Porotchkin #define HPIPE_ADDR(base, lane)			(SD_ADDR(base, lane) + 0x800)
150ade8cd8SKonstantin Porotchkin #define COMPHY_ADDR(base, lane)			(base + 0x28 * lane)
160ade8cd8SKonstantin Porotchkin 
170ade8cd8SKonstantin Porotchkin #define MAX_NUM_OF_FFE				8
180ade8cd8SKonstantin Porotchkin #define RX_TRAINING_TIMEOUT			500
190ade8cd8SKonstantin Porotchkin 
200ade8cd8SKonstantin Porotchkin /* Comphy registers */
210ade8cd8SKonstantin Porotchkin #define COMMON_PHY_CFG1_REG			0x0
220ade8cd8SKonstantin Porotchkin #define COMMON_PHY_CFG1_PWR_UP_OFFSET		1
230ade8cd8SKonstantin Porotchkin #define COMMON_PHY_CFG1_PWR_UP_MASK		\
240ade8cd8SKonstantin Porotchkin 				(0x1 << COMMON_PHY_CFG1_PWR_UP_OFFSET)
250ade8cd8SKonstantin Porotchkin #define COMMON_PHY_CFG1_PIPE_SELECT_OFFSET	2
260ade8cd8SKonstantin Porotchkin #define COMMON_PHY_CFG1_PIPE_SELECT_MASK	\
270ade8cd8SKonstantin Porotchkin 				(0x1 << COMMON_PHY_CFG1_PIPE_SELECT_OFFSET)
280ade8cd8SKonstantin Porotchkin #define COMMON_PHY_CFG1_CORE_RSTN_OFFSET	13
290ade8cd8SKonstantin Porotchkin #define COMMON_PHY_CFG1_CORE_RSTN_MASK		\
300ade8cd8SKonstantin Porotchkin 				(0x1 << COMMON_PHY_CFG1_CORE_RSTN_OFFSET)
310ade8cd8SKonstantin Porotchkin #define COMMON_PHY_CFG1_PWR_ON_RESET_OFFSET	14
320ade8cd8SKonstantin Porotchkin #define COMMON_PHY_CFG1_PWR_ON_RESET_MASK	\
330ade8cd8SKonstantin Porotchkin 				(0x1 << COMMON_PHY_CFG1_PWR_ON_RESET_OFFSET)
340ade8cd8SKonstantin Porotchkin #define COMMON_PHY_PHY_MODE_OFFSET		15
350ade8cd8SKonstantin Porotchkin #define COMMON_PHY_PHY_MODE_MASK		\
360ade8cd8SKonstantin Porotchkin 				(0x1 << COMMON_PHY_PHY_MODE_OFFSET)
370ade8cd8SKonstantin Porotchkin 
380ade8cd8SKonstantin Porotchkin #define COMMON_PHY_CFG6_REG			0x14
390ade8cd8SKonstantin Porotchkin #define COMMON_PHY_CFG6_IF_40_SEL_OFFSET	18
400ade8cd8SKonstantin Porotchkin #define COMMON_PHY_CFG6_IF_40_SEL_MASK		\
410ade8cd8SKonstantin Porotchkin 				(0x1 << COMMON_PHY_CFG6_IF_40_SEL_OFFSET)
420ade8cd8SKonstantin Porotchkin 
430ade8cd8SKonstantin Porotchkin #define COMMON_PHY_CFG6_REG			0x14
440ade8cd8SKonstantin Porotchkin #define COMMON_PHY_CFG6_IF_40_SEL_OFFSET	18
450ade8cd8SKonstantin Porotchkin #define COMMON_PHY_CFG6_IF_40_SEL_MASK		\
460ade8cd8SKonstantin Porotchkin 				(0x1 << COMMON_PHY_CFG6_IF_40_SEL_OFFSET)
470ade8cd8SKonstantin Porotchkin 
480ade8cd8SKonstantin Porotchkin #define COMMON_SELECTOR_PHY_REG_OFFSET		0x140
490ade8cd8SKonstantin Porotchkin #define COMMON_SELECTOR_PIPE_REG_OFFSET		0x144
500ade8cd8SKonstantin Porotchkin #define COMMON_SELECTOR_COMPHY_MASK		0xf
510ade8cd8SKonstantin Porotchkin #define COMMON_SELECTOR_COMPHYN_FIELD_WIDTH	4
520ade8cd8SKonstantin Porotchkin #define COMMON_SELECTOR_COMPHYN_SATA		0x4
530ade8cd8SKonstantin Porotchkin #define COMMON_SELECTOR_PIPE_COMPHY_PCIE	0x4
540ade8cd8SKonstantin Porotchkin #define COMMON_SELECTOR_PIPE_COMPHY_USBH	0x1
550ade8cd8SKonstantin Porotchkin #define COMMON_SELECTOR_PIPE_COMPHY_USBD	0x2
560ade8cd8SKonstantin Porotchkin 
570ade8cd8SKonstantin Porotchkin /* SGMII/HS-SGMII/SFI/RXAUI */
580ade8cd8SKonstantin Porotchkin #define COMMON_SELECTOR_COMPHY0_1_2_NETWORK	0x1
590ade8cd8SKonstantin Porotchkin #define COMMON_SELECTOR_COMPHY3_RXAUI		0x1
600ade8cd8SKonstantin Porotchkin #define COMMON_SELECTOR_COMPHY3_SGMII		0x2
610ade8cd8SKonstantin Porotchkin #define COMMON_SELECTOR_COMPHY4_PORT1		0x1
620ade8cd8SKonstantin Porotchkin #define COMMON_SELECTOR_COMPHY4_ALL_OTHERS	0x2
630ade8cd8SKonstantin Porotchkin #define COMMON_SELECTOR_COMPHY5_RXAUI		0x2
640ade8cd8SKonstantin Porotchkin #define COMMON_SELECTOR_COMPHY5_SGMII		0x1
650ade8cd8SKonstantin Porotchkin 
660ade8cd8SKonstantin Porotchkin #define COMMON_PHY_SD_CTRL1			0x148
670ade8cd8SKonstantin Porotchkin #define COMMON_PHY_SD_CTRL1_COMPHY_0_PORT_OFFSET	0
680ade8cd8SKonstantin Porotchkin #define COMMON_PHY_SD_CTRL1_COMPHY_1_PORT_OFFSET	4
690ade8cd8SKonstantin Porotchkin #define COMMON_PHY_SD_CTRL1_COMPHY_2_PORT_OFFSET	8
700ade8cd8SKonstantin Porotchkin #define COMMON_PHY_SD_CTRL1_COMPHY_3_PORT_OFFSET	12
710ade8cd8SKonstantin Porotchkin #define COMMON_PHY_SD_CTRL1_COMPHY_0_3_PORT_MASK	0xFFFF
720ade8cd8SKonstantin Porotchkin #define COMMON_PHY_SD_CTRL1_COMPHY_0_1_PORT_MASK	0xFF
730ade8cd8SKonstantin Porotchkin #define COMMON_PHY_SD_CTRL1_PCIE_X4_EN_OFFSET	24
740ade8cd8SKonstantin Porotchkin #define COMMON_PHY_SD_CTRL1_PCIE_X4_EN_MASK	\
750ade8cd8SKonstantin Porotchkin 				(0x1 << COMMON_PHY_SD_CTRL1_PCIE_X4_EN_OFFSET)
760ade8cd8SKonstantin Porotchkin #define COMMON_PHY_SD_CTRL1_PCIE_X2_EN_OFFSET	25
770ade8cd8SKonstantin Porotchkin #define COMMON_PHY_SD_CTRL1_PCIE_X2_EN_MASK	\
780ade8cd8SKonstantin Porotchkin 				(0x1 << COMMON_PHY_SD_CTRL1_PCIE_X2_EN_OFFSET)
790ade8cd8SKonstantin Porotchkin #define COMMON_PHY_SD_CTRL1_RXAUI1_OFFSET	26
800ade8cd8SKonstantin Porotchkin #define COMMON_PHY_SD_CTRL1_RXAUI1_MASK		\
810ade8cd8SKonstantin Porotchkin 				(0x1 << COMMON_PHY_SD_CTRL1_RXAUI1_OFFSET)
820ade8cd8SKonstantin Porotchkin #define COMMON_PHY_SD_CTRL1_RXAUI0_OFFSET	27
830ade8cd8SKonstantin Porotchkin #define COMMON_PHY_SD_CTRL1_RXAUI0_MASK		\
840ade8cd8SKonstantin Porotchkin 				(0x1 << COMMON_PHY_SD_CTRL1_RXAUI0_OFFSET)
850ade8cd8SKonstantin Porotchkin 
860ade8cd8SKonstantin Porotchkin /* DFX register */
870ade8cd8SKonstantin Porotchkin #define DFX_BASE				(0x400000)
880ade8cd8SKonstantin Porotchkin #define DFX_DEV_GEN_CTRL12_REG			(0x280)
890ade8cd8SKonstantin Porotchkin #define DFX_DEV_GEN_PCIE_CLK_SRC_MUX		(0x3)
900ade8cd8SKonstantin Porotchkin #define DFX_DEV_GEN_PCIE_CLK_SRC_OFFSET		7
910ade8cd8SKonstantin Porotchkin #define DFX_DEV_GEN_PCIE_CLK_SRC_MASK		\
920ade8cd8SKonstantin Porotchkin 				(0x3 << DFX_DEV_GEN_PCIE_CLK_SRC_OFFSET)
930ade8cd8SKonstantin Porotchkin 
940ade8cd8SKonstantin Porotchkin /* SerDes IP registers */
950ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG0_REG				0
960ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG0_SD_PU_PLL_OFFSET		1
970ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG0_SD_PU_PLL_MASK		\
980ade8cd8SKonstantin Porotchkin 			(1 << SD_EXTERNAL_CONFIG0_SD_PU_PLL_OFFSET)
990ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG0_SD_PHY_GEN_RX_OFFSET	3
1000ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG0_SD_PHY_GEN_RX_MASK		\
1010ade8cd8SKonstantin Porotchkin 			(0xf << SD_EXTERNAL_CONFIG0_SD_PHY_GEN_RX_OFFSET)
1020ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG0_SD_PHY_GEN_TX_OFFSET	7
1030ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG0_SD_PHY_GEN_TX_MASK		\
1040ade8cd8SKonstantin Porotchkin 			(0xf << SD_EXTERNAL_CONFIG0_SD_PHY_GEN_TX_OFFSET)
1050ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG0_SD_PU_RX_OFFSET		11
1060ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG0_SD_PU_RX_MASK		\
1070ade8cd8SKonstantin Porotchkin 			(1 << SD_EXTERNAL_CONFIG0_SD_PU_RX_OFFSET)
1080ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG0_SD_PU_TX_OFFSET		12
1090ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG0_SD_PU_TX_MASK		\
1100ade8cd8SKonstantin Porotchkin 			(1 << SD_EXTERNAL_CONFIG0_SD_PU_TX_OFFSET)
1110ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG0_HALF_BUS_MODE_OFFSET	14
1120ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG0_HALF_BUS_MODE_MASK		\
1130ade8cd8SKonstantin Porotchkin 			(1 << SD_EXTERNAL_CONFIG0_HALF_BUS_MODE_OFFSET)
1140ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG0_MEDIA_MODE_OFFSET		15
1150ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG0_MEDIA_MODE_MASK		\
1160ade8cd8SKonstantin Porotchkin 			(0x1 << SD_EXTERNAL_CONFIG0_MEDIA_MODE_OFFSET)
1170ade8cd8SKonstantin Porotchkin 
1180ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG1_REG			0x4
1190ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG1_RESET_IN_OFFSET	3
1200ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG1_RESET_IN_MASK	\
1210ade8cd8SKonstantin Porotchkin 			(0x1 << SD_EXTERNAL_CONFIG1_RESET_IN_OFFSET)
1220ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG1_RX_INIT_OFFSET	4
1230ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG1_RX_INIT_MASK	\
1240ade8cd8SKonstantin Porotchkin 			(0x1 << SD_EXTERNAL_CONFIG1_RX_INIT_OFFSET)
1250ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG1_RESET_CORE_OFFSET	5
1260ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG1_RESET_CORE_MASK	\
1270ade8cd8SKonstantin Porotchkin 			(0x1 << SD_EXTERNAL_CONFIG1_RESET_CORE_OFFSET)
1280ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG1_RF_RESET_IN_OFFSET	6
1290ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG1_RF_RESET_IN_MASK	\
1300ade8cd8SKonstantin Porotchkin 			(0x1 << SD_EXTERNAL_CONFIG1_RF_RESET_IN_OFFSET)
1310ade8cd8SKonstantin Porotchkin 
1320ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG2_REG			0x8
1330ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG2_PIN_DFE_EN_OFFSET	4
1340ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG2_PIN_DFE_EN_MASK	\
1350ade8cd8SKonstantin Porotchkin 			(0x1 << SD_EXTERNAL_CONFIG2_PIN_DFE_EN_OFFSET)
1360ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG2_SSC_ENABLE_OFFSET	7
1370ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_CONFIG2_SSC_ENABLE_MASK	\
1380ade8cd8SKonstantin Porotchkin 			(0x1 << SD_EXTERNAL_CONFIG2_SSC_ENABLE_OFFSET)
1390ade8cd8SKonstantin Porotchkin 
1400ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_STATUS_REG				0xc
1410ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_STATUS_START_RX_TRAINING_OFFSET	7
1420ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_STATUS_START_RX_TRAINING_MASK	\
1430ade8cd8SKonstantin Porotchkin 			(1 << SD_EXTERNAL_STATUS_START_RX_TRAINING_OFFSET)
1440ade8cd8SKonstantin Porotchkin 
1450ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_STATUS0_REG			0x18
1460ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_STATUS0_PLL_TX_OFFSET	2
1470ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_STATUS0_PLL_TX_MASK		\
1480ade8cd8SKonstantin Porotchkin 			(0x1 << SD_EXTERNAL_STATUS0_PLL_TX_OFFSET)
1490ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_STATUS0_PLL_RX_OFFSET	3
1500ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_STATUS0_PLL_RX_MASK		\
1510ade8cd8SKonstantin Porotchkin 			(0x1 << SD_EXTERNAL_STATUS0_PLL_RX_OFFSET)
1520ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_STATUS0_RX_INIT_OFFSET	4
1530ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_STATUS0_RX_INIT_MASK	\
1540ade8cd8SKonstantin Porotchkin 			(0x1 << SD_EXTERNAL_STATUS0_RX_INIT_OFFSET)
1550ade8cd8SKonstantin Porotchkin 
1560ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_STATAUS1_REG			0x1c
1570ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_STATAUS1_REG_RX_TRAIN_COMP_OFFSET	0
1580ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_STATAUS1_REG_RX_TRAIN_COMP_MASK	\
1590ade8cd8SKonstantin Porotchkin 	(1 << SD_EXTERNAL_STATAUS1_REG_RX_TRAIN_COMP_OFFSET)
1600ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_STATAUS1_REG_RX_TRAIN_FAILED_OFFSET	1
1610ade8cd8SKonstantin Porotchkin #define SD_EXTERNAL_STATAUS1_REG_RX_TRAIN_FAILED_MASK	\
1620ade8cd8SKonstantin Porotchkin 	(1 << SD_EXTERNAL_STATAUS1_REG_RX_TRAIN_FAILED_OFFSET)
1630ade8cd8SKonstantin Porotchkin 
1640ade8cd8SKonstantin Porotchkin /* HPIPE registers */
1650ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_PLL_REG			0x4
1660ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_PLL_REF_FREQ_OFFSET		0
1670ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_PLL_REF_FREQ_MASK		\
1680ade8cd8SKonstantin Porotchkin 			(0x1f << HPIPE_PWR_PLL_REF_FREQ_OFFSET)
1690ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_PLL_PHY_MODE_OFFSET		5
1700ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_PLL_PHY_MODE_MASK		\
1710ade8cd8SKonstantin Porotchkin 			(0x7 << HPIPE_PWR_PLL_PHY_MODE_OFFSET)
1720ade8cd8SKonstantin Porotchkin 
1730ade8cd8SKonstantin Porotchkin #define HPIPE_CAL_REG1_REG			0xc
1740ade8cd8SKonstantin Porotchkin #define HPIPE_CAL_REG_1_EXT_TXIMP_OFFSET	10
1750ade8cd8SKonstantin Porotchkin #define HPIPE_CAL_REG_1_EXT_TXIMP_MASK		\
1760ade8cd8SKonstantin Porotchkin 			(0x1f << HPIPE_CAL_REG_1_EXT_TXIMP_OFFSET)
1770ade8cd8SKonstantin Porotchkin #define HPIPE_CAL_REG_1_EXT_TXIMP_EN_OFFSET	15
1780ade8cd8SKonstantin Porotchkin #define HPIPE_CAL_REG_1_EXT_TXIMP_EN_MASK	\
1790ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_CAL_REG_1_EXT_TXIMP_EN_OFFSET)
1800ade8cd8SKonstantin Porotchkin 
1810ade8cd8SKonstantin Porotchkin #define HPIPE_SQUELCH_FFE_SETTING_REG		0x18
1820ade8cd8SKonstantin Porotchkin #define HPIPE_SQUELCH_THRESH_IN_OFFSET		8
1830ade8cd8SKonstantin Porotchkin #define HPIPE_SQUELCH_THRESH_IN_MASK		\
1840ade8cd8SKonstantin Porotchkin 			(0xf << HPIPE_SQUELCH_THRESH_IN_OFFSET)
1850ade8cd8SKonstantin Porotchkin #define HPIPE_SQUELCH_DETECTED_OFFSET		14
1860ade8cd8SKonstantin Porotchkin #define HPIPE_SQUELCH_DETECTED_MASK		\
1870ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_SQUELCH_DETECTED_OFFSET)
1880ade8cd8SKonstantin Porotchkin 
1890ade8cd8SKonstantin Porotchkin #define HPIPE_DFE_REG0				0x1c
1900ade8cd8SKonstantin Porotchkin #define HPIPE_DFE_RES_FORCE_OFFSET		15
1910ade8cd8SKonstantin Porotchkin #define HPIPE_DFE_RES_FORCE_MASK		\
1920ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_DFE_RES_FORCE_OFFSET)
1930ade8cd8SKonstantin Porotchkin 
1940ade8cd8SKonstantin Porotchkin #define HPIPE_DFE_F3_F5_REG			0x28
1950ade8cd8SKonstantin Porotchkin #define HPIPE_DFE_F3_F5_DFE_EN_OFFSET		14
1960ade8cd8SKonstantin Porotchkin #define HPIPE_DFE_F3_F5_DFE_EN_MASK		\
1970ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_DFE_F3_F5_DFE_EN_OFFSET)
1980ade8cd8SKonstantin Porotchkin #define HPIPE_DFE_F3_F5_DFE_CTRL_OFFSET		15
1990ade8cd8SKonstantin Porotchkin #define HPIPE_DFE_F3_F5_DFE_CTRL_MASK		\
2000ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_DFE_F3_F5_DFE_CTRL_OFFSET)
2010ade8cd8SKonstantin Porotchkin 
20242a29337SGrzegorz Jaszczyk #define HPIPE_ADAPTED_DFE_COEFFICIENT_1_REG	0x30
20342a29337SGrzegorz Jaszczyk #define HPIPE_ADAPTED_DFE_RES_OFFSET		13
20442a29337SGrzegorz Jaszczyk #define HPIPE_ADAPTED_DFE_RES_MASK		\
20542a29337SGrzegorz Jaszczyk 			(0x3 << HPIPE_ADAPTED_DFE_RES_OFFSET)
20642a29337SGrzegorz Jaszczyk 
2070ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_0_REG			0x34
2080ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_0_G1_TX_AMP_OFFSET		1
2090ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_0_G1_TX_AMP_MASK		\
2100ade8cd8SKonstantin Porotchkin 			(0x1f << HPIPE_G1_SET_0_G1_TX_AMP_OFFSET)
2110ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_0_G1_TX_AMP_ADJ_OFFSET	6
2120ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_0_G1_TX_AMP_ADJ_MASK	\
2130ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_G1_SET_0_G1_TX_AMP_ADJ_OFFSET)
2140ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_0_G1_TX_EMPH1_OFFSET	7
2150ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_0_G1_TX_EMPH1_MASK		\
2160ade8cd8SKonstantin Porotchkin 			(0xf << HPIPE_G1_SET_0_G1_TX_EMPH1_OFFSET)
2170ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_0_G1_TX_EMPH1_EN_OFFSET	11
2180ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_0_G1_TX_EMPH1_EN_MASK	\
2190ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_G1_SET_0_G1_TX_EMPH1_EN_OFFSET)
2200ade8cd8SKonstantin Porotchkin 
2210ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_1_REG			0x38
2220ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_1_G1_RX_SELMUPI_OFFSET	0
2230ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_1_G1_RX_SELMUPI_MASK	\
2240ade8cd8SKonstantin Porotchkin 			(0x7 << HPIPE_G1_SET_1_G1_RX_SELMUPI_OFFSET)
2253c0024ccSGrzegorz Jaszczyk #define HPIPE_G1_SET_1_G1_RX_SELMUPF_OFFSET	3
2263c0024ccSGrzegorz Jaszczyk #define HPIPE_G1_SET_1_G1_RX_SELMUPF_MASK	\
2273c0024ccSGrzegorz Jaszczyk 			(0x7 << HPIPE_G1_SET_1_G1_RX_SELMUPF_OFFSET)
2280ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_1_G1_RX_SELMUFI_OFFSET	6
2290ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_1_G1_RX_SELMUFI_MASK	\
2300ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_G1_SET_1_G1_RX_SELMUFI_OFFSET)
2310ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_1_G1_RX_SELMUFF_OFFSET	8
2320ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_1_G1_RX_SELMUFF_MASK	\
2330ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_G1_SET_1_G1_RX_SELMUFF_OFFSET)
2340ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_1_G1_RX_DFE_EN_OFFSET	10
2350ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_1_G1_RX_DFE_EN_MASK	\
2360ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_G1_SET_1_G1_RX_DFE_EN_OFFSET)
2370ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_1_G1_RX_DIGCK_DIV_OFFSET	11
2380ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_1_G1_RX_DIGCK_DIV_MASK	\
2390ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_G1_SET_1_G1_RX_DIGCK_DIV_OFFSET)
2400ade8cd8SKonstantin Porotchkin 
2410ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_0_REG			0x3c
2420ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_0_G2_TX_AMP_OFFSET		1
2430ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_0_G2_TX_AMP_MASK		\
2440ade8cd8SKonstantin Porotchkin 			(0x1f << HPIPE_G2_SET_0_G2_TX_AMP_OFFSET)
2450ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_0_G2_TX_AMP_ADJ_OFFSET	6
2460ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_0_G2_TX_AMP_ADJ_MASK	\
2470ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_G2_SET_0_G2_TX_AMP_ADJ_OFFSET)
2480ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_0_G2_TX_EMPH1_OFFSET	7
2490ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_0_G2_TX_EMPH1_MASK		\
2500ade8cd8SKonstantin Porotchkin 			(0xf << HPIPE_G2_SET_0_G2_TX_EMPH1_OFFSET)
2510ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_0_G2_TX_EMPH1_EN_OFFSET	11
2520ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_0_G2_TX_EMPH1_EN_MASK	\
2530ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_G2_SET_0_G2_TX_EMPH1_EN_OFFSET)
2540ade8cd8SKonstantin Porotchkin 
2550ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_1_REG			0x40
2560ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_1_G2_RX_SELMUPI_OFFSET	0
2570ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_1_G2_RX_SELMUPI_MASK	\
2580ade8cd8SKonstantin Porotchkin 			(0x7 << HPIPE_G2_SET_1_G2_RX_SELMUPI_OFFSET)
2593c0024ccSGrzegorz Jaszczyk #define HPIPE_G2_SET_1_G2_RX_SELMUPF_OFFSET	3
2603c0024ccSGrzegorz Jaszczyk #define HPIPE_G2_SET_1_G2_RX_SELMUPF_MASK	\
2613c0024ccSGrzegorz Jaszczyk 			(0x7 << HPIPE_G2_SET_1_G2_RX_SELMUPF_OFFSET)
2620ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_1_G2_RX_SELMUFI_OFFSET	6
2630ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_1_G2_RX_SELMUFI_MASK	\
2640ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_G2_SET_1_G2_RX_SELMUFI_OFFSET)
2650ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_1_G2_RX_SELMUFF_OFFSET	8
2660ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_1_G2_RX_SELMUFF_MASK	\
2670ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_G2_SET_1_G2_RX_SELMUFF_OFFSET)
2680ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_1_G2_RX_DFE_EN_OFFSET	10
2690ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_1_G2_RX_DFE_EN_MASK	\
2700ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_G2_SET_1_G2_RX_DFE_EN_OFFSET)
2710ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_1_G2_RX_DIGCK_DIV_OFFSET	11
2720ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_1_G2_RX_DIGCK_DIV_MASK	\
2730ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_G2_SET_1_G2_RX_DIGCK_DIV_OFFSET)
2740ade8cd8SKonstantin Porotchkin 
2750ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_0_REG			0x44
2760ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_0_G3_TX_AMP_OFFSET		1
2770ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_0_G3_TX_AMP_MASK		\
2780ade8cd8SKonstantin Porotchkin 			(0x1f << HPIPE_G3_SET_0_G3_TX_AMP_OFFSET)
2790ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_0_G3_TX_AMP_ADJ_OFFSET	6
2800ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_0_G3_TX_AMP_ADJ_MASK	\
2810ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_G3_SET_0_G3_TX_AMP_ADJ_OFFSET)
2820ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_0_G3_TX_EMPH1_OFFSET	7
2830ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_0_G3_TX_EMPH1_MASK		\
2840ade8cd8SKonstantin Porotchkin 			(0xf << HPIPE_G3_SET_0_G3_TX_EMPH1_OFFSET)
2850ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_0_G3_TX_EMPH1_EN_OFFSET	11
2860ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_0_G3_TX_EMPH1_EN_MASK	\
2870ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_G3_SET_0_G3_TX_EMPH1_EN_OFFSET)
2880ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_0_G3_TX_SLEW_RATE_SEL_OFFSET 12
2890ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_0_G3_TX_SLEW_RATE_SEL_MASK	\
2900ade8cd8SKonstantin Porotchkin 			(0x7 << HPIPE_G3_SET_0_G3_TX_SLEW_RATE_SEL_OFFSET)
2910ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_0_G3_TX_SLEW_CTRL_EN_OFFSET 15
2920ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_0_G3_TX_SLEW_CTRL_EN_MASK	\
2930ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_G3_SET_0_G3_TX_SLEW_CTRL_EN_OFFSET)
2940ade8cd8SKonstantin Porotchkin 
2950ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_1_REG				0x48
2960ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_1_G3_RX_SELMUPI_OFFSET		0
2970ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_1_G3_RX_SELMUPI_MASK		\
2980ade8cd8SKonstantin Porotchkin 			(0x7 << HPIPE_G3_SET_1_G3_RX_SELMUPI_OFFSET)
2990ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_1_G3_RX_SELMUPF_OFFSET		3
3000ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_1_G3_RX_SELMUPF_MASK		\
3010ade8cd8SKonstantin Porotchkin 			(0x7 << HPIPE_G3_SET_1_G3_RX_SELMUPF_OFFSET)
3020ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_1_G3_RX_SELMUFI_OFFSET		6
3030ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_1_G3_RX_SELMUFI_MASK		\
3040ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_G3_SET_1_G3_RX_SELMUFI_OFFSET)
3050ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_1_G3_RX_SELMUFF_OFFSET		8
3060ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_1_G3_RX_SELMUFF_MASK		\
3070ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_G3_SET_1_G3_RX_SELMUFF_OFFSET)
3080ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_1_G3_RX_DFE_EN_OFFSET		10
3090ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_1_G3_RX_DFE_EN_MASK		\
3100ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_G3_SET_1_G3_RX_DFE_EN_OFFSET)
3110ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_1_G3_RX_DIGCK_DIV_OFFSET		11
3120ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_1_G3_RX_DIGCK_DIV_MASK		\
3130ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_G3_SET_1_G3_RX_DIGCK_DIV_OFFSET)
3140ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_1_G3_SAMPLER_INPAIRX2_EN_OFFSET	13
3150ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SET_1_G3_SAMPLER_INPAIRX2_EN_MASK	\
3160ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_G3_SET_1_G3_SAMPLER_INPAIRX2_EN_OFFSET)
3170ade8cd8SKonstantin Porotchkin 
3180ade8cd8SKonstantin Porotchkin #define HPIPE_PHY_TEST_CONTROL_REG		0x54
3190ade8cd8SKonstantin Porotchkin #define HPIPE_PHY_TEST_PATTERN_SEL_OFFSET	4
3200ade8cd8SKonstantin Porotchkin #define HPIPE_PHY_TEST_PATTERN_SEL_MASK		\
3210ade8cd8SKonstantin Porotchkin 			(0xf << HPIPE_PHY_TEST_PATTERN_SEL_OFFSET)
3220ade8cd8SKonstantin Porotchkin #define HPIPE_PHY_TEST_RESET_OFFSET		14
3230ade8cd8SKonstantin Porotchkin #define HPIPE_PHY_TEST_RESET_MASK		\
3240ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_PHY_TEST_RESET_OFFSET)
3250ade8cd8SKonstantin Porotchkin #define HPIPE_PHY_TEST_EN_OFFSET		15
3260ade8cd8SKonstantin Porotchkin #define HPIPE_PHY_TEST_EN_MASK			\
3270ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_PHY_TEST_EN_OFFSET)
3280ade8cd8SKonstantin Porotchkin 
3290ade8cd8SKonstantin Porotchkin #define HPIPE_PHY_TEST_DATA_REG			0x6c
3300ade8cd8SKonstantin Porotchkin #define HPIPE_PHY_TEST_DATA_OFFSET		0
3310ade8cd8SKonstantin Porotchkin #define HPIPE_PHY_TEST_DATA_MASK		\
3320ade8cd8SKonstantin Porotchkin 			(0xffff << HPIPE_PHY_TEST_DATA_OFFSET)
3330ade8cd8SKonstantin Porotchkin 
33442a29337SGrzegorz Jaszczyk #define HPIPE_PHY_TEST_PRBS_ERROR_COUNTER_1_REG	0x80
33542a29337SGrzegorz Jaszczyk 
33642a29337SGrzegorz Jaszczyk #define HPIPE_PHY_TEST_OOB_0_REGISTER		0x84
33742a29337SGrzegorz Jaszczyk #define HPIPE_PHY_PT_OOB_EN_OFFSET		14
33842a29337SGrzegorz Jaszczyk #define HPIPE_PHY_PT_OOB_EN_MASK		\
33942a29337SGrzegorz Jaszczyk 			(0x1 << HPIPE_PHY_PT_OOB_EN_OFFSET)
34042a29337SGrzegorz Jaszczyk #define HPIPE_PHY_TEST_PT_TESTMODE_OFFSET	12
34142a29337SGrzegorz Jaszczyk #define HPIPE_PHY_TEST_PT_TESTMODE_MASK		\
34242a29337SGrzegorz Jaszczyk 			(0x3 << HPIPE_PHY_TEST_PT_TESTMODE_OFFSET)
34342a29337SGrzegorz Jaszczyk 
3440ade8cd8SKonstantin Porotchkin #define HPIPE_LOOPBACK_REG			0x8c
3450ade8cd8SKonstantin Porotchkin #define HPIPE_LOOPBACK_SEL_OFFSET		1
3460ade8cd8SKonstantin Porotchkin #define HPIPE_LOOPBACK_SEL_MASK			\
3470ade8cd8SKonstantin Porotchkin 			(0x7 << HPIPE_LOOPBACK_SEL_OFFSET)
3480ade8cd8SKonstantin Porotchkin #define HPIPE_CDR_LOCK_OFFSET			7
3490ade8cd8SKonstantin Porotchkin #define HPIPE_CDR_LOCK_MASK			\
3500ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_CDR_LOCK_OFFSET)
3510ade8cd8SKonstantin Porotchkin #define HPIPE_CDR_LOCK_DET_EN_OFFSET		8
3520ade8cd8SKonstantin Porotchkin #define HPIPE_CDR_LOCK_DET_EN_MASK		\
3530ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_CDR_LOCK_DET_EN_OFFSET)
3540ade8cd8SKonstantin Porotchkin 
3550ade8cd8SKonstantin Porotchkin #define HPIPE_INTERFACE_REG			0x94
3560ade8cd8SKonstantin Porotchkin #define HPIPE_INTERFACE_GEN_MAX_OFFSET		10
3570ade8cd8SKonstantin Porotchkin #define HPIPE_INTERFACE_GEN_MAX_MASK		\
3580ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_INTERFACE_GEN_MAX_OFFSET)
3590ade8cd8SKonstantin Porotchkin #define HPIPE_INTERFACE_DET_BYPASS_OFFSET	12
3600ade8cd8SKonstantin Porotchkin #define HPIPE_INTERFACE_DET_BYPASS_MASK		\
3610ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_INTERFACE_DET_BYPASS_OFFSET)
3620ade8cd8SKonstantin Porotchkin #define HPIPE_INTERFACE_LINK_TRAIN_OFFSET	14
3630ade8cd8SKonstantin Porotchkin #define HPIPE_INTERFACE_LINK_TRAIN_MASK		\
3640ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_INTERFACE_LINK_TRAIN_OFFSET)
3650ade8cd8SKonstantin Porotchkin 
3660ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_2_REG			0xf4
3670ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_2_G1_TX_EMPH0_OFFSET	0
3680ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_2_G1_TX_EMPH0_MASK		\
3690ade8cd8SKonstantin Porotchkin 			(0xf << HPIPE_G1_SET_2_G1_TX_EMPH0_OFFSET)
3700ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_2_G1_TX_EMPH0_EN_OFFSET	4
3710ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SET_2_G1_TX_EMPH0_EN_MASK	\
3720ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_G1_SET_2_G1_TX_EMPH0_EN_OFFSET)
3730ade8cd8SKonstantin Porotchkin 
3740ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SET_2_REG			0xf8
37542a29337SGrzegorz Jaszczyk #define HPIPE_G2_SET_2_G2_TX_EMPH0_OFFSET	0
37642a29337SGrzegorz Jaszczyk #define HPIPE_G2_SET_2_G2_TX_EMPH0_MASK		\
37742a29337SGrzegorz Jaszczyk 			(0xf << HPIPE_G2_SET_2_G2_TX_EMPH0_OFFSET)
37842a29337SGrzegorz Jaszczyk #define HPIPE_G2_SET_2_G2_TX_EMPH0_EN_OFFSET	4
37942a29337SGrzegorz Jaszczyk #define HPIPE_G2_SET_2_G2_TX_EMPH0_EN_MASK	\
38042a29337SGrzegorz Jaszczyk 			(0x1 << HPIPE_G2_SET_2_G2_TX_EMPH0_EN_OFFSET)
3810ade8cd8SKonstantin Porotchkin #define HPIPE_G2_TX_SSC_AMP_OFFSET		9
3820ade8cd8SKonstantin Porotchkin #define HPIPE_G2_TX_SSC_AMP_MASK		\
3830ade8cd8SKonstantin Porotchkin 			(0x7f << HPIPE_G2_TX_SSC_AMP_OFFSET)
3840ade8cd8SKonstantin Porotchkin 
38542a29337SGrzegorz Jaszczyk #define HPIPE_G3_SET_2_REG			0xfc
38642a29337SGrzegorz Jaszczyk #define HPIPE_G3_SET_2_G3_TX_EMPH0_OFFSET	0
38742a29337SGrzegorz Jaszczyk #define HPIPE_G3_SET_2_G3_TX_EMPH0_MASK		\
38842a29337SGrzegorz Jaszczyk 			(0xf << HPIPE_G3_SET_2_G3_TX_EMPH0_OFFSET)
38942a29337SGrzegorz Jaszczyk #define HPIPE_G3_SET_2_G3_TX_EMPH0_EN_OFFSET	4
39042a29337SGrzegorz Jaszczyk #define HPIPE_G3_SET_2_G3_TX_EMPH0_EN_MASK	\
39142a29337SGrzegorz Jaszczyk 			(0x1 << HPIPE_G3_SET_2_G3_TX_EMPH0_EN_OFFSET)
39242a29337SGrzegorz Jaszczyk #define HPIPE_G3_TX_SSC_AMP_OFFSET		9
39342a29337SGrzegorz Jaszczyk #define HPIPE_G3_TX_SSC_AMP_MASK		\
39442a29337SGrzegorz Jaszczyk 			(0x7f << HPIPE_G3_TX_SSC_AMP_OFFSET)
39542a29337SGrzegorz Jaszczyk 
3960ade8cd8SKonstantin Porotchkin #define HPIPE_VDD_CAL_0_REG			0x108
3970ade8cd8SKonstantin Porotchkin #define HPIPE_CAL_VDD_CONT_MODE_OFFSET		15
3980ade8cd8SKonstantin Porotchkin #define HPIPE_CAL_VDD_CONT_MODE_MASK		\
3990ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_CAL_VDD_CONT_MODE_OFFSET)
4000ade8cd8SKonstantin Porotchkin 
4010ade8cd8SKonstantin Porotchkin #define HPIPE_VDD_CAL_CTRL_REG			0x114
4020ade8cd8SKonstantin Porotchkin #define HPIPE_EXT_SELLV_RXSAMPL_OFFSET		5
4030ade8cd8SKonstantin Porotchkin #define HPIPE_EXT_SELLV_RXSAMPL_MASK		\
4040ade8cd8SKonstantin Porotchkin 			(0x1f << HPIPE_EXT_SELLV_RXSAMPL_OFFSET)
4050ade8cd8SKonstantin Porotchkin 
4060ade8cd8SKonstantin Porotchkin #define HPIPE_PCIE_REG0				0x120
4070ade8cd8SKonstantin Porotchkin #define HPIPE_PCIE_IDLE_SYNC_OFFSET		12
4080ade8cd8SKonstantin Porotchkin #define HPIPE_PCIE_IDLE_SYNC_MASK		\
4090ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_PCIE_IDLE_SYNC_OFFSET)
4100ade8cd8SKonstantin Porotchkin #define HPIPE_PCIE_SEL_BITS_OFFSET		13
4110ade8cd8SKonstantin Porotchkin #define HPIPE_PCIE_SEL_BITS_MASK		\
4120ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_PCIE_SEL_BITS_OFFSET)
4130ade8cd8SKonstantin Porotchkin 
4140ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_ALIGN_REG			0x124
4150ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_ALIGN_OFF_OFFSET		12
4160ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_ALIGN_OFF_MASK		\
4170ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_LANE_ALIGN_OFF_OFFSET)
4180ade8cd8SKonstantin Porotchkin 
4190ade8cd8SKonstantin Porotchkin #define HPIPE_MISC_REG				0x13C
4200ade8cd8SKonstantin Porotchkin #define HPIPE_MISC_CLK100M_125M_OFFSET		4
4210ade8cd8SKonstantin Porotchkin #define HPIPE_MISC_CLK100M_125M_MASK		\
4220ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_MISC_CLK100M_125M_OFFSET)
4230ade8cd8SKonstantin Porotchkin #define HPIPE_MISC_ICP_FORCE_OFFSET		5
4240ade8cd8SKonstantin Porotchkin #define HPIPE_MISC_ICP_FORCE_MASK		\
4250ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_MISC_ICP_FORCE_OFFSET)
4260ade8cd8SKonstantin Porotchkin #define HPIPE_MISC_TXDCLK_2X_OFFSET		6
4270ade8cd8SKonstantin Porotchkin #define HPIPE_MISC_TXDCLK_2X_MASK		\
4280ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_MISC_TXDCLK_2X_OFFSET)
4290ade8cd8SKonstantin Porotchkin #define HPIPE_MISC_CLK500_EN_OFFSET		7
4300ade8cd8SKonstantin Porotchkin #define HPIPE_MISC_CLK500_EN_MASK		\
4310ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_MISC_CLK500_EN_OFFSET)
4320ade8cd8SKonstantin Porotchkin #define HPIPE_MISC_REFCLK_SEL_OFFSET		10
4330ade8cd8SKonstantin Porotchkin #define HPIPE_MISC_REFCLK_SEL_MASK		\
4340ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_MISC_REFCLK_SEL_OFFSET)
4350ade8cd8SKonstantin Porotchkin 
4360ade8cd8SKonstantin Porotchkin #define HPIPE_RX_CONTROL_1_REG			0x140
4370ade8cd8SKonstantin Porotchkin #define HPIPE_RX_CONTROL_1_RXCLK2X_SEL_OFFSET	11
4380ade8cd8SKonstantin Porotchkin #define HPIPE_RX_CONTROL_1_RXCLK2X_SEL_MASK	\
4390ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_RX_CONTROL_1_RXCLK2X_SEL_OFFSET)
4400ade8cd8SKonstantin Porotchkin #define HPIPE_RX_CONTROL_1_CLK8T_EN_OFFSET	12
4410ade8cd8SKonstantin Porotchkin #define HPIPE_RX_CONTROL_1_CLK8T_EN_MASK	\
4420ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_RX_CONTROL_1_CLK8T_EN_OFFSET)
4430ade8cd8SKonstantin Porotchkin 
4440ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_REG			0x148
4450ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_RST_DFE_OFFSET		0
4460ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_RST_DFE_MASK		\
4470ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_PWR_CTR_RST_DFE_OFFSET)
4480ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_SFT_RST_OFFSET		10
4490ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_SFT_RST_MASK		\
4500ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_PWR_CTR_SFT_RST_OFFSET)
4510ade8cd8SKonstantin Porotchkin 
4520ade8cd8SKonstantin Porotchkin #define HPIPE_SPD_DIV_FORCE_REG				0x154
4530ade8cd8SKonstantin Porotchkin #define HPIPE_TXDIGCK_DIV_FORCE_OFFSET			7
4540ade8cd8SKonstantin Porotchkin #define HPIPE_TXDIGCK_DIV_FORCE_MASK			\
4550ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TXDIGCK_DIV_FORCE_OFFSET)
4560ade8cd8SKonstantin Porotchkin #define HPIPE_SPD_DIV_FORCE_RX_SPD_DIV_OFFSET		8
4570ade8cd8SKonstantin Porotchkin #define HPIPE_SPD_DIV_FORCE_RX_SPD_DIV_MASK		\
4580ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_SPD_DIV_FORCE_RX_SPD_DIV_OFFSET)
4590ade8cd8SKonstantin Porotchkin #define HPIPE_SPD_DIV_FORCE_RX_SPD_DIV_FORCE_OFFSET	10
4600ade8cd8SKonstantin Porotchkin #define HPIPE_SPD_DIV_FORCE_RX_SPD_DIV_FORCE_MASK	\
4610ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_SPD_DIV_FORCE_RX_SPD_DIV_FORCE_OFFSET)
4620ade8cd8SKonstantin Porotchkin #define HPIPE_SPD_DIV_FORCE_TX_SPD_DIV_OFFSET		13
4630ade8cd8SKonstantin Porotchkin #define HPIPE_SPD_DIV_FORCE_TX_SPD_DIV_MASK		\
4640ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_SPD_DIV_FORCE_TX_SPD_DIV_OFFSET)
4650ade8cd8SKonstantin Porotchkin #define HPIPE_SPD_DIV_FORCE_TX_SPD_DIV_FORCE_OFFSET	15
4660ade8cd8SKonstantin Porotchkin #define HPIPE_SPD_DIV_FORCE_TX_SPD_DIV_FORCE_MASK	\
4670ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_SPD_DIV_FORCE_TX_SPD_DIV_FORCE_OFFSET)
4680ade8cd8SKonstantin Porotchkin 
46942a29337SGrzegorz Jaszczyk /* HPIPE_RX_CLK_ALIGN90_AND_TX_IDLE_CALIBRATION_CTRL_REG */
47042a29337SGrzegorz Jaszczyk #define HPIPE_RX_CLK_ALIGN90_AND_TX_IDLE_CALIB_CTRL_REG	0x168
47142a29337SGrzegorz Jaszczyk #define HPIPE_CAL_RXCLKALIGN_90_EXT_EN_OFFSET		15
47242a29337SGrzegorz Jaszczyk #define HPIPE_CAL_RXCLKALIGN_90_EXT_EN_MASK		\
47342a29337SGrzegorz Jaszczyk 			(0x1 << HPIPE_CAL_RXCLKALIGN_90_EXT_EN_OFFSET)
47442a29337SGrzegorz Jaszczyk #define HPIPE_CAL_OS_PH_EXT_OFFSET			8
47542a29337SGrzegorz Jaszczyk #define HPIPE_CAL_OS_PH_EXT_MASK			\
47642a29337SGrzegorz Jaszczyk 			(0x7f << HPIPE_CAL_OS_PH_EXT_OFFSET)
47742a29337SGrzegorz Jaszczyk 
4780ade8cd8SKonstantin Porotchkin #define HPIPE_SAMPLER_N_PROC_CALIB_CTRL_REG	0x16C
4790ade8cd8SKonstantin Porotchkin #define HPIPE_RX_SAMPLER_OS_GAIN_OFFSET		6
4800ade8cd8SKonstantin Porotchkin #define HPIPE_RX_SAMPLER_OS_GAIN_MASK		\
4810ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_RX_SAMPLER_OS_GAIN_OFFSET)
4820ade8cd8SKonstantin Porotchkin #define HPIPE_SMAPLER_OFFSET			12
4830ade8cd8SKonstantin Porotchkin #define HPIPE_SMAPLER_MASK			\
4840ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_SMAPLER_OFFSET)
4850ade8cd8SKonstantin Porotchkin 
4860ade8cd8SKonstantin Porotchkin #define HPIPE_TX_REG1_REG			0x174
4870ade8cd8SKonstantin Porotchkin #define HPIPE_TX_REG1_TX_EMPH_RES_OFFSET	5
4880ade8cd8SKonstantin Porotchkin #define HPIPE_TX_REG1_TX_EMPH_RES_MASK		\
4890ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_TX_REG1_TX_EMPH_RES_OFFSET)
4900ade8cd8SKonstantin Porotchkin #define HPIPE_TX_REG1_SLC_EN_OFFSET		10
4910ade8cd8SKonstantin Porotchkin #define HPIPE_TX_REG1_SLC_EN_MASK		\
4920ade8cd8SKonstantin Porotchkin 			(0x3f << HPIPE_TX_REG1_SLC_EN_OFFSET)
4930ade8cd8SKonstantin Porotchkin 
4940ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_DTL_REG				0x184
4950ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_DTL_SQ_DET_EN_OFFSET		0
4960ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_DTL_SQ_DET_EN_MASK		\
4970ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_PWR_CTR_DTL_SQ_DET_EN_OFFSET)
4980ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_DTL_SQ_PLOOP_EN_OFFSET		1
4990ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_DTL_SQ_PLOOP_EN_MASK		\
5000ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_PWR_CTR_DTL_SQ_PLOOP_EN_OFFSET)
5010ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_DTL_FLOOP_EN_OFFSET		2
5020ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_DTL_FLOOP_EN_MASK			\
5030ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_PWR_CTR_DTL_FLOOP_EN_OFFSET)
5040ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_DTL_CLAMPING_SEL_OFFSET		4
5050ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_DTL_CLAMPING_SEL_MASK		\
5060ade8cd8SKonstantin Porotchkin 			(0x7 << HPIPE_PWR_CTR_DTL_CLAMPING_SEL_OFFSET)
5070ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_DTL_INTPCLK_DIV_FORCE_OFFSET	10
5080ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_DTL_INTPCLK_DIV_FORCE_MASK	\
5090ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_PWR_CTR_DTL_INTPCLK_DIV_FORCE_OFFSET)
5100ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_DTL_CLK_MODE_OFFSET		12
5110ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_DTL_CLK_MODE_MASK			\
5120ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_PWR_CTR_DTL_CLK_MODE_OFFSET)
5130ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_DTL_CLK_MODE_FORCE_OFFSET		14
5140ade8cd8SKonstantin Porotchkin #define HPIPE_PWR_CTR_DTL_CLK_MODE_FORCE_MASK		\
5150ade8cd8SKonstantin Porotchkin 			(1 << HPIPE_PWR_CTR_DTL_CLK_MODE_FORCE_OFFSET)
5160ade8cd8SKonstantin Porotchkin 
5170ade8cd8SKonstantin Porotchkin #define HPIPE_PHASE_CONTROL_REG			0x188
5180ade8cd8SKonstantin Porotchkin #define HPIPE_OS_PH_OFFSET_OFFSET		0
5190ade8cd8SKonstantin Porotchkin #define HPIPE_OS_PH_OFFSET_MASK			\
5200ade8cd8SKonstantin Porotchkin 			(0x7f << HPIPE_OS_PH_OFFSET_OFFSET)
5210ade8cd8SKonstantin Porotchkin #define HPIPE_OS_PH_OFFSET_FORCE_OFFSET		7
5220ade8cd8SKonstantin Porotchkin #define HPIPE_OS_PH_OFFSET_FORCE_MASK		\
5230ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_OS_PH_OFFSET_FORCE_OFFSET)
5240ade8cd8SKonstantin Porotchkin #define HPIPE_OS_PH_VALID_OFFSET		8
5250ade8cd8SKonstantin Porotchkin #define HPIPE_OS_PH_VALID_MASK			\
5260ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_OS_PH_VALID_OFFSET)
5270ade8cd8SKonstantin Porotchkin 
52842a29337SGrzegorz Jaszczyk #define HPIPE_DATA_PHASE_OFF_CTRL_REG			0x1A0
52942a29337SGrzegorz Jaszczyk #define HPIPE_DATA_PHASE_ADAPTED_OS_PH_OFFSET		9
53042a29337SGrzegorz Jaszczyk #define HPIPE_DATA_PHASE_ADAPTED_OS_PH_MASK		\
53142a29337SGrzegorz Jaszczyk 			(0x7f << HPIPE_DATA_PHASE_ADAPTED_OS_PH_OFFSET)
53242a29337SGrzegorz Jaszczyk 
53342a29337SGrzegorz Jaszczyk #define HPIPE_ADAPTED_FFE_CAPACITOR_COUNTER_CTRL_REG	0x1A4
53442a29337SGrzegorz Jaszczyk #define HPIPE_ADAPTED_FFE_ADAPTED_FFE_RES_OFFSET	12
53542a29337SGrzegorz Jaszczyk #define HPIPE_ADAPTED_FFE_ADAPTED_FFE_RES_MASK		\
53642a29337SGrzegorz Jaszczyk 			(0x3 << HPIPE_ADAPTED_FFE_ADAPTED_FFE_RES_OFFSET)
53742a29337SGrzegorz Jaszczyk #define HPIPE_ADAPTED_FFE_ADAPTED_FFE_CAP_OFFSET	8
53842a29337SGrzegorz Jaszczyk #define HPIPE_ADAPTED_FFE_ADAPTED_FFE_CAP_MASK		\
53942a29337SGrzegorz Jaszczyk 			(0xf << HPIPE_ADAPTED_FFE_ADAPTED_FFE_CAP_OFFSET)
54042a29337SGrzegorz Jaszczyk 
5410ade8cd8SKonstantin Porotchkin #define HPIPE_SQ_GLITCH_FILTER_CTRL		0x1c8
5420ade8cd8SKonstantin Porotchkin #define HPIPE_SQ_DEGLITCH_WIDTH_P_OFFSET	0
5430ade8cd8SKonstantin Porotchkin #define HPIPE_SQ_DEGLITCH_WIDTH_P_MASK		\
5440ade8cd8SKonstantin Porotchkin 			(0xf << HPIPE_SQ_DEGLITCH_WIDTH_P_OFFSET)
5450ade8cd8SKonstantin Porotchkin #define HPIPE_SQ_DEGLITCH_WIDTH_N_OFFSET	4
5460ade8cd8SKonstantin Porotchkin #define HPIPE_SQ_DEGLITCH_WIDTH_N_MASK		\
5470ade8cd8SKonstantin Porotchkin 			(0xf << HPIPE_SQ_DEGLITCH_WIDTH_N_OFFSET)
5480ade8cd8SKonstantin Porotchkin #define HPIPE_SQ_DEGLITCH_EN_OFFSET		8
5490ade8cd8SKonstantin Porotchkin #define HPIPE_SQ_DEGLITCH_EN_MASK		\
5500ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_SQ_DEGLITCH_EN_OFFSET)
5510ade8cd8SKonstantin Porotchkin 
5520ade8cd8SKonstantin Porotchkin #define HPIPE_FRAME_DETECT_CTRL_0_REG		0x214
5530ade8cd8SKonstantin Porotchkin #define HPIPE_TRAIN_PAT_NUM_OFFSET		0x7
5540ade8cd8SKonstantin Porotchkin #define HPIPE_TRAIN_PAT_NUM_MASK		\
5550ade8cd8SKonstantin Porotchkin 			(0x1FF << HPIPE_TRAIN_PAT_NUM_OFFSET)
5560ade8cd8SKonstantin Porotchkin 
5570ade8cd8SKonstantin Porotchkin #define HPIPE_FRAME_DETECT_CTRL_3_REG			0x220
5580ade8cd8SKonstantin Porotchkin #define HPIPE_PATTERN_LOCK_LOST_TIMEOUT_EN_OFFSET	12
5590ade8cd8SKonstantin Porotchkin #define HPIPE_PATTERN_LOCK_LOST_TIMEOUT_EN_MASK		\
5600ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_PATTERN_LOCK_LOST_TIMEOUT_EN_OFFSET)
5610ade8cd8SKonstantin Porotchkin 
5620ade8cd8SKonstantin Porotchkin #define HPIPE_DME_REG				0x228
5630ade8cd8SKonstantin Porotchkin #define HPIPE_DME_ETHERNET_MODE_OFFSET		7
5640ade8cd8SKonstantin Porotchkin #define HPIPE_DME_ETHERNET_MODE_MASK		\
5650ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_DME_ETHERNET_MODE_OFFSET)
5660ade8cd8SKonstantin Porotchkin 
56742a29337SGrzegorz Jaszczyk #define HPIPE_TRX_TRAIN_CTRL_0_REG		0x22c
56842a29337SGrzegorz Jaszczyk #define HPIPE_TRX_TX_F0T_EO_BASED_OFFSET	14
56942a29337SGrzegorz Jaszczyk #define HPIPE_TRX_TX_F0T_EO_BASED_MASK		\
57042a29337SGrzegorz Jaszczyk 			(1 << HPIPE_TRX_TX_F0T_EO_BASED_OFFSET)
57142a29337SGrzegorz Jaszczyk #define HPIPE_TRX_UPDATE_THEN_HOLD_OFFSET	6
57242a29337SGrzegorz Jaszczyk #define HPIPE_TRX_UPDATE_THEN_HOLD_MASK		\
57342a29337SGrzegorz Jaszczyk 			(1 << HPIPE_TRX_UPDATE_THEN_HOLD_OFFSET)
57442a29337SGrzegorz Jaszczyk #define HPIPE_TRX_TX_CTRL_CLK_EN_OFFSET		5
57542a29337SGrzegorz Jaszczyk #define HPIPE_TRX_TX_CTRL_CLK_EN_MASK		\
57642a29337SGrzegorz Jaszczyk 			(1 << HPIPE_TRX_TX_CTRL_CLK_EN_OFFSET)
57742a29337SGrzegorz Jaszczyk #define HPIPE_TRX_RX_ANA_IF_CLK_ENE_OFFSET	4
57842a29337SGrzegorz Jaszczyk #define HPIPE_TRX_RX_ANA_IF_CLK_ENE_MASK	\
57942a29337SGrzegorz Jaszczyk 			(1 << HPIPE_TRX_RX_ANA_IF_CLK_ENE_OFFSET)
58042a29337SGrzegorz Jaszczyk #define HPIPE_TRX_TX_TRAIN_EN_OFFSET		1
58142a29337SGrzegorz Jaszczyk #define HPIPE_TRX_TX_TRAIN_EN_MASK		\
58242a29337SGrzegorz Jaszczyk 			(1 << HPIPE_TRX_TX_TRAIN_EN_OFFSET)
58342a29337SGrzegorz Jaszczyk #define HPIPE_TRX_RX_TRAIN_EN_OFFSET		0
58442a29337SGrzegorz Jaszczyk #define HPIPE_TRX_RX_TRAIN_EN_MASK		\
58542a29337SGrzegorz Jaszczyk 			(1 << HPIPE_TRX_RX_TRAIN_EN_OFFSET)
58642a29337SGrzegorz Jaszczyk 
5870ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_CTRL_0_REG		0x268
5880ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_P2P_HOLD_OFFSET		15
5890ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_P2P_HOLD_MASK		\
5900ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TX_TRAIN_P2P_HOLD_OFFSET)
5910ade8cd8SKonstantin Porotchkin 
5920ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_CTRL_REG			0x26C
5930ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_CTRL_G1_OFFSET		0
5940ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_CTRL_G1_MASK		\
5950ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TX_TRAIN_CTRL_G1_OFFSET)
5960ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_CTRL_GN1_OFFSET		1
5970ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_CTRL_GN1_MASK		\
5980ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TX_TRAIN_CTRL_GN1_OFFSET)
5990ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_CTRL_G0_OFFSET		2
6000ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_CTRL_G0_MASK		\
6010ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TX_TRAIN_CTRL_G0_OFFSET)
6020ade8cd8SKonstantin Porotchkin 
6030ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_CTRL_4_REG		0x278
6040ade8cd8SKonstantin Porotchkin #define HPIPE_TRX_TRAIN_TIMER_OFFSET		0
6050ade8cd8SKonstantin Porotchkin #define HPIPE_TRX_TRAIN_TIMER_MASK		\
6060ade8cd8SKonstantin Porotchkin 			(0x3FF << HPIPE_TRX_TRAIN_TIMER_OFFSET)
6070ade8cd8SKonstantin Porotchkin 
6080ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_CTRL_5_REG		0x2A4
6090ade8cd8SKonstantin Porotchkin #define HPIPE_RX_TRAIN_TIMER_OFFSET		0
6100ade8cd8SKonstantin Porotchkin #define HPIPE_RX_TRAIN_TIMER_MASK		\
6110ade8cd8SKonstantin Porotchkin 			(0x3ff << HPIPE_RX_TRAIN_TIMER_OFFSET)
6120ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_START_SQ_EN_OFFSET	11
6130ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_START_SQ_EN_MASK		\
6140ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TX_TRAIN_START_SQ_EN_OFFSET)
6150ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_START_FRM_DET_EN_OFFSET	12
6160ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_START_FRM_DET_EN_MASK	\
6170ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TX_TRAIN_START_FRM_DET_EN_OFFSET)
6180ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_START_FRM_LOCK_EN_OFFSET	13
6190ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_START_FRM_LOCK_EN_MASK	\
6200ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TX_TRAIN_START_FRM_LOCK_EN_OFFSET)
6210ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_WAIT_TIME_EN_OFFSET	14
6220ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_WAIT_TIME_EN_MASK	\
6230ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TX_TRAIN_WAIT_TIME_EN_OFFSET)
6240ade8cd8SKonstantin Porotchkin 
62542a29337SGrzegorz Jaszczyk #define HPIPE_INTERRUPT_1_REGISTER		0x2AC
62642a29337SGrzegorz Jaszczyk #define HPIPE_TRX_TRAIN_FAILED_OFFSET		6
62742a29337SGrzegorz Jaszczyk #define HPIPE_TRX_TRAIN_FAILED_MASK		\
62842a29337SGrzegorz Jaszczyk 			(1 << HPIPE_TRX_TRAIN_FAILED_OFFSET)
62942a29337SGrzegorz Jaszczyk #define HPIPE_TRX_TRAIN_TIME_OUT_INT_OFFSET	5
63042a29337SGrzegorz Jaszczyk #define HPIPE_TRX_TRAIN_TIME_OUT_INT_MASK	\
63142a29337SGrzegorz Jaszczyk 			(1 << HPIPE_TRX_TRAIN_TIME_OUT_INT_OFFSET)
63242a29337SGrzegorz Jaszczyk #define HPIPE_INTERRUPT_TRX_TRAIN_DONE_OFFSET	4
63342a29337SGrzegorz Jaszczyk #define HPIPE_INTERRUPT_TRX_TRAIN_DONE_MASK	\
63442a29337SGrzegorz Jaszczyk 			(1 << HPIPE_INTERRUPT_TRX_TRAIN_DONE_OFFSET)
63542a29337SGrzegorz Jaszczyk #define HPIPE_INTERRUPT_DFE_DONE_INT_OFFSET	3
63642a29337SGrzegorz Jaszczyk #define HPIPE_INTERRUPT_DFE_DONE_INT_MASK	\
63742a29337SGrzegorz Jaszczyk 			(1 << HPIPE_INTERRUPT_DFE_DONE_INT_OFFSET)
63842a29337SGrzegorz Jaszczyk #define HPIPE_INTERRUPT_RX_TRAIN_COMPLETE_INT_OFFSET	1
63942a29337SGrzegorz Jaszczyk #define HPIPE_INTERRUPT_RX_TRAIN_COMPLETE_INT_MASK	\
64042a29337SGrzegorz Jaszczyk 			(1 << HPIPE_INTERRUPT_RX_TRAIN_COMPLETE_INT_OFFSET)
64142a29337SGrzegorz Jaszczyk 
6420ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_REG			0x31C
6430ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_CHK_INIT_OFFSET		4
6440ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_CHK_INIT_MASK		\
6450ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TX_TRAIN_CHK_INIT_OFFSET)
6460ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_COE_FM_PIN_PCIE3_OFFSET	7
6470ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_COE_FM_PIN_PCIE3_MASK	\
6480ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TX_TRAIN_COE_FM_PIN_PCIE3_OFFSET)
6490ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_16BIT_AUTO_EN_OFFSET	8
6500ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_16BIT_AUTO_EN_MASK	\
6510ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TX_TRAIN_16BIT_AUTO_EN_OFFSET)
6520ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_PAT_SEL_OFFSET		9
6530ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_PAT_SEL_MASK		\
6540ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TX_TRAIN_PAT_SEL_OFFSET)
6550ade8cd8SKonstantin Porotchkin 
6560ade8cd8SKonstantin Porotchkin #define HPIPE_SAVED_DFE_VALUES_REG		0x328
6570ade8cd8SKonstantin Porotchkin #define HPIPE_SAVED_DFE_VALUES_SAV_F0D_OFFSET	10
6580ade8cd8SKonstantin Porotchkin #define HPIPE_SAVED_DFE_VALUES_SAV_F0D_MASK	\
6590ade8cd8SKonstantin Porotchkin 			(0x3f << HPIPE_SAVED_DFE_VALUES_SAV_F0D_OFFSET)
6600ade8cd8SKonstantin Porotchkin 
6610ade8cd8SKonstantin Porotchkin #define HPIPE_CDR_CONTROL_REG			0x418
6620ade8cd8SKonstantin Porotchkin #define HPIPE_CDR_RX_MAX_DFE_ADAPT_0_OFFSET	14
6630ade8cd8SKonstantin Porotchkin #define HPIPE_CDR_RX_MAX_DFE_ADAPT_0_MASK	\
6640ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_CDR_RX_MAX_DFE_ADAPT_0_OFFSET)
6650ade8cd8SKonstantin Porotchkin #define HPIPE_CDR_RX_MAX_DFE_ADAPT_1_OFFSET	12
6660ade8cd8SKonstantin Porotchkin #define HPIPE_CDR_RX_MAX_DFE_ADAPT_1_MASK	\
6670ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_CDR_RX_MAX_DFE_ADAPT_1_OFFSET)
6680ade8cd8SKonstantin Porotchkin #define HPIPE_CDR_MAX_DFE_ADAPT_0_OFFSET	9
6690ade8cd8SKonstantin Porotchkin #define HPIPE_CDR_MAX_DFE_ADAPT_0_MASK		\
6700ade8cd8SKonstantin Porotchkin 			(0x7 << HPIPE_CDR_MAX_DFE_ADAPT_0_OFFSET)
6710ade8cd8SKonstantin Porotchkin #define HPIPE_CDR_MAX_DFE_ADAPT_1_OFFSET	6
6720ade8cd8SKonstantin Porotchkin #define HPIPE_CDR_MAX_DFE_ADAPT_1_MASK		\
6730ade8cd8SKonstantin Porotchkin 			(0x7 << HPIPE_CDR_MAX_DFE_ADAPT_1_OFFSET)
6740ade8cd8SKonstantin Porotchkin 
6750ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TRAIN_CTRL_11_REG		0x438
6760ade8cd8SKonstantin Porotchkin #define HPIPE_TX_STATUS_CHECK_MODE_OFFSET	6
6770ade8cd8SKonstantin Porotchkin #define HPIPE_TX_TX_STATUS_CHECK_MODE_MASK	\
6780ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TX_STATUS_CHECK_MODE_OFFSET)
6790ade8cd8SKonstantin Porotchkin #define HPIPE_TX_NUM_OF_PRESET_OFFSET		10
6800ade8cd8SKonstantin Porotchkin #define HPIPE_TX_NUM_OF_PRESET_MASK		\
6810ade8cd8SKonstantin Porotchkin 			(0x7 << HPIPE_TX_NUM_OF_PRESET_OFFSET)
6820ade8cd8SKonstantin Porotchkin #define HPIPE_TX_SWEEP_PRESET_EN_OFFSET		15
6830ade8cd8SKonstantin Porotchkin #define HPIPE_TX_SWEEP_PRESET_EN_MASK		\
6840ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TX_SWEEP_PRESET_EN_OFFSET)
6850ade8cd8SKonstantin Porotchkin 
6860ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_3_REG				0x440
6870ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_3_G1_FFE_CAP_SEL_OFFSET	0
6880ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_3_G1_FFE_CAP_SEL_MASK		\
6890ade8cd8SKonstantin Porotchkin 			(0xf << HPIPE_G1_SETTINGS_3_G1_FFE_CAP_SEL_OFFSET)
6900ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_3_G1_FFE_RES_SEL_OFFSET	4
6910ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_3_G1_FFE_RES_SEL_MASK		\
6920ade8cd8SKonstantin Porotchkin 			(0x7 << HPIPE_G1_SETTINGS_3_G1_FFE_RES_SEL_OFFSET)
6930ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_3_G1_FFE_SETTING_FORCE_OFFSET	7
6940ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_3_G1_FFE_SETTING_FORCE_MASK	\
6950ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_G1_SETTINGS_3_G1_FFE_SETTING_FORCE_OFFSET)
6960ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_3_G1_FBCK_SEL_OFFSET		9
6970ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_3_G1_FBCK_SEL_MASK		\
6980ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_G1_SETTINGS_3_G1_FBCK_SEL_OFFSET)
6990ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_3_G1_FFE_DEG_RES_LEVEL_OFFSET	12
7000ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_3_G1_FFE_DEG_RES_LEVEL_MASK	\
7010ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_G1_SETTINGS_3_G1_FFE_DEG_RES_LEVEL_OFFSET)
7020ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_3_G1_FFE_LOAD_RES_LEVEL_OFFSET	14
7030ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_3_G1_FFE_LOAD_RES_LEVEL_MASK	\
7040ade8cd8SKonstantin Porotchkin 		(0x3 << HPIPE_G1_SETTINGS_3_G1_FFE_LOAD_RES_LEVEL_OFFSET)
7050ade8cd8SKonstantin Porotchkin 
7060ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_4_REG			0x444
7070ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_4_G1_DFE_RES_OFFSET	8
7080ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTINGS_4_G1_DFE_RES_MASK	\
7090ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_G1_SETTINGS_4_G1_DFE_RES_OFFSET)
7100ade8cd8SKonstantin Porotchkin 
7110ade8cd8SKonstantin Porotchkin #define HPIPE_G2_SETTINGS_4_REG			0x44c
7120ade8cd8SKonstantin Porotchkin #define HPIPE_G2_DFE_RES_OFFSET			8
7130ade8cd8SKonstantin Porotchkin #define HPIPE_G2_DFE_RES_MASK			\
7140ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_G2_DFE_RES_OFFSET)
7150ade8cd8SKonstantin Porotchkin 
7160ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SETTING_3_REG			0x450
7170ade8cd8SKonstantin Porotchkin #define HPIPE_G3_FFE_CAP_SEL_OFFSET		0
7180ade8cd8SKonstantin Porotchkin #define HPIPE_G3_FFE_CAP_SEL_MASK		\
7190ade8cd8SKonstantin Porotchkin 			(0xf << HPIPE_G3_FFE_CAP_SEL_OFFSET)
7200ade8cd8SKonstantin Porotchkin #define HPIPE_G3_FFE_RES_SEL_OFFSET		4
7210ade8cd8SKonstantin Porotchkin #define HPIPE_G3_FFE_RES_SEL_MASK		\
7220ade8cd8SKonstantin Porotchkin 			(0x7 << HPIPE_G3_FFE_RES_SEL_OFFSET)
7230ade8cd8SKonstantin Porotchkin #define HPIPE_G3_FFE_SETTING_FORCE_OFFSET	7
7240ade8cd8SKonstantin Porotchkin #define HPIPE_G3_FFE_SETTING_FORCE_MASK		\
7250ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_G3_FFE_SETTING_FORCE_OFFSET)
7260ade8cd8SKonstantin Porotchkin #define HPIPE_G3_FFE_DEG_RES_LEVEL_OFFSET	12
7270ade8cd8SKonstantin Porotchkin #define HPIPE_G3_FFE_DEG_RES_LEVEL_MASK		\
7280ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_G3_FFE_DEG_RES_LEVEL_OFFSET)
7290ade8cd8SKonstantin Porotchkin #define HPIPE_G3_FFE_LOAD_RES_LEVEL_OFFSET	14
7300ade8cd8SKonstantin Porotchkin #define HPIPE_G3_FFE_LOAD_RES_LEVEL_MASK	\
7310ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_G3_FFE_LOAD_RES_LEVEL_OFFSET)
7320ade8cd8SKonstantin Porotchkin 
7330ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SETTING_4_REG			0x454
7340ade8cd8SKonstantin Porotchkin #define HPIPE_G3_DFE_RES_OFFSET			8
7350ade8cd8SKonstantin Porotchkin #define HPIPE_G3_DFE_RES_MASK			(0x3 << HPIPE_G3_DFE_RES_OFFSET)
7360ade8cd8SKonstantin Porotchkin 
7370ade8cd8SKonstantin Porotchkin #define HPIPE_TX_PRESET_INDEX_REG		0x468
7380ade8cd8SKonstantin Porotchkin #define HPIPE_TX_PRESET_INDEX_OFFSET		0
7390ade8cd8SKonstantin Porotchkin #define HPIPE_TX_PRESET_INDEX_MASK		\
7400ade8cd8SKonstantin Porotchkin 			(0xf << HPIPE_TX_PRESET_INDEX_OFFSET)
7410ade8cd8SKonstantin Porotchkin 
7420ade8cd8SKonstantin Porotchkin #define HPIPE_DFE_CONTROL_REG			0x470
7430ade8cd8SKonstantin Porotchkin #define HPIPE_DFE_TX_MAX_DFE_ADAPT_OFFSET	14
7440ade8cd8SKonstantin Porotchkin #define HPIPE_DFE_TX_MAX_DFE_ADAPT_MASK		\
7450ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_DFE_TX_MAX_DFE_ADAPT_OFFSET)
7460ade8cd8SKonstantin Porotchkin 
7470ade8cd8SKonstantin Porotchkin #define HPIPE_DFE_CTRL_28_REG			0x49C
7480ade8cd8SKonstantin Porotchkin #define HPIPE_DFE_CTRL_28_PIPE4_OFFSET		7
7490ade8cd8SKonstantin Porotchkin #define HPIPE_DFE_CTRL_28_PIPE4_MASK		\
7500ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_DFE_CTRL_28_PIPE4_OFFSET)
7510ade8cd8SKonstantin Porotchkin 
7520ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTING_5_REG			0x538
7530ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTING_5_G1_ICP_OFFSET	0
7540ade8cd8SKonstantin Porotchkin #define HPIPE_G1_SETTING_5_G1_ICP_MASK		\
7550ade8cd8SKonstantin Porotchkin 			(0xf << HPIPE_G1_SETTING_5_G1_ICP_OFFSET)
7560ade8cd8SKonstantin Porotchkin 
7570ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SETTING_5_REG			0x548
7580ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SETTING_5_G3_ICP_OFFSET	0
7590ade8cd8SKonstantin Porotchkin #define HPIPE_G3_SETTING_5_G3_ICP_MASK		\
7600ade8cd8SKonstantin Porotchkin 			(0xf << HPIPE_G3_SETTING_5_G3_ICP_OFFSET)
7610ade8cd8SKonstantin Porotchkin 
7620ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CONFIG0_REG			0x600
7630ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CONFIG0_TXDEEMPH0_OFFSET	0
7640ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CONFIG0_TXDEEMPH0_MASK	\
7650ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_LANE_CONFIG0_TXDEEMPH0_OFFSET)
7660ade8cd8SKonstantin Porotchkin 
7670ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_STATUS1_REG			0x60C
7680ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_STATUS1_PCLK_EN_OFFSET	0
7690ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_STATUS1_PCLK_EN_MASK		\
7700ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_LANE_STATUS1_PCLK_EN_OFFSET)
7710ade8cd8SKonstantin Porotchkin 
7720ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CFG4_REG			0x620
7730ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CFG4_DFE_CTRL_OFFSET		0
7740ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CFG4_DFE_CTRL_MASK		\
7750ade8cd8SKonstantin Porotchkin 			(0x7 << HPIPE_LANE_CFG4_DFE_CTRL_OFFSET)
7760ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CFG4_DFE_EN_SEL_OFFSET	3
7770ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CFG4_DFE_EN_SEL_MASK		\
7780ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_LANE_CFG4_DFE_EN_SEL_OFFSET)
7790ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CFG4_DFE_OVER_OFFSET		6
7800ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CFG4_DFE_OVER_MASK		\
7810ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_LANE_CFG4_DFE_OVER_OFFSET)
7820ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CFG4_SSC_CTRL_OFFSET		7
7830ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CFG4_SSC_CTRL_MASK		\
7840ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_LANE_CFG4_SSC_CTRL_OFFSET)
7850ade8cd8SKonstantin Porotchkin 
7860ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_EQ_REMOTE_SETTING_REG	0x6f8
7870ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CFG_FOM_DIRN_OVERRIDE_OFFSET	0
7880ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CFG_FOM_DIRN_OVERRIDE_MASK	\
7890ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_LANE_CFG_FOM_DIRN_OVERRIDE_OFFSET)
7900ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CFG_FOM_ONLY_MODE_OFFFSET	1
7910ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CFG_FOM_ONLY_MODE_MASK	\
7920ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_LANE_CFG_FOM_ONLY_MODE_OFFFSET)
7930ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CFG_FOM_PRESET_VECTOR_OFFSET	2
7940ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_CFG_FOM_PRESET_VECTOR_MASK	\
7950ade8cd8SKonstantin Porotchkin 			(0xf << HPIPE_LANE_CFG_FOM_PRESET_VECTOR_OFFSET)
7960ade8cd8SKonstantin Porotchkin 
7970ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_EQU_CONFIG_0_REG		0x69C
7980ade8cd8SKonstantin Porotchkin #define HPIPE_CFG_PHY_RC_EP_OFFSET		12
7990ade8cd8SKonstantin Porotchkin #define HPIPE_CFG_PHY_RC_EP_MASK		\
8000ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_CFG_PHY_RC_EP_OFFSET)
8010ade8cd8SKonstantin Porotchkin 
8020ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_EQ_CFG1_REG			0x6a0
8030ade8cd8SKonstantin Porotchkin #define HPIPE_CFG_UPDATE_POLARITY_OFFSET	12
8040ade8cd8SKonstantin Porotchkin #define HPIPE_CFG_UPDATE_POLARITY_MASK		\
8050ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_CFG_UPDATE_POLARITY_OFFSET)
8060ade8cd8SKonstantin Porotchkin 
8070ade8cd8SKonstantin Porotchkin #define HPIPE_LANE_EQ_CFG2_REG			0x6a4
8080ade8cd8SKonstantin Porotchkin #define HPIPE_CFG_EQ_BUNDLE_DIS_OFFSET		14
8090ade8cd8SKonstantin Porotchkin #define HPIPE_CFG_EQ_BUNDLE_DIS_MASK		\
8100ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_CFG_EQ_BUNDLE_DIS_OFFSET)
8110ade8cd8SKonstantin Porotchkin 
8120ade8cd8SKonstantin Porotchkin #define HPIPE_RST_CLK_CTRL_REG			0x704
8130ade8cd8SKonstantin Porotchkin #define HPIPE_RST_CLK_CTRL_PIPE_RST_OFFSET	0
8140ade8cd8SKonstantin Porotchkin #define HPIPE_RST_CLK_CTRL_PIPE_RST_MASK	\
8150ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_RST_CLK_CTRL_PIPE_RST_OFFSET)
8160ade8cd8SKonstantin Porotchkin #define HPIPE_RST_CLK_CTRL_FIXED_PCLK_OFFSET	2
8170ade8cd8SKonstantin Porotchkin #define HPIPE_RST_CLK_CTRL_FIXED_PCLK_MASK	\
8180ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_RST_CLK_CTRL_FIXED_PCLK_OFFSET)
8190ade8cd8SKonstantin Porotchkin #define HPIPE_RST_CLK_CTRL_PIPE_WIDTH_OFFSET	3
8200ade8cd8SKonstantin Porotchkin #define HPIPE_RST_CLK_CTRL_PIPE_WIDTH_MASK	\
8210ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_RST_CLK_CTRL_PIPE_WIDTH_OFFSET)
8220ade8cd8SKonstantin Porotchkin #define HPIPE_RST_CLK_CTRL_CORE_FREQ_SEL_OFFSET	9
8230ade8cd8SKonstantin Porotchkin #define HPIPE_RST_CLK_CTRL_CORE_FREQ_SEL_MASK	\
8240ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_RST_CLK_CTRL_CORE_FREQ_SEL_OFFSET)
8250ade8cd8SKonstantin Porotchkin 
8260ade8cd8SKonstantin Porotchkin #define HPIPE_TST_MODE_CTRL_REG			0x708
8270ade8cd8SKonstantin Porotchkin #define HPIPE_TST_MODE_CTRL_MODE_MARGIN_OFFSET	2
8280ade8cd8SKonstantin Porotchkin #define HPIPE_TST_MODE_CTRL_MODE_MARGIN_MASK	\
8290ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_TST_MODE_CTRL_MODE_MARGIN_OFFSET)
8300ade8cd8SKonstantin Porotchkin 
8310ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_LO_REG				0x70c
8320ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_LO_BUNDLE_PERIOD_SEL_OFFSET	1
8330ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_LO_BUNDLE_PERIOD_SEL_MASK		\
8340ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_CLK_SRC_LO_BUNDLE_PERIOD_SEL_OFFSET)
8350ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_LO_BUNDLE_PERIOD_SCALE_OFFSET	2
8360ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_LO_BUNDLE_PERIOD_SCALE_MASK	\
8370ade8cd8SKonstantin Porotchkin 			(0x3 << HPIPE_CLK_SRC_LO_BUNDLE_PERIOD_SCALE_OFFSET)
8380ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_LO_PLL_RDY_DL_OFFSET		5
8390ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_LO_PLL_RDY_DL_MASK		\
8400ade8cd8SKonstantin Porotchkin 			(0x7 << HPIPE_CLK_SRC_LO_PLL_RDY_DL_OFFSET)
8410ade8cd8SKonstantin Porotchkin 
8420ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_HI_REG			0x710
8430ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_HI_LANE_STRT_OFFSET	0
8440ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_HI_LANE_STRT_MASK		\
8450ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_CLK_SRC_HI_LANE_STRT_OFFSET)
8460ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_HI_LANE_BREAK_OFFSET	1
8470ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_HI_LANE_BREAK_MASK	\
8480ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_CLK_SRC_HI_LANE_BREAK_OFFSET)
8490ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_HI_LANE_MASTER_OFFSET	2
8500ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_HI_LANE_MASTER_MASK	\
8510ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_CLK_SRC_HI_LANE_MASTER_OFFSET)
8520ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_HI_MODE_PIPE_OFFSET	7
8530ade8cd8SKonstantin Porotchkin #define HPIPE_CLK_SRC_HI_MODE_PIPE_MASK		\
8540ade8cd8SKonstantin Porotchkin 			(0x1 << HPIPE_CLK_SRC_HI_MODE_PIPE_OFFSET)
8550ade8cd8SKonstantin Porotchkin 
8560ade8cd8SKonstantin Porotchkin #define HPIPE_GLOBAL_MISC_CTRL			0x718
8570ade8cd8SKonstantin Porotchkin #define HPIPE_GLOBAL_PM_CTRL			0x740
8580ade8cd8SKonstantin Porotchkin #define HPIPE_GLOBAL_PM_RXDLOZ_WAIT_OFFSET	0
8590ade8cd8SKonstantin Porotchkin #define HPIPE_GLOBAL_PM_RXDLOZ_WAIT_MASK	\
8600ade8cd8SKonstantin Porotchkin 			(0xFF << HPIPE_GLOBAL_PM_RXDLOZ_WAIT_OFFSET)
8610ade8cd8SKonstantin Porotchkin 
8620ade8cd8SKonstantin Porotchkin /* General defines */
8630ade8cd8SKonstantin Porotchkin #define PLL_LOCK_TIMEOUT			15000
8640ade8cd8SKonstantin Porotchkin 
865*c3cf06f1SAntonio Nino Diaz #endif /* COMPHY_CP110_H */
866