xref: /OK3568_Linux_fs/kernel/include/soc/mscc/ocelot_hsio.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /* SPDX-License-Identifier: (GPL-2.0 OR MIT) */
2*4882a593Smuzhiyun /*
3*4882a593Smuzhiyun  * Microsemi Ocelot Switch driver
4*4882a593Smuzhiyun  *
5*4882a593Smuzhiyun  * Copyright (c) 2017 Microsemi Corporation
6*4882a593Smuzhiyun  */
7*4882a593Smuzhiyun 
8*4882a593Smuzhiyun #ifndef _MSCC_OCELOT_HSIO_H_
9*4882a593Smuzhiyun #define _MSCC_OCELOT_HSIO_H_
10*4882a593Smuzhiyun 
11*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0			0x0000
12*4882a593Smuzhiyun #define HSIO_PLL5G_CFG1			0x0004
13*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2			0x0008
14*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3			0x000c
15*4882a593Smuzhiyun #define HSIO_PLL5G_CFG4			0x0010
16*4882a593Smuzhiyun #define HSIO_PLL5G_CFG5			0x0014
17*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6			0x0018
18*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS0		0x001c
19*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS1		0x0020
20*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_CFG0		0x0024
21*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_CFG1		0x0028
22*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_CFG2		0x002c
23*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_STAT0		0x0030
24*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_STAT1		0x0034
25*4882a593Smuzhiyun #define HSIO_RCOMP_CFG0			0x0038
26*4882a593Smuzhiyun #define HSIO_RCOMP_STATUS		0x003c
27*4882a593Smuzhiyun #define HSIO_SYNC_ETH_CFG		0x0040
28*4882a593Smuzhiyun #define HSIO_SYNC_ETH_PLL_CFG		0x0048
29*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG		0x004c
30*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG			0x0050
31*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG			0x0054
32*4882a593Smuzhiyun #define HSIO_S1G_SER_CFG		0x0058
33*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG		0x005c
34*4882a593Smuzhiyun #define HSIO_S1G_PLL_CFG		0x0060
35*4882a593Smuzhiyun #define HSIO_S1G_PLL_STATUS		0x0064
36*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG0		0x0068
37*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG1		0x006c
38*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG2		0x0070
39*4882a593Smuzhiyun #define HSIO_S1G_TP_CFG			0x0074
40*4882a593Smuzhiyun #define HSIO_S1G_RC_PLL_BIST_CFG	0x0078
41*4882a593Smuzhiyun #define HSIO_S1G_MISC_CFG		0x007c
42*4882a593Smuzhiyun #define HSIO_S1G_DFT_STATUS		0x0080
43*4882a593Smuzhiyun #define HSIO_S1G_MISC_STATUS		0x0084
44*4882a593Smuzhiyun #define HSIO_MCB_S1G_ADDR_CFG		0x0088
45*4882a593Smuzhiyun #define HSIO_S6G_DIG_CFG		0x008c
46*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG0		0x0090
47*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG1		0x0094
48*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG2		0x0098
49*4882a593Smuzhiyun #define HSIO_S6G_TP_CFG0		0x009c
50*4882a593Smuzhiyun #define HSIO_S6G_TP_CFG1		0x00a0
51*4882a593Smuzhiyun #define HSIO_S6G_RC_PLL_BIST_CFG	0x00a4
52*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG		0x00a8
53*4882a593Smuzhiyun #define HSIO_S6G_OB_ANEG_CFG		0x00ac
54*4882a593Smuzhiyun #define HSIO_S6G_DFT_STATUS		0x00b0
55*4882a593Smuzhiyun #define HSIO_S6G_ERR_CNT		0x00b4
56*4882a593Smuzhiyun #define HSIO_S6G_MISC_STATUS		0x00b8
57*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG		0x00bc
58*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG			0x00c0
59*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1		0x00c4
60*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2		0x00c8
61*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG3		0x00cc
62*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG4		0x00d0
63*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG5		0x00d4
64*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG			0x00d8
65*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG1		0x00dc
66*4882a593Smuzhiyun #define HSIO_S6G_SER_CFG		0x00e0
67*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG		0x00e4
68*4882a593Smuzhiyun #define HSIO_S6G_PLL_CFG		0x00e8
69*4882a593Smuzhiyun #define HSIO_S6G_ACJTAG_CFG		0x00ec
70*4882a593Smuzhiyun #define HSIO_S6G_GP_CFG			0x00f0
71*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS0		0x00f4
72*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS1		0x00f8
73*4882a593Smuzhiyun #define HSIO_S6G_ACJTAG_STATUS		0x00fc
74*4882a593Smuzhiyun #define HSIO_S6G_PLL_STATUS		0x0100
75*4882a593Smuzhiyun #define HSIO_S6G_REVID			0x0104
76*4882a593Smuzhiyun #define HSIO_MCB_S6G_ADDR_CFG		0x0108
77*4882a593Smuzhiyun #define HSIO_HW_CFG			0x010c
78*4882a593Smuzhiyun #define HSIO_HW_QSGMII_CFG		0x0110
79*4882a593Smuzhiyun #define HSIO_HW_QSGMII_STAT		0x0114
80*4882a593Smuzhiyun #define HSIO_CLK_CFG			0x0118
81*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_CTRL		0x011c
82*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_CFG		0x0120
83*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_STAT		0x0124
84*4882a593Smuzhiyun 
85*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_ENA_ROT                           BIT(31)
86*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_ENA_LANE                          BIT(30)
87*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_ENA_CLKTREE                       BIT(29)
88*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_DIV4                              BIT(28)
89*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_ENA_LOCK_FINE                     BIT(27)
90*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_SELBGV820(x)                      (((x) << 23) & GENMASK(26, 23))
91*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_SELBGV820_M                       GENMASK(26, 23)
92*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_SELBGV820_X(x)                    (((x) & GENMASK(26, 23)) >> 23)
93*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_LOOP_BW_RES(x)                    (((x) << 18) & GENMASK(22, 18))
94*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_LOOP_BW_RES_M                     GENMASK(22, 18)
95*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_LOOP_BW_RES_X(x)                  (((x) & GENMASK(22, 18)) >> 18)
96*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_SELCPI(x)                         (((x) << 16) & GENMASK(17, 16))
97*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_SELCPI_M                          GENMASK(17, 16)
98*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_SELCPI_X(x)                       (((x) & GENMASK(17, 16)) >> 16)
99*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_ENA_VCO_CONTRH                    BIT(15)
100*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_ENA_CP1                           BIT(14)
101*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_ENA_VCO_BUF                       BIT(13)
102*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_ENA_BIAS                          BIT(12)
103*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_CPU_CLK_DIV(x)                    (((x) << 6) & GENMASK(11, 6))
104*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_CPU_CLK_DIV_M                     GENMASK(11, 6)
105*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_CPU_CLK_DIV_X(x)                  (((x) & GENMASK(11, 6)) >> 6)
106*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_CORE_CLK_DIV(x)                   ((x) & GENMASK(5, 0))
107*4882a593Smuzhiyun #define HSIO_PLL5G_CFG0_CORE_CLK_DIV_M                    GENMASK(5, 0)
108*4882a593Smuzhiyun 
109*4882a593Smuzhiyun #define HSIO_PLL5G_CFG1_ENA_DIRECT                        BIT(18)
110*4882a593Smuzhiyun #define HSIO_PLL5G_CFG1_ROT_SPEED                         BIT(17)
111*4882a593Smuzhiyun #define HSIO_PLL5G_CFG1_ROT_DIR                           BIT(16)
112*4882a593Smuzhiyun #define HSIO_PLL5G_CFG1_READBACK_DATA_SEL                 BIT(15)
113*4882a593Smuzhiyun #define HSIO_PLL5G_CFG1_RC_ENABLE                         BIT(14)
114*4882a593Smuzhiyun #define HSIO_PLL5G_CFG1_RC_CTRL_DATA(x)                   (((x) << 6) & GENMASK(13, 6))
115*4882a593Smuzhiyun #define HSIO_PLL5G_CFG1_RC_CTRL_DATA_M                    GENMASK(13, 6)
116*4882a593Smuzhiyun #define HSIO_PLL5G_CFG1_RC_CTRL_DATA_X(x)                 (((x) & GENMASK(13, 6)) >> 6)
117*4882a593Smuzhiyun #define HSIO_PLL5G_CFG1_QUARTER_RATE                      BIT(5)
118*4882a593Smuzhiyun #define HSIO_PLL5G_CFG1_PWD_TX                            BIT(4)
119*4882a593Smuzhiyun #define HSIO_PLL5G_CFG1_PWD_RX                            BIT(3)
120*4882a593Smuzhiyun #define HSIO_PLL5G_CFG1_OUT_OF_RANGE_RECAL_ENA            BIT(2)
121*4882a593Smuzhiyun #define HSIO_PLL5G_CFG1_HALF_RATE                         BIT(1)
122*4882a593Smuzhiyun #define HSIO_PLL5G_CFG1_FORCE_SET_ENA                     BIT(0)
123*4882a593Smuzhiyun 
124*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_ENA_TEST_MODE                     BIT(30)
125*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_ENA_PFD_IN_FLIP                   BIT(29)
126*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_ENA_VCO_NREF_TESTOUT              BIT(28)
127*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_ENA_FBTESTOUT                     BIT(27)
128*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_ENA_RCPLL                         BIT(26)
129*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_ENA_CP2                           BIT(25)
130*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_ENA_CLK_BYPASS1                   BIT(24)
131*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_AMPC_SEL(x)                       (((x) << 16) & GENMASK(23, 16))
132*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_AMPC_SEL_M                        GENMASK(23, 16)
133*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_AMPC_SEL_X(x)                     (((x) & GENMASK(23, 16)) >> 16)
134*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_ENA_CLK_BYPASS                    BIT(15)
135*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_PWD_AMPCTRL_N                     BIT(14)
136*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_ENA_AMPCTRL                       BIT(13)
137*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_ENA_AMP_CTRL_FORCE                BIT(12)
138*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_FRC_FSM_POR                       BIT(11)
139*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_DISABLE_FSM_POR                   BIT(10)
140*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_GAIN_TEST(x)                      (((x) << 5) & GENMASK(9, 5))
141*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_GAIN_TEST_M                       GENMASK(9, 5)
142*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_GAIN_TEST_X(x)                    (((x) & GENMASK(9, 5)) >> 5)
143*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_EN_RESET_OVERRUN                  BIT(4)
144*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_EN_RESET_LIM_DET                  BIT(3)
145*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_EN_RESET_FRQ_DET                  BIT(2)
146*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_DISABLE_FSM                       BIT(1)
147*4882a593Smuzhiyun #define HSIO_PLL5G_CFG2_ENA_GAIN_TEST                     BIT(0)
148*4882a593Smuzhiyun 
149*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_TEST_ANA_OUT_SEL(x)               (((x) << 22) & GENMASK(23, 22))
150*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_TEST_ANA_OUT_SEL_M                GENMASK(23, 22)
151*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_TEST_ANA_OUT_SEL_X(x)             (((x) & GENMASK(23, 22)) >> 22)
152*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_TESTOUT_SEL(x)                    (((x) << 19) & GENMASK(21, 19))
153*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_TESTOUT_SEL_M                     GENMASK(21, 19)
154*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_TESTOUT_SEL_X(x)                  (((x) & GENMASK(21, 19)) >> 19)
155*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_ENA_ANA_TEST_OUT                  BIT(18)
156*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_ENA_TEST_OUT                      BIT(17)
157*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_SEL_FBDCLK                        BIT(16)
158*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_SEL_CML_CMOS_PFD                  BIT(15)
159*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_RST_FB_N                          BIT(14)
160*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_FORCE_VCO_CONTRH                  BIT(13)
161*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_FORCE_LO                          BIT(12)
162*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_FORCE_HI                          BIT(11)
163*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_FORCE_ENA                         BIT(10)
164*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_FORCE_CP                          BIT(9)
165*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_FBDIVSEL_TST_ENA                  BIT(8)
166*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_FBDIVSEL(x)                       ((x) & GENMASK(7, 0))
167*4882a593Smuzhiyun #define HSIO_PLL5G_CFG3_FBDIVSEL_M                        GENMASK(7, 0)
168*4882a593Smuzhiyun 
169*4882a593Smuzhiyun #define HSIO_PLL5G_CFG4_IB_BIAS_CTRL(x)                   (((x) << 16) & GENMASK(23, 16))
170*4882a593Smuzhiyun #define HSIO_PLL5G_CFG4_IB_BIAS_CTRL_M                    GENMASK(23, 16)
171*4882a593Smuzhiyun #define HSIO_PLL5G_CFG4_IB_BIAS_CTRL_X(x)                 (((x) & GENMASK(23, 16)) >> 16)
172*4882a593Smuzhiyun #define HSIO_PLL5G_CFG4_IB_CTRL(x)                        ((x) & GENMASK(15, 0))
173*4882a593Smuzhiyun #define HSIO_PLL5G_CFG4_IB_CTRL_M                         GENMASK(15, 0)
174*4882a593Smuzhiyun 
175*4882a593Smuzhiyun #define HSIO_PLL5G_CFG5_OB_BIAS_CTRL(x)                   (((x) << 16) & GENMASK(23, 16))
176*4882a593Smuzhiyun #define HSIO_PLL5G_CFG5_OB_BIAS_CTRL_M                    GENMASK(23, 16)
177*4882a593Smuzhiyun #define HSIO_PLL5G_CFG5_OB_BIAS_CTRL_X(x)                 (((x) & GENMASK(23, 16)) >> 16)
178*4882a593Smuzhiyun #define HSIO_PLL5G_CFG5_OB_CTRL(x)                        ((x) & GENMASK(15, 0))
179*4882a593Smuzhiyun #define HSIO_PLL5G_CFG5_OB_CTRL_M                         GENMASK(15, 0)
180*4882a593Smuzhiyun 
181*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6_REFCLK_SEL_SRC                    BIT(23)
182*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6_REFCLK_SEL(x)                     (((x) << 20) & GENMASK(22, 20))
183*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6_REFCLK_SEL_M                      GENMASK(22, 20)
184*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6_REFCLK_SEL_X(x)                   (((x) & GENMASK(22, 20)) >> 20)
185*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6_REFCLK_SRC                        BIT(19)
186*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6_POR_DEL_SEL(x)                    (((x) << 16) & GENMASK(17, 16))
187*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6_POR_DEL_SEL_M                     GENMASK(17, 16)
188*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6_POR_DEL_SEL_X(x)                  (((x) & GENMASK(17, 16)) >> 16)
189*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6_DIV125REF_SEL(x)                  (((x) << 8) & GENMASK(15, 8))
190*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6_DIV125REF_SEL_M                   GENMASK(15, 8)
191*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6_DIV125REF_SEL_X(x)                (((x) & GENMASK(15, 8)) >> 8)
192*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6_ENA_REFCLKC2                      BIT(7)
193*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6_ENA_FBCLKC2                       BIT(6)
194*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6_DDR_CLK_DIV(x)                    ((x) & GENMASK(5, 0))
195*4882a593Smuzhiyun #define HSIO_PLL5G_CFG6_DDR_CLK_DIV_M                     GENMASK(5, 0)
196*4882a593Smuzhiyun 
197*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS0_RANGE_LIM                      BIT(12)
198*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS0_OUT_OF_RANGE_ERR               BIT(11)
199*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS0_CALIBRATION_ERR                BIT(10)
200*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS0_CALIBRATION_DONE               BIT(9)
201*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS0_READBACK_DATA(x)               (((x) << 1) & GENMASK(8, 1))
202*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS0_READBACK_DATA_M                GENMASK(8, 1)
203*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS0_READBACK_DATA_X(x)             (((x) & GENMASK(8, 1)) >> 1)
204*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS0_LOCK_STATUS                    BIT(0)
205*4882a593Smuzhiyun 
206*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS1_SIG_DEL(x)                     (((x) << 21) & GENMASK(28, 21))
207*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS1_SIG_DEL_M                      GENMASK(28, 21)
208*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS1_SIG_DEL_X(x)                   (((x) & GENMASK(28, 21)) >> 21)
209*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS1_GAIN_STAT(x)                   (((x) << 16) & GENMASK(20, 16))
210*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS1_GAIN_STAT_M                    GENMASK(20, 16)
211*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS1_GAIN_STAT_X(x)                 (((x) & GENMASK(20, 16)) >> 16)
212*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS1_FBCNT_DIF(x)                   (((x) << 4) & GENMASK(13, 4))
213*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS1_FBCNT_DIF_M                    GENMASK(13, 4)
214*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS1_FBCNT_DIF_X(x)                 (((x) & GENMASK(13, 4)) >> 4)
215*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS1_FSM_STAT(x)                    (((x) << 1) & GENMASK(3, 1))
216*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS1_FSM_STAT_M                     GENMASK(3, 1)
217*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS1_FSM_STAT_X(x)                  (((x) & GENMASK(3, 1)) >> 1)
218*4882a593Smuzhiyun #define HSIO_PLL5G_STATUS1_FSM_LOCK                       BIT(0)
219*4882a593Smuzhiyun 
220*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_CFG0_PLLB_START_BIST              BIT(31)
221*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_CFG0_PLLB_MEAS_MODE               BIT(30)
222*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_CFG0_PLLB_LOCK_REPEAT(x)          (((x) << 20) & GENMASK(23, 20))
223*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_CFG0_PLLB_LOCK_REPEAT_M           GENMASK(23, 20)
224*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_CFG0_PLLB_LOCK_REPEAT_X(x)        (((x) & GENMASK(23, 20)) >> 20)
225*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_CFG0_PLLB_LOCK_UNCERT(x)          (((x) << 16) & GENMASK(19, 16))
226*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_CFG0_PLLB_LOCK_UNCERT_M           GENMASK(19, 16)
227*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_CFG0_PLLB_LOCK_UNCERT_X(x)        (((x) & GENMASK(19, 16)) >> 16)
228*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_CFG0_PLLB_DIV_FACTOR_PRE(x)       ((x) & GENMASK(15, 0))
229*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_CFG0_PLLB_DIV_FACTOR_PRE_M        GENMASK(15, 0)
230*4882a593Smuzhiyun 
231*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_STAT0_PLLB_FSM_STAT(x)            (((x) << 4) & GENMASK(7, 4))
232*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_STAT0_PLLB_FSM_STAT_M             GENMASK(7, 4)
233*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_STAT0_PLLB_FSM_STAT_X(x)          (((x) & GENMASK(7, 4)) >> 4)
234*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_STAT0_PLLB_BUSY                   BIT(2)
235*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_STAT0_PLLB_DONE_N                 BIT(1)
236*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_STAT0_PLLB_FAIL                   BIT(0)
237*4882a593Smuzhiyun 
238*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_STAT1_PLLB_CNT_OUT(x)             (((x) << 16) & GENMASK(31, 16))
239*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_STAT1_PLLB_CNT_OUT_M              GENMASK(31, 16)
240*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_STAT1_PLLB_CNT_OUT_X(x)           (((x) & GENMASK(31, 16)) >> 16)
241*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_STAT1_PLLB_CNT_REF_DIFF(x)        ((x) & GENMASK(15, 0))
242*4882a593Smuzhiyun #define HSIO_PLL5G_BIST_STAT1_PLLB_CNT_REF_DIFF_M         GENMASK(15, 0)
243*4882a593Smuzhiyun 
244*4882a593Smuzhiyun #define HSIO_RCOMP_CFG0_PWD_ENA                           BIT(13)
245*4882a593Smuzhiyun #define HSIO_RCOMP_CFG0_RUN_CAL                           BIT(12)
246*4882a593Smuzhiyun #define HSIO_RCOMP_CFG0_SPEED_SEL(x)                      (((x) << 10) & GENMASK(11, 10))
247*4882a593Smuzhiyun #define HSIO_RCOMP_CFG0_SPEED_SEL_M                       GENMASK(11, 10)
248*4882a593Smuzhiyun #define HSIO_RCOMP_CFG0_SPEED_SEL_X(x)                    (((x) & GENMASK(11, 10)) >> 10)
249*4882a593Smuzhiyun #define HSIO_RCOMP_CFG0_MODE_SEL(x)                       (((x) << 8) & GENMASK(9, 8))
250*4882a593Smuzhiyun #define HSIO_RCOMP_CFG0_MODE_SEL_M                        GENMASK(9, 8)
251*4882a593Smuzhiyun #define HSIO_RCOMP_CFG0_MODE_SEL_X(x)                     (((x) & GENMASK(9, 8)) >> 8)
252*4882a593Smuzhiyun #define HSIO_RCOMP_CFG0_FORCE_ENA                         BIT(4)
253*4882a593Smuzhiyun #define HSIO_RCOMP_CFG0_RCOMP_VAL(x)                      ((x) & GENMASK(3, 0))
254*4882a593Smuzhiyun #define HSIO_RCOMP_CFG0_RCOMP_VAL_M                       GENMASK(3, 0)
255*4882a593Smuzhiyun 
256*4882a593Smuzhiyun #define HSIO_RCOMP_STATUS_BUSY                            BIT(12)
257*4882a593Smuzhiyun #define HSIO_RCOMP_STATUS_DELTA_ALERT                     BIT(7)
258*4882a593Smuzhiyun #define HSIO_RCOMP_STATUS_RCOMP(x)                        ((x) & GENMASK(3, 0))
259*4882a593Smuzhiyun #define HSIO_RCOMP_STATUS_RCOMP_M                         GENMASK(3, 0)
260*4882a593Smuzhiyun 
261*4882a593Smuzhiyun #define HSIO_SYNC_ETH_CFG_RSZ                             0x4
262*4882a593Smuzhiyun 
263*4882a593Smuzhiyun #define HSIO_SYNC_ETH_CFG_SEL_RECO_CLK_SRC(x)             (((x) << 4) & GENMASK(7, 4))
264*4882a593Smuzhiyun #define HSIO_SYNC_ETH_CFG_SEL_RECO_CLK_SRC_M              GENMASK(7, 4)
265*4882a593Smuzhiyun #define HSIO_SYNC_ETH_CFG_SEL_RECO_CLK_SRC_X(x)           (((x) & GENMASK(7, 4)) >> 4)
266*4882a593Smuzhiyun #define HSIO_SYNC_ETH_CFG_SEL_RECO_CLK_DIV(x)             (((x) << 1) & GENMASK(3, 1))
267*4882a593Smuzhiyun #define HSIO_SYNC_ETH_CFG_SEL_RECO_CLK_DIV_M              GENMASK(3, 1)
268*4882a593Smuzhiyun #define HSIO_SYNC_ETH_CFG_SEL_RECO_CLK_DIV_X(x)           (((x) & GENMASK(3, 1)) >> 1)
269*4882a593Smuzhiyun #define HSIO_SYNC_ETH_CFG_RECO_CLK_ENA                    BIT(0)
270*4882a593Smuzhiyun 
271*4882a593Smuzhiyun #define HSIO_SYNC_ETH_PLL_CFG_PLL_AUTO_SQUELCH_ENA        BIT(0)
272*4882a593Smuzhiyun 
273*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_PHS_CTRL(x)                  (((x) << 13) & GENMASK(16, 13))
274*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_PHS_CTRL_M                   GENMASK(16, 13)
275*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_PHS_CTRL_X(x)                (((x) & GENMASK(16, 13)) >> 13)
276*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_CPMD_SEL(x)                  (((x) << 11) & GENMASK(12, 11))
277*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_CPMD_SEL_M                   GENMASK(12, 11)
278*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_CPMD_SEL_X(x)                (((x) & GENMASK(12, 11)) >> 11)
279*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_MBTR_CTRL(x)                 (((x) << 8) & GENMASK(10, 8))
280*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_MBTR_CTRL_M                  GENMASK(10, 8)
281*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_MBTR_CTRL_X(x)               (((x) & GENMASK(10, 8)) >> 8)
282*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_BW_ANA(x)                    (((x) << 5) & GENMASK(7, 5))
283*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_BW_ANA_M                     GENMASK(7, 5)
284*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_BW_ANA_X(x)                  (((x) & GENMASK(7, 5)) >> 5)
285*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_SWAP_ANA                     BIT(4)
286*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_BW_HYST(x)                   (((x) << 1) & GENMASK(3, 1))
287*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_BW_HYST_M                    GENMASK(3, 1)
288*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_BW_HYST_X(x)                 (((x) & GENMASK(3, 1)) >> 1)
289*4882a593Smuzhiyun #define HSIO_S1G_DES_CFG_DES_SWAP_HYST                    BIT(0)
290*4882a593Smuzhiyun 
291*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_FX100_ENA                      BIT(27)
292*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_ACJTAG_HYST(x)                    (((x) << 24) & GENMASK(26, 24))
293*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_ACJTAG_HYST_M                     GENMASK(26, 24)
294*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_ACJTAG_HYST_X(x)                  (((x) & GENMASK(26, 24)) >> 24)
295*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_DET_LEV(x)                     (((x) << 19) & GENMASK(21, 19))
296*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_DET_LEV_M                      GENMASK(21, 19)
297*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_DET_LEV_X(x)                   (((x) & GENMASK(21, 19)) >> 19)
298*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_HYST_LEV                       BIT(14)
299*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_ENA_CMV_TERM                   BIT(13)
300*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_ENA_DC_COUPLING                BIT(12)
301*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_ENA_DETLEV                     BIT(11)
302*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_ENA_HYST                       BIT(10)
303*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_ENA_OFFSET_COMP                BIT(9)
304*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_EQ_GAIN(x)                     (((x) << 6) & GENMASK(8, 6))
305*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_EQ_GAIN_M                      GENMASK(8, 6)
306*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_EQ_GAIN_X(x)                   (((x) & GENMASK(8, 6)) >> 6)
307*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_SEL_CORNER_FREQ(x)             (((x) << 4) & GENMASK(5, 4))
308*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_SEL_CORNER_FREQ_M              GENMASK(5, 4)
309*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_SEL_CORNER_FREQ_X(x)           (((x) & GENMASK(5, 4)) >> 4)
310*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_RESISTOR_CTRL(x)               ((x) & GENMASK(3, 0))
311*4882a593Smuzhiyun #define HSIO_S1G_IB_CFG_IB_RESISTOR_CTRL_M                GENMASK(3, 0)
312*4882a593Smuzhiyun 
313*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_SLP(x)                         (((x) << 17) & GENMASK(18, 17))
314*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_SLP_M                          GENMASK(18, 17)
315*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_SLP_X(x)                       (((x) & GENMASK(18, 17)) >> 17)
316*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_AMP_CTRL(x)                    (((x) << 13) & GENMASK(16, 13))
317*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_AMP_CTRL_M                     GENMASK(16, 13)
318*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_AMP_CTRL_X(x)                  (((x) & GENMASK(16, 13)) >> 13)
319*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_CMM_BIAS_CTRL(x)               (((x) << 10) & GENMASK(12, 10))
320*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_CMM_BIAS_CTRL_M                GENMASK(12, 10)
321*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_CMM_BIAS_CTRL_X(x)             (((x) & GENMASK(12, 10)) >> 10)
322*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_DIS_VCM_CTRL                   BIT(9)
323*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_EN_MEAS_VREG                   BIT(8)
324*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_VCM_CTRL(x)                    (((x) << 4) & GENMASK(7, 4))
325*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_VCM_CTRL_M                     GENMASK(7, 4)
326*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_VCM_CTRL_X(x)                  (((x) & GENMASK(7, 4)) >> 4)
327*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_RESISTOR_CTRL(x)               ((x) & GENMASK(3, 0))
328*4882a593Smuzhiyun #define HSIO_S1G_OB_CFG_OB_RESISTOR_CTRL_M                GENMASK(3, 0)
329*4882a593Smuzhiyun 
330*4882a593Smuzhiyun #define HSIO_S1G_SER_CFG_SER_IDLE                         BIT(9)
331*4882a593Smuzhiyun #define HSIO_S1G_SER_CFG_SER_DEEMPH                       BIT(8)
332*4882a593Smuzhiyun #define HSIO_S1G_SER_CFG_SER_CPMD_SEL                     BIT(7)
333*4882a593Smuzhiyun #define HSIO_S1G_SER_CFG_SER_SWAP_CPMD                    BIT(6)
334*4882a593Smuzhiyun #define HSIO_S1G_SER_CFG_SER_ALISEL(x)                    (((x) << 4) & GENMASK(5, 4))
335*4882a593Smuzhiyun #define HSIO_S1G_SER_CFG_SER_ALISEL_M                     GENMASK(5, 4)
336*4882a593Smuzhiyun #define HSIO_S1G_SER_CFG_SER_ALISEL_X(x)                  (((x) & GENMASK(5, 4)) >> 4)
337*4882a593Smuzhiyun #define HSIO_S1G_SER_CFG_SER_ENHYS                        BIT(3)
338*4882a593Smuzhiyun #define HSIO_S1G_SER_CFG_SER_BIG_WIN                      BIT(2)
339*4882a593Smuzhiyun #define HSIO_S1G_SER_CFG_SER_EN_WIN                       BIT(1)
340*4882a593Smuzhiyun #define HSIO_S1G_SER_CFG_SER_ENALI                        BIT(0)
341*4882a593Smuzhiyun 
342*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG_SYS_RST                       BIT(31)
343*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG_SE_AUTO_SQUELCH_ENA           BIT(21)
344*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG_ENA_LANE                      BIT(18)
345*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG_PWD_RX                        BIT(17)
346*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG_PWD_TX                        BIT(16)
347*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG_LANE_CTRL(x)                  (((x) << 13) & GENMASK(15, 13))
348*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG_LANE_CTRL_M                   GENMASK(15, 13)
349*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG_LANE_CTRL_X(x)                (((x) & GENMASK(15, 13)) >> 13)
350*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG_ENA_DIRECT                    BIT(12)
351*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG_ENA_ELOOP                     BIT(11)
352*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG_ENA_FLOOP                     BIT(10)
353*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG_ENA_ILOOP                     BIT(9)
354*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG_ENA_PLOOP                     BIT(8)
355*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG_HRATE                         BIT(7)
356*4882a593Smuzhiyun #define HSIO_S1G_COMMON_CFG_IF_MODE                       BIT(0)
357*4882a593Smuzhiyun 
358*4882a593Smuzhiyun #define HSIO_S1G_PLL_CFG_PLL_ENA_FB_DIV2                  BIT(22)
359*4882a593Smuzhiyun #define HSIO_S1G_PLL_CFG_PLL_ENA_RC_DIV2                  BIT(21)
360*4882a593Smuzhiyun #define HSIO_S1G_PLL_CFG_PLL_FSM_CTRL_DATA(x)             (((x) << 8) & GENMASK(15, 8))
361*4882a593Smuzhiyun #define HSIO_S1G_PLL_CFG_PLL_FSM_CTRL_DATA_M              GENMASK(15, 8)
362*4882a593Smuzhiyun #define HSIO_S1G_PLL_CFG_PLL_FSM_CTRL_DATA_X(x)           (((x) & GENMASK(15, 8)) >> 8)
363*4882a593Smuzhiyun #define HSIO_S1G_PLL_CFG_PLL_FSM_ENA                      BIT(7)
364*4882a593Smuzhiyun #define HSIO_S1G_PLL_CFG_PLL_FSM_FORCE_SET_ENA            BIT(6)
365*4882a593Smuzhiyun #define HSIO_S1G_PLL_CFG_PLL_FSM_OOR_RECAL_ENA            BIT(5)
366*4882a593Smuzhiyun #define HSIO_S1G_PLL_CFG_PLL_RB_DATA_SEL                  BIT(3)
367*4882a593Smuzhiyun 
368*4882a593Smuzhiyun #define HSIO_S1G_PLL_STATUS_PLL_CAL_NOT_DONE              BIT(12)
369*4882a593Smuzhiyun #define HSIO_S1G_PLL_STATUS_PLL_CAL_ERR                   BIT(11)
370*4882a593Smuzhiyun #define HSIO_S1G_PLL_STATUS_PLL_OUT_OF_RANGE_ERR          BIT(10)
371*4882a593Smuzhiyun #define HSIO_S1G_PLL_STATUS_PLL_RB_DATA(x)                ((x) & GENMASK(7, 0))
372*4882a593Smuzhiyun #define HSIO_S1G_PLL_STATUS_PLL_RB_DATA_M                 GENMASK(7, 0)
373*4882a593Smuzhiyun 
374*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG0_LAZYBIT                         BIT(31)
375*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG0_INV_DIS                         BIT(23)
376*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG0_PRBS_SEL(x)                     (((x) << 20) & GENMASK(21, 20))
377*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG0_PRBS_SEL_M                      GENMASK(21, 20)
378*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG0_PRBS_SEL_X(x)                   (((x) & GENMASK(21, 20)) >> 20)
379*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG0_TEST_MODE(x)                    (((x) << 16) & GENMASK(18, 16))
380*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG0_TEST_MODE_M                     GENMASK(18, 16)
381*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG0_TEST_MODE_X(x)                  (((x) & GENMASK(18, 16)) >> 16)
382*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG0_RX_PHS_CORR_DIS                 BIT(4)
383*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG0_RX_PDSENS_ENA                   BIT(3)
384*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG0_RX_DFT_ENA                      BIT(2)
385*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG0_TX_DFT_ENA                      BIT(0)
386*4882a593Smuzhiyun 
387*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG1_TX_JITTER_AMPL(x)               (((x) << 8) & GENMASK(17, 8))
388*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG1_TX_JITTER_AMPL_M                GENMASK(17, 8)
389*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG1_TX_JITTER_AMPL_X(x)             (((x) & GENMASK(17, 8)) >> 8)
390*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG1_TX_STEP_FREQ(x)                 (((x) << 4) & GENMASK(7, 4))
391*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG1_TX_STEP_FREQ_M                  GENMASK(7, 4)
392*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG1_TX_STEP_FREQ_X(x)               (((x) & GENMASK(7, 4)) >> 4)
393*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG1_TX_JI_ENA                       BIT(3)
394*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG1_TX_WAVEFORM_SEL                 BIT(2)
395*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG1_TX_FREQOFF_DIR                  BIT(1)
396*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG1_TX_FREQOFF_ENA                  BIT(0)
397*4882a593Smuzhiyun 
398*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG2_RX_JITTER_AMPL(x)               (((x) << 8) & GENMASK(17, 8))
399*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG2_RX_JITTER_AMPL_M                GENMASK(17, 8)
400*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG2_RX_JITTER_AMPL_X(x)             (((x) & GENMASK(17, 8)) >> 8)
401*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG2_RX_STEP_FREQ(x)                 (((x) << 4) & GENMASK(7, 4))
402*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG2_RX_STEP_FREQ_M                  GENMASK(7, 4)
403*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG2_RX_STEP_FREQ_X(x)               (((x) & GENMASK(7, 4)) >> 4)
404*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG2_RX_JI_ENA                       BIT(3)
405*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG2_RX_WAVEFORM_SEL                 BIT(2)
406*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG2_RX_FREQOFF_DIR                  BIT(1)
407*4882a593Smuzhiyun #define HSIO_S1G_DFT_CFG2_RX_FREQOFF_ENA                  BIT(0)
408*4882a593Smuzhiyun 
409*4882a593Smuzhiyun #define HSIO_S1G_RC_PLL_BIST_CFG_PLL_BIST_ENA             BIT(20)
410*4882a593Smuzhiyun #define HSIO_S1G_RC_PLL_BIST_CFG_PLL_BIST_FBS_HIGH(x)     (((x) << 16) & GENMASK(17, 16))
411*4882a593Smuzhiyun #define HSIO_S1G_RC_PLL_BIST_CFG_PLL_BIST_FBS_HIGH_M      GENMASK(17, 16)
412*4882a593Smuzhiyun #define HSIO_S1G_RC_PLL_BIST_CFG_PLL_BIST_FBS_HIGH_X(x)   (((x) & GENMASK(17, 16)) >> 16)
413*4882a593Smuzhiyun #define HSIO_S1G_RC_PLL_BIST_CFG_PLL_BIST_HIGH(x)         (((x) << 8) & GENMASK(15, 8))
414*4882a593Smuzhiyun #define HSIO_S1G_RC_PLL_BIST_CFG_PLL_BIST_HIGH_M          GENMASK(15, 8)
415*4882a593Smuzhiyun #define HSIO_S1G_RC_PLL_BIST_CFG_PLL_BIST_HIGH_X(x)       (((x) & GENMASK(15, 8)) >> 8)
416*4882a593Smuzhiyun #define HSIO_S1G_RC_PLL_BIST_CFG_PLL_BIST_LOW(x)          ((x) & GENMASK(7, 0))
417*4882a593Smuzhiyun #define HSIO_S1G_RC_PLL_BIST_CFG_PLL_BIST_LOW_M           GENMASK(7, 0)
418*4882a593Smuzhiyun 
419*4882a593Smuzhiyun #define HSIO_S1G_MISC_CFG_DES_100FX_KICK_MODE(x)          (((x) << 11) & GENMASK(12, 11))
420*4882a593Smuzhiyun #define HSIO_S1G_MISC_CFG_DES_100FX_KICK_MODE_M           GENMASK(12, 11)
421*4882a593Smuzhiyun #define HSIO_S1G_MISC_CFG_DES_100FX_KICK_MODE_X(x)        (((x) & GENMASK(12, 11)) >> 11)
422*4882a593Smuzhiyun #define HSIO_S1G_MISC_CFG_DES_100FX_CPMD_SWAP             BIT(10)
423*4882a593Smuzhiyun #define HSIO_S1G_MISC_CFG_DES_100FX_CPMD_MODE             BIT(9)
424*4882a593Smuzhiyun #define HSIO_S1G_MISC_CFG_DES_100FX_CPMD_ENA              BIT(8)
425*4882a593Smuzhiyun #define HSIO_S1G_MISC_CFG_RX_LPI_MODE_ENA                 BIT(5)
426*4882a593Smuzhiyun #define HSIO_S1G_MISC_CFG_TX_LPI_MODE_ENA                 BIT(4)
427*4882a593Smuzhiyun #define HSIO_S1G_MISC_CFG_RX_DATA_INV_ENA                 BIT(3)
428*4882a593Smuzhiyun #define HSIO_S1G_MISC_CFG_TX_DATA_INV_ENA                 BIT(2)
429*4882a593Smuzhiyun #define HSIO_S1G_MISC_CFG_LANE_RST                        BIT(0)
430*4882a593Smuzhiyun 
431*4882a593Smuzhiyun #define HSIO_S1G_DFT_STATUS_PLL_BIST_NOT_DONE             BIT(7)
432*4882a593Smuzhiyun #define HSIO_S1G_DFT_STATUS_PLL_BIST_FAILED               BIT(6)
433*4882a593Smuzhiyun #define HSIO_S1G_DFT_STATUS_PLL_BIST_TIMEOUT_ERR          BIT(5)
434*4882a593Smuzhiyun #define HSIO_S1G_DFT_STATUS_BIST_ACTIVE                   BIT(3)
435*4882a593Smuzhiyun #define HSIO_S1G_DFT_STATUS_BIST_NOSYNC                   BIT(2)
436*4882a593Smuzhiyun #define HSIO_S1G_DFT_STATUS_BIST_COMPLETE_N               BIT(1)
437*4882a593Smuzhiyun #define HSIO_S1G_DFT_STATUS_BIST_ERROR                    BIT(0)
438*4882a593Smuzhiyun 
439*4882a593Smuzhiyun #define HSIO_S1G_MISC_STATUS_DES_100FX_PHASE_SEL          BIT(0)
440*4882a593Smuzhiyun 
441*4882a593Smuzhiyun #define HSIO_MCB_S1G_ADDR_CFG_SERDES1G_WR_ONE_SHOT        BIT(31)
442*4882a593Smuzhiyun #define HSIO_MCB_S1G_ADDR_CFG_SERDES1G_RD_ONE_SHOT        BIT(30)
443*4882a593Smuzhiyun #define HSIO_MCB_S1G_ADDR_CFG_SERDES1G_ADDR(x)            ((x) & GENMASK(8, 0))
444*4882a593Smuzhiyun #define HSIO_MCB_S1G_ADDR_CFG_SERDES1G_ADDR_M             GENMASK(8, 0)
445*4882a593Smuzhiyun 
446*4882a593Smuzhiyun #define HSIO_S6G_DIG_CFG_GP(x)                            (((x) << 16) & GENMASK(18, 16))
447*4882a593Smuzhiyun #define HSIO_S6G_DIG_CFG_GP_M                             GENMASK(18, 16)
448*4882a593Smuzhiyun #define HSIO_S6G_DIG_CFG_GP_X(x)                          (((x) & GENMASK(18, 16)) >> 16)
449*4882a593Smuzhiyun #define HSIO_S6G_DIG_CFG_TX_BIT_DOUBLING_MODE_ENA         BIT(7)
450*4882a593Smuzhiyun #define HSIO_S6G_DIG_CFG_SIGDET_TESTMODE                  BIT(6)
451*4882a593Smuzhiyun #define HSIO_S6G_DIG_CFG_SIGDET_AST(x)                    (((x) << 3) & GENMASK(5, 3))
452*4882a593Smuzhiyun #define HSIO_S6G_DIG_CFG_SIGDET_AST_M                     GENMASK(5, 3)
453*4882a593Smuzhiyun #define HSIO_S6G_DIG_CFG_SIGDET_AST_X(x)                  (((x) & GENMASK(5, 3)) >> 3)
454*4882a593Smuzhiyun #define HSIO_S6G_DIG_CFG_SIGDET_DST(x)                    ((x) & GENMASK(2, 0))
455*4882a593Smuzhiyun #define HSIO_S6G_DIG_CFG_SIGDET_DST_M                     GENMASK(2, 0)
456*4882a593Smuzhiyun 
457*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG0_LAZYBIT                         BIT(31)
458*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG0_INV_DIS                         BIT(23)
459*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG0_PRBS_SEL(x)                     (((x) << 20) & GENMASK(21, 20))
460*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG0_PRBS_SEL_M                      GENMASK(21, 20)
461*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG0_PRBS_SEL_X(x)                   (((x) & GENMASK(21, 20)) >> 20)
462*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG0_TEST_MODE(x)                    (((x) << 16) & GENMASK(18, 16))
463*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG0_TEST_MODE_M                     GENMASK(18, 16)
464*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG0_TEST_MODE_X(x)                  (((x) & GENMASK(18, 16)) >> 16)
465*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG0_RX_PHS_CORR_DIS                 BIT(4)
466*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG0_RX_PDSENS_ENA                   BIT(3)
467*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG0_RX_DFT_ENA                      BIT(2)
468*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG0_TX_DFT_ENA                      BIT(0)
469*4882a593Smuzhiyun 
470*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG1_TX_JITTER_AMPL(x)               (((x) << 8) & GENMASK(17, 8))
471*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG1_TX_JITTER_AMPL_M                GENMASK(17, 8)
472*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG1_TX_JITTER_AMPL_X(x)             (((x) & GENMASK(17, 8)) >> 8)
473*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG1_TX_STEP_FREQ(x)                 (((x) << 4) & GENMASK(7, 4))
474*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG1_TX_STEP_FREQ_M                  GENMASK(7, 4)
475*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG1_TX_STEP_FREQ_X(x)               (((x) & GENMASK(7, 4)) >> 4)
476*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG1_TX_JI_ENA                       BIT(3)
477*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG1_TX_WAVEFORM_SEL                 BIT(2)
478*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG1_TX_FREQOFF_DIR                  BIT(1)
479*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG1_TX_FREQOFF_ENA                  BIT(0)
480*4882a593Smuzhiyun 
481*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG2_RX_JITTER_AMPL(x)               (((x) << 8) & GENMASK(17, 8))
482*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG2_RX_JITTER_AMPL_M                GENMASK(17, 8)
483*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG2_RX_JITTER_AMPL_X(x)             (((x) & GENMASK(17, 8)) >> 8)
484*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG2_RX_STEP_FREQ(x)                 (((x) << 4) & GENMASK(7, 4))
485*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG2_RX_STEP_FREQ_M                  GENMASK(7, 4)
486*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG2_RX_STEP_FREQ_X(x)               (((x) & GENMASK(7, 4)) >> 4)
487*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG2_RX_JI_ENA                       BIT(3)
488*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG2_RX_WAVEFORM_SEL                 BIT(2)
489*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG2_RX_FREQOFF_DIR                  BIT(1)
490*4882a593Smuzhiyun #define HSIO_S6G_DFT_CFG2_RX_FREQOFF_ENA                  BIT(0)
491*4882a593Smuzhiyun 
492*4882a593Smuzhiyun #define HSIO_S6G_RC_PLL_BIST_CFG_PLL_BIST_ENA             BIT(20)
493*4882a593Smuzhiyun #define HSIO_S6G_RC_PLL_BIST_CFG_PLL_BIST_FBS_HIGH(x)     (((x) << 16) & GENMASK(19, 16))
494*4882a593Smuzhiyun #define HSIO_S6G_RC_PLL_BIST_CFG_PLL_BIST_FBS_HIGH_M      GENMASK(19, 16)
495*4882a593Smuzhiyun #define HSIO_S6G_RC_PLL_BIST_CFG_PLL_BIST_FBS_HIGH_X(x)   (((x) & GENMASK(19, 16)) >> 16)
496*4882a593Smuzhiyun #define HSIO_S6G_RC_PLL_BIST_CFG_PLL_BIST_HIGH(x)         (((x) << 8) & GENMASK(15, 8))
497*4882a593Smuzhiyun #define HSIO_S6G_RC_PLL_BIST_CFG_PLL_BIST_HIGH_M          GENMASK(15, 8)
498*4882a593Smuzhiyun #define HSIO_S6G_RC_PLL_BIST_CFG_PLL_BIST_HIGH_X(x)       (((x) & GENMASK(15, 8)) >> 8)
499*4882a593Smuzhiyun #define HSIO_S6G_RC_PLL_BIST_CFG_PLL_BIST_LOW(x)          ((x) & GENMASK(7, 0))
500*4882a593Smuzhiyun #define HSIO_S6G_RC_PLL_BIST_CFG_PLL_BIST_LOW_M           GENMASK(7, 0)
501*4882a593Smuzhiyun 
502*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_SEL_RECO_CLK(x)                 (((x) << 13) & GENMASK(14, 13))
503*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_SEL_RECO_CLK_M                  GENMASK(14, 13)
504*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_SEL_RECO_CLK_X(x)               (((x) & GENMASK(14, 13)) >> 13)
505*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_DES_100FX_KICK_MODE(x)          (((x) << 11) & GENMASK(12, 11))
506*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_DES_100FX_KICK_MODE_M           GENMASK(12, 11)
507*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_DES_100FX_KICK_MODE_X(x)        (((x) & GENMASK(12, 11)) >> 11)
508*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_DES_100FX_CPMD_SWAP             BIT(10)
509*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_DES_100FX_CPMD_MODE             BIT(9)
510*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_DES_100FX_CPMD_ENA              BIT(8)
511*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_RX_BUS_FLIP_ENA                 BIT(7)
512*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_TX_BUS_FLIP_ENA                 BIT(6)
513*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_RX_LPI_MODE_ENA                 BIT(5)
514*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_TX_LPI_MODE_ENA                 BIT(4)
515*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_RX_DATA_INV_ENA                 BIT(3)
516*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_TX_DATA_INV_ENA                 BIT(2)
517*4882a593Smuzhiyun #define HSIO_S6G_MISC_CFG_LANE_RST                        BIT(0)
518*4882a593Smuzhiyun 
519*4882a593Smuzhiyun #define HSIO_S6G_OB_ANEG_CFG_AN_OB_POST0(x)               (((x) << 23) & GENMASK(28, 23))
520*4882a593Smuzhiyun #define HSIO_S6G_OB_ANEG_CFG_AN_OB_POST0_M                GENMASK(28, 23)
521*4882a593Smuzhiyun #define HSIO_S6G_OB_ANEG_CFG_AN_OB_POST0_X(x)             (((x) & GENMASK(28, 23)) >> 23)
522*4882a593Smuzhiyun #define HSIO_S6G_OB_ANEG_CFG_AN_OB_POST1(x)               (((x) << 18) & GENMASK(22, 18))
523*4882a593Smuzhiyun #define HSIO_S6G_OB_ANEG_CFG_AN_OB_POST1_M                GENMASK(22, 18)
524*4882a593Smuzhiyun #define HSIO_S6G_OB_ANEG_CFG_AN_OB_POST1_X(x)             (((x) & GENMASK(22, 18)) >> 18)
525*4882a593Smuzhiyun #define HSIO_S6G_OB_ANEG_CFG_AN_OB_PREC(x)                (((x) << 13) & GENMASK(17, 13))
526*4882a593Smuzhiyun #define HSIO_S6G_OB_ANEG_CFG_AN_OB_PREC_M                 GENMASK(17, 13)
527*4882a593Smuzhiyun #define HSIO_S6G_OB_ANEG_CFG_AN_OB_PREC_X(x)              (((x) & GENMASK(17, 13)) >> 13)
528*4882a593Smuzhiyun #define HSIO_S6G_OB_ANEG_CFG_AN_OB_ENA_CAS(x)             (((x) << 6) & GENMASK(8, 6))
529*4882a593Smuzhiyun #define HSIO_S6G_OB_ANEG_CFG_AN_OB_ENA_CAS_M              GENMASK(8, 6)
530*4882a593Smuzhiyun #define HSIO_S6G_OB_ANEG_CFG_AN_OB_ENA_CAS_X(x)           (((x) & GENMASK(8, 6)) >> 6)
531*4882a593Smuzhiyun #define HSIO_S6G_OB_ANEG_CFG_AN_OB_LEV(x)                 ((x) & GENMASK(5, 0))
532*4882a593Smuzhiyun #define HSIO_S6G_OB_ANEG_CFG_AN_OB_LEV_M                  GENMASK(5, 0)
533*4882a593Smuzhiyun 
534*4882a593Smuzhiyun #define HSIO_S6G_DFT_STATUS_PRBS_SYNC_STAT                BIT(8)
535*4882a593Smuzhiyun #define HSIO_S6G_DFT_STATUS_PLL_BIST_NOT_DONE             BIT(7)
536*4882a593Smuzhiyun #define HSIO_S6G_DFT_STATUS_PLL_BIST_FAILED               BIT(6)
537*4882a593Smuzhiyun #define HSIO_S6G_DFT_STATUS_PLL_BIST_TIMEOUT_ERR          BIT(5)
538*4882a593Smuzhiyun #define HSIO_S6G_DFT_STATUS_BIST_ACTIVE                   BIT(3)
539*4882a593Smuzhiyun #define HSIO_S6G_DFT_STATUS_BIST_NOSYNC                   BIT(2)
540*4882a593Smuzhiyun #define HSIO_S6G_DFT_STATUS_BIST_COMPLETE_N               BIT(1)
541*4882a593Smuzhiyun #define HSIO_S6G_DFT_STATUS_BIST_ERROR                    BIT(0)
542*4882a593Smuzhiyun 
543*4882a593Smuzhiyun #define HSIO_S6G_MISC_STATUS_DES_100FX_PHASE_SEL          BIT(0)
544*4882a593Smuzhiyun 
545*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_PHS_CTRL(x)                  (((x) << 13) & GENMASK(16, 13))
546*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_PHS_CTRL_M                   GENMASK(16, 13)
547*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_PHS_CTRL_X(x)                (((x) & GENMASK(16, 13)) >> 13)
548*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_MBTR_CTRL(x)                 (((x) << 10) & GENMASK(12, 10))
549*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_MBTR_CTRL_M                  GENMASK(12, 10)
550*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_MBTR_CTRL_X(x)               (((x) & GENMASK(12, 10)) >> 10)
551*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_CPMD_SEL(x)                  (((x) << 8) & GENMASK(9, 8))
552*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_CPMD_SEL_M                   GENMASK(9, 8)
553*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_CPMD_SEL_X(x)                (((x) & GENMASK(9, 8)) >> 8)
554*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_BW_HYST(x)                   (((x) << 5) & GENMASK(7, 5))
555*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_BW_HYST_M                    GENMASK(7, 5)
556*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_BW_HYST_X(x)                 (((x) & GENMASK(7, 5)) >> 5)
557*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_SWAP_HYST                    BIT(4)
558*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_BW_ANA(x)                    (((x) << 1) & GENMASK(3, 1))
559*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_BW_ANA_M                     GENMASK(3, 1)
560*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_BW_ANA_X(x)                  (((x) & GENMASK(3, 1)) >> 1)
561*4882a593Smuzhiyun #define HSIO_S6G_DES_CFG_DES_SWAP_ANA                     BIT(0)
562*4882a593Smuzhiyun 
563*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_SOFSI(x)                       (((x) << 29) & GENMASK(30, 29))
564*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_SOFSI_M                        GENMASK(30, 29)
565*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_SOFSI_X(x)                     (((x) & GENMASK(30, 29)) >> 29)
566*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_VBULK_SEL                      BIT(28)
567*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_RTRM_ADJ(x)                    (((x) << 24) & GENMASK(27, 24))
568*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_RTRM_ADJ_M                     GENMASK(27, 24)
569*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_RTRM_ADJ_X(x)                  (((x) & GENMASK(27, 24)) >> 24)
570*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_ICML_ADJ(x)                    (((x) << 20) & GENMASK(23, 20))
571*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_ICML_ADJ_M                     GENMASK(23, 20)
572*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_ICML_ADJ_X(x)                  (((x) & GENMASK(23, 20)) >> 20)
573*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_TERM_MODE_SEL(x)               (((x) << 18) & GENMASK(19, 18))
574*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_TERM_MODE_SEL_M                GENMASK(19, 18)
575*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_TERM_MODE_SEL_X(x)             (((x) & GENMASK(19, 18)) >> 18)
576*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_SIG_DET_CLK_SEL(x)             (((x) << 15) & GENMASK(17, 15))
577*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_SIG_DET_CLK_SEL_M              GENMASK(17, 15)
578*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_SIG_DET_CLK_SEL_X(x)           (((x) & GENMASK(17, 15)) >> 15)
579*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_REG_PAT_SEL_HP(x)              (((x) << 13) & GENMASK(14, 13))
580*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_REG_PAT_SEL_HP_M               GENMASK(14, 13)
581*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_REG_PAT_SEL_HP_X(x)            (((x) & GENMASK(14, 13)) >> 13)
582*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_REG_PAT_SEL_MID(x)             (((x) << 11) & GENMASK(12, 11))
583*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_REG_PAT_SEL_MID_M              GENMASK(12, 11)
584*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_REG_PAT_SEL_MID_X(x)           (((x) & GENMASK(12, 11)) >> 11)
585*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_REG_PAT_SEL_LP(x)              (((x) << 9) & GENMASK(10, 9))
586*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_REG_PAT_SEL_LP_M               GENMASK(10, 9)
587*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_REG_PAT_SEL_LP_X(x)            (((x) & GENMASK(10, 9)) >> 9)
588*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_REG_PAT_SEL_OFFSET(x)          (((x) << 7) & GENMASK(8, 7))
589*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_REG_PAT_SEL_OFFSET_M           GENMASK(8, 7)
590*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_REG_PAT_SEL_OFFSET_X(x)        (((x) & GENMASK(8, 7)) >> 7)
591*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_ANA_TEST_ENA                   BIT(6)
592*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_SIG_DET_ENA                    BIT(5)
593*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_CONCUR                         BIT(4)
594*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_CAL_ENA                        BIT(3)
595*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_SAM_ENA                        BIT(2)
596*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_EQZ_ENA                        BIT(1)
597*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG_IB_REG_ENA                        BIT(0)
598*4882a593Smuzhiyun 
599*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_TJTAG(x)                      (((x) << 17) & GENMASK(21, 17))
600*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_TJTAG_M                       GENMASK(21, 17)
601*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_TJTAG_X(x)                    (((x) & GENMASK(21, 17)) >> 17)
602*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_TSDET(x)                      (((x) << 12) & GENMASK(16, 12))
603*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_TSDET_M                       GENMASK(16, 12)
604*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_TSDET_X(x)                    (((x) & GENMASK(16, 12)) >> 12)
605*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_SCALY(x)                      (((x) << 8) & GENMASK(11, 8))
606*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_SCALY_M                       GENMASK(11, 8)
607*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_SCALY_X(x)                    (((x) & GENMASK(11, 8)) >> 8)
608*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_FILT_HP                       BIT(7)
609*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_FILT_MID                      BIT(6)
610*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_FILT_LP                       BIT(5)
611*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_FILT_OFFSET                   BIT(4)
612*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_FRC_HP                        BIT(3)
613*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_FRC_MID                       BIT(2)
614*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_FRC_LP                        BIT(1)
615*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG1_IB_FRC_OFFSET                    BIT(0)
616*4882a593Smuzhiyun 
617*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_TINFV(x)                      (((x) << 27) & GENMASK(29, 27))
618*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_TINFV_M                       GENMASK(29, 27)
619*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_TINFV_X(x)                    (((x) & GENMASK(29, 27)) >> 27)
620*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_OINFI(x)                      (((x) << 22) & GENMASK(26, 22))
621*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_OINFI_M                       GENMASK(26, 22)
622*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_OINFI_X(x)                    (((x) & GENMASK(26, 22)) >> 22)
623*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_TAUX(x)                       (((x) << 19) & GENMASK(21, 19))
624*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_TAUX_M                        GENMASK(21, 19)
625*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_TAUX_X(x)                     (((x) & GENMASK(21, 19)) >> 19)
626*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_OINFS(x)                      (((x) << 16) & GENMASK(18, 16))
627*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_OINFS_M                       GENMASK(18, 16)
628*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_OINFS_X(x)                    (((x) & GENMASK(18, 16)) >> 16)
629*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_OCALS(x)                      (((x) << 10) & GENMASK(15, 10))
630*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_OCALS_M                       GENMASK(15, 10)
631*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_OCALS_X(x)                    (((x) & GENMASK(15, 10)) >> 10)
632*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_TCALV(x)                      (((x) << 5) & GENMASK(9, 5))
633*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_TCALV_M                       GENMASK(9, 5)
634*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_TCALV_X(x)                    (((x) & GENMASK(9, 5)) >> 5)
635*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_UMAX(x)                       (((x) << 3) & GENMASK(4, 3))
636*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_UMAX_M                        GENMASK(4, 3)
637*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_UMAX_X(x)                     (((x) & GENMASK(4, 3)) >> 3)
638*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_UREG(x)                       ((x) & GENMASK(2, 0))
639*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG2_IB_UREG_M                        GENMASK(2, 0)
640*4882a593Smuzhiyun 
641*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG3_IB_INI_HP(x)                     (((x) << 18) & GENMASK(23, 18))
642*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG3_IB_INI_HP_M                      GENMASK(23, 18)
643*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG3_IB_INI_HP_X(x)                   (((x) & GENMASK(23, 18)) >> 18)
644*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG3_IB_INI_MID(x)                    (((x) << 12) & GENMASK(17, 12))
645*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG3_IB_INI_MID_M                     GENMASK(17, 12)
646*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG3_IB_INI_MID_X(x)                  (((x) & GENMASK(17, 12)) >> 12)
647*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG3_IB_INI_LP(x)                     (((x) << 6) & GENMASK(11, 6))
648*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG3_IB_INI_LP_M                      GENMASK(11, 6)
649*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG3_IB_INI_LP_X(x)                   (((x) & GENMASK(11, 6)) >> 6)
650*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG3_IB_INI_OFFSET(x)                 ((x) & GENMASK(5, 0))
651*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG3_IB_INI_OFFSET_M                  GENMASK(5, 0)
652*4882a593Smuzhiyun 
653*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG4_IB_MAX_HP(x)                     (((x) << 18) & GENMASK(23, 18))
654*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG4_IB_MAX_HP_M                      GENMASK(23, 18)
655*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG4_IB_MAX_HP_X(x)                   (((x) & GENMASK(23, 18)) >> 18)
656*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG4_IB_MAX_MID(x)                    (((x) << 12) & GENMASK(17, 12))
657*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG4_IB_MAX_MID_M                     GENMASK(17, 12)
658*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG4_IB_MAX_MID_X(x)                  (((x) & GENMASK(17, 12)) >> 12)
659*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG4_IB_MAX_LP(x)                     (((x) << 6) & GENMASK(11, 6))
660*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG4_IB_MAX_LP_M                      GENMASK(11, 6)
661*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG4_IB_MAX_LP_X(x)                   (((x) & GENMASK(11, 6)) >> 6)
662*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG4_IB_MAX_OFFSET(x)                 ((x) & GENMASK(5, 0))
663*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG4_IB_MAX_OFFSET_M                  GENMASK(5, 0)
664*4882a593Smuzhiyun 
665*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG5_IB_MIN_HP(x)                     (((x) << 18) & GENMASK(23, 18))
666*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG5_IB_MIN_HP_M                      GENMASK(23, 18)
667*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG5_IB_MIN_HP_X(x)                   (((x) & GENMASK(23, 18)) >> 18)
668*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG5_IB_MIN_MID(x)                    (((x) << 12) & GENMASK(17, 12))
669*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG5_IB_MIN_MID_M                     GENMASK(17, 12)
670*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG5_IB_MIN_MID_X(x)                  (((x) & GENMASK(17, 12)) >> 12)
671*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG5_IB_MIN_LP(x)                     (((x) << 6) & GENMASK(11, 6))
672*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG5_IB_MIN_LP_M                      GENMASK(11, 6)
673*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG5_IB_MIN_LP_X(x)                   (((x) & GENMASK(11, 6)) >> 6)
674*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG5_IB_MIN_OFFSET(x)                 ((x) & GENMASK(5, 0))
675*4882a593Smuzhiyun #define HSIO_S6G_IB_CFG5_IB_MIN_OFFSET_M                  GENMASK(5, 0)
676*4882a593Smuzhiyun 
677*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_IDLE                           BIT(31)
678*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_ENA1V_MODE                     BIT(30)
679*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_POL                            BIT(29)
680*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_POST0(x)                       (((x) << 23) & GENMASK(28, 23))
681*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_POST0_M                        GENMASK(28, 23)
682*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_POST0_X(x)                     (((x) & GENMASK(28, 23)) >> 23)
683*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_PREC(x)                        (((x) << 18) & GENMASK(22, 18))
684*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_PREC_M                         GENMASK(22, 18)
685*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_PREC_X(x)                      (((x) & GENMASK(22, 18)) >> 18)
686*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_R_ADJ_MUX                      BIT(17)
687*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_R_ADJ_PDR                      BIT(16)
688*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_POST1(x)                       (((x) << 11) & GENMASK(15, 11))
689*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_POST1_M                        GENMASK(15, 11)
690*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_POST1_X(x)                     (((x) & GENMASK(15, 11)) >> 11)
691*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_R_COR                          BIT(10)
692*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_SEL_RCTRL                      BIT(9)
693*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_SR_H                           BIT(8)
694*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_SR(x)                          (((x) << 4) & GENMASK(7, 4))
695*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_SR_M                           GENMASK(7, 4)
696*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_SR_X(x)                        (((x) & GENMASK(7, 4)) >> 4)
697*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_RESISTOR_CTRL(x)               ((x) & GENMASK(3, 0))
698*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG_OB_RESISTOR_CTRL_M                GENMASK(3, 0)
699*4882a593Smuzhiyun 
700*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG1_OB_ENA_CAS(x)                    (((x) << 6) & GENMASK(8, 6))
701*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG1_OB_ENA_CAS_M                     GENMASK(8, 6)
702*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG1_OB_ENA_CAS_X(x)                  (((x) & GENMASK(8, 6)) >> 6)
703*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG1_OB_LEV(x)                        ((x) & GENMASK(5, 0))
704*4882a593Smuzhiyun #define HSIO_S6G_OB_CFG1_OB_LEV_M                         GENMASK(5, 0)
705*4882a593Smuzhiyun 
706*4882a593Smuzhiyun #define HSIO_S6G_SER_CFG_SER_4TAP_ENA                     BIT(8)
707*4882a593Smuzhiyun #define HSIO_S6G_SER_CFG_SER_CPMD_SEL                     BIT(7)
708*4882a593Smuzhiyun #define HSIO_S6G_SER_CFG_SER_SWAP_CPMD                    BIT(6)
709*4882a593Smuzhiyun #define HSIO_S6G_SER_CFG_SER_ALISEL(x)                    (((x) << 4) & GENMASK(5, 4))
710*4882a593Smuzhiyun #define HSIO_S6G_SER_CFG_SER_ALISEL_M                     GENMASK(5, 4)
711*4882a593Smuzhiyun #define HSIO_S6G_SER_CFG_SER_ALISEL_X(x)                  (((x) & GENMASK(5, 4)) >> 4)
712*4882a593Smuzhiyun #define HSIO_S6G_SER_CFG_SER_ENHYS                        BIT(3)
713*4882a593Smuzhiyun #define HSIO_S6G_SER_CFG_SER_BIG_WIN                      BIT(2)
714*4882a593Smuzhiyun #define HSIO_S6G_SER_CFG_SER_EN_WIN                       BIT(1)
715*4882a593Smuzhiyun #define HSIO_S6G_SER_CFG_SER_ENALI                        BIT(0)
716*4882a593Smuzhiyun 
717*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_SYS_RST                       BIT(17)
718*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_SE_DIV2_ENA                   BIT(16)
719*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_SE_AUTO_SQUELCH_ENA           BIT(15)
720*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_ENA_LANE                      BIT(14)
721*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_PWD_RX                        BIT(13)
722*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_PWD_TX                        BIT(12)
723*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_LANE_CTRL(x)                  (((x) << 9) & GENMASK(11, 9))
724*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_LANE_CTRL_M                   GENMASK(11, 9)
725*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_LANE_CTRL_X(x)                (((x) & GENMASK(11, 9)) >> 9)
726*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_ENA_DIRECT                    BIT(8)
727*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_ENA_ELOOP                     BIT(7)
728*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_ENA_FLOOP                     BIT(6)
729*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_ENA_ILOOP                     BIT(5)
730*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_ENA_PLOOP                     BIT(4)
731*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_HRATE                         BIT(3)
732*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_QRATE                         BIT(2)
733*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_IF_MODE(x)                    ((x) & GENMASK(1, 0))
734*4882a593Smuzhiyun #define HSIO_S6G_COMMON_CFG_IF_MODE_M                     GENMASK(1, 0)
735*4882a593Smuzhiyun 
736*4882a593Smuzhiyun #define HSIO_S6G_PLL_CFG_PLL_ENA_OFFS(x)                  (((x) << 16) & GENMASK(17, 16))
737*4882a593Smuzhiyun #define HSIO_S6G_PLL_CFG_PLL_ENA_OFFS_M                   GENMASK(17, 16)
738*4882a593Smuzhiyun #define HSIO_S6G_PLL_CFG_PLL_ENA_OFFS_X(x)                (((x) & GENMASK(17, 16)) >> 16)
739*4882a593Smuzhiyun #define HSIO_S6G_PLL_CFG_PLL_DIV4                         BIT(15)
740*4882a593Smuzhiyun #define HSIO_S6G_PLL_CFG_PLL_ENA_ROT                      BIT(14)
741*4882a593Smuzhiyun #define HSIO_S6G_PLL_CFG_PLL_FSM_CTRL_DATA(x)             (((x) << 6) & GENMASK(13, 6))
742*4882a593Smuzhiyun #define HSIO_S6G_PLL_CFG_PLL_FSM_CTRL_DATA_M              GENMASK(13, 6)
743*4882a593Smuzhiyun #define HSIO_S6G_PLL_CFG_PLL_FSM_CTRL_DATA_X(x)           (((x) & GENMASK(13, 6)) >> 6)
744*4882a593Smuzhiyun #define HSIO_S6G_PLL_CFG_PLL_FSM_ENA                      BIT(5)
745*4882a593Smuzhiyun #define HSIO_S6G_PLL_CFG_PLL_FSM_FORCE_SET_ENA            BIT(4)
746*4882a593Smuzhiyun #define HSIO_S6G_PLL_CFG_PLL_FSM_OOR_RECAL_ENA            BIT(3)
747*4882a593Smuzhiyun #define HSIO_S6G_PLL_CFG_PLL_RB_DATA_SEL                  BIT(2)
748*4882a593Smuzhiyun #define HSIO_S6G_PLL_CFG_PLL_ROT_DIR                      BIT(1)
749*4882a593Smuzhiyun #define HSIO_S6G_PLL_CFG_PLL_ROT_FRQ                      BIT(0)
750*4882a593Smuzhiyun 
751*4882a593Smuzhiyun #define HSIO_S6G_ACJTAG_CFG_ACJTAG_INIT_DATA_N            BIT(5)
752*4882a593Smuzhiyun #define HSIO_S6G_ACJTAG_CFG_ACJTAG_INIT_DATA_P            BIT(4)
753*4882a593Smuzhiyun #define HSIO_S6G_ACJTAG_CFG_ACJTAG_INIT_CLK               BIT(3)
754*4882a593Smuzhiyun #define HSIO_S6G_ACJTAG_CFG_OB_DIRECT                     BIT(2)
755*4882a593Smuzhiyun #define HSIO_S6G_ACJTAG_CFG_ACJTAG_ENA                    BIT(1)
756*4882a593Smuzhiyun #define HSIO_S6G_ACJTAG_CFG_JTAG_CTRL_ENA                 BIT(0)
757*4882a593Smuzhiyun 
758*4882a593Smuzhiyun #define HSIO_S6G_GP_CFG_GP_MSB(x)                         (((x) << 16) & GENMASK(31, 16))
759*4882a593Smuzhiyun #define HSIO_S6G_GP_CFG_GP_MSB_M                          GENMASK(31, 16)
760*4882a593Smuzhiyun #define HSIO_S6G_GP_CFG_GP_MSB_X(x)                       (((x) & GENMASK(31, 16)) >> 16)
761*4882a593Smuzhiyun #define HSIO_S6G_GP_CFG_GP_LSB(x)                         ((x) & GENMASK(15, 0))
762*4882a593Smuzhiyun #define HSIO_S6G_GP_CFG_GP_LSB_M                          GENMASK(15, 0)
763*4882a593Smuzhiyun 
764*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS0_IB_CAL_DONE                   BIT(8)
765*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS0_IB_HP_GAIN_ACT                BIT(7)
766*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS0_IB_MID_GAIN_ACT               BIT(6)
767*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS0_IB_LP_GAIN_ACT                BIT(5)
768*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS0_IB_OFFSET_ACT                 BIT(4)
769*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS0_IB_OFFSET_VLD                 BIT(3)
770*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS0_IB_OFFSET_ERR                 BIT(2)
771*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS0_IB_OFFSDIR                    BIT(1)
772*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS0_IB_SIG_DET                    BIT(0)
773*4882a593Smuzhiyun 
774*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS1_IB_HP_GAIN_STAT(x)            (((x) << 18) & GENMASK(23, 18))
775*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS1_IB_HP_GAIN_STAT_M             GENMASK(23, 18)
776*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS1_IB_HP_GAIN_STAT_X(x)          (((x) & GENMASK(23, 18)) >> 18)
777*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS1_IB_MID_GAIN_STAT(x)           (((x) << 12) & GENMASK(17, 12))
778*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS1_IB_MID_GAIN_STAT_M            GENMASK(17, 12)
779*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS1_IB_MID_GAIN_STAT_X(x)         (((x) & GENMASK(17, 12)) >> 12)
780*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS1_IB_LP_GAIN_STAT(x)            (((x) << 6) & GENMASK(11, 6))
781*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS1_IB_LP_GAIN_STAT_M             GENMASK(11, 6)
782*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS1_IB_LP_GAIN_STAT_X(x)          (((x) & GENMASK(11, 6)) >> 6)
783*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS1_IB_OFFSET_STAT(x)             ((x) & GENMASK(5, 0))
784*4882a593Smuzhiyun #define HSIO_S6G_IB_STATUS1_IB_OFFSET_STAT_M              GENMASK(5, 0)
785*4882a593Smuzhiyun 
786*4882a593Smuzhiyun #define HSIO_S6G_ACJTAG_STATUS_ACJTAG_CAPT_DATA_N         BIT(2)
787*4882a593Smuzhiyun #define HSIO_S6G_ACJTAG_STATUS_ACJTAG_CAPT_DATA_P         BIT(1)
788*4882a593Smuzhiyun #define HSIO_S6G_ACJTAG_STATUS_IB_DIRECT                  BIT(0)
789*4882a593Smuzhiyun 
790*4882a593Smuzhiyun #define HSIO_S6G_PLL_STATUS_PLL_CAL_NOT_DONE              BIT(10)
791*4882a593Smuzhiyun #define HSIO_S6G_PLL_STATUS_PLL_CAL_ERR                   BIT(9)
792*4882a593Smuzhiyun #define HSIO_S6G_PLL_STATUS_PLL_OUT_OF_RANGE_ERR          BIT(8)
793*4882a593Smuzhiyun #define HSIO_S6G_PLL_STATUS_PLL_RB_DATA(x)                ((x) & GENMASK(7, 0))
794*4882a593Smuzhiyun #define HSIO_S6G_PLL_STATUS_PLL_RB_DATA_M                 GENMASK(7, 0)
795*4882a593Smuzhiyun 
796*4882a593Smuzhiyun #define HSIO_S6G_REVID_SERDES_REV(x)                      (((x) << 26) & GENMASK(31, 26))
797*4882a593Smuzhiyun #define HSIO_S6G_REVID_SERDES_REV_M                       GENMASK(31, 26)
798*4882a593Smuzhiyun #define HSIO_S6G_REVID_SERDES_REV_X(x)                    (((x) & GENMASK(31, 26)) >> 26)
799*4882a593Smuzhiyun #define HSIO_S6G_REVID_RCPLL_REV(x)                       (((x) << 21) & GENMASK(25, 21))
800*4882a593Smuzhiyun #define HSIO_S6G_REVID_RCPLL_REV_M                        GENMASK(25, 21)
801*4882a593Smuzhiyun #define HSIO_S6G_REVID_RCPLL_REV_X(x)                     (((x) & GENMASK(25, 21)) >> 21)
802*4882a593Smuzhiyun #define HSIO_S6G_REVID_SER_REV(x)                         (((x) << 16) & GENMASK(20, 16))
803*4882a593Smuzhiyun #define HSIO_S6G_REVID_SER_REV_M                          GENMASK(20, 16)
804*4882a593Smuzhiyun #define HSIO_S6G_REVID_SER_REV_X(x)                       (((x) & GENMASK(20, 16)) >> 16)
805*4882a593Smuzhiyun #define HSIO_S6G_REVID_DES_REV(x)                         (((x) << 10) & GENMASK(15, 10))
806*4882a593Smuzhiyun #define HSIO_S6G_REVID_DES_REV_M                          GENMASK(15, 10)
807*4882a593Smuzhiyun #define HSIO_S6G_REVID_DES_REV_X(x)                       (((x) & GENMASK(15, 10)) >> 10)
808*4882a593Smuzhiyun #define HSIO_S6G_REVID_OB_REV(x)                          (((x) << 5) & GENMASK(9, 5))
809*4882a593Smuzhiyun #define HSIO_S6G_REVID_OB_REV_M                           GENMASK(9, 5)
810*4882a593Smuzhiyun #define HSIO_S6G_REVID_OB_REV_X(x)                        (((x) & GENMASK(9, 5)) >> 5)
811*4882a593Smuzhiyun #define HSIO_S6G_REVID_IB_REV(x)                          ((x) & GENMASK(4, 0))
812*4882a593Smuzhiyun #define HSIO_S6G_REVID_IB_REV_M                           GENMASK(4, 0)
813*4882a593Smuzhiyun 
814*4882a593Smuzhiyun #define HSIO_MCB_S6G_ADDR_CFG_SERDES6G_WR_ONE_SHOT        BIT(31)
815*4882a593Smuzhiyun #define HSIO_MCB_S6G_ADDR_CFG_SERDES6G_RD_ONE_SHOT        BIT(30)
816*4882a593Smuzhiyun #define HSIO_MCB_S6G_ADDR_CFG_SERDES6G_ADDR(x)            ((x) & GENMASK(24, 0))
817*4882a593Smuzhiyun #define HSIO_MCB_S6G_ADDR_CFG_SERDES6G_ADDR_M             GENMASK(24, 0)
818*4882a593Smuzhiyun 
819*4882a593Smuzhiyun #define HSIO_HW_CFG_DEV2G5_10_MODE                        BIT(6)
820*4882a593Smuzhiyun #define HSIO_HW_CFG_DEV1G_9_MODE                          BIT(5)
821*4882a593Smuzhiyun #define HSIO_HW_CFG_DEV1G_6_MODE                          BIT(4)
822*4882a593Smuzhiyun #define HSIO_HW_CFG_DEV1G_5_MODE                          BIT(3)
823*4882a593Smuzhiyun #define HSIO_HW_CFG_DEV1G_4_MODE                          BIT(2)
824*4882a593Smuzhiyun #define HSIO_HW_CFG_PCIE_ENA                              BIT(1)
825*4882a593Smuzhiyun #define HSIO_HW_CFG_QSGMII_ENA                            BIT(0)
826*4882a593Smuzhiyun 
827*4882a593Smuzhiyun #define HSIO_HW_QSGMII_CFG_SHYST_DIS                      BIT(3)
828*4882a593Smuzhiyun #define HSIO_HW_QSGMII_CFG_E_DET_ENA                      BIT(2)
829*4882a593Smuzhiyun #define HSIO_HW_QSGMII_CFG_USE_I1_ENA                     BIT(1)
830*4882a593Smuzhiyun #define HSIO_HW_QSGMII_CFG_FLIP_LANES                     BIT(0)
831*4882a593Smuzhiyun 
832*4882a593Smuzhiyun #define HSIO_HW_QSGMII_STAT_DELAY_VAR_X200PS(x)           (((x) << 1) & GENMASK(6, 1))
833*4882a593Smuzhiyun #define HSIO_HW_QSGMII_STAT_DELAY_VAR_X200PS_M            GENMASK(6, 1)
834*4882a593Smuzhiyun #define HSIO_HW_QSGMII_STAT_DELAY_VAR_X200PS_X(x)         (((x) & GENMASK(6, 1)) >> 1)
835*4882a593Smuzhiyun #define HSIO_HW_QSGMII_STAT_SYNC                          BIT(0)
836*4882a593Smuzhiyun 
837*4882a593Smuzhiyun #define HSIO_CLK_CFG_CLKDIV_PHY(x)                        (((x) << 1) & GENMASK(8, 1))
838*4882a593Smuzhiyun #define HSIO_CLK_CFG_CLKDIV_PHY_M                         GENMASK(8, 1)
839*4882a593Smuzhiyun #define HSIO_CLK_CFG_CLKDIV_PHY_X(x)                      (((x) & GENMASK(8, 1)) >> 1)
840*4882a593Smuzhiyun #define HSIO_CLK_CFG_CLKDIV_PHY_DIS                       BIT(0)
841*4882a593Smuzhiyun 
842*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_CTRL_FORCE_TEMP_RD               BIT(5)
843*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_CTRL_FORCE_RUN                   BIT(4)
844*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_CTRL_FORCE_NO_RST                BIT(3)
845*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_CTRL_FORCE_POWER_UP              BIT(2)
846*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_CTRL_FORCE_CLK                   BIT(1)
847*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_CTRL_SAMPLE_ENA                  BIT(0)
848*4882a593Smuzhiyun 
849*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_CFG_RUN_WID(x)                   (((x) << 8) & GENMASK(15, 8))
850*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_CFG_RUN_WID_M                    GENMASK(15, 8)
851*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_CFG_RUN_WID_X(x)                 (((x) & GENMASK(15, 8)) >> 8)
852*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_CFG_SAMPLE_PER(x)                ((x) & GENMASK(7, 0))
853*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_CFG_SAMPLE_PER_M                 GENMASK(7, 0)
854*4882a593Smuzhiyun 
855*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_STAT_TEMP_VALID                  BIT(8)
856*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_STAT_TEMP(x)                     ((x) & GENMASK(7, 0))
857*4882a593Smuzhiyun #define HSIO_TEMP_SENSOR_STAT_TEMP_M                      GENMASK(7, 0)
858*4882a593Smuzhiyun 
859*4882a593Smuzhiyun #endif
860