blob: f045a315d612b8192768c2eafa86df9786cc694f [file] [log] [blame]
xjb04a4022021-11-25 15:01:52 +08001// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright (c) 2015 MediaTek Inc.
4 * Author: Chunfeng Yun <chunfeng.yun@mediatek.com>
5 *
6 */
7
8#ifndef __MTK_PHY_FPGA__H
9#define __MTK_PHY_FPGA__H
10
11//#define CONFIG_U3_PHY_GPIO_SUPPORT
12
13///////////////////////////////////////////////////////////////////////////////
14
15#define SSUSB_IPPC_LEN 0x100
16
17#define PHY_TEST_CHIP_A60931 0xa60931a
18#define PHY_TEST_CHIP_A60810 0xa60810a
19/* some test chip got default name without changed to correct one*/
20#define PHY_TEST_CHIP_NONAME 0xd60802a
21
22#define PHY_TRUE 1
23#define PHY_FALSE 0
24
25typedef u32 u3phy_addr_t;
26
27///////////////////////////////////////////////////////////////////////////////
28
29#ifdef CONFIG_U3_PHY_GPIO_SUPPORT
30#define SSUSB_FPGA_I2C_PORT_SIZE 0x8
31#define SSUSB_FPGA_I2C_PORT_OFFSET(x) \
32 (0xd0 + (SSUSB_FPGA_I2C_PORT_SIZE) * (x))
33
34#define SSUSB_PHY_VERSION_BANK 0x20
35#define SSUSB_PHY_VERSION_ADDR 0xe4
36
37#define SSUSB_FPGA_I2C_OUT 0x0
38#define SSUSB_FPGA_I2C_SDA_OUT BIT(0)
39#define SSUSB_FPGA_I2C_SDA_OEN BIT(1)
40#define SSUSB_FPGA_I2C_SCL_OUT BIT(2)
41#define SSUSB_FPGA_I2C_SCL_OEN BIT(3)
42
43#define SSUSB_FPGA_I2C_IN 0x4
44#define SSUSB_FPGA_I2C_SDA_IN BIT(0)
45#define SSUSB_FPGA_I2C_SCL_IN BIT(1)
46
47#define I2C_DELAY 1
48
49enum i2c_dir {
50 I2C_INPUT = 0,
51 I2C_OUTPUT,
52};
53
54enum i2c_pin {
55 I2C_SDA = 0,
56 I2C_SCL,
57};
58#else
59void __iomem *i2c_base;
60u32 i2c_physical_base;
61
62#define U3_PHY_I2C_DEV 0x60
63#define U3_PHY_PAGE 0xff
64
65#define REG_I2C_START_BIT 0x1
66#define I2C_READ_BIT 0x1
67
68#define PHY_I2C_BASE (i2c_base)
69
70/* "volatile" type class should not be used, see volatile-considered-harmful.txt */
71#define REG_I2C_DATA_PORT (*((volatile unsigned short int *) (PHY_I2C_BASE + 0x00)))
72#define REG_I2C_SLAVE_ADDR (*((volatile unsigned short int *) (PHY_I2C_BASE + 0x04)))
73#define REG_I2C_TRANSFER_LEN (*((volatile unsigned short int *) (PHY_I2C_BASE + 0x14)))
74#define REG_I2C_START (*((volatile unsigned short int *) (PHY_I2C_BASE + 0x24)))
75#define REG_I2C_SOFT_RESET (*((volatile unsigned short int *) (PHY_I2C_BASE + 0x50)))
76#define REG_I2C_CONTROL (*((unsigned short int *) (PHY_I2C_BASE + 0x10)))
77/* ADDITIONAL CONTROL */
78#define REG_I2C_TRANSAC_LEN (PHY_I2C_BASE + 0x18)
79#define REG_I2C_HTIMING (PHY_I2C_BASE + 0x20)
80#define REG_I2C_LTIMING (PHY_I2C_BASE + 0x2C)
81
82#define ADDR_I2C_DATA_PORT (PHY_I2C_BASE + 0x00)
83#define ADDR_I2C_SLAVE_ADDR (PHY_I2C_BASE + 0x04)
84#define ADDR_I2C_TRANSFER_LEN (PHY_I2C_BASE + 0x14)
85#define ADDR_I2C_START (PHY_I2C_BASE + 0x24)
86
87#define IS_PRINT 1
88
89///////////////////////////////////////////////////////////////////////////////
90
91#ifndef __MTK_PHY_A60931_H
92#define __MTK_PHY_A60931_H
93
94#define U2_SR_COEF_A60931 22
95
96///////////////////////////////////////////////////////////////////////////////
97
98struct a60931_u2phy_reg_a {
99 //0x0
100 u32 usbphyacr0;
101 u32 usbphyacr1;
102 u32 usbphyacr2;
103 u32 reserve0;
104 //0x10
105 u32 usbphyacr4;
106 u32 usbphyacr5;
107 u32 usbphyacr6;
108 u32 u2phyacr3;
109 //0x20
110 u32 u2phyacr4;
111 u32 u2phyamon0;
112 u32 reserve1[2];
113 //0x30~0x50
114 u32 reserve2[12];
115 //0x60
116 u32 u2phydcr0;
117 u32 u2phydcr1;
118 u32 u2phydtm0;
119 u32 u2phydtm1;
120 //0x70
121 u32 u2phydmon0;
122 u32 u2phydmon1;
123 u32 u2phydmon2;
124 u32 u2phydmon3;
125 //0x80
126 u32 u2phybc12c;
127 u32 u2phybc12c1;
128 u32 reserve3[2];
129 //0x90~0xd0
130 u32 reserve4[20];
131 //0xe0
132 u32 regfppc;
133 u32 reserve5[3];
134 //0xf0
135 u32 versionc;
136 u32 reserve6[2];
137 u32 regfcom;
138};
139
140//U3D_USBPHYACR0
141#define A60931_RG_USB20_MPX_OUT_SEL (0x7<<28) //30:28
142#define A60931_RG_USB20_TX_PH_ROT_SEL (0x7<<24) //26:24
143#define A60931_RG_USB20_PLL_DIVEN (0x7<<20) //22:20
144#define A60931_RG_USB20_PLL_BR (0x1<<18) //18:18
145#define A60931_RG_USB20_PLL_BP (0x1<<17) //17:17
146#define A60931_RG_USB20_PLL_BLP (0x1<<16) //16:16
147#define A60931_RG_USB20_USBPLL_FORCE_ON (0x1<<15) //15:15
148#define A60931_RG_USB20_PLL_FBDIV (0x7f<<8) //14:8
149#define A60931_RG_USB20_PLL_PREDIV (0x3<<6) //7:6
150#define A60931_RG_USB20_INTR_EN (0x1<<5) //5:5
151#define A60931_RG_USB20_REF_EN (0x1<<4) //4:4
152#define A60931_RG_USB20_BGR_DIV (0x3<<2) //3:2
153#define A60931_RG_SIFSLV_CHP_EN (0x1<<1) //1:1
154#define A60931_RG_SIFSLV_BGR_EN (0x1<<0) //0:0
155
156//U3D_USBPHYACR1
157#define A60931_RG_USB20_INTR_CAL (0x1f<<19) //23:19
158#define A60931_RG_USB20_OTG_VBUSTH (0x7<<16) //18:16
159#define A60931_RG_USB20_VRT_VREF_SEL (0x7<<12) //14:12
160#define A60931_RG_USB20_TERM_VREF_SEL (0x7<<8) //10:8
161#define A60931_RG_USB20_MPX_SEL (0xff<<0) //7:0
162
163//U3D_USBPHYACR2
164#define A60931_RG_SIFSLV_MAC_BANDGAP_EN (0x1<<17) //17:17
165#define A60931_RG_SIFSLV_MAC_CHOPPER_EN (0x1<<16) //16:16
166#define A60931_RG_USB20_CLKREF_REV (0xffff<<0) //15:0
167
168//U3D_USBPHYACR4
169#define A60931_RG_USB20_DP_ABIST_SOURCE_EN (0x1<<31) //31:31
170#define A60931_RG_USB20_DP_ABIST_SELE (0xf<<24) //27:24
171#define A60931_RG_USB20_ICUSB_EN (0x1<<16) //16:16
172#define A60931_RG_USB20_LS_CR (0x7<<12) //14:12
173#define A60931_RG_USB20_FS_CR (0x7<<8) //10:8
174#define A60931_RG_USB20_LS_SR (0x7<<4) //6:4
175#define A60931_RG_USB20_FS_SR (0x7<<0) //2:0
176
177//U3D_USBPHYACR5
178#define A60931_RG_USB20_DISC_FIT_EN (0x1<<28) //28:28
179#define A60931_RG_USB20_INIT_SQ_EN_DG (0x3<<26) //27:26
180#define A60931_RG_USB20_HSTX_TMODE_SEL (0x3<<24) //25:24
181#define A60931_RG_USB20_SQD (0x3<<22) //23:22
182#define A60931_RG_USB20_DISCD (0x3<<20) //21:20
183#define A60931_RG_USB20_HSTX_TMODE_EN (0x1<<19) //19:19
184#define A60931_RG_USB20_PHYD_MONEN (0x1<<18) //18:18
185#define A60931_RG_USB20_INLPBK_EN (0x1<<17) //17:17
186#define A60931_RG_USB20_CHIRP_EN (0x1<<16) //16:16
187#define A60931_RG_USB20_HSTX_SRCAL_EN (0x1<<15) //15:15
188#define A60931_RG_USB20_HSTX_SRCTRL (0x7<<12) //14:12
189#define A60931_RG_USB20_HS_100U_U3_EN (0x1<<11) //11:11
190#define A60931_RG_USB20_GBIAS_ENB (0x1<<10) //10:10
191#define A60931_RG_USB20_DM_ABIST_SOURCE_EN (0x1<<7) //7:7
192#define A60931_RG_USB20_DM_ABIST_SELE (0xf<<0) //3:0
193
194//U3D_USBPHYACR6
195#define A60931_RG_USB20_ISO_EN (0x1 << 31) /* 31:31 */
196#define A60931_RG_USB20_PHY_REV (0xff<<24) //31:24
197#define A60931_RG_USB20_BC11_SW_EN (0x1<<23) //23:23
198#define A60931_RG_USB20_SR_CLK_SEL (0x1<<22) //22:22
199#define A60931_RG_USB20_OTG_VBUSCMP_EN (0x1<<20) //20:20
200#define A60931_RG_USB20_OTG_ABIST_EN (0x1<<19) //19:19
201#define A60931_RG_USB20_OTG_ABIST_SELE (0x7<<16) //18:16
202#define A60931_RG_USB20_HSRX_MMODE_SELE (0x3<<12) //13:12
203#define A60931_RG_USB20_HSRX_BIAS_EN_SEL (0x3<<9) //10:9
204#define A60931_RG_USB20_HSRX_TMODE_EN (0x1<<8) //8:8
205#define A60931_RG_USB20_DISCTH (0xf<<4) //7:4
206#define A60931_RG_USB20_SQTH (0xf<<0) //3:0
207
208//U3D_U2PHYACR3
209#define A60931_RG_USB20_HSTX_DBIST (0xf<<28) //31:28
210#define A60931_RG_USB20_HSTX_BIST_EN (0x1<<26) //26:26
211#define A60931_RG_USB20_HSTX_I_EN_MODE (0x3<<24) //25:24
212#define A60931_RG_USB20_USB11_TMODE_EN (0x1<<19) //19:19
213#define A60931_RG_USB20_TMODE_FS_LS_TX_EN (0x1<<18) //18:18
214#define A60931_RG_USB20_TMODE_FS_LS_RCV_EN (0x1<<17) //17:17
215#define A60931_RG_USB20_TMODE_FS_LS_MODE (0x1<<16) //16:16
216#define A60931_RG_USB20_HS_TERM_EN_MODE (0x3<<13) //14:13
217#define A60931_RG_USB20_PUPD_BIST_EN (0x1<<12) //12:12
218#define A60931_RG_USB20_EN_PU_DM (0x1<<11) //11:11
219#define A60931_RG_USB20_EN_PD_DM (0x1<<10) //10:10
220#define A60931_RG_USB20_EN_PU_DP (0x1<<9) //9:9
221#define A60931_RG_USB20_EN_PD_DP (0x1<<8) //8:8
222
223//U3D_U2PHYACR4
224#define A60931_RG_USB20_DP_100K_MODE (0x1<<18) //18:18
225#define A60931_RG_USB20_DM_100K_EN (0x1<<17) //17:17
226#define A60931_USB20_DP_100K_EN (0x1<<16) //16:16
227#define A60931_USB20_GPIO_DM_I (0x1<<15) //15:15
228#define A60931_USB20_GPIO_DP_I (0x1<<14) //14:14
229#define A60931_USB20_GPIO_DM_OE (0x1<<13) //13:13
230#define A60931_USB20_GPIO_DP_OE (0x1<<12) //12:12
231#define A60931_RG_USB20_GPIO_CTL (0x1<<9) //9:9
232#define A60931_USB20_GPIO_MODE (0x1<<8) //8:8
233#define A60931_RG_USB20_TX_BIAS_EN (0x1<<5) //5:5
234#define A60931_RG_USB20_TX_VCMPDN_EN (0x1<<4) //4:4
235#define A60931_RG_USB20_HS_SQ_EN_MODE (0x3<<2) //3:2
236#define A60931_RG_USB20_HS_RCV_EN_MODE (0x3<<0) //1:0
237
238//U3D_U2PHYAMON0
239#define A60931_RGO_USB20_GPIO_DM_O (0x1<<1) //1:1
240#define A60931_RGO_USB20_GPIO_DP_O (0x1<<0) //0:0
241
242//U3D_U2PHYDCR0
243#define A60931_RG_USB20_CDR_TST (0x3<<30) //31:30
244#define A60931_RG_USB20_GATED_ENB (0x1<<29) //29:29
245#define A60931_RG_USB20_TESTMODE (0x3<<26) //27:26
246#define A60931_RG_SIFSLV_USB20_PLL_STABLE (0x1<<25) //25:25
247#define A60931_RG_SIFSLV_USB20_PLL_FORCE_ON (0x1<<24) //24:24
248#define A60931_RG_USB20_PHYD_RESERVE (0xffff<<8) //23:8
249#define A60931_RG_USB20_EBTHRLD (0x1<<7) //7:7
250#define A60931_RG_USB20_EARLY_HSTX_I (0x1<<6) //6:6
251#define A60931_RG_USB20_TX_TST (0x1<<5) //5:5
252#define A60931_RG_USB20_NEGEDGE_ENB (0x1<<4) //4:4
253#define A60931_RG_USB20_CDR_FILT (0xf<<0) //3:0
254
255//U3D_U2PHYDCR1
256#define A60931_RG_USB20_PROBE_SEL (0xff<<24) //31:24
257#define A60931_RG_USB20_DRVVBUS (0x1<<23) //23:23
258#define A60931_RG_DEBUG_EN (0x1<<22) //22:22
259#define A60931_RG_USB20_OTG_PROBE (0x3<<20) //21:20
260#define A60931_RG_USB20_SW_PLLMODE (0x3<<18) //19:18
261#define A60931_RG_USB20_BERTH (0x3<<16) //17:16
262#define A60931_RG_USB20_LBMODE (0x3<<13) //14:13
263#define A60931_RG_USB20_FORCE_TAP (0x1<<12) //12:12
264#define A60931_RG_USB20_TAPSEL (0xfff<<0) //11:0
265
266//U3D_U2PHYDTM0
267#define A60931_RG_UART_MODE (0x3<<30) //31:30
268#define A60931_FORCE_UART_I (0x1<<29) //29:29
269#define A60931_FORCE_UART_BIAS_EN (0x1<<28) //28:28
270#define A60931_FORCE_UART_TX_OE (0x1<<27) //27:27
271#define A60931_FORCE_UART_EN (0x1<<26) //26:26
272#define A60931_FORCE_USB_CLKEN (0x1<<25) //25:25
273#define A60931_FORCE_DRVVBUS (0x1<<24) //24:24
274#define A60931_FORCE_DATAIN (0x1<<23) //23:23
275#define A60931_FORCE_TXVALID (0x1<<22) //22:22
276#define A60931_FORCE_DM_PULLDOWN (0x1<<21) //21:21
277#define A60931_FORCE_DP_PULLDOWN (0x1<<20) //20:20
278#define A60931_FORCE_XCVRSEL (0x1<<19) //19:19
279#define A60931_FORCE_SUSPENDM (0x1<<18) //18:18
280#define A60931_FORCE_TERMSEL (0x1<<17) //17:17
281#define A60931_FORCE_OPMODE (0x1<<16) //16:16
282#define A60931_UTMI_MUXSEL (0x1<<15) //15:15
283#define A60931_RG_RESET (0x1<<14) //14:14
284#define A60931_RG_DATAIN (0xf<<10) //13:10
285#define A60931_RG_TXVALIDH (0x1<<9) //9:9
286#define A60931_RG_TXVALID (0x1<<8) //8:8
287#define A60931_RG_DMPULLDOWN (0x1<<7) //7:7
288#define A60931_RG_DPPULLDOWN (0x1<<6) //6:6
289#define A60931_RG_XCVRSEL (0x3<<4) //5:4
290#define A60931_RG_SUSPENDM (0x1<<3) //3:3
291#define A60931_RG_TERMSEL (0x1<<2) //2:2
292#define A60931_RG_OPMODE (0x3<<0) //1:0
293
294//U3D_U2PHYDTM1
295#define A60931_RG_USB20_PRBS7_EN (0x1<<31) //31:31
296#define A60931_RG_USB20_PRBS7_BITCNT (0x3f<<24) //29:24
297#define A60931_RG_USB20_CLK48M_EN (0x1<<23) //23:23
298#define A60931_RG_USB20_CLK60M_EN (0x1<<22) //22:22
299#define A60931_RG_UART_I (0x1<<19) //19:19
300#define A60931_RG_UART_BIAS_EN (0x1<<18) //18:18
301#define A60931_RG_UART_TX_OE (0x1<<17) //17:17
302#define A60931_RG_UART_EN (0x1<<16) //16:16
303#define A60931_RG_IP_U2_PORT_POWER (0x1<<15) //15:15
304#define A60931_FORCE_IP_U2_PORT_POWER (0x1<<14) //14:14
305#define A60931_FORCE_VBUSVALID (0x1<<13) //13:13
306#define A60931_FORCE_SESSEND (0x1<<12) //12:12
307#define A60931_FORCE_BVALID (0x1<<11) //11:11
308#define A60931_FORCE_AVALID (0x1<<10) //10:10
309#define A60931_FORCE_IDDIG (0x1<<9) //9:9
310#define A60931_FORCE_IDPULLUP (0x1<<8) //8:8
311#define A60931_RG_VBUSVALID (0x1<<5) //5:5
312#define A60931_RG_SESSEND (0x1<<4) //4:4
313#define A60931_RG_BVALID (0x1<<3) //3:3
314#define A60931_RG_AVALID (0x1<<2) //2:2
315#define A60931_RG_IDDIG (0x1<<1) //1:1
316#define A60931_RG_IDPULLUP (0x1<<0) //0:0
317
318//U3D_U2PHYDMON0
319#define A60931_RG_USB20_PRBS7_BERTH (0xff<<0) //7:0
320#define E60802_RG_USB20_EOP_CTL (0xf<<16) //19:16
321
322//U3D_U2PHYDMON1
323#define A60931_USB20_UART_O (0x1<<31) //31:31
324#define A60931_RGO_USB20_LB_PASS (0x1<<30) //30:30
325#define A60931_RGO_USB20_LB_DONE (0x1<<29) //29:29
326#define A60931_AD_USB20_BVALID (0x1<<28) //28:28
327#define A60931_USB20_IDDIG (0x1<<27) //27:27
328#define A60931_AD_USB20_VBUSVALID (0x1<<26) //26:26
329#define A60931_AD_USB20_SESSEND (0x1<<25) //25:25
330#define A60931_AD_USB20_AVALID (0x1<<24) //24:24
331#define A60931_USB20_LINE_STATE (0x3<<22) //23:22
332#define A60931_USB20_HST_DISCON (0x1<<21) //21:21
333#define A60931_USB20_TX_READY (0x1<<20) //20:20
334#define A60931_USB20_RX_ERROR (0x1<<19) //19:19
335#define A60931_USB20_RX_ACTIVE (0x1<<18) //18:18
336#define A60931_USB20_RX_VALIDH (0x1<<17) //17:17
337#define A60931_USB20_RX_VALID (0x1<<16) //16:16
338#define A60931_USB20_DATA_OUT (0xffff<<0) //15:0
339
340//U3D_U2PHYDMON2
341#define A60931_RGO_TXVALID_CNT (0xff<<24) //31:24
342#define A60931_RGO_RXACTIVE_CNT (0xff<<16) //23:16
343#define A60931_RGO_USB20_LB_BERCNT (0xff<<8) //15:8
344#define A60931_USB20_PROBE_OUT (0xff<<0) //7:0
345
346//U3D_U2PHYDMON3
347#define A60931_RGO_USB20_PRBS7_ERRCNT (0xffff<<16) //31:16
348#define A60931_RGO_USB20_PRBS7_DONE (0x1<<3) //3:3
349#define A60931_RGO_USB20_PRBS7_LOCK (0x1<<2) //2:2
350#define A60931_RGO_USB20_PRBS7_PASS (0x1<<1) //1:1
351#define A60931_RGO_USB20_PRBS7_PASSTH (0x1<<0) //0:0
352
353//U3D_U2PHYBC12C
354#define A60931_RG_SIFSLV_CHGDT_DEGLCH_CNT (0xf<<28) //31:28
355#define A60931_RG_SIFSLV_CHGDT_CTRL_CNT (0xf<<24) //27:24
356#define A60931_RG_SIFSLV_CHGDT_FORCE_MODE (0x1<<16) //16:16
357#define A60931_RG_CHGDT_ISRC_LEV (0x3<<14) //15:14
358#define A60931_RG_CHGDT_VDATSRC (0x1<<13) //13:13
359#define A60931_RG_CHGDT_BGVREF_SEL (0x7<<10) //12:10
360#define A60931_RG_CHGDT_RDVREF_SEL (0x3<<8) //9:8
361#define A60931_RG_CHGDT_ISRC_DP (0x1<<7) //7:7
362#define A60931_RG_SIFSLV_CHGDT_OPOUT_DM (0x1<<6) //6:6
363#define A60931_RG_CHGDT_VDAT_DM (0x1<<5) //5:5
364#define A60931_RG_CHGDT_OPOUT_DP (0x1<<4) //4:4
365#define A60931_RG_SIFSLV_CHGDT_VDAT_DP (0x1<<3) //3:3
366#define A60931_RG_SIFSLV_CHGDT_COMP_EN (0x1<<2) //2:2
367#define A60931_RG_SIFSLV_CHGDT_OPDRV_EN (0x1<<1) //1:1
368#define A60931_RG_CHGDT_EN (0x1<<0) //0:0
369
370//U3D_U2PHYBC12C1
371#define A60931_RG_CHGDT_REV (0xff<<0) //7:0
372
373//U3D_REGFPPC
374#define A60931_USB11_OTG_REG (0x1<<4) //4:4
375#define A60931_USB20_OTG_REG (0x1<<3) //3:3
376#define A60931_CHGDT_REG (0x1<<2) //2:2
377#define A60931_USB11_REG (0x1<<1) //1:1
378#define A60931_USB20_REG (0x1<<0) //0:0
379
380//U3D_VERSIONC
381#define A60931_VERSION_CODE_REGFILE (0xff<<24) //31:24
382#define A60931_USB11_VERSION_CODE (0xff<<16) //23:16
383#define A60931_VERSION_CODE_ANA (0xff<<8) //15:8
384#define A60931_VERSION_CODE_DIG (0xff<<0) //7:0
385
386//U3D_REGFCOM
387#define A60931_RG_PAGE (0xff<<24) //31:24
388#define A60931_I2C_MODE (0x1<<16) //16:16
389
390/* OFFSET */
391
392//U3D_USBPHYACR0
393#define A60931_RG_USB20_MPX_OUT_SEL_OFST (28)
394#define A60931_RG_USB20_TX_PH_ROT_SEL_OFST (24)
395#define A60931_RG_USB20_PLL_DIVEN_OFST (20)
396#define A60931_RG_USB20_PLL_BR_OFST (18)
397#define A60931_RG_USB20_PLL_BP_OFST (17)
398#define A60931_RG_USB20_PLL_BLP_OFST (16)
399#define A60931_RG_USB20_USBPLL_FORCE_ON_OFST (15)
400#define A60931_RG_USB20_PLL_FBDIV_OFST (8)
401#define A60931_RG_USB20_PLL_PREDIV_OFST (6)
402#define A60931_RG_USB20_INTR_EN_OFST (5)
403#define A60931_RG_USB20_REF_EN_OFST (4)
404#define A60931_RG_USB20_BGR_DIV_OFST (2)
405#define A60931_RG_SIFSLV_CHP_EN_OFST (1)
406#define A60931_RG_SIFSLV_BGR_EN_OFST (0)
407
408//U3D_USBPHYACR1
409#define A60931_RG_USB20_INTR_CAL_OFST (19)
410#define A60931_RG_USB20_OTG_VBUSTH_OFST (16)
411#define A60931_RG_USB20_VRT_VREF_SEL_OFST (12)
412#define A60931_RG_USB20_TERM_VREF_SEL_OFST (8)
413#define A60931_RG_USB20_MPX_SEL_OFST (0)
414
415//U3D_USBPHYACR2
416#define A60931_RG_SIFSLV_MAC_BANDGAP_EN_OFST (17)
417#define A60931_RG_SIFSLV_MAC_CHOPPER_EN_OFST (16)
418#define A60931_RG_USB20_CLKREF_REV_OFST (0)
419
420//U3D_USBPHYACR4
421#define A60931_RG_USB20_DP_ABIST_SOURCE_EN_OFST (31)
422#define A60931_RG_USB20_DP_ABIST_SELE_OFST (24)
423#define A60931_RG_USB20_ICUSB_EN_OFST (16)
424#define A60931_RG_USB20_LS_CR_OFST (12)
425#define A60931_RG_USB20_FS_CR_OFST (8)
426#define A60931_RG_USB20_LS_SR_OFST (4)
427#define A60931_RG_USB20_FS_SR_OFST (0)
428
429//U3D_USBPHYACR5
430#define A60931_RG_USB20_DISC_FIT_EN_OFST (28)
431#define A60931_RG_USB20_INIT_SQ_EN_DG_OFST (26)
432#define A60931_RG_USB20_HSTX_TMODE_SEL_OFST (24)
433#define A60931_RG_USB20_SQD_OFST (22)
434#define A60931_RG_USB20_DISCD_OFST (20)
435#define A60931_RG_USB20_HSTX_TMODE_EN_OFST (19)
436#define A60931_RG_USB20_PHYD_MONEN_OFST (18)
437#define A60931_RG_USB20_INLPBK_EN_OFST (17)
438#define A60931_RG_USB20_CHIRP_EN_OFST (16)
439#define A60931_RG_USB20_HSTX_SRCAL_EN_OFST (15)
440#define A60931_RG_USB20_HSTX_SRCTRL_OFST (12)
441#define A60931_RG_USB20_HS_100U_U3_EN_OFST (11)
442#define A60931_RG_USB20_GBIAS_ENB_OFST (10)
443#define A60931_RG_USB20_DM_ABIST_SOURCE_EN_OFST (7)
444#define A60931_RG_USB20_DM_ABIST_SELE_OFST (0)
445
446//U3D_USBPHYACR6
447#define A60931_RG_USB20_ISO_EN_OFST (31)
448#define A60931_RG_USB20_PHY_REV_OFST (24)
449#define A60931_RG_USB20_BC11_SW_EN_OFST (23)
450#define A60931_RG_USB20_SR_CLK_SEL_OFST (22)
451#define A60931_RG_USB20_OTG_VBUSCMP_EN_OFST (20)
452#define A60931_RG_USB20_OTG_ABIST_EN_OFST (19)
453#define A60931_RG_USB20_OTG_ABIST_SELE_OFST (16)
454#define A60931_RG_USB20_HSRX_MMODE_SELE_OFST (12)
455#define A60931_RG_USB20_HSRX_BIAS_EN_SEL_OFST (9)
456#define A60931_RG_USB20_HSRX_TMODE_EN_OFST (8)
457#define A60931_RG_USB20_DISCTH_OFST (4)
458#define A60931_RG_USB20_SQTH_OFST (0)
459
460//U3D_U2PHYACR3
461#define A60931_RG_USB20_HSTX_DBIST_OFST (28)
462#define A60931_RG_USB20_HSTX_BIST_EN_OFST (26)
463#define A60931_RG_USB20_HSTX_I_EN_MODE_OFST (24)
464#define A60931_RG_USB20_USB11_TMODE_EN_OFST (19)
465#define A60931_RG_USB20_TMODE_FS_LS_TX_EN_OFST (18)
466#define A60931_RG_USB20_TMODE_FS_LS_RCV_EN_OFST (17)
467#define A60931_RG_USB20_TMODE_FS_LS_MODE_OFST (16)
468#define A60931_RG_USB20_HS_TERM_EN_MODE_OFST (13)
469#define A60931_RG_USB20_PUPD_BIST_EN_OFST (12)
470#define A60931_RG_USB20_EN_PU_DM_OFST (11)
471#define A60931_RG_USB20_EN_PD_DM_OFST (10)
472#define A60931_RG_USB20_EN_PU_DP_OFST (9)
473#define A60931_RG_USB20_EN_PD_DP_OFST (8)
474
475//U3D_U2PHYACR4
476#define A60931_RG_USB20_DP_100K_MODE_OFST (18)
477#define A60931_RG_USB20_DM_100K_EN_OFST (17)
478#define A60931_USB20_DP_100K_EN_OFST (16)
479#define A60931_USB20_GPIO_DM_I_OFST (15)
480#define A60931_USB20_GPIO_DP_I_OFST (14)
481#define A60931_USB20_GPIO_DM_OE_OFST (13)
482#define A60931_USB20_GPIO_DP_OE_OFST (12)
483#define A60931_RG_USB20_GPIO_CTL_OFST (9)
484#define A60931_USB20_GPIO_MODE_OFST (8)
485#define A60931_RG_USB20_TX_BIAS_EN_OFST (5)
486#define A60931_RG_USB20_TX_VCMPDN_EN_OFST (4)
487#define A60931_RG_USB20_HS_SQ_EN_MODE_OFST (2)
488#define A60931_RG_USB20_HS_RCV_EN_MODE_OFST (0)
489
490//U3D_U2PHYAMON0
491#define A60931_RGO_USB20_GPIO_DM_O_OFST (1)
492#define A60931_RGO_USB20_GPIO_DP_O_OFST (0)
493
494//U3D_U2PHYDCR0
495#define A60931_RG_USB20_CDR_TST_OFST (30)
496#define A60931_RG_USB20_GATED_ENB_OFST (29)
497#define A60931_RG_USB20_TESTMODE_OFST (26)
498#define A60931_RG_SIFSLV_USB20_PLL_STABLE_OFST (25)
499#define A60931_RG_SIFSLV_USB20_PLL_FORCE_ON_OFST (24)
500#define A60931_RG_USB20_PHYD_RESERVE_OFST (8)
501#define A60931_RG_USB20_EBTHRLD_OFST (7)
502#define A60931_RG_USB20_EARLY_HSTX_I_OFST (6)
503#define A60931_RG_USB20_TX_TST_OFST (5)
504#define A60931_RG_USB20_NEGEDGE_ENB_OFST (4)
505#define A60931_RG_USB20_CDR_FILT_OFST (0)
506
507//U3D_U2PHYDCR1
508#define A60931_RG_USB20_PROBE_SEL_OFST (24)
509#define A60931_RG_USB20_DRVVBUS_OFST (23)
510#define A60931_RG_DEBUG_EN_OFST (22)
511#define A60931_RG_USB20_OTG_PROBE_OFST (20)
512#define A60931_RG_USB20_SW_PLLMODE_OFST (18)
513#define A60931_RG_USB20_BERTH_OFST (16)
514#define A60931_RG_USB20_LBMODE_OFST (13)
515#define A60931_RG_USB20_FORCE_TAP_OFST (12)
516#define A60931_RG_USB20_TAPSEL_OFST (0)
517
518//U3D_U2PHYDTM0
519#define A60931_RG_UART_MODE_OFST (30)
520#define A60931_FORCE_UART_I_OFST (29)
521#define A60931_FORCE_UART_BIAS_EN_OFST (28)
522#define A60931_FORCE_UART_TX_OE_OFST (27)
523#define A60931_FORCE_UART_EN_OFST (26)
524#define A60931_FORCE_USB_CLKEN_OFST (25)
525#define A60931_FORCE_DRVVBUS_OFST (24)
526#define A60931_FORCE_DATAIN_OFST (23)
527#define A60931_FORCE_TXVALID_OFST (22)
528#define A60931_FORCE_DM_PULLDOWN_OFST (21)
529#define A60931_FORCE_DP_PULLDOWN_OFST (20)
530#define A60931_FORCE_XCVRSEL_OFST (19)
531#define A60931_FORCE_SUSPENDM_OFST (18)
532#define A60931_FORCE_TERMSEL_OFST (17)
533#define A60931_FORCE_OPMODE_OFST (16)
534#define A60931_UTMI_MUXSEL_OFST (15)
535#define A60931_RG_RESET_OFST (14)
536#define A60931_RG_DATAIN_OFST (10)
537#define A60931_RG_TXVALIDH_OFST (9)
538#define A60931_RG_TXVALID_OFST (8)
539#define A60931_RG_DMPULLDOWN_OFST (7)
540#define A60931_RG_DPPULLDOWN_OFST (6)
541#define A60931_RG_XCVRSEL_OFST (4)
542#define A60931_RG_SUSPENDM_OFST (3)
543#define A60931_RG_TERMSEL_OFST (2)
544#define A60931_RG_OPMODE_OFST (0)
545
546//U3D_U2PHYDTM1
547#define A60931_RG_USB20_PRBS7_EN_OFST (31)
548#define A60931_RG_USB20_PRBS7_BITCNT_OFST (24)
549#define A60931_RG_USB20_CLK48M_EN_OFST (23)
550#define A60931_RG_USB20_CLK60M_EN_OFST (22)
551#define A60931_RG_UART_I_OFST (19)
552#define A60931_RG_UART_BIAS_EN_OFST (18)
553#define A60931_RG_UART_TX_OE_OFST (17)
554#define A60931_RG_UART_EN_OFST (16)
555#define A60931_RG_IP_U2_PORT_POWER_OFST (15)
556#define A60931_FORCE_IP_U2_PORT_POWER_OFST (14)
557#define A60931_FORCE_VBUSVALID_OFST (13)
558#define A60931_FORCE_SESSEND_OFST (12)
559#define A60931_FORCE_BVALID_OFST (11)
560#define A60931_FORCE_AVALID_OFST (10)
561#define A60931_FORCE_IDDIG_OFST (9)
562#define A60931_FORCE_IDPULLUP_OFST (8)
563#define A60931_RG_VBUSVALID_OFST (5)
564#define A60931_RG_SESSEND_OFST (4)
565#define A60931_RG_BVALID_OFST (3)
566#define A60931_RG_AVALID_OFST (2)
567#define A60931_RG_IDDIG_OFST (1)
568#define A60931_RG_IDPULLUP_OFST (0)
569
570//U3D_U2PHYDMON0
571#define A60931_RG_USB20_PRBS7_BERTH_OFST (0)
572#define E60802_RG_USB20_EOP_CTL_OFST (16)
573
574//U3D_U2PHYDMON1
575#define A60931_USB20_UART_O_OFST (31)
576#define A60931_RGO_USB20_LB_PASS_OFST (30)
577#define A60931_RGO_USB20_LB_DONE_OFST (29)
578#define A60931_AD_USB20_BVALID_OFST (28)
579#define A60931_USB20_IDDIG_OFST (27)
580#define A60931_AD_USB20_VBUSVALID_OFST (26)
581#define A60931_AD_USB20_SESSEND_OFST (25)
582#define A60931_AD_USB20_AVALID_OFST (24)
583#define A60931_USB20_LINE_STATE_OFST (22)
584#define A60931_USB20_HST_DISCON_OFST (21)
585#define A60931_USB20_TX_READY_OFST (20)
586#define A60931_USB20_RX_ERROR_OFST (19)
587#define A60931_USB20_RX_ACTIVE_OFST (18)
588#define A60931_USB20_RX_VALIDH_OFST (17)
589#define A60931_USB20_RX_VALID_OFST (16)
590#define A60931_USB20_DATA_OUT_OFST (0)
591
592//U3D_U2PHYDMON2
593#define A60931_RGO_TXVALID_CNT_OFST (24)
594#define A60931_RGO_RXACTIVE_CNT_OFST (16)
595#define A60931_RGO_USB20_LB_BERCNT_OFST (8)
596#define A60931_USB20_PROBE_OUT_OFST (0)
597
598//U3D_U2PHYDMON3
599#define A60931_RGO_USB20_PRBS7_ERRCNT_OFST (16)
600#define A60931_RGO_USB20_PRBS7_DONE_OFST (3)
601#define A60931_RGO_USB20_PRBS7_LOCK_OFST (2)
602#define A60931_RGO_USB20_PRBS7_PASS_OFST (1)
603#define A60931_RGO_USB20_PRBS7_PASSTH_OFST (0)
604
605//U3D_U2PHYBC12C
606#define A60931_RG_SIFSLV_CHGDT_DEGLCH_CNT_OFST (28)
607#define A60931_RG_SIFSLV_CHGDT_CTRL_CNT_OFST (24)
608#define A60931_RG_SIFSLV_CHGDT_FORCE_MODE_OFST (16)
609#define A60931_RG_CHGDT_ISRC_LEV_OFST (14)
610#define A60931_RG_CHGDT_VDATSRC_OFST (13)
611#define A60931_RG_CHGDT_BGVREF_SEL_OFST (10)
612#define A60931_RG_CHGDT_RDVREF_SEL_OFST (8)
613#define A60931_RG_CHGDT_ISRC_DP_OFST (7)
614#define A60931_RG_SIFSLV_CHGDT_OPOUT_DM_OFST (6)
615#define A60931_RG_CHGDT_VDAT_DM_OFST (5)
616#define A60931_RG_CHGDT_OPOUT_DP_OFST (4)
617#define A60931_RG_SIFSLV_CHGDT_VDAT_DP_OFST (3)
618#define A60931_RG_SIFSLV_CHGDT_COMP_EN_OFST (2)
619#define A60931_RG_SIFSLV_CHGDT_OPDRV_EN_OFST (1)
620#define A60931_RG_CHGDT_EN_OFST (0)
621
622//U3D_U2PHYBC12C1
623#define A60931_RG_CHGDT_REV_OFST (0)
624
625//U3D_REGFPPC
626#define A60931_USB11_OTG_REG_OFST (4)
627#define A60931_USB20_OTG_REG_OFST (3)
628#define A60931_CHGDT_REG_OFST (2)
629#define A60931_USB11_REG_OFST (1)
630#define A60931_USB20_REG_OFST (0)
631
632//U3D_VERSIONC
633#define A60931_VERSION_CODE_REGFILE_OFST (24)
634#define A60931_USB11_VERSION_CODE_OFST (16)
635#define A60931_VERSION_CODE_ANA_OFST (8)
636#define A60931_VERSION_CODE_DIG_OFST (0)
637
638//U3D_REGFCOM
639#define A60931_RG_PAGE_OFST (24)
640#define A60931_I2C_MODE_OFST (16)
641
642///////////////////////////////////////////////////////////////////////////////
643
644struct a60931_u3phya_reg_a {
645 //0x0
646 u32 reg0;
647 u32 reg1;
648 u32 reg2;
649 u32 reg3;
650 //0x10
651 u32 reg4;
652 u32 reg5;
653 u32 reg6;
654 u32 reg7;
655 //0x20
656 u32 reg8;
657 u32 reg9;
658 u32 rega;
659 u32 regb;
660 //0x30
661 u32 regc;
662};
663
664//U3D_reg0
665#define A60931_RG_SSUSB_BGR_EN (0x1<<31) //31:31
666#define A60931_RG_SSUSB_CHPEN (0x1<<30) //30:30
667#define A60931_RG_SSUSB_BG_DIV (0x3<<28) //29:28
668#define A60931_RG_SSUSB_INTR_EN (0x1<<26) //26:26
669#define A60931_RG_SSUSB_MPX_EN (0x1<<24) //24:24
670#define A60931_RG_SSUSB_MPX_SEL (0xff<<16) //23:16
671#define A60931_RG_SSUSB_IEXT_INTR_CTRL (0x3f<<10) //15:10
672#define A60931_RG_SSUSB_VRT_VREF_SEL (0xf<<6) //9:6
673#define A60931_RG_SSUSB_REF_EN (0x1<<5) //5:5
674#define A60931_RG_SSUSB_BG_MONEN (0x1<<4) //4:4
675#define A60931_RG_SSUSB_INT_BIAS_SEL (0x1<<3) //3:3
676#define A60931_RG_SSUSB_EXT_BIAS_SEL (0x1<<2) //2:2
677
678//U3D_reg1
679#define A60931_RG_PCIE_CLKDET_VTH (0x3<<30) //30:2
680#define A60931_RG_VUSB10_ON (0x1<<29) //29:29
681#define A60931_RG_SSUSB_XTAL_TST_A2DCK_EN (0x1<<28) //28:28
682#define A60931_RG_SSUSB_XTAL_MON_EN (0x1<<27) //27:27
683#define A60931_RG_SSUSB_XTAL_HYS (0x1<<26) //26:26
684#define A60931_RG_SSUSB_XTAL_TOP_RESERVE (0xffff<<10) //25:10
685#define A60931_RG_SSUSB_SYSPLL_PREDIV (0x3<<8) //9:8
686#define A60931_RG_SSUSB_SYSPLL_POSDIV (0x3<<6) //7:6
687#define A60931_RG_SSUSB_SYSPLL_VCO_DIV_SEL (0x1<<5) //5:5
688#define A60931_RG_SSUSB_SYSPLL_VOD_EN (0x1<<4) //4:4
689#define A60931_RG_SSUSB_SYSPLL_RST_DLY (0x3<<2) //3:2
690#define A60931_RG_SSUSB_SYSPLL_BLP (0x1<<1) //1:1
691#define A60931_RG_SSUSB_SYSPLL_BP (0x1<<0) //0:0
692
693//U3D_reg2
694#define A60931_RG_SSUSB_SYSPLL_BR (0x1<<31) //31:31
695#define A60931_RG_SSUSB_SYSPLL_BC (0x1<<30) //30:30
696#define A60931_RG_SSUSB_SYSPLL_MONCK_EN (0x1<<29) //29:29
697#define A60931_RG_SSUSB_SYSPLL_MONVC_EN (0x1<<28) //28:28
698#define A60931_RG_SSUSB_SYSPLL_MONREF_EN (0x1<<27) //27:27
699#define A60931_RG_SSUSB_SYSPLL_SDM_IFM (0x1<<26) //26:26
700#define A60931_RG_SSUSB_SYSPLL_SDM_OUT (0x1<<25) //25:25
701#define A60931_RG_SSUSB_SYSPLL_BACK_EN (0x1<<24) //24:24
702
703//U3D_reg3
704#define A60931_RG_SSUSB_SYSPLL_FBDIV (0x7fffffff<<1) //31:1
705#define A60931_RG_SSUSB_SYSPLL_HR_EN (0x1<<0) //0:0
706
707//U3D_reg4
708#define A60931_RG_SSUSB_SYSPLL_SDM_DI_EN (0x1<<31) //31:31
709#define A60931_RG_SSUSB_SYSPLL_SDM_DI_LS (0x3<<29) //30:29
710#define A60931_RG_SSUSB_SYSPLL_SDM_ORD (0x3<<27) //28:27
711#define A60931_RG_SSUSB_SYSPLL_SDM_MODE (0x3<<25) //26:25
712#define A60931_RG_SSUSB_SYSPLL_RESERVE (0xff<<17) //24:17
713#define A60931_RG_SSUSB_SYSPLL_TOP_RESERVE (0xffff<<1) //16:1
714
715//U3D_reg5
716#define A60931_RG_SSUSB_TX250MCK_INVB (0x1<<31) //31:31
717#define A60931_RG_SSUSB_IDRV_ITAILOP_EN (0x1<<30) //30:30
718#define A60931_RG_SSUSB_IDRV_CALIB (0x3f<<24) //29:24
719#define A60931_RG_SSUSB_IDEM_BIAS (0xf<<20) //23:20
720#define A60931_RG_SSUSB_TX_R50_FON (0x1<<19) //19:19
721#define A60931_RG_SSUSB_TX_SR (0x7<<16) //18:16
722#define A60931_RG_SSUSB_RXDET_RSEL (0x3<<14) //15:14
723#define A60931_RG_SSUSB_RXDET_UPDN_FORCE (0x1<<13) //13:13
724#define A60931_RG_SSUSB_RXDET_UPDN_SEL (0x1<<12) //12:12
725#define A60931_RG_SSUSB_RXDET_VTHSEL_L (0x3<<10) //11:10
726#define A60931_RG_SSUSB_RXDET_VTHSEL_H (0x3<<8) //9:8
727#define A60931_RG_SSUSB_CKMON_EN (0x1<<7) //7:7
728#define A60931_RG_SSUSB_TX_VLMON_EN (0x1<<6) //6:6
729#define A60931_RG_SSUSB_TX_VLMON_SEL (0x3<<4) //5:4
730#define A60931_RG_SSUSB_CKMON_SEL (0xf<<0) //3:0
731
732//U3D_reg6
733#define A60931_RG_SSUSB_LN0_CDR_RESERVE (0xff<<24) //8:8
734#define A60931_RG_SSUSB_LN0_RXAFE_RESERVE (0xff<<16) //23:16
735#define A60931_RG_PCIE_LN0_RX_RESERVE (0xff<<8) //15:8
736#define A60931_RG_SSUSB_LN0_LNMPX_SEL (0xf<<0) //3:0
737
738//U3D_reg7
739#define A60931_RG_SSUSB_PLL_RESERVE (0xffff<<16) //31:16
740#define A60931_RG_SSUSB_PLL_SSC_PRD (0xffff<<0) //15:0
741
742//U3D_reg8
743#define A60931_RG_SSUSB_PLL_SSC_PHASE_INI (0x1<<31) //31:31
744#define A60931_RG_SSUSB_PLL_SSC_TRI_EN (0x1<<30) //30:30
745#define A60931_RG_SSUSB_PLL_CLK_PH_INV (0x1<<29) //29:29
746#define A60931_RG_SSUSB_PLL_DDS_LPF_EN (0x1<<28) //28:28
747#define A60931_RG_SSUSB_PLL_DDS_RST_SEL (0x1<<27) //27:27
748#define A60931_RG_SSUSB_PLL_DDS_VADJ (0x1<<26) //26:26
749#define A60931_RG_SSUSB_PLL_DDS_MONEN (0x1<<25) //25:25
750#define A60931_RG_SSUSB_PLL_DDS_SEL_EXT (0x1<<24) //24:24
751#define A60931_RG_SSUSB_PLL_DDS_PI_PL_EN (0x1<<23) //23:23
752#define A60931_RG_SSUSB_PLL_DDS_FRAC_MUTE (0x7<<20) //22:20
753#define A60931_RG_SSUSB_PLL_DDS_HF_EN (0x1<<19) //19:19
754#define A60931_RG_SSUSB_PLL_DDS_C (0x7<<16) //18:16
755#define A60931_RG_SSUSB_PLL_DDS_PREDIV2 (0x1<<15) //15:15
756#define A60931_RG_SSUSB_LFPS_LPF (0x3<<13) //14:13
757
758//U3D_reg9
759#define A60931_RG_SSUSB_CDR_PD_DIV_BYPASS (0x1<<31) //31:31
760#define A60931_RG_SSUSB_CDR_PD_DIV_SEL (0x1<<30) //30:30
761#define A60931_RG_SSUSB_CDR_CPBIAS_SEL (0x1<<29) //29:29
762#define A60931_RG_SSUSB_CDR_OSCDET_EN (0x1<<28) //28:28
763#define A60931_RG_SSUSB_CDR_MONMUX (0x1<<27) //27:27
764#define A60931_RG_SSUSB_CDR_RST_DLY (0x3<<25) //26:25
765#define A60931_RG_SSUSB_CDR_RSTB_MANUAL (0x1<<24) //24:24
766#define A60931_RG_SSUSB_CDR_BYPASS (0x3<<22) //23:22
767#define A60931_RG_SSUSB_CDR_PI_SLEW (0x3<<20) //21:20
768#define A60931_RG_SSUSB_CDR_EPEN (0x1<<19) //19:19
769#define A60931_RG_SSUSB_CDR_AUTOK_LOAD (0x1<<18) //18:18
770#define A60931_RG_SSUSB_CDR_MONEN (0x1<<16) //16:16
771#define A60931_RG_SSUSB_CDR_MONEN_DIG (0x1<<15) //15:15
772#define A60931_RG_SSUSB_CDR_REGOD (0x3<<13) //14:13
773#define A60931_RG_SSUSB_CDR_AUTOK_KS (0x3<<11) //12:11
774#define A60931_RG_SSUSB_CDR_AUTOK_KF (0x3<<9) //10:9
775#define A60931_RG_SSUSB_RX_DAC_EN (0x1<<8) //8:8
776#define A60931_RG_SSUSB_RX_DAC_PWD (0x1<<7) //7:7
777#define A60931_RG_SSUSB_EQ_CURSEL (0x1<<6) //6:6
778#define A60931_RG_SSUSB_RX_DAC_MUX (0x1f<<1) //5:1
779#define A60931_RG_SSUSB_RX_R2T_EN (0x1<<0) //0:0
780
781//U3D_regA
782#define A60931_RG_SSUSB_RX_T2R_EN (0x1<<31) //31:31
783#define A60931_RG_SSUSB_RX_50_LOWER (0x7<<28) //30:28
784#define A60931_RG_SSUSB_RX_50_TAR (0x3<<26) //27:26
785#define A60931_RG_SSUSB_RX_SW_CTRL (0xf<<21) //24:21
786#define A60931_RG_PCIE_SIGDET_VTH (0x3<<19) //20:19
787#define A60931_RG_PCIE_SIGDET_LPF (0x3<<17) //18:17
788#define A60931_RG_SSUSB_LFPS_MON_EN (0x1<<16) //16:16
789#define A60931_RG_SSUSB_RXAFE_DCMON_SEL (0xf<<12) //15:12
790#define A60931_RG_SSUSB_RX_P1_ENTRY_PASS (0x1<<11) //11:11
791#define A60931_RG_SSUSB_RX_PD_RST (0x1<<10) //10:10
792#define A60931_RG_SSUSB_RX_PD_RST_PASS (0x1<<9) //9:9
793
794//U3D_regB
795#define A60931_RG_SSUSB_CDR_RESERVE (0xff<<24) //31:24
796#define A60931_RG_SSUSB_RXAFE_RESERVE (0xff<<16) //23:16
797#define A60931_RG_PCIE_RX_RESERVE (0xff<<8) //15:8
798#define A60931_RG_SSUSB_VRT_25M_EN (0x1<<7) //7:7
799#define A60931_RG_SSUSB_RX_PD_PICAL_SWAP (0x1<<6) //6:6
800#define A60931_RG_SSUSB_RX_DAC_MEAS_EN (0x1<<5) //5:5
801#define A60931_RG_SSUSB_MPX_SEL_L0 (0x1<<4) //4:4
802#define A60931_RG_SSUSB_LFPS_SLCOUT_SEL (0x1<<3) //3:3
803#define A60931_RG_SSUSB_LFPS_CMPOUT_SEL (0x1<<2) //2:2
804#define A60931_RG_PCIE_SIGDET_HF (0x3<<0) //1:0
805
806//U3D_regC
807#define A60931_RGS_SSUSB_RX_DEBUG_RESERVE (0xff<<0) //7:0
808
809/* OFFSET */
810
811//U3D_reg0
812#define A60931_RG_SSUSB_BGR_EN_OFST (31)
813#define A60931_RG_SSUSB_CHPEN_OFST (30)
814#define A60931_RG_SSUSB_BG_DIV_OFST (28)
815#define A60931_RG_SSUSB_INTR_EN_OFST (26)
816#define A60931_RG_SSUSB_MPX_EN_OFST (24)
817#define A60931_RG_SSUSB_MPX_SEL_OFST (16)
818#define A60931_RG_SSUSB_IEXT_INTR_CTRL_OFST (10)
819#define A60931_RG_SSUSB_VRT_VREF_SEL_OFST (6)
820#define A60931_RG_SSUSB_REF_EN_OFST (5)
821#define A60931_RG_SSUSB_BG_MONEN_OFST (4)
822#define A60931_RG_SSUSB_INT_BIAS_SEL_OFST (3)
823#define A60931_RG_SSUSB_EXT_BIAS_SEL_OFST (2)
824
825//U3D_reg1
826#define A60931_RG_PCIE_CLKDET_VTH_OFST (30)
827#define A60931_RG_VUSB10_ON_OFST (29)
828#define A60931_RG_SSUSB_XTAL_TST_A2DCK_EN_OFST (28)
829#define A60931_RG_SSUSB_XTAL_MON_EN_OFST (27)
830#define A60931_RG_SSUSB_XTAL_HYS_OFST (26)
831#define A60931_RG_SSUSB_XTAL_TOP_RESERVE_OFST (10)
832#define A60931_RG_SSUSB_SYSPLL_PREDIV_OFST (8)
833#define A60931_RG_SSUSB_SYSPLL_POSDIV_OFST (6)
834#define A60931_RG_SSUSB_SYSPLL_VCO_DIV_SEL_OFST (5)
835#define A60931_RG_SSUSB_SYSPLL_VOD_EN_OFST (4)
836#define A60931_RG_SSUSB_SYSPLL_RST_DLY_OFST (2)
837#define A60931_RG_SSUSB_SYSPLL_BLP_OFST (1)
838#define A60931_RG_SSUSB_SYSPLL_BP_OFST (0)
839
840//U3D_reg2
841#define A60931_RG_SSUSB_SYSPLL_BR_OFST (31)
842#define A60931_RG_SSUSB_SYSPLL_BC_OFST (30)
843#define A60931_RG_SSUSB_SYSPLL_MONCK_EN_OFST (29)
844#define A60931_RG_SSUSB_SYSPLL_MONVC_EN_OFST (28)
845#define A60931_RG_SSUSB_SYSPLL_MONREF_EN_OFST (27)
846#define A60931_RG_SSUSB_SYSPLL_SDM_IFM_OFST (26)
847#define A60931_RG_SSUSB_SYSPLL_SDM_OUT_OFST (25)
848#define A60931_RG_SSUSB_SYSPLL_BACK_EN_OFST (24)
849
850//U3D_reg3
851#define A60931_RG_SSUSB_SYSPLL_FBDIV_OFST (1)
852#define A60931_RG_SSUSB_SYSPLL_HR_EN_OFST (0)
853
854//U3D_reg4
855#define A60931_RG_SSUSB_SYSPLL_SDM_DI_EN_OFST (31)
856#define A60931_RG_SSUSB_SYSPLL_SDM_DI_LS_OFST (29)
857#define A60931_RG_SSUSB_SYSPLL_SDM_ORD_OFST (27)
858#define A60931_RG_SSUSB_SYSPLL_SDM_MODE_OFST (25)
859#define A60931_RG_SSUSB_SYSPLL_RESERVE_OFST (17)
860#define A60931_RG_SSUSB_SYSPLL_TOP_RESERVE_OFST (1)
861
862//U3D_reg5
863#define A60931_RG_SSUSB_TX250MCK_INVB_OFST (31)
864#define A60931_RG_SSUSB_IDRV_ITAILOP_EN_OFST (30)
865#define A60931_RG_SSUSB_IDRV_CALIB_OFST (24)
866#define A60931_RG_SSUSB_IDEM_BIAS_OFST (20)
867#define A60931_RG_SSUSB_TX_R50_FON_OFST (19)
868#define A60931_RG_SSUSB_TX_SR_OFST (16)
869#define A60931_RG_SSUSB_RXDET_RSEL_OFST (14)
870#define A60931_RG_SSUSB_RXDET_UPDN_FORCE_OFST (13)
871#define A60931_RG_SSUSB_RXDET_UPDN_SEL_OFST (12)
872#define A60931_RG_SSUSB_RXDET_VTHSEL_L_OFST (10)
873#define A60931_RG_SSUSB_RXDET_VTHSEL_H_OFST (8)
874#define A60931_RG_SSUSB_CKMON_EN_OFST (7)
875#define A60931_RG_SSUSB_TX_VLMON_EN_OFST (6)
876#define A60931_RG_SSUSB_TX_VLMON_SEL_OFST (4)
877#define A60931_RG_SSUSB_CKMON_SEL_OFST (0)
878
879//U3D_reg6
880#define A60931_RG_SSUSB_LN0_CDR_RESERVE_OFST (24)
881#define A60931_RG_SSUSB_LN0_RXAFE_RESERVE_OFST (16)
882#define A60931_RG_PCIE_LN0_RX_RESERVE_OFST (8)
883#define A60931_RG_SSUSB_LN0_LNMPX_SEL_OFST (0)
884
885//U3D_reg7
886#define A60931_RG_SSUSB_PLL_RESERVE_OFST (16)
887#define A60931_RG_SSUSB_PLL_SSC_PRD_OFST (0)
888
889//U3D_reg8
890#define A60931_RG_SSUSB_PLL_SSC_PHASE_INI_OFST (31)
891#define A60931_RG_SSUSB_PLL_SSC_TRI_EN_OFST (30)
892#define A60931_RG_SSUSB_PLL_CLK_PH_INV_OFST (29)
893#define A60931_RG_SSUSB_PLL_DDS_LPF_EN_OFST (28)
894#define A60931_RG_SSUSB_PLL_DDS_RST_SEL_OFST (27)
895#define A60931_RG_SSUSB_PLL_DDS_VADJ_OFST (26)
896#define A60931_RG_SSUSB_PLL_DDS_MONEN_OFST (25)
897#define A60931_RG_SSUSB_PLL_DDS_SEL_EXT_OFST (24)
898#define A60931_RG_SSUSB_PLL_DDS_PI_PL_EN_OFST (23)
899#define A60931_RG_SSUSB_PLL_DDS_FRAC_MUTE_OFST (20)
900#define A60931_RG_SSUSB_PLL_DDS_HF_EN_OFST (19)
901#define A60931_RG_SSUSB_PLL_DDS_C_OFST (16)
902#define A60931_RG_SSUSB_PLL_DDS_PREDIV2_OFST (15)
903#define A60931_RG_SSUSB_LFPS_LPF_OFST (13)
904
905//U3D_reg9
906#define A60931_RG_SSUSB_CDR_PD_DIV_BYPASS_OFST (31)
907#define A60931_RG_SSUSB_CDR_PD_DIV_SEL_OFST (30)
908#define A60931_RG_SSUSB_CDR_CPBIAS_SEL_OFST (29)
909#define A60931_RG_SSUSB_CDR_OSCDET_EN_OFST (28)
910#define A60931_RG_SSUSB_CDR_MONMUX_OFST (27)
911#define A60931_RG_SSUSB_CDR_RST_DLY_OFST (25)
912#define A60931_RG_SSUSB_CDR_RSTB_MANUAL_OFST (24)
913#define A60931_RG_SSUSB_CDR_BYPASS_OFST (22)
914#define A60931_RG_SSUSB_CDR_PI_SLEW_OFST (20)
915#define A60931_RG_SSUSB_CDR_EPEN_OFST (19)
916#define A60931_RG_SSUSB_CDR_AUTOK_LOAD_OFST (18)
917#define A60931_RG_SSUSB_CDR_MONEN_OFST (16)
918#define A60931_RG_SSUSB_CDR_MONEN_DIG_OFST (15)
919#define A60931_RG_SSUSB_CDR_REGOD_OFST (13)
920#define A60931_RG_SSUSB_CDR_AUTOK_KS_OFST (11)
921#define A60931_RG_SSUSB_CDR_AUTOK_KF_OFST (9)
922#define A60931_RG_SSUSB_RX_DAC_EN_OFST (8)
923#define A60931_RG_SSUSB_RX_DAC_PWD_OFST (7)
924#define A60931_RG_SSUSB_EQ_CURSEL_OFST (6)
925#define A60931_RG_SSUSB_RX_DAC_MUX_OFST (1)
926#define A60931_RG_SSUSB_RX_R2T_EN_OFST (0)
927
928//U3D_regA
929#define A60931_RG_SSUSB_RX_T2R_EN_OFST (31)
930#define A60931_RG_SSUSB_RX_50_LOWER_OFST (28)
931#define A60931_RG_SSUSB_RX_50_TAR_OFST (26)
932#define A60931_RG_SSUSB_RX_SW_CTRL_OFST (21)
933#define A60931_RG_PCIE_SIGDET_VTH_OFST (19)
934#define A60931_RG_PCIE_SIGDET_LPF_OFST (17)
935#define A60931_RG_SSUSB_LFPS_MON_EN_OFST (16)
936#define A60931_RG_SSUSB_RXAFE_DCMON_SEL_OFST (12)
937#define A60931_RG_SSUSB_RX_P1_ENTRY_PASS_OFST (11)
938#define A60931_RG_SSUSB_RX_PD_RST_OFST (10)
939#define A60931_RG_SSUSB_RX_PD_RST_PASS_OFST (9)
940
941//U3D_regB
942#define A60931_RG_SSUSB_CDR_RESERVE_OFST (24)
943#define A60931_RG_SSUSB_RXAFE_RESERVE_OFST (16)
944#define A60931_RG_PCIE_RX_RESERVE_OFST (8)
945#define A60931_RG_SSUSB_VRT_25M_EN_OFST (7)
946#define A60931_RG_SSUSB_RX_PD_PICAL_SWAP_OFST (6)
947#define A60931_RG_SSUSB_RX_DAC_MEAS_EN_OFST (5)
948#define A60931_RG_SSUSB_MPX_SEL_L0_OFST (4)
949#define A60931_RG_SSUSB_LFPS_SLCOUT_SEL_OFST (3)
950#define A60931_RG_SSUSB_LFPS_CMPOUT_SEL_OFST (2)
951#define A60931_RG_PCIE_SIGDET_HF_OFST (0)
952
953//U3D_regC
954#define A60931_RGS_SSUSB_RX_DEBUG_RESERVE_OFST (0)
955
956///////////////////////////////////////////////////////////////////////////////
957
958struct a60931_u3phya_da_reg_a {
959 //0x0
960 u32 reg0;
961 u32 reg1;
962 u32 reg4;
963 u32 reg5;
964 //0x10
965 u32 reg6;
966 u32 reg7;
967 u32 reg8;
968 u32 reg9;
969 //0x20
970 u32 reg10;
971 u32 reg12;
972 u32 reg13;
973 u32 reg14;
974 //0x30
975 u32 reg15;
976 u32 reg16;
977 u32 reg19;
978 u32 reg20;
979 //0x40
980 u32 reg21;
981 u32 reg23;
982 u32 reg25;
983 u32 reg26;
984 //0x50
985 u32 reg28;
986 u32 reg29;
987 u32 reg30;
988 u32 reg31;
989 //0x60
990 u32 reg32;
991 u32 reg33;
992};
993
994//U3D_reg0
995#define A60931_RG_PCIE_SPEED_PE2D (0x1<<24) //24:24
996#define A60931_RG_PCIE_SPEED_PE2H (0x1<<23) //23:23
997#define A60931_RG_PCIE_SPEED_PE1D (0x1<<22) //22:22
998#define A60931_RG_PCIE_SPEED_PE1H (0x1<<21) //21:21
999#define A60931_RG_PCIE_SPEED_U3 (0x1<<20) //20:20
1000#define A60931_RG_SSUSB_XTAL_EXT_EN_PE2D (0x3<<18) //19:18
1001#define A60931_RG_SSUSB_XTAL_EXT_EN_PE2H (0x3<<16) //17:16
1002#define A60931_RG_SSUSB_XTAL_EXT_EN_PE1D (0x3<<14) //15:14
1003#define A60931_RG_SSUSB_XTAL_EXT_EN_PE1H (0x3<<12) //13:12
1004#define A60931_RG_SSUSB_XTAL_EXT_EN_U3 (0x3<<10) //11:10
1005#define A60931_RG_SSUSB_CDR_REFCK_SEL_PE2D (0x3<<8) //9:8
1006#define A60931_RG_SSUSB_CDR_REFCK_SEL_PE2H (0x3<<6) //7:6
1007#define A60931_RG_SSUSB_CDR_REFCK_SEL_PE1D (0x3<<4) //5:4
1008#define A60931_RG_SSUSB_CDR_REFCK_SEL_PE1H (0x3<<2) //3:2
1009#define A60931_RG_SSUSB_CDR_REFCK_SEL_U3 (0x3<<0) //1:0
1010
1011//U3D_reg1
1012#define A60931_RG_USB20_REFCK_SEL_PE2D (0x1<<30) //30:30
1013#define A60931_RG_USB20_REFCK_SEL_PE2H (0x1<<29) //29:29
1014#define A60931_RG_USB20_REFCK_SEL_PE1D (0x1<<28) //28:28
1015#define A60931_RG_USB20_REFCK_SEL_PE1H (0x1<<27) //27:27
1016#define A60931_RG_USB20_REFCK_SEL_U3 (0x1<<26) //26:26
1017#define A60931_RG_PCIE_REFCK_DIV4_PE2D (0x1<<25) //25:25
1018#define A60931_RG_PCIE_REFCK_DIV4_PE2H (0x1<<24) //24:24
1019#define A60931_RG_PCIE_REFCK_DIV4_PE1D (0x1<<18) //18:18
1020#define A60931_RG_PCIE_REFCK_DIV4_PE1H (0x1<<17) //17:17
1021#define A60931_RG_PCIE_REFCK_DIV4_U3 (0x1<<16) //16:16
1022#define A60931_RG_PCIE_MODE_PE2D (0x1<<8) //8:8
1023#define A60931_RG_PCIE_MODE_PE2H (0x1<<3) //3:3
1024#define A60931_RG_PCIE_MODE_PE1D (0x1<<2) //2:2
1025#define A60931_RG_PCIE_MODE_PE1H (0x1<<1) //1:1
1026#define A60931_RG_PCIE_MODE_U3 (0x1<<0) //0:0
1027
1028//U3D_reg4
1029#define A60931_RG_SSUSB_PLL_DIVEN_PE2D (0x7<<22) //24:22
1030#define A60931_RG_SSUSB_PLL_DIVEN_PE2H (0x7<<19) //21:19
1031#define A60931_RG_SSUSB_PLL_DIVEN_PE1D (0x7<<16) //18:16
1032#define A60931_RG_SSUSB_PLL_DIVEN_PE1H (0x7<<13) //15:13
1033#define A60931_RG_SSUSB_PLL_DIVEN_U3 (0x7<<10) //12:10
1034#define A60931_RG_SSUSB_PLL_BC_PE2D (0x3<<8) //9:8
1035#define A60931_RG_SSUSB_PLL_BC_PE2H (0x3<<6) //7:6
1036#define A60931_RG_SSUSB_PLL_BC_PE1D (0x3<<4) //5:4
1037#define A60931_RG_SSUSB_PLL_BC_PE1H (0x3<<2) //3:2
1038#define A60931_RG_SSUSB_PLL_BC_U3 (0x3<<0) //1:0
1039
1040//U3D_reg5
1041#define A60931_RG_SSUSB_PLL_BR_PE2D (0x3<<30) //31:30
1042#define A60931_RG_SSUSB_PLL_BR_PE2H (0x3<<28) //29:28
1043#define A60931_RG_SSUSB_PLL_BR_PE1D (0x3<<26) //27:26
1044#define A60931_RG_SSUSB_PLL_BR_PE1H (0x3<<24) //25:24
1045#define A60931_RG_SSUSB_PLL_BR_U3 (0x3<<22) //23:22
1046#define A60931_RG_SSUSB_PLL_IC_PE2D (0xf<<16) //19:16
1047#define A60931_RG_SSUSB_PLL_IC_PE2H (0xf<<12) //15:12
1048#define A60931_RG_SSUSB_PLL_IC_PE1D (0xf<<8) //11:8
1049#define A60931_RG_SSUSB_PLL_IC_PE1H (0xf<<4) //7:4
1050#define A60931_RG_SSUSB_PLL_IC_U3 (0xf<<0) //3:0
1051
1052//U3D_reg6
1053#define A60931_RG_SSUSB_PLL_IR_PE2D (0xf<<24) //27:24
1054#define A60931_RG_SSUSB_PLL_IR_PE2H (0xf<<16) //19:16
1055#define A60931_RG_SSUSB_PLL_IR_PE1D (0xf<<8) //11:8
1056#define A60931_RG_SSUSB_PLL_IR_PE1H (0xf<<4) //7:4
1057#define A60931_RG_SSUSB_PLL_IR_U3 (0xf<<0) //3:0
1058
1059//U3D_reg7
1060#define A60931_RG_SSUSB_PLL_BP_PE2D (0xf<<24) //27:24
1061#define A60931_RG_SSUSB_PLL_BP_PE2H (0xf<<16) //19:16
1062#define A60931_RG_SSUSB_PLL_BP_PE1D (0xf<<8) //11:8
1063#define A60931_RG_SSUSB_PLL_BP_PE1H (0xf<<4) //7:4
1064#define A60931_RG_SSUSB_PLL_BP_U3 (0xf<<0) //3:0
1065
1066//U3D_reg8
1067#define A60931_RG_SSUSB_PLL_FBKSEL_PE2D (0x3<<24) //25:24
1068#define A60931_RG_SSUSB_PLL_FBKSEL_PE2H (0x3<<16) //17:16
1069#define A60931_RG_SSUSB_PLL_FBKSEL_PE1D (0x3<<8) //9:8
1070#define A60931_RG_SSUSB_PLL_FBKSEL_PE1H (0x3<<2) //3:2
1071#define A60931_RG_SSUSB_PLL_FBKSEL_U3 (0x3<<0) //1:0
1072
1073//U3D_reg9
1074#define A60931_RG_SSUSB_PLL_FBKDIV_PE2H (0x7f<<24) //30:24
1075#define A60931_RG_SSUSB_PLL_FBKDIV_PE1D (0x7f<<16) //22:16
1076#define A60931_RG_SSUSB_PLL_FBKDIV_PE1H (0x7f<<8) //14:8
1077#define A60931_RG_SSUSB_PLL_FBKDIV_U3 (0x7f<<0) //6:0
1078
1079//U3D_reg10
1080#define A60931_RG_SSUSB_PLL_PREDIV_PE2D (0x3<<26) //27:26
1081#define A60931_RG_SSUSB_PLL_PREDIV_PE2H (0x3<<24) //25:24
1082#define A60931_RG_SSUSB_PLL_PREDIV_PE1D (0x3<<18) //19:18
1083#define A60931_RG_SSUSB_PLL_PREDIV_PE1H (0x3<<16) //17:16
1084#define A60931_RG_SSUSB_PLL_PREDIV_U3 (0x3<<8) //9:8
1085#define A60931_RG_SSUSB_PLL_FBKDIV_PE2D (0x7f<<0) //6:0
1086
1087//U3D_reg12
1088#define A60931_RG_SSUSB_PLL_PCW_NCPO_U3 (0x7fffffff<<0) //30:0
1089
1090//U3D_reg13
1091#define A60931_RG_SSUSB_PLL_PCW_NCPO_PE1H (0x7fffffff<<0) //30:0
1092
1093//U3D_reg14
1094#define A60931_RG_SSUSB_PLL_PCW_NCPO_PE1D (0x7fffffff<<0) //30:0
1095
1096//U3D_reg15
1097#define A60931_RG_SSUSB_PLL_PCW_NCPO_PE2H (0x7fffffff<<0) //30:0
1098
1099//U3D_reg16
1100#define A60931_RG_SSUSB_PLL_PCW_NCPO_PE2D (0x7fffffff<<0) //30:0
1101
1102//U3D_reg19
1103#define A60931_RG_SSUSB_PLL_SSC_DELTA1_PE1H (0xffff<<16) //31:16
1104#define A60931_RG_SSUSB_PLL_SSC_DELTA1_U3 (0xffff<<0) //15:0
1105
1106//U3D_reg20
1107#define A60931_RG_SSUSB_PLL_SSC_DELTA1_PE2H (0xffff<<16) //31:16
1108#define A60931_RG_SSUSB_PLL_SSC_DELTA1_PE1D (0xffff<<0) //15:0
1109
1110//U3D_reg21
1111#define A60931_RG_SSUSB_PLL_SSC_DELTA_U3 (0xffff<<16) //31:16
1112#define A60931_RG_SSUSB_PLL_SSC_DELTA1_PE2D (0xffff<<0) //15:0
1113
1114//U3D_reg23
1115#define A60931_RG_SSUSB_PLL_SSC_DELTA_PE1D (0xffff<<16) //31:16
1116#define A60931_RG_SSUSB_PLL_SSC_DELTA_PE1H (0xffff<<0) //15:0
1117
1118//U3D_reg25
1119#define A60931_RG_SSUSB_PLL_SSC_DELTA_PE2D (0xffff<<16) //31:16
1120#define A60931_RG_SSUSB_PLL_SSC_DELTA_PE2H (0xffff<<0) //15:0
1121
1122//U3D_reg26
1123#define A60931_RG_SSUSB_PLL_REFCKDIV_PE2D (0x1<<25) //25:25
1124#define A60931_RG_SSUSB_PLL_REFCKDIV_PE2H (0x1<<24) //24:24
1125#define A60931_RG_SSUSB_PLL_REFCKDIV_PE1D (0x1<<16) //16:16
1126#define A60931_RG_SSUSB_PLL_REFCKDIV_PE1H (0x1<<8) //8:8
1127#define A60931_RG_SSUSB_PLL_REFCKDIV_U3 (0x1<<0) //0:0
1128
1129//U3D_reg28
1130#define A60931_RG_SSUSB_CDR_BPA_PE2D (0x3<<24) //25:24
1131#define A60931_RG_SSUSB_CDR_BPA_PE2H (0x3<<16) //17:16
1132#define A60931_RG_SSUSB_CDR_BPA_PE1D (0x3<<10) //11:10
1133#define A60931_RG_SSUSB_CDR_BPA_PE1H (0x3<<8) //9:8
1134#define A60931_RG_SSUSB_CDR_BPA_U3 (0x3<<0) //1:0
1135
1136//U3D_reg29
1137#define A60931_RG_SSUSB_CDR_BPB_PE2D (0x7<<24) //26:24
1138#define A60931_RG_SSUSB_CDR_BPB_PE2H (0x7<<16) //18:16
1139#define A60931_RG_SSUSB_CDR_BPB_PE1D (0x7<<6) //8:6
1140#define A60931_RG_SSUSB_CDR_BPB_PE1H (0x7<<3) //5:3
1141#define A60931_RG_SSUSB_CDR_BPB_U3 (0x7<<0) //2:0
1142
1143//U3D_reg30
1144#define A60931_RG_SSUSB_CDR_BR_PE2D (0x7<<24) //26:24
1145#define A60931_RG_SSUSB_CDR_BR_PE2H (0x7<<16) //18:16
1146#define A60931_RG_SSUSB_CDR_BR_PE1D (0x7<<6) //8:6
1147#define A60931_RG_SSUSB_CDR_BR_PE1H (0x7<<3) //5:3
1148#define A60931_RG_SSUSB_CDR_BR_U3 (0x7<<0) //2:0
1149
1150//U3D_reg31
1151#define A60931_RG_SSUSB_CDR_FBDIV_PE2H (0x7f<<24) //30:24
1152#define A60931_RG_SSUSB_CDR_FBDIV_PE1D (0x7f<<16) //22:16
1153#define A60931_RG_SSUSB_CDR_FBDIV_PE1H (0x7f<<8) //14:8
1154#define A60931_RG_SSUSB_CDR_FBDIV_U3 (0x7f<<0) //6:0
1155
1156//U3D_reg32
1157#define A60931_RG_SSUSB_EQ_RSTEP1_PE2D (0x3<<30) //31:30
1158#define A60931_RG_SSUSB_EQ_RSTEP1_PE2H (0x3<<28) //29:28
1159#define A60931_RG_SSUSB_EQ_RSTEP1_PE1D (0x3<<26) //27:26
1160#define A60931_RG_SSUSB_EQ_RSTEP1_PE1H (0x3<<24) //25:24
1161#define A60931_RG_SSUSB_EQ_RSTEP1_U3 (0x3<<22) //23:22
1162#define A60931_RG_SSUSB_LFPS_DEGLITCH_PE2D (0x3<<20) //21:20
1163#define A60931_RG_SSUSB_LFPS_DEGLITCH_PE2H (0x3<<18) //19:18
1164#define A60931_RG_SSUSB_LFPS_DEGLITCH_PE1D (0x3<<16) //17:16
1165#define A60931_RG_SSUSB_LFPS_DEGLITCH_PE1H (0x3<<14) //15:14
1166#define A60931_RG_SSUSB_LFPS_DEGLITCH_U3 (0x3<<12) //13:12
1167#define A60931_RG_SSUSB_CDR_KVSEL_PE2D (0x1<<11) //11:11
1168#define A60931_RG_SSUSB_CDR_KVSEL_PE2H (0x1<<10) //10:10
1169#define A60931_RG_SSUSB_CDR_KVSEL_PE1D (0x1<<9) //9:9
1170#define A60931_RG_SSUSB_CDR_KVSEL_PE1H (0x1<<8) //8:8
1171#define A60931_RG_SSUSB_CDR_KVSEL_U3 (0x1<<7) //7:7
1172#define A60931_RG_SSUSB_CDR_FBDIV_PE2D (0x7f<<0) //6:0
1173
1174//U3D_reg33
1175#define A60931_RG_SSUSB_RX_CMPWD_PE2D (0x1<<26) //26:26
1176#define A60931_RG_SSUSB_RX_CMPWD_PE2H (0x1<<25) //25:25
1177#define A60931_RG_SSUSB_RX_CMPWD_PE1D (0x1<<24) //24:24
1178#define A60931_RG_SSUSB_RX_CMPWD_PE1H (0x1<<23) //23:23
1179#define A60931_RG_SSUSB_RX_CMPWD_U3 (0x1<<16) //16:16
1180#define A60931_RG_SSUSB_EQ_RSTEP2_PE2D (0x3<<8) //9:8
1181#define A60931_RG_SSUSB_EQ_RSTEP2_PE2H (0x3<<6) //7:6
1182#define A60931_RG_SSUSB_EQ_RSTEP2_PE1D (0x3<<4) //5:4
1183#define A60931_RG_SSUSB_EQ_RSTEP2_PE1H (0x3<<2) //3:2
1184#define A60931_RG_SSUSB_EQ_RSTEP2_U3 (0x3<<0) //1:0
1185
1186/* OFFSET DEFINITION */
1187
1188//U3D_reg0
1189#define A60931_RG_PCIE_SPEED_PE2D_OFST (24)
1190#define A60931_RG_PCIE_SPEED_PE2H_OFST (23)
1191#define A60931_RG_PCIE_SPEED_PE1D_OFST (22)
1192#define A60931_RG_PCIE_SPEED_PE1H_OFST (21)
1193#define A60931_RG_PCIE_SPEED_U3_OFST (20)
1194#define A60931_RG_SSUSB_XTAL_EXT_EN_PE2D_OFST (18)
1195#define A60931_RG_SSUSB_XTAL_EXT_EN_PE2H_OFST (16)
1196#define A60931_RG_SSUSB_XTAL_EXT_EN_PE1D_OFST (14)
1197#define A60931_RG_SSUSB_XTAL_EXT_EN_PE1H_OFST (12)
1198#define A60931_RG_SSUSB_XTAL_EXT_EN_U3_OFST (10)
1199#define A60931_RG_SSUSB_CDR_REFCK_SEL_PE2D_OFST (8)
1200#define A60931_RG_SSUSB_CDR_REFCK_SEL_PE2H_OFST (6)
1201#define A60931_RG_SSUSB_CDR_REFCK_SEL_PE1D_OFST (4)
1202#define A60931_RG_SSUSB_CDR_REFCK_SEL_PE1H_OFST (2)
1203#define A60931_RG_SSUSB_CDR_REFCK_SEL_U3_OFST (0)
1204
1205//U3D_reg1
1206#define A60931_RG_USB20_REFCK_SEL_PE2D_OFST (30)
1207#define A60931_RG_USB20_REFCK_SEL_PE2H_OFST (29)
1208#define A60931_RG_USB20_REFCK_SEL_PE1D_OFST (28)
1209#define A60931_RG_USB20_REFCK_SEL_PE1H_OFST (27)
1210#define A60931_RG_USB20_REFCK_SEL_U3_OFST (26)
1211#define A60931_RG_PCIE_REFCK_DIV4_PE2D_OFST (25)
1212#define A60931_RG_PCIE_REFCK_DIV4_PE2H_OFST (24)
1213#define A60931_RG_PCIE_REFCK_DIV4_PE1D_OFST (18)
1214#define A60931_RG_PCIE_REFCK_DIV4_PE1H_OFST (17)
1215#define A60931_RG_PCIE_REFCK_DIV4_U3_OFST (16)
1216#define A60931_RG_PCIE_MODE_PE2D_OFST (8)
1217#define A60931_RG_PCIE_MODE_PE2H_OFST (3)
1218#define A60931_RG_PCIE_MODE_PE1D_OFST (2)
1219#define A60931_RG_PCIE_MODE_PE1H_OFST (1)
1220#define A60931_RG_PCIE_MODE_U3_OFST (0)
1221
1222//U3D_reg4
1223#define A60931_RG_SSUSB_PLL_DIVEN_PE2D_OFST (22)
1224#define A60931_RG_SSUSB_PLL_DIVEN_PE2H_OFST (19)
1225#define A60931_RG_SSUSB_PLL_DIVEN_PE1D_OFST (16)
1226#define A60931_RG_SSUSB_PLL_DIVEN_PE1H_OFST (13)
1227#define A60931_RG_SSUSB_PLL_DIVEN_U3_OFST (10)
1228#define A60931_RG_SSUSB_PLL_BC_PE2D_OFST (8)
1229#define A60931_RG_SSUSB_PLL_BC_PE2H_OFST (6)
1230#define A60931_RG_SSUSB_PLL_BC_PE1D_OFST (4)
1231#define A60931_RG_SSUSB_PLL_BC_PE1H_OFST (2)
1232#define A60931_RG_SSUSB_PLL_BC_U3_OFST (0)
1233
1234//U3D_reg5
1235#define A60931_RG_SSUSB_PLL_BR_PE2D_OFST (30)
1236#define A60931_RG_SSUSB_PLL_BR_PE2H_OFST (28)
1237#define A60931_RG_SSUSB_PLL_BR_PE1D_OFST (26)
1238#define A60931_RG_SSUSB_PLL_BR_PE1H_OFST (24)
1239#define A60931_RG_SSUSB_PLL_BR_U3_OFST (22)
1240#define A60931_RG_SSUSB_PLL_IC_PE2D_OFST (16)
1241#define A60931_RG_SSUSB_PLL_IC_PE2H_OFST (12)
1242#define A60931_RG_SSUSB_PLL_IC_PE1D_OFST (8)
1243#define A60931_RG_SSUSB_PLL_IC_PE1H_OFST (4)
1244#define A60931_RG_SSUSB_PLL_IC_U3_OFST (0)
1245
1246//U3D_reg6
1247#define A60931_RG_SSUSB_PLL_IR_PE2D_OFST (24)
1248#define A60931_RG_SSUSB_PLL_IR_PE2H_OFST (16)
1249#define A60931_RG_SSUSB_PLL_IR_PE1D_OFST (8)
1250#define A60931_RG_SSUSB_PLL_IR_PE1H_OFST (4)
1251#define A60931_RG_SSUSB_PLL_IR_U3_OFST (0)
1252
1253//U3D_reg7
1254#define A60931_RG_SSUSB_PLL_BP_PE2D_OFST (24)
1255#define A60931_RG_SSUSB_PLL_BP_PE2H_OFST (16)
1256#define A60931_RG_SSUSB_PLL_BP_PE1D_OFST (8)
1257#define A60931_RG_SSUSB_PLL_BP_PE1H_OFST (4)
1258#define A60931_RG_SSUSB_PLL_BP_U3_OFST (0)
1259
1260//U3D_reg8
1261#define A60931_RG_SSUSB_PLL_FBKSEL_PE2D_OFST (24)
1262#define A60931_RG_SSUSB_PLL_FBKSEL_PE2H_OFST (16)
1263#define A60931_RG_SSUSB_PLL_FBKSEL_PE1D_OFST (8)
1264#define A60931_RG_SSUSB_PLL_FBKSEL_PE1H_OFST (2)
1265#define A60931_RG_SSUSB_PLL_FBKSEL_U3_OFST (0)
1266
1267//U3D_reg9
1268#define A60931_RG_SSUSB_PLL_FBKDIV_PE2H_OFST (24)
1269#define A60931_RG_SSUSB_PLL_FBKDIV_PE1D_OFST (16)
1270#define A60931_RG_SSUSB_PLL_FBKDIV_PE1H_OFST (8)
1271#define A60931_RG_SSUSB_PLL_FBKDIV_U3_OFST (0)
1272
1273//U3D_reg10
1274#define A60931_RG_SSUSB_PLL_PREDIV_PE2D_OFST (26)
1275#define A60931_RG_SSUSB_PLL_PREDIV_PE2H_OFST (24)
1276#define A60931_RG_SSUSB_PLL_PREDIV_PE1D_OFST (18)
1277#define A60931_RG_SSUSB_PLL_PREDIV_PE1H_OFST (16)
1278#define A60931_RG_SSUSB_PLL_PREDIV_U3_OFST (8)
1279#define A60931_RG_SSUSB_PLL_FBKDIV_PE2D_OFST (0)
1280
1281//U3D_reg12
1282#define A60931_RG_SSUSB_PLL_PCW_NCPO_U3_OFST (0)
1283
1284//U3D_reg13
1285#define A60931_RG_SSUSB_PLL_PCW_NCPO_PE1H_OFST (0)
1286
1287//U3D_reg14
1288#define A60931_RG_SSUSB_PLL_PCW_NCPO_PE1D_OFST (0)
1289
1290//U3D_reg15
1291#define A60931_RG_SSUSB_PLL_PCW_NCPO_PE2H_OFST (0)
1292
1293//U3D_reg16
1294#define A60931_RG_SSUSB_PLL_PCW_NCPO_PE2D_OFST (0)
1295
1296//U3D_reg19
1297#define A60931_RG_SSUSB_PLL_SSC_DELTA1_PE1H_OFST (16)
1298#define A60931_RG_SSUSB_PLL_SSC_DELTA1_U3_OFST (0)
1299
1300//U3D_reg20
1301#define A60931_RG_SSUSB_PLL_SSC_DELTA1_PE2H_OFST (16)
1302#define A60931_RG_SSUSB_PLL_SSC_DELTA1_PE1D_OFST (0)
1303
1304//U3D_reg21
1305#define A60931_RG_SSUSB_PLL_SSC_DELTA_U3_OFST (16)
1306#define A60931_RG_SSUSB_PLL_SSC_DELTA1_PE2D_OFST (0)
1307
1308//U3D_reg23
1309#define A60931_RG_SSUSB_PLL_SSC_DELTA_PE1D_OFST (16)
1310#define A60931_RG_SSUSB_PLL_SSC_DELTA_PE1H_OFST (0)
1311
1312//U3D_reg25
1313#define A60931_RG_SSUSB_PLL_SSC_DELTA_PE2D_OFST (16)
1314#define A60931_RG_SSUSB_PLL_SSC_DELTA_PE2H_OFST (0)
1315
1316//U3D_reg26
1317#define A60931_RG_SSUSB_PLL_REFCKDIV_PE2D_OFST (25)
1318#define A60931_RG_SSUSB_PLL_REFCKDIV_PE2H_OFST (24)
1319#define A60931_RG_SSUSB_PLL_REFCKDIV_PE1D_OFST (16)
1320#define A60931_RG_SSUSB_PLL_REFCKDIV_PE1H_OFST (8)
1321#define A60931_RG_SSUSB_PLL_REFCKDIV_U3_OFST (0)
1322
1323//U3D_reg28
1324#define A60931_RG_SSUSB_CDR_BPA_PE2D_OFST (24)
1325#define A60931_RG_SSUSB_CDR_BPA_PE2H_OFST (16)
1326#define A60931_RG_SSUSB_CDR_BPA_PE1D_OFST (10)
1327#define A60931_RG_SSUSB_CDR_BPA_PE1H_OFST (8)
1328#define A60931_RG_SSUSB_CDR_BPA_U3_OFST (0)
1329
1330//U3D_reg29
1331#define A60931_RG_SSUSB_CDR_BPB_PE2D_OFST (24)
1332#define A60931_RG_SSUSB_CDR_BPB_PE2H_OFST (16)
1333#define A60931_RG_SSUSB_CDR_BPB_PE1D_OFST (6)
1334#define A60931_RG_SSUSB_CDR_BPB_PE1H_OFST (3)
1335#define A60931_RG_SSUSB_CDR_BPB_U3_OFST (0)
1336
1337//U3D_reg30
1338#define A60931_RG_SSUSB_CDR_BR_PE2D_OFST (24)
1339#define A60931_RG_SSUSB_CDR_BR_PE2H_OFST (16)
1340#define A60931_RG_SSUSB_CDR_BR_PE1D_OFST (6)
1341#define A60931_RG_SSUSB_CDR_BR_PE1H_OFST (3)
1342#define A60931_RG_SSUSB_CDR_BR_U3_OFST (0)
1343
1344//U3D_reg31
1345#define A60931_RG_SSUSB_CDR_FBDIV_PE2H_OFST (24)
1346#define A60931_RG_SSUSB_CDR_FBDIV_PE1D_OFST (16)
1347#define A60931_RG_SSUSB_CDR_FBDIV_PE1H_OFST (8)
1348#define A60931_RG_SSUSB_CDR_FBDIV_U3_OFST (0)
1349
1350//U3D_reg32
1351#define A60931_RG_SSUSB_EQ_RSTEP1_PE2D_OFST (30)
1352#define A60931_RG_SSUSB_EQ_RSTEP1_PE2H_OFST (28)
1353#define A60931_RG_SSUSB_EQ_RSTEP1_PE1D_OFST (26)
1354#define A60931_RG_SSUSB_EQ_RSTEP1_PE1H_OFST (24)
1355#define A60931_RG_SSUSB_EQ_RSTEP1_U3_OFST (22)
1356#define A60931_RG_SSUSB_LFPS_DEGLITCH_PE2D_OFST (20)
1357#define A60931_RG_SSUSB_LFPS_DEGLITCH_PE2H_OFST (18)
1358#define A60931_RG_SSUSB_LFPS_DEGLITCH_PE1D_OFST (16)
1359#define A60931_RG_SSUSB_LFPS_DEGLITCH_PE1H_OFST (14)
1360#define A60931_RG_SSUSB_LFPS_DEGLITCH_U3_OFST (12)
1361#define A60931_RG_SSUSB_CDR_KVSEL_PE2D_OFST (11)
1362#define A60931_RG_SSUSB_CDR_KVSEL_PE2H_OFST (10)
1363#define A60931_RG_SSUSB_CDR_KVSEL_PE1D_OFST (9)
1364#define A60931_RG_SSUSB_CDR_KVSEL_PE1H_OFST (8)
1365#define A60931_RG_SSUSB_CDR_KVSEL_U3_OFST (7)
1366#define A60931_RG_SSUSB_CDR_FBDIV_PE2D_OFST (0)
1367
1368//U3D_reg33
1369#define A60931_RG_SSUSB_RX_CMPWD_PE2D_OFST (26)
1370#define A60931_RG_SSUSB_RX_CMPWD_PE2H_OFST (25)
1371#define A60931_RG_SSUSB_RX_CMPWD_PE1D_OFST (24)
1372#define A60931_RG_SSUSB_RX_CMPWD_PE1H_OFST (23)
1373#define A60931_RG_SSUSB_RX_CMPWD_U3_OFST (16)
1374#define A60931_RG_SSUSB_EQ_RSTEP2_PE2D_OFST (8)
1375#define A60931_RG_SSUSB_EQ_RSTEP2_PE2H_OFST (6)
1376#define A60931_RG_SSUSB_EQ_RSTEP2_PE1D_OFST (4)
1377#define A60931_RG_SSUSB_EQ_RSTEP2_PE1H_OFST (2)
1378#define A60931_RG_SSUSB_EQ_RSTEP2_U3_OFST (0)
1379
1380///////////////////////////////////////////////////////////////////////////////
1381
1382struct a60931_u3phyd_reg_a {
1383 //0x0
1384 u32 phyd_mix0;
1385 u32 phyd_mix1;
1386 u32 phyd_lfps0;
1387 u32 phyd_lfps1;
1388 //0x10
1389 u32 phyd_impcal0;
1390 u32 phyd_impcal1;
1391 u32 phyd_txpll0;
1392 u32 phyd_txpll1;
1393 //0x20
1394 u32 phyd_txpll2;
1395 u32 phyd_fl0;
1396 u32 phyd_mix2;
1397 u32 phyd_rx0;
1398 //0x30
1399 u32 phyd_t2rlb;
1400 u32 phyd_cppat;
1401 u32 phyd_mix3;
1402 u32 phyd_ebufctl;
1403 //0x40
1404 u32 phyd_pipe0;
1405 u32 phyd_pipe1;
1406 u32 phyd_mix4;
1407 u32 phyd_ckgen0;
1408 //0x50
1409 u32 phyd_mix5;
1410 u32 phyd_reserved;
1411 u32 phyd_cdr0;
1412 u32 phyd_cdr1;
1413 //0x60
1414 u32 phyd_pll_0;
1415 u32 phyd_pll_1;
1416 u32 phyd_bcn_det_1;
1417 u32 phyd_bcn_det_2;
1418 //0x70
1419 u32 eq0;
1420 u32 eq1;
1421 u32 eq2;
1422 u32 eq3;
1423 //0x80
1424 u32 eq_eye0;
1425 u32 eq_eye1;
1426 u32 eq_eye2;
1427 u32 eq_dfe0;
1428 //0x90
1429 u32 eq_dfe1;
1430 u32 eq_dfe2;
1431 u32 eq_dfe3;
1432 u32 reserve0;
1433 //0xa0
1434 u32 phyd_mon0;
1435 u32 phyd_mon1;
1436 u32 phyd_mon2;
1437 u32 phyd_mon3;
1438 //0xb0
1439 u32 phyd_mon4;
1440 u32 phyd_mon5;
1441 u32 phyd_mon6;
1442 u32 phyd_mon7;
1443 //0xc0
1444 u32 phya_rx_mon0;
1445 u32 phya_rx_mon1;
1446 u32 phya_rx_mon2;
1447 u32 phya_rx_mon3;
1448 //0xd0
1449 u32 phya_rx_mon4;
1450 u32 phya_rx_mon5;
1451 u32 phyd_cppat2;
1452 u32 eq_eye3;
1453 //0xe0
1454 u32 kband_out;
1455 u32 kband_out1;
1456};
1457
1458//U3D_PHYD_MIX0
1459#define A60931_RG_SSUSB_P_P3_TX_NG (0x1<<31) //31:31
1460#define A60931_RG_SSUSB_TSEQ_EN (0x1<<30) //30:30
1461#define A60931_RG_SSUSB_TSEQ_POLEN (0x1<<29) //29:29
1462#define A60931_RG_SSUSB_TSEQ_POL (0x1<<28) //28:28
1463#define A60931_RG_SSUSB_P_P3_PCLK_NG (0x1<<27) //27:27
1464#define A60931_RG_SSUSB_TSEQ_TH (0x7<<24) //26:24
1465#define A60931_RG_SSUSB_PRBS_BERTH (0xff<<16) //23:16
1466#define A60931_RG_SSUSB_DISABLE_PHY_U2_ON (0x1<<15) //15:15
1467#define A60931_RG_SSUSB_DISABLE_PHY_U2_OFF (0x1<<14) //14:14
1468#define A60931_RG_SSUSB_PRBS_EN (0x1<<13) //13:13
1469#define A60931_RG_SSUSB_BPSLOCK (0x1<<12) //12:12
1470#define A60931_RG_SSUSB_RTCOMCNT (0xf<<8) //11:8
1471#define A60931_RG_SSUSB_COMCNT (0xf<<4) //7:4
1472#define A60931_RG_SSUSB_PRBSEL_CALIB (0xf<<0) //3:0
1473
1474//U3D_PHYD_MIX1
1475#define A60931_RG_SSUSB_SLEEP_EN (0x1<<31) //31:31
1476#define A60931_RG_SSUSB_PRBSEL_PCS (0x7<<28) //30:28
1477#define A60931_RG_SSUSB_TXLFPS_PRD (0xf<<24) //27:24
1478#define A60931_RG_SSUSB_P_RX_P0S_CK (0x1<<23) //23:23
1479#define A60931_RG_SSUSB_P_TX_P0S_CK (0x1<<22) //22:22
1480#define A60931_RG_SSUSB_PDNCTL (0x3f<<16) //21:16
1481#define A60931_RG_SSUSB_TX_DRV_EN (0x1<<15) //15:15
1482#define A60931_RG_SSUSB_TX_DRV_SEL (0x1<<14) //14:14
1483#define A60931_RG_SSUSB_TX_DRV_DLY (0x3f<<8) //13:8
1484#define A60931_RG_SSUSB_BERT_EN (0x1<<7) //7:7
1485#define A60931_RG_SSUSB_SCP_TH (0x7<<4) //6:4
1486#define A60931_RG_SSUSB_SCP_EN (0x1<<3) //3:3
1487#define A60931_RG_SSUSB_RXANSIDEC_TEST (0x7<<0) //2:0
1488
1489//U3D_PHYD_LFPS0
1490#define A60931_RG_SSUSB_LFPS_PWD (0x1<<30) //30:30
1491#define A60931_RG_SSUSB_FORCE_LFPS_PWD (0x1<<29) //29:29
1492#define A60931_RG_SSUSB_RXLFPS_OVF (0x1f<<24) //28:24
1493#define A60931_RG_SSUSB_P3_ENTRY_SEL (0x1<<23) //23:23
1494#define A60931_RG_SSUSB_P3_ENTRY (0x1<<22) //22:22
1495#define A60931_RG_SSUSB_RXLFPS_CDRSEL (0x3<<20) //21:20
1496#define A60931_RG_SSUSB_RXLFPS_CDRTH (0xf<<16) //19:16
1497#define A60931_RG_SSUSB_LOCK5G_BLOCK (0x1<<15) //15:15
1498#define A60931_RG_SSUSB_TFIFO_EXT_D_SEL (0x1<<14) //14:14
1499#define A60931_RG_SSUSB_TFIFO_NO_EXTEND (0x1<<13) //13:13
1500#define A60931_RG_SSUSB_RXLFPS_LOB (0x1f<<8) //12:8
1501#define A60931_RG_SSUSB_TXLFPS_EN (0x1<<7) //7:7
1502#define A60931_RG_SSUSB_TXLFPS_SEL (0x1<<6) //6:6
1503#define A60931_RG_SSUSB_RXLFPS_CDRLOCK (0x1<<5) //5:5
1504#define A60931_RG_SSUSB_RXLFPS_UPB (0x1f<<0) //4:0
1505
1506//U3D_PHYD_LFPS1
1507#define A60931_RG_SSUSB_RX_IMP_BIAS (0xf<<28) //31:28
1508#define A60931_RG_SSUSB_TX_IMP_BIAS (0xf<<24) //27:24
1509#define A60931_RG_SSUSB_FWAKE_TH (0x3f<<16) //21:16
1510#define A60931_RG_SSUSB_P1_ENTRY_SEL (0x1<<14) //14:14
1511#define A60931_RG_SSUSB_P1_ENTRY (0x1<<13) //13:13
1512#define A60931_RG_SSUSB_RXLFPS_UDF (0x1f<<8) //12:8
1513#define A60931_RG_SSUSB_RXLFPS_P0IDLETH (0xff<<0) //7:0
1514
1515//U3D_PHYD_IMPCAL0
1516#define A60931_RG_SSUSB_FORCE_TX_IMPSEL (0x1<<31) //31:31
1517#define A60931_RG_SSUSB_TX_IMPCAL_EN (0x1<<30) //30:30
1518#define A60931_RG_SSUSB_FORCE_TX_IMPCAL_EN (0x1<<29) //29:29
1519#define A60931_RG_SSUSB_TX_IMPSEL (0x1f<<24) //28:24
1520#define A60931_RG_SSUSB_TX_IMPCAL_CALCYC (0x3f<<16) //21:16
1521#define A60931_RG_SSUSB_TX_IMPCAL_STBCYC (0x1f<<10) //14:10
1522#define A60931_RG_SSUSB_TX_IMPCAL_CYCCNT (0x3ff<<0) //9:0
1523
1524//U3D_PHYD_IMPCAL1
1525#define A60931_RG_SSUSB_FORCE_RX_IMPSEL (0x1<<31) //31:31
1526#define A60931_RG_SSUSB_RX_IMPCAL_EN (0x1<<30) //30:30
1527#define A60931_RG_SSUSB_FORCE_RX_IMPCAL_EN (0x1<<29) //29:29
1528#define A60931_RG_SSUSB_RX_IMPSEL (0x1f<<24) //28:24
1529#define A60931_RG_SSUSB_RX_IMPCAL_CALCYC (0x3f<<16) //21:16
1530#define A60931_RG_SSUSB_RX_IMPCAL_STBCYC (0x1f<<10) //14:10
1531#define A60931_RG_SSUSB_RX_IMPCAL_CYCCNT (0x3ff<<0) //9:0
1532
1533//U3D_PHYD_TXPLL0
1534#define A60931_RG_SSUSB_TXPLL_DDSEN_CYC (0x1f<<27) //31:27
1535#define A60931_RG_SSUSB_TXPLL_ON (0x1<<26) //26:26
1536#define A60931_RG_SSUSB_FORCE_TXPLLON (0x1<<25) //25:25
1537#define A60931_RG_SSUSB_TXPLL_STBCYC (0x1ff<<16) //24:16
1538#define A60931_RG_SSUSB_TXPLL_NCPOCHG_CYC (0xf<<12) //15:12
1539#define A60931_RG_SSUSB_TXPLL_NCPOEN_CYC (0x3<<10) //11:10
1540#define A60931_RG_SSUSB_TXPLL_DDSRSTB_CYC (0x7<<0) //2:0
1541
1542//U3D_PHYD_TXPLL1
1543#define A60931_RG_SSUSB_PLL_NCPO_EN (0x1<<31) //31:31
1544#define A60931_RG_SSUSB_PLL_FIFO_START_MAN (0x1<<30) //30:30
1545#define A60931_RG_SSUSB_PLL_NCPO_CHG (0x1<<28) //28:28
1546#define A60931_RG_SSUSB_PLL_DDS_RSTB (0x1<<27) //27:27
1547#define A60931_RG_SSUSB_PLL_DDS_PWDB (0x1<<26) //26:26
1548#define A60931_RG_SSUSB_PLL_DDSEN (0x1<<25) //25:25
1549#define A60931_RG_SSUSB_PLL_AUTOK_VCO (0x1<<24) //24:24
1550#define A60931_RG_SSUSB_PLL_PWD (0x1<<23) //23:23
1551#define A60931_RG_SSUSB_RX_AFE_PWD (0x1<<22) //22:22
1552#define A60931_RG_SSUSB_PLL_TCADJ (0x3f<<16) //21:16
1553#define A60931_RG_SSUSB_FORCE_CDR_TCADJ (0x1<<15) //15:15
1554#define A60931_RG_SSUSB_FORCE_CDR_AUTOK_VCO (0x1<<14) //14:14
1555#define A60931_RG_SSUSB_FORCE_CDR_PWD (0x1<<13) //13:13
1556#define A60931_RG_SSUSB_FORCE_PLL_NCPO_EN (0x1<<12) //12:12
1557#define A60931_RG_SSUSB_FORCE_PLL_FIFO_START_MAN (0x1<<11) //11:11
1558#define A60931_RG_SSUSB_FORCE_PLL_NCPO_CHG (0x1<<9) //9:9
1559#define A60931_RG_SSUSB_FORCE_PLL_DDS_RSTB (0x1<<8) //8:8
1560#define A60931_RG_SSUSB_FORCE_PLL_DDS_PWDB (0x1<<7) //7:7
1561#define A60931_RG_SSUSB_FORCE_PLL_DDSEN (0x1<<6) //6:6
1562#define A60931_RG_SSUSB_FORCE_PLL_TCADJ (0x1<<5) //5:5
1563#define A60931_RG_SSUSB_FORCE_PLL_AUTOK_VCO (0x1<<4) //4:4
1564#define A60931_RG_SSUSB_FORCE_PLL_PWD (0x1<<3) //3:3
1565#define A60931_RG_SSUSB_FLT_1_DISPERR_B (0x1<<2) //2:2
1566
1567//U3D_PHYD_TXPLL2
1568#define A60931_RG_SSUSB_TX_LFPS_EN (0x1<<31) //31:31
1569#define A60931_RG_SSUSB_FORCE_TX_LFPS_EN (0x1<<30) //30:30
1570#define A60931_RG_SSUSB_TX_LFPS (0x1<<29) //29:29
1571#define A60931_RG_SSUSB_FORCE_TX_LFPS (0x1<<28) //28:28
1572#define A60931_RG_SSUSB_RXPLL_STB (0x1<<27) //27:27
1573#define A60931_RG_SSUSB_TXPLL_STB (0x1<<26) //26:26
1574#define A60931_RG_SSUSB_FORCE_RXPLL_STB (0x1<<25) //25:25
1575#define A60931_RG_SSUSB_FORCE_TXPLL_STB (0x1<<24) //24:24
1576#define A60931_RG_SSUSB_RXPLL_REFCKSEL (0x1<<16) //16:16
1577#define A60931_RG_SSUSB_RXPLL_STBMODE (0x1<<11) //11:11
1578#define A60931_RG_SSUSB_RXPLL_ON (0x1<<10) //10:10
1579#define A60931_RG_SSUSB_FORCE_RXPLLON (0x1<<9) //9:9
1580#define A60931_RG_SSUSB_FORCE_RX_AFE_PWD (0x1<<8) //8:8
1581#define A60931_RG_SSUSB_CDR_AUTOK_VCO (0x1<<7) //7:7
1582#define A60931_RG_SSUSB_CDR_PWD (0x1<<6) //6:6
1583#define A60931_RG_SSUSB_CDR_TCADJ (0x3f<<0) //5:0
1584
1585//U3D_PHYD_FL0
1586#define A60931_RG_SSUSB_RX_FL_TARGET (0xffff<<16) //31:16
1587#define A60931_RG_SSUSB_RX_FL_CYCLECNT (0xffff<<0) //15:0
1588
1589//U3D_PHYD_MIX2
1590#define A60931_RG_SSUSB_RX_EQ_RST (0x1<<31) //31:31
1591#define A60931_RG_SSUSB_RX_EQ_RST_SEL (0x1<<30) //30:30
1592#define A60931_RG_SSUSB_RXVAL_RST (0x1<<29) //29:29
1593#define A60931_RG_SSUSB_RXVAL_CNT (0x1f<<24) //28:24
1594#define A60931_RG_SSUSB_CDROS_EN (0x1<<18) //18:18
1595#define A60931_RG_SSUSB_CDR_LCKOP (0x3<<16) //17:16
1596#define A60931_RG_SSUSB_RX_FL_LOCKTH (0xf<<8) //11:8
1597#define A60931_RG_SSUSB_RX_FL_OFFSET (0xff<<0) //7:0
1598
1599//U3D_PHYD_RX0
1600#define A60931_RG_SSUSB_T2RLB_BERTH (0xff<<24) //31:24
1601#define A60931_RG_SSUSB_T2RLB_PAT (0xff<<16) //23:16
1602#define A60931_RG_SSUSB_T2RLB_EN (0x1<<15) //15:15
1603#define A60931_RG_SSUSB_T2RLB_BPSCRAMB (0x1<<14) //14:14
1604#define A60931_RG_SSUSB_T2RLB_SERIAL (0x1<<13) //13:13
1605#define A60931_RG_SSUSB_T2RLB_MODE (0x3<<11) //12:11
1606#define A60931_RG_SSUSB_RX_SAOSC_EN (0x1<<10) //10:10
1607#define A60931_RG_SSUSB_RX_SAOSC_EN_SEL (0x1<<9) //9:9
1608#define A60931_RG_SSUSB_RX_DFE_OPTION (0x1<<8) //8:8
1609#define A60931_RG_SSUSB_RX_DFE_EN (0x1<<7) //7:7
1610#define A60931_RG_SSUSB_RX_DFE_EN_SEL (0x1<<6) //6:6
1611#define A60931_RG_SSUSB_RX_EQ_EN (0x1<<5) //5:5
1612#define A60931_RG_SSUSB_RX_EQ_EN_SEL (0x1<<4) //4:4
1613#define A60931_RG_SSUSB_RX_SAOSC_RST (0x1<<3) //3:3
1614#define A60931_RG_SSUSB_RX_SAOSC_RST_SEL (0x1<<2) //2:2
1615#define A60931_RG_SSUSB_RX_DFE_RST (0x1<<1) //1:1
1616#define A60931_RG_SSUSB_RX_DFE_RST_SEL (0x1<<0) //0:0
1617
1618//U3D_PHYD_T2RLB
1619#define A60931_RG_SSUSB_EQTRAIN_CH_MODE (0x1<<28) //28:28
1620#define A60931_RG_SSUSB_PRB_OUT_CPPAT (0x1<<27) //27:27
1621#define A60931_RG_SSUSB_BPANSIENC (0x1<<26) //26:26
1622#define A60931_RG_SSUSB_VALID_EN (0x1<<25) //25:25
1623#define A60931_RG_SSUSB_EBUF_SRST (0x1<<24) //24:24
1624#define A60931_RG_SSUSB_K_EMP (0xf<<20) //23:20
1625#define A60931_RG_SSUSB_K_FUL (0xf<<16) //19:16
1626#define A60931_RG_SSUSB_T2RLB_BDATRST (0xf<<12) //15:12
1627#define A60931_RG_SSUSB_P_T2RLB_SKP_EN (0x1<<10) //10:10
1628#define A60931_RG_SSUSB_T2RLB_PATMODE (0x3<<8) //9:8
1629#define A60931_RG_SSUSB_T2RLB_TSEQCNT (0xff<<0) //7:0
1630
1631//U3D_PHYD_CPPAT
1632#define A60931_RG_SSUSB_CPPAT_PROGRAM_EN (0x1<<24) //24:24
1633#define A60931_RG_SSUSB_CPPAT_TOZ (0x3<<21) //22:21
1634#define A60931_RG_SSUSB_CPPAT_PRBS_EN (0x1<<20) //20:20
1635#define A60931_RG_SSUSB_CPPAT_OUT_TMP2 (0xf<<16) //19:16
1636#define A60931_RG_SSUSB_CPPAT_OUT_TMP1 (0xff<<8) //15:8
1637#define A60931_RG_SSUSB_CPPAT_OUT_TMP0 (0xff<<0) //7:0
1638
1639//U3D_PHYD_MIX3
1640#define A60931_RG_SSUSB_CDR_TCADJ_MINUS (0x1<<31) //31:31
1641#define A60931_RG_SSUSB_P_CDROS_EN (0x1<<30) //30:30
1642#define A60931_RG_SSUSB_P_P2_TX_DRV_DIS (0x1<<28) //28:28
1643#define A60931_RG_SSUSB_CDR_TCADJ_OFFSET (0x7<<24) //26:24
1644#define A60931_RG_SSUSB_PLL_TCADJ_MINUS (0x1<<23) //23:23
1645#define A60931_RG_SSUSB_FORCE_PLL_BIAS_LPF_EN (0x1<<20) //20:20
1646#define A60931_RG_SSUSB_PLL_BIAS_LPF_EN (0x1<<19) //19:19
1647#define A60931_RG_SSUSB_PLL_TCADJ_OFFSET (0x7<<16) //18:16
1648#define A60931_RG_SSUSB_FORCE_PLL_SSCEN (0x1<<15) //15:15
1649#define A60931_RG_SSUSB_PLL_SSCEN (0x1<<14) //14:14
1650#define A60931_RG_SSUSB_FORCE_CDR_PI_PWD (0x1<<13) //13:13
1651#define A60931_RG_SSUSB_CDR_PI_PWD (0x1<<12) //12:12
1652#define A60931_RG_SSUSB_CDR_PI_MODE (0x1<<11) //11:11
1653#define A60931_RG_SSUSB_TXPLL_SSCEN_CYC (0x3ff<<0) //9:0
1654
1655//U3D_PHYD_EBUFCTL
1656#define A60931_RG_SSUSB_EBUFCTL (0xffffffff<<0) //31:0
1657
1658//U3D_PHYD_PIPE0
1659#define A60931_RG_SSUSB_RXTERMINATION (0x1<<30) //30:30
1660#define A60931_RG_SSUSB_RXEQTRAINING (0x1<<29) //29:29
1661#define A60931_RG_SSUSB_RXPOLARITY (0x1<<28) //28:28
1662#define A60931_RG_SSUSB_TXDEEMPH (0x3<<26) //27:26
1663#define A60931_RG_SSUSB_POWERDOWN (0x3<<24) //25:24
1664#define A60931_RG_SSUSB_TXONESZEROS (0x1<<23) //23:23
1665#define A60931_RG_SSUSB_TXELECIDLE (0x1<<22) //22:22
1666#define A60931_RG_SSUSB_TXDETECTRX (0x1<<21) //21:21
1667#define A60931_RG_SSUSB_PIPE_SEL (0x1<<20) //20:20
1668#define A60931_RG_SSUSB_TXDATAK (0xf<<16) //19:16
1669#define A60931_RG_SSUSB_CDR_STABLE_SEL (0x1<<15) //15:15
1670#define A60931_RG_SSUSB_CDR_STABLE (0x1<<14) //14:14
1671#define A60931_RG_SSUSB_CDR_RSTB_SEL (0x1<<13) //13:13
1672#define A60931_RG_SSUSB_CDR_RSTB (0x1<<12) //12:12
1673#define A60931_RG_SSUSB_FRC_PIPE_POWERDOWN (0x1<<11) //11:11
1674#define A60931_RG_SSUSB_P_TXBCN_DIS (0x1<<6) //6:6
1675#define A60931_RG_SSUSB_P_ERROR_SEL (0x3<<4) //5:4
1676#define A60931_RG_SSUSB_TXMARGIN (0x7<<1) //3:1
1677#define A60931_RG_SSUSB_TXCOMPLIANCE (0x1<<0) //0:0
1678
1679//U3D_PHYD_PIPE1
1680#define A60931_RG_SSUSB_TXDATA (0xffffffff<<0) //31:0
1681
1682//U3D_PHYD_MIX4
1683#define A60931_RG_SSUSB_CDROS_CNT (0x3f<<24) //29:24
1684#define A60931_RG_SSUSB_T2RLB_BER_EN (0x1<<16) //16:16
1685#define A60931_RG_SSUSB_T2RLB_BER_RATE (0xffff<<0) //15:0
1686
1687//U3D_PHYD_CKGEN0
1688#define A60931_RG_SSUSB_RFIFO_IMPLAT (0x1<<27) //27:27
1689#define A60931_RG_SSUSB_TFIFO_PSEL (0x7<<24) //26:24
1690#define A60931_RG_SSUSB_CKGEN_PSEL (0x3<<8) //9:8
1691#define A60931_RG_SSUSB_RXCK_INV (0x1<<0) //0:0
1692
1693//U3D_PHYD_MIX5
1694#define A60931_RG_SSUSB_PRB_SEL (0xffff<<16) //31:16
1695#define A60931_RG_SSUSB_RXPLL_STBCYC (0x7ff<<0) //10:0
1696
1697//U3D_PHYD_RESERVED
1698#define A60931_RG_SSUSB_PHYD_RESERVE (0xffffffff<<0) //31:0
1699
1700//U3D_PHYD_CDR0
1701#define A60931_RG_SSUSB_CDR_BIC_LTR (0xf<<28) //31:28
1702#define A60931_RG_SSUSB_CDR_BIC_LTD0 (0xf<<24) //27:24
1703#define A60931_RG_SSUSB_CDR_BC_LTD1 (0x1f<<16) //20:16
1704#define A60931_RG_SSUSB_CDR_BC_LTR (0x1f<<8) //12:8
1705#define A60931_RG_SSUSB_CDR_BC_LTD0 (0x1f<<0) //4:0
1706
1707//U3D_PHYD_CDR1
1708#define A60931_RG_SSUSB_CDR_BIR_LTD1 (0x1f<<24) //28:24
1709#define A60931_RG_SSUSB_CDR_BIR_LTR (0x1f<<16) //20:16
1710#define A60931_RG_SSUSB_CDR_BIR_LTD0 (0x1f<<8) //12:8
1711#define A60931_RG_SSUSB_CDR_BW_SEL (0x3<<6) //7:6
1712#define A60931_RG_SSUSB_CDR_BIC_LTD1 (0xf<<0) //3:0
1713
1714//U3D_PHYD_PLL_0
1715#define A60931_RG_SSUSB_FORCE_CDR_BAND_5G (0x1<<28) //28:28
1716#define A60931_RG_SSUSB_FORCE_CDR_BAND_2P5G (0x1<<27) //27:27
1717#define A60931_RG_SSUSB_FORCE_PLL_BAND_5G (0x1<<26) //26:26
1718#define A60931_RG_SSUSB_FORCE_PLL_BAND_2P5G (0x1<<25) //25:25
1719#define A60931_RG_SSUSB_P_EQ_T_SEL (0x3ff<<15) //24:15
1720#define A60931_RG_SSUSB_PLL_ISO_EN_CYC (0x3ff<<5) //14:5
1721#define A60931_RG_SSUSB_PLLBAND_RECAL (0x1<<4) //4:4
1722#define A60931_RG_SSUSB_PLL_DDS_ISO_EN (0x1<<3) //3:3
1723#define A60931_RG_SSUSB_FORCE_PLL_DDS_ISO_EN (0x1<<2) //2:2
1724#define A60931_RG_SSUSB_PLL_DDS_PWR_ON (0x1<<1) //1:1
1725#define A60931_RG_SSUSB_FORCE_PLL_DDS_PWR_ON (0x1<<0) //0:0
1726
1727//U3D_PHYD_PLL_1
1728#define A60931_RG_SSUSB_CDR_BAND_5G (0xff<<24) //31:24
1729#define A60931_RG_SSUSB_CDR_BAND_2P5G (0xff<<16) //23:16
1730#define A60931_RG_SSUSB_PLL_BAND_5G (0xff<<8) //15:8
1731#define A60931_RG_SSUSB_PLL_BAND_2P5G (0xff<<0) //7:0
1732
1733//U3D_PHYD_BCN_DET_1
1734#define A60931_RG_SSUSB_P_BCN_OBS_PRD (0xffff<<16) //31:16
1735#define A60931_RG_SSUSB_U_BCN_OBS_PRD (0xffff<<0) //15:0
1736
1737//U3D_PHYD_BCN_DET_2
1738#define A60931_RG_SSUSB_P_BCN_OBS_SEL (0xfff<<16) //27:16
1739#define A60931_RG_SSUSB_BCN_DET_DIS (0x1<<12) //12:12
1740#define A60931_RG_SSUSB_U_BCN_OBS_SEL (0xfff<<0) //11:0
1741
1742//U3D_EQ0
1743#define A60931_RG_SSUSB_EQ_DLHL_LFI (0x7f<<24) //30:24
1744#define A60931_RG_SSUSB_EQ_DHHL_LFI (0x7f<<16) //22:16
1745#define A60931_RG_SSUSB_EQ_DD0HOS_LFI (0x7f<<8) //14:8
1746#define A60931_RG_SSUSB_EQ_DD0LOS_LFI (0x7f<<0) //6:0
1747
1748//U3D_EQ1
1749#define A60931_RG_SSUSB_EQ_DD1HOS_LFI (0x7f<<24) //30:24
1750#define A60931_RG_SSUSB_EQ_DD1LOS_LFI (0x7f<<16) //22:16
1751#define A60931_RG_SSUSB_EQ_DE0OS_LFI (0x7f<<8) //14:8
1752#define A60931_RG_SSUSB_EQ_DE1OS_LFI (0x7f<<0) //6:0
1753
1754//U3D_EQ2
1755#define A60931_RG_SSUSB_EQ_DLHLOS_LFI (0x7f<<24) //30:24
1756#define A60931_RG_SSUSB_EQ_DHHLOS_LFI (0x7f<<16) //22:16
1757#define A60931_RG_SSUSB_EQ_STOPTIME (0x1<<14) //14:14
1758#define A60931_RG_SSUSB_EQ_DHHL_LF_SEL (0x7<<11) //13:11
1759#define A60931_RG_SSUSB_EQ_DSAOS_LF_SEL (0x7<<8) //10:8
1760#define A60931_RG_SSUSB_EQ_STARTTIME (0x3<<6) //7:6
1761#define A60931_RG_SSUSB_EQ_DLEQ_LF_SEL (0x7<<3) //5:3
1762#define A60931_RG_SSUSB_EQ_DLHL_LF_SEL (0x7<<0) //2:0
1763
1764//U3D_EQ3
1765#define A60931_RG_SSUSB_EQ_DLEQ_LFI_GEN2 (0xf<<28) //31:28
1766#define A60931_RG_SSUSB_EQ_DLEQ_LFI_GEN1 (0xf<<24) //27:24
1767#define A60931_RG_SSUSB_EQ_DEYE0OS_LFI (0x7f<<16) //22:16
1768#define A60931_RG_SSUSB_EQ_DEYE1OS_LFI (0x7f<<8) //14:8
1769#define A60931_RG_SSUSB_EQ_TRI_DET_EN (0x1<<7) //7:7
1770#define A60931_RG_SSUSB_EQ_TRI_DET_TH (0x7f<<0) //6:0
1771
1772//U3D_EQ_EYE0
1773#define A60931_RG_SSUSB_EQ_EYE_XOFFSET (0x7f<<25) //31:25
1774#define A60931_RG_SSUSB_EQ_EYE_MON_EN (0x1<<24) //24:24
1775#define A60931_RG_SSUSB_EQ_EYE0_Y (0x7f<<16) //22:16
1776#define A60931_RG_SSUSB_EQ_EYE1_Y (0x7f<<8) //14:8
1777#define A60931_RG_SSUSB_EQ_PILPO_ROUT (0x1<<7) //7:7
1778#define A60931_RG_SSUSB_EQ_PI_KPGAIN (0x7<<4) //6:4
1779#define A60931_RG_SSUSB_EQ_EYE_CNT_EN (0x1<<3) //3:3
1780
1781//U3D_EQ_EYE1
1782#define A60931_RG_SSUSB_EQ_SIGDET (0x7f<<24) //30:24
1783#define A60931_RG_SSUSB_EQ_EYE_MASK (0x3ff<<7) //16:7
1784
1785//U3D_EQ_EYE2
1786#define A60931_RG_SSUSB_EQ_RX500M_CK_SEL (0x1<<31) //31:31
1787#define A60931_RG_SSUSB_EQ_SD_CNT1 (0x3f<<24) //29:24
1788#define A60931_RG_SSUSB_EQ_ISIFLAG_SEL (0x3<<22) //23:22
1789#define A60931_RG_SSUSB_EQ_SD_CNT0 (0x3f<<16) //21:16
1790
1791//U3D_EQ_DFE0
1792#define A60931_RG_SSUSB_EQ_LEQMAX (0xf<<28) //31:28
1793#define A60931_RG_SSUSB_EQ_DFEX_EN (0x1<<27) //27:27
1794#define A60931_RG_SSUSB_EQ_DFEX_LF_SEL (0x7<<24) //26:24
1795#define A60931_RG_SSUSB_EQ_CHK_EYE_H (0x1<<23) //23:23
1796#define A60931_RG_SSUSB_EQ_PIEYE_INI (0x7f<<16) //22:16
1797#define A60931_RG_SSUSB_EQ_PI90_INI (0x7f<<8) //14:8
1798#define A60931_RG_SSUSB_EQ_PI0_INI (0x7f<<0) //6:0
1799
1800//U3D_EQ_DFE1
1801#define A60931_RG_SSUSB_EQ_REV (0xffff<<16) //31:16
1802#define A60931_RG_SSUSB_EQ_DFEYEN_DUR (0x7<<12) //14:12
1803#define A60931_RG_SSUSB_EQ_DFEXEN_DUR (0x7<<8) //10:8
1804#define A60931_RG_SSUSB_EQ_DFEX_RST (0x1<<7) //7:7
1805#define A60931_RG_SSUSB_EQ_GATED_RXD_B (0x1<<6) //6:6
1806#define A60931_RG_SSUSB_EQ_PI90CK_SEL (0x3<<4) //5:4
1807#define A60931_RG_SSUSB_EQ_DFEX_DIS (0x1<<2) //2:2
1808#define A60931_RG_SSUSB_EQ_DFEYEN_STOP_DIS (0x1<<1) //1:1
1809#define A60931_RG_SSUSB_EQ_DFEXEN_SEL (0x1<<0) //0:0
1810
1811//U3D_EQ_DFE2
1812#define A60931_RG_SSUSB_EQ_MON_SEL (0x1f<<24) //28:24
1813#define A60931_RG_SSUSB_EQ_LEQOSC_DLYCNT (0x7<<16) //18:16
1814#define A60931_RG_SSUSB_EQ_DLEQOS_LFI (0x1f<<8) //12:8
1815#define A60931_RG_SSUSB_EQ_DFE_TOG (0x1<<2) //2:2
1816#define A60931_RG_SSUSB_EQ_LEQ_STOP_TO (0x3<<0) //1:0
1817
1818//U3D_EQ_DFE3
1819#define A60931_RG_SSUSB_EQ_RESERVED (0xffffffff<<0) //31:0
1820
1821//U3D_PHYD_MON0
1822#define A60931_RGS_SSUSB_BERT_BERC (0xffff<<16) //31:16
1823#define A60931_RGS_SSUSB_LFPS (0xf<<12) //15:12
1824#define A60931_RGS_SSUSB_TRAINDEC (0x7<<8) //10:8
1825#define A60931_RGS_SSUSB_SCP_PAT (0xff<<0) //7:0
1826
1827//U3D_PHYD_MON1
1828#define A60931_RGS_SSUSB_RX_FL_OUT (0xffff<<0) //15:0
1829
1830//U3D_PHYD_MON2
1831#define A60931_RGS_SSUSB_T2RLB_ERRCNT (0xffff<<16) //31:16
1832#define A60931_RGS_SSUSB_RETRACK (0xf<<12) //15:12
1833#define A60931_RGS_SSUSB_RXPLL_LOCK (0x1<<10) //10:10
1834#define A60931_RGS_SSUSB_CDR_VCOCAL_CPLT_D (0x1<<9) //9:9
1835#define A60931_RGS_SSUSB_PLL_VCOCAL_CPLT_D (0x1<<8) //8:8
1836#define A60931_RGS_SSUSB_PDNCTL (0xff<<0) //7:0
1837
1838//U3D_PHYD_MON3
1839#define A60931_RGS_SSUSB_TSEQ_ERRCNT (0xffff<<16) //31:16
1840#define A60931_RGS_SSUSB_PRBS_ERRCNT (0xffff<<0) //15:0
1841
1842//U3D_PHYD_MON4
1843#define A60931_RGS_SSUSB_RX_LSLOCK_CNT (0xf<<24) //27:24
1844#define A60931_RGS_SSUSB_SCP_DETCNT (0xff<<16) //23:16
1845#define A60931_RGS_SSUSB_TSEQ_DETCNT (0xffff<<0) //15:0
1846
1847//U3D_PHYD_MON5
1848#define A60931_RGS_SSUSB_EBUFMSG (0xffff<<16) //31:16
1849#define A60931_RGS_SSUSB_BERT_LOCK (0x1<<15) //15:15
1850#define A60931_RGS_SSUSB_SCP_DET (0x1<<14) //14:14
1851#define A60931_RGS_SSUSB_TSEQ_DET (0x1<<13) //13:13
1852#define A60931_RGS_SSUSB_EBUF_UDF (0x1<<12) //12:12
1853#define A60931_RGS_SSUSB_EBUF_OVF (0x1<<11) //11:11
1854#define A60931_RGS_SSUSB_PRBS_PASSTH (0x1<<10) //10:10
1855#define A60931_RGS_SSUSB_PRBS_PASS (0x1<<9) //9:9
1856#define A60931_RGS_SSUSB_PRBS_LOCK (0x1<<8) //8:8
1857#define A60931_RGS_SSUSB_T2RLB_ERR (0x1<<6) //6:6
1858#define A60931_RGS_SSUSB_T2RLB_PASSTH (0x1<<5) //5:5
1859#define A60931_RGS_SSUSB_T2RLB_PASS (0x1<<4) //4:4
1860#define A60931_RGS_SSUSB_T2RLB_LOCK (0x1<<3) //3:3
1861#define A60931_RGS_SSUSB_RX_IMPCAL_DONE (0x1<<2) //2:2
1862#define A60931_RGS_SSUSB_TX_IMPCAL_DONE (0x1<<1) //1:1
1863#define A60931_RGS_SSUSB_RXDETECTED (0x1<<0) //0:0
1864
1865//U3D_PHYD_MON6
1866#define A60931_RGS_SSUSB_SIGCAL_DONE (0x1<<30) //30:30
1867#define A60931_RGS_SSUSB_SIGCAL_CAL_OUT (0x1<<29) //29:29
1868#define A60931_RGS_SSUSB_SIGCAL_OFFSET (0x1f<<24) //28:24
1869#define A60931_RGS_SSUSB_RX_IMP_SEL (0x1f<<16) //20:16
1870#define A60931_RGS_SSUSB_TX_IMP_SEL (0x1f<<8) //12:8
1871#define A60931_RGS_SSUSB_TFIFO_MSG (0xf<<4) //7:4
1872#define A60931_RGS_SSUSB_RFIFO_MSG (0xf<<0) //3:0
1873
1874//U3D_PHYD_MON7
1875#define A60931_RGS_SSUSB_FT_OUT (0xff<<8) //15:8
1876#define A60931_RGS_SSUSB_PRB_OUT (0xff<<0) //7:0
1877
1878//U3D_PHYA_RX_MON0
1879#define A60931_RGS_SSUSB_EQ_DCLEQ (0xf<<24) //27:24
1880#define A60931_RGS_SSUSB_EQ_DCD0H (0x7f<<16) //22:16
1881#define A60931_RGS_SSUSB_EQ_DCD0L (0x7f<<8) //14:8
1882#define A60931_RGS_SSUSB_EQ_DCD1H (0x7f<<0) //6:0
1883
1884//U3D_PHYA_RX_MON1
1885#define A60931_RGS_SSUSB_EQ_DCD1L (0x7f<<24) //30:24
1886#define A60931_RGS_SSUSB_EQ_DCE0 (0x7f<<16) //22:16
1887#define A60931_RGS_SSUSB_EQ_DCE1 (0x7f<<8) //14:8
1888#define A60931_RGS_SSUSB_EQ_DCHHL (0x7f<<0) //6:0
1889
1890//U3D_PHYA_RX_MON2
1891#define A60931_RGS_SSUSB_EQ_LEQ_STOP (0x1<<31) //31:31
1892#define A60931_RGS_SSUSB_EQ_DCLHL (0x7f<<24) //30:24
1893#define A60931_RGS_SSUSB_EQ_STATUS (0xff<<16) //23:16
1894#define A60931_RGS_SSUSB_EQ_DCEYE0 (0x7f<<8) //14:8
1895#define A60931_RGS_SSUSB_EQ_DCEYE1 (0x7f<<0) //6:0
1896
1897//U3D_PHYA_RX_MON3
1898#define A60931_RGS_SSUSB_EQ_EYE_MONITOR_ERRCNT_0 (0xfffff<<0) //19:0
1899
1900//U3D_PHYA_RX_MON4
1901#define A60931_RGS_SSUSB_EQ_EYE_MONITOR_ERRCNT_1 (0xfffff<<0) //19:0
1902
1903//U3D_PHYA_RX_MON5
1904#define A60931_RGS_SSUSB_EQ_DCLEQOS (0x1f<<8) //12:8
1905#define A60931_RGS_SSUSB_EQ_EYE_CNT_RDY (0x1<<7) //7:7
1906#define A60931_RGS_SSUSB_EQ_PILPO (0x7f<<0) //6:0
1907
1908//U3D_PHYD_CPPAT2
1909#define A60931_RG_SSUSB_CPPAT_OUT_H_TMP2 (0xf<<16) //19:16
1910#define A60931_RG_SSUSB_CPPAT_OUT_H_TMP1 (0xff<<8) //15:8
1911#define A60931_RG_SSUSB_CPPAT_OUT_H_TMP0 (0xff<<0) //7:0
1912
1913//U3D_EQ_EYE3
1914#define A60931_RG_SSUSB_EQ_LEQ_SHIFT (0x7<<24) //26:24
1915#define A60931_RG_SSUSB_EQ_EYE_CNT (0xfffff<<0) //19:0
1916
1917//U3D_KBAND_OUT
1918#define A60931_RGS_SSUSB_CDR_BAND_5G (0xff<<24) //31:24
1919#define A60931_RGS_SSUSB_CDR_BAND_2P5G (0xff<<16) //23:16
1920#define A60931_RGS_SSUSB_PLL_BAND_5G (0xff<<8) //15:8
1921#define A60931_RGS_SSUSB_PLL_BAND_2P5G (0xff<<0) //7:0
1922
1923//U3D_KBAND_OUT1
1924#define A60931_RGS_SSUSB_CDR_VCOCAL_FAIL (0x1<<24) //24:24
1925#define A60931_RGS_SSUSB_CDR_VCOCAL_STATE (0xff<<16) //23:16
1926#define A60931_RGS_SSUSB_PLL_VCOCAL_FAIL (0x1<<8) //8:8
1927#define A60931_RGS_SSUSB_PLL_VCOCAL_STATE (0xff<<0) //7:0
1928
1929/* OFFSET */
1930
1931//U3D_PHYD_MIX0
1932#define A60931_RG_SSUSB_P_P3_TX_NG_OFST (31)
1933#define A60931_RG_SSUSB_TSEQ_EN_OFST (30)
1934#define A60931_RG_SSUSB_TSEQ_POLEN_OFST (29)
1935#define A60931_RG_SSUSB_TSEQ_POL_OFST (28)
1936#define A60931_RG_SSUSB_P_P3_PCLK_NG_OFST (27)
1937#define A60931_RG_SSUSB_TSEQ_TH_OFST (24)
1938#define A60931_RG_SSUSB_PRBS_BERTH_OFST (16)
1939#define A60931_RG_SSUSB_DISABLE_PHY_U2_ON_OFST (15)
1940#define A60931_RG_SSUSB_DISABLE_PHY_U2_OFF_OFST (14)
1941#define A60931_RG_SSUSB_PRBS_EN_OFST (13)
1942#define A60931_RG_SSUSB_BPSLOCK_OFST (12)
1943#define A60931_RG_SSUSB_RTCOMCNT_OFST (8)
1944#define A60931_RG_SSUSB_COMCNT_OFST (4)
1945#define A60931_RG_SSUSB_PRBSEL_CALIB_OFST (0)
1946
1947//U3D_PHYD_MIX1
1948#define A60931_RG_SSUSB_SLEEP_EN_OFST (31)
1949#define A60931_RG_SSUSB_PRBSEL_PCS_OFST (28)
1950#define A60931_RG_SSUSB_TXLFPS_PRD_OFST (24)
1951#define A60931_RG_SSUSB_P_RX_P0S_CK_OFST (23)
1952#define A60931_RG_SSUSB_P_TX_P0S_CK_OFST (22)
1953#define A60931_RG_SSUSB_PDNCTL_OFST (16)
1954#define A60931_RG_SSUSB_TX_DRV_EN_OFST (15)
1955#define A60931_RG_SSUSB_TX_DRV_SEL_OFST (14)
1956#define A60931_RG_SSUSB_TX_DRV_DLY_OFST (8)
1957#define A60931_RG_SSUSB_BERT_EN_OFST (7)
1958#define A60931_RG_SSUSB_SCP_TH_OFST (4)
1959#define A60931_RG_SSUSB_SCP_EN_OFST (3)
1960#define A60931_RG_SSUSB_RXANSIDEC_TEST_OFST (0)
1961
1962//U3D_PHYD_LFPS0
1963#define A60931_RG_SSUSB_LFPS_PWD_OFST (30)
1964#define A60931_RG_SSUSB_FORCE_LFPS_PWD_OFST (29)
1965#define A60931_RG_SSUSB_RXLFPS_OVF_OFST (24)
1966#define A60931_RG_SSUSB_P3_ENTRY_SEL_OFST (23)
1967#define A60931_RG_SSUSB_P3_ENTRY_OFST (22)
1968#define A60931_RG_SSUSB_RXLFPS_CDRSEL_OFST (20)
1969#define A60931_RG_SSUSB_RXLFPS_CDRTH_OFST (16)
1970#define A60931_RG_SSUSB_LOCK5G_BLOCK_OFST (15)
1971#define A60931_RG_SSUSB_TFIFO_EXT_D_SEL_OFST (14)
1972#define A60931_RG_SSUSB_TFIFO_NO_EXTEND_OFST (13)
1973#define A60931_RG_SSUSB_RXLFPS_LOB_OFST (8)
1974#define A60931_RG_SSUSB_TXLFPS_EN_OFST (7)
1975#define A60931_RG_SSUSB_TXLFPS_SEL_OFST (6)
1976#define A60931_RG_SSUSB_RXLFPS_CDRLOCK_OFST (5)
1977#define A60931_RG_SSUSB_RXLFPS_UPB_OFST (0)
1978
1979//U3D_PHYD_LFPS1
1980#define A60931_RG_SSUSB_RX_IMP_BIAS_OFST (28)
1981#define A60931_RG_SSUSB_TX_IMP_BIAS_OFST (24)
1982#define A60931_RG_SSUSB_FWAKE_TH_OFST (16)
1983#define A60931_RG_SSUSB_P1_ENTRY_SEL_OFST (14)
1984#define A60931_RG_SSUSB_P1_ENTRY_OFST (13)
1985#define A60931_RG_SSUSB_RXLFPS_UDF_OFST (8)
1986#define A60931_RG_SSUSB_RXLFPS_P0IDLETH_OFST (0)
1987
1988//U3D_PHYD_IMPCAL0
1989#define A60931_RG_SSUSB_FORCE_TX_IMPSEL_OFST (31)
1990#define A60931_RG_SSUSB_TX_IMPCAL_EN_OFST (30)
1991#define A60931_RG_SSUSB_FORCE_TX_IMPCAL_EN_OFST (29)
1992#define A60931_RG_SSUSB_TX_IMPSEL_OFST (24)
1993#define A60931_RG_SSUSB_TX_IMPCAL_CALCYC_OFST (16)
1994#define A60931_RG_SSUSB_TX_IMPCAL_STBCYC_OFST (10)
1995#define A60931_RG_SSUSB_TX_IMPCAL_CYCCNT_OFST (0)
1996
1997//U3D_PHYD_IMPCAL1
1998#define A60931_RG_SSUSB_FORCE_RX_IMPSEL_OFST (31)
1999#define A60931_RG_SSUSB_RX_IMPCAL_EN_OFST (30)
2000#define A60931_RG_SSUSB_FORCE_RX_IMPCAL_EN_OFST (29)
2001#define A60931_RG_SSUSB_RX_IMPSEL_OFST (24)
2002#define A60931_RG_SSUSB_RX_IMPCAL_CALCYC_OFST (16)
2003#define A60931_RG_SSUSB_RX_IMPCAL_STBCYC_OFST (10)
2004#define A60931_RG_SSUSB_RX_IMPCAL_CYCCNT_OFST (0)
2005
2006//U3D_PHYD_TXPLL0
2007#define A60931_RG_SSUSB_TXPLL_DDSEN_CYC_OFST (27)
2008#define A60931_RG_SSUSB_TXPLL_ON_OFST (26)
2009#define A60931_RG_SSUSB_FORCE_TXPLLON_OFST (25)
2010#define A60931_RG_SSUSB_TXPLL_STBCYC_OFST (16)
2011#define A60931_RG_SSUSB_TXPLL_NCPOCHG_CYC_OFST (12)
2012#define A60931_RG_SSUSB_TXPLL_NCPOEN_CYC_OFST (10)
2013#define A60931_RG_SSUSB_TXPLL_DDSRSTB_CYC_OFST (0)
2014
2015//U3D_PHYD_TXPLL1
2016#define A60931_RG_SSUSB_PLL_NCPO_EN_OFST (31)
2017#define A60931_RG_SSUSB_PLL_FIFO_START_MAN_OFST (30)
2018#define A60931_RG_SSUSB_PLL_NCPO_CHG_OFST (28)
2019#define A60931_RG_SSUSB_PLL_DDS_RSTB_OFST (27)
2020#define A60931_RG_SSUSB_PLL_DDS_PWDB_OFST (26)
2021#define A60931_RG_SSUSB_PLL_DDSEN_OFST (25)
2022#define A60931_RG_SSUSB_PLL_AUTOK_VCO_OFST (24)
2023#define A60931_RG_SSUSB_PLL_PWD_OFST (23)
2024#define A60931_RG_SSUSB_RX_AFE_PWD_OFST (22)
2025#define A60931_RG_SSUSB_PLL_TCADJ_OFST (16)
2026#define A60931_RG_SSUSB_FORCE_CDR_TCADJ_OFST (15)
2027#define A60931_RG_SSUSB_FORCE_CDR_AUTOK_VCO_OFST (14)
2028#define A60931_RG_SSUSB_FORCE_CDR_PWD_OFST (13)
2029#define A60931_RG_SSUSB_FORCE_PLL_NCPO_EN_OFST (12)
2030#define A60931_RG_SSUSB_FORCE_PLL_FIFO_START_MAN_OFST (11)
2031#define A60931_RG_SSUSB_FORCE_PLL_NCPO_CHG_OFST (9)
2032#define A60931_RG_SSUSB_FORCE_PLL_DDS_RSTB_OFST (8)
2033#define A60931_RG_SSUSB_FORCE_PLL_DDS_PWDB_OFST (7)
2034#define A60931_RG_SSUSB_FORCE_PLL_DDSEN_OFST (6)
2035#define A60931_RG_SSUSB_FORCE_PLL_TCADJ_OFST (5)
2036#define A60931_RG_SSUSB_FORCE_PLL_AUTOK_VCO_OFST (4)
2037#define A60931_RG_SSUSB_FORCE_PLL_PWD_OFST (3)
2038#define A60931_RG_SSUSB_FLT_1_DISPERR_B_OFST (2)
2039
2040//U3D_PHYD_TXPLL2
2041#define A60931_RG_SSUSB_TX_LFPS_EN_OFST (31)
2042#define A60931_RG_SSUSB_FORCE_TX_LFPS_EN_OFST (30)
2043#define A60931_RG_SSUSB_TX_LFPS_OFST (29)
2044#define A60931_RG_SSUSB_FORCE_TX_LFPS_OFST (28)
2045#define A60931_RG_SSUSB_RXPLL_STB_OFST (27)
2046#define A60931_RG_SSUSB_TXPLL_STB_OFST (26)
2047#define A60931_RG_SSUSB_FORCE_RXPLL_STB_OFST (25)
2048#define A60931_RG_SSUSB_FORCE_TXPLL_STB_OFST (24)
2049#define A60931_RG_SSUSB_RXPLL_REFCKSEL_OFST (16)
2050#define A60931_RG_SSUSB_RXPLL_STBMODE_OFST (11)
2051#define A60931_RG_SSUSB_RXPLL_ON_OFST (10)
2052#define A60931_RG_SSUSB_FORCE_RXPLLON_OFST (9)
2053#define A60931_RG_SSUSB_FORCE_RX_AFE_PWD_OFST (8)
2054#define A60931_RG_SSUSB_CDR_AUTOK_VCO_OFST (7)
2055#define A60931_RG_SSUSB_CDR_PWD_OFST (6)
2056#define A60931_RG_SSUSB_CDR_TCADJ_OFST (0)
2057
2058//U3D_PHYD_FL0
2059#define A60931_RG_SSUSB_RX_FL_TARGET_OFST (16)
2060#define A60931_RG_SSUSB_RX_FL_CYCLECNT_OFST (0)
2061
2062//U3D_PHYD_MIX2
2063#define A60931_RG_SSUSB_RX_EQ_RST_OFST (31)
2064#define A60931_RG_SSUSB_RX_EQ_RST_SEL_OFST (30)
2065#define A60931_RG_SSUSB_RXVAL_RST_OFST (29)
2066#define A60931_RG_SSUSB_RXVAL_CNT_OFST (24)
2067#define A60931_RG_SSUSB_CDROS_EN_OFST (18)
2068#define A60931_RG_SSUSB_CDR_LCKOP_OFST (16)
2069#define A60931_RG_SSUSB_RX_FL_LOCKTH_OFST (8)
2070#define A60931_RG_SSUSB_RX_FL_OFFSET_OFST (0)
2071
2072//U3D_PHYD_RX0
2073#define A60931_RG_SSUSB_T2RLB_BERTH_OFST (24)
2074#define A60931_RG_SSUSB_T2RLB_PAT_OFST (16)
2075#define A60931_RG_SSUSB_T2RLB_EN_OFST (15)
2076#define A60931_RG_SSUSB_T2RLB_BPSCRAMB_OFST (14)
2077#define A60931_RG_SSUSB_T2RLB_SERIAL_OFST (13)
2078#define A60931_RG_SSUSB_T2RLB_MODE_OFST (11)
2079#define A60931_RG_SSUSB_RX_SAOSC_EN_OFST (10)
2080#define A60931_RG_SSUSB_RX_SAOSC_EN_SEL_OFST (9)
2081#define A60931_RG_SSUSB_RX_DFE_OPTION_OFST (8)
2082#define A60931_RG_SSUSB_RX_DFE_EN_OFST (7)
2083#define A60931_RG_SSUSB_RX_DFE_EN_SEL_OFST (6)
2084#define A60931_RG_SSUSB_RX_EQ_EN_OFST (5)
2085#define A60931_RG_SSUSB_RX_EQ_EN_SEL_OFST (4)
2086#define A60931_RG_SSUSB_RX_SAOSC_RST_OFST (3)
2087#define A60931_RG_SSUSB_RX_SAOSC_RST_SEL_OFST (2)
2088#define A60931_RG_SSUSB_RX_DFE_RST_OFST (1)
2089#define A60931_RG_SSUSB_RX_DFE_RST_SEL_OFST (0)
2090
2091//U3D_PHYD_T2RLB
2092#define A60931_RG_SSUSB_EQTRAIN_CH_MODE_OFST (28)
2093#define A60931_RG_SSUSB_PRB_OUT_CPPAT_OFST (27)
2094#define A60931_RG_SSUSB_BPANSIENC_OFST (26)
2095#define A60931_RG_SSUSB_VALID_EN_OFST (25)
2096#define A60931_RG_SSUSB_EBUF_SRST_OFST (24)
2097#define A60931_RG_SSUSB_K_EMP_OFST (20)
2098#define A60931_RG_SSUSB_K_FUL_OFST (16)
2099#define A60931_RG_SSUSB_T2RLB_BDATRST_OFST (12)
2100#define A60931_RG_SSUSB_P_T2RLB_SKP_EN_OFST (10)
2101#define A60931_RG_SSUSB_T2RLB_PATMODE_OFST (8)
2102#define A60931_RG_SSUSB_T2RLB_TSEQCNT_OFST (0)
2103
2104//U3D_PHYD_CPPAT
2105#define A60931_RG_SSUSB_CPPAT_PROGRAM_EN_OFST (24)
2106#define A60931_RG_SSUSB_CPPAT_TOZ_OFST (21)
2107#define A60931_RG_SSUSB_CPPAT_PRBS_EN_OFST (20)
2108#define A60931_RG_SSUSB_CPPAT_OUT_TMP2_OFST (16)
2109#define A60931_RG_SSUSB_CPPAT_OUT_TMP1_OFST (8)
2110#define A60931_RG_SSUSB_CPPAT_OUT_TMP0_OFST (0)
2111
2112//U3D_PHYD_MIX3
2113#define A60931_RG_SSUSB_CDR_TCADJ_MINUS_OFST (31)
2114#define A60931_RG_SSUSB_P_CDROS_EN_OFST (30)
2115#define A60931_RG_SSUSB_P_P2_TX_DRV_DIS_OFST (28)
2116#define A60931_RG_SSUSB_CDR_TCADJ_OFFSET_OFST (24)
2117#define A60931_RG_SSUSB_PLL_TCADJ_MINUS_OFST (23)
2118#define A60931_RG_SSUSB_FORCE_PLL_BIAS_LPF_EN_OFST (20)
2119#define A60931_RG_SSUSB_PLL_BIAS_LPF_EN_OFST (19)
2120#define A60931_RG_SSUSB_PLL_TCADJ_OFFSET_OFST (16)
2121#define A60931_RG_SSUSB_FORCE_PLL_SSCEN_OFST (15)
2122#define A60931_RG_SSUSB_PLL_SSCEN_OFST (14)
2123#define A60931_RG_SSUSB_FORCE_CDR_PI_PWD_OFST (13)
2124#define A60931_RG_SSUSB_CDR_PI_PWD_OFST (12)
2125#define A60931_RG_SSUSB_CDR_PI_MODE_OFST (11)
2126#define A60931_RG_SSUSB_TXPLL_SSCEN_CYC_OFST (0)
2127
2128//U3D_PHYD_EBUFCTL
2129#define A60931_RG_SSUSB_EBUFCTL_OFST (0)
2130
2131//U3D_PHYD_PIPE0
2132#define A60931_RG_SSUSB_RXTERMINATION_OFST (30)
2133#define A60931_RG_SSUSB_RXEQTRAINING_OFST (29)
2134#define A60931_RG_SSUSB_RXPOLARITY_OFST (28)
2135#define A60931_RG_SSUSB_TXDEEMPH_OFST (26)
2136#define A60931_RG_SSUSB_POWERDOWN_OFST (24)
2137#define A60931_RG_SSUSB_TXONESZEROS_OFST (23)
2138#define A60931_RG_SSUSB_TXELECIDLE_OFST (22)
2139#define A60931_RG_SSUSB_TXDETECTRX_OFST (21)
2140#define A60931_RG_SSUSB_PIPE_SEL_OFST (20)
2141#define A60931_RG_SSUSB_TXDATAK_OFST (16)
2142#define A60931_RG_SSUSB_CDR_STABLE_SEL_OFST (15)
2143#define A60931_RG_SSUSB_CDR_STABLE_OFST (14)
2144#define A60931_RG_SSUSB_CDR_RSTB_SEL_OFST (13)
2145#define A60931_RG_SSUSB_CDR_RSTB_OFST (12)
2146#define A60931_RG_SSUSB_FRC_PIPE_POWERDOWN_OFST (11)
2147#define A60931_RG_SSUSB_P_TXBCN_DIS_OFST (6)
2148#define A60931_RG_SSUSB_P_ERROR_SEL_OFST (4)
2149#define A60931_RG_SSUSB_TXMARGIN_OFST (1)
2150#define A60931_RG_SSUSB_TXCOMPLIANCE_OFST (0)
2151
2152//U3D_PHYD_PIPE1
2153#define A60931_RG_SSUSB_TXDATA_OFST (0)
2154
2155//U3D_PHYD_MIX4
2156#define A60931_RG_SSUSB_CDROS_CNT_OFST (24)
2157#define A60931_RG_SSUSB_T2RLB_BER_EN_OFST (16)
2158#define A60931_RG_SSUSB_T2RLB_BER_RATE_OFST (0)
2159
2160//U3D_PHYD_CKGEN0
2161#define A60931_RG_SSUSB_RFIFO_IMPLAT_OFST (27)
2162#define A60931_RG_SSUSB_TFIFO_PSEL_OFST (24)
2163#define A60931_RG_SSUSB_CKGEN_PSEL_OFST (8)
2164#define A60931_RG_SSUSB_RXCK_INV_OFST (0)
2165
2166//U3D_PHYD_MIX5
2167#define A60931_RG_SSUSB_PRB_SEL_OFST (16)
2168#define A60931_RG_SSUSB_RXPLL_STBCYC_OFST (0)
2169
2170//U3D_PHYD_RESERVED
2171#define A60931_RG_SSUSB_PHYD_RESERVE_OFST (0)
2172
2173//U3D_PHYD_CDR0
2174#define A60931_RG_SSUSB_CDR_BIC_LTR_OFST (28)
2175#define A60931_RG_SSUSB_CDR_BIC_LTD0_OFST (24)
2176#define A60931_RG_SSUSB_CDR_BC_LTD1_OFST (16)
2177#define A60931_RG_SSUSB_CDR_BC_LTR_OFST (8)
2178#define A60931_RG_SSUSB_CDR_BC_LTD0_OFST (0)
2179
2180//U3D_PHYD_CDR1
2181#define A60931_RG_SSUSB_CDR_BIR_LTD1_OFST (24)
2182#define A60931_RG_SSUSB_CDR_BIR_LTR_OFST (16)
2183#define A60931_RG_SSUSB_CDR_BIR_LTD0_OFST (8)
2184#define A60931_RG_SSUSB_CDR_BW_SEL_OFST (6)
2185#define A60931_RG_SSUSB_CDR_BIC_LTD1_OFST (0)
2186
2187//U3D_PHYD_PLL_0
2188#define A60931_RG_SSUSB_FORCE_CDR_BAND_5G_OFST (28)
2189#define A60931_RG_SSUSB_FORCE_CDR_BAND_2P5G_OFST (27)
2190#define A60931_RG_SSUSB_FORCE_PLL_BAND_5G_OFST (26)
2191#define A60931_RG_SSUSB_FORCE_PLL_BAND_2P5G_OFST (25)
2192#define A60931_RG_SSUSB_P_EQ_T_SEL_OFST (15)
2193#define A60931_RG_SSUSB_PLL_ISO_EN_CYC_OFST (5)
2194#define A60931_RG_SSUSB_PLLBAND_RECAL_OFST (4)
2195#define A60931_RG_SSUSB_PLL_DDS_ISO_EN_OFST (3)
2196#define A60931_RG_SSUSB_FORCE_PLL_DDS_ISO_EN_OFST (2)
2197#define A60931_RG_SSUSB_PLL_DDS_PWR_ON_OFST (1)
2198#define A60931_RG_SSUSB_FORCE_PLL_DDS_PWR_ON_OFST (0)
2199
2200//U3D_PHYD_PLL_1
2201#define A60931_RG_SSUSB_CDR_BAND_5G_OFST (24)
2202#define A60931_RG_SSUSB_CDR_BAND_2P5G_OFST (16)
2203#define A60931_RG_SSUSB_PLL_BAND_5G_OFST (8)
2204#define A60931_RG_SSUSB_PLL_BAND_2P5G_OFST (0)
2205
2206//U3D_PHYD_BCN_DET_1
2207#define A60931_RG_SSUSB_P_BCN_OBS_PRD_OFST (16)
2208#define A60931_RG_SSUSB_U_BCN_OBS_PRD_OFST (0)
2209
2210//U3D_PHYD_BCN_DET_2
2211#define A60931_RG_SSUSB_P_BCN_OBS_SEL_OFST (16)
2212#define A60931_RG_SSUSB_BCN_DET_DIS_OFST (12)
2213#define A60931_RG_SSUSB_U_BCN_OBS_SEL_OFST (0)
2214
2215//U3D_EQ0
2216#define A60931_RG_SSUSB_EQ_DLHL_LFI_OFST (24)
2217#define A60931_RG_SSUSB_EQ_DHHL_LFI_OFST (16)
2218#define A60931_RG_SSUSB_EQ_DD0HOS_LFI_OFST (8)
2219#define A60931_RG_SSUSB_EQ_DD0LOS_LFI_OFST (0)
2220
2221//U3D_EQ1
2222#define A60931_RG_SSUSB_EQ_DD1HOS_LFI_OFST (24)
2223#define A60931_RG_SSUSB_EQ_DD1LOS_LFI_OFST (16)
2224#define A60931_RG_SSUSB_EQ_DE0OS_LFI_OFST (8)
2225#define A60931_RG_SSUSB_EQ_DE1OS_LFI_OFST (0)
2226
2227//U3D_EQ2
2228#define A60931_RG_SSUSB_EQ_DLHLOS_LFI_OFST (24)
2229#define A60931_RG_SSUSB_EQ_DHHLOS_LFI_OFST (16)
2230#define A60931_RG_SSUSB_EQ_STOPTIME_OFST (14)
2231#define A60931_RG_SSUSB_EQ_DHHL_LF_SEL_OFST (11)
2232#define A60931_RG_SSUSB_EQ_DSAOS_LF_SEL_OFST (8)
2233#define A60931_RG_SSUSB_EQ_STARTTIME_OFST (6)
2234#define A60931_RG_SSUSB_EQ_DLEQ_LF_SEL_OFST (3)
2235#define A60931_RG_SSUSB_EQ_DLHL_LF_SEL_OFST (0)
2236
2237//U3D_EQ3
2238#define A60931_RG_SSUSB_EQ_DLEQ_LFI_GEN2_OFST (28)
2239#define A60931_RG_SSUSB_EQ_DLEQ_LFI_GEN1_OFST (24)
2240#define A60931_RG_SSUSB_EQ_DEYE0OS_LFI_OFST (16)
2241#define A60931_RG_SSUSB_EQ_DEYE1OS_LFI_OFST (8)
2242#define A60931_RG_SSUSB_EQ_TRI_DET_EN_OFST (7)
2243#define A60931_RG_SSUSB_EQ_TRI_DET_TH_OFST (0)
2244
2245//U3D_EQ_EYE0
2246#define A60931_RG_SSUSB_EQ_EYE_XOFFSET_OFST (25)
2247#define A60931_RG_SSUSB_EQ_EYE_MON_EN_OFST (24)
2248#define A60931_RG_SSUSB_EQ_EYE0_Y_OFST (16)
2249#define A60931_RG_SSUSB_EQ_EYE1_Y_OFST (8)
2250#define A60931_RG_SSUSB_EQ_PILPO_ROUT_OFST (7)
2251#define A60931_RG_SSUSB_EQ_PI_KPGAIN_OFST (4)
2252#define A60931_RG_SSUSB_EQ_EYE_CNT_EN_OFST (3)
2253
2254//U3D_EQ_EYE1
2255#define A60931_RG_SSUSB_EQ_SIGDET_OFST (24)
2256#define A60931_RG_SSUSB_EQ_EYE_MASK_OFST (7)
2257
2258//U3D_EQ_EYE2
2259#define A60931_RG_SSUSB_EQ_RX500M_CK_SEL_OFST (31)
2260#define A60931_RG_SSUSB_EQ_SD_CNT1_OFST (24)
2261#define A60931_RG_SSUSB_EQ_ISIFLAG_SEL_OFST (22)
2262#define A60931_RG_SSUSB_EQ_SD_CNT0_OFST (16)
2263
2264//U3D_EQ_DFE0
2265#define A60931_RG_SSUSB_EQ_LEQMAX_OFST (28)
2266#define A60931_RG_SSUSB_EQ_DFEX_EN_OFST (27)
2267#define A60931_RG_SSUSB_EQ_DFEX_LF_SEL_OFST (24)
2268#define A60931_RG_SSUSB_EQ_CHK_EYE_H_OFST (23)
2269#define A60931_RG_SSUSB_EQ_PIEYE_INI_OFST (16)
2270#define A60931_RG_SSUSB_EQ_PI90_INI_OFST (8)
2271#define A60931_RG_SSUSB_EQ_PI0_INI_OFST (0)
2272
2273//U3D_EQ_DFE1
2274#define A60931_RG_SSUSB_EQ_REV_OFST (16)
2275#define A60931_RG_SSUSB_EQ_DFEYEN_DUR_OFST (12)
2276#define A60931_RG_SSUSB_EQ_DFEXEN_DUR_OFST (8)
2277#define A60931_RG_SSUSB_EQ_DFEX_RST_OFST (7)
2278#define A60931_RG_SSUSB_EQ_GATED_RXD_B_OFST (6)
2279#define A60931_RG_SSUSB_EQ_PI90CK_SEL_OFST (4)
2280#define A60931_RG_SSUSB_EQ_DFEX_DIS_OFST (2)
2281#define A60931_RG_SSUSB_EQ_DFEYEN_STOP_DIS_OFST (1)
2282#define A60931_RG_SSUSB_EQ_DFEXEN_SEL_OFST (0)
2283
2284//U3D_EQ_DFE2
2285#define A60931_RG_SSUSB_EQ_MON_SEL_OFST (24)
2286#define A60931_RG_SSUSB_EQ_LEQOSC_DLYCNT_OFST (16)
2287#define A60931_RG_SSUSB_EQ_DLEQOS_LFI_OFST (8)
2288#define A60931_RG_SSUSB_EQ_DFE_TOG_OFST (2)
2289#define A60931_RG_SSUSB_EQ_LEQ_STOP_TO_OFST (0)
2290
2291//U3D_EQ_DFE3
2292#define A60931_RG_SSUSB_EQ_RESERVED_OFST (0)
2293
2294//U3D_PHYD_MON0
2295#define A60931_RGS_SSUSB_BERT_BERC_OFST (16)
2296#define A60931_RGS_SSUSB_LFPS_OFST (12)
2297#define A60931_RGS_SSUSB_TRAINDEC_OFST (8)
2298#define A60931_RGS_SSUSB_SCP_PAT_OFST (0)
2299
2300//U3D_PHYD_MON1
2301#define A60931_RGS_SSUSB_RX_FL_OUT_OFST (0)
2302
2303//U3D_PHYD_MON2
2304#define A60931_RGS_SSUSB_T2RLB_ERRCNT_OFST (16)
2305#define A60931_RGS_SSUSB_RETRACK_OFST (12)
2306#define A60931_RGS_SSUSB_RXPLL_LOCK_OFST (10)
2307#define A60931_RGS_SSUSB_CDR_VCOCAL_CPLT_D_OFST (9)
2308#define A60931_RGS_SSUSB_PLL_VCOCAL_CPLT_D_OFST (8)
2309#define A60931_RGS_SSUSB_PDNCTL_OFST (0)
2310
2311//U3D_PHYD_MON3
2312#define A60931_RGS_SSUSB_TSEQ_ERRCNT_OFST (16)
2313#define A60931_RGS_SSUSB_PRBS_ERRCNT_OFST (0)
2314
2315//U3D_PHYD_MON4
2316#define A60931_RGS_SSUSB_RX_LSLOCK_CNT_OFST (24)
2317#define A60931_RGS_SSUSB_SCP_DETCNT_OFST (16)
2318#define A60931_RGS_SSUSB_TSEQ_DETCNT_OFST (0)
2319
2320//U3D_PHYD_MON5
2321#define A60931_RGS_SSUSB_EBUFMSG_OFST (16)
2322#define A60931_RGS_SSUSB_BERT_LOCK_OFST (15)
2323#define A60931_RGS_SSUSB_SCP_DET_OFST (14)
2324#define A60931_RGS_SSUSB_TSEQ_DET_OFST (13)
2325#define A60931_RGS_SSUSB_EBUF_UDF_OFST (12)
2326#define A60931_RGS_SSUSB_EBUF_OVF_OFST (11)
2327#define A60931_RGS_SSUSB_PRBS_PASSTH_OFST (10)
2328#define A60931_RGS_SSUSB_PRBS_PASS_OFST (9)
2329#define A60931_RGS_SSUSB_PRBS_LOCK_OFST (8)
2330#define A60931_RGS_SSUSB_T2RLB_ERR_OFST (6)
2331#define A60931_RGS_SSUSB_T2RLB_PASSTH_OFST (5)
2332#define A60931_RGS_SSUSB_T2RLB_PASS_OFST (4)
2333#define A60931_RGS_SSUSB_T2RLB_LOCK_OFST (3)
2334#define A60931_RGS_SSUSB_RX_IMPCAL_DONE_OFST (2)
2335#define A60931_RGS_SSUSB_TX_IMPCAL_DONE_OFST (1)
2336#define A60931_RGS_SSUSB_RXDETECTED_OFST (0)
2337
2338//U3D_PHYD_MON6
2339#define A60931_RGS_SSUSB_SIGCAL_DONE_OFST (30)
2340#define A60931_RGS_SSUSB_SIGCAL_CAL_OUT_OFST (29)
2341#define A60931_RGS_SSUSB_SIGCAL_OFFSET_OFST (24)
2342#define A60931_RGS_SSUSB_RX_IMP_SEL_OFST (16)
2343#define A60931_RGS_SSUSB_TX_IMP_SEL_OFST (8)
2344#define A60931_RGS_SSUSB_TFIFO_MSG_OFST (4)
2345#define A60931_RGS_SSUSB_RFIFO_MSG_OFST (0)
2346
2347//U3D_PHYD_MON7
2348#define A60931_RGS_SSUSB_FT_OUT_OFST (8)
2349#define A60931_RGS_SSUSB_PRB_OUT_OFST (0)
2350
2351//U3D_PHYA_RX_MON0
2352#define A60931_RGS_SSUSB_EQ_DCLEQ_OFST (24)
2353#define A60931_RGS_SSUSB_EQ_DCD0H_OFST (16)
2354#define A60931_RGS_SSUSB_EQ_DCD0L_OFST (8)
2355#define A60931_RGS_SSUSB_EQ_DCD1H_OFST (0)
2356
2357//U3D_PHYA_RX_MON1
2358#define A60931_RGS_SSUSB_EQ_DCD1L_OFST (24)
2359#define A60931_RGS_SSUSB_EQ_DCE0_OFST (16)
2360#define A60931_RGS_SSUSB_EQ_DCE1_OFST (8)
2361#define A60931_RGS_SSUSB_EQ_DCHHL_OFST (0)
2362
2363//U3D_PHYA_RX_MON2
2364#define A60931_RGS_SSUSB_EQ_LEQ_STOP_OFST (31)
2365#define A60931_RGS_SSUSB_EQ_DCLHL_OFST (24)
2366#define A60931_RGS_SSUSB_EQ_STATUS_OFST (16)
2367#define A60931_RGS_SSUSB_EQ_DCEYE0_OFST (8)
2368#define A60931_RGS_SSUSB_EQ_DCEYE1_OFST (0)
2369
2370//U3D_PHYA_RX_MON3
2371#define A60931_RGS_SSUSB_EQ_EYE_MONITOR_ERRCNT_0_OFST (0)
2372
2373//U3D_PHYA_RX_MON4
2374#define A60931_RGS_SSUSB_EQ_EYE_MONITOR_ERRCNT_1_OFST (0)
2375
2376//U3D_PHYA_RX_MON5
2377#define A60931_RGS_SSUSB_EQ_DCLEQOS_OFST (8)
2378#define A60931_RGS_SSUSB_EQ_EYE_CNT_RDY_OFST (7)
2379#define A60931_RGS_SSUSB_EQ_PILPO_OFST (0)
2380
2381//U3D_PHYD_CPPAT2
2382#define A60931_RG_SSUSB_CPPAT_OUT_H_TMP2_OFST (16)
2383#define A60931_RG_SSUSB_CPPAT_OUT_H_TMP1_OFST (8)
2384#define A60931_RG_SSUSB_CPPAT_OUT_H_TMP0_OFST (0)
2385
2386//U3D_EQ_EYE3
2387#define A60931_RG_SSUSB_EQ_LEQ_SHIFT_OFST (24)
2388#define A60931_RG_SSUSB_EQ_EYE_CNT_OFST (0)
2389
2390//U3D_KBAND_OUT
2391#define A60931_RGS_SSUSB_CDR_BAND_5G_OFST (24)
2392#define A60931_RGS_SSUSB_CDR_BAND_2P5G_OFST (16)
2393#define A60931_RGS_SSUSB_PLL_BAND_5G_OFST (8)
2394#define A60931_RGS_SSUSB_PLL_BAND_2P5G_OFST (0)
2395
2396//U3D_KBAND_OUT1
2397#define A60931_RGS_SSUSB_CDR_VCOCAL_FAIL_OFST (24)
2398#define A60931_RGS_SSUSB_CDR_VCOCAL_STATE_OFST (16)
2399#define A60931_RGS_SSUSB_PLL_VCOCAL_FAIL_OFST (8)
2400#define A60931_RGS_SSUSB_PLL_VCOCAL_STATE_OFST (0)
2401
2402///////////////////////////////////////////////////////////////////////////////
2403
2404struct a60931_u3phyd_bank2_reg_a {
2405 //0x0
2406 u32 b2_phyd_top1;
2407 u32 b2_phyd_top2;
2408 u32 b2_phyd_top3;
2409 u32 b2_phyd_top4;
2410 //0x10
2411 u32 b2_phyd_top5;
2412 u32 b2_phyd_top6;
2413 u32 b2_phyd_top7;
2414 u32 b2_phyd_p_sigdet1;
2415 //0x20
2416 u32 b2_phyd_p_sigdet2;
2417 u32 b2_phyd_p_sigdet_cal1;
2418 u32 b2_phyd_rxdet1;
2419 u32 b2_phyd_rxdet2;
2420 //0x30
2421 u32 b2_phyd_misc0;
2422 u32 b2_phyd_misc2;
2423 u32 b2_phyd_misc3;
2424 u32 b2_phyd_l1ss;
2425 //0x40
2426 u32 b2_rosc_0;
2427 u32 b2_rosc_1;
2428 u32 b2_rosc_2;
2429 u32 b2_rosc_3;
2430 //0x50
2431 u32 b2_rosc_4;
2432 u32 b2_rosc_5;
2433 u32 b2_rosc_6;
2434 u32 b2_rosc_7;
2435 //0x60
2436 u32 b2_rosc_8;
2437 u32 b2_rosc_9;
2438 u32 b2_rosc_a;
2439 u32 reserve1;
2440 //0x70~0xd0
2441 u32 reserve2[28];
2442 //0xe0
2443 u32 phyd_version;
2444 u32 phyd_model;
2445};
2446
2447//U3D_B2_PHYD_TOP1
2448#define A60931_RG_SSUSB_PCIE2_K_EMP (0xf<<28) //31:28
2449#define A60931_RG_SSUSB_PCIE2_K_FUL (0xf<<24) //27:24
2450#define A60931_RG_SSUSB_TX_EIDLE_LP_EN (0x1<<17) //17:17
2451#define A60931_RG_SSUSB_FORCE_TX_EIDLE_LP_EN (0x1<<16) //16:16
2452#define A60931_RG_SSUSB_SIGDET_EN (0x1<<15) //15:15
2453#define A60931_RG_SSUSB_FORCE_SIGDET_EN (0x1<<14) //14:14
2454#define A60931_RG_SSUSB_CLKRX_EN (0x1<<13) //13:13
2455#define A60931_RG_SSUSB_FORCE_CLKRX_EN (0x1<<12) //12:12
2456#define A60931_RG_SSUSB_CLKTX_EN (0x1<<11) //11:11
2457#define A60931_RG_SSUSB_FORCE_CLKTX_EN (0x1<<10) //10:10
2458#define A60931_RG_SSUSB_CLK_REQ_N_I (0x1<<9) //9:9
2459#define A60931_RG_SSUSB_FORCE_CLK_REQ_N_I (0x1<<8) //8:8
2460#define A60931_RG_SSUSB_RATE (0x1<<6) //6:6
2461#define A60931_RG_SSUSB_FORCE_RATE (0x1<<5) //5:5
2462#define A60931_RG_SSUSB_PCIE_MODE_SEL (0x1<<4) //4:4
2463#define A60931_RG_SSUSB_FORCE_PCIE_MODE_SEL (0x1<<3) //3:3
2464#define A60931_RG_SSUSB_PHY_MODE (0x3<<1) //2:1
2465#define A60931_RG_SSUSB_FORCE_PHY_MODE (0x1<<0) //0:0
2466
2467//U3D_B2_PHYD_TOP2
2468#define A60931_RG_SSUSB_FORCE_IDRV_6DB (0x1<<30) //30:30
2469#define A60931_RG_SSUSB_IDRV_6DB (0x3f<<24) //29:24
2470#define A60931_RG_SSUSB_FORCE_IDEM_3P5DB (0x1<<22) //22:22
2471#define A60931_RG_SSUSB_IDEM_3P5DB (0x3f<<16) //21:16
2472#define A60931_RG_SSUSB_FORCE_IDRV_3P5DB (0x1<<14) //14:14
2473#define A60931_RG_SSUSB_IDRV_3P5DB (0x3f<<8) //13:8
2474#define A60931_RG_SSUSB_FORCE_IDRV_0DB (0x1<<6) //6:6
2475#define A60931_RG_SSUSB_IDRV_0DB (0x3f<<0) //5:0
2476
2477//U3D_B2_PHYD_TOP3
2478#define A60931_RG_SSUSB_TX_BIASI (0x7<<25) //27:25
2479#define A60931_RG_SSUSB_FORCE_TX_BIASI_EN (0x1<<24) //24:24
2480#define A60931_RG_SSUSB_TX_BIASI_EN (0x1<<16) //16:16
2481#define A60931_RG_SSUSB_FORCE_TX_BIASI (0x1<<13) //13:13
2482#define A60931_RG_SSUSB_FORCE_IDEM_6DB (0x1<<8) //8:8
2483#define A60931_RG_SSUSB_IDEM_6DB (0x3f<<0) //5:0
2484
2485//U3D_B2_PHYD_TOP4
2486#define A60931_RG_SSUSB_G1_CDR_BIC_LTR (0xf<<28) //31:28
2487#define A60931_RG_SSUSB_G1_CDR_BIC_LTD0 (0xf<<24) //27:24
2488#define A60931_RG_SSUSB_G1_CDR_BC_LTD1 (0x1f<<16) //20:16
2489#define A60931_RG_SSUSB_G1_L1SS_CDR_BW_SEL (0x3<<13) //14:13
2490#define A60931_RG_SSUSB_G1_CDR_BC_LTR (0x1f<<8) //12:8
2491#define A60931_RG_SSUSB_G1_CDR_BW_SEL (0x3<<5) //6:5
2492#define A60931_RG_SSUSB_G1_CDR_BC_LTD0 (0x1f<<0) //4:0
2493
2494//U3D_B2_PHYD_TOP5
2495#define A60931_RG_SSUSB_G1_CDR_BIR_LTD1 (0x1f<<24) //28:24
2496#define A60931_RG_SSUSB_G1_CDR_BIR_LTR (0x1f<<16) //20:16
2497#define A60931_RG_SSUSB_G1_CDR_BIR_LTD0 (0x1f<<8) //12:8
2498#define A60931_RG_SSUSB_G1_CDR_BIC_LTD1 (0xf<<0) //3:0
2499
2500//U3D_B2_PHYD_TOP6
2501#define A60931_RG_SSUSB_G2_CDR_BIC_LTR (0xf<<28) //31:28
2502#define A60931_RG_SSUSB_G2_CDR_BIC_LTD0 (0xf<<24) //27:24
2503#define A60931_RG_SSUSB_G2_CDR_BC_LTD1 (0x1f<<16) //20:16
2504#define A60931_RG_SSUSB_G2_L1SS_CDR_BW_SEL (0x3<<13) //14:13
2505#define A60931_RG_SSUSB_G2_CDR_BC_LTR (0x1f<<8) //12:8
2506#define A60931_RG_SSUSB_G2_CDR_BW_SEL (0x3<<5) //6:5
2507#define A60931_RG_SSUSB_G2_CDR_BC_LTD0 (0x1f<<0) //4:0
2508
2509//U3D_B2_PHYD_TOP7
2510#define A60931_RG_SSUSB_G2_CDR_BIR_LTD1 (0x1f<<24) //28:24
2511#define A60931_RG_SSUSB_G2_CDR_BIR_LTR (0x1f<<16) //20:16
2512#define A60931_RG_SSUSB_G2_CDR_BIR_LTD0 (0x1f<<8) //12:8
2513#define A60931_RG_SSUSB_G2_CDR_BIC_LTD1 (0xf<<0) //3:0
2514
2515//U3D_B2_PHYD_P_SIGDET1
2516#define A60931_RG_SSUSB_P_SIGDET_FLT_DIS (0x1<<31) //31:31
2517#define A60931_RG_SSUSB_P_SIGDET_FLT_G2_DEAST_SEL (0x7f<<24) //30:24
2518#define A60931_RG_SSUSB_P_SIGDET_FLT_G1_DEAST_SEL (0x7f<<16) //22:16
2519#define A60931_RG_SSUSB_P_SIGDET_FLT_P2_AST_SEL (0x7f<<8) //14:8
2520#define A60931_RG_SSUSB_P_SIGDET_FLT_PX_AST_SEL (0x7f<<0) //6:0
2521
2522//U3D_B2_PHYD_P_SIGDET2
2523#define A60931_RG_SSUSB_P_SIGDET_RX_VAL_S (0x1<<29) //29:29
2524#define A60931_RG_SSUSB_P_SIGDET_L0S_DEAS_SEL (0x1<<28) //28:28
2525#define A60931_RG_SSUSB_P_SIGDET_L0_EXIT_S (0x1<<27) //27:27
2526#define A60931_RG_SSUSB_P_SIGDET_L0S_EXIT_T_S (0x3<<25) //26:25
2527#define A60931_RG_SSUSB_P_SIGDET_L0S_EXIT_S (0x1<<24) //24:24
2528#define A60931_RG_SSUSB_P_SIGDET_L0S_ENTRY_S (0x1<<16) //16:16
2529#define A60931_RG_SSUSB_P_SIGDET_PRB_SEL (0x1<<10) //10:10
2530#define A60931_RG_SSUSB_P_SIGDET_BK_SIG_T (0x3<<8) //9:8
2531#define A60931_RG_SSUSB_P_SIGDET_P2_RXLFPS (0x1<<6) //6:6
2532#define A60931_RG_SSUSB_P_SIGDET_NON_BK_AD (0x1<<5) //5:5
2533#define A60931_RG_SSUSB_P_SIGDET_BK_B_RXEQ (0x1<<4) //4:4
2534#define A60931_RG_SSUSB_P_SIGDET_G2_KO_SEL (0x3<<2) //3:2
2535#define A60931_RG_SSUSB_P_SIGDET_G1_KO_SEL (0x3<<0) //1:0
2536
2537//U3D_B2_PHYD_P_SIGDET_CAL1
2538#define A60931_RG_SSUSB_G2_2EIOS_DET_EN (0x1<<29) //29:29
2539#define A60931_RG_SSUSB_P_SIGDET_CAL_OFFSET (0x1f<<24) //28:24
2540#define A60931_RG_SSUSB_P_FORCE_SIGDET_CAL_OFFSET (0x1<<16) //16:16
2541#define A60931_RG_SSUSB_P_SIGDET_CAL_EN (0x1<<8) //8:8
2542#define A60931_RG_SSUSB_P_FORCE_SIGDET_CAL_EN (0x1<<3) //3:3
2543#define A60931_RG_SSUSB_P_SIGDET_FLT_EN (0x1<<2) //2:2
2544#define A60931_RG_SSUSB_P_SIGDET_SAMPLE_PRD (0x1<<1) //1:1
2545#define A60931_RG_SSUSB_P_SIGDET_REK (0x1<<0) //0:0
2546
2547//U3D_B2_PHYD_RXDET1
2548#define A60931_RG_SSUSB_RXDET_PRB_SEL (0x1<<31) //31:31
2549#define A60931_RG_SSUSB_FORCE_CMDET (0x1<<30) //30:30
2550#define A60931_RG_SSUSB_RXDET_EN (0x1<<29) //29:29
2551#define A60931_RG_SSUSB_FORCE_RXDET_EN (0x1<<28) //28:28
2552#define A60931_RG_SSUSB_RXDET_K_TWICE (0x1<<27) //27:27
2553#define A60931_RG_SSUSB_RXDET_STB3_SET (0x1ff<<18) //26:18
2554#define A60931_RG_SSUSB_RXDET_STB2_SET (0x1ff<<9) //17:9
2555#define A60931_RG_SSUSB_RXDET_STB1_SET (0x1ff<<0) //8:0
2556
2557//U3D_B2_PHYD_RXDET2
2558#define A60931_RG_SSUSB_PHYD_TRAINDEC_FORCE_CGEN (0x1<<31) //31:31
2559#define A60931_RG_SSUSB_PHYD_BERTLB_FORCE_CGEN (0x1<<30) //30:30
2560#define A60931_RG_SSUSB_PHYD_T2RLB_FORCE_CGEN (0x1<<29) //29:29
2561#define A60931_RG_SSUSB_LCK2REF_EXT_EN (0x1<<28) //28:28
2562#define A60931_RG_SSUSB_G2_LCK2REF_EXT_SEL (0xf<<24) //27:24
2563#define A60931_RG_SSUSB_LCK2REF_EXT_SEL (0xf<<20) //23:20
2564#define A60931_RG_SSUSB_PDN_T_SEL (0x3<<18) //19:18
2565#define A60931_RG_SSUSB_RXDET_STB3_SET_P3 (0x1ff<<9) //17:9
2566#define A60931_RG_SSUSB_RXDET_STB2_SET_P3 (0x1ff<<0) //8:0
2567
2568//U3D_B2_PHYD_MISC0
2569#define A60931_RG_SSUSB_TX_EIDLE_LP_P0DLYCYC (0x3f<<26) //31:26
2570#define A60931_RG_SSUSB_TX_SER_EN (0x1<<25) //25:25
2571#define A60931_RG_SSUSB_FORCE_TX_SER_EN (0x1<<24) //24:24
2572#define A60931_RG_SSUSB_TXPLL_REFCKSEL (0x1<<23) //23:23
2573#define A60931_RG_SSUSB_FORCE_PLL_DDS_HF_EN (0x1<<22) //22:22
2574#define A60931_RG_SSUSB_PLL_DDS_HF_EN_MAN (0x1<<21) //21:21
2575#define A60931_RG_SSUSB_RXLFPS_ENTXDRV (0x1<<20) //20:20
2576#define A60931_RG_SSUSB_RX_FL_UNLOCKTH (0xf<<16) //19:16
2577#define A60931_RG_SSUSB_LFPS_PSEL (0x1<<15) //15:15
2578#define A60931_RG_SSUSB_RX_SIGDET_EN (0x1<<14) //14:14
2579#define A60931_RG_SSUSB_RX_SIGDET_EN_SEL (0x1<<13) //13:13
2580#define A60931_RG_SSUSB_RX_PI_CAL_EN (0x1<<12) //12:12
2581#define A60931_RG_SSUSB_RX_PI_CAL_EN_SEL (0x1<<11) //11:11
2582#define A60931_RG_SSUSB_P3_CLS_CK_SEL (0x1<<10) //10:10
2583#define A60931_RG_SSUSB_T2RLB_PSEL (0x3<<8) //9:8
2584#define A60931_RG_SSUSB_PPCTL_PSEL (0x7<<5) //7:5
2585#define A60931_RG_SSUSB_PHYD_TX_DATA_INV (0x1<<4) //4:4
2586#define A60931_RG_SSUSB_BERTLB_PSEL (0x3<<2) //3:2
2587#define A60931_RG_SSUSB_RETRACK_DIS (0x1<<1) //1:1
2588#define A60931_RG_SSUSB_PPERRCNT_CLR (0x1<<0) //0:0
2589
2590//U3D_B2_PHYD_MISC2
2591#define A60931_RG_SSUSB_FRC_PLL_DDS_PREDIV2 (0x1<<31) //31:31
2592#define A60931_RG_SSUSB_FRC_PLL_DDS_IADJ (0xf<<27) //30:27
2593#define A60931_RG_SSUSB_P_SIGDET_125FILTER (0x1<<26) //26:26
2594#define A60931_RG_SSUSB_P_SIGDET_RST_FILTER (0x1<<25) //25:25
2595#define A60931_RG_SSUSB_P_SIGDET_EID_USE_RAW (0x1<<24) //24:24
2596#define A60931_RG_SSUSB_P_SIGDET_LTD_USE_RAW (0x1<<23) //23:23
2597#define A60931_RG_SSUSB_EIDLE_BF_RXDET (0x1<<22) //22:22
2598#define A60931_RG_SSUSB_EIDLE_LP_STBCYC (0x1ff<<13) //21:13
2599#define A60931_RG_SSUSB_TX_EIDLE_LP_POSTDLY (0x3f<<7) //12:7
2600#define A60931_RG_SSUSB_TX_EIDLE_LP_PREDLY (0x3f<<1) //6:1
2601#define A60931_RG_SSUSB_TX_EIDLE_LP_EN_ADV (0x1<<0) //0:0
2602
2603//U3D_B2_PHYD_MISC3
2604#define A60931_RGS_SSUSB_DDS_CALIB_C_STATE (0x7<<16) //18:16
2605#define A60931_RGS_SSUSB_PPERRCNT (0xffff<<0) //15:0
2606
2607//U3D_B2_PHYD_L1SS
2608#define A60931_RG_SSUSB_L1SS_REV1 (0xff<<24) //31:24
2609#define A60931_RG_SSUSB_L1SS_REV0 (0xff<<16) //23:16
2610#define A60931_RG_SSUSB_P_LTD1_SLOCK_DIS (0x1<<11) //11:11
2611#define A60931_RG_SSUSB_PLL_CNT_CLEAN_DIS (0x1<<10) //10:10
2612#define A60931_RG_SSUSB_P_PLL_REK_SEL (0x1<<9) //9:9
2613#define A60931_RG_SSUSB_TXDRV_MASKDLY (0x1<<8) //8:8
2614#define A60931_RG_SSUSB_RXSTS_VAL (0x1<<7) //7:7
2615#define A60931_RG_PCIE_PHY_CLKREQ_N_EN (0x1<<6) //6:6
2616#define A60931_RG_PCIE_FORCE_PHY_CLKREQ_N_EN (0x1<<5) //5:5
2617#define A60931_RG_PCIE_PHY_CLKREQ_N_OUT (0x1<<4) //4:4
2618#define A60931_RG_PCIE_FORCE_PHY_CLKREQ_N_OUT (0x1<<3) //3:3
2619#define A60931_RG_SSUSB_RXPLL_STB_PX0 (0x1<<2) //2:2
2620#define A60931_RG_PCIE_L1SS_EN (0x1<<1) //1:1
2621#define A60931_RG_PCIE_FORCE_L1SS_EN (0x1<<0) //0:0
2622
2623//U3D_B2_ROSC_0
2624#define A60931_RG_SSUSB_RING_OSC_CNTEND (0x1ff<<23) //31:23
2625#define A60931_RG_SSUSB_XTAL_OSC_CNTEND (0x7f<<16) //22:16
2626#define A60931_RG_SSUSB_RING_OSC_EN (0x1<<3) //3:3
2627#define A60931_RG_SSUSB_RING_OSC_FORCE_EN (0x1<<2) //2:2
2628#define A60931_RG_SSUSB_FRC_RING_BYPASS_DET (0x1<<1) //1:1
2629#define A60931_RG_SSUSB_RING_BYPASS_DET (0x1<<0) //0:0
2630
2631//U3D_B2_ROSC_1
2632#define A60931_RG_SSUSB_RING_OSC_FRC_P3 (0x1<<20) //20:20
2633#define A60931_RG_SSUSB_RING_OSC_P3 (0x1<<19) //19:19
2634#define A60931_RG_SSUSB_RING_OSC_FRC_RECAL (0x3<<17) //18:17
2635#define A60931_RG_SSUSB_RING_OSC_RECAL (0x1<<16) //16:16
2636#define A60931_RG_SSUSB_RING_OSC_SEL (0xff<<8) //15:8
2637#define A60931_RG_SSUSB_RING_OSC_FRC_SEL (0x1<<0) //0:0
2638
2639//U3D_B2_ROSC_2
2640#define A60931_RG_SSUSB_RING_DET_STRCYC2 (0xffff<<16) //31:16
2641#define A60931_RG_SSUSB_RING_DET_STRCYC1 (0xffff<<0) //15:0
2642
2643//U3D_B2_ROSC_3
2644#define A60931_RG_SSUSB_RING_DET_DETWIN1 (0xffff<<16) //31:16
2645#define A60931_RG_SSUSB_RING_DET_STRCYC3 (0xffff<<0) //15:0
2646
2647//U3D_B2_ROSC_4
2648#define A60931_RG_SSUSB_RING_DET_DETWIN3 (0xffff<<16) //31:16
2649#define A60931_RG_SSUSB_RING_DET_DETWIN2 (0xffff<<0) //15:0
2650
2651//U3D_B2_ROSC_5
2652#define A60931_RG_SSUSB_RING_DET_LBOND1 (0xffff<<16) //31:16
2653#define A60931_RG_SSUSB_RING_DET_UBOND1 (0xffff<<0) //15:0
2654
2655//U3D_B2_ROSC_6
2656#define A60931_RG_SSUSB_RING_DET_LBOND2 (0xffff<<16) //31:16
2657#define A60931_RG_SSUSB_RING_DET_UBOND2 (0xffff<<0) //15:0
2658
2659//U3D_B2_ROSC_7
2660#define A60931_RG_SSUSB_RING_DET_LBOND3 (0xffff<<16) //31:16
2661#define A60931_RG_SSUSB_RING_DET_UBOND3 (0xffff<<0) //15:0
2662
2663//U3D_B2_ROSC_8
2664#define A60931_RG_SSUSB_RING_RESERVE (0xffff<<16) //31:16
2665#define A60931_RG_SSUSB_ROSC_PROB_SEL (0xf<<2) //5:2
2666#define A60931_RG_SSUSB_RING_FREQMETER_EN (0x1<<1) //1:1
2667#define A60931_RG_SSUSB_RING_DET_BPS_UBOND (0x1<<0) //0:0
2668
2669//U3D_B2_ROSC_9
2670#define A60931_RGS_FM_RING_CNT (0xffff<<16) //31:16
2671#define A60931_RGS_SSUSB_RING_OSC_STATE (0x3<<10) //11:10
2672#define A60931_RGS_SSUSB_RING_OSC_STABLE (0x1<<9) //9:9
2673#define A60931_RGS_SSUSB_RING_OSC_CAL_FAIL (0x1<<8) //8:8
2674#define A60931_RGS_SSUSB_RING_OSC_CAL (0xff<<0) //7:0
2675
2676//U3D_B2_ROSC_A
2677#define A60931_RGS_SSUSB_ROSC_PROB_OUT (0xff<<0) //7:0
2678
2679//U3D_PHYD_VERSION
2680#define A60931_RGS_SSUSB_PHYD_VERSION (0xffffffff<<0) //31:0
2681
2682//U3D_PHYD_MODEL
2683#define A60931_RGS_SSUSB_PHYD_MODEL (0xffffffff<<0) //31:0
2684
2685/* OFFSET */
2686
2687//U3D_B2_PHYD_TOP1
2688#define A60931_RG_SSUSB_PCIE2_K_EMP_OFST (28)
2689#define A60931_RG_SSUSB_PCIE2_K_FUL_OFST (24)
2690#define A60931_RG_SSUSB_TX_EIDLE_LP_EN_OFST (17)
2691#define A60931_RG_SSUSB_FORCE_TX_EIDLE_LP_EN_OFST (16)
2692#define A60931_RG_SSUSB_SIGDET_EN_OFST (15)
2693#define A60931_RG_SSUSB_FORCE_SIGDET_EN_OFST (14)
2694#define A60931_RG_SSUSB_CLKRX_EN_OFST (13)
2695#define A60931_RG_SSUSB_FORCE_CLKRX_EN_OFST (12)
2696#define A60931_RG_SSUSB_CLKTX_EN_OFST (11)
2697#define A60931_RG_SSUSB_FORCE_CLKTX_EN_OFST (10)
2698#define A60931_RG_SSUSB_CLK_REQ_N_I_OFST (9)
2699#define A60931_RG_SSUSB_FORCE_CLK_REQ_N_I_OFST (8)
2700#define A60931_RG_SSUSB_RATE_OFST (6)
2701#define A60931_RG_SSUSB_FORCE_RATE_OFST (5)
2702#define A60931_RG_SSUSB_PCIE_MODE_SEL_OFST (4)
2703#define A60931_RG_SSUSB_FORCE_PCIE_MODE_SEL_OFST (3)
2704#define A60931_RG_SSUSB_PHY_MODE_OFST (1)
2705#define A60931_RG_SSUSB_FORCE_PHY_MODE_OFST (0)
2706
2707//U3D_B2_PHYD_TOP2
2708#define A60931_RG_SSUSB_FORCE_IDRV_6DB_OFST (30)
2709#define A60931_RG_SSUSB_IDRV_6DB_OFST (24)
2710#define A60931_RG_SSUSB_FORCE_IDEM_3P5DB_OFST (22)
2711#define A60931_RG_SSUSB_IDEM_3P5DB_OFST (16)
2712#define A60931_RG_SSUSB_FORCE_IDRV_3P5DB_OFST (14)
2713#define A60931_RG_SSUSB_IDRV_3P5DB_OFST (8)
2714#define A60931_RG_SSUSB_FORCE_IDRV_0DB_OFST (6)
2715#define A60931_RG_SSUSB_IDRV_0DB_OFST (0)
2716
2717//U3D_B2_PHYD_TOP3
2718#define A60931_RG_SSUSB_TX_BIASI_OFST (25)
2719#define A60931_RG_SSUSB_FORCE_TX_BIASI_EN_OFST (24)
2720#define A60931_RG_SSUSB_TX_BIASI_EN_OFST (16)
2721#define A60931_RG_SSUSB_FORCE_TX_BIASI_OFST (13)
2722#define A60931_RG_SSUSB_FORCE_IDEM_6DB_OFST (8)
2723#define A60931_RG_SSUSB_IDEM_6DB_OFST (0)
2724
2725//U3D_B2_PHYD_TOP4
2726#define A60931_RG_SSUSB_G1_CDR_BIC_LTR_OFST (28)
2727#define A60931_RG_SSUSB_G1_CDR_BIC_LTD0_OFST (24)
2728#define A60931_RG_SSUSB_G1_CDR_BC_LTD1_OFST (16)
2729#define A60931_RG_SSUSB_G1_L1SS_CDR_BW_SEL_OFST (13)
2730#define A60931_RG_SSUSB_G1_CDR_BC_LTR_OFST (8)
2731#define A60931_RG_SSUSB_G1_CDR_BW_SEL_OFST (5)
2732#define A60931_RG_SSUSB_G1_CDR_BC_LTD0_OFST (0)
2733
2734//U3D_B2_PHYD_TOP5
2735#define A60931_RG_SSUSB_G1_CDR_BIR_LTD1_OFST (24)
2736#define A60931_RG_SSUSB_G1_CDR_BIR_LTR_OFST (16)
2737#define A60931_RG_SSUSB_G1_CDR_BIR_LTD0_OFST (8)
2738#define A60931_RG_SSUSB_G1_CDR_BIC_LTD1_OFST (0)
2739
2740//U3D_B2_PHYD_TOP6
2741#define A60931_RG_SSUSB_G2_CDR_BIC_LTR_OFST (28)
2742#define A60931_RG_SSUSB_G2_CDR_BIC_LTD0_OFST (24)
2743#define A60931_RG_SSUSB_G2_CDR_BC_LTD1_OFST (16)
2744#define A60931_RG_SSUSB_G2_L1SS_CDR_BW_SEL_OFST (13)
2745#define A60931_RG_SSUSB_G2_CDR_BC_LTR_OFST (8)
2746#define A60931_RG_SSUSB_G2_CDR_BW_SEL_OFST (5)
2747#define A60931_RG_SSUSB_G2_CDR_BC_LTD0_OFST (0)
2748
2749//U3D_B2_PHYD_TOP7
2750#define A60931_RG_SSUSB_G2_CDR_BIR_LTD1_OFST (24)
2751#define A60931_RG_SSUSB_G2_CDR_BIR_LTR_OFST (16)
2752#define A60931_RG_SSUSB_G2_CDR_BIR_LTD0_OFST (8)
2753#define A60931_RG_SSUSB_G2_CDR_BIC_LTD1_OFST (0)
2754
2755//U3D_B2_PHYD_P_SIGDET1
2756#define A60931_RG_SSUSB_P_SIGDET_FLT_DIS_OFST (31)
2757#define A60931_RG_SSUSB_P_SIGDET_FLT_G2_DEAST_SEL_OFST (24)
2758#define A60931_RG_SSUSB_P_SIGDET_FLT_G1_DEAST_SEL_OFST (16)
2759#define A60931_RG_SSUSB_P_SIGDET_FLT_P2_AST_SEL_OFST (8)
2760#define A60931_RG_SSUSB_P_SIGDET_FLT_PX_AST_SEL_OFST (0)
2761
2762//U3D_B2_PHYD_P_SIGDET2
2763#define A60931_RG_SSUSB_P_SIGDET_RX_VAL_S_OFST (29)
2764#define A60931_RG_SSUSB_P_SIGDET_L0S_DEAS_SEL_OFST (28)
2765#define A60931_RG_SSUSB_P_SIGDET_L0_EXIT_S_OFST (27)
2766#define A60931_RG_SSUSB_P_SIGDET_L0S_EXIT_T_S_OFST (25)
2767#define A60931_RG_SSUSB_P_SIGDET_L0S_EXIT_S_OFST (24)
2768#define A60931_RG_SSUSB_P_SIGDET_L0S_ENTRY_S_OFST (16)
2769#define A60931_RG_SSUSB_P_SIGDET_PRB_SEL_OFST (10)
2770#define A60931_RG_SSUSB_P_SIGDET_BK_SIG_T_OFST (8)
2771#define A60931_RG_SSUSB_P_SIGDET_P2_RXLFPS_OFST (6)
2772#define A60931_RG_SSUSB_P_SIGDET_NON_BK_AD_OFST (5)
2773#define A60931_RG_SSUSB_P_SIGDET_BK_B_RXEQ_OFST (4)
2774#define A60931_RG_SSUSB_P_SIGDET_G2_KO_SEL_OFST (2)
2775#define A60931_RG_SSUSB_P_SIGDET_G1_KO_SEL_OFST (0)
2776
2777//U3D_B2_PHYD_P_SIGDET_CAL1
2778#define A60931_RG_SSUSB_G2_2EIOS_DET_EN_OFST (29)
2779#define A60931_RG_SSUSB_P_SIGDET_CAL_OFFSET_OFST (24)
2780#define A60931_RG_SSUSB_P_FORCE_SIGDET_CAL_OFFSET_OFST (16)
2781#define A60931_RG_SSUSB_P_SIGDET_CAL_EN_OFST (8)
2782#define A60931_RG_SSUSB_P_FORCE_SIGDET_CAL_EN_OFST (3)
2783#define A60931_RG_SSUSB_P_SIGDET_FLT_EN_OFST (2)
2784#define A60931_RG_SSUSB_P_SIGDET_SAMPLE_PRD_OFST (1)
2785#define A60931_RG_SSUSB_P_SIGDET_REK_OFST (0)
2786
2787//U3D_B2_PHYD_RXDET1
2788#define A60931_RG_SSUSB_RXDET_PRB_SEL_OFST (31)
2789#define A60931_RG_SSUSB_FORCE_CMDET_OFST (30)
2790#define A60931_RG_SSUSB_RXDET_EN_OFST (29)
2791#define A60931_RG_SSUSB_FORCE_RXDET_EN_OFST (28)
2792#define A60931_RG_SSUSB_RXDET_K_TWICE_OFST (27)
2793#define A60931_RG_SSUSB_RXDET_STB3_SET_OFST (18)
2794#define A60931_RG_SSUSB_RXDET_STB2_SET_OFST (9)
2795#define A60931_RG_SSUSB_RXDET_STB1_SET_OFST (0)
2796
2797//U3D_B2_PHYD_RXDET2
2798#define A60931_RG_SSUSB_PHYD_TRAINDEC_FORCE_CGEN_OFST (31)
2799#define A60931_RG_SSUSB_PHYD_BERTLB_FORCE_CGEN_OFST (30)
2800#define A60931_RG_SSUSB_PHYD_T2RLB_FORCE_CGEN_OFST (29)
2801#define A60931_RG_SSUSB_LCK2REF_EXT_EN_OFST (28)
2802#define A60931_RG_SSUSB_G2_LCK2REF_EXT_SEL_OFST (24)
2803#define A60931_RG_SSUSB_LCK2REF_EXT_SEL_OFST (20)
2804#define A60931_RG_SSUSB_PDN_T_SEL_OFST (18)
2805#define A60931_RG_SSUSB_RXDET_STB3_SET_P3_OFST (9)
2806#define A60931_RG_SSUSB_RXDET_STB2_SET_P3_OFST (0)
2807
2808//U3D_B2_PHYD_MISC0
2809#define A60931_RG_SSUSB_TX_EIDLE_LP_P0DLYCYC_OFST (26)
2810#define A60931_RG_SSUSB_TX_SER_EN_OFST (25)
2811#define A60931_RG_SSUSB_FORCE_TX_SER_EN_OFST (24)
2812#define A60931_RG_SSUSB_TXPLL_REFCKSEL_OFST (23)
2813#define A60931_RG_SSUSB_FORCE_PLL_DDS_HF_EN_OFST (22)
2814#define A60931_RG_SSUSB_PLL_DDS_HF_EN_MAN_OFST (21)
2815#define A60931_RG_SSUSB_RXLFPS_ENTXDRV_OFST (20)
2816#define A60931_RG_SSUSB_RX_FL_UNLOCKTH_OFST (16)
2817#define A60931_RG_SSUSB_LFPS_PSEL_OFST (15)
2818#define A60931_RG_SSUSB_RX_SIGDET_EN_OFST (14)
2819#define A60931_RG_SSUSB_RX_SIGDET_EN_SEL_OFST (13)
2820#define A60931_RG_SSUSB_RX_PI_CAL_EN_OFST (12)
2821#define A60931_RG_SSUSB_RX_PI_CAL_EN_SEL_OFST (11)
2822#define A60931_RG_SSUSB_P3_CLS_CK_SEL_OFST (10)
2823#define A60931_RG_SSUSB_T2RLB_PSEL_OFST (8)
2824#define A60931_RG_SSUSB_PPCTL_PSEL_OFST (5)
2825#define A60931_RG_SSUSB_PHYD_TX_DATA_INV_OFST (4)
2826#define A60931_RG_SSUSB_BERTLB_PSEL_OFST (2)
2827#define A60931_RG_SSUSB_RETRACK_DIS_OFST (1)
2828#define A60931_RG_SSUSB_PPERRCNT_CLR_OFST (0)
2829
2830//U3D_B2_PHYD_MISC2
2831#define A60931_RG_SSUSB_FRC_PLL_DDS_PREDIV2_OFST (31)
2832#define A60931_RG_SSUSB_FRC_PLL_DDS_IADJ_OFST (27)
2833#define A60931_RG_SSUSB_P_SIGDET_125FILTER_OFST (26)
2834#define A60931_RG_SSUSB_P_SIGDET_RST_FILTER_OFST (25)
2835#define A60931_RG_SSUSB_P_SIGDET_EID_USE_RAW_OFST (24)
2836#define A60931_RG_SSUSB_P_SIGDET_LTD_USE_RAW_OFST (23)
2837#define A60931_RG_SSUSB_EIDLE_BF_RXDET_OFST (22)
2838#define A60931_RG_SSUSB_EIDLE_LP_STBCYC_OFST (13)
2839#define A60931_RG_SSUSB_TX_EIDLE_LP_POSTDLY_OFST (7)
2840#define A60931_RG_SSUSB_TX_EIDLE_LP_PREDLY_OFST (1)
2841#define A60931_RG_SSUSB_TX_EIDLE_LP_EN_ADV_OFST (0)
2842
2843//U3D_B2_PHYD_MISC3
2844#define A60931_RGS_SSUSB_DDS_CALIB_C_STATE_OFST (16)
2845#define A60931_RGS_SSUSB_PPERRCNT_OFST (0)
2846
2847//U3D_B2_PHYD_L1SS
2848#define A60931_RG_SSUSB_L1SS_REV1_OFST (24)
2849#define A60931_RG_SSUSB_L1SS_REV0_OFST (16)
2850#define A60931_RG_SSUSB_P_LTD1_SLOCK_DIS_OFST (11)
2851#define A60931_RG_SSUSB_PLL_CNT_CLEAN_DIS_OFST (10)
2852#define A60931_RG_SSUSB_P_PLL_REK_SEL_OFST (9)
2853#define A60931_RG_SSUSB_TXDRV_MASKDLY_OFST (8)
2854#define A60931_RG_SSUSB_RXSTS_VAL_OFST (7)
2855#define A60931_RG_PCIE_PHY_CLKREQ_N_EN_OFST (6)
2856#define A60931_RG_PCIE_FORCE_PHY_CLKREQ_N_EN_OFST (5)
2857#define A60931_RG_PCIE_PHY_CLKREQ_N_OUT_OFST (4)
2858#define A60931_RG_PCIE_FORCE_PHY_CLKREQ_N_OUT_OFST (3)
2859#define A60931_RG_SSUSB_RXPLL_STB_PX0_OFST (2)
2860#define A60931_RG_PCIE_L1SS_EN_OFST (1)
2861#define A60931_RG_PCIE_FORCE_L1SS_EN_OFST (0)
2862
2863//U3D_B2_ROSC_0
2864#define A60931_RG_SSUSB_RING_OSC_CNTEND_OFST (23)
2865#define A60931_RG_SSUSB_XTAL_OSC_CNTEND_OFST (16)
2866#define A60931_RG_SSUSB_RING_OSC_EN_OFST (3)
2867#define A60931_RG_SSUSB_RING_OSC_FORCE_EN_OFST (2)
2868#define A60931_RG_SSUSB_FRC_RING_BYPASS_DET_OFST (1)
2869#define A60931_RG_SSUSB_RING_BYPASS_DET_OFST (0)
2870
2871//U3D_B2_ROSC_1
2872#define A60931_RG_SSUSB_RING_OSC_FRC_P3_OFST (20)
2873#define A60931_RG_SSUSB_RING_OSC_P3_OFST (19)
2874#define A60931_RG_SSUSB_RING_OSC_FRC_RECAL_OFST (17)
2875#define A60931_RG_SSUSB_RING_OSC_RECAL_OFST (16)
2876#define A60931_RG_SSUSB_RING_OSC_SEL_OFST (8)
2877#define A60931_RG_SSUSB_RING_OSC_FRC_SEL_OFST (0)
2878
2879//U3D_B2_ROSC_2
2880#define A60931_RG_SSUSB_RING_DET_STRCYC2_OFST (16)
2881#define A60931_RG_SSUSB_RING_DET_STRCYC1_OFST (0)
2882
2883//U3D_B2_ROSC_3
2884#define A60931_RG_SSUSB_RING_DET_DETWIN1_OFST (16)
2885#define A60931_RG_SSUSB_RING_DET_STRCYC3_OFST (0)
2886
2887//U3D_B2_ROSC_4
2888#define A60931_RG_SSUSB_RING_DET_DETWIN3_OFST (16)
2889#define A60931_RG_SSUSB_RING_DET_DETWIN2_OFST (0)
2890
2891//U3D_B2_ROSC_5
2892#define A60931_RG_SSUSB_RING_DET_LBOND1_OFST (16)
2893#define A60931_RG_SSUSB_RING_DET_UBOND1_OFST (0)
2894
2895//U3D_B2_ROSC_6
2896#define A60931_RG_SSUSB_RING_DET_LBOND2_OFST (16)
2897#define A60931_RG_SSUSB_RING_DET_UBOND2_OFST (0)
2898
2899//U3D_B2_ROSC_7
2900#define A60931_RG_SSUSB_RING_DET_LBOND3_OFST (16)
2901#define A60931_RG_SSUSB_RING_DET_UBOND3_OFST (0)
2902
2903//U3D_B2_ROSC_8
2904#define A60931_RG_SSUSB_RING_RESERVE_OFST (16)
2905#define A60931_RG_SSUSB_ROSC_PROB_SEL_OFST (2)
2906#define A60931_RG_SSUSB_RING_FREQMETER_EN_OFST (1)
2907#define A60931_RG_SSUSB_RING_DET_BPS_UBOND_OFST (0)
2908
2909//U3D_B2_ROSC_9
2910#define A60931_RGS_FM_RING_CNT_OFST (16)
2911#define A60931_RGS_SSUSB_RING_OSC_STATE_OFST (10)
2912#define A60931_RGS_SSUSB_RING_OSC_STABLE_OFST (9)
2913#define A60931_RGS_SSUSB_RING_OSC_CAL_FAIL_OFST (8)
2914#define A60931_RGS_SSUSB_RING_OSC_CAL_OFST (0)
2915
2916//U3D_B2_ROSC_A
2917#define A60931_RGS_SSUSB_ROSC_PROB_OUT_OFST (0)
2918
2919//U3D_PHYD_VERSION
2920#define A60931_RGS_SSUSB_PHYD_VERSION_OFST (0)
2921
2922//U3D_PHYD_MODEL
2923#define A60931_RGS_SSUSB_PHYD_MODEL_OFST (0)
2924
2925///////////////////////////////////////////////////////////////////////////////
2926
2927struct a60931_sifslv_chip_reg_a {
2928 //0x0
2929 u32 gpio_ctla;
2930 u32 gpio_ctlb;
2931 u32 gpio_ctlc;
2932};
2933
2934///////////////////////////////////////////////////////////////////////////////
2935
2936struct a60931_sifslv_fm_reg_a {
2937 //0x0
2938 u32 fmcr0;
2939 u32 fmcr1;
2940 u32 fmcr2;
2941 u32 fmmonr0;
2942 //0X10
2943 u32 fmmonr1;
2944 u32 reserve0;
2945 u32 reserve1;
2946 u32 reserve2;
2947 //0x20~0x70
2948 u32 reserve3[24];
2949 //0X80
2950 u32 reserve4;
2951 u32 reserve5;
2952 u32 reserve6;
2953 u32 reserve7;
2954 //0X90
2955 u32 reserve8;
2956 u32 reserve9;
2957 u32 reserve10;
2958 u32 reserve11;
2959};
2960
2961//U3D_FMCR0
2962#define A60931_RG_LOCKTH (0xf<<28) //31:28
2963#define A60931_RG_MONCLK_SEL (0x3<<26) //27:26
2964#define A60931_RG_FM_MODE (0x1<<25) //25:25
2965#define A60931_RG_FREQDET_EN (0x1<<24) //24:24
2966#define A60931_RG_CYCLECNT (0xffffff<<0) //23:0
2967
2968//U3D_FMCR1
2969#define A60931_RG_TARGET (0xffffffff<<0) //31:0
2970
2971//U3D_FMCR2
2972#define A60931_RG_OFFSET (0xffffffff<<0) //31:0
2973
2974//U3D_FMMONR0
2975#define A60931_USB_FM_OUT (0xffffffff<<0) //31:0
2976
2977//U3D_FMMONR1
2978#define A60931_RG_MONCLK_SEL_2 (0x1<<9) //9:9
2979#define A60931_RG_FRCK_EN (0x1<<8) //8:8
2980#define A60931_USBPLL_LOCK (0x1<<1) //1:1
2981#define A60931_USB_FM_VLD (0x1<<0) //0:0
2982
2983/* OFFSET */
2984
2985//U3D_FMCR0
2986#define A60931_RG_LOCKTH_OFST (28)
2987#define A60931_RG_MONCLK_SEL_OFST (26)
2988#define A60931_RG_FM_MODE_OFST (25)
2989#define A60931_RG_FREQDET_EN_OFST (24)
2990#define A60931_RG_CYCLECNT_OFST (0)
2991
2992//U3D_FMCR1
2993#define A60931_RG_TARGET_OFST (0)
2994
2995//U3D_FMCR2
2996#define A60931_RG_OFFSET_OFST (0)
2997
2998//U3D_FMMONR0
2999#define A60931_USB_FM_OUT_OFST (0)
3000
3001//U3D_FMMONR1
3002#define A60931_RG_MONCLK_SEL_2_OFST (9)
3003#define A60931_RG_FRCK_EN_OFST (8)
3004#define A60931_USBPLL_LOCK_OFST (1)
3005#define A60931_USB_FM_VLD_OFST (0)
3006
3007///////////////////////////////////////////////////////////////////////////////
3008
3009struct a60931_spllc_reg_a {
3010 //0x0
3011 u32 u3d_syspll_0;
3012 u32 u3d_syspll_1;
3013 u32 u3d_syspll_2;
3014 u32 u3d_syspll_sdm;
3015 //0x10
3016 u32 u3d_xtalctl_1;
3017 u32 u3d_xtalctl_2;
3018 u32 u3d_xtalctl3;
3019};
3020
3021//U3D_SYSPLL_0
3022#define A60931_RG_SSUSB_SPLL_DDSEN_CYC (0x1f<<27) //31:27
3023#define A60931_RG_SSUSB_SPLL_NCPOEN_CYC (0x3<<25) //26:25
3024#define A60931_RG_SSUSB_SPLL_STBCYC (0x1ff<<16) //24:16
3025#define A60931_RG_SSUSB_SPLL_NCPOCHG_CYC (0xf<<12) //15:12
3026#define A60931_RG_SSUSB_SYSPLL_ON (0x1<<11) //11:11
3027#define A60931_RG_SSUSB_FORCE_SYSPLLON (0x1<<10) //10:10
3028#define A60931_RG_SSUSB_SPLL_DDSRSTB_CYC (0x7<<0) //2:0
3029
3030//U3D_SYSPLL_1
3031#define A60931_RG_SSUSB_PLL_BIAS_CYC (0xff<<24) //31:24
3032#define A60931_RG_SSUSB_SYSPLL_STB (0x1<<23) //23:23
3033#define A60931_RG_SSUSB_FORCE_SYSPLL_STB (0x1<<22) //22:22
3034#define A60931_RG_SSUSB_SPLL_DDS_ISO_EN (0x1<<21) //21:21
3035#define A60931_RG_SSUSB_FORCE_SPLL_DDS_ISO_EN (0x1<<20) //20:20
3036#define A60931_RG_SSUSB_SPLL_DDS_PWR_ON (0x1<<19) //19:19
3037#define A60931_RG_SSUSB_FORCE_SPLL_DDS_PWR_ON (0x1<<18) //18:18
3038#define A60931_RG_SSUSB_PLL_BIAS_PWD (0x1<<17) //17:17
3039#define A60931_RG_SSUSB_FORCE_PLL_BIAS_PWD (0x1<<16) //16:16
3040#define A60931_RG_SSUSB_FORCE_SPLL_NCPO_EN (0x1<<15) //15:15
3041#define A60931_RG_SSUSB_FORCE_SPLL_FIFO_START_MAN (0x1<<14) //14:14
3042#define A60931_RG_SSUSB_FORCE_SPLL_NCPO_CHG (0x1<<12) //12:12
3043#define A60931_RG_SSUSB_FORCE_SPLL_DDS_RSTB (0x1<<11) //11:11
3044#define A60931_RG_SSUSB_FORCE_SPLL_DDS_PWDB (0x1<<10) //10:10
3045#define A60931_RG_SSUSB_FORCE_SPLL_DDSEN (0x1<<9) //9:9
3046#define A60931_RG_SSUSB_FORCE_SPLL_PWD (0x1<<8) //8:8
3047#define A60931_RG_SSUSB_SPLL_NCPO_EN (0x1<<7) //7:7
3048#define A60931_RG_SSUSB_SPLL_FIFO_START_MAN (0x1<<6) //6:6
3049#define A60931_RG_SSUSB_SPLL_NCPO_CHG (0x1<<4) //4:4
3050#define A60931_RG_SSUSB_SPLL_DDS_RSTB (0x1<<3) //3:3
3051#define A60931_RG_SSUSB_SPLL_DDS_PWDB (0x1<<2) //2:2
3052#define A60931_RG_SSUSB_SPLL_DDSEN (0x1<<1) //1:1
3053#define A60931_RG_SSUSB_SPLL_PWD (0x1<<0) //0:0
3054
3055//U3D_SYSPLL_2
3056#define A60931_RG_SSUSB_SPLL_P_ON_SEL (0x1<<11) //11:11
3057#define A60931_RG_SSUSB_SPLL_FBDIV_CHG (0x1<<10) //10:10
3058#define A60931_RG_SSUSB_SPLL_DDS_ISOEN_CYC (0x3ff<<0) //9:0
3059
3060//U3D_SYSPLL_SDM
3061#define A60931_RG_SSUSB_SPLL_SDM_ISO_EN_CYC (0x3ff<<14) //23:14
3062#define A60931_RG_SSUSB_SPLL_FORCE_SDM_ISO_EN (0x1<<13) //13:13
3063#define A60931_RG_SSUSB_SPLL_SDM_ISO_EN (0x1<<12) //12:12
3064#define A60931_RG_SSUSB_SPLL_SDM_PWR_ON_CYC (0x3ff<<2) //11:2
3065#define A60931_RG_SSUSB_SPLL_FORCE_SDM_PWR_ON (0x1<<1) //1:1
3066#define A60931_RG_SSUSB_SPLL_SDM_PWR_ON (0x1<<0) //0:0
3067
3068//U3D_XTALCTL_1
3069#define A60931_RG_SSUSB_BIAS_STBCYC (0x3fff<<17) //30:17
3070#define A60931_RG_SSUSB_XTAL_CLK_REQ_N (0x1<<16) //16:16
3071#define A60931_RG_SSUSB_XTAL_FORCE_CLK_REQ_N (0x1<<15) //15:15
3072#define A60931_RG_SSUSB_XTAL_STBCYC (0x7fff<<0) //14:0
3073
3074//U3D_XTALCTL_2
3075#define A60931_RG_SSUSB_INT_XTAL_SEL (0x1<<29) //29:29
3076#define A60931_RG_SSUSB_BG_LPF_DLY (0x3<<27) //28:27
3077#define A60931_RG_SSUSB_BG_LPF_EN (0x1<<26) //26:26
3078#define A60931_RG_SSUSB_FORCE_BG_LPF_EN (0x1<<25) //25:25
3079#define A60931_RG_SSUSB_P3_BIAS_PWD (0x1<<24) //24:24
3080#define A60931_RG_SSUSB_PCIE_CLKDET_HIT (0x1<<20) //20:20
3081#define A60931_RG_SSUSB_PCIE_CLKDET_EN (0x1<<19) //19:19
3082#define A60931_RG_SSUSB_FRC_PCIE_CLKDET_EN (0x1<<18) //18:18
3083#define A60931_RG_SSUSB_USB20_BIAS_EN (0x1<<17) //17:17
3084#define A60931_RG_SSUSB_USB20_SLEEP (0x1<<16) //16:16
3085#define A60931_RG_SSUSB_OSC_ONLY (0x1<<9) //9:9
3086#define A60931_RG_SSUSB_OSC_EN (0x1<<8) //8:8
3087#define A60931_RG_SSUSB_XTALBIAS_STB (0x1<<5) //5:5
3088#define A60931_RG_SSUSB_FORCE_XTALBIAS_STB (0x1<<4) //4:4
3089#define A60931_RG_SSUSB_BIAS_PWD (0x1<<3) //3:3
3090#define A60931_RG_SSUSB_XTAL_PWD (0x1<<2) //2:2
3091#define A60931_RG_SSUSB_FORCE_BIAS_PWD (0x1<<1) //1:1
3092#define A60931_RG_SSUSB_FORCE_XTAL_PWD (0x1<<0) //0:0
3093
3094//U3D_XTALCTL3
3095#define A60931_RG_SSUSB_XTALCTL_REV (0xf<<12) //15:12
3096#define A60931_RG_SSUSB_BIASIMR_EN (0x1<<11) //11:11
3097#define A60931_RG_SSUSB_FORCE_BIASIMR_EN (0x1<<10) //10:10
3098#define A60931_RG_SSUSB_XTAL_RX_PWD (0x1<<9) //9:9
3099#define A60931_RG_SSUSB_FRC_XTAL_RX_PWD (0x1<<8) //8:8
3100#define A60931_RG_SSUSB_CKBG_PROB_SEL (0x3<<6) //7:6
3101#define A60931_RG_SSUSB_XTAL_PROB_SEL (0x3<<4) //5:4
3102#define A60931_RG_SSUSB_XTAL_VREGBIAS_LPF_ENB (0x1<<3) //3:3
3103#define A60931_RG_SSUSB_XTAL_FRC_VREGBIAS_LPF_ENB (0x1<<2) //2:2
3104#define A60931_RG_SSUSB_XTAL_VREGBIAS_PWD (0x1<<1) //1:1
3105#define A60931_RG_SSUSB_XTAL_FRC_VREGBIAS_PWD (0x1<<0) //0:0
3106
3107
3108/* SSUSB_SIFSLV_SPLLC FIELD OFFSET DEFINITION */
3109
3110//U3D_SYSPLL_0
3111#define A60931_RG_SSUSB_SPLL_DDSEN_CYC_OFST (27)
3112#define A60931_RG_SSUSB_SPLL_NCPOEN_CYC_OFST (25)
3113#define A60931_RG_SSUSB_SPLL_STBCYC_OFST (16)
3114#define A60931_RG_SSUSB_SPLL_NCPOCHG_CYC_OFST (12)
3115#define A60931_RG_SSUSB_SYSPLL_ON_OFST (11)
3116#define A60931_RG_SSUSB_FORCE_SYSPLLON_OFST (10)
3117#define A60931_RG_SSUSB_SPLL_DDSRSTB_CYC_OFST (0)
3118
3119//U3D_SYA60931_SPLL_1
3120#define A60931_RG_SSUSB_PLL_BIAS_CYC_OFST (24)
3121#define A60931_RG_SSUSB_SYSPLL_STB_OFST (23)
3122#define A60931_RG_SSUSB_FORCE_SYSPLL_STB_OFST (22)
3123#define A60931_RG_SSUSB_SPLL_DDS_ISO_EN_OFST (21)
3124#define A60931_RG_SSUSB_FORCE_SPLL_DDS_ISO_EN_OFST (20)
3125#define A60931_RG_SSUSB_SPLL_DDS_PWR_ON_OFST (19)
3126#define A60931_RG_SSUSB_FORCE_SPLL_DDS_PWR_ON_OFST (18)
3127#define A60931_RG_SSUSB_PLL_BIAS_PWD_OFST (17)
3128#define A60931_RG_SSUSB_FORCE_PLL_BIAS_PWD_OFST (16)
3129#define A60931_RG_SSUSB_FORCE_SPLL_NCPO_EN_OFST (15)
3130#define A60931_RG_SSUSB_FORCE_SPLL_FIFO_START_MAN_OFST (14)
3131#define A60931_RG_SSUSB_FORCE_SPLL_NCPO_CHG_OFST (12)
3132#define A60931_RG_SSUSB_FORCE_SPLL_DDS_RSTB_OFST (11)
3133#define A60931_RG_SSUSB_FORCE_SPLL_DDS_PWDB_OFST (10)
3134#define A60931_RG_SSUSB_FORCE_SPLL_DDSEN_OFST (9)
3135#define A60931_RG_SSUSB_FORCE_SPLL_PWD_OFST (8)
3136#define A60931_RG_SSUSB_SPLL_NCPO_EN_OFST (7)
3137#define A60931_RG_SSUSB_SPLL_FIFO_START_MAN_OFST (6)
3138#define A60931_RG_SSUSB_SPLL_NCPO_CHG_OFST (4)
3139#define A60931_RG_SSUSB_SPLL_DDS_RSTB_OFST (3)
3140#define A60931_RG_SSUSB_SPLL_DDS_PWDB_OFST (2)
3141#define A60931_RG_SSUSB_SPLL_DDSEN_OFST (1)
3142#define A60931_RG_SSUSB_SPLL_PWD_OFST (0)
3143
3144//U3D_SYSPLL_2
3145#define A60931_RG_SSUSB_SPLL_P_ON_SEL_OFST (11)
3146#define A60931_RG_SSUSB_SPLL_FBDIV_CHG_OFST (10)
3147#define A60931_RG_SSUSB_SPLL_DDS_ISOEN_CYC_OFST (0)
3148
3149//U3D_SYSPLL_SDM
3150#define A60931_RG_SSUSB_SPLL_SDM_ISO_EN_CYC_OFST (14)
3151#define A60931_RG_SSUSB_SPLL_FORCE_SDM_ISO_EN_OFST (13)
3152#define A60931_RG_SSUSB_SPLL_SDM_ISO_EN_OFST (12)
3153#define A60931_RG_SSUSB_SPLL_SDM_PWR_ON_CYC_OFST (2)
3154#define A60931_RG_SSUSB_SPLL_FORCE_SDM_PWR_ON_OFST (1)
3155#define A60931_RG_SSUSB_SPLL_SDM_PWR_ON_OFST (0)
3156
3157//U3D_XTALCTL_1
3158#define A60931_RG_SSUSB_BIAS_STBCYC_OFST (17)
3159#define A60931_RG_SSUSB_XTAL_CLK_REQ_N_OFST (16)
3160#define A60931_RG_SSUSB_XTAL_FORCE_CLK_REQ_N_OFST (15)
3161#define A60931_RG_SSUSB_XTAL_STBCYC_OFST (0)
3162
3163//U3D_XTALCTL_2
3164#define A60931_RG_SSUSB_INT_XTAL_SEL_OFST (29)
3165#define A60931_RG_SSUSB_BG_LPF_DLY_OFST (27)
3166#define A60931_RG_SSUSB_BG_LPF_EN_OFST (26)
3167#define A60931_RG_SSUSB_FORCE_BG_LPF_EN_OFST (25)
3168#define A60931_RG_SSUSB_P3_BIAS_PWD_OFST (24)
3169#define A60931_RG_SSUSB_PCIE_CLKDET_HIT_OFST (20)
3170#define A60931_RG_SSUSB_PCIE_CLKDET_EN_OFST (19)
3171#define A60931_RG_SSUSB_FRC_PCIE_CLKDET_EN_OFST (18)
3172#define A60931_RG_SSUSB_USB20_BIAS_EN_OFST (17)
3173#define A60931_RG_SSUSB_USB20_SLEEP_OFST (16)
3174#define A60931_RG_SSUSB_OSC_ONLY_OFST (9)
3175#define A60931_RG_SSUSB_OSC_EN_OFST (8)
3176#define A60931_RG_SSUSB_XTALBIAS_STB_OFST (5)
3177#define A60931_RG_SSUSB_FORCE_XTALBIAS_STB_OFST (4)
3178#define A60931_RG_SSUSB_BIAS_PWD_OFST (3)
3179#define A60931_RG_SSUSB_XTAL_PWD_OFST (2)
3180#define A60931_RG_SSUSB_FORCE_BIAS_PWD_OFST (1)
3181#define A60931_RG_SSUSB_FORCE_XTAL_PWD_OFST (0)
3182
3183//U3D_XTALCTL3
3184#define A60931_RG_SSUSB_XTALCTL_REV_OFST (12)
3185#define A60931_RG_SSUSB_BIASIMR_EN_OFST (11)
3186#define A60931_RG_SSUSB_FORCE_BIASIMR_EN_OFST (10)
3187#define A60931_RG_SSUSB_XTAL_RX_PWD_OFST (9)
3188#define A60931_RG_SSUSB_FRC_XTAL_RX_PWD_OFST (8)
3189#define A60931_RG_SSUSB_CKBG_PROB_SEL_OFST (6)
3190#define A60931_RG_SSUSB_XTAL_PROB_SEL_OFST (4)
3191#define A60931_RG_SSUSB_XTAL_VREGBIAS_LPF_ENB_OFST (3)
3192#define A60931_RG_SSUSB_XTAL_FRC_VREGBIAS_LPF_ENB_OFST (2)
3193#define A60931_RG_SSUSB_XTAL_VREGBIAS_PWD_OFST (1)
3194#define A60931_RG_SSUSB_XTAL_FRC_VREGBIAS_PWD_OFST (0)
3195#endif
3196///////////////////////////////////////////////////////////////////////////////
3197
3198#ifndef __MTK_PHY_A60810_H
3199#define __MTK_PHY_A60810_H
3200
3201#define U2_SR_COEF_A60810 22
3202
3203///////////////////////////////////////////////////////////////////////////////
3204
3205struct a60810_u2phy_reg_a {
3206 /* 0x0 */
3207 u32 usbphyacr0;
3208 u32 usbphyacr1;
3209 u32 usbphyacr2;
3210 u32 reserve0;
3211 /* 0x10 */
3212 u32 usbphyacr4;
3213 u32 usbphyacr5;
3214 u32 usbphyacr6;
3215 u32 u2phyacr3;
3216 /* 0x20 */
3217 u32 u2phyacr4;
3218 u32 u2phyamon0;
3219 u32 reserve1[2];
3220 /* 0x30~0x50 */
3221 u32 reserve2[12];
3222 /* 0x60 */
3223 u32 u2phydcr0;
3224 u32 u2phydcr1;
3225 u32 u2phydtm0;
3226 u32 u2phydtm1;
3227 /* 0x70 */
3228 u32 u2phydmon0;
3229 u32 u2phydmon1;
3230 u32 u2phydmon2;
3231 u32 u2phydmon3;
3232 /* 0x80 */
3233 u32 u2phybc12c;
3234 u32 u2phybc12c1;
3235 u32 reserve3[2];
3236 /* 0x90~0xd0 */
3237 u32 reserve4[20];
3238 /* 0xe0 */
3239 u32 regfppc;
3240 u32 reserve5[3];
3241 /* 0xf0 */
3242 u32 versionc;
3243 u32 reserve6[2];
3244 u32 regfcom;
3245};
3246
3247/* U3D_USBPHYACR0 */
3248#define A60810_RG_USB20_MPX_OUT_SEL (0x7<<28) /* 30:28 */
3249#define A60810_RG_USB20_TX_PH_ROT_SEL (0x7<<24) /* 26:24 */
3250#define A60810_RG_USB20_PLL_DIVEN (0x7<<20) /* 22:20 */
3251#define A60810_RG_USB20_PLL_BR (0x1<<18) /* 18:18 */
3252#define A60810_RG_USB20_PLL_BP (0x1<<17) /* 17:17 */
3253#define A60810_RG_USB20_PLL_BLP (0x1<<16) /* 16:16 */
3254#define A60810_RG_USB20_USBPLL_FORCE_ON (0x1<<15) /* 15:15 */
3255#define A60810_RG_USB20_PLL_FBDIV (0x7f<<8) /* 14:8 */
3256#define A60810_RG_USB20_PLL_PREDIV (0x3<<6) /* 7:6 */
3257#define A60810_RG_USB20_INTR_EN (0x1<<5) /* 5:5 */
3258#define A60810_RG_USB20_REF_EN (0x1<<4) /* 4:4 */
3259#define A60810_RG_USB20_BGR_DIV (0x3<<2) /* 3:2 */
3260#define A60810_RG_SIFSLV_CHP_EN (0x1<<1) /* 1:1 */
3261#define A60810_RG_SIFSLV_BGR_EN (0x1<<0) /* 0:0 */
3262
3263/* U3D_USBPHYACR1 */
3264#define A60810_RG_USB20_INTR_CAL (0x1f<<19) /* 23:19 */
3265#define A60810_RG_USB20_OTG_VBUSTH (0x7<<16) /* 18:16 */
3266#define A60810_RG_USB20_VRT_VREF_SEL (0x7<<12) /* 14:12 */
3267#define A60810_RG_USB20_TERM_VREF_SEL (0x7<<8) /* 10:8 */
3268#define A60810_RG_USB20_MPX_SEL (0xff<<0) /* 7:0 */
3269
3270/* U3D_USBPHYACR2 */
3271#define A60810_RG_SIFSLV_MAC_BANDGAP_EN (0x1<<17) /* 17:17 */
3272#define A60810_RG_SIFSLV_MAC_CHOPPER_EN (0x1<<16) /* 16:16 */
3273#define A60810_RG_USB20_CLKREF_REV (0xffff<<0) /* 15:0 */
3274
3275/* U3D_USBPHYACR4 */
3276#define A60810_RG_USB20_DP_ABIST_SOURCE_EN (0x1<<31) /* 31:31 */
3277#define A60810_RG_USB20_DP_ABIST_SELE (0xf<<24) /* 27:24 */
3278#define A60810_RG_USB20_ICUSB_EN (0x1<<16) /* 16:16 */
3279#define A60810_RG_USB20_LS_CR (0x7<<12) /* 14:12 */
3280#define A60810_RG_USB20_FS_CR (0x7<<8) /* 10:8 */
3281#define A60810_RG_USB20_LS_SR (0x7<<4) /* 6:4 */
3282#define A60810_RG_USB20_FS_SR (0x7<<0) /* 2:0 */
3283
3284/* U3D_USBPHYACR5 */
3285#define A60810_RG_USB20_DISC_FIT_EN (0x1<<28) /* 28:28 */
3286#define A60810_RG_USB20_INIT_SQ_EN_DG (0x3<<26) /* 27:26 */
3287#define A60810_RG_USB20_HSTX_TMODE_SEL (0x3<<24) /* 25:24 */
3288#define A60810_RG_USB20_SQD (0x3<<22) /* 23:22 */
3289#define A60810_RG_USB20_DISCD (0x3<<20) /* 21:20 */
3290#define A60810_RG_USB20_HSTX_TMODE_EN (0x1<<19) /* 19:19 */
3291#define A60810_RG_USB20_PHYD_MONEN (0x1<<18) /* 18:18 */
3292#define A60810_RG_USB20_INLPBK_EN (0x1<<17) /* 17:17 */
3293#define A60810_RG_USB20_CHIRP_EN (0x1<<16) /* 16:16 */
3294#define A60810_RG_USB20_HSTX_SRCAL_EN (0x1<<15) /* 15:15 */
3295#define A60810_RG_USB20_HSTX_SRCTRL (0x7<<12) /* 14:12 */
3296#define A60810_RG_USB20_HS_100U_U3_EN (0x1<<11) /* 11:11 */
3297#define A60810_RG_USB20_GBIAS_ENB (0x1<<10) /* 10:10 */
3298#define A60810_RG_USB20_DM_ABIST_SOURCE_EN (0x1<<7) /* 7:7 */
3299#define A60810_RG_USB20_DM_ABIST_SELE (0xf<<0) /* 3:0 */
3300
3301/* U3D_USBPHYACR6 */
3302#define A60810_RG_USB20_PHY_REV (0xff<<24) /* 31:24 */
3303#define A60810_RG_USB20_BC11_SW_EN (0x1<<23) /* 23:23 */
3304#define A60810_RG_USB20_SR_CLK_SEL (0x1<<22) /* 22:22 */
3305#define A60810_RG_USB20_OTG_VBUSCMP_EN (0x1<<20) /* 20:20 */
3306#define A60810_RG_USB20_OTG_ABIST_EN (0x1<<19) /* 19:19 */
3307#define A60810_RG_USB20_OTG_ABIST_SELE (0x7<<16) /* 18:16 */
3308#define A60810_RG_USB20_HSRX_MMODE_SELE (0x3<<12) /* 13:12 */
3309#define A60810_RG_USB20_HSRX_BIAS_EN_SEL (0x3<<9) /* 10:9 */
3310#define A60810_RG_USB20_HSRX_TMODE_EN (0x1<<8) /* 8:8 */
3311#define A60810_RG_USB20_DISCTH (0xf<<4) /* 7:4 */
3312#define A60810_RG_USB20_SQTH (0xf<<0) /* 3:0 */
3313
3314/* U3D_U2PHYACR3 */
3315#define A60810_RG_USB20_HSTX_DBIST (0xf<<28) /* 31:28 */
3316#define A60810_RG_USB20_HSTX_BIST_EN (0x1<<26) /* 26:26 */
3317#define A60810_RG_USB20_HSTX_I_EN_MODE (0x3<<24) /* 25:24 */
3318#define A60810_RG_USB20_USB11_TMODE_EN (0x1<<19) /* 19:19 */
3319#define A60810_RG_USB20_TMODE_FS_LS_TX_EN (0x1<<18) /* 18:18 */
3320#define A60810_RG_USB20_TMODE_FS_LS_RCV_EN (0x1<<17) /* 17:17 */
3321#define A60810_RG_USB20_TMODE_FS_LS_MODE (0x1<<16) /* 16:16 */
3322#define A60810_RG_USB20_HS_TERM_EN_MODE (0x3<<13) /* 14:13 */
3323#define A60810_RG_USB20_PUPD_BIST_EN (0x1<<12) /* 12:12 */
3324#define A60810_RG_USB20_EN_PU_DM (0x1<<11) /* 11:11 */
3325#define A60810_RG_USB20_EN_PD_DM (0x1<<10) /* 10:10 */
3326#define A60810_RG_USB20_EN_PU_DP (0x1<<9) /* 9:9 */
3327#define A60810_RG_USB20_EN_PD_DP (0x1<<8) /* 8:8 */
3328
3329/* U3D_U2PHYACR4 */
3330#define A60810_RG_USB20_DP_100K_MODE (0x1<<18) /* 18:18 */
3331#define A60810_RG_USB20_DM_100K_EN (0x1<<17) /* 17:17 */
3332#define A60810_USB20_DP_100K_EN (0x1<<16) /* 16:16 */
3333#define A60810_USB20_GPIO_DM_I (0x1<<15) /* 15:15 */
3334#define A60810_USB20_GPIO_DP_I (0x1<<14) /* 14:14 */
3335#define A60810_USB20_GPIO_DM_OE (0x1<<13) /* 13:13 */
3336#define A60810_USB20_GPIO_DP_OE (0x1<<12) /* 12:12 */
3337#define A60810_RG_USB20_GPIO_CTL (0x1<<9) /* 9:9 */
3338#define A60810_USB20_GPIO_MODE (0x1<<8) /* 8:8 */
3339#define A60810_RG_USB20_TX_BIAS_EN (0x1<<5) /* 5:5 */
3340#define A60810_RG_USB20_TX_VCMPDN_EN (0x1<<4) /* 4:4 */
3341#define A60810_RG_USB20_HS_SQ_EN_MODE (0x3<<2) /* 3:2 */
3342#define A60810_RG_USB20_HS_RCV_EN_MODE (0x3<<0) /* 1:0 */
3343
3344/* U3D_U2PHYAMON0 */
3345#define A60810_RGO_USB20_GPIO_DM_O (0x1<<1) /* 1:1 */
3346#define A60810_RGO_USB20_GPIO_DP_O (0x1<<0) /* 0:0 */
3347
3348/* U3D_U2PHYDCR0 */
3349#define A60810_RG_USB20_CDR_TST (0x3<<30) /* 31:30 */
3350#define A60810_RG_USB20_GATED_ENB (0x1<<29) /* 29:29 */
3351#define A60810_RG_USB20_TESTMODE (0x3<<26) /* 27:26 */
3352#define A60810_RG_SIFSLV_USB20_PLL_STABLE (0x1<<25) /* 25:25 */
3353#define A60810_RG_SIFSLV_USB20_PLL_FORCE_ON (0x1<<24) /* 24:24 */
3354#define A60810_RG_USB20_PHYD_RESERVE (0xffff<<8) /* 23:8 */
3355#define A60810_RG_USB20_EBTHRLD (0x1<<7) /* 7:7 */
3356#define A60810_RG_USB20_EARLY_HSTX_I (0x1<<6) /* 6:6 */
3357#define A60810_RG_USB20_TX_TST (0x1<<5) /* 5:5 */
3358#define A60810_RG_USB20_NEGEDGE_ENB (0x1<<4) /* 4:4 */
3359#define A60810_RG_USB20_CDR_FILT (0xf<<0) /* 3:0 */
3360
3361/* U3D_U2PHYDCR1 */
3362#define A60810_RG_USB20_PROBE_SEL (0xff<<24) /* 31:24 */
3363#define A60810_RG_USB20_DRVVBUS (0x1<<23) /* 23:23 */
3364#define A60810_RG_DEBUG_EN (0x1<<22) /* 22:22 */
3365#define A60810_RG_USB20_OTG_PROBE (0x3<<20) /* 21:20 */
3366#define A60810_RG_USB20_SW_PLLMODE (0x3<<18) /* 19:18 */
3367#define A60810_RG_USB20_BERTH (0x3<<16) /* 17:16 */
3368#define A60810_RG_USB20_LBMODE (0x3<<13) /* 14:13 */
3369#define A60810_RG_USB20_FORCE_TAP (0x1<<12) /* 12:12 */
3370#define A60810_RG_USB20_TAPSEL (0xfff<<0) /* 11:0 */
3371
3372/* U3D_U2PHYDTM0 */
3373#define A60810_RG_UART_MODE (0x3<<30) /* 31:30 */
3374#define A60810_FORCE_UART_I (0x1<<29) /* 29:29 */
3375#define A60810_FORCE_UART_BIAS_EN (0x1<<28) /* 28:28 */
3376#define A60810_FORCE_UART_TX_OE (0x1<<27) /* 27:27 */
3377#define A60810_FORCE_UART_EN (0x1<<26) /* 26:26 */
3378#define A60810_FORCE_USB_CLKEN (0x1<<25) /* 25:25 */
3379#define A60810_FORCE_DRVVBUS (0x1<<24) /* 24:24 */
3380#define A60810_FORCE_DATAIN (0x1<<23) /* 23:23 */
3381#define A60810_FORCE_TXVALID (0x1<<22) /* 22:22 */
3382#define A60810_FORCE_DM_PULLDOWN (0x1<<21) /* 21:21 */
3383#define A60810_FORCE_DP_PULLDOWN (0x1<<20) /* 20:20 */
3384#define A60810_FORCE_XCVRSEL (0x1<<19) /* 19:19 */
3385#define A60810_FORCE_SUSPENDM (0x1<<18) /* 18:18 */
3386#define A60810_FORCE_TERMSEL (0x1<<17) /* 17:17 */
3387#define A60810_FORCE_OPMODE (0x1<<16) /* 16:16 */
3388#define A60810_UTMI_MUXSEL (0x1<<15) /* 15:15 */
3389#define A60810_RG_RESET (0x1<<14) /* 14:14 */
3390#define A60810_RG_DATAIN (0xf<<10) /* 13:10 */
3391#define A60810_RG_TXVALIDH (0x1<<9) /* 9:9 */
3392#define A60810_RG_TXVALID (0x1<<8) /* 8:8 */
3393#define A60810_RG_DMPULLDOWN (0x1<<7) /* 7:7 */
3394#define A60810_RG_DPPULLDOWN (0x1<<6) /* 6:6 */
3395#define A60810_RG_XCVRSEL (0x3<<4) /* 5:4 */
3396#define A60810_RG_SUSPENDM (0x1<<3) /* 3:3 */
3397#define A60810_RG_TERMSEL (0x1<<2) /* 2:2 */
3398#define A60810_RG_OPMODE (0x3<<0) /* 1:0 */
3399
3400/* U3D_U2PHYDTM1 */
3401#define A60810_RG_USB20_PRBS7_EN (0x1<<31) /* 31:31 */
3402#define A60810_RG_USB20_PRBS7_BITCNT (0x3f<<24) /* 29:24 */
3403#define A60810_RG_USB20_CLK48M_EN (0x1<<23) /* 23:23 */
3404#define A60810_RG_USB20_CLK60M_EN (0x1<<22) /* 22:22 */
3405#define A60810_RG_UART_I (0x1<<19) /* 19:19 */
3406#define A60810_RG_UART_BIAS_EN (0x1<<18) /* 18:18 */
3407#define A60810_RG_UART_TX_OE (0x1<<17) /* 17:17 */
3408#define A60810_RG_UART_EN (0x1<<16) /* 16:16 */
3409#define A60810_RG_IP_U2_PORT_POWER (0x1<<15) /* 15:15 */
3410#define A60810_FORCE_IP_U2_PORT_POWER (0x1<<14) /* 14:14 */
3411#define A60810_FORCE_VBUSVALID (0x1<<13) /* 13:13 */
3412#define A60810_FORCE_SESSEND (0x1<<12) /* 12:12 */
3413#define A60810_FORCE_BVALID (0x1<<11) /* 11:11 */
3414#define A60810_FORCE_AVALID (0x1<<10) /* 10:10 */
3415#define A60810_FORCE_IDDIG (0x1<<9) /* 9:9 */
3416#define A60810_FORCE_IDPULLUP (0x1<<8) /* 8:8 */
3417#define A60810_RG_VBUSVALID (0x1<<5) /* 5:5 */
3418#define A60810_RG_SESSEND (0x1<<4) /* 4:4 */
3419#define A60810_RG_BVALID (0x1<<3) /* 3:3 */
3420#define A60810_RG_AVALID (0x1<<2) /* 2:2 */
3421#define A60810_RG_IDDIG (0x1<<1) /* 1:1 */
3422#define A60810_RG_IDPULLUP (0x1<<0) /* 0:0 */
3423
3424/* U3D_U2PHYDMON0 */
3425#define A60810_RG_USB20_PRBS7_BERTH (0xff<<0) /* 7:0 */
3426
3427/* U3D_U2PHYDMON1 */
3428#define A60810_USB20_UART_O (0x1<<31) /* 31:31 */
3429#define A60810_RGO_USB20_LB_PASS (0x1<<30) /* 30:30 */
3430#define A60810_RGO_USB20_LB_DONE (0x1<<29) /* 29:29 */
3431#define A60810_AD_USB20_BVALID (0x1<<28) /* 28:28 */
3432#define A60810_USB20_IDDIG (0x1<<27) /* 27:27 */
3433#define A60810_AD_USB20_VBUSVALID (0x1<<26) /* 26:26 */
3434#define A60810_AD_USB20_SESSEND (0x1<<25) /* 25:25 */
3435#define A60810_AD_USB20_AVALID (0x1<<24) /* 24:24 */
3436#define A60810_USB20_LINE_STATE (0x3<<22) /* 23:22 */
3437#define A60810_USB20_HST_DISCON (0x1<<21) /* 21:21 */
3438#define A60810_USB20_TX_READY (0x1<<20) /* 20:20 */
3439#define A60810_USB20_RX_ERROR (0x1<<19) /* 19:19 */
3440#define A60810_USB20_RX_ACTIVE (0x1<<18) /* 18:18 */
3441#define A60810_USB20_RX_VALIDH (0x1<<17) /* 17:17 */
3442#define A60810_USB20_RX_VALID (0x1<<16) /* 16:16 */
3443#define A60810_USB20_DATA_OUT (0xffff<<0) /* 15:0 */
3444
3445/* U3D_U2PHYDMON2 */
3446#define A60810_RGO_TXVALID_CNT (0xff<<24) /* 31:24 */
3447#define A60810_RGO_RXACTIVE_CNT (0xff<<16) /* 23:16 */
3448#define A60810_RGO_USB20_LB_BERCNT (0xff<<8) /* 15:8 */
3449#define A60810_USB20_PROBE_OUT (0xff<<0) /* 7:0 */
3450
3451/* U3D_U2PHYDMON3 */
3452#define A60810_RGO_USB20_PRBS7_ERRCNT (0xffff<<16) /* 31:16 */
3453#define A60810_RGO_USB20_PRBS7_DONE (0x1<<3) /* 3:3 */
3454#define A60810_RGO_USB20_PRBS7_LOCK (0x1<<2) /* 2:2 */
3455#define A60810_RGO_USB20_PRBS7_PASS (0x1<<1) /* 1:1 */
3456#define A60810_RGO_USB20_PRBS7_PASSTH (0x1<<0) /* 0:0 */
3457
3458/* U3D_U2PHYBC12C */
3459#define A60810_RG_SIFSLV_CHGDT_DEGLCH_CNT (0xf<<28) /* 31:28 */
3460#define A60810_RG_SIFSLV_CHGDT_CTRL_CNT (0xf<<24) /* 27:24 */
3461#define A60810_RG_SIFSLV_CHGDT_FORCE_MODE (0x1<<16) /* 16:16 */
3462#define A60810_RG_CHGDT_ISRC_LEV (0x3<<14) /* 15:14 */
3463#define A60810_RG_CHGDT_VDATSRC (0x1<<13) /* 13:13 */
3464#define A60810_RG_CHGDT_BGVREF_SEL (0x7<<10) /* 12:10 */
3465#define A60810_RG_CHGDT_RDVREF_SEL (0x3<<8) /* 9:8 */
3466#define A60810_RG_CHGDT_ISRC_DP (0x1<<7) /* 7:7 */
3467#define A60810_RG_SIFSLV_CHGDT_OPOUT_DM (0x1<<6) /* 6:6 */
3468#define A60810_RG_CHGDT_VDAT_DM (0x1<<5) /* 5:5 */
3469#define A60810_RG_CHGDT_OPOUT_DP (0x1<<4) /* 4:4 */
3470#define A60810_RG_SIFSLV_CHGDT_VDAT_DP (0x1<<3) /* 3:3 */
3471#define A60810_RG_SIFSLV_CHGDT_COMP_EN (0x1<<2) /* 2:2 */
3472#define A60810_RG_SIFSLV_CHGDT_OPDRV_EN (0x1<<1) /* 1:1 */
3473#define A60810_RG_CHGDT_EN (0x1<<0) /* 0:0 */
3474
3475/* U3D_U2PHYBC12C1 */
3476#define A60810_RG_CHGDT_REV (0xff<<0) /* 7:0 */
3477
3478/* U3D_REGFPPC */
3479#define A60810_USB11_OTG_REG (0x1<<4) /* 4:4 */
3480#define A60810_USB20_OTG_REG (0x1<<3) /* 3:3 */
3481#define A60810_CHGDT_REG (0x1<<2) /* 2:2 */
3482#define A60810_USB11_REG (0x1<<1) /* 1:1 */
3483#define A60810_USB20_REG (0x1<<0) /* 0:0 */
3484
3485/* U3D_VERSIONC */
3486#define A60810_VERSION_CODE_REGFILE (0xff<<24) /* 31:24 */
3487#define A60810_USB11_VERSION_CODE (0xff<<16) /* 23:16 */
3488#define A60810_VERSION_CODE_ANA (0xff<<8) /* 15:8 */
3489#define A60810_VERSION_CODE_DIG (0xff<<0) /* 7:0 */
3490
3491/* U3D_REGFCOM */
3492#define A60810_RG_PAGE (0xff<<24) /* 31:24 */
3493#define A60810_I2C_MODE (0x1<<16) /* 16:16 */
3494
3495/* OFFSET */
3496
3497/* U3D_USBPHYACR0 */
3498#define A60810_RG_USB20_MPX_OUT_SEL_OFST (28)
3499#define A60810_RG_USB20_TX_PH_ROT_SEL_OFST (24)
3500#define A60810_RG_USB20_PLL_DIVEN_OFST (20)
3501#define A60810_RG_USB20_PLL_BR_OFST (18)
3502#define A60810_RG_USB20_PLL_BP_OFST (17)
3503#define A60810_RG_USB20_PLL_BLP_OFST (16)
3504#define A60810_RG_USB20_USBPLL_FORCE_ON_OFST (15)
3505#define A60810_RG_USB20_PLL_FBDIV_OFST (8)
3506#define A60810_RG_USB20_PLL_PREDIV_OFST (6)
3507#define A60810_RG_USB20_INTR_EN_OFST (5)
3508#define A60810_RG_USB20_REF_EN_OFST (4)
3509#define A60810_RG_USB20_BGR_DIV_OFST (2)
3510#define A60810_RG_SIFSLV_CHP_EN_OFST (1)
3511#define A60810_RG_SIFSLV_BGR_EN_OFST (0)
3512
3513/* U3D_USBPHYACR1 */
3514#define A60810_RG_USB20_INTR_CAL_OFST (19)
3515#define A60810_RG_USB20_OTG_VBUSTH_OFST (16)
3516#define A60810_RG_USB20_VRT_VREF_SEL_OFST (12)
3517#define A60810_RG_USB20_TERM_VREF_SEL_OFST (8)
3518#define A60810_RG_USB20_MPX_SEL_OFST (0)
3519
3520/* U3D_USBPHYACR2 */
3521#define A60810_RG_SIFSLV_MAC_BANDGAP_EN_OFST (17)
3522#define A60810_RG_SIFSLV_MAC_CHOPPER_EN_OFST (16)
3523#define A60810_RG_USB20_CLKREF_REV_OFST (0)
3524
3525/* U3D_USBPHYACR4 */
3526#define A60810_RG_USB20_DP_ABIST_SOURCE_EN_OFST (31)
3527#define A60810_RG_USB20_DP_ABIST_SELE_OFST (24)
3528#define A60810_RG_USB20_ICUSB_EN_OFST (16)
3529#define A60810_RG_USB20_LS_CR_OFST (12)
3530#define A60810_RG_USB20_FS_CR_OFST (8)
3531#define A60810_RG_USB20_LS_SR_OFST (4)
3532#define A60810_RG_USB20_FS_SR_OFST (0)
3533
3534/* U3D_USBPHYACR5 */
3535#define A60810_RG_USB20_DISC_FIT_EN_OFST (28)
3536#define A60810_RG_USB20_INIT_SQ_EN_DG_OFST (26)
3537#define A60810_RG_USB20_HSTX_TMODE_SEL_OFST (24)
3538#define A60810_RG_USB20_SQD_OFST (22)
3539#define A60810_RG_USB20_DISCD_OFST (20)
3540#define A60810_RG_USB20_HSTX_TMODE_EN_OFST (19)
3541#define A60810_RG_USB20_PHYD_MONEN_OFST (18)
3542#define A60810_RG_USB20_INLPBK_EN_OFST (17)
3543#define A60810_RG_USB20_CHIRP_EN_OFST (16)
3544#define A60810_RG_USB20_HSTX_SRCAL_EN_OFST (15)
3545#define A60810_RG_USB20_HSTX_SRCTRL_OFST (12)
3546#define A60810_RG_USB20_HS_100U_U3_EN_OFST (11)
3547#define A60810_RG_USB20_GBIAS_ENB_OFST (10)
3548#define A60810_RG_USB20_DM_ABIST_SOURCE_EN_OFST (7)
3549#define A60810_RG_USB20_DM_ABIST_SELE_OFST (0)
3550
3551/* U3D_USBPHYACR6 */
3552#define A60810_RG_USB20_PHY_REV_OFST (24)
3553#define A60810_RG_USB20_BC11_SW_EN_OFST (23)
3554#define A60810_RG_USB20_SR_CLK_SEL_OFST (22)
3555#define A60810_RG_USB20_OTG_VBUSCMP_EN_OFST (20)
3556#define A60810_RG_USB20_OTG_ABIST_EN_OFST (19)
3557#define A60810_RG_USB20_OTG_ABIST_SELE_OFST (16)
3558#define A60810_RG_USB20_HSRX_MMODE_SELE_OFST (12)
3559#define A60810_RG_USB20_HSRX_BIAS_EN_SEL_OFST (9)
3560#define A60810_RG_USB20_HSRX_TMODE_EN_OFST (8)
3561#define A60810_RG_USB20_DISCTH_OFST (4)
3562#define A60810_RG_USB20_SQTH_OFST (0)
3563
3564/* U3D_U2PHYACR3 */
3565#define A60810_RG_USB20_HSTX_DBIST_OFST (28)
3566#define A60810_RG_USB20_HSTX_BIST_EN_OFST (26)
3567#define A60810_RG_USB20_HSTX_I_EN_MODE_OFST (24)
3568#define A60810_RG_USB20_USB11_TMODE_EN_OFST (19)
3569#define A60810_RG_USB20_TMODE_FS_LS_TX_EN_OFST (18)
3570#define A60810_RG_USB20_TMODE_FS_LS_RCV_EN_OFST (17)
3571#define A60810_RG_USB20_TMODE_FS_LS_MODE_OFST (16)
3572#define A60810_RG_USB20_HS_TERM_EN_MODE_OFST (13)
3573#define A60810_RG_USB20_PUPD_BIST_EN_OFST (12)
3574#define A60810_RG_USB20_EN_PU_DM_OFST (11)
3575#define A60810_RG_USB20_EN_PD_DM_OFST (10)
3576#define A60810_RG_USB20_EN_PU_DP_OFST (9)
3577#define A60810_RG_USB20_EN_PD_DP_OFST (8)
3578
3579/* U3D_U2PHYACR4 */
3580#define A60810_RG_USB20_DP_100K_MODE_OFST (18)
3581#define A60810_RG_USB20_DM_100K_EN_OFST (17)
3582#define A60810_USB20_DP_100K_EN_OFST (16)
3583#define A60810_USB20_GPIO_DM_I_OFST (15)
3584#define A60810_USB20_GPIO_DP_I_OFST (14)
3585#define A60810_USB20_GPIO_DM_OE_OFST (13)
3586#define A60810_USB20_GPIO_DP_OE_OFST (12)
3587#define A60810_RG_USB20_GPIO_CTL_OFST (9)
3588#define A60810_USB20_GPIO_MODE_OFST (8)
3589#define A60810_RG_USB20_TX_BIAS_EN_OFST (5)
3590#define A60810_RG_USB20_TX_VCMPDN_EN_OFST (4)
3591#define A60810_RG_USB20_HS_SQ_EN_MODE_OFST (2)
3592#define A60810_RG_USB20_HS_RCV_EN_MODE_OFST (0)
3593
3594/* U3D_U2PHYAMON0 */
3595#define A60810_RGO_USB20_GPIO_DM_O_OFST (1)
3596#define A60810_RGO_USB20_GPIO_DP_O_OFST (0)
3597
3598/* U3D_U2PHYDCR0 */
3599#define A60810_RG_USB20_CDR_TST_OFST (30)
3600#define A60810_RG_USB20_GATED_ENB_OFST (29)
3601#define A60810_RG_USB20_TESTMODE_OFST (26)
3602#define A60810_RG_SIFSLV_USB20_PLL_STABLE_OFST (25)
3603#define A60810_RG_SIFSLV_USB20_PLL_FORCE_ON_OFST (24)
3604#define A60810_RG_USB20_PHYD_RESERVE_OFST (8)
3605#define A60810_RG_USB20_EBTHRLD_OFST (7)
3606#define A60810_RG_USB20_EARLY_HSTX_I_OFST (6)
3607#define A60810_RG_USB20_TX_TST_OFST (5)
3608#define A60810_RG_USB20_NEGEDGE_ENB_OFST (4)
3609#define A60810_RG_USB20_CDR_FILT_OFST (0)
3610
3611/* U3D_U2PHYDCR1 */
3612#define A60810_RG_USB20_PROBE_SEL_OFST (24)
3613#define A60810_RG_USB20_DRVVBUS_OFST (23)
3614#define A60810_RG_DEBUG_EN_OFST (22)
3615#define A60810_RG_USB20_OTG_PROBE_OFST (20)
3616#define A60810_RG_USB20_SW_PLLMODE_OFST (18)
3617#define A60810_RG_USB20_BERTH_OFST (16)
3618#define A60810_RG_USB20_LBMODE_OFST (13)
3619#define A60810_RG_USB20_FORCE_TAP_OFST (12)
3620#define A60810_RG_USB20_TAPSEL_OFST (0)
3621
3622/* U3D_U2PHYDTM0 */
3623#define A60810_RG_UART_MODE_OFST (30)
3624#define A60810_FORCE_UART_I_OFST (29)
3625#define A60810_FORCE_UART_BIAS_EN_OFST (28)
3626#define A60810_FORCE_UART_TX_OE_OFST (27)
3627#define A60810_FORCE_UART_EN_OFST (26)
3628#define A60810_FORCE_USB_CLKEN_OFST (25)
3629#define A60810_FORCE_DRVVBUS_OFST (24)
3630#define A60810_FORCE_DATAIN_OFST (23)
3631#define A60810_FORCE_TXVALID_OFST (22)
3632#define A60810_FORCE_DM_PULLDOWN_OFST (21)
3633#define A60810_FORCE_DP_PULLDOWN_OFST (20)
3634#define A60810_FORCE_XCVRSEL_OFST (19)
3635#define A60810_FORCE_SUSPENDM_OFST (18)
3636#define A60810_FORCE_TERMSEL_OFST (17)
3637#define A60810_FORCE_OPMODE_OFST (16)
3638#define A60810_UTMI_MUXSEL_OFST (15)
3639#define A60810_RG_RESET_OFST (14)
3640#define A60810_RG_DATAIN_OFST (10)
3641#define A60810_RG_TXVALIDH_OFST (9)
3642#define A60810_RG_TXVALID_OFST (8)
3643#define A60810_RG_DMPULLDOWN_OFST (7)
3644#define A60810_RG_DPPULLDOWN_OFST (6)
3645#define A60810_RG_XCVRSEL_OFST (4)
3646#define A60810_RG_SUSPENDM_OFST (3)
3647#define A60810_RG_TERMSEL_OFST (2)
3648#define A60810_RG_OPMODE_OFST (0)
3649
3650/* U3D_U2PHYDTM1 */
3651#define A60810_RG_USB20_PRBS7_EN_OFST (31)
3652#define A60810_RG_USB20_PRBS7_BITCNT_OFST (24)
3653#define A60810_RG_USB20_CLK48M_EN_OFST (23)
3654#define A60810_RG_USB20_CLK60M_EN_OFST (22)
3655#define A60810_RG_UART_I_OFST (19)
3656#define A60810_RG_UART_BIAS_EN_OFST (18)
3657#define A60810_RG_UART_TX_OE_OFST (17)
3658#define A60810_RG_UART_EN_OFST (16)
3659#define A60810_RG_IP_U2_PORT_POWER_OFST (15)
3660#define A60810_FORCE_IP_U2_PORT_POWER_OFST (14)
3661#define A60810_FORCE_VBUSVALID_OFST (13)
3662#define A60810_FORCE_SESSEND_OFST (12)
3663#define A60810_FORCE_BVALID_OFST (11)
3664#define A60810_FORCE_AVALID_OFST (10)
3665#define A60810_FORCE_IDDIG_OFST (9)
3666#define A60810_FORCE_IDPULLUP_OFST (8)
3667#define A60810_RG_VBUSVALID_OFST (5)
3668#define A60810_RG_SESSEND_OFST (4)
3669#define A60810_RG_BVALID_OFST (3)
3670#define A60810_RG_AVALID_OFST (2)
3671#define A60810_RG_IDDIG_OFST (1)
3672#define A60810_RG_IDPULLUP_OFST (0)
3673
3674/* U3D_U2PHYDMON0 */
3675#define A60810_RG_USB20_PRBS7_BERTH_OFST (0)
3676
3677/* U3D_U2PHYDMON1 */
3678#define A60810_USB20_UART_O_OFST (31)
3679#define A60810_RGO_USB20_LB_PASS_OFST (30)
3680#define A60810_RGO_USB20_LB_DONE_OFST (29)
3681#define A60810_AD_USB20_BVALID_OFST (28)
3682#define A60810_USB20_IDDIG_OFST (27)
3683#define A60810_AD_USB20_VBUSVALID_OFST (26)
3684#define A60810_AD_USB20_SESSEND_OFST (25)
3685#define A60810_AD_USB20_AVALID_OFST (24)
3686#define A60810_USB20_LINE_STATE_OFST (22)
3687#define A60810_USB20_HST_DISCON_OFST (21)
3688#define A60810_USB20_TX_READY_OFST (20)
3689#define A60810_USB20_RX_ERROR_OFST (19)
3690#define A60810_USB20_RX_ACTIVE_OFST (18)
3691#define A60810_USB20_RX_VALIDH_OFST (17)
3692#define A60810_USB20_RX_VALID_OFST (16)
3693#define A60810_USB20_DATA_OUT_OFST (0)
3694
3695/* U3D_U2PHYDMON2 */
3696#define A60810_RGO_TXVALID_CNT_OFST (24)
3697#define A60810_RGO_RXACTIVE_CNT_OFST (16)
3698#define A60810_RGO_USB20_LB_BERCNT_OFST (8)
3699#define A60810_USB20_PROBE_OUT_OFST (0)
3700
3701/* U3D_U2PHYDMON3 */
3702#define A60810_RGO_USB20_PRBS7_ERRCNT_OFST (16)
3703#define A60810_RGO_USB20_PRBS7_DONE_OFST (3)
3704#define A60810_RGO_USB20_PRBS7_LOCK_OFST (2)
3705#define A60810_RGO_USB20_PRBS7_PASS_OFST (1)
3706#define A60810_RGO_USB20_PRBS7_PASSTH_OFST (0)
3707
3708/* U3D_U2PHYBC12C */
3709#define A60810_RG_SIFSLV_CHGDT_DEGLCH_CNT_OFST (28)
3710#define A60810_RG_SIFSLV_CHGDT_CTRL_CNT_OFST (24)
3711#define A60810_RG_SIFSLV_CHGDT_FORCE_MODE_OFST (16)
3712#define A60810_RG_CHGDT_ISRC_LEV_OFST (14)
3713#define A60810_RG_CHGDT_VDATSRC_OFST (13)
3714#define A60810_RG_CHGDT_BGVREF_SEL_OFST (10)
3715#define A60810_RG_CHGDT_RDVREF_SEL_OFST (8)
3716#define A60810_RG_CHGDT_ISRC_DP_OFST (7)
3717#define A60810_RG_SIFSLV_CHGDT_OPOUT_DM_OFST (6)
3718#define A60810_RG_CHGDT_VDAT_DM_OFST (5)
3719#define A60810_RG_CHGDT_OPOUT_DP_OFST (4)
3720#define A60810_RG_SIFSLV_CHGDT_VDAT_DP_OFST (3)
3721#define A60810_RG_SIFSLV_CHGDT_COMP_EN_OFST (2)
3722#define A60810_RG_SIFSLV_CHGDT_OPDRV_EN_OFST (1)
3723#define A60810_RG_CHGDT_EN_OFST (0)
3724
3725/* U3D_U2PHYBC12C1 */
3726#define A60810_RG_CHGDT_REV_OFST (0)
3727
3728/* U3D_REGFPPC */
3729#define A60810_USB11_OTG_REG_OFST (4)
3730#define A60810_USB20_OTG_REG_OFST (3)
3731#define A60810_CHGDT_REG_OFST (2)
3732#define A60810_USB11_REG_OFST (1)
3733#define A60810_USB20_REG_OFST (0)
3734
3735/* U3D_VERSIONC */
3736#define A60810_VERSION_CODE_REGFILE_OFST (24)
3737#define A60810_USB11_VERSION_CODE_OFST (16)
3738#define A60810_VERSION_CODE_ANA_OFST (8)
3739#define A60810_VERSION_CODE_DIG_OFST (0)
3740
3741/* U3D_REGFCOM */
3742#define A60810_RG_PAGE_OFST (24)
3743#define A60810_I2C_MODE_OFST (16)
3744
3745///////////////////////////////////////////////////////////////////////////////
3746
3747struct a60810_u3phya_reg_a {
3748 /* 0x0 */
3749 u32 reg0;
3750 u32 reg1;
3751 u32 reg2;
3752 u32 reg3;
3753 /* 0x10 */
3754 u32 reg4;
3755 u32 reg5;
3756 u32 reg6;
3757 u32 reg7;
3758 /* 0x20 */
3759 u32 reg8;
3760 u32 reg9;
3761 u32 rega;
3762 u32 regb;
3763 /* 0x30 */
3764 u32 regc;
3765};
3766
3767/* U3D_reg0 */
3768#define A60810_RG_SSUSB_BGR_EN (0x1<<31) /* 31:31 */
3769#define A60810_RG_SSUSB_CHPEN (0x1<<30) /* 30:30 */
3770#define A60810_RG_SSUSB_BG_DIV (0x3<<28) /* 29:28 */
3771#define A60810_RG_SSUSB_INTR_EN (0x1<<26) /* 26:26 */
3772#define A60810_RG_SSUSB_MPX_EN (0x1<<24) /* 24:24 */
3773#define A60810_RG_SSUSB_MPX_SEL (0xff<<16) /* 23:16 */
3774#define A60810_RG_SSUSB_REF_EN (0x1<<15) /* 15:15 */
3775#define A60810_RG_SSUSB_VRT_VREF_SEL (0xf<<11) /* 14:11 */
3776#define A60810_RG_SSUSB_BG_MONEN (0x1<<8) /* 8:8 */
3777#define A60810_RG_SSUSB_INT_BIAS_SEL (0x1<<7) /* 7:7 */
3778#define A60810_RG_SSUSB_EXT_BIAS_SEL (0x1<<6) /* 6:6 */
3779#define A60810_RG_PCIE_CLKDRV_OFFSET (0x3<<2) /* 3:2 */
3780#define A60810_RG_PCIE_CLKDRV_SLEW (0x3<<0) /* 1:0 */
3781
3782/* U3D_reg1 */
3783#define A60810_RG_PCIE_CLKDRV_AMP (0x7<<29) /* 31:29 */
3784#define A60810_RG_SSUSB_XTAL_TST_A2DCK_EN (0x1<<28) /* 28:28 */
3785#define A60810_RG_SSUSB_XTAL_MON_EN (0x1<<27) /* 27:27 */
3786#define A60810_RG_SSUSB_XTAL_HYS (0x1<<26) /* 26:26 */
3787#define A60810_RG_SSUSB_XTAL_TOP_RESERVE (0xffff<<10) /* 25:10 */
3788#define A60810_RG_SSUSB_SYSPLL_PREDIV (0x3<<8) /* 9:8 */
3789#define A60810_RG_SSUSB_SYSPLL_POSDIV (0x3<<6) /* 7:6 */
3790#define A60810_RG_SSUSB_SYSPLL_VCO_DIV_SEL (0x1<<5) /* 5:5 */
3791#define A60810_RG_SSUSB_SYSPLL_VOD_EN (0x1<<4) /* 4:4 */
3792#define A60810_RG_SSUSB_SYSPLL_RST_DLY (0x3<<2) /* 3:2 */
3793#define A60810_RG_SSUSB_SYSPLL_BLP (0x1<<1) /* 1:1 */
3794#define A60810_RG_SSUSB_SYSPLL_BP (0x1<<0) /* 0:0 */
3795
3796/* U3D_reg2 */
3797#define A60810_RG_SSUSB_SYSPLL_BR (0x1<<31) /* 31:31 */
3798#define A60810_RG_SSUSB_SYSPLL_BC (0x1<<30) /* 30:30 */
3799#define A60810_RG_SSUSB_SYSPLL_MONCK_EN (0x1<<29) /* 29:29 */
3800#define A60810_RG_SSUSB_SYSPLL_MONVC_EN (0x1<<28) /* 28:28 */
3801#define A60810_RG_SSUSB_SYSPLL_MONREF_EN (0x1<<27) /* 27:27 */
3802#define A60810_RG_SSUSB_SYSPLL_SDM_IFM (0x1<<26) /* 26:26 */
3803#define A60810_RG_SSUSB_SYSPLL_SDM_OUT (0x1<<25) /* 25:25 */
3804#define A60810_RG_SSUSB_SYSPLL_BACK_EN (0x1<<24) /* 24:24 */
3805
3806/* U3D_reg3 */
3807#define A60810_RG_SSUSB_SYSPLL_FBDIV (0x7fffffff<<1) /* 31:1 */
3808#define A60810_RG_SSUSB_SYSPLL_HR_EN (0x1<<0) /* 0:0 */
3809
3810/* U3D_reg4 */
3811#define A60810_RG_SSUSB_SYSPLL_SDM_DI_EN (0x1<<31) /* 31:31 */
3812#define A60810_RG_SSUSB_SYSPLL_SDM_DI_LS (0x3<<29) /* 30:29 */
3813#define A60810_RG_SSUSB_SYSPLL_SDM_ORD (0x3<<27) /* 28:27 */
3814#define A60810_RG_SSUSB_SYSPLL_SDM_MODE (0x3<<25) /* 26:25 */
3815#define A60810_RG_SSUSB_SYSPLL_RESERVE (0xff<<17) /* 24:17 */
3816#define A60810_RG_SSUSB_SYSPLL_TOP_RESERVE (0xffff<<1) /* 16:1 */
3817
3818/* U3D_reg5 */
3819#define A60810_RG_SSUSB_TX250MCK_INVB (0x1<<31) /* 31:31 */
3820#define A60810_RG_SSUSB_IDRV_ITAILOP_EN (0x1<<30) /* 30:30 */
3821#define A60810_RG_SSUSB_IDRV_CALIB (0x3f<<24) /* 29:24 */
3822#define A60810_RG_SSUSB_IDEM_BIAS (0xf<<20) /* 23:20 */
3823#define A60810_RG_SSUSB_TX_R50_FON (0x1<<19) /* 19:19 */
3824#define A60810_RG_SSUSB_TX_SR (0x7<<16) /* 18:16 */
3825#define A60810_RG_SSUSB_RXDET_RSEL (0x3<<14) /* 15:14 */
3826#define A60810_RG_SSUSB_RXDET_UPDN_FORCE (0x1<<13) /* 13:13 */
3827#define A60810_RG_SSUSB_RXDET_UPDN_SEL (0x1<<12) /* 12:12 */
3828#define A60810_RG_SSUSB_RXDET_VTHSEL_L (0x3<<10) /* 11:10 */
3829#define A60810_RG_SSUSB_RXDET_VTHSEL_H (0x3<<8) /* 9:8 */
3830#define A60810_RG_SSUSB_CKMON_EN (0x1<<7) /* 7:7 */
3831#define A60810_RG_SSUSB_TX_VLMON_EN (0x1<<6) /* 6:6 */
3832#define A60810_RG_SSUSB_TX_VLMON_SEL (0x3<<4) /* 5:4 */
3833#define A60810_RG_SSUSB_CKMON_SEL (0xf<<0) /* 3:0 */
3834
3835/* U3D_reg6 */
3836#define A60810_RG_SSUSB_TX_EIDLE_CM (0xf<<28) /* 31:28 */
3837#define A60810_RG_SSUSB_RXLBTX_EN (0x1<<27) /* 27:27 */
3838#define A60810_RG_SSUSB_TXLBRX_EN (0x1<<26) /* 26:26 */
3839#define A60810_RG_SSUSB_RESERVE (0x3ff<<16) /* 25:16 */
3840#define A60810_RG_SSUSB_PLL_POSDIV (0x3<<14) /* 15:14 */
3841#define A60810_RG_SSUSB_PLL_AUTOK_LOAD (0x1<<13) /* 13:13 */
3842#define A60810_RG_SSUSB_PLL_VOD_EN (0x1<<12) /* 12:12 */
3843#define A60810_RG_SSUSB_PLL_MONREF_EN (0x1<<11) /* 11:11 */
3844#define A60810_RG_SSUSB_PLL_MONCK_EN (0x1<<10) /* 10:10 */
3845#define A60810_RG_SSUSB_PLL_MONVC_EN (0x1<<9) /* 9:9 */
3846#define A60810_RG_SSUSB_PLL_RLH_EN (0x1<<8) /* 8:8 */
3847#define A60810_RG_SSUSB_PLL_AUTOK_KS (0x3<<6) /* 7:6 */
3848#define A60810_RG_SSUSB_PLL_AUTOK_KF (0x3<<4) /* 5:4 */
3849#define A60810_RG_SSUSB_PLL_RST_DLY (0x3<<2) /* 3:2 */
3850
3851/* U3D_reg7 */
3852#define A60810_RG_SSUSB_PLL_RESERVE (0xffff<<16) /* 31:16 */
3853#define A60810_RG_SSUSB_PLL_SSC_PRD (0xffff<<0) /* 15:0 */
3854
3855/* U3D_reg8 */
3856#define A60810_RG_SSUSB_PLL_SSC_PHASE_INI (0x1<<31) /* 31:31 */
3857#define A60810_RG_SSUSB_PLL_SSC_TRI_EN (0x1<<30) /* 30:30 */
3858#define A60810_RG_SSUSB_PLL_CLK_PH_INV (0x1<<29) /* 29:29 */
3859#define A60810_RG_SSUSB_PLL_DDS_LPF_EN (0x1<<28) /* 28:28 */
3860#define A60810_RG_SSUSB_PLL_DDS_RST_SEL (0x1<<27) /* 27:27 */
3861#define A60810_RG_SSUSB_PLL_DDS_VADJ (0x1<<26) /* 26:26 */
3862#define A60810_RG_SSUSB_PLL_DDS_MONEN (0x1<<25) /* 25:25 */
3863#define A60810_RG_SSUSB_PLL_DDS_SEL_EXT (0x1<<24) /* 24:24 */
3864#define A60810_RG_SSUSB_PLL_DDS_PI_PL_EN (0x1<<23) /* 23:23 */
3865#define A60810_RG_SSUSB_PLL_DDS_FRAC_MUTE (0x7<<20) /* 22:20 */
3866#define A60810_RG_SSUSB_PLL_DDS_HF_EN (0x1<<19) /* 19:19 */
3867#define A60810_RG_SSUSB_PLL_DDS_C (0x7<<16) /* 18:16 */
3868#define A60810_RG_SSUSB_PLL_DDS_PREDIV2 (0x1<<15) /* 15:15 */
3869#define A60810_RG_SSUSB_LFPS_LPF (0x3<<13) /* 14:13 */
3870
3871/* U3D_reg9 */
3872#define A60810_RG_SSUSB_CDR_PD_DIV_BYPASS (0x1<<31) /* 31:31 */
3873#define A60810_RG_SSUSB_CDR_PD_DIV_SEL (0x1<<30) /* 30:30 */
3874#define A60810_RG_SSUSB_CDR_CPBIAS_SEL (0x1<<29) /* 29:29 */
3875#define A60810_RG_SSUSB_CDR_OSCDET_EN (0x1<<28) /* 28:28 */
3876#define A60810_RG_SSUSB_CDR_MONMUX (0x1<<27) /* 27:27 */
3877#define A60810_RG_SSUSB_CDR_RST_DLY (0x3<<25) /* 26:25 */
3878#define A60810_RG_SSUSB_CDR_RSTB_MANUAL (0x1<<24) /* 24:24 */
3879#define A60810_RG_SSUSB_CDR_BYPASS (0x3<<22) /* 23:22 */
3880#define A60810_RG_SSUSB_CDR_PI_SLEW (0x3<<20) /* 21:20 */
3881#define A60810_RG_SSUSB_CDR_EPEN (0x1<<19) /* 19:19 */
3882#define A60810_RG_SSUSB_CDR_AUTOK_LOAD (0x1<<18) /* 18:18 */
3883#define A60810_RG_SSUSB_CDR_MONEN (0x1<<16) /* 16:16 */
3884#define A60810_RG_SSUSB_CDR_MONEN_DIG (0x1<<15) /* 15:15 */
3885#define A60810_RG_SSUSB_CDR_REGOD (0x3<<13) /* 14:13 */
3886#define A60810_RG_SSUSB_CDR_AUTOK_KS (0x3<<11) /* 12:11 */
3887#define A60810_RG_SSUSB_CDR_AUTOK_KF (0x3<<9) /* 10:9 */
3888#define A60810_RG_SSUSB_RX_DAC_EN (0x1<<8) /* 8:8 */
3889#define A60810_RG_SSUSB_RX_DAC_PWD (0x1<<7) /* 7:7 */
3890#define A60810_RG_SSUSB_EQ_CURSEL (0x1<<6) /* 6:6 */
3891#define A60810_RG_SSUSB_RX_DAC_MUX (0x1f<<1) /* 5:1 */
3892#define A60810_RG_SSUSB_RX_R2T_EN (0x1<<0) /* 0:0 */
3893
3894/* U3D_regA */
3895#define A60810_RG_SSUSB_RX_T2R_EN (0x1<<31) /* 31:31 */
3896#define A60810_RG_SSUSB_RX_50_LOWER (0x7<<28) /* 30:28 */
3897#define A60810_RG_SSUSB_RX_50_TAR (0x3<<26) /* 27:26 */
3898#define A60810_RG_SSUSB_RX_SW_CTRL (0xf<<21) /* 24:21 */
3899#define A60810_RG_PCIE_SIGDET_VTH (0x3<<19) /* 20:19 */
3900#define A60810_RG_PCIE_SIGDET_LPF (0x3<<17) /* 18:17 */
3901#define A60810_RG_SSUSB_LFPS_MON_EN (0x1<<16) /* 16:16 */
3902#define A60810_RG_SSUSB_RXAFE_DCMON_SEL (0xf<<12) /* 15:12 */
3903#define A60810_RG_SSUSB_RX_P1_ENTRY_PASS (0x1<<11) /* 11:11 */
3904#define A60810_RG_SSUSB_RX_PD_RST (0x1<<10) /* 10:10 */
3905#define A60810_RG_SSUSB_RX_PD_RST_PASS (0x1<<9) /* 9:9 */
3906
3907/* U3D_regB */
3908#define A60810_RG_SSUSB_CDR_RESERVE (0xff<<24) /* 31:24 */
3909#define A60810_RG_SSUSB_RXAFE_RESERVE (0xff<<16) /* 23:16 */
3910#define A60810_RG_PCIE_RX_RESERVE (0xff<<8) /* 15:8 */
3911#define A60810_RG_SSUSB_VRT_25M_EN (0x1<<7) /* 7:7 */
3912#define A60810_RG_SSUSB_RX_PD_PICAL_SWAP (0x1<<6) /* 6:6 */
3913#define A60810_RG_SSUSB_RX_DAC_MEAS_EN (0x1<<5) /* 5:5 */
3914#define A60810_RG_SSUSB_MPX_SEL_L0 (0x1<<4) /* 4:4 */
3915#define A60810_RG_SSUSB_LFPS_SLCOUT_SEL (0x1<<3) /* 3:3 */
3916#define A60810_RG_SSUSB_LFPS_CMPOUT_SEL (0x1<<2) /* 2:2 */
3917#define A60810_RG_PCIE_SIGDET_HF (0x3<<0) /* 1:0 */
3918
3919/* U3D_regC */
3920#define A60810_RGS_SSUSB_RX_DEBUG_RESERVE (0xff<<0) /* 7:0 */
3921
3922/* OFFSET */
3923
3924/* U3D_reg0 */
3925#define A60810_RG_SSUSB_BGR_EN_OFST (31)
3926#define A60810_RG_SSUSB_CHPEN_OFST (30)
3927#define A60810_RG_SSUSB_BG_DIV_OFST (28)
3928#define A60810_RG_SSUSB_INTR_EN_OFST (26)
3929#define A60810_RG_SSUSB_MPX_EN_OFST (24)
3930#define A60810_RG_SSUSB_MPX_SEL_OFST (16)
3931#define A60810_RG_SSUSB_REF_EN_OFST (15)
3932#define A60810_RG_SSUSB_VRT_VREF_SEL_OFST (11)
3933#define A60810_RG_SSUSB_BG_MONEN_OFST (8)
3934#define A60810_RG_SSUSB_INT_BIAS_SEL_OFST (7)
3935#define A60810_RG_SSUSB_EXT_BIAS_SEL_OFST (6)
3936#define A60810_RG_PCIE_CLKDRV_OFFSET_OFST (2)
3937#define A60810_RG_PCIE_CLKDRV_SLEW_OFST (0)
3938
3939/* U3D_reg1 */
3940#define A60810_RG_PCIE_CLKDRV_AMP_OFST (29)
3941#define A60810_RG_SSUSB_XTAL_TST_A2DCK_EN_OFST (28)
3942#define A60810_RG_SSUSB_XTAL_MON_EN_OFST (27)
3943#define A60810_RG_SSUSB_XTAL_HYS_OFST (26)
3944#define A60810_RG_SSUSB_XTAL_TOP_RESERVE_OFST (10)
3945#define A60810_RG_SSUSB_SYSPLL_PREDIV_OFST (8)
3946#define A60810_RG_SSUSB_SYSPLL_POSDIV_OFST (6)
3947#define A60810_RG_SSUSB_SYSPLL_VCO_DIV_SEL_OFST (5)
3948#define A60810_RG_SSUSB_SYSPLL_VOD_EN_OFST (4)
3949#define A60810_RG_SSUSB_SYSPLL_RST_DLY_OFST (2)
3950#define A60810_RG_SSUSB_SYSPLL_BLP_OFST (1)
3951#define A60810_RG_SSUSB_SYSPLL_BP_OFST (0)
3952
3953/* U3D_reg2 */
3954#define A60810_RG_SSUSB_SYSPLL_BR_OFST (31)
3955#define A60810_RG_SSUSB_SYSPLL_BC_OFST (30)
3956#define A60810_RG_SSUSB_SYSPLL_MONCK_EN_OFST (29)
3957#define A60810_RG_SSUSB_SYSPLL_MONVC_EN_OFST (28)
3958#define A60810_RG_SSUSB_SYSPLL_MONREF_EN_OFST (27)
3959#define A60810_RG_SSUSB_SYSPLL_SDM_IFM_OFST (26)
3960#define A60810_RG_SSUSB_SYSPLL_SDM_OUT_OFST (25)
3961#define A60810_RG_SSUSB_SYSPLL_BACK_EN_OFST (24)
3962
3963/* U3D_reg3 */
3964#define A60810_RG_SSUSB_SYSPLL_FBDIV_OFST (1)
3965#define A60810_RG_SSUSB_SYSPLL_HR_EN_OFST (0)
3966
3967/* U3D_reg4 */
3968#define A60810_RG_SSUSB_SYSPLL_SDM_DI_EN_OFST (31)
3969#define A60810_RG_SSUSB_SYSPLL_SDM_DI_LS_OFST (29)
3970#define A60810_RG_SSUSB_SYSPLL_SDM_ORD_OFST (27)
3971#define A60810_RG_SSUSB_SYSPLL_SDM_MODE_OFST (25)
3972#define A60810_RG_SSUSB_SYSPLL_RESERVE_OFST (17)
3973#define A60810_RG_SSUSB_SYSPLL_TOP_RESERVE_OFST (1)
3974
3975/* U3D_reg5 */
3976#define A60810_RG_SSUSB_TX250MCK_INVB_OFST (31)
3977#define A60810_RG_SSUSB_IDRV_ITAILOP_EN_OFST (30)
3978#define A60810_RG_SSUSB_IDRV_CALIB_OFST (24)
3979#define A60810_RG_SSUSB_IDEM_BIAS_OFST (20)
3980#define A60810_RG_SSUSB_TX_R50_FON_OFST (19)
3981#define A60810_RG_SSUSB_TX_SR_OFST (16)
3982#define A60810_RG_SSUSB_RXDET_RSEL_OFST (14)
3983#define A60810_RG_SSUSB_RXDET_UPDN_FORCE_OFST (13)
3984#define A60810_RG_SSUSB_RXDET_UPDN_SEL_OFST (12)
3985#define A60810_RG_SSUSB_RXDET_VTHSEL_L_OFST (10)
3986#define A60810_RG_SSUSB_RXDET_VTHSEL_H_OFST (8)
3987#define A60810_RG_SSUSB_CKMON_EN_OFST (7)
3988#define A60810_RG_SSUSB_TX_VLMON_EN_OFST (6)
3989#define A60810_RG_SSUSB_TX_VLMON_SEL_OFST (4)
3990#define A60810_RG_SSUSB_CKMON_SEL_OFST (0)
3991
3992/* U3D_reg6 */
3993#define A60810_RG_SSUSB_TX_EIDLE_CM_OFST (28)
3994#define A60810_RG_SSUSB_RXLBTX_EN_OFST (27)
3995#define A60810_RG_SSUSB_TXLBRX_EN_OFST (26)
3996#define A60810_RG_SSUSB_RESERVE_OFST (16)
3997#define A60810_RG_SSUSB_PLL_POSDIV_OFST (14)
3998#define A60810_RG_SSUSB_PLL_AUTOK_LOAD_OFST (13)
3999#define A60810_RG_SSUSB_PLL_VOD_EN_OFST (12)
4000#define A60810_RG_SSUSB_PLL_MONREF_EN_OFST (11)
4001#define A60810_RG_SSUSB_PLL_MONCK_EN_OFST (10)
4002#define A60810_RG_SSUSB_PLL_MONVC_EN_OFST (9)
4003#define A60810_RG_SSUSB_PLL_RLH_EN_OFST (8)
4004#define A60810_RG_SSUSB_PLL_AUTOK_KS_OFST (6)
4005#define A60810_RG_SSUSB_PLL_AUTOK_KF_OFST (4)
4006#define A60810_RG_SSUSB_PLL_RST_DLY_OFST (2)
4007
4008/* U3D_reg7 */
4009#define A60810_RG_SSUSB_PLL_RESERVE_OFST (16)
4010#define A60810_RG_SSUSB_PLL_SSC_PRD_OFST (0)
4011
4012/* U3D_reg8 */
4013#define A60810_RG_SSUSB_PLL_SSC_PHASE_INI_OFST (31)
4014#define A60810_RG_SSUSB_PLL_SSC_TRI_EN_OFST (30)
4015#define A60810_RG_SSUSB_PLL_CLK_PH_INV_OFST (29)
4016#define A60810_RG_SSUSB_PLL_DDS_LPF_EN_OFST (28)
4017#define A60810_RG_SSUSB_PLL_DDS_RST_SEL_OFST (27)
4018#define A60810_RG_SSUSB_PLL_DDS_VADJ_OFST (26)
4019#define A60810_RG_SSUSB_PLL_DDS_MONEN_OFST (25)
4020#define A60810_RG_SSUSB_PLL_DDS_SEL_EXT_OFST (24)
4021#define A60810_RG_SSUSB_PLL_DDS_PI_PL_EN_OFST (23)
4022#define A60810_RG_SSUSB_PLL_DDS_FRAC_MUTE_OFST (20)
4023#define A60810_RG_SSUSB_PLL_DDS_HF_EN_OFST (19)
4024#define A60810_RG_SSUSB_PLL_DDS_C_OFST (16)
4025#define A60810_RG_SSUSB_PLL_DDS_PREDIV2_OFST (15)
4026#define A60810_RG_SSUSB_LFPS_LPF_OFST (13)
4027
4028/* U3D_reg9 */
4029#define A60810_RG_SSUSB_CDR_PD_DIV_BYPASS_OFST (31)
4030#define A60810_RG_SSUSB_CDR_PD_DIV_SEL_OFST (30)
4031#define A60810_RG_SSUSB_CDR_CPBIAS_SEL_OFST (29)
4032#define A60810_RG_SSUSB_CDR_OSCDET_EN_OFST (28)
4033#define A60810_RG_SSUSB_CDR_MONMUX_OFST (27)
4034#define A60810_RG_SSUSB_CDR_RST_DLY_OFST (25)
4035#define A60810_RG_SSUSB_CDR_RSTB_MANUAL_OFST (24)
4036#define A60810_RG_SSUSB_CDR_BYPASS_OFST (22)
4037#define A60810_RG_SSUSB_CDR_PI_SLEW_OFST (20)
4038#define A60810_RG_SSUSB_CDR_EPEN_OFST (19)
4039#define A60810_RG_SSUSB_CDR_AUTOK_LOAD_OFST (18)
4040#define A60810_RG_SSUSB_CDR_MONEN_OFST (16)
4041#define A60810_RG_SSUSB_CDR_MONEN_DIG_OFST (15)
4042#define A60810_RG_SSUSB_CDR_REGOD_OFST (13)
4043#define A60810_RG_SSUSB_CDR_AUTOK_KS_OFST (11)
4044#define A60810_RG_SSUSB_CDR_AUTOK_KF_OFST (9)
4045#define A60810_RG_SSUSB_RX_DAC_EN_OFST (8)
4046#define A60810_RG_SSUSB_RX_DAC_PWD_OFST (7)
4047#define A60810_RG_SSUSB_EQ_CURSEL_OFST (6)
4048#define A60810_RG_SSUSB_RX_DAC_MUX_OFST (1)
4049#define A60810_RG_SSUSB_RX_R2T_EN_OFST (0)
4050
4051/* U3D_regA */
4052#define A60810_RG_SSUSB_RX_T2R_EN_OFST (31)
4053#define A60810_RG_SSUSB_RX_50_LOWER_OFST (28)
4054#define A60810_RG_SSUSB_RX_50_TAR_OFST (26)
4055#define A60810_RG_SSUSB_RX_SW_CTRL_OFST (21)
4056#define A60810_RG_PCIE_SIGDET_VTH_OFST (19)
4057#define A60810_RG_PCIE_SIGDET_LPF_OFST (17)
4058#define A60810_RG_SSUSB_LFPS_MON_EN_OFST (16)
4059#define A60810_RG_SSUSB_RXAFE_DCMON_SEL_OFST (12)
4060#define A60810_RG_SSUSB_RX_P1_ENTRY_PASS_OFST (11)
4061#define A60810_RG_SSUSB_RX_PD_RST_OFST (10)
4062#define A60810_RG_SSUSB_RX_PD_RST_PASS_OFST (9)
4063
4064/* U3D_regB */
4065#define A60810_RG_SSUSB_CDR_RESERVE_OFST (24)
4066#define A60810_RG_SSUSB_RXAFE_RESERVE_OFST (16)
4067#define A60810_RG_PCIE_RX_RESERVE_OFST (8)
4068#define A60810_RG_SSUSB_VRT_25M_EN_OFST (7)
4069#define A60810_RG_SSUSB_RX_PD_PICAL_SWAP_OFST (6)
4070#define A60810_RG_SSUSB_RX_DAC_MEAS_EN_OFST (5)
4071#define A60810_RG_SSUSB_MPX_SEL_L0_OFST (4)
4072#define A60810_RG_SSUSB_LFPS_SLCOUT_SEL_OFST (3)
4073#define A60810_RG_SSUSB_LFPS_CMPOUT_SEL_OFST (2)
4074#define A60810_RG_PCIE_SIGDET_HF_OFST (0)
4075
4076/* U3D_regC */
4077#define A60810_RGS_SSUSB_RX_DEBUG_RESERVE_OFST (0)
4078
4079///////////////////////////////////////////////////////////////////////////////
4080
4081struct a60810_u3phya_da_reg_a {
4082 /* 0x0 */
4083 u32 reg0;
4084 u32 reg1;
4085 u32 reg4;
4086 u32 reg5;
4087 /* 0x10 */
4088 u32 reg6;
4089 u32 reg7;
4090 u32 reg8;
4091 u32 reg9;
4092 /* 0x20 */
4093 u32 reg10;
4094 u32 reg12;
4095 u32 reg13;
4096 u32 reg14;
4097 /* 0x30 */
4098 u32 reg15;
4099 u32 reg16;
4100 u32 reg19;
4101 u32 reg20;
4102 /* 0x40 */
4103 u32 reg21;
4104 u32 reg23;
4105 u32 reg25;
4106 u32 reg26;
4107 /* 0x50 */
4108 u32 reg28;
4109 u32 reg29;
4110 u32 reg30;
4111 u32 reg31;
4112 /* 0x60 */
4113 u32 reg32;
4114 u32 reg33;
4115};
4116
4117/* U3D_reg0 */
4118#define A60810_RG_PCIE_SPEED_PE2D (0x1<<24) /* 24:24 */
4119#define A60810_RG_PCIE_SPEED_PE2H (0x1<<23) /* 23:23 */
4120#define A60810_RG_PCIE_SPEED_PE1D (0x1<<22) /* 22:22 */
4121#define A60810_RG_PCIE_SPEED_PE1H (0x1<<21) /* 21:21 */
4122#define A60810_RG_PCIE_SPEED_U3 (0x1<<20) /* 20:20 */
4123#define A60810_RG_SSUSB_XTAL_EXT_EN_PE2D (0x3<<18) /* 19:18 */
4124#define A60810_RG_SSUSB_XTAL_EXT_EN_PE2H (0x3<<16) /* 17:16 */
4125#define A60810_RG_SSUSB_XTAL_EXT_EN_PE1D (0x3<<14) /* 15:14 */
4126#define A60810_RG_SSUSB_XTAL_EXT_EN_PE1H (0x3<<12) /* 13:12 */
4127#define A60810_RG_SSUSB_XTAL_EXT_EN_U3 (0x3<<10) /* 11:10 */
4128#define A60810_RG_SSUSB_CDR_REFCK_SEL_PE2D (0x3<<8) /* 9:8 */
4129#define A60810_RG_SSUSB_CDR_REFCK_SEL_PE2H (0x3<<6) /* 7:6 */
4130#define A60810_RG_SSUSB_CDR_REFCK_SEL_PE1D (0x3<<4) /* 5:4 */
4131#define A60810_RG_SSUSB_CDR_REFCK_SEL_PE1H (0x3<<2) /* 3:2 */
4132#define A60810_RG_SSUSB_CDR_REFCK_SEL_U3 (0x3<<0) /* 1:0 */
4133
4134/* U3D_reg1 */
4135#define A60810_RG_USB20_REFCK_SEL_PE2D (0x1<<30) /* 30:30 */
4136#define A60810_RG_USB20_REFCK_SEL_PE2H (0x1<<29) /* 29:29 */
4137#define A60810_RG_USB20_REFCK_SEL_PE1D (0x1<<28) /* 28:28 */
4138#define A60810_RG_USB20_REFCK_SEL_PE1H (0x1<<27) /* 27:27 */
4139#define A60810_RG_USB20_REFCK_SEL_U3 (0x1<<26) /* 26:26 */
4140#define A60810_RG_PCIE_REFCK_DIV4_PE2D (0x1<<25) /* 25:25 */
4141#define A60810_RG_PCIE_REFCK_DIV4_PE2H (0x1<<24) /* 24:24 */
4142#define A60810_RG_PCIE_REFCK_DIV4_PE1D (0x1<<18) /* 18:18 */
4143#define A60810_RG_PCIE_REFCK_DIV4_PE1H (0x1<<17) /* 17:17 */
4144#define A60810_RG_PCIE_REFCK_DIV4_U3 (0x1<<16) /* 16:16 */
4145#define A60810_RG_PCIE_MODE_PE2D (0x1<<8) /* 8:8 */
4146#define A60810_RG_PCIE_MODE_PE2H (0x1<<3) /* 3:3 */
4147#define A60810_RG_PCIE_MODE_PE1D (0x1<<2) /* 2:2 */
4148#define A60810_RG_PCIE_MODE_PE1H (0x1<<1) /* 1:1 */
4149#define A60810_RG_PCIE_MODE_U3 (0x1<<0) /* 0:0 */
4150
4151/* U3D_reg4 */
4152#define A60810_RG_SSUSB_PLL_DIVEN_PE2D (0x7<<22) /* 24:22 */
4153#define A60810_RG_SSUSB_PLL_DIVEN_PE2H (0x7<<19) /* 21:19 */
4154#define A60810_RG_SSUSB_PLL_DIVEN_PE1D (0x7<<16) /* 18:16 */
4155#define A60810_RG_SSUSB_PLL_DIVEN_PE1H (0x7<<13) /* 15:13 */
4156#define A60810_RG_SSUSB_PLL_DIVEN_U3 (0x7<<10) /* 12:10 */
4157#define A60810_RG_SSUSB_PLL_BC_PE2D (0x3<<8) /* 9:8 */
4158#define A60810_RG_SSUSB_PLL_BC_PE2H (0x3<<6) /* 7:6 */
4159#define A60810_RG_SSUSB_PLL_BC_PE1D (0x3<<4) /* 5:4 */
4160#define A60810_RG_SSUSB_PLL_BC_PE1H (0x3<<2) /* 3:2 */
4161#define A60810_RG_SSUSB_PLL_BC_U3 (0x3<<0) /* 1:0 */
4162
4163/* U3D_reg5 */
4164#define A60810_RG_SSUSB_PLL_BR_PE2D (0x3<<30) /* 31:30 */
4165#define A60810_RG_SSUSB_PLL_BR_PE2H (0x3<<28) /* 29:28 */
4166#define A60810_RG_SSUSB_PLL_BR_PE1D (0x3<<26) /* 27:26 */
4167#define A60810_RG_SSUSB_PLL_BR_PE1H (0x3<<24) /* 25:24 */
4168#define A60810_RG_SSUSB_PLL_BR_U3 (0x3<<22) /* 23:22 */
4169#define A60810_RG_SSUSB_PLL_IC_PE2D (0xf<<16) /* 19:16 */
4170#define A60810_RG_SSUSB_PLL_IC_PE2H (0xf<<12) /* 15:12 */
4171#define A60810_RG_SSUSB_PLL_IC_PE1D (0xf<<8) /* 11:8 */
4172#define A60810_RG_SSUSB_PLL_IC_PE1H (0xf<<4) /* 7:4 */
4173#define A60810_RG_SSUSB_PLL_IC_U3 (0xf<<0) /* 3:0 */
4174
4175/* U3D_reg6 */
4176#define A60810_RG_SSUSB_PLL_IR_PE2D (0xf<<24) /* 27:24 */
4177#define A60810_RG_SSUSB_PLL_IR_PE2H (0xf<<16) /* 19:16 */
4178#define A60810_RG_SSUSB_PLL_IR_PE1D (0xf<<8) /* 11:8 */
4179#define A60810_RG_SSUSB_PLL_IR_PE1H (0xf<<4) /* 7:4 */
4180#define A60810_RG_SSUSB_PLL_IR_U3 (0xf<<0) /* 3:0 */
4181
4182/* U3D_reg7 */
4183#define A60810_RG_SSUSB_PLL_BP_PE2D (0xf<<24) /* 27:24 */
4184#define A60810_RG_SSUSB_PLL_BP_PE2H (0xf<<16) /* 19:16 */
4185#define A60810_RG_SSUSB_PLL_BP_PE1D (0xf<<8) /* 11:8 */
4186#define A60810_RG_SSUSB_PLL_BP_PE1H (0xf<<4) /* 7:4 */
4187#define A60810_RG_SSUSB_PLL_BP_U3 (0xf<<0) /* 3:0 */
4188
4189/* U3D_reg8 */
4190#define A60810_RG_SSUSB_PLL_FBKSEL_PE2D (0x3<<24) /* 25:24 */
4191#define A60810_RG_SSUSB_PLL_FBKSEL_PE2H (0x3<<16) /* 17:16 */
4192#define A60810_RG_SSUSB_PLL_FBKSEL_PE1D (0x3<<8) /* 9:8 */
4193#define A60810_RG_SSUSB_PLL_FBKSEL_PE1H (0x3<<2) /* 3:2 */
4194#define A60810_RG_SSUSB_PLL_FBKSEL_U3 (0x3<<0) /* 1:0 */
4195
4196/* U3D_reg9 */
4197#define A60810_RG_SSUSB_PLL_FBKDIV_PE2H (0x7f<<24) /* 30:24 */
4198#define A60810_RG_SSUSB_PLL_FBKDIV_PE1D (0x7f<<16) /* 22:16 */
4199#define A60810_RG_SSUSB_PLL_FBKDIV_PE1H (0x7f<<8) /* 14:8 */
4200#define A60810_RG_SSUSB_PLL_FBKDIV_U3 (0x7f<<0) /* 6:0 */
4201
4202/* U3D_reg10 */
4203#define A60810_RG_SSUSB_PLL_PREDIV_PE2D (0x3<<26) /* 27:26 */
4204#define A60810_RG_SSUSB_PLL_PREDIV_PE2H (0x3<<24) /* 25:24 */
4205#define A60810_RG_SSUSB_PLL_PREDIV_PE1D (0x3<<18) /* 19:18 */
4206#define A60810_RG_SSUSB_PLL_PREDIV_PE1H (0x3<<16) /* 17:16 */
4207#define A60810_RG_SSUSB_PLL_PREDIV_U3 (0x3<<8) /* 9:8 */
4208#define A60810_RG_SSUSB_PLL_FBKDIV_PE2D (0x7f<<0) /* 6:0 */
4209
4210/* U3D_reg12 */
4211#define A60810_RG_SSUSB_PLL_PCW_NCPO_U3 (0x7fffffff<<0) /* 30:0 */
4212
4213/* U3D_reg13 */
4214#define A60810_RG_SSUSB_PLL_PCW_NCPO_PE1H (0x7fffffff<<0) /* 30:0 */
4215
4216/* U3D_reg14 */
4217#define A60810_RG_SSUSB_PLL_PCW_NCPO_PE1D (0x7fffffff<<0) /* 30:0 */
4218
4219/* U3D_reg15 */
4220#define A60810_RG_SSUSB_PLL_PCW_NCPO_PE2H (0x7fffffff<<0) /* 30:0 */
4221
4222/* U3D_reg16 */
4223#define A60810_RG_SSUSB_PLL_PCW_NCPO_PE2D (0x7fffffff<<0) /* 30:0 */
4224
4225/* U3D_reg19 */
4226#define A60810_RG_SSUSB_PLL_SSC_DELTA1_PE1H (0xffff<<16) /* 31:16 */
4227#define A60810_RG_SSUSB_PLL_SSC_DELTA1_U3 (0xffff<<0) /* 15:0 */
4228
4229/* U3D_reg20 */
4230#define A60810_RG_SSUSB_PLL_SSC_DELTA1_PE2H (0xffff<<16) /* 31:16 */
4231#define A60810_RG_SSUSB_PLL_SSC_DELTA1_PE1D (0xffff<<0) /* 15:0 */
4232
4233/* U3D_reg21 */
4234#define A60810_RG_SSUSB_PLL_SSC_DELTA_U3 (0xffff<<16) /* 31:16 */
4235#define A60810_RG_SSUSB_PLL_SSC_DELTA1_PE2D (0xffff<<0) /* 15:0 */
4236
4237/* U3D_reg23 */
4238#define A60810_RG_SSUSB_PLL_SSC_DELTA_PE1D (0xffff<<16) /* 31:16 */
4239#define A60810_RG_SSUSB_PLL_SSC_DELTA_PE1H (0xffff<<0) /* 15:0 */
4240
4241/* U3D_reg25 */
4242#define A60810_RG_SSUSB_PLL_SSC_DELTA_PE2D (0xffff<<16) /* 31:16 */
4243#define A60810_RG_SSUSB_PLL_SSC_DELTA_PE2H (0xffff<<0) /* 15:0 */
4244
4245/* U3D_reg26 */
4246#define A60810_RG_SSUSB_PLL_REFCKDIV_PE2D (0x1<<25) /* 25:25 */
4247#define A60810_RG_SSUSB_PLL_REFCKDIV_PE2H (0x1<<24) /* 24:24 */
4248#define A60810_RG_SSUSB_PLL_REFCKDIV_PE1D (0x1<<16) /* 16:16 */
4249#define A60810_RG_SSUSB_PLL_REFCKDIV_PE1H (0x1<<8) /* 8:8 */
4250#define A60810_RG_SSUSB_PLL_REFCKDIV_U3 (0x1<<0) /* 0:0 */
4251
4252/* U3D_reg28 */
4253#define A60810_RG_SSUSB_CDR_BPA_PE2D (0x3<<24) /* 25:24 */
4254#define A60810_RG_SSUSB_CDR_BPA_PE2H (0x3<<16) /* 17:16 */
4255#define A60810_RG_SSUSB_CDR_BPA_PE1D (0x3<<10) /* 11:10 */
4256#define A60810_RG_SSUSB_CDR_BPA_PE1H (0x3<<8) /* 9:8 */
4257#define A60810_RG_SSUSB_CDR_BPA_U3 (0x3<<0) /* 1:0 */
4258
4259/* U3D_reg29 */
4260#define A60810_RG_SSUSB_CDR_BPB_PE2D (0x7<<24) /* 26:24 */
4261#define A60810_RG_SSUSB_CDR_BPB_PE2H (0x7<<16) /* 18:16 */
4262#define A60810_RG_SSUSB_CDR_BPB_PE1D (0x7<<6) /* 8:6 */
4263#define A60810_RG_SSUSB_CDR_BPB_PE1H (0x7<<3) /* 5:3 */
4264#define A60810_RG_SSUSB_CDR_BPB_U3 (0x7<<0) /* 2:0 */
4265
4266/* U3D_reg30 */
4267#define A60810_RG_SSUSB_CDR_BR_PE2D (0x7<<24) /* 26:24 */
4268#define A60810_RG_SSUSB_CDR_BR_PE2H (0x7<<16) /* 18:16 */
4269#define A60810_RG_SSUSB_CDR_BR_PE1D (0x7<<6) /* 8:6 */
4270#define A60810_RG_SSUSB_CDR_BR_PE1H (0x7<<3) /* 5:3 */
4271#define A60810_RG_SSUSB_CDR_BR_U3 (0x7<<0) /* 2:0 */
4272
4273/* U3D_reg31 */
4274#define A60810_RG_SSUSB_CDR_FBDIV_PE2H (0x7f<<24) /* 30:24 */
4275#define A60810_RG_SSUSB_CDR_FBDIV_PE1D (0x7f<<16) /* 22:16 */
4276#define A60810_RG_SSUSB_CDR_FBDIV_PE1H (0x7f<<8) /* 14:8 */
4277#define A60810_RG_SSUSB_CDR_FBDIV_U3 (0x7f<<0) /* 6:0 */
4278
4279/* U3D_reg32 */
4280#define A60810_RG_SSUSB_EQ_RSTEP1_PE2D (0x3<<30) /* 31:30 */
4281#define A60810_RG_SSUSB_EQ_RSTEP1_PE2H (0x3<<28) /* 29:28 */
4282#define A60810_RG_SSUSB_EQ_RSTEP1_PE1D (0x3<<26) /* 27:26 */
4283#define A60810_RG_SSUSB_EQ_RSTEP1_PE1H (0x3<<24) /* 25:24 */
4284#define A60810_RG_SSUSB_EQ_RSTEP1_U3 (0x3<<22) /* 23:22 */
4285#define A60810_RG_SSUSB_LFPS_DEGLITCH_PE2D (0x3<<20) /* 21:20 */
4286#define A60810_RG_SSUSB_LFPS_DEGLITCH_PE2H (0x3<<18) /* 19:18 */
4287#define A60810_RG_SSUSB_LFPS_DEGLITCH_PE1D (0x3<<16) /* 17:16 */
4288#define A60810_RG_SSUSB_LFPS_DEGLITCH_PE1H (0x3<<14) /* 15:14 */
4289#define A60810_RG_SSUSB_LFPS_DEGLITCH_U3 (0x3<<12) /* 13:12 */
4290#define A60810_RG_SSUSB_CDR_KVSEL_PE2D (0x1<<11) /* 11:11 */
4291#define A60810_RG_SSUSB_CDR_KVSEL_PE2H (0x1<<10) /* 10:10 */
4292#define A60810_RG_SSUSB_CDR_KVSEL_PE1D (0x1<<9) /* 9:9 */
4293#define A60810_RG_SSUSB_CDR_KVSEL_PE1H (0x1<<8) /* 8:8 */
4294#define A60810_RG_SSUSB_CDR_KVSEL_U3 (0x1<<7) /* 7:7 */
4295#define A60810_RG_SSUSB_CDR_FBDIV_PE2D (0x7f<<0) /* 6:0 */
4296
4297/* U3D_reg33 */
4298#define A60810_RG_SSUSB_RX_CMPWD_PE2D (0x1<<26) /* 26:26 */
4299#define A60810_RG_SSUSB_RX_CMPWD_PE2H (0x1<<25) /* 25:25 */
4300#define A60810_RG_SSUSB_RX_CMPWD_PE1D (0x1<<24) /* 24:24 */
4301#define A60810_RG_SSUSB_RX_CMPWD_PE1H (0x1<<23) /* 23:23 */
4302#define A60810_RG_SSUSB_RX_CMPWD_U3 (0x1<<16) /* 16:16 */
4303#define A60810_RG_SSUSB_EQ_RSTEP2_PE2D (0x3<<8) /* 9:8 */
4304#define A60810_RG_SSUSB_EQ_RSTEP2_PE2H (0x3<<6) /* 7:6 */
4305#define A60810_RG_SSUSB_EQ_RSTEP2_PE1D (0x3<<4) /* 5:4 */
4306#define A60810_RG_SSUSB_EQ_RSTEP2_PE1H (0x3<<2) /* 3:2 */
4307#define A60810_RG_SSUSB_EQ_RSTEP2_U3 (0x3<<0) /* 1:0 */
4308
4309/* OFFSET DEFINITION */
4310
4311/* U3D_reg0 */
4312#define A60810_RG_PCIE_SPEED_PE2D_OFST (24)
4313#define A60810_RG_PCIE_SPEED_PE2H_OFST (23)
4314#define A60810_RG_PCIE_SPEED_PE1D_OFST (22)
4315#define A60810_RG_PCIE_SPEED_PE1H_OFST (21)
4316#define A60810_RG_PCIE_SPEED_U3_OFST (20)
4317#define A60810_RG_SSUSB_XTAL_EXT_EN_PE2D_OFST (18)
4318#define A60810_RG_SSUSB_XTAL_EXT_EN_PE2H_OFST (16)
4319#define A60810_RG_SSUSB_XTAL_EXT_EN_PE1D_OFST (14)
4320#define A60810_RG_SSUSB_XTAL_EXT_EN_PE1H_OFST (12)
4321#define A60810_RG_SSUSB_XTAL_EXT_EN_U3_OFST (10)
4322#define A60810_RG_SSUSB_CDR_REFCK_SEL_PE2D_OFST (8)
4323#define A60810_RG_SSUSB_CDR_REFCK_SEL_PE2H_OFST (6)
4324#define A60810_RG_SSUSB_CDR_REFCK_SEL_PE1D_OFST (4)
4325#define A60810_RG_SSUSB_CDR_REFCK_SEL_PE1H_OFST (2)
4326#define A60810_RG_SSUSB_CDR_REFCK_SEL_U3_OFST (0)
4327
4328/* U3D_reg1 */
4329#define A60810_RG_USB20_REFCK_SEL_PE2D_OFST (30)
4330#define A60810_RG_USB20_REFCK_SEL_PE2H_OFST (29)
4331#define A60810_RG_USB20_REFCK_SEL_PE1D_OFST (28)
4332#define A60810_RG_USB20_REFCK_SEL_PE1H_OFST (27)
4333#define A60810_RG_USB20_REFCK_SEL_U3_OFST (26)
4334#define A60810_RG_PCIE_REFCK_DIV4_PE2D_OFST (25)
4335#define A60810_RG_PCIE_REFCK_DIV4_PE2H_OFST (24)
4336#define A60810_RG_PCIE_REFCK_DIV4_PE1D_OFST (18)
4337#define A60810_RG_PCIE_REFCK_DIV4_PE1H_OFST (17)
4338#define A60810_RG_PCIE_REFCK_DIV4_U3_OFST (16)
4339#define A60810_RG_PCIE_MODE_PE2D_OFST (8)
4340#define A60810_RG_PCIE_MODE_PE2H_OFST (3)
4341#define A60810_RG_PCIE_MODE_PE1D_OFST (2)
4342#define A60810_RG_PCIE_MODE_PE1H_OFST (1)
4343#define A60810_RG_PCIE_MODE_U3_OFST (0)
4344
4345/* U3D_reg4 */
4346#define A60810_RG_SSUSB_PLL_DIVEN_PE2D_OFST (22)
4347#define A60810_RG_SSUSB_PLL_DIVEN_PE2H_OFST (19)
4348#define A60810_RG_SSUSB_PLL_DIVEN_PE1D_OFST (16)
4349#define A60810_RG_SSUSB_PLL_DIVEN_PE1H_OFST (13)
4350#define A60810_RG_SSUSB_PLL_DIVEN_U3_OFST (10)
4351#define A60810_RG_SSUSB_PLL_BC_PE2D_OFST (8)
4352#define A60810_RG_SSUSB_PLL_BC_PE2H_OFST (6)
4353#define A60810_RG_SSUSB_PLL_BC_PE1D_OFST (4)
4354#define A60810_RG_SSUSB_PLL_BC_PE1H_OFST (2)
4355#define A60810_RG_SSUSB_PLL_BC_U3_OFST (0)
4356
4357/* U3D_reg5 */
4358#define A60810_RG_SSUSB_PLL_BR_PE2D_OFST (30)
4359#define A60810_RG_SSUSB_PLL_BR_PE2H_OFST (28)
4360#define A60810_RG_SSUSB_PLL_BR_PE1D_OFST (26)
4361#define A60810_RG_SSUSB_PLL_BR_PE1H_OFST (24)
4362#define A60810_RG_SSUSB_PLL_BR_U3_OFST (22)
4363#define A60810_RG_SSUSB_PLL_IC_PE2D_OFST (16)
4364#define A60810_RG_SSUSB_PLL_IC_PE2H_OFST (12)
4365#define A60810_RG_SSUSB_PLL_IC_PE1D_OFST (8)
4366#define A60810_RG_SSUSB_PLL_IC_PE1H_OFST (4)
4367#define A60810_RG_SSUSB_PLL_IC_U3_OFST (0)
4368
4369/* U3D_reg6 */
4370#define A60810_RG_SSUSB_PLL_IR_PE2D_OFST (24)
4371#define A60810_RG_SSUSB_PLL_IR_PE2H_OFST (16)
4372#define A60810_RG_SSUSB_PLL_IR_PE1D_OFST (8)
4373#define A60810_RG_SSUSB_PLL_IR_PE1H_OFST (4)
4374#define A60810_RG_SSUSB_PLL_IR_U3_OFST (0)
4375
4376/* U3D_reg7 */
4377#define A60810_RG_SSUSB_PLL_BP_PE2D_OFST (24)
4378#define A60810_RG_SSUSB_PLL_BP_PE2H_OFST (16)
4379#define A60810_RG_SSUSB_PLL_BP_PE1D_OFST (8)
4380#define A60810_RG_SSUSB_PLL_BP_PE1H_OFST (4)
4381#define A60810_RG_SSUSB_PLL_BP_U3_OFST (0)
4382
4383/* U3D_reg8 */
4384#define A60810_RG_SSUSB_PLL_FBKSEL_PE2D_OFST (24)
4385#define A60810_RG_SSUSB_PLL_FBKSEL_PE2H_OFST (16)
4386#define A60810_RG_SSUSB_PLL_FBKSEL_PE1D_OFST (8)
4387#define A60810_RG_SSUSB_PLL_FBKSEL_PE1H_OFST (2)
4388#define A60810_RG_SSUSB_PLL_FBKSEL_U3_OFST (0)
4389
4390/* U3D_reg9 */
4391#define A60810_RG_SSUSB_PLL_FBKDIV_PE2H_OFST (24)
4392#define A60810_RG_SSUSB_PLL_FBKDIV_PE1D_OFST (16)
4393#define A60810_RG_SSUSB_PLL_FBKDIV_PE1H_OFST (8)
4394#define A60810_RG_SSUSB_PLL_FBKDIV_U3_OFST (0)
4395
4396/* U3D_reg10 */
4397#define A60810_RG_SSUSB_PLL_PREDIV_PE2D_OFST (26)
4398#define A60810_RG_SSUSB_PLL_PREDIV_PE2H_OFST (24)
4399#define A60810_RG_SSUSB_PLL_PREDIV_PE1D_OFST (18)
4400#define A60810_RG_SSUSB_PLL_PREDIV_PE1H_OFST (16)
4401#define A60810_RG_SSUSB_PLL_PREDIV_U3_OFST (8)
4402#define A60810_RG_SSUSB_PLL_FBKDIV_PE2D_OFST (0)
4403
4404/* U3D_reg12 */
4405#define A60810_RG_SSUSB_PLL_PCW_NCPO_U3_OFST (0)
4406
4407/* U3D_reg13 */
4408#define A60810_RG_SSUSB_PLL_PCW_NCPO_PE1H_OFST (0)
4409
4410/* U3D_reg14 */
4411#define A60810_RG_SSUSB_PLL_PCW_NCPO_PE1D_OFST (0)
4412
4413/* U3D_reg15 */
4414#define A60810_RG_SSUSB_PLL_PCW_NCPO_PE2H_OFST (0)
4415
4416/* U3D_reg16 */
4417#define A60810_RG_SSUSB_PLL_PCW_NCPO_PE2D_OFST (0)
4418
4419/* U3D_reg19 */
4420#define A60810_RG_SSUSB_PLL_SSC_DELTA1_PE1H_OFST (16)
4421#define A60810_RG_SSUSB_PLL_SSC_DELTA1_U3_OFST (0)
4422
4423/* U3D_reg20 */
4424#define A60810_RG_SSUSB_PLL_SSC_DELTA1_PE2H_OFST (16)
4425#define A60810_RG_SSUSB_PLL_SSC_DELTA1_PE1D_OFST (0)
4426
4427/* U3D_reg21 */
4428#define A60810_RG_SSUSB_PLL_SSC_DELTA_U3_OFST (16)
4429#define A60810_RG_SSUSB_PLL_SSC_DELTA1_PE2D_OFST (0)
4430
4431/* U3D_reg23 */
4432#define A60810_RG_SSUSB_PLL_SSC_DELTA_PE1D_OFST (16)
4433#define A60810_RG_SSUSB_PLL_SSC_DELTA_PE1H_OFST (0)
4434
4435/* U3D_reg25 */
4436#define A60810_RG_SSUSB_PLL_SSC_DELTA_PE2D_OFST (16)
4437#define A60810_RG_SSUSB_PLL_SSC_DELTA_PE2H_OFST (0)
4438
4439/* U3D_reg26 */
4440#define A60810_RG_SSUSB_PLL_REFCKDIV_PE2D_OFST (25)
4441#define A60810_RG_SSUSB_PLL_REFCKDIV_PE2H_OFST (24)
4442#define A60810_RG_SSUSB_PLL_REFCKDIV_PE1D_OFST (16)
4443#define A60810_RG_SSUSB_PLL_REFCKDIV_PE1H_OFST (8)
4444#define A60810_RG_SSUSB_PLL_REFCKDIV_U3_OFST (0)
4445
4446/* U3D_reg28 */
4447#define A60810_RG_SSUSB_CDR_BPA_PE2D_OFST (24)
4448#define A60810_RG_SSUSB_CDR_BPA_PE2H_OFST (16)
4449#define A60810_RG_SSUSB_CDR_BPA_PE1D_OFST (10)
4450#define A60810_RG_SSUSB_CDR_BPA_PE1H_OFST (8)
4451#define A60810_RG_SSUSB_CDR_BPA_U3_OFST (0)
4452
4453/* U3D_reg29 */
4454#define A60810_RG_SSUSB_CDR_BPB_PE2D_OFST (24)
4455#define A60810_RG_SSUSB_CDR_BPB_PE2H_OFST (16)
4456#define A60810_RG_SSUSB_CDR_BPB_PE1D_OFST (6)
4457#define A60810_RG_SSUSB_CDR_BPB_PE1H_OFST (3)
4458#define A60810_RG_SSUSB_CDR_BPB_U3_OFST (0)
4459
4460/* U3D_reg30 */
4461#define A60810_RG_SSUSB_CDR_BR_PE2D_OFST (24)
4462#define A60810_RG_SSUSB_CDR_BR_PE2H_OFST (16)
4463#define A60810_RG_SSUSB_CDR_BR_PE1D_OFST (6)
4464#define A60810_RG_SSUSB_CDR_BR_PE1H_OFST (3)
4465#define A60810_RG_SSUSB_CDR_BR_U3_OFST (0)
4466
4467/* U3D_reg31 */
4468#define A60810_RG_SSUSB_CDR_FBDIV_PE2H_OFST (24)
4469#define A60810_RG_SSUSB_CDR_FBDIV_PE1D_OFST (16)
4470#define A60810_RG_SSUSB_CDR_FBDIV_PE1H_OFST (8)
4471#define A60810_RG_SSUSB_CDR_FBDIV_U3_OFST (0)
4472
4473/* U3D_reg32 */
4474#define A60810_RG_SSUSB_EQ_RSTEP1_PE2D_OFST (30)
4475#define A60810_RG_SSUSB_EQ_RSTEP1_PE2H_OFST (28)
4476#define A60810_RG_SSUSB_EQ_RSTEP1_PE1D_OFST (26)
4477#define A60810_RG_SSUSB_EQ_RSTEP1_PE1H_OFST (24)
4478#define A60810_RG_SSUSB_EQ_RSTEP1_U3_OFST (22)
4479#define A60810_RG_SSUSB_LFPS_DEGLITCH_PE2D_OFST (20)
4480#define A60810_RG_SSUSB_LFPS_DEGLITCH_PE2H_OFST (18)
4481#define A60810_RG_SSUSB_LFPS_DEGLITCH_PE1D_OFST (16)
4482#define A60810_RG_SSUSB_LFPS_DEGLITCH_PE1H_OFST (14)
4483#define A60810_RG_SSUSB_LFPS_DEGLITCH_U3_OFST (12)
4484#define A60810_RG_SSUSB_CDR_KVSEL_PE2D_OFST (11)
4485#define A60810_RG_SSUSB_CDR_KVSEL_PE2H_OFST (10)
4486#define A60810_RG_SSUSB_CDR_KVSEL_PE1D_OFST (9)
4487#define A60810_RG_SSUSB_CDR_KVSEL_PE1H_OFST (8)
4488#define A60810_RG_SSUSB_CDR_KVSEL_U3_OFST (7)
4489#define A60810_RG_SSUSB_CDR_FBDIV_PE2D_OFST (0)
4490
4491/* U3D_reg33 */
4492#define A60810_RG_SSUSB_RX_CMPWD_PE2D_OFST (26)
4493#define A60810_RG_SSUSB_RX_CMPWD_PE2H_OFST (25)
4494#define A60810_RG_SSUSB_RX_CMPWD_PE1D_OFST (24)
4495#define A60810_RG_SSUSB_RX_CMPWD_PE1H_OFST (23)
4496#define A60810_RG_SSUSB_RX_CMPWD_U3_OFST (16)
4497#define A60810_RG_SSUSB_EQ_RSTEP2_PE2D_OFST (8)
4498#define A60810_RG_SSUSB_EQ_RSTEP2_PE2H_OFST (6)
4499#define A60810_RG_SSUSB_EQ_RSTEP2_PE1D_OFST (4)
4500#define A60810_RG_SSUSB_EQ_RSTEP2_PE1H_OFST (2)
4501#define A60810_RG_SSUSB_EQ_RSTEP2_U3_OFST (0)
4502
4503///////////////////////////////////////////////////////////////////////////////
4504
4505struct a60810_u3phyd_reg_a {
4506 /* 0x0 */
4507 u32 phyd_mix0;
4508 u32 phyd_mix1;
4509 u32 phyd_lfps0;
4510 u32 phyd_lfps1;
4511 /* 0x10 */
4512 u32 phyd_impcal0;
4513 u32 phyd_impcal1;
4514 u32 phyd_txpll0;
4515 u32 phyd_txpll1;
4516 /* 0x20 */
4517 u32 phyd_txpll2;
4518 u32 phyd_fl0;
4519 u32 phyd_mix2;
4520 u32 phyd_rx0;
4521 /* 0x30 */
4522 u32 phyd_t2rlb;
4523 u32 phyd_cppat;
4524 u32 phyd_mix3;
4525 u32 phyd_ebufctl;
4526 /* 0x40 */
4527 u32 phyd_pipe0;
4528 u32 phyd_pipe1;
4529 u32 phyd_mix4;
4530 u32 phyd_ckgen0;
4531 /* 0x50 */
4532 u32 phyd_mix5;
4533 u32 phyd_reserved;
4534 u32 phyd_cdr0;
4535 u32 phyd_cdr1;
4536 /* 0x60 */
4537 u32 phyd_pll_0;
4538 u32 phyd_pll_1;
4539 u32 phyd_bcn_det_1;
4540 u32 phyd_bcn_det_2;
4541 /* 0x70 */
4542 u32 eq0;
4543 u32 eq1;
4544 u32 eq2;
4545 u32 eq3;
4546 /* 0x80 */
4547 u32 eq_eye0;
4548 u32 eq_eye1;
4549 u32 eq_eye2;
4550 u32 eq_dfe0;
4551 /* 0x90 */
4552 u32 eq_dfe1;
4553 u32 eq_dfe2;
4554 u32 eq_dfe3;
4555 u32 reserve0;
4556 /* 0xa0 */
4557 u32 phyd_mon0;
4558 u32 phyd_mon1;
4559 u32 phyd_mon2;
4560 u32 phyd_mon3;
4561 /* 0xb0 */
4562 u32 phyd_mon4;
4563 u32 phyd_mon5;
4564 u32 phyd_mon6;
4565 u32 phyd_mon7;
4566 /* 0xc0 */
4567 u32 phya_rx_mon0;
4568 u32 phya_rx_mon1;
4569 u32 phya_rx_mon2;
4570 u32 phya_rx_mon3;
4571 /* 0xd0 */
4572 u32 phya_rx_mon4;
4573 u32 phya_rx_mon5;
4574 u32 phyd_cppat2;
4575 u32 eq_eye3;
4576 /* 0xe0 */
4577 u32 kband_out;
4578 u32 kband_out1;
4579};
4580
4581/* U3D_PHYD_MIX0 */
4582#define A60810_RG_SSUSB_P_P3_TX_NG (0x1<<31) /* 31:31 */
4583#define A60810_RG_SSUSB_TSEQ_EN (0x1<<30) /* 30:30 */
4584#define A60810_RG_SSUSB_TSEQ_POLEN (0x1<<29) /* 29:29 */
4585#define A60810_RG_SSUSB_TSEQ_POL (0x1<<28) /* 28:28 */
4586#define A60810_RG_SSUSB_P_P3_PCLK_NG (0x1<<27) /* 27:27 */
4587#define A60810_RG_SSUSB_TSEQ_TH (0x7<<24) /* 26:24 */
4588#define A60810_RG_SSUSB_PRBS_BERTH (0xff<<16) /* 23:16 */
4589#define A60810_RG_SSUSB_DISABLE_PHY_U2_ON (0x1<<15) /* 15:15 */
4590#define A60810_RG_SSUSB_DISABLE_PHY_U2_OFF (0x1<<14) /* 14:14 */
4591#define A60810_RG_SSUSB_PRBS_EN (0x1<<13) /* 13:13 */
4592#define A60810_RG_SSUSB_BPSLOCK (0x1<<12) /* 12:12 */
4593#define A60810_RG_SSUSB_RTCOMCNT (0xf<<8) /* 11:8 */
4594#define A60810_RG_SSUSB_COMCNT (0xf<<4) /* 7:4 */
4595#define A60810_RG_SSUSB_PRBSEL_CALIB (0xf<<0) /* 3:0 */
4596
4597/* U3D_PHYD_MIX1 */
4598#define A60810_RG_SSUSB_SLEEP_EN (0x1<<31) /* 31:31 */
4599#define A60810_RG_SSUSB_PRBSEL_PCS (0x7<<28) /* 30:28 */
4600#define A60810_RG_SSUSB_TXLFPS_PRD (0xf<<24) /* 27:24 */
4601#define A60810_RG_SSUSB_P_RX_P0S_CK (0x1<<23) /* 23:23 */
4602#define A60810_RG_SSUSB_P_TX_P0S_CK (0x1<<22) /* 22:22 */
4603#define A60810_RG_SSUSB_PDNCTL (0x3f<<16) /* 21:16 */
4604#define A60810_RG_SSUSB_TX_DRV_EN (0x1<<15) /* 15:15 */
4605#define A60810_RG_SSUSB_TX_DRV_SEL (0x1<<14) /* 14:14 */
4606#define A60810_RG_SSUSB_TX_DRV_DLY (0x3f<<8) /* 13:8 */
4607#define A60810_RG_SSUSB_BERT_EN (0x1<<7) /* 7:7 */
4608#define A60810_RG_SSUSB_SCP_TH (0x7<<4) /* 6:4 */
4609#define A60810_RG_SSUSB_SCP_EN (0x1<<3) /* 3:3 */
4610#define A60810_RG_SSUSB_RXANSIDEC_TEST (0x7<<0) /* 2:0 */
4611
4612/* U3D_PHYD_LFPS0 */
4613#define A60810_RG_SSUSB_LFPS_PWD (0x1<<30) /* 30:30 */
4614#define A60810_RG_SSUSB_FORCE_LFPS_PWD (0x1<<29) /* 29:29 */
4615#define A60810_RG_SSUSB_RXLFPS_OVF (0x1f<<24) /* 28:24 */
4616#define A60810_RG_SSUSB_P3_ENTRY_SEL (0x1<<23) /* 23:23 */
4617#define A60810_RG_SSUSB_P3_ENTRY (0x1<<22) /* 22:22 */
4618#define A60810_RG_SSUSB_RXLFPS_CDRSEL (0x3<<20) /* 21:20 */
4619#define A60810_RG_SSUSB_RXLFPS_CDRTH (0xf<<16) /* 19:16 */
4620#define A60810_RG_SSUSB_LOCK5G_BLOCK (0x1<<15) /* 15:15 */
4621#define A60810_RG_SSUSB_TFIFO_EXT_D_SEL (0x1<<14) /* 14:14 */
4622#define A60810_RG_SSUSB_TFIFO_NO_EXTEND (0x1<<13) /* 13:13 */
4623#define A60810_RG_SSUSB_RXLFPS_LOB (0x1f<<8) /* 12:8 */
4624#define A60810_RG_SSUSB_TXLFPS_EN (0x1<<7) /* 7:7 */
4625#define A60810_RG_SSUSB_TXLFPS_SEL (0x1<<6) /* 6:6 */
4626#define A60810_RG_SSUSB_RXLFPS_CDRLOCK (0x1<<5) /* 5:5 */
4627#define A60810_RG_SSUSB_RXLFPS_UPB (0x1f<<0) /* 4:0 */
4628
4629/* U3D_PHYD_LFPS1 */
4630#define A60810_RG_SSUSB_RX_IMP_BIAS (0xf<<28) /* 31:28 */
4631#define A60810_RG_SSUSB_TX_IMP_BIAS (0xf<<24) /* 27:24 */
4632#define A60810_RG_SSUSB_FWAKE_TH (0x3f<<16) /* 21:16 */
4633#define A60810_RG_SSUSB_P1_ENTRY_SEL (0x1<<14) /* 14:14 */
4634#define A60810_RG_SSUSB_P1_ENTRY (0x1<<13) /* 13:13 */
4635#define A60810_RG_SSUSB_RXLFPS_UDF (0x1f<<8) /* 12:8 */
4636#define A60810_RG_SSUSB_RXLFPS_P0IDLETH (0xff<<0) /* 7:0 */
4637
4638/* U3D_PHYD_IMPCAL0 */
4639#define A60810_RG_SSUSB_FORCE_TX_IMPSEL (0x1<<31) /* 31:31 */
4640#define A60810_RG_SSUSB_TX_IMPCAL_EN (0x1<<30) /* 30:30 */
4641#define A60810_RG_SSUSB_FORCE_TX_IMPCAL_EN (0x1<<29) /* 29:29 */
4642#define A60810_RG_SSUSB_TX_IMPSEL (0x1f<<24) /* 28:24 */
4643#define A60810_RG_SSUSB_TX_IMPCAL_CALCYC (0x3f<<16) /* 21:16 */
4644#define A60810_RG_SSUSB_TX_IMPCAL_STBCYC (0x1f<<10) /* 14:10 */
4645#define A60810_RG_SSUSB_TX_IMPCAL_CYCCNT (0x3ff<<0) /* 9:0 */
4646
4647/* U3D_PHYD_IMPCAL1 */
4648#define A60810_RG_SSUSB_FORCE_RX_IMPSEL (0x1<<31) /* 31:31 */
4649#define A60810_RG_SSUSB_RX_IMPCAL_EN (0x1<<30) /* 30:30 */
4650#define A60810_RG_SSUSB_FORCE_RX_IMPCAL_EN (0x1<<29) /* 29:29 */
4651#define A60810_RG_SSUSB_RX_IMPSEL (0x1f<<24) /* 28:24 */
4652#define A60810_RG_SSUSB_RX_IMPCAL_CALCYC (0x3f<<16) /* 21:16 */
4653#define A60810_RG_SSUSB_RX_IMPCAL_STBCYC (0x1f<<10) /* 14:10 */
4654#define A60810_RG_SSUSB_RX_IMPCAL_CYCCNT (0x3ff<<0) /* 9:0 */
4655
4656/* U3D_PHYD_TXPLL0 */
4657#define A60810_RG_SSUSB_TXPLL_DDSEN_CYC (0x1f<<27) /* 31:27 */
4658#define A60810_RG_SSUSB_TXPLL_ON (0x1<<26) /* 26:26 */
4659#define A60810_RG_SSUSB_FORCE_TXPLLON (0x1<<25) /* 25:25 */
4660#define A60810_RG_SSUSB_TXPLL_STBCYC (0x1ff<<16) /* 24:16 */
4661#define A60810_RG_SSUSB_TXPLL_NCPOCHG_CYC (0xf<<12) /* 15:12 */
4662#define A60810_RG_SSUSB_TXPLL_NCPOEN_CYC (0x3<<10) /* 11:10 */
4663#define A60810_RG_SSUSB_TXPLL_DDSRSTB_CYC (0x7<<0) /* 2:0 */
4664
4665/* U3D_PHYD_TXPLL1 */
4666#define A60810_RG_SSUSB_PLL_NCPO_EN (0x1<<31) /* 31:31 */
4667#define A60810_RG_SSUSB_PLL_FIFO_START_MAN (0x1<<30) /* 30:30 */
4668#define A60810_RG_SSUSB_PLL_NCPO_CHG (0x1<<28) /* 28:28 */
4669#define A60810_RG_SSUSB_PLL_DDS_RSTB (0x1<<27) /* 27:27 */
4670#define A60810_RG_SSUSB_PLL_DDS_PWDB (0x1<<26) /* 26:26 */
4671#define A60810_RG_SSUSB_PLL_DDSEN (0x1<<25) /* 25:25 */
4672#define A60810_RG_SSUSB_PLL_AUTOK_VCO (0x1<<24) /* 24:24 */
4673#define A60810_RG_SSUSB_PLL_PWD (0x1<<23) /* 23:23 */
4674#define A60810_RG_SSUSB_RX_AFE_PWD (0x1<<22) /* 22:22 */
4675#define A60810_RG_SSUSB_PLL_TCADJ (0x3f<<16) /* 21:16 */
4676#define A60810_RG_SSUSB_FORCE_CDR_TCADJ (0x1<<15) /* 15:15 */
4677#define A60810_RG_SSUSB_FORCE_CDR_AUTOK_VCO (0x1<<14) /* 14:14 */
4678#define A60810_RG_SSUSB_FORCE_CDR_PWD (0x1<<13) /* 13:13 */
4679#define A60810_RG_SSUSB_FORCE_PLL_NCPO_EN (0x1<<12) /* 12:12 */
4680#define A60810_RG_SSUSB_FORCE_PLL_FIFO_START_MAN (0x1<<11) /* 11:11 */
4681#define A60810_RG_SSUSB_FORCE_PLL_NCPO_CHG (0x1<<9) /* 9:9 */
4682#define A60810_RG_SSUSB_FORCE_PLL_DDS_RSTB (0x1<<8) /* 8:8 */
4683#define A60810_RG_SSUSB_FORCE_PLL_DDS_PWDB (0x1<<7) /* 7:7 */
4684#define A60810_RG_SSUSB_FORCE_PLL_DDSEN (0x1<<6) /* 6:6 */
4685#define A60810_RG_SSUSB_FORCE_PLL_TCADJ (0x1<<5) /* 5:5 */
4686#define A60810_RG_SSUSB_FORCE_PLL_AUTOK_VCO (0x1<<4) /* 4:4 */
4687#define A60810_RG_SSUSB_FORCE_PLL_PWD (0x1<<3) /* 3:3 */
4688#define A60810_RG_SSUSB_FLT_1_DISPERR_B (0x1<<2) /* 2:2 */
4689
4690/* U3D_PHYD_TXPLL2 */
4691#define A60810_RG_SSUSB_TX_LFPS_EN (0x1<<31) /* 31:31 */
4692#define A60810_RG_SSUSB_FORCE_TX_LFPS_EN (0x1<<30) /* 30:30 */
4693#define A60810_RG_SSUSB_TX_LFPS (0x1<<29) /* 29:29 */
4694#define A60810_RG_SSUSB_FORCE_TX_LFPS (0x1<<28) /* 28:28 */
4695#define A60810_RG_SSUSB_RXPLL_STB (0x1<<27) /* 27:27 */
4696#define A60810_RG_SSUSB_TXPLL_STB (0x1<<26) /* 26:26 */
4697#define A60810_RG_SSUSB_FORCE_RXPLL_STB (0x1<<25) /* 25:25 */
4698#define A60810_RG_SSUSB_FORCE_TXPLL_STB (0x1<<24) /* 24:24 */
4699#define A60810_RG_SSUSB_RXPLL_REFCKSEL (0x1<<16) /* 16:16 */
4700#define A60810_RG_SSUSB_RXPLL_STBMODE (0x1<<11) /* 11:11 */
4701#define A60810_RG_SSUSB_RXPLL_ON (0x1<<10) /* 10:10 */
4702#define A60810_RG_SSUSB_FORCE_RXPLLON (0x1<<9) /* 9:9 */
4703#define A60810_RG_SSUSB_FORCE_RX_AFE_PWD (0x1<<8) /* 8:8 */
4704#define A60810_RG_SSUSB_CDR_AUTOK_VCO (0x1<<7) /* 7:7 */
4705#define A60810_RG_SSUSB_CDR_PWD (0x1<<6) /* 6:6 */
4706#define A60810_RG_SSUSB_CDR_TCADJ (0x3f<<0) /* 5:0 */
4707
4708/* U3D_PHYD_FL0 */
4709#define A60810_RG_SSUSB_RX_FL_TARGET (0xffff<<16) /* 31:16 */
4710#define A60810_RG_SSUSB_RX_FL_CYCLECNT (0xffff<<0) /* 15:0 */
4711
4712/* U3D_PHYD_MIX2 */
4713#define A60810_RG_SSUSB_RX_EQ_RST (0x1<<31) /* 31:31 */
4714#define A60810_RG_SSUSB_RX_EQ_RST_SEL (0x1<<30) /* 30:30 */
4715#define A60810_RG_SSUSB_RXVAL_RST (0x1<<29) /* 29:29 */
4716#define A60810_RG_SSUSB_RXVAL_CNT (0x1f<<24) /* 28:24 */
4717#define A60810_RG_SSUSB_CDROS_EN (0x1<<18) /* 18:18 */
4718#define A60810_RG_SSUSB_CDR_LCKOP (0x3<<16) /* 17:16 */
4719#define A60810_RG_SSUSB_RX_FL_LOCKTH (0xf<<8) /* 11:8 */
4720#define A60810_RG_SSUSB_RX_FL_OFFSET (0xff<<0) /* 7:0 */
4721
4722/* U3D_PHYD_RX0 */
4723#define A60810_RG_SSUSB_T2RLB_BERTH (0xff<<24) /* 31:24 */
4724#define A60810_RG_SSUSB_T2RLB_PAT (0xff<<16) /* 23:16 */
4725#define A60810_RG_SSUSB_T2RLB_EN (0x1<<15) /* 15:15 */
4726#define A60810_RG_SSUSB_T2RLB_BPSCRAMB (0x1<<14) /* 14:14 */
4727#define A60810_RG_SSUSB_T2RLB_SERIAL (0x1<<13) /* 13:13 */
4728#define A60810_RG_SSUSB_T2RLB_MODE (0x3<<11) /* 12:11 */
4729#define A60810_RG_SSUSB_RX_SAOSC_EN (0x1<<10) /* 10:10 */
4730#define A60810_RG_SSUSB_RX_SAOSC_EN_SEL (0x1<<9) /* 9:9 */
4731#define A60810_RG_SSUSB_RX_DFE_OPTION (0x1<<8) /* 8:8 */
4732#define A60810_RG_SSUSB_RX_DFE_EN (0x1<<7) /* 7:7 */
4733#define A60810_RG_SSUSB_RX_DFE_EN_SEL (0x1<<6) /* 6:6 */
4734#define A60810_RG_SSUSB_RX_EQ_EN (0x1<<5) /* 5:5 */
4735#define A60810_RG_SSUSB_RX_EQ_EN_SEL (0x1<<4) /* 4:4 */
4736#define A60810_RG_SSUSB_RX_SAOSC_RST (0x1<<3) /* 3:3 */
4737#define A60810_RG_SSUSB_RX_SAOSC_RST_SEL (0x1<<2) /* 2:2 */
4738#define A60810_RG_SSUSB_RX_DFE_RST (0x1<<1) /* 1:1 */
4739#define A60810_RG_SSUSB_RX_DFE_RST_SEL (0x1<<0) /* 0:0 */
4740
4741/* U3D_PHYD_T2RLB */
4742#define A60810_RG_SSUSB_EQTRAIN_CH_MODE (0x1<<28) /* 28:28 */
4743#define A60810_RG_SSUSB_PRB_OUT_CPPAT (0x1<<27) /* 27:27 */
4744#define A60810_RG_SSUSB_BPANSIENC (0x1<<26) /* 26:26 */
4745#define A60810_RG_SSUSB_VALID_EN (0x1<<25) /* 25:25 */
4746#define A60810_RG_SSUSB_EBUF_SRST (0x1<<24) /* 24:24 */
4747#define A60810_RG_SSUSB_K_EMP (0xf<<20) /* 23:20 */
4748#define A60810_RG_SSUSB_K_FUL (0xf<<16) /* 19:16 */
4749#define A60810_RG_SSUSB_T2RLB_BDATRST (0xf<<12) /* 15:12 */
4750#define A60810_RG_SSUSB_P_T2RLB_SKP_EN (0x1<<10) /* 10:10 */
4751#define A60810_RG_SSUSB_T2RLB_PATMODE (0x3<<8) /* 9:8 */
4752#define A60810_RG_SSUSB_T2RLB_TSEQCNT (0xff<<0) /* 7:0 */
4753
4754/* U3D_PHYD_CPPAT */
4755#define A60810_RG_SSUSB_CPPAT_PROGRAM_EN (0x1<<24) /* 24:24 */
4756#define A60810_RG_SSUSB_CPPAT_TOZ (0x3<<21) /* 22:21 */
4757#define A60810_RG_SSUSB_CPPAT_PRBS_EN (0x1<<20) /* 20:20 */
4758#define A60810_RG_SSUSB_CPPAT_OUT_TMP2 (0xf<<16) /* 19:16 */
4759#define A60810_RG_SSUSB_CPPAT_OUT_TMP1 (0xff<<8) /* 15:8 */
4760#define A60810_RG_SSUSB_CPPAT_OUT_TMP0 (0xff<<0) /* 7:0 */
4761
4762/* U3D_PHYD_MIX3 */
4763#define A60810_RG_SSUSB_CDR_TCADJ_MINUS (0x1<<31) /* 31:31 */
4764#define A60810_RG_SSUSB_P_CDROS_EN (0x1<<30) /* 30:30 */
4765#define A60810_RG_SSUSB_P_P2_TX_DRV_DIS (0x1<<28) /* 28:28 */
4766#define A60810_RG_SSUSB_CDR_TCADJ_OFFSET (0x7<<24) /* 26:24 */
4767#define A60810_RG_SSUSB_PLL_TCADJ_MINUS (0x1<<23) /* 23:23 */
4768#define A60810_RG_SSUSB_FORCE_PLL_BIAS_LPF_EN (0x1<<20) /* 20:20 */
4769#define A60810_RG_SSUSB_PLL_BIAS_LPF_EN (0x1<<19) /* 19:19 */
4770#define A60810_RG_SSUSB_PLL_TCADJ_OFFSET (0x7<<16) /* 18:16 */
4771#define A60810_RG_SSUSB_FORCE_PLL_SSCEN (0x1<<15) /* 15:15 */
4772#define A60810_RG_SSUSB_PLL_SSCEN (0x1<<14) /* 14:14 */
4773#define A60810_RG_SSUSB_FORCE_CDR_PI_PWD (0x1<<13) /* 13:13 */
4774#define A60810_RG_SSUSB_CDR_PI_PWD (0x1<<12) /* 12:12 */
4775#define A60810_RG_SSUSB_CDR_PI_MODE (0x1<<11) /* 11:11 */
4776#define A60810_RG_SSUSB_TXPLL_SSCEN_CYC (0x3ff<<0) /* 9:0 */
4777
4778/* U3D_PHYD_EBUFCTL */
4779#define A60810_RG_SSUSB_EBUFCTL (0xffffffff<<0) /* 31:0 */
4780
4781/* U3D_PHYD_PIPE0 */
4782#define A60810_RG_SSUSB_RXTERMINATION (0x1<<30) /* 30:30 */
4783#define A60810_RG_SSUSB_RXEQTRAINING (0x1<<29) /* 29:29 */
4784#define A60810_RG_SSUSB_RXPOLARITY (0x1<<28) /* 28:28 */
4785#define A60810_RG_SSUSB_TXDEEMPH (0x3<<26) /* 27:26 */
4786#define A60810_RG_SSUSB_POWERDOWN (0x3<<24) /* 25:24 */
4787#define A60810_RG_SSUSB_TXONESZEROS (0x1<<23) /* 23:23 */
4788#define A60810_RG_SSUSB_TXELECIDLE (0x1<<22) /* 22:22 */
4789#define A60810_RG_SSUSB_TXDETECTRX (0x1<<21) /* 21:21 */
4790#define A60810_RG_SSUSB_PIPE_SEL (0x1<<20) /* 20:20 */
4791#define A60810_RG_SSUSB_TXDATAK (0xf<<16) /* 19:16 */
4792#define A60810_RG_SSUSB_CDR_STABLE_SEL (0x1<<15) /* 15:15 */
4793#define A60810_RG_SSUSB_CDR_STABLE (0x1<<14) /* 14:14 */
4794#define A60810_RG_SSUSB_CDR_RSTB_SEL (0x1<<13) /* 13:13 */
4795#define A60810_RG_SSUSB_CDR_RSTB (0x1<<12) /* 12:12 */
4796#define A60810_RG_SSUSB_FRC_PIPE_POWERDOWN (0x1<<11) /* 11:11 */
4797#define A60810_RG_SSUSB_P_TXBCN_DIS (0x1<<6) /* 6:6 */
4798#define A60810_RG_SSUSB_P_ERROR_SEL (0x3<<4) /* 5:4 */
4799#define A60810_RG_SSUSB_TXMARGIN (0x7<<1) /* 3:1 */
4800#define A60810_RG_SSUSB_TXCOMPLIANCE (0x1<<0) /* 0:0 */
4801
4802/* U3D_PHYD_PIPE1 */
4803#define A60810_RG_SSUSB_TXDATA (0xffffffff<<0) /* 31:0 */
4804
4805/* U3D_PHYD_MIX4 */
4806#define A60810_RG_SSUSB_CDROS_CNT (0x3f<<24) /* 29:24 */
4807#define A60810_RG_SSUSB_T2RLB_BER_EN (0x1<<16) /* 16:16 */
4808#define A60810_RG_SSUSB_T2RLB_BER_RATE (0xffff<<0) /* 15:0 */
4809
4810/* U3D_PHYD_CKGEN0 */
4811#define A60810_RG_SSUSB_RFIFO_IMPLAT (0x1<<27) /* 27:27 */
4812#define A60810_RG_SSUSB_TFIFO_PSEL (0x7<<24) /* 26:24 */
4813#define A60810_RG_SSUSB_CKGEN_PSEL (0x3<<8) /* 9:8 */
4814#define A60810_RG_SSUSB_RXCK_INV (0x1<<0) /* 0:0 */
4815
4816/* U3D_PHYD_MIX5 */
4817#define A60810_RG_SSUSB_PRB_SEL (0xffff<<16) /* 31:16 */
4818#define A60810_RG_SSUSB_RXPLL_STBCYC (0x7ff<<0) /* 10:0 */
4819
4820/* U3D_PHYD_RESERVED */
4821#define A60810_RG_SSUSB_PHYD_RESERVE (0xffffffff<<0) /* 31:0 */
4822
4823/* U3D_PHYD_CDR0 */
4824#define A60810_RG_SSUSB_CDR_BIC_LTR (0xf<<28) /* 31:28 */
4825#define A60810_RG_SSUSB_CDR_BIC_LTD0 (0xf<<24) /* 27:24 */
4826#define A60810_RG_SSUSB_CDR_BC_LTD1 (0x1f<<16) /* 20:16 */
4827#define A60810_RG_SSUSB_CDR_BC_LTR (0x1f<<8) /* 12:8 */
4828#define A60810_RG_SSUSB_CDR_BC_LTD0 (0x1f<<0) /* 4:0 */
4829
4830/* U3D_PHYD_CDR1 */
4831#define A60810_RG_SSUSB_CDR_BIR_LTD1 (0x1f<<24) /* 28:24 */
4832#define A60810_RG_SSUSB_CDR_BIR_LTR (0x1f<<16) /* 20:16 */
4833#define A60810_RG_SSUSB_CDR_BIR_LTD0 (0x1f<<8) /* 12:8 */
4834#define A60810_RG_SSUSB_CDR_BW_SEL (0x3<<6) /* 7:6 */
4835#define A60810_RG_SSUSB_CDR_BIC_LTD1 (0xf<<0) /* 3:0 */
4836
4837/* U3D_PHYD_PLL_0 */
4838#define A60810_RG_SSUSB_FORCE_CDR_BAND_5G (0x1<<28) /* 28:28 */
4839#define A60810_RG_SSUSB_FORCE_CDR_BAND_2P5G (0x1<<27) /* 27:27 */
4840#define A60810_RG_SSUSB_FORCE_PLL_BAND_5G (0x1<<26) /* 26:26 */
4841#define A60810_RG_SSUSB_FORCE_PLL_BAND_2P5G (0x1<<25) /* 25:25 */
4842#define A60810_RG_SSUSB_P_EQ_T_SEL (0x3ff<<15) /* 24:15 */
4843#define A60810_RG_SSUSB_PLL_ISO_EN_CYC (0x3ff<<5) /* 14:5 */
4844#define A60810_RG_SSUSB_PLLBAND_RECAL (0x1<<4) /* 4:4 */
4845#define A60810_RG_SSUSB_PLL_DDS_ISO_EN (0x1<<3) /* 3:3 */
4846#define A60810_RG_SSUSB_FORCE_PLL_DDS_ISO_EN (0x1<<2) /* 2:2 */
4847#define A60810_RG_SSUSB_PLL_DDS_PWR_ON (0x1<<1) /* 1:1 */
4848#define A60810_RG_SSUSB_FORCE_PLL_DDS_PWR_ON (0x1<<0) /* 0:0 */
4849
4850/* U3D_PHYD_PLL_1 */
4851#define A60810_RG_SSUSB_CDR_BAND_5G (0xff<<24) /* 31:24 */
4852#define A60810_RG_SSUSB_CDR_BAND_2P5G (0xff<<16) /* 23:16 */
4853#define A60810_RG_SSUSB_PLL_BAND_5G (0xff<<8) /* 15:8 */
4854#define A60810_RG_SSUSB_PLL_BAND_2P5G (0xff<<0) /* 7:0 */
4855
4856/* U3D_PHYD_BCN_DET_1 */
4857#define A60810_RG_SSUSB_P_BCN_OBS_PRD (0xffff<<16) /* 31:16 */
4858#define A60810_RG_SSUSB_U_BCN_OBS_PRD (0xffff<<0) /* 15:0 */
4859
4860/* U3D_PHYD_BCN_DET_2 */
4861#define A60810_RG_SSUSB_P_BCN_OBS_SEL (0xfff<<16) /* 27:16 */
4862#define A60810_RG_SSUSB_BCN_DET_DIS (0x1<<12) /* 12:12 */
4863#define A60810_RG_SSUSB_U_BCN_OBS_SEL (0xfff<<0) /* 11:0 */
4864
4865/* U3D_EQ0 */
4866#define A60810_RG_SSUSB_EQ_DLHL_LFI (0x7f<<24) /* 30:24 */
4867#define A60810_RG_SSUSB_EQ_DHHL_LFI (0x7f<<16) /* 22:16 */
4868#define A60810_RG_SSUSB_EQ_DD0HOS_LFI (0x7f<<8) /* 14:8 */
4869#define A60810_RG_SSUSB_EQ_DD0LOS_LFI (0x7f<<0) /* 6:0 */
4870
4871/* U3D_EQ1 */
4872#define A60810_RG_SSUSB_EQ_DD1HOS_LFI (0x7f<<24) /* 30:24 */
4873#define A60810_RG_SSUSB_EQ_DD1LOS_LFI (0x7f<<16) /* 22:16 */
4874#define A60810_RG_SSUSB_EQ_DE0OS_LFI (0x7f<<8) /* 14:8 */
4875#define A60810_RG_SSUSB_EQ_DE1OS_LFI (0x7f<<0) /* 6:0 */
4876
4877/* U3D_EQ2 */
4878#define A60810_RG_SSUSB_EQ_DLHLOS_LFI (0x7f<<24) /* 30:24 */
4879#define A60810_RG_SSUSB_EQ_DHHLOS_LFI (0x7f<<16) /* 22:16 */
4880#define A60810_RG_SSUSB_EQ_STOPTIME (0x1<<14) /* 14:14 */
4881#define A60810_RG_SSUSB_EQ_DHHL_LF_SEL (0x7<<11) /* 13:11 */
4882#define A60810_RG_SSUSB_EQ_DSAOS_LF_SEL (0x7<<8) /* 10:8 */
4883#define A60810_RG_SSUSB_EQ_STARTTIME (0x3<<6) /* 7:6 */
4884#define A60810_RG_SSUSB_EQ_DLEQ_LF_SEL (0x7<<3) /* 5:3 */
4885#define A60810_RG_SSUSB_EQ_DLHL_LF_SEL (0x7<<0) /* 2:0 */
4886
4887/* U3D_EQ3 */
4888#define A60810_RG_SSUSB_EQ_DLEQ_LFI_GEN2 (0xf<<28) /* 31:28 */
4889#define A60810_RG_SSUSB_EQ_DLEQ_LFI_GEN1 (0xf<<24) /* 27:24 */
4890#define A60810_RG_SSUSB_EQ_DEYE0OS_LFI (0x7f<<16) /* 22:16 */
4891#define A60810_RG_SSUSB_EQ_DEYE1OS_LFI (0x7f<<8) /* 14:8 */
4892#define A60810_RG_SSUSB_EQ_TRI_DET_EN (0x1<<7) /* 7:7 */
4893#define A60810_RG_SSUSB_EQ_TRI_DET_TH (0x7f<<0) /* 6:0 */
4894
4895/* U3D_EQ_EYE0 */
4896#define A60810_RG_SSUSB_EQ_EYE_XOFFSET (0x7f<<25) /* 31:25 */
4897#define A60810_RG_SSUSB_EQ_EYE_MON_EN (0x1<<24) /* 24:24 */
4898#define A60810_RG_SSUSB_EQ_EYE0_Y (0x7f<<16) /* 22:16 */
4899#define A60810_RG_SSUSB_EQ_EYE1_Y (0x7f<<8) /* 14:8 */
4900#define A60810_RG_SSUSB_EQ_PILPO_ROUT (0x1<<7) /* 7:7 */
4901#define A60810_RG_SSUSB_EQ_PI_KPGAIN (0x7<<4) /* 6:4 */
4902#define A60810_RG_SSUSB_EQ_EYE_CNT_EN (0x1<<3) /* 3:3 */
4903
4904/* U3D_EQ_EYE1 */
4905#define A60810_RG_SSUSB_EQ_SIGDET (0x7f<<24) /* 30:24 */
4906#define A60810_RG_SSUSB_EQ_EYE_MASK (0x3ff<<7) /* 16:7 */
4907
4908/* U3D_EQ_EYE2 */
4909#define A60810_RG_SSUSB_EQ_RX500M_CK_SEL (0x1<<31) /* 31:31 */
4910#define A60810_RG_SSUSB_EQ_SD_CNT1 (0x3f<<24) /* 29:24 */
4911#define A60810_RG_SSUSB_EQ_ISIFLAG_SEL (0x3<<22) /* 23:22 */
4912#define A60810_RG_SSUSB_EQ_SD_CNT0 (0x3f<<16) /* 21:16 */
4913
4914/* U3D_EQ_DFE0 */
4915#define A60810_RG_SSUSB_EQ_LEQMAX (0xf<<28) /* 31:28 */
4916#define A60810_RG_SSUSB_EQ_DFEX_EN (0x1<<27) /* 27:27 */
4917#define A60810_RG_SSUSB_EQ_DFEX_LF_SEL (0x7<<24) /* 26:24 */
4918#define A60810_RG_SSUSB_EQ_CHK_EYE_H (0x1<<23) /* 23:23 */
4919#define A60810_RG_SSUSB_EQ_PIEYE_INI (0x7f<<16) /* 22:16 */
4920#define A60810_RG_SSUSB_EQ_PI90_INI (0x7f<<8) /* 14:8 */
4921#define A60810_RG_SSUSB_EQ_PI0_INI (0x7f<<0) /* 6:0 */
4922
4923/* U3D_EQ_DFE1 */
4924#define A60810_RG_SSUSB_EQ_REV (0xffff<<16) /* 31:16 */
4925#define A60810_RG_SSUSB_EQ_DFEYEN_DUR (0x7<<12) /* 14:12 */
4926#define A60810_RG_SSUSB_EQ_DFEXEN_DUR (0x7<<8) /* 10:8 */
4927#define A60810_RG_SSUSB_EQ_DFEX_RST (0x1<<7) /* 7:7 */
4928#define A60810_RG_SSUSB_EQ_GATED_RXD_B (0x1<<6) /* 6:6 */
4929#define A60810_RG_SSUSB_EQ_PI90CK_SEL (0x3<<4) /* 5:4 */
4930#define A60810_RG_SSUSB_EQ_DFEX_DIS (0x1<<2) /* 2:2 */
4931#define A60810_RG_SSUSB_EQ_DFEYEN_STOP_DIS (0x1<<1) /* 1:1 */
4932#define A60810_RG_SSUSB_EQ_DFEXEN_SEL (0x1<<0) /* 0:0 */
4933
4934/* U3D_EQ_DFE2 */
4935#define A60810_RG_SSUSB_EQ_MON_SEL (0x1f<<24) /* 28:24 */
4936#define A60810_RG_SSUSB_EQ_LEQOSC_DLYCNT (0x7<<16) /* 18:16 */
4937#define A60810_RG_SSUSB_EQ_DLEQOS_LFI (0x1f<<8) /* 12:8 */
4938#define A60810_RG_SSUSB_EQ_DFE_TOG (0x1<<2) /* 2:2 */
4939#define A60810_RG_SSUSB_EQ_LEQ_STOP_TO (0x3<<0) /* 1:0 */
4940
4941/* U3D_EQ_DFE3 */
4942#define A60810_RG_SSUSB_EQ_RESERVED (0xffffffff<<0) /* 31:0 */
4943
4944/* U3D_PHYD_MON0 */
4945#define A60810_RGS_SSUSB_BERT_BERC (0xffff<<16) /* 31:16 */
4946#define A60810_RGS_SSUSB_LFPS (0xf<<12) /* 15:12 */
4947#define A60810_RGS_SSUSB_TRAINDEC (0x7<<8) /* 10:8 */
4948#define A60810_RGS_SSUSB_SCP_PAT (0xff<<0) /* 7:0 */
4949
4950/* U3D_PHYD_MON1 */
4951#define A60810_RGS_SSUSB_RX_FL_OUT (0xffff<<0) /* 15:0 */
4952
4953/* U3D_PHYD_MON2 */
4954#define A60810_RGS_SSUSB_T2RLB_ERRCNT (0xffff<<16) /* 31:16 */
4955#define A60810_RGS_SSUSB_RETRACK (0xf<<12) /* 15:12 */
4956#define A60810_RGS_SSUSB_RXPLL_LOCK (0x1<<10) /* 10:10 */
4957#define A60810_RGS_SSUSB_CDR_VCOCAL_CPLT_D (0x1<<9) /* 9:9 */
4958#define A60810_RGS_SSUSB_PLL_VCOCAL_CPLT_D (0x1<<8) /* 8:8 */
4959#define A60810_RGS_SSUSB_PDNCTL (0xff<<0) /* 7:0 */
4960
4961/* U3D_PHYD_MON3 */
4962#define A60810_RGS_SSUSB_TSEQ_ERRCNT (0xffff<<16) /* 31:16 */
4963#define A60810_RGS_SSUSB_PRBS_ERRCNT (0xffff<<0) /* 15:0 */
4964
4965/* U3D_PHYD_MON4 */
4966#define A60810_RGS_SSUSB_RX_LSLOCK_CNT (0xf<<24) /* 27:24 */
4967#define A60810_RGS_SSUSB_SCP_DETCNT (0xff<<16) /* 23:16 */
4968#define A60810_RGS_SSUSB_TSEQ_DETCNT (0xffff<<0) /* 15:0 */
4969
4970/* U3D_PHYD_MON5 */
4971#define A60810_RGS_SSUSB_EBUFMSG (0xffff<<16) /* 31:16 */
4972#define A60810_RGS_SSUSB_BERT_LOCK (0x1<<15) /* 15:15 */
4973#define A60810_RGS_SSUSB_SCP_DET (0x1<<14) /* 14:14 */
4974#define A60810_RGS_SSUSB_TSEQ_DET (0x1<<13) /* 13:13 */
4975#define A60810_RGS_SSUSB_EBUF_UDF (0x1<<12) /* 12:12 */
4976#define A60810_RGS_SSUSB_EBUF_OVF (0x1<<11) /* 11:11 */
4977#define A60810_RGS_SSUSB_PRBS_PASSTH (0x1<<10) /* 10:10 */
4978#define A60810_RGS_SSUSB_PRBS_PASS (0x1<<9) /* 9:9 */
4979#define A60810_RGS_SSUSB_PRBS_LOCK (0x1<<8) /* 8:8 */
4980#define A60810_RGS_SSUSB_T2RLB_ERR (0x1<<6) /* 6:6 */
4981#define A60810_RGS_SSUSB_T2RLB_PASSTH (0x1<<5) /* 5:5 */
4982#define A60810_RGS_SSUSB_T2RLB_PASS (0x1<<4) /* 4:4 */
4983#define A60810_RGS_SSUSB_T2RLB_LOCK (0x1<<3) /* 3:3 */
4984#define A60810_RGS_SSUSB_RX_IMPCAL_DONE (0x1<<2) /* 2:2 */
4985#define A60810_RGS_SSUSB_TX_IMPCAL_DONE (0x1<<1) /* 1:1 */
4986#define A60810_RGS_SSUSB_RXDETECTED (0x1<<0) /* 0:0 */
4987
4988/* U3D_PHYD_MON6 */
4989#define A60810_RGS_SSUSB_SIGCAL_DONE (0x1<<30) /* 30:30 */
4990#define A60810_RGS_SSUSB_SIGCAL_CAL_OUT (0x1<<29) /* 29:29 */
4991#define A60810_RGS_SSUSB_SIGCAL_OFFSET (0x1f<<24) /* 28:24 */
4992#define A60810_RGS_SSUSB_RX_IMP_SEL (0x1f<<16) /* 20:16 */
4993#define A60810_RGS_SSUSB_TX_IMP_SEL (0x1f<<8) /* 12:8 */
4994#define A60810_RGS_SSUSB_TFIFO_MSG (0xf<<4) /* 7:4 */
4995#define A60810_RGS_SSUSB_RFIFO_MSG (0xf<<0) /* 3:0 */
4996
4997/* U3D_PHYD_MON7 */
4998#define A60810_RGS_SSUSB_FT_OUT (0xff<<8) /* 15:8 */
4999#define A60810_RGS_SSUSB_PRB_OUT (0xff<<0) /* 7:0 */
5000
5001/* U3D_PHYA_RX_MON0 */
5002#define A60810_RGS_SSUSB_EQ_DCLEQ (0xf<<24) /* 27:24 */
5003#define A60810_RGS_SSUSB_EQ_DCD0H (0x7f<<16) /* 22:16 */
5004#define A60810_RGS_SSUSB_EQ_DCD0L (0x7f<<8) /* 14:8 */
5005#define A60810_RGS_SSUSB_EQ_DCD1H (0x7f<<0) /* 6:0 */
5006
5007/* U3D_PHYA_RX_MON1 */
5008#define A60810_RGS_SSUSB_EQ_DCD1L (0x7f<<24) /* 30:24 */
5009#define A60810_RGS_SSUSB_EQ_DCE0 (0x7f<<16) /* 22:16 */
5010#define A60810_RGS_SSUSB_EQ_DCE1 (0x7f<<8) /* 14:8 */
5011#define A60810_RGS_SSUSB_EQ_DCHHL (0x7f<<0) /* 6:0 */
5012
5013/* U3D_PHYA_RX_MON2 */
5014#define A60810_RGS_SSUSB_EQ_LEQ_STOP (0x1<<31) /* 31:31 */
5015#define A60810_RGS_SSUSB_EQ_DCLHL (0x7f<<24) /* 30:24 */
5016#define A60810_RGS_SSUSB_EQ_STATUS (0xff<<16) /* 23:16 */
5017#define A60810_RGS_SSUSB_EQ_DCEYE0 (0x7f<<8) /* 14:8 */
5018#define A60810_RGS_SSUSB_EQ_DCEYE1 (0x7f<<0) /* 6:0 */
5019
5020/* U3D_PHYA_RX_MON3 */
5021#define A60810_RGS_SSUSB_EQ_EYE_MONITOR_ERRCNT_0 (0xfffff<<0) /* 19:0 */
5022
5023/* U3D_PHYA_RX_MON4 */
5024#define A60810_RGS_SSUSB_EQ_EYE_MONITOR_ERRCNT_1 (0xfffff<<0) /* 19:0 */
5025
5026/* U3D_PHYA_RX_MON5 */
5027#define A60810_RGS_SSUSB_EQ_DCLEQOS (0x1f<<8) /* 12:8 */
5028#define A60810_RGS_SSUSB_EQ_EYE_CNT_RDY (0x1<<7) /* 7:7 */
5029#define A60810_RGS_SSUSB_EQ_PILPO (0x7f<<0) /* 6:0 */
5030
5031/* U3D_PHYD_CPPAT2 */
5032#define A60810_RG_SSUSB_CPPAT_OUT_H_TMP2 (0xf<<16) /* 19:16 */
5033#define A60810_RG_SSUSB_CPPAT_OUT_H_TMP1 (0xff<<8) /* 15:8 */
5034#define A60810_RG_SSUSB_CPPAT_OUT_H_TMP0 (0xff<<0) /* 7:0 */
5035
5036/* U3D_EQ_EYE3 */
5037#define A60810_RG_SSUSB_EQ_LEQ_SHIFT (0x7<<24) /* 26:24 */
5038#define A60810_RG_SSUSB_EQ_EYE_CNT (0xfffff<<0) /* 19:0 */
5039
5040/* U3D_KBAND_OUT */
5041#define A60810_RGS_SSUSB_CDR_BAND_5G (0xff<<24) /* 31:24 */
5042#define A60810_RGS_SSUSB_CDR_BAND_2P5G (0xff<<16) /* 23:16 */
5043#define A60810_RGS_SSUSB_PLL_BAND_5G (0xff<<8) /* 15:8 */
5044#define A60810_RGS_SSUSB_PLL_BAND_2P5G (0xff<<0) /* 7:0 */
5045
5046/* U3D_KBAND_OUT1 */
5047#define A60810_RGS_SSUSB_CDR_VCOCAL_FAIL (0x1<<24) /* 24:24 */
5048#define A60810_RGS_SSUSB_CDR_VCOCAL_STATE (0xff<<16) /* 23:16 */
5049#define A60810_RGS_SSUSB_PLL_VCOCAL_FAIL (0x1<<8) /* 8:8 */
5050#define A60810_RGS_SSUSB_PLL_VCOCAL_STATE (0xff<<0) /* 7:0 */
5051
5052/* OFFSET */
5053
5054/* U3D_PHYD_MIX0 */
5055#define A60810_RG_SSUSB_P_P3_TX_NG_OFST (31)
5056#define A60810_RG_SSUSB_TSEQ_EN_OFST (30)
5057#define A60810_RG_SSUSB_TSEQ_POLEN_OFST (29)
5058#define A60810_RG_SSUSB_TSEQ_POL_OFST (28)
5059#define A60810_RG_SSUSB_P_P3_PCLK_NG_OFST (27)
5060#define A60810_RG_SSUSB_TSEQ_TH_OFST (24)
5061#define A60810_RG_SSUSB_PRBS_BERTH_OFST (16)
5062#define A60810_RG_SSUSB_DISABLE_PHY_U2_ON_OFST (15)
5063#define A60810_RG_SSUSB_DISABLE_PHY_U2_OFF_OFST (14)
5064#define A60810_RG_SSUSB_PRBS_EN_OFST (13)
5065#define A60810_RG_SSUSB_BPSLOCK_OFST (12)
5066#define A60810_RG_SSUSB_RTCOMCNT_OFST (8)
5067#define A60810_RG_SSUSB_COMCNT_OFST (4)
5068#define A60810_RG_SSUSB_PRBSEL_CALIB_OFST (0)
5069
5070/* U3D_PHYD_MIX1 */
5071#define A60810_RG_SSUSB_SLEEP_EN_OFST (31)
5072#define A60810_RG_SSUSB_PRBSEL_PCS_OFST (28)
5073#define A60810_RG_SSUSB_TXLFPS_PRD_OFST (24)
5074#define A60810_RG_SSUSB_P_RX_P0S_CK_OFST (23)
5075#define A60810_RG_SSUSB_P_TX_P0S_CK_OFST (22)
5076#define A60810_RG_SSUSB_PDNCTL_OFST (16)
5077#define A60810_RG_SSUSB_TX_DRV_EN_OFST (15)
5078#define A60810_RG_SSUSB_TX_DRV_SEL_OFST (14)
5079#define A60810_RG_SSUSB_TX_DRV_DLY_OFST (8)
5080#define A60810_RG_SSUSB_BERT_EN_OFST (7)
5081#define A60810_RG_SSUSB_SCP_TH_OFST (4)
5082#define A60810_RG_SSUSB_SCP_EN_OFST (3)
5083#define A60810_RG_SSUSB_RXANSIDEC_TEST_OFST (0)
5084
5085/* U3D_PHYD_LFPS0 */
5086#define A60810_RG_SSUSB_LFPS_PWD_OFST (30)
5087#define A60810_RG_SSUSB_FORCE_LFPS_PWD_OFST (29)
5088#define A60810_RG_SSUSB_RXLFPS_OVF_OFST (24)
5089#define A60810_RG_SSUSB_P3_ENTRY_SEL_OFST (23)
5090#define A60810_RG_SSUSB_P3_ENTRY_OFST (22)
5091#define A60810_RG_SSUSB_RXLFPS_CDRSEL_OFST (20)
5092#define A60810_RG_SSUSB_RXLFPS_CDRTH_OFST (16)
5093#define A60810_RG_SSUSB_LOCK5G_BLOCK_OFST (15)
5094#define A60810_RG_SSUSB_TFIFO_EXT_D_SEL_OFST (14)
5095#define A60810_RG_SSUSB_TFIFO_NO_EXTEND_OFST (13)
5096#define A60810_RG_SSUSB_RXLFPS_LOB_OFST (8)
5097#define A60810_RG_SSUSB_TXLFPS_EN_OFST (7)
5098#define A60810_RG_SSUSB_TXLFPS_SEL_OFST (6)
5099#define A60810_RG_SSUSB_RXLFPS_CDRLOCK_OFST (5)
5100#define A60810_RG_SSUSB_RXLFPS_UPB_OFST (0)
5101
5102/* U3D_PHYD_LFPS1 */
5103#define A60810_RG_SSUSB_RX_IMP_BIAS_OFST (28)
5104#define A60810_RG_SSUSB_TX_IMP_BIAS_OFST (24)
5105#define A60810_RG_SSUSB_FWAKE_TH_OFST (16)
5106#define A60810_RG_SSUSB_P1_ENTRY_SEL_OFST (14)
5107#define A60810_RG_SSUSB_P1_ENTRY_OFST (13)
5108#define A60810_RG_SSUSB_RXLFPS_UDF_OFST (8)
5109#define A60810_RG_SSUSB_RXLFPS_P0IDLETH_OFST (0)
5110
5111/* U3D_PHYD_IMPCAL0 */
5112#define A60810_RG_SSUSB_FORCE_TX_IMPSEL_OFST (31)
5113#define A60810_RG_SSUSB_TX_IMPCAL_EN_OFST (30)
5114#define A60810_RG_SSUSB_FORCE_TX_IMPCAL_EN_OFST (29)
5115#define A60810_RG_SSUSB_TX_IMPSEL_OFST (24)
5116#define A60810_RG_SSUSB_TX_IMPCAL_CALCYC_OFST (16)
5117#define A60810_RG_SSUSB_TX_IMPCAL_STBCYC_OFST (10)
5118#define A60810_RG_SSUSB_TX_IMPCAL_CYCCNT_OFST (0)
5119
5120/* U3D_PHYD_IMPCAL1 */
5121#define A60810_RG_SSUSB_FORCE_RX_IMPSEL_OFST (31)
5122#define A60810_RG_SSUSB_RX_IMPCAL_EN_OFST (30)
5123#define A60810_RG_SSUSB_FORCE_RX_IMPCAL_EN_OFST (29)
5124#define A60810_RG_SSUSB_RX_IMPSEL_OFST (24)
5125#define A60810_RG_SSUSB_RX_IMPCAL_CALCYC_OFST (16)
5126#define A60810_RG_SSUSB_RX_IMPCAL_STBCYC_OFST (10)
5127#define A60810_RG_SSUSB_RX_IMPCAL_CYCCNT_OFST (0)
5128
5129/* U3D_PHYD_TXPLL0 */
5130#define A60810_RG_SSUSB_TXPLL_DDSEN_CYC_OFST (27)
5131#define A60810_RG_SSUSB_TXPLL_ON_OFST (26)
5132#define A60810_RG_SSUSB_FORCE_TXPLLON_OFST (25)
5133#define A60810_RG_SSUSB_TXPLL_STBCYC_OFST (16)
5134#define A60810_RG_SSUSB_TXPLL_NCPOCHG_CYC_OFST (12)
5135#define A60810_RG_SSUSB_TXPLL_NCPOEN_CYC_OFST (10)
5136#define A60810_RG_SSUSB_TXPLL_DDSRSTB_CYC_OFST (0)
5137
5138/* U3D_PHYD_TXPLL1 */
5139#define A60810_RG_SSUSB_PLL_NCPO_EN_OFST (31)
5140#define A60810_RG_SSUSB_PLL_FIFO_START_MAN_OFST (30)
5141#define A60810_RG_SSUSB_PLL_NCPO_CHG_OFST (28)
5142#define A60810_RG_SSUSB_PLL_DDS_RSTB_OFST (27)
5143#define A60810_RG_SSUSB_PLL_DDS_PWDB_OFST (26)
5144#define A60810_RG_SSUSB_PLL_DDSEN_OFST (25)
5145#define A60810_RG_SSUSB_PLL_AUTOK_VCO_OFST (24)
5146#define A60810_RG_SSUSB_PLL_PWD_OFST (23)
5147#define A60810_RG_SSUSB_RX_AFE_PWD_OFST (22)
5148#define A60810_RG_SSUSB_PLL_TCADJ_OFST (16)
5149#define A60810_RG_SSUSB_FORCE_CDR_TCADJ_OFST (15)
5150#define A60810_RG_SSUSB_FORCE_CDR_AUTOK_VCO_OFST (14)
5151#define A60810_RG_SSUSB_FORCE_CDR_PWD_OFST (13)
5152#define A60810_RG_SSUSB_FORCE_PLL_NCPO_EN_OFST (12)
5153#define A60810_RG_SSUSB_FORCE_PLL_FIFO_START_MAN_OFST (11)
5154#define A60810_RG_SSUSB_FORCE_PLL_NCPO_CHG_OFST (9)
5155#define A60810_RG_SSUSB_FORCE_PLL_DDS_RSTB_OFST (8)
5156#define A60810_RG_SSUSB_FORCE_PLL_DDS_PWDB_OFST (7)
5157#define A60810_RG_SSUSB_FORCE_PLL_DDSEN_OFST (6)
5158#define A60810_RG_SSUSB_FORCE_PLL_TCADJ_OFST (5)
5159#define A60810_RG_SSUSB_FORCE_PLL_AUTOK_VCO_OFST (4)
5160#define A60810_RG_SSUSB_FORCE_PLL_PWD_OFST (3)
5161#define A60810_RG_SSUSB_FLT_1_DISPERR_B_OFST (2)
5162
5163/* U3D_PHYD_TXPLL2 */
5164#define A60810_RG_SSUSB_TX_LFPS_EN_OFST (31)
5165#define A60810_RG_SSUSB_FORCE_TX_LFPS_EN_OFST (30)
5166#define A60810_RG_SSUSB_TX_LFPS_OFST (29)
5167#define A60810_RG_SSUSB_FORCE_TX_LFPS_OFST (28)
5168#define A60810_RG_SSUSB_RXPLL_STB_OFST (27)
5169#define A60810_RG_SSUSB_TXPLL_STB_OFST (26)
5170#define A60810_RG_SSUSB_FORCE_RXPLL_STB_OFST (25)
5171#define A60810_RG_SSUSB_FORCE_TXPLL_STB_OFST (24)
5172#define A60810_RG_SSUSB_RXPLL_REFCKSEL_OFST (16)
5173#define A60810_RG_SSUSB_RXPLL_STBMODE_OFST (11)
5174#define A60810_RG_SSUSB_RXPLL_ON_OFST (10)
5175#define A60810_RG_SSUSB_FORCE_RXPLLON_OFST (9)
5176#define A60810_RG_SSUSB_FORCE_RX_AFE_PWD_OFST (8)
5177#define A60810_RG_SSUSB_CDR_AUTOK_VCO_OFST (7)
5178#define A60810_RG_SSUSB_CDR_PWD_OFST (6)
5179#define A60810_RG_SSUSB_CDR_TCADJ_OFST (0)
5180
5181/* U3D_PHYD_FL0 */
5182#define A60810_RG_SSUSB_RX_FL_TARGET_OFST (16)
5183#define A60810_RG_SSUSB_RX_FL_CYCLECNT_OFST (0)
5184
5185/* U3D_PHYD_MIX2 */
5186#define A60810_RG_SSUSB_RX_EQ_RST_OFST (31)
5187#define A60810_RG_SSUSB_RX_EQ_RST_SEL_OFST (30)
5188#define A60810_RG_SSUSB_RXVAL_RST_OFST (29)
5189#define A60810_RG_SSUSB_RXVAL_CNT_OFST (24)
5190#define A60810_RG_SSUSB_CDROS_EN_OFST (18)
5191#define A60810_RG_SSUSB_CDR_LCKOP_OFST (16)
5192#define A60810_RG_SSUSB_RX_FL_LOCKTH_OFST (8)
5193#define A60810_RG_SSUSB_RX_FL_OFFSET_OFST (0)
5194
5195/* U3D_PHYD_RX0 */
5196#define A60810_RG_SSUSB_T2RLB_BERTH_OFST (24)
5197#define A60810_RG_SSUSB_T2RLB_PAT_OFST (16)
5198#define A60810_RG_SSUSB_T2RLB_EN_OFST (15)
5199#define A60810_RG_SSUSB_T2RLB_BPSCRAMB_OFST (14)
5200#define A60810_RG_SSUSB_T2RLB_SERIAL_OFST (13)
5201#define A60810_RG_SSUSB_T2RLB_MODE_OFST (11)
5202#define A60810_RG_SSUSB_RX_SAOSC_EN_OFST (10)
5203#define A60810_RG_SSUSB_RX_SAOSC_EN_SEL_OFST (9)
5204#define A60810_RG_SSUSB_RX_DFE_OPTION_OFST (8)
5205#define A60810_RG_SSUSB_RX_DFE_EN_OFST (7)
5206#define A60810_RG_SSUSB_RX_DFE_EN_SEL_OFST (6)
5207#define A60810_RG_SSUSB_RX_EQ_EN_OFST (5)
5208#define A60810_RG_SSUSB_RX_EQ_EN_SEL_OFST (4)
5209#define A60810_RG_SSUSB_RX_SAOSC_RST_OFST (3)
5210#define A60810_RG_SSUSB_RX_SAOSC_RST_SEL_OFST (2)
5211#define A60810_RG_SSUSB_RX_DFE_RST_OFST (1)
5212#define A60810_RG_SSUSB_RX_DFE_RST_SEL_OFST (0)
5213
5214/* U3D_PHYD_T2RLB */
5215#define A60810_RG_SSUSB_EQTRAIN_CH_MODE_OFST (28)
5216#define A60810_RG_SSUSB_PRB_OUT_CPPAT_OFST (27)
5217#define A60810_RG_SSUSB_BPANSIENC_OFST (26)
5218#define A60810_RG_SSUSB_VALID_EN_OFST (25)
5219#define A60810_RG_SSUSB_EBUF_SRST_OFST (24)
5220#define A60810_RG_SSUSB_K_EMP_OFST (20)
5221#define A60810_RG_SSUSB_K_FUL_OFST (16)
5222#define A60810_RG_SSUSB_T2RLB_BDATRST_OFST (12)
5223#define A60810_RG_SSUSB_P_T2RLB_SKP_EN_OFST (10)
5224#define A60810_RG_SSUSB_T2RLB_PATMODE_OFST (8)
5225#define A60810_RG_SSUSB_T2RLB_TSEQCNT_OFST (0)
5226
5227/* U3D_PHYD_CPPAT */
5228#define A60810_RG_SSUSB_CPPAT_PROGRAM_EN_OFST (24)
5229#define A60810_RG_SSUSB_CPPAT_TOZ_OFST (21)
5230#define A60810_RG_SSUSB_CPPAT_PRBS_EN_OFST (20)
5231#define A60810_RG_SSUSB_CPPAT_OUT_TMP2_OFST (16)
5232#define A60810_RG_SSUSB_CPPAT_OUT_TMP1_OFST (8)
5233#define A60810_RG_SSUSB_CPPAT_OUT_TMP0_OFST (0)
5234
5235/* U3D_PHYD_MIX3 */
5236#define A60810_RG_SSUSB_CDR_TCADJ_MINUS_OFST (31)
5237#define A60810_RG_SSUSB_P_CDROS_EN_OFST (30)
5238#define A60810_RG_SSUSB_P_P2_TX_DRV_DIS_OFST (28)
5239#define A60810_RG_SSUSB_CDR_TCADJ_OFFSET_OFST (24)
5240#define A60810_RG_SSUSB_PLL_TCADJ_MINUS_OFST (23)
5241#define A60810_RG_SSUSB_FORCE_PLL_BIAS_LPF_EN_OFST (20)
5242#define A60810_RG_SSUSB_PLL_BIAS_LPF_EN_OFST (19)
5243#define A60810_RG_SSUSB_PLL_TCADJ_OFFSET_OFST (16)
5244#define A60810_RG_SSUSB_FORCE_PLL_SSCEN_OFST (15)
5245#define A60810_RG_SSUSB_PLL_SSCEN_OFST (14)
5246#define A60810_RG_SSUSB_FORCE_CDR_PI_PWD_OFST (13)
5247#define A60810_RG_SSUSB_CDR_PI_PWD_OFST (12)
5248#define A60810_RG_SSUSB_CDR_PI_MODE_OFST (11)
5249#define A60810_RG_SSUSB_TXPLL_SSCEN_CYC_OFST (0)
5250
5251/* U3D_PHYD_EBUFCTL */
5252#define A60810_RG_SSUSB_EBUFCTL_OFST (0)
5253
5254/* U3D_PHYD_PIPE0 */
5255#define A60810_RG_SSUSB_RXTERMINATION_OFST (30)
5256#define A60810_RG_SSUSB_RXEQTRAINING_OFST (29)
5257#define A60810_RG_SSUSB_RXPOLARITY_OFST (28)
5258#define A60810_RG_SSUSB_TXDEEMPH_OFST (26)
5259#define A60810_RG_SSUSB_POWERDOWN_OFST (24)
5260#define A60810_RG_SSUSB_TXONESZEROS_OFST (23)
5261#define A60810_RG_SSUSB_TXELECIDLE_OFST (22)
5262#define A60810_RG_SSUSB_TXDETECTRX_OFST (21)
5263#define A60810_RG_SSUSB_PIPE_SEL_OFST (20)
5264#define A60810_RG_SSUSB_TXDATAK_OFST (16)
5265#define A60810_RG_SSUSB_CDR_STABLE_SEL_OFST (15)
5266#define A60810_RG_SSUSB_CDR_STABLE_OFST (14)
5267#define A60810_RG_SSUSB_CDR_RSTB_SEL_OFST (13)
5268#define A60810_RG_SSUSB_CDR_RSTB_OFST (12)
5269#define A60810_RG_SSUSB_FRC_PIPE_POWERDOWN_OFST (11)
5270#define A60810_RG_SSUSB_P_TXBCN_DIS_OFST (6)
5271#define A60810_RG_SSUSB_P_ERROR_SEL_OFST (4)
5272#define A60810_RG_SSUSB_TXMARGIN_OFST (1)
5273#define A60810_RG_SSUSB_TXCOMPLIANCE_OFST (0)
5274
5275/* U3D_PHYD_PIPE1 */
5276#define A60810_RG_SSUSB_TXDATA_OFST (0)
5277
5278/* U3D_PHYD_MIX4 */
5279#define A60810_RG_SSUSB_CDROS_CNT_OFST (24)
5280#define A60810_RG_SSUSB_T2RLB_BER_EN_OFST (16)
5281#define A60810_RG_SSUSB_T2RLB_BER_RATE_OFST (0)
5282
5283/* U3D_PHYD_CKGEN0 */
5284#define A60810_RG_SSUSB_RFIFO_IMPLAT_OFST (27)
5285#define A60810_RG_SSUSB_TFIFO_PSEL_OFST (24)
5286#define A60810_RG_SSUSB_CKGEN_PSEL_OFST (8)
5287#define A60810_RG_SSUSB_RXCK_INV_OFST (0)
5288
5289/* U3D_PHYD_MIX5 */
5290#define A60810_RG_SSUSB_PRB_SEL_OFST (16)
5291#define A60810_RG_SSUSB_RXPLL_STBCYC_OFST (0)
5292
5293/* U3D_PHYD_RESERVED */
5294#define A60810_RG_SSUSB_PHYD_RESERVE_OFST (0)
5295
5296/* U3D_PHYD_CDR0 */
5297#define A60810_RG_SSUSB_CDR_BIC_LTR_OFST (28)
5298#define A60810_RG_SSUSB_CDR_BIC_LTD0_OFST (24)
5299#define A60810_RG_SSUSB_CDR_BC_LTD1_OFST (16)
5300#define A60810_RG_SSUSB_CDR_BC_LTR_OFST (8)
5301#define A60810_RG_SSUSB_CDR_BC_LTD0_OFST (0)
5302
5303/* U3D_PHYD_CDR1 */
5304#define A60810_RG_SSUSB_CDR_BIR_LTD1_OFST (24)
5305#define A60810_RG_SSUSB_CDR_BIR_LTR_OFST (16)
5306#define A60810_RG_SSUSB_CDR_BIR_LTD0_OFST (8)
5307#define A60810_RG_SSUSB_CDR_BW_SEL_OFST (6)
5308#define A60810_RG_SSUSB_CDR_BIC_LTD1_OFST (0)
5309
5310/* U3D_PHYD_PLL_0 */
5311#define A60810_RG_SSUSB_FORCE_CDR_BAND_5G_OFST (28)
5312#define A60810_RG_SSUSB_FORCE_CDR_BAND_2P5G_OFST (27)
5313#define A60810_RG_SSUSB_FORCE_PLL_BAND_5G_OFST (26)
5314#define A60810_RG_SSUSB_FORCE_PLL_BAND_2P5G_OFST (25)
5315#define A60810_RG_SSUSB_P_EQ_T_SEL_OFST (15)
5316#define A60810_RG_SSUSB_PLL_ISO_EN_CYC_OFST (5)
5317#define A60810_RG_SSUSB_PLLBAND_RECAL_OFST (4)
5318#define A60810_RG_SSUSB_PLL_DDS_ISO_EN_OFST (3)
5319#define A60810_RG_SSUSB_FORCE_PLL_DDS_ISO_EN_OFST (2)
5320#define A60810_RG_SSUSB_PLL_DDS_PWR_ON_OFST (1)
5321#define A60810_RG_SSUSB_FORCE_PLL_DDS_PWR_ON_OFST (0)
5322
5323/* U3D_PHYD_PLL_1 */
5324#define A60810_RG_SSUSB_CDR_BAND_5G_OFST (24)
5325#define A60810_RG_SSUSB_CDR_BAND_2P5G_OFST (16)
5326#define A60810_RG_SSUSB_PLL_BAND_5G_OFST (8)
5327#define A60810_RG_SSUSB_PLL_BAND_2P5G_OFST (0)
5328
5329/* U3D_PHYD_BCN_DET_1 */
5330#define A60810_RG_SSUSB_P_BCN_OBS_PRD_OFST (16)
5331#define A60810_RG_SSUSB_U_BCN_OBS_PRD_OFST (0)
5332
5333/* U3D_PHYD_BCN_DET_2 */
5334#define A60810_RG_SSUSB_P_BCN_OBS_SEL_OFST (16)
5335#define A60810_RG_SSUSB_BCN_DET_DIS_OFST (12)
5336#define A60810_RG_SSUSB_U_BCN_OBS_SEL_OFST (0)
5337
5338/* U3D_EQ0 */
5339#define A60810_RG_SSUSB_EQ_DLHL_LFI_OFST (24)
5340#define A60810_RG_SSUSB_EQ_DHHL_LFI_OFST (16)
5341#define A60810_RG_SSUSB_EQ_DD0HOS_LFI_OFST (8)
5342#define A60810_RG_SSUSB_EQ_DD0LOS_LFI_OFST (0)
5343
5344/* U3D_EQ1 */
5345#define A60810_RG_SSUSB_EQ_DD1HOS_LFI_OFST (24)
5346#define A60810_RG_SSUSB_EQ_DD1LOS_LFI_OFST (16)
5347#define A60810_RG_SSUSB_EQ_DE0OS_LFI_OFST (8)
5348#define A60810_RG_SSUSB_EQ_DE1OS_LFI_OFST (0)
5349
5350/* U3D_EQ2 */
5351#define A60810_RG_SSUSB_EQ_DLHLOS_LFI_OFST (24)
5352#define A60810_RG_SSUSB_EQ_DHHLOS_LFI_OFST (16)
5353#define A60810_RG_SSUSB_EQ_STOPTIME_OFST (14)
5354#define A60810_RG_SSUSB_EQ_DHHL_LF_SEL_OFST (11)
5355#define A60810_RG_SSUSB_EQ_DSAOS_LF_SEL_OFST (8)
5356#define A60810_RG_SSUSB_EQ_STARTTIME_OFST (6)
5357#define A60810_RG_SSUSB_EQ_DLEQ_LF_SEL_OFST (3)
5358#define A60810_RG_SSUSB_EQ_DLHL_LF_SEL_OFST (0)
5359
5360/* U3D_EQ3 */
5361#define A60810_RG_SSUSB_EQ_DLEQ_LFI_GEN2_OFST (28)
5362#define A60810_RG_SSUSB_EQ_DLEQ_LFI_GEN1_OFST (24)
5363#define A60810_RG_SSUSB_EQ_DEYE0OS_LFI_OFST (16)
5364#define A60810_RG_SSUSB_EQ_DEYE1OS_LFI_OFST (8)
5365#define A60810_RG_SSUSB_EQ_TRI_DET_EN_OFST (7)
5366#define A60810_RG_SSUSB_EQ_TRI_DET_TH_OFST (0)
5367
5368/* U3D_EQ_EYE0 */
5369#define A60810_RG_SSUSB_EQ_EYE_XOFFSET_OFST (25)
5370#define A60810_RG_SSUSB_EQ_EYE_MON_EN_OFST (24)
5371#define A60810_RG_SSUSB_EQ_EYE0_Y_OFST (16)
5372#define A60810_RG_SSUSB_EQ_EYE1_Y_OFST (8)
5373#define A60810_RG_SSUSB_EQ_PILPO_ROUT_OFST (7)
5374#define A60810_RG_SSUSB_EQ_PI_KPGAIN_OFST (4)
5375#define A60810_RG_SSUSB_EQ_EYE_CNT_EN_OFST (3)
5376
5377/* U3D_EQ_EYE1 */
5378#define A60810_RG_SSUSB_EQ_SIGDET_OFST (24)
5379#define A60810_RG_SSUSB_EQ_EYE_MASK_OFST (7)
5380
5381/* U3D_EQ_EYE2 */
5382#define A60810_RG_SSUSB_EQ_RX500M_CK_SEL_OFST (31)
5383#define A60810_RG_SSUSB_EQ_SD_CNT1_OFST (24)
5384#define A60810_RG_SSUSB_EQ_ISIFLAG_SEL_OFST (22)
5385#define A60810_RG_SSUSB_EQ_SD_CNT0_OFST (16)
5386
5387/* U3D_EQ_DFE0 */
5388#define A60810_RG_SSUSB_EQ_LEQMAX_OFST (28)
5389#define A60810_RG_SSUSB_EQ_DFEX_EN_OFST (27)
5390#define A60810_RG_SSUSB_EQ_DFEX_LF_SEL_OFST (24)
5391#define A60810_RG_SSUSB_EQ_CHK_EYE_H_OFST (23)
5392#define A60810_RG_SSUSB_EQ_PIEYE_INI_OFST (16)
5393#define A60810_RG_SSUSB_EQ_PI90_INI_OFST (8)
5394#define A60810_RG_SSUSB_EQ_PI0_INI_OFST (0)
5395
5396/* U3D_EQ_DFE1 */
5397#define A60810_RG_SSUSB_EQ_REV_OFST (16)
5398#define A60810_RG_SSUSB_EQ_DFEYEN_DUR_OFST (12)
5399#define A60810_RG_SSUSB_EQ_DFEXEN_DUR_OFST (8)
5400#define A60810_RG_SSUSB_EQ_DFEX_RST_OFST (7)
5401#define A60810_RG_SSUSB_EQ_GATED_RXD_B_OFST (6)
5402#define A60810_RG_SSUSB_EQ_PI90CK_SEL_OFST (4)
5403#define A60810_RG_SSUSB_EQ_DFEX_DIS_OFST (2)
5404#define A60810_RG_SSUSB_EQ_DFEYEN_STOP_DIS_OFST (1)
5405#define A60810_RG_SSUSB_EQ_DFEXEN_SEL_OFST (0)
5406
5407/* U3D_EQ_DFE2 */
5408#define A60810_RG_SSUSB_EQ_MON_SEL_OFST (24)
5409#define A60810_RG_SSUSB_EQ_LEQOSC_DLYCNT_OFST (16)
5410#define A60810_RG_SSUSB_EQ_DLEQOS_LFI_OFST (8)
5411#define A60810_RG_SSUSB_EQ_DFE_TOG_OFST (2)
5412#define A60810_RG_SSUSB_EQ_LEQ_STOP_TO_OFST (0)
5413
5414/* U3D_EQ_DFE3 */
5415#define A60810_RG_SSUSB_EQ_RESERVED_OFST (0)
5416
5417/* U3D_PHYD_MON0 */
5418#define A60810_RGS_SSUSB_BERT_BERC_OFST (16)
5419#define A60810_RGS_SSUSB_LFPS_OFST (12)
5420#define A60810_RGS_SSUSB_TRAINDEC_OFST (8)
5421#define A60810_RGS_SSUSB_SCP_PAT_OFST (0)
5422
5423/* U3D_PHYD_MON1 */
5424#define A60810_RGS_SSUSB_RX_FL_OUT_OFST (0)
5425
5426/* U3D_PHYD_MON2 */
5427#define A60810_RGS_SSUSB_T2RLB_ERRCNT_OFST (16)
5428#define A60810_RGS_SSUSB_RETRACK_OFST (12)
5429#define A60810_RGS_SSUSB_RXPLL_LOCK_OFST (10)
5430#define A60810_RGS_SSUSB_CDR_VCOCAL_CPLT_D_OFST (9)
5431#define A60810_RGS_SSUSB_PLL_VCOCAL_CPLT_D_OFST (8)
5432#define A60810_RGS_SSUSB_PDNCTL_OFST (0)
5433
5434/* U3D_PHYD_MON3 */
5435#define A60810_RGS_SSUSB_TSEQ_ERRCNT_OFST (16)
5436#define A60810_RGS_SSUSB_PRBS_ERRCNT_OFST (0)
5437
5438/* U3D_PHYD_MON4 */
5439#define A60810_RGS_SSUSB_RX_LSLOCK_CNT_OFST (24)
5440#define A60810_RGS_SSUSB_SCP_DETCNT_OFST (16)
5441#define A60810_RGS_SSUSB_TSEQ_DETCNT_OFST (0)
5442
5443/* U3D_PHYD_MON5 */
5444#define A60810_RGS_SSUSB_EBUFMSG_OFST (16)
5445#define A60810_RGS_SSUSB_BERT_LOCK_OFST (15)
5446#define A60810_RGS_SSUSB_SCP_DET_OFST (14)
5447#define A60810_RGS_SSUSB_TSEQ_DET_OFST (13)
5448#define A60810_RGS_SSUSB_EBUF_UDF_OFST (12)
5449#define A60810_RGS_SSUSB_EBUF_OVF_OFST (11)
5450#define A60810_RGS_SSUSB_PRBS_PASSTH_OFST (10)
5451#define A60810_RGS_SSUSB_PRBS_PASS_OFST (9)
5452#define A60810_RGS_SSUSB_PRBS_LOCK_OFST (8)
5453#define A60810_RGS_SSUSB_T2RLB_ERR_OFST (6)
5454#define A60810_RGS_SSUSB_T2RLB_PASSTH_OFST (5)
5455#define A60810_RGS_SSUSB_T2RLB_PASS_OFST (4)
5456#define A60810_RGS_SSUSB_T2RLB_LOCK_OFST (3)
5457#define A60810_RGS_SSUSB_RX_IMPCAL_DONE_OFST (2)
5458#define A60810_RGS_SSUSB_TX_IMPCAL_DONE_OFST (1)
5459#define A60810_RGS_SSUSB_RXDETECTED_OFST (0)
5460
5461/* U3D_PHYD_MON6 */
5462#define A60810_RGS_SSUSB_SIGCAL_DONE_OFST (30)
5463#define A60810_RGS_SSUSB_SIGCAL_CAL_OUT_OFST (29)
5464#define A60810_RGS_SSUSB_SIGCAL_OFFSET_OFST (24)
5465#define A60810_RGS_SSUSB_RX_IMP_SEL_OFST (16)
5466#define A60810_RGS_SSUSB_TX_IMP_SEL_OFST (8)
5467#define A60810_RGS_SSUSB_TFIFO_MSG_OFST (4)
5468#define A60810_RGS_SSUSB_RFIFO_MSG_OFST (0)
5469
5470/* U3D_PHYD_MON7 */
5471#define A60810_RGS_SSUSB_FT_OUT_OFST (8)
5472#define A60810_RGS_SSUSB_PRB_OUT_OFST (0)
5473
5474/* U3D_PHYA_RX_MON0 */
5475#define A60810_RGS_SSUSB_EQ_DCLEQ_OFST (24)
5476#define A60810_RGS_SSUSB_EQ_DCD0H_OFST (16)
5477#define A60810_RGS_SSUSB_EQ_DCD0L_OFST (8)
5478#define A60810_RGS_SSUSB_EQ_DCD1H_OFST (0)
5479
5480/* U3D_PHYA_RX_MON1 */
5481#define A60810_RGS_SSUSB_EQ_DCD1L_OFST (24)
5482#define A60810_RGS_SSUSB_EQ_DCE0_OFST (16)
5483#define A60810_RGS_SSUSB_EQ_DCE1_OFST (8)
5484#define A60810_RGS_SSUSB_EQ_DCHHL_OFST (0)
5485
5486/* U3D_PHYA_RX_MON2 */
5487#define A60810_RGS_SSUSB_EQ_LEQ_STOP_OFST (31)
5488#define A60810_RGS_SSUSB_EQ_DCLHL_OFST (24)
5489#define A60810_RGS_SSUSB_EQ_STATUS_OFST (16)
5490#define A60810_RGS_SSUSB_EQ_DCEYE0_OFST (8)
5491#define A60810_RGS_SSUSB_EQ_DCEYE1_OFST (0)
5492
5493/* U3D_PHYA_RX_MON3 */
5494#define A60810_RGS_SSUSB_EQ_EYE_MONITOR_ERRCNT_0_OFST (0)
5495
5496/* U3D_PHYA_RX_MON4 */
5497#define A60810_RGS_SSUSB_EQ_EYE_MONITOR_ERRCNT_1_OFST (0)
5498
5499/* U3D_PHYA_RX_MON5 */
5500#define A60810_RGS_SSUSB_EQ_DCLEQOS_OFST (8)
5501#define A60810_RGS_SSUSB_EQ_EYE_CNT_RDY_OFST (7)
5502#define A60810_RGS_SSUSB_EQ_PILPO_OFST (0)
5503
5504/* U3D_PHYD_CPPAT2 */
5505#define A60810_RG_SSUSB_CPPAT_OUT_H_TMP2_OFST (16)
5506#define A60810_RG_SSUSB_CPPAT_OUT_H_TMP1_OFST (8)
5507#define A60810_RG_SSUSB_CPPAT_OUT_H_TMP0_OFST (0)
5508
5509/* U3D_EQ_EYE3 */
5510#define A60810_RG_SSUSB_EQ_LEQ_SHIFT_OFST (24)
5511#define A60810_RG_SSUSB_EQ_EYE_CNT_OFST (0)
5512
5513/* U3D_KBAND_OUT */
5514#define A60810_RGS_SSUSB_CDR_BAND_5G_OFST (24)
5515#define A60810_RGS_SSUSB_CDR_BAND_2P5G_OFST (16)
5516#define A60810_RGS_SSUSB_PLL_BAND_5G_OFST (8)
5517#define A60810_RGS_SSUSB_PLL_BAND_2P5G_OFST (0)
5518
5519/* U3D_KBAND_OUT1 */
5520#define A60810_RGS_SSUSB_CDR_VCOCAL_FAIL_OFST (24)
5521#define A60810_RGS_SSUSB_CDR_VCOCAL_STATE_OFST (16)
5522#define A60810_RGS_SSUSB_PLL_VCOCAL_FAIL_OFST (8)
5523#define A60810_RGS_SSUSB_PLL_VCOCAL_STATE_OFST (0)
5524
5525///////////////////////////////////////////////////////////////////////////////
5526
5527struct a60810_u3phyd_bank2_reg_a {
5528 /* 0x0 */
5529 u32 b2_phyd_top1;
5530 u32 b2_phyd_top2;
5531 u32 b2_phyd_top3;
5532 u32 b2_phyd_top4;
5533 /* 0x10 */
5534 u32 b2_phyd_top5;
5535 u32 b2_phyd_top6;
5536 u32 b2_phyd_top7;
5537 u32 b2_phyd_p_sigdet1;
5538 /* 0x20 */
5539 u32 b2_phyd_p_sigdet2;
5540 u32 b2_phyd_p_sigdet_cal1;
5541 u32 b2_phyd_rxdet1;
5542 u32 b2_phyd_rxdet2;
5543 /* 0x30 */
5544 u32 b2_phyd_misc0;
5545 u32 b2_phyd_misc2;
5546 u32 b2_phyd_misc3;
5547 u32 b2_phyd_l1ss;
5548 /* 0x40 */
5549 u32 b2_rosc_0;
5550 u32 b2_rosc_1;
5551 u32 b2_rosc_2;
5552 u32 b2_rosc_3;
5553 /* 0x50 */
5554 u32 b2_rosc_4;
5555 u32 b2_rosc_5;
5556 u32 b2_rosc_6;
5557 u32 b2_rosc_7;
5558 /* 0x60 */
5559 u32 b2_rosc_8;
5560 u32 b2_rosc_9;
5561 u32 b2_rosc_a;
5562 u32 reserve1;
5563 /* 0x70~0xd0 */
5564 u32 reserve2[28];
5565 /* 0xe0 */
5566 u32 phyd_version;
5567 u32 phyd_model;
5568};
5569
5570/* U3D_B2_PHYD_TOP1 */
5571#define A60810_RG_SSUSB_PCIE2_K_EMP (0xf<<28) /* 31:28 */
5572#define A60810_RG_SSUSB_PCIE2_K_FUL (0xf<<24) /* 27:24 */
5573#define A60810_RG_SSUSB_TX_EIDLE_LP_EN (0x1<<17) /* 17:17 */
5574#define A60810_RG_SSUSB_FORCE_TX_EIDLE_LP_EN (0x1<<16) /* 16:16 */
5575#define A60810_RG_SSUSB_SIGDET_EN (0x1<<15) /* 15:15 */
5576#define A60810_RG_SSUSB_FORCE_SIGDET_EN (0x1<<14) /* 14:14 */
5577#define A60810_RG_SSUSB_CLKRX_EN (0x1<<13) /* 13:13 */
5578#define A60810_RG_SSUSB_FORCE_CLKRX_EN (0x1<<12) /* 12:12 */
5579#define A60810_RG_SSUSB_CLKTX_EN (0x1<<11) /* 11:11 */
5580#define A60810_RG_SSUSB_FORCE_CLKTX_EN (0x1<<10) /* 10:10 */
5581#define A60810_RG_SSUSB_CLK_REQ_N_I (0x1<<9) /* 9:9 */
5582#define A60810_RG_SSUSB_FORCE_CLK_REQ_N_I (0x1<<8) /* 8:8 */
5583#define A60810_RG_SSUSB_RATE (0x1<<6) /* 6:6 */
5584#define A60810_RG_SSUSB_FORCE_RATE (0x1<<5) /* 5:5 */
5585#define A60810_RG_SSUSB_PCIE_MODE_SEL (0x1<<4) /* 4:4 */
5586#define A60810_RG_SSUSB_FORCE_PCIE_MODE_SEL (0x1<<3) /* 3:3 */
5587#define A60810_RG_SSUSB_PHY_MODE (0x3<<1) /* 2:1 */
5588#define A60810_RG_SSUSB_FORCE_PHY_MODE (0x1<<0) /* 0:0 */
5589
5590/* U3D_B2_PHYD_TOP2 */
5591#define A60810_RG_SSUSB_FORCE_IDRV_6DB (0x1<<30) /* 30:30 */
5592#define A60810_RG_SSUSB_IDRV_6DB (0x3f<<24) /* 29:24 */
5593#define A60810_RG_SSUSB_FORCE_IDEM_3P5DB (0x1<<22) /* 22:22 */
5594#define A60810_RG_SSUSB_IDEM_3P5DB (0x3f<<16) /* 21:16 */
5595#define A60810_RG_SSUSB_FORCE_IDRV_3P5DB (0x1<<14) /* 14:14 */
5596#define A60810_RG_SSUSB_IDRV_3P5DB (0x3f<<8) /* 13:8 */
5597#define A60810_RG_SSUSB_FORCE_IDRV_0DB (0x1<<6) /* 6:6 */
5598#define A60810_RG_SSUSB_IDRV_0DB (0x3f<<0) /* 5:0 */
5599
5600/* U3D_B2_PHYD_TOP3 */
5601#define A60810_RG_SSUSB_TX_BIASI (0x7<<25) /* 27:25 */
5602#define A60810_RG_SSUSB_FORCE_TX_BIASI_EN (0x1<<24) /* 24:24 */
5603#define A60810_RG_SSUSB_TX_BIASI_EN (0x1<<16) /* 16:16 */
5604#define A60810_RG_SSUSB_FORCE_TX_BIASI (0x1<<13) /* 13:13 */
5605#define A60810_RG_SSUSB_FORCE_IDEM_6DB (0x1<<8) /* 8:8 */
5606#define A60810_RG_SSUSB_IDEM_6DB (0x3f<<0) /* 5:0 */
5607
5608/* U3D_B2_PHYD_TOP4 */
5609#define A60810_RG_SSUSB_G1_CDR_BIC_LTR (0xf<<28) /* 31:28 */
5610#define A60810_RG_SSUSB_G1_CDR_BIC_LTD0 (0xf<<24) /* 27:24 */
5611#define A60810_RG_SSUSB_G1_CDR_BC_LTD1 (0x1f<<16) /* 20:16 */
5612#define A60810_RG_SSUSB_G1_L1SS_CDR_BW_SEL (0x3<<13) /* 14:13 */
5613#define A60810_RG_SSUSB_G1_CDR_BC_LTR (0x1f<<8) /* 12:8 */
5614#define A60810_RG_SSUSB_G1_CDR_BW_SEL (0x3<<5) /* 6:5 */
5615#define A60810_RG_SSUSB_G1_CDR_BC_LTD0 (0x1f<<0) /* 4:0 */
5616
5617/* U3D_B2_PHYD_TOP5 */
5618#define A60810_RG_SSUSB_G1_CDR_BIR_LTD1 (0x1f<<24) /* 28:24 */
5619#define A60810_RG_SSUSB_G1_CDR_BIR_LTR (0x1f<<16) /* 20:16 */
5620#define A60810_RG_SSUSB_G1_CDR_BIR_LTD0 (0x1f<<8) /* 12:8 */
5621#define A60810_RG_SSUSB_G1_CDR_BIC_LTD1 (0xf<<0) /* 3:0 */
5622
5623/* U3D_B2_PHYD_TOP6 */
5624#define A60810_RG_SSUSB_G2_CDR_BIC_LTR (0xf<<28) /* 31:28 */
5625#define A60810_RG_SSUSB_G2_CDR_BIC_LTD0 (0xf<<24) /* 27:24 */
5626#define A60810_RG_SSUSB_G2_CDR_BC_LTD1 (0x1f<<16) /* 20:16 */
5627#define A60810_RG_SSUSB_G2_L1SS_CDR_BW_SEL (0x3<<13) /* 14:13 */
5628#define A60810_RG_SSUSB_G2_CDR_BC_LTR (0x1f<<8) /* 12:8 */
5629#define A60810_RG_SSUSB_G2_CDR_BW_SEL (0x3<<5) /* 6:5 */
5630#define A60810_RG_SSUSB_G2_CDR_BC_LTD0 (0x1f<<0) /* 4:0 */
5631
5632/* U3D_B2_PHYD_TOP7 */
5633#define A60810_RG_SSUSB_G2_CDR_BIR_LTD1 (0x1f<<24) /* 28:24 */
5634#define A60810_RG_SSUSB_G2_CDR_BIR_LTR (0x1f<<16) /* 20:16 */
5635#define A60810_RG_SSUSB_G2_CDR_BIR_LTD0 (0x1f<<8) /* 12:8 */
5636#define A60810_RG_SSUSB_G2_CDR_BIC_LTD1 (0xf<<0) /* 3:0 */
5637
5638/* U3D_B2_PHYD_P_SIGDET1 */
5639#define A60810_RG_SSUSB_P_SIGDET_FLT_DIS (0x1<<31) /* 31:31 */
5640#define A60810_RG_SSUSB_P_SIGDET_FLT_G2_DEAST_SEL (0x7f<<24) /* 30:24 */
5641#define A60810_RG_SSUSB_P_SIGDET_FLT_G1_DEAST_SEL (0x7f<<16) /* 22:16 */
5642#define A60810_RG_SSUSB_P_SIGDET_FLT_P2_AST_SEL (0x7f<<8) /* 14:8 */
5643#define A60810_RG_SSUSB_P_SIGDET_FLT_PX_AST_SEL (0x7f<<0) /* 6:0 */
5644
5645/* U3D_B2_PHYD_P_SIGDET2 */
5646#define A60810_RG_SSUSB_P_SIGDET_RX_VAL_S (0x1<<29) /* 29:29 */
5647#define A60810_RG_SSUSB_P_SIGDET_L0S_DEAS_SEL (0x1<<28) /* 28:28 */
5648#define A60810_RG_SSUSB_P_SIGDET_L0_EXIT_S (0x1<<27) /* 27:27 */
5649#define A60810_RG_SSUSB_P_SIGDET_L0S_EXIT_T_S (0x3<<25) /* 26:25 */
5650#define A60810_RG_SSUSB_P_SIGDET_L0S_EXIT_S (0x1<<24) /* 24:24 */
5651#define A60810_RG_SSUSB_P_SIGDET_L0S_ENTRY_S (0x1<<16) /* 16:16 */
5652#define A60810_RG_SSUSB_P_SIGDET_PRB_SEL (0x1<<10) /* 10:10 */
5653#define A60810_RG_SSUSB_P_SIGDET_BK_SIG_T (0x3<<8) /* 9:8 */
5654#define A60810_RG_SSUSB_P_SIGDET_P2_RXLFPS (0x1<<6) /* 6:6 */
5655#define A60810_RG_SSUSB_P_SIGDET_NON_BK_AD (0x1<<5) /* 5:5 */
5656#define A60810_RG_SSUSB_P_SIGDET_BK_B_RXEQ (0x1<<4) /* 4:4 */
5657#define A60810_RG_SSUSB_P_SIGDET_G2_KO_SEL (0x3<<2) /* 3:2 */
5658#define A60810_RG_SSUSB_P_SIGDET_G1_KO_SEL (0x3<<0) /* 1:0 */
5659
5660/* U3D_B2_PHYD_P_SIGDET_CAL1 */
5661#define A60810_RG_SSUSB_G2_2EIOS_DET_EN (0x1<<29) /* 29:29 */
5662#define A60810_RG_SSUSB_P_SIGDET_CAL_OFFSET (0x1f<<24) /* 28:24 */
5663#define A60810_RG_SSUSB_P_FORCE_SIGDET_CAL_OFFSET (0x1<<16) /* 16:16 */
5664#define A60810_RG_SSUSB_P_SIGDET_CAL_EN (0x1<<8) /* 8:8 */
5665#define A60810_RG_SSUSB_P_FORCE_SIGDET_CAL_EN (0x1<<3) /* 3:3 */
5666#define A60810_RG_SSUSB_P_SIGDET_FLT_EN (0x1<<2) /* 2:2 */
5667#define A60810_RG_SSUSB_P_SIGDET_SAMPLE_PRD (0x1<<1) /* 1:1 */
5668#define A60810_RG_SSUSB_P_SIGDET_REK (0x1<<0) /* 0:0 */
5669
5670/* U3D_B2_PHYD_RXDET1 */
5671#define A60810_RG_SSUSB_RXDET_PRB_SEL (0x1<<31) /* 31:31 */
5672#define A60810_RG_SSUSB_FORCE_CMDET (0x1<<30) /* 30:30 */
5673#define A60810_RG_SSUSB_RXDET_EN (0x1<<29) /* 29:29 */
5674#define A60810_RG_SSUSB_FORCE_RXDET_EN (0x1<<28) /* 28:28 */
5675#define A60810_RG_SSUSB_RXDET_K_TWICE (0x1<<27) /* 27:27 */
5676#define A60810_RG_SSUSB_RXDET_STB3_SET (0x1ff<<18) /* 26:18 */
5677#define A60810_RG_SSUSB_RXDET_STB2_SET (0x1ff<<9) /* 17:9 */
5678#define A60810_RG_SSUSB_RXDET_STB1_SET (0x1ff<<0) /* 8:0 */
5679
5680/* U3D_B2_PHYD_RXDET2 */
5681#define A60810_RG_SSUSB_PHYD_TRAINDEC_FORCE_CGEN (0x1<<31) /* 31:31 */
5682#define A60810_RG_SSUSB_PHYD_BERTLB_FORCE_CGEN (0x1<<30) /* 30:30 */
5683#define A60810_RG_SSUSB_PHYD_T2RLB_FORCE_CGEN (0x1<<29) /* 29:29 */
5684#define A60810_RG_SSUSB_LCK2REF_EXT_EN (0x1<<28) /* 28:28 */
5685#define A60810_RG_SSUSB_G2_LCK2REF_EXT_SEL (0xf<<24) /* 27:24 */
5686#define A60810_RG_SSUSB_LCK2REF_EXT_SEL (0xf<<20) /* 23:20 */
5687#define A60810_RG_SSUSB_PDN_T_SEL (0x3<<18) /* 19:18 */
5688#define A60810_RG_SSUSB_RXDET_STB3_SET_P3 (0x1ff<<9) /* 17:9 */
5689#define A60810_RG_SSUSB_RXDET_STB2_SET_P3 (0x1ff<<0) /* 8:0 */
5690
5691/* U3D_B2_PHYD_MISC0 */
5692#define A60810_RG_SSUSB_TX_EIDLE_LP_P0DLYCYC (0x3f<<26) /* 31:26 */
5693#define A60810_RG_SSUSB_TX_SER_EN (0x1<<25) /* 25:25 */
5694#define A60810_RG_SSUSB_FORCE_TX_SER_EN (0x1<<24) /* 24:24 */
5695#define A60810_RG_SSUSB_TXPLL_REFCKSEL (0x1<<23) /* 23:23 */
5696#define A60810_RG_SSUSB_FORCE_PLL_DDS_HF_EN (0x1<<22) /* 22:22 */
5697#define A60810_RG_SSUSB_PLL_DDS_HF_EN_MAN (0x1<<21) /* 21:21 */
5698#define A60810_RG_SSUSB_RXLFPS_ENTXDRV (0x1<<20) /* 20:20 */
5699#define A60810_RG_SSUSB_RX_FL_UNLOCKTH (0xf<<16) /* 19:16 */
5700#define A60810_RG_SSUSB_LFPS_PSEL (0x1<<15) /* 15:15 */
5701#define A60810_RG_SSUSB_RX_SIGDET_EN (0x1<<14) /* 14:14 */
5702#define A60810_RG_SSUSB_RX_SIGDET_EN_SEL (0x1<<13) /* 13:13 */
5703#define A60810_RG_SSUSB_RX_PI_CAL_EN (0x1<<12) /* 12:12 */
5704#define A60810_RG_SSUSB_RX_PI_CAL_EN_SEL (0x1<<11) /* 11:11 */
5705#define A60810_RG_SSUSB_P3_CLS_CK_SEL (0x1<<10) /* 10:10 */
5706#define A60810_RG_SSUSB_T2RLB_PSEL (0x3<<8) /* 9:8 */
5707#define A60810_RG_SSUSB_PPCTL_PSEL (0x7<<5) /* 7:5 */
5708#define A60810_RG_SSUSB_PHYD_TX_DATA_INV (0x1<<4) /* 4:4 */
5709#define A60810_RG_SSUSB_BERTLB_PSEL (0x3<<2) /* 3:2 */
5710#define A60810_RG_SSUSB_RETRACK_DIS (0x1<<1) /* 1:1 */
5711#define A60810_RG_SSUSB_PPERRCNT_CLR (0x1<<0) /* 0:0 */
5712
5713/* U3D_B2_PHYD_MISC2 */
5714#define A60810_RG_SSUSB_FRC_PLL_DDS_PREDIV2 (0x1<<31) /* 31:31 */
5715#define A60810_RG_SSUSB_FRC_PLL_DDS_IADJ (0xf<<27) /* 30:27 */
5716#define A60810_RG_SSUSB_P_SIGDET_125FILTER (0x1<<26) /* 26:26 */
5717#define A60810_RG_SSUSB_P_SIGDET_RST_FILTER (0x1<<25) /* 25:25 */
5718#define A60810_RG_SSUSB_P_SIGDET_EID_USE_RAW (0x1<<24) /* 24:24 */
5719#define A60810_RG_SSUSB_P_SIGDET_LTD_USE_RAW (0x1<<23) /* 23:23 */
5720#define A60810_RG_SSUSB_EIDLE_BF_RXDET (0x1<<22) /* 22:22 */
5721#define A60810_RG_SSUSB_EIDLE_LP_STBCYC (0x1ff<<13) /* 21:13 */
5722#define A60810_RG_SSUSB_TX_EIDLE_LP_POSTDLY (0x3f<<7) /* 12:7 */
5723#define A60810_RG_SSUSB_TX_EIDLE_LP_PREDLY (0x3f<<1) /* 6:1 */
5724#define A60810_RG_SSUSB_TX_EIDLE_LP_EN_ADV (0x1<<0) /* 0:0 */
5725
5726/* U3D_B2_PHYD_MISC3 */
5727#define A60810_RGS_SSUSB_DDS_CALIB_C_STATE (0x7<<16) /* 18:16 */
5728#define A60810_RGS_SSUSB_PPERRCNT (0xffff<<0) /* 15:0 */
5729
5730/* U3D_B2_PHYD_L1SS */
5731#define A60810_RG_SSUSB_L1SS_REV1 (0xff<<24) /* 31:24 */
5732#define A60810_RG_SSUSB_L1SS_REV0 (0xff<<16) /* 23:16 */
5733#define A60810_RG_SSUSB_P_LTD1_SLOCK_DIS (0x1<<11) /* 11:11 */
5734#define A60810_RG_SSUSB_PLL_CNT_CLEAN_DIS (0x1<<10) /* 10:10 */
5735#define A60810_RG_SSUSB_P_PLL_REK_SEL (0x1<<9) /* 9:9 */
5736#define A60810_RG_SSUSB_TXDRV_MASKDLY (0x1<<8) /* 8:8 */
5737#define A60810_RG_SSUSB_RXSTS_VAL (0x1<<7) /* 7:7 */
5738#define A60810_RG_PCIE_PHY_CLKREQ_N_EN (0x1<<6) /* 6:6 */
5739#define A60810_RG_PCIE_FORCE_PHY_CLKREQ_N_EN (0x1<<5) /* 5:5 */
5740#define A60810_RG_PCIE_PHY_CLKREQ_N_OUT (0x1<<4) /* 4:4 */
5741#define A60810_RG_PCIE_FORCE_PHY_CLKREQ_N_OUT (0x1<<3) /* 3:3 */
5742#define A60810_RG_SSUSB_RXPLL_STB_PX0 (0x1<<2) /* 2:2 */
5743#define A60810_RG_PCIE_L1SS_EN (0x1<<1) /* 1:1 */
5744#define A60810_RG_PCIE_FORCE_L1SS_EN (0x1<<0) /* 0:0 */
5745
5746/* U3D_B2_ROSC_0 */
5747#define A60810_RG_SSUSB_RING_OSC_CNTEND (0x1ff<<23) /* 31:23 */
5748#define A60810_RG_SSUSB_XTAL_OSC_CNTEND (0x7f<<16) /* 22:16 */
5749#define A60810_RG_SSUSB_RING_OSC_EN (0x1<<3) /* 3:3 */
5750#define A60810_RG_SSUSB_RING_OSC_FORCE_EN (0x1<<2) /* 2:2 */
5751#define A60810_RG_SSUSB_FRC_RING_BYPASS_DET (0x1<<1) /* 1:1 */
5752#define A60810_RG_SSUSB_RING_BYPASS_DET (0x1<<0) /* 0:0 */
5753
5754/* U3D_B2_ROSC_1 */
5755#define A60810_RG_SSUSB_RING_OSC_FRC_P3 (0x1<<20) /* 20:20 */
5756#define A60810_RG_SSUSB_RING_OSC_P3 (0x1<<19) /* 19:19 */
5757#define A60810_RG_SSUSB_RING_OSC_FRC_RECAL (0x3<<17) /* 18:17 */
5758#define A60810_RG_SSUSB_RING_OSC_RECAL (0x1<<16) /* 16:16 */
5759#define A60810_RG_SSUSB_RING_OSC_SEL (0xff<<8) /* 15:8 */
5760#define A60810_RG_SSUSB_RING_OSC_FRC_SEL (0x1<<0) /* 0:0 */
5761
5762/* U3D_B2_ROSC_2 */
5763#define A60810_RG_SSUSB_RING_DET_STRCYC2 (0xffff<<16) /* 31:16 */
5764#define A60810_RG_SSUSB_RING_DET_STRCYC1 (0xffff<<0) /* 15:0 */
5765
5766/* U3D_B2_ROSC_3 */
5767#define A60810_RG_SSUSB_RING_DET_DETWIN1 (0xffff<<16) /* 31:16 */
5768#define A60810_RG_SSUSB_RING_DET_STRCYC3 (0xffff<<0) /* 15:0 */
5769
5770/* U3D_B2_ROSC_4 */
5771#define A60810_RG_SSUSB_RING_DET_DETWIN3 (0xffff<<16) /* 31:16 */
5772#define A60810_RG_SSUSB_RING_DET_DETWIN2 (0xffff<<0) /* 15:0 */
5773
5774/* U3D_B2_ROSC_5 */
5775#define A60810_RG_SSUSB_RING_DET_LBOND1 (0xffff<<16) /* 31:16 */
5776#define A60810_RG_SSUSB_RING_DET_UBOND1 (0xffff<<0) /* 15:0 */
5777
5778/* U3D_B2_ROSC_6 */
5779#define A60810_RG_SSUSB_RING_DET_LBOND2 (0xffff<<16) /* 31:16 */
5780#define A60810_RG_SSUSB_RING_DET_UBOND2 (0xffff<<0) /* 15:0 */
5781
5782/* U3D_B2_ROSC_7 */
5783#define A60810_RG_SSUSB_RING_DET_LBOND3 (0xffff<<16) /* 31:16 */
5784#define A60810_RG_SSUSB_RING_DET_UBOND3 (0xffff<<0) /* 15:0 */
5785
5786/* U3D_B2_ROSC_8 */
5787#define A60810_RG_SSUSB_RING_RESERVE (0xffff<<16) /* 31:16 */
5788#define A60810_RG_SSUSB_ROSC_PROB_SEL (0xf<<2) /* 5:2 */
5789#define A60810_RG_SSUSB_RING_FREQMETER_EN (0x1<<1) /* 1:1 */
5790#define A60810_RG_SSUSB_RING_DET_BPS_UBOND (0x1<<0) /* 0:0 */
5791
5792/* U3D_B2_ROSC_9 */
5793#define A60810_RGS_FM_RING_CNT (0xffff<<16) /* 31:16 */
5794#define A60810_RGS_SSUSB_RING_OSC_STATE (0x3<<10) /* 11:10 */
5795#define A60810_RGS_SSUSB_RING_OSC_STABLE (0x1<<9) /* 9:9 */
5796#define A60810_RGS_SSUSB_RING_OSC_CAL_FAIL (0x1<<8) /* 8:8 */
5797#define A60810_RGS_SSUSB_RING_OSC_CAL (0xff<<0) /* 7:0 */
5798
5799/* U3D_B2_ROSC_A */
5800#define A60810_RGS_SSUSB_ROSC_PROB_OUT (0xff<<0) /* 7:0 */
5801
5802/* U3D_PHYD_VERSION */
5803#define A60810_RGS_SSUSB_PHYD_VERSION (0xffffffff<<0) /* 31:0 */
5804
5805/* U3D_PHYD_MODEL */
5806#define A60810_RGS_SSUSB_PHYD_MODEL (0xffffffff<<0) /* 31:0 */
5807
5808/* OFFSET */
5809
5810/* U3D_B2_PHYD_TOP1 */
5811#define A60810_RG_SSUSB_PCIE2_K_EMP_OFST (28)
5812#define A60810_RG_SSUSB_PCIE2_K_FUL_OFST (24)
5813#define A60810_RG_SSUSB_TX_EIDLE_LP_EN_OFST (17)
5814#define A60810_RG_SSUSB_FORCE_TX_EIDLE_LP_EN_OFST (16)
5815#define A60810_RG_SSUSB_SIGDET_EN_OFST (15)
5816#define A60810_RG_SSUSB_FORCE_SIGDET_EN_OFST (14)
5817#define A60810_RG_SSUSB_CLKRX_EN_OFST (13)
5818#define A60810_RG_SSUSB_FORCE_CLKRX_EN_OFST (12)
5819#define A60810_RG_SSUSB_CLKTX_EN_OFST (11)
5820#define A60810_RG_SSUSB_FORCE_CLKTX_EN_OFST (10)
5821#define A60810_RG_SSUSB_CLK_REQ_N_I_OFST (9)
5822#define A60810_RG_SSUSB_FORCE_CLK_REQ_N_I_OFST (8)
5823#define A60810_RG_SSUSB_RATE_OFST (6)
5824#define A60810_RG_SSUSB_FORCE_RATE_OFST (5)
5825#define A60810_RG_SSUSB_PCIE_MODE_SEL_OFST (4)
5826#define A60810_RG_SSUSB_FORCE_PCIE_MODE_SEL_OFST (3)
5827#define A60810_RG_SSUSB_PHY_MODE_OFST (1)
5828#define A60810_RG_SSUSB_FORCE_PHY_MODE_OFST (0)
5829
5830/* U3D_B2_PHYD_TOP2 */
5831#define A60810_RG_SSUSB_FORCE_IDRV_6DB_OFST (30)
5832#define A60810_RG_SSUSB_IDRV_6DB_OFST (24)
5833#define A60810_RG_SSUSB_FORCE_IDEM_3P5DB_OFST (22)
5834#define A60810_RG_SSUSB_IDEM_3P5DB_OFST (16)
5835#define A60810_RG_SSUSB_FORCE_IDRV_3P5DB_OFST (14)
5836#define A60810_RG_SSUSB_IDRV_3P5DB_OFST (8)
5837#define A60810_RG_SSUSB_FORCE_IDRV_0DB_OFST (6)
5838#define A60810_RG_SSUSB_IDRV_0DB_OFST (0)
5839
5840/* U3D_B2_PHYD_TOP3 */
5841#define A60810_RG_SSUSB_TX_BIASI_OFST (25)
5842#define A60810_RG_SSUSB_FORCE_TX_BIASI_EN_OFST (24)
5843#define A60810_RG_SSUSB_TX_BIASI_EN_OFST (16)
5844#define A60810_RG_SSUSB_FORCE_TX_BIASI_OFST (13)
5845#define A60810_RG_SSUSB_FORCE_IDEM_6DB_OFST (8)
5846#define A60810_RG_SSUSB_IDEM_6DB_OFST (0)
5847
5848/* U3D_B2_PHYD_TOP4 */
5849#define A60810_RG_SSUSB_G1_CDR_BIC_LTR_OFST (28)
5850#define A60810_RG_SSUSB_G1_CDR_BIC_LTD0_OFST (24)
5851#define A60810_RG_SSUSB_G1_CDR_BC_LTD1_OFST (16)
5852#define A60810_RG_SSUSB_G1_L1SS_CDR_BW_SEL_OFST (13)
5853#define A60810_RG_SSUSB_G1_CDR_BC_LTR_OFST (8)
5854#define A60810_RG_SSUSB_G1_CDR_BW_SEL_OFST (5)
5855#define A60810_RG_SSUSB_G1_CDR_BC_LTD0_OFST (0)
5856
5857/* U3D_B2_PHYD_TOP5 */
5858#define A60810_RG_SSUSB_G1_CDR_BIR_LTD1_OFST (24)
5859#define A60810_RG_SSUSB_G1_CDR_BIR_LTR_OFST (16)
5860#define A60810_RG_SSUSB_G1_CDR_BIR_LTD0_OFST (8)
5861#define A60810_RG_SSUSB_G1_CDR_BIC_LTD1_OFST (0)
5862
5863/* U3D_B2_PHYD_TOP6 */
5864#define A60810_RG_SSUSB_G2_CDR_BIC_LTR_OFST (28)
5865#define A60810_RG_SSUSB_G2_CDR_BIC_LTD0_OFST (24)
5866#define A60810_RG_SSUSB_G2_CDR_BC_LTD1_OFST (16)
5867#define A60810_RG_SSUSB_G2_L1SS_CDR_BW_SEL_OFST (13)
5868#define A60810_RG_SSUSB_G2_CDR_BC_LTR_OFST (8)
5869#define A60810_RG_SSUSB_G2_CDR_BW_SEL_OFST (5)
5870#define A60810_RG_SSUSB_G2_CDR_BC_LTD0_OFST (0)
5871
5872/* U3D_B2_PHYD_TOP7 */
5873#define A60810_RG_SSUSB_G2_CDR_BIR_LTD1_OFST (24)
5874#define A60810_RG_SSUSB_G2_CDR_BIR_LTR_OFST (16)
5875#define A60810_RG_SSUSB_G2_CDR_BIR_LTD0_OFST (8)
5876#define A60810_RG_SSUSB_G2_CDR_BIC_LTD1_OFST (0)
5877
5878/* U3D_B2_PHYD_P_SIGDET1 */
5879#define A60810_RG_SSUSB_P_SIGDET_FLT_DIS_OFST (31)
5880#define A60810_RG_SSUSB_P_SIGDET_FLT_G2_DEAST_SEL_OFST (24)
5881#define A60810_RG_SSUSB_P_SIGDET_FLT_G1_DEAST_SEL_OFST (16)
5882#define A60810_RG_SSUSB_P_SIGDET_FLT_P2_AST_SEL_OFST (8)
5883#define A60810_RG_SSUSB_P_SIGDET_FLT_PX_AST_SEL_OFST (0)
5884
5885/* U3D_B2_PHYD_P_SIGDET2 */
5886#define A60810_RG_SSUSB_P_SIGDET_RX_VAL_S_OFST (29)
5887#define A60810_RG_SSUSB_P_SIGDET_L0S_DEAS_SEL_OFST (28)
5888#define A60810_RG_SSUSB_P_SIGDET_L0_EXIT_S_OFST (27)
5889#define A60810_RG_SSUSB_P_SIGDET_L0S_EXIT_T_S_OFST (25)
5890#define A60810_RG_SSUSB_P_SIGDET_L0S_EXIT_S_OFST (24)
5891#define A60810_RG_SSUSB_P_SIGDET_L0S_ENTRY_S_OFST (16)
5892#define A60810_RG_SSUSB_P_SIGDET_PRB_SEL_OFST (10)
5893#define A60810_RG_SSUSB_P_SIGDET_BK_SIG_T_OFST (8)
5894#define A60810_RG_SSUSB_P_SIGDET_P2_RXLFPS_OFST (6)
5895#define A60810_RG_SSUSB_P_SIGDET_NON_BK_AD_OFST (5)
5896#define A60810_RG_SSUSB_P_SIGDET_BK_B_RXEQ_OFST (4)
5897#define A60810_RG_SSUSB_P_SIGDET_G2_KO_SEL_OFST (2)
5898#define A60810_RG_SSUSB_P_SIGDET_G1_KO_SEL_OFST (0)
5899
5900/* U3D_B2_PHYD_P_SIGDET_CAL1 */
5901#define A60810_RG_SSUSB_G2_2EIOS_DET_EN_OFST (29)
5902#define A60810_RG_SSUSB_P_SIGDET_CAL_OFFSET_OFST (24)
5903#define A60810_RG_SSUSB_P_FORCE_SIGDET_CAL_OFFSET_OFST (16)
5904#define A60810_RG_SSUSB_P_SIGDET_CAL_EN_OFST (8)
5905#define A60810_RG_SSUSB_P_FORCE_SIGDET_CAL_EN_OFST (3)
5906#define A60810_RG_SSUSB_P_SIGDET_FLT_EN_OFST (2)
5907#define A60810_RG_SSUSB_P_SIGDET_SAMPLE_PRD_OFST (1)
5908#define A60810_RG_SSUSB_P_SIGDET_REK_OFST (0)
5909
5910/* U3D_B2_PHYD_RXDET1 */
5911#define A60810_RG_SSUSB_RXDET_PRB_SEL_OFST (31)
5912#define A60810_RG_SSUSB_FORCE_CMDET_OFST (30)
5913#define A60810_RG_SSUSB_RXDET_EN_OFST (29)
5914#define A60810_RG_SSUSB_FORCE_RXDET_EN_OFST (28)
5915#define A60810_RG_SSUSB_RXDET_K_TWICE_OFST (27)
5916#define A60810_RG_SSUSB_RXDET_STB3_SET_OFST (18)
5917#define A60810_RG_SSUSB_RXDET_STB2_SET_OFST (9)
5918#define A60810_RG_SSUSB_RXDET_STB1_SET_OFST (0)
5919
5920/* U3D_B2_PHYD_RXDET2 */
5921#define A60810_RG_SSUSB_PHYD_TRAINDEC_FORCE_CGEN_OFST (31)
5922#define A60810_RG_SSUSB_PHYD_BERTLB_FORCE_CGEN_OFST (30)
5923#define A60810_RG_SSUSB_PHYD_T2RLB_FORCE_CGEN_OFST (29)
5924#define A60810_RG_SSUSB_LCK2REF_EXT_EN_OFST (28)
5925#define A60810_RG_SSUSB_G2_LCK2REF_EXT_SEL_OFST (24)
5926#define A60810_RG_SSUSB_LCK2REF_EXT_SEL_OFST (20)
5927#define A60810_RG_SSUSB_PDN_T_SEL_OFST (18)
5928#define A60810_RG_SSUSB_RXDET_STB3_SET_P3_OFST (9)
5929#define A60810_RG_SSUSB_RXDET_STB2_SET_P3_OFST (0)
5930
5931/* U3D_B2_PHYD_MISC0 */
5932#define A60810_RG_SSUSB_TX_EIDLE_LP_P0DLYCYC_OFST (26)
5933#define A60810_RG_SSUSB_TX_SER_EN_OFST (25)
5934#define A60810_RG_SSUSB_FORCE_TX_SER_EN_OFST (24)
5935#define A60810_RG_SSUSB_TXPLL_REFCKSEL_OFST (23)
5936#define A60810_RG_SSUSB_FORCE_PLL_DDS_HF_EN_OFST (22)
5937#define A60810_RG_SSUSB_PLL_DDS_HF_EN_MAN_OFST (21)
5938#define A60810_RG_SSUSB_RXLFPS_ENTXDRV_OFST (20)
5939#define A60810_RG_SSUSB_RX_FL_UNLOCKTH_OFST (16)
5940#define A60810_RG_SSUSB_LFPS_PSEL_OFST (15)
5941#define A60810_RG_SSUSB_RX_SIGDET_EN_OFST (14)
5942#define A60810_RG_SSUSB_RX_SIGDET_EN_SEL_OFST (13)
5943#define A60810_RG_SSUSB_RX_PI_CAL_EN_OFST (12)
5944#define A60810_RG_SSUSB_RX_PI_CAL_EN_SEL_OFST (11)
5945#define A60810_RG_SSUSB_P3_CLS_CK_SEL_OFST (10)
5946#define A60810_RG_SSUSB_T2RLB_PSEL_OFST (8)
5947#define A60810_RG_SSUSB_PPCTL_PSEL_OFST (5)
5948#define A60810_RG_SSUSB_PHYD_TX_DATA_INV_OFST (4)
5949#define A60810_RG_SSUSB_BERTLB_PSEL_OFST (2)
5950#define A60810_RG_SSUSB_RETRACK_DIS_OFST (1)
5951#define A60810_RG_SSUSB_PPERRCNT_CLR_OFST (0)
5952
5953/* U3D_B2_PHYD_MISC2 */
5954#define A60810_RG_SSUSB_FRC_PLL_DDS_PREDIV2_OFST (31)
5955#define A60810_RG_SSUSB_FRC_PLL_DDS_IADJ_OFST (27)
5956#define A60810_RG_SSUSB_P_SIGDET_125FILTER_OFST (26)
5957#define A60810_RG_SSUSB_P_SIGDET_RST_FILTER_OFST (25)
5958#define A60810_RG_SSUSB_P_SIGDET_EID_USE_RAW_OFST (24)
5959#define A60810_RG_SSUSB_P_SIGDET_LTD_USE_RAW_OFST (23)
5960#define A60810_RG_SSUSB_EIDLE_BF_RXDET_OFST (22)
5961#define A60810_RG_SSUSB_EIDLE_LP_STBCYC_OFST (13)
5962#define A60810_RG_SSUSB_TX_EIDLE_LP_POSTDLY_OFST (7)
5963#define A60810_RG_SSUSB_TX_EIDLE_LP_PREDLY_OFST (1)
5964#define A60810_RG_SSUSB_TX_EIDLE_LP_EN_ADV_OFST (0)
5965
5966/* U3D_B2_PHYD_MISC3 */
5967#define A60810_RGS_SSUSB_DDS_CALIB_C_STATE_OFST (16)
5968#define A60810_RGS_SSUSB_PPERRCNT_OFST (0)
5969
5970/* U3D_B2_PHYD_L1SS */
5971#define A60810_RG_SSUSB_L1SS_REV1_OFST (24)
5972#define A60810_RG_SSUSB_L1SS_REV0_OFST (16)
5973#define A60810_RG_SSUSB_P_LTD1_SLOCK_DIS_OFST (11)
5974#define A60810_RG_SSUSB_PLL_CNT_CLEAN_DIS_OFST (10)
5975#define A60810_RG_SSUSB_P_PLL_REK_SEL_OFST (9)
5976#define A60810_RG_SSUSB_TXDRV_MASKDLY_OFST (8)
5977#define A60810_RG_SSUSB_RXSTS_VAL_OFST (7)
5978#define A60810_RG_PCIE_PHY_CLKREQ_N_EN_OFST (6)
5979#define A60810_RG_PCIE_FORCE_PHY_CLKREQ_N_EN_OFST (5)
5980#define A60810_RG_PCIE_PHY_CLKREQ_N_OUT_OFST (4)
5981#define A60810_RG_PCIE_FORCE_PHY_CLKREQ_N_OUT_OFST (3)
5982#define A60810_RG_SSUSB_RXPLL_STB_PX0_OFST (2)
5983#define A60810_RG_PCIE_L1SS_EN_OFST (1)
5984#define A60810_RG_PCIE_FORCE_L1SS_EN_OFST (0)
5985
5986/* U3D_B2_ROSC_0 */
5987#define A60810_RG_SSUSB_RING_OSC_CNTEND_OFST (23)
5988#define A60810_RG_SSUSB_XTAL_OSC_CNTEND_OFST (16)
5989#define A60810_RG_SSUSB_RING_OSC_EN_OFST (3)
5990#define A60810_RG_SSUSB_RING_OSC_FORCE_EN_OFST (2)
5991#define A60810_RG_SSUSB_FRC_RING_BYPASS_DET_OFST (1)
5992#define A60810_RG_SSUSB_RING_BYPASS_DET_OFST (0)
5993
5994/* U3D_B2_ROSC_1 */
5995#define A60810_RG_SSUSB_RING_OSC_FRC_P3_OFST (20)
5996#define A60810_RG_SSUSB_RING_OSC_P3_OFST (19)
5997#define A60810_RG_SSUSB_RING_OSC_FRC_RECAL_OFST (17)
5998#define A60810_RG_SSUSB_RING_OSC_RECAL_OFST (16)
5999#define A60810_RG_SSUSB_RING_OSC_SEL_OFST (8)
6000#define A60810_RG_SSUSB_RING_OSC_FRC_SEL_OFST (0)
6001
6002/* U3D_B2_ROSC_2 */
6003#define A60810_RG_SSUSB_RING_DET_STRCYC2_OFST (16)
6004#define A60810_RG_SSUSB_RING_DET_STRCYC1_OFST (0)
6005
6006/* U3D_B2_ROSC_3 */
6007#define A60810_RG_SSUSB_RING_DET_DETWIN1_OFST (16)
6008#define A60810_RG_SSUSB_RING_DET_STRCYC3_OFST (0)
6009
6010/* U3D_B2_ROSC_4 */
6011#define A60810_RG_SSUSB_RING_DET_DETWIN3_OFST (16)
6012#define A60810_RG_SSUSB_RING_DET_DETWIN2_OFST (0)
6013
6014/* U3D_B2_ROSC_5 */
6015#define A60810_RG_SSUSB_RING_DET_LBOND1_OFST (16)
6016#define A60810_RG_SSUSB_RING_DET_UBOND1_OFST (0)
6017
6018/* U3D_B2_ROSC_6 */
6019#define A60810_RG_SSUSB_RING_DET_LBOND2_OFST (16)
6020#define A60810_RG_SSUSB_RING_DET_UBOND2_OFST (0)
6021
6022/* U3D_B2_ROSC_7 */
6023#define A60810_RG_SSUSB_RING_DET_LBOND3_OFST (16)
6024#define A60810_RG_SSUSB_RING_DET_UBOND3_OFST (0)
6025
6026/* U3D_B2_ROSC_8 */
6027#define A60810_RG_SSUSB_RING_RESERVE_OFST (16)
6028#define A60810_RG_SSUSB_ROSC_PROB_SEL_OFST (2)
6029#define A60810_RG_SSUSB_RING_FREQMETER_EN_OFST (1)
6030#define A60810_RG_SSUSB_RING_DET_BPS_UBOND_OFST (0)
6031
6032/* U3D_B2_ROSC_9 */
6033#define A60810_RGS_FM_RING_CNT_OFST (16)
6034#define A60810_RGS_SSUSB_RING_OSC_STATE_OFST (10)
6035#define A60810_RGS_SSUSB_RING_OSC_STABLE_OFST (9)
6036#define A60810_RGS_SSUSB_RING_OSC_CAL_FAIL_OFST (8)
6037#define A60810_RGS_SSUSB_RING_OSC_CAL_OFST (0)
6038
6039/* U3D_B2_ROSC_A */
6040#define A60810_RGS_SSUSB_ROSC_PROB_OUT_OFST (0)
6041
6042/* U3D_PHYD_VERSION */
6043#define A60810_RGS_SSUSB_PHYD_VERSION_OFST (0)
6044
6045/* U3D_PHYD_MODEL */
6046#define A60810_RGS_SSUSB_PHYD_MODEL_OFST (0)
6047
6048///////////////////////////////////////////////////////////////////////////////
6049
6050struct a60810_sifslv_chip_reg_a {
6051 /* 0x0 */
6052 u32 gpio_ctla;
6053 u32 gpio_ctlb;
6054 u32 gpio_ctlc;
6055};
6056
6057///////////////////////////////////////////////////////////////////////////////
6058
6059struct a60810_sifslv_fm_reg_a {
6060 /* 0x0 */
6061 u32 fmcr0;
6062 u32 fmcr1;
6063 u32 fmcr2;
6064 u32 fmmonr0;
6065 /* 0X10 */
6066 u32 fmmonr1;
6067};
6068
6069/* U3D_FMCR0 */
6070#define A60810_RG_LOCKTH (0xf<<28) /* 31:28 */
6071#define A60810_RG_MONCLK_SEL (0x3<<26) /* 27:26 */
6072#define A60810_RG_FM_MODE (0x1<<25) /* 25:25 */
6073#define A60810_RG_FREQDET_EN (0x1<<24) /* 24:24 */
6074#define A60810_RG_CYCLECNT (0xffffff<<0) /* 23:0 */
6075
6076/* U3D_FMCR1 */
6077#define A60810_RG_TARGET (0xffffffff<<0) /* 31:0 */
6078
6079/* U3D_FMCR2 */
6080#define A60810_RG_OFFSET (0xffffffff<<0) /* 31:0 */
6081
6082/* U3D_FMMONR0 */
6083#define A60810_USB_FM_OUT (0xffffffff<<0) /* 31:0 */
6084
6085/* U3D_FMMONR1 */
6086#define A60810_RG_MONCLK_SEL_2 (0x1<<9) /* 9:9 */
6087#define A60810_RG_FRCK_EN (0x1<<8) /* 8:8 */
6088#define A60810_USBPLL_LOCK (0x1<<1) /* 1:1 */
6089#define A60810_USB_FM_VLD (0x1<<0) /* 0:0 */
6090
6091/* OFFSET */
6092
6093/* U3D_FMCR0 */
6094#define A60810_RG_LOCKTH_OFST (28)
6095#define A60810_RG_MONCLK_SEL_OFST (26)
6096#define A60810_RG_FM_MODE_OFST (25)
6097#define A60810_RG_FREQDET_EN_OFST (24)
6098#define A60810_RG_CYCLECNT_OFST (0)
6099
6100/* U3D_FMCR1 */
6101#define A60810_RG_TARGET_OFST (0)
6102
6103/* U3D_FMCR2 */
6104#define A60810_RG_OFFSET_OFST (0)
6105
6106/* U3D_FMMONR0 */
6107#define A60810_USB_FM_OUT_OFST (0)
6108
6109/* U3D_FMMONR1 */
6110#define A60810_RG_MONCLK_SEL_2_OFST (9)
6111#define A60810_RG_FRCK_EN_OFST (8)
6112#define A60810_USBPLL_LOCK_OFST (1)
6113#define A60810_USB_FM_VLD_OFST (0)
6114
6115///////////////////////////////////////////////////////////////////////////////
6116
6117struct a60810_spllc_reg_a {
6118 /* 0x0 */
6119 u32 u3d_syspll_0;
6120 u32 u3d_syspll_1;
6121 u32 u3d_syspll_2;
6122 u32 u3d_syspll_sdm;
6123 /* 0x10 */
6124 u32 u3d_xtalctl_1;
6125 u32 u3d_xtalctl_2;
6126 u32 u3d_xtalctl3;
6127};
6128
6129/* U3D_SYSPLL_0 */
6130#define A60810_RG_SSUSB_SPLL_DDSEN_CYC (0x1f<<27) /* 31:27 */
6131#define A60810_RG_SSUSB_SPLL_NCPOEN_CYC (0x3<<25) /* 26:25 */
6132#define A60810_RG_SSUSB_SPLL_STBCYC (0x1ff<<16) /* 24:16 */
6133#define A60810_RG_SSUSB_SPLL_NCPOCHG_CYC (0xf<<12) /* 15:12 */
6134#define A60810_RG_SSUSB_SYSPLL_ON (0x1<<11) /* 11:11 */
6135#define A60810_RG_SSUSB_FORCE_SYSPLLON (0x1<<10) /* 10:10 */
6136#define A60810_RG_SSUSB_SPLL_DDSRSTB_CYC (0x7<<0) /* 2:0 */
6137
6138/* U3D_SYSPLL_1 */
6139#define A60810_RG_SSUSB_PLL_BIAS_CYC (0xff<<24) /* 31:24 */
6140#define A60810_RG_SSUSB_SYSPLL_STB (0x1<<23) /* 23:23 */
6141#define A60810_RG_SSUSB_FORCE_SYSPLL_STB (0x1<<22) /* 22:22 */
6142#define A60810_RG_SSUSB_SPLL_DDS_ISO_EN (0x1<<21) /* 21:21 */
6143#define A60810_RG_SSUSB_FORCE_SPLL_DDS_ISO_EN (0x1<<20) /* 20:20 */
6144#define A60810_RG_SSUSB_SPLL_DDS_PWR_ON (0x1<<19) /* 19:19 */
6145#define A60810_RG_SSUSB_FORCE_SPLL_DDS_PWR_ON (0x1<<18) /* 18:18 */
6146#define A60810_RG_SSUSB_PLL_BIAS_PWD (0x1<<17) /* 17:17 */
6147#define A60810_RG_SSUSB_FORCE_PLL_BIAS_PWD (0x1<<16) /* 16:16 */
6148#define A60810_RG_SSUSB_FORCE_SPLL_NCPO_EN (0x1<<15) /* 15:15 */
6149#define A60810_RG_SSUSB_FORCE_SPLL_FIFO_START_MAN (0x1<<14) /* 14:14 */
6150#define A60810_RG_SSUSB_FORCE_SPLL_NCPO_CHG (0x1<<12) /* 12:12 */
6151#define A60810_RG_SSUSB_FORCE_SPLL_DDS_RSTB (0x1<<11) /* 11:11 */
6152#define A60810_RG_SSUSB_FORCE_SPLL_DDS_PWDB (0x1<<10) /* 10:10 */
6153#define A60810_RG_SSUSB_FORCE_SPLL_DDSEN (0x1<<9) /* 9:9 */
6154#define A60810_RG_SSUSB_FORCE_SPLL_PWD (0x1<<8) /* 8:8 */
6155#define A60810_RG_SSUSB_SPLL_NCPO_EN (0x1<<7) /* 7:7 */
6156#define A60810_RG_SSUSB_SPLL_FIFO_START_MAN (0x1<<6) /* 6:6 */
6157#define A60810_RG_SSUSB_SPLL_NCPO_CHG (0x1<<4) /* 4:4 */
6158#define A60810_RG_SSUSB_SPLL_DDS_RSTB (0x1<<3) /* 3:3 */
6159#define A60810_RG_SSUSB_SPLL_DDS_PWDB (0x1<<2) /* 2:2 */
6160#define A60810_RG_SSUSB_SPLL_DDSEN (0x1<<1) /* 1:1 */
6161#define A60810_RG_SSUSB_SPLL_PWD (0x1<<0) /* 0:0 */
6162
6163/* U3D_SYSPLL_2 */
6164#define A60810_RG_SSUSB_SPLL_P_ON_SEL (0x1<<11) /* 11:11 */
6165#define A60810_RG_SSUSB_SPLL_FBDIV_CHG (0x1<<10) /* 10:10 */
6166#define A60810_RG_SSUSB_SPLL_DDS_ISOEN_CYC (0x3ff<<0) /* 9:0 */
6167
6168/* U3D_SYSPLL_SDM */
6169#define A60810_RG_SSUSB_SPLL_SDM_ISO_EN_CYC (0x3ff<<14) /* 23:14 */
6170#define A60810_RG_SSUSB_SPLL_FORCE_SDM_ISO_EN (0x1<<13) /* 13:13 */
6171#define A60810_RG_SSUSB_SPLL_SDM_ISO_EN (0x1<<12) /* 12:12 */
6172#define A60810_RG_SSUSB_SPLL_SDM_PWR_ON_CYC (0x3ff<<2) /* 11:2 */
6173#define A60810_RG_SSUSB_SPLL_FORCE_SDM_PWR_ON (0x1<<1) /* 1:1 */
6174#define A60810_RG_SSUSB_SPLL_SDM_PWR_ON (0x1<<0) /* 0:0 */
6175
6176/* U3D_XTALCTL_1 */
6177#define A60810_RG_SSUSB_BIAS_STBCYC (0x3fff<<17) /* 30:17 */
6178#define A60810_RG_SSUSB_XTAL_CLK_REQ_N (0x1<<16) /* 16:16 */
6179#define A60810_RG_SSUSB_XTAL_FORCE_CLK_REQ_N (0x1<<15) /* 15:15 */
6180#define A60810_RG_SSUSB_XTAL_STBCYC (0x7fff<<0) /* 14:0 */
6181
6182/* U3D_XTALCTL_2 */
6183#define A60810_RG_SSUSB_INT_XTAL_SEL (0x1<<29) /* 29:29 */
6184#define A60810_RG_SSUSB_BG_LPF_DLY (0x3<<27) /* 28:27 */
6185#define A60810_RG_SSUSB_BG_LPF_EN (0x1<<26) /* 26:26 */
6186#define A60810_RG_SSUSB_FORCE_BG_LPF_EN (0x1<<25) /* 25:25 */
6187#define A60810_RG_SSUSB_P3_BIAS_PWD (0x1<<24) /* 24:24 */
6188#define A60810_RG_SSUSB_PCIE_CLKDET_HIT (0x1<<20) /* 20:20 */
6189#define A60810_RG_SSUSB_PCIE_CLKDET_EN (0x1<<19) /* 19:19 */
6190#define A60810_RG_SSUSB_FRC_PCIE_CLKDET_EN (0x1<<18) /* 18:18 */
6191#define A60810_RG_SSUSB_USB20_BIAS_EN (0x1<<17) /* 17:17 */
6192#define A60810_RG_SSUSB_USB20_SLEEP (0x1<<16) /* 16:16 */
6193#define A60810_RG_SSUSB_OSC_ONLY (0x1<<9) /* 9:9 */
6194#define A60810_RG_SSUSB_OSC_EN (0x1<<8) /* 8:8 */
6195#define A60810_RG_SSUSB_XTALBIAS_STB (0x1<<5) /* 5:5 */
6196#define A60810_RG_SSUSB_FORCE_XTALBIAS_STB (0x1<<4) /* 4:4 */
6197#define A60810_RG_SSUSB_BIAS_PWD (0x1<<3) /* 3:3 */
6198#define A60810_RG_SSUSB_XTAL_PWD (0x1<<2) /* 2:2 */
6199#define A60810_RG_SSUSB_FORCE_BIAS_PWD (0x1<<1) /* 1:1 */
6200#define A60810_RG_SSUSB_FORCE_XTAL_PWD (0x1<<0) /* 0:0 */
6201
6202/* U3D_XTALCTL3 */
6203#define A60810_RG_SSUSB_XTALCTL_REV (0xf<<12) /* 15:12 */
6204#define A60810_RG_SSUSB_BIASIMR_EN (0x1<<11) /* 11:11 */
6205#define A60810_RG_SSUSB_FORCE_BIASIMR_EN (0x1<<10) /* 10:10 */
6206#define A60810_RG_SSUSB_XTAL_RX_PWD (0x1<<9) /* 9:9 */
6207#define A60810_RG_SSUSB_FRC_XTAL_RX_PWD (0x1<<8) /* 8:8 */
6208#define A60810_RG_SSUSB_CKBG_PROB_SEL (0x3<<6) /* 7:6 */
6209#define A60810_RG_SSUSB_XTAL_PROB_SEL (0x3<<4) /* 5:4 */
6210#define A60810_RG_SSUSB_XTAL_VREGBIAS_LPF_ENB (0x1<<3) /* 3:3 */
6211#define A60810_RG_SSUSB_XTAL_FRC_VREGBIAS_LPF_ENB (0x1<<2) /* 2:2 */
6212#define A60810_RG_SSUSB_XTAL_VREGBIAS_PWD (0x1<<1) /* 1:1 */
6213#define A60810_RG_SSUSB_XTAL_FRC_VREGBIAS_PWD (0x1<<0) /* 0:0 */
6214
6215
6216/* SSUSB_SIFSLV_SPLLC FIELD OFFSET DEFINITION */
6217
6218/* U3D_SYSPLL_0 */
6219#define A60810_RG_SSUSB_SPLL_DDSEN_CYC_OFST (27)
6220#define A60810_RG_SSUSB_SPLL_NCPOEN_CYC_OFST (25)
6221#define A60810_RG_SSUSB_SPLL_STBCYC_OFST (16)
6222#define A60810_RG_SSUSB_SPLL_NCPOCHG_CYC_OFST (12)
6223#define A60810_RG_SSUSB_SYSPLL_ON_OFST (11)
6224#define A60810_RG_SSUSB_FORCE_SYSPLLON_OFST (10)
6225#define A60810_RG_SSUSB_SPLL_DDSRSTB_CYC_OFST (0)
6226
6227/* U3D_SYA60810_SPLL_1 */
6228#define A60810_RG_SSUSB_PLL_BIAS_CYC_OFST (24)
6229#define A60810_RG_SSUSB_SYSPLL_STB_OFST (23)
6230#define A60810_RG_SSUSB_FORCE_SYSPLL_STB_OFST (22)
6231#define A60810_RG_SSUSB_SPLL_DDS_ISO_EN_OFST (21)
6232#define A60810_RG_SSUSB_FORCE_SPLL_DDS_ISO_EN_OFST (20)
6233#define A60810_RG_SSUSB_SPLL_DDS_PWR_ON_OFST (19)
6234#define A60810_RG_SSUSB_FORCE_SPLL_DDS_PWR_ON_OFST (18)
6235#define A60810_RG_SSUSB_PLL_BIAS_PWD_OFST (17)
6236#define A60810_RG_SSUSB_FORCE_PLL_BIAS_PWD_OFST (16)
6237#define A60810_RG_SSUSB_FORCE_SPLL_NCPO_EN_OFST (15)
6238#define A60810_RG_SSUSB_FORCE_SPLL_FIFO_START_MAN_OFST (14)
6239#define A60810_RG_SSUSB_FORCE_SPLL_NCPO_CHG_OFST (12)
6240#define A60810_RG_SSUSB_FORCE_SPLL_DDS_RSTB_OFST (11)
6241#define A60810_RG_SSUSB_FORCE_SPLL_DDS_PWDB_OFST (10)
6242#define A60810_RG_SSUSB_FORCE_SPLL_DDSEN_OFST (9)
6243#define A60810_RG_SSUSB_FORCE_SPLL_PWD_OFST (8)
6244#define A60810_RG_SSUSB_SPLL_NCPO_EN_OFST (7)
6245#define A60810_RG_SSUSB_SPLL_FIFO_START_MAN_OFST (6)
6246#define A60810_RG_SSUSB_SPLL_NCPO_CHG_OFST (4)
6247#define A60810_RG_SSUSB_SPLL_DDS_RSTB_OFST (3)
6248#define A60810_RG_SSUSB_SPLL_DDS_PWDB_OFST (2)
6249#define A60810_RG_SSUSB_SPLL_DDSEN_OFST (1)
6250#define A60810_RG_SSUSB_SPLL_PWD_OFST (0)
6251
6252/* U3D_SYSPLL_2 */
6253#define A60810_RG_SSUSB_SPLL_P_ON_SEL_OFST (11)
6254#define A60810_RG_SSUSB_SPLL_FBDIV_CHG_OFST (10)
6255#define A60810_RG_SSUSB_SPLL_DDS_ISOEN_CYC_OFST (0)
6256
6257/* U3D_SYSPLL_SDM */
6258#define A60810_RG_SSUSB_SPLL_SDM_ISO_EN_CYC_OFST (14)
6259#define A60810_RG_SSUSB_SPLL_FORCE_SDM_ISO_EN_OFST (13)
6260#define A60810_RG_SSUSB_SPLL_SDM_ISO_EN_OFST (12)
6261#define A60810_RG_SSUSB_SPLL_SDM_PWR_ON_CYC_OFST (2)
6262#define A60810_RG_SSUSB_SPLL_FORCE_SDM_PWR_ON_OFST (1)
6263#define A60810_RG_SSUSB_SPLL_SDM_PWR_ON_OFST (0)
6264
6265/* U3D_XTALCTL_1 */
6266#define A60810_RG_SSUSB_BIAS_STBCYC_OFST (17)
6267#define A60810_RG_SSUSB_XTAL_CLK_REQ_N_OFST (16)
6268#define A60810_RG_SSUSB_XTAL_FORCE_CLK_REQ_N_OFST (15)
6269#define A60810_RG_SSUSB_XTAL_STBCYC_OFST (0)
6270
6271/* U3D_XTALCTL_2 */
6272#define A60810_RG_SSUSB_INT_XTAL_SEL_OFST (29)
6273#define A60810_RG_SSUSB_BG_LPF_DLY_OFST (27)
6274#define A60810_RG_SSUSB_BG_LPF_EN_OFST (26)
6275#define A60810_RG_SSUSB_FORCE_BG_LPF_EN_OFST (25)
6276#define A60810_RG_SSUSB_P3_BIAS_PWD_OFST (24)
6277#define A60810_RG_SSUSB_PCIE_CLKDET_HIT_OFST (20)
6278#define A60810_RG_SSUSB_PCIE_CLKDET_EN_OFST (19)
6279#define A60810_RG_SSUSB_FRC_PCIE_CLKDET_EN_OFST (18)
6280#define A60810_RG_SSUSB_USB20_BIAS_EN_OFST (17)
6281#define A60810_RG_SSUSB_USB20_SLEEP_OFST (16)
6282#define A60810_RG_SSUSB_OSC_ONLY_OFST (9)
6283#define A60810_RG_SSUSB_OSC_EN_OFST (8)
6284#define A60810_RG_SSUSB_XTALBIAS_STB_OFST (5)
6285#define A60810_RG_SSUSB_FORCE_XTALBIAS_STB_OFST (4)
6286#define A60810_RG_SSUSB_BIAS_PWD_OFST (3)
6287#define A60810_RG_SSUSB_XTAL_PWD_OFST (2)
6288#define A60810_RG_SSUSB_FORCE_BIAS_PWD_OFST (1)
6289#define A60810_RG_SSUSB_FORCE_XTAL_PWD_OFST (0)
6290
6291/* U3D_XTALCTL3 */
6292#define A60810_RG_SSUSB_XTALCTL_REV_OFST (12)
6293#define A60810_RG_SSUSB_BIASIMR_EN_OFST (11)
6294#define A60810_RG_SSUSB_FORCE_BIASIMR_EN_OFST (10)
6295#define A60810_RG_SSUSB_XTAL_RX_PWD_OFST (9)
6296#define A60810_RG_SSUSB_FRC_XTAL_RX_PWD_OFST (8)
6297#define A60810_RG_SSUSB_CKBG_PROB_SEL_OFST (6)
6298#define A60810_RG_SSUSB_XTAL_PROB_SEL_OFST (4)
6299#define A60810_RG_SSUSB_XTAL_VREGBIAS_LPF_ENB_OFST (3)
6300#define A60810_RG_SSUSB_XTAL_FRC_VREGBIAS_LPF_ENB_OFST (2)
6301#define A60810_RG_SSUSB_XTAL_VREGBIAS_PWD_OFST (1)
6302#define A60810_RG_SSUSB_XTAL_FRC_VREGBIAS_PWD_OFST (0)
6303#endif
6304
6305///////////////////////////////////////////////////////////////////////////////
6306
6307struct u3phy_info {
6308 int phy_version;
6309 int phyd_version_addr;
6310 //A60810 regs reference
6311 struct a60810_u2phy_reg_a *a60810_u2phy_reg_a;
6312 struct a60810_u3phya_reg_a *a60810_u3phya_reg_a;
6313 struct a60810_u3phya_da_reg_a *a60810_u3phya_da_reg_a;
6314 struct a60810_u3phyd_reg_a *a60810_u3phyd_reg_a;
6315 struct a60810_u3phyd_bank2_reg_a *a60810_u3phyd_bank2_reg_a;
6316 struct a60810_sifslv_chip_reg_a *a60810_sifslv_chip_reg_a;
6317 struct a60810_spllc_reg_a *a60810_spllc_reg_a;
6318 struct a60810_sifslv_fm_reg_a *a60810_sifslv_fm_reg_a;
6319 //A60931 regs reference
6320 struct a60931_u2phy_reg_a *a60931_u2phy_reg_a;
6321 struct a60931_u3phya_reg_a *a60931_u3phya_reg_a;
6322 struct a60931_u3phya_da_reg_a *a60931_u3phya_da_reg_a;
6323 struct a60931_u3phyd_reg_a *a60931_u3phyd_reg_a;
6324 struct a60931_u3phyd_bank2_reg_a *a60931_u3phyd_bank2_reg_a;
6325 struct a60931_sifslv_chip_reg_a *a60931_sifslv_chip_reg_a;
6326 struct a60931_spllc_reg_a *a60931_spllc_reg_a;
6327 struct a60931_sifslv_fm_reg_a *a60931_sifslv_fm_reg_a;
6328};
6329#endif
6330
6331///////////////////////////////////////////////////////////////////////////////
6332
6333struct fpga_phy_instance {
6334 struct phy *phy;
6335 void __iomem *i2c_base;
6336 struct dentry *dbg;
6337 struct device *dev;
6338 u32 index;
6339 u32 port;
6340 u32 u3_pclk;
6341 /*
6342 * chip id: assigned from dts, determines which phy init to be called
6343 * chip version: read from PHYD version register, sometimes mismatches
6344 * with its real chip id
6345 */
6346 u32 chip_id;
6347 u32 chip_version;
6348 char name[8];
6349 u8 type;
6350 #ifndef CONFIG_U3_PHY_GPIO_SUPPORT
6351 struct u3phy_info info;
6352 #endif
6353};
6354
6355struct fpga_u3phy {
6356 struct device *dev;
6357 void __iomem *ippc_base;
6358 struct dentry *dbg_root;
6359 struct fpga_phy_instance **phys;
6360 int nphys;
6361};
6362#endif