xref: /rk3399_ARM-atf/drivers/st/usb_dwc3/usb_dwc3_regs.h (revision c8e1a2d9d27d4f7e3a919b7994e82f2a886f3e6a)
1*867cd155SPankaj Dev /*
2*867cd155SPankaj Dev  * Copyright (c) 2015-2025, STMicroelectronics - All Rights Reserved
3*867cd155SPankaj Dev  *
4*867cd155SPankaj Dev  * SPDX-License-Identifier: BSD-3-Clause
5*867cd155SPankaj Dev  */
6*867cd155SPankaj Dev 
7*867cd155SPankaj Dev #ifndef __USB_DWC3_REGS_H
8*867cd155SPankaj Dev #define __USB_DWC3_REGS_H
9*867cd155SPankaj Dev 
10*867cd155SPankaj Dev /*
11*867cd155SPankaj Dev  * USB3 Global Register Block
12*867cd155SPankaj Dev  */
13*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0					U(0x0)
14*867cd155SPankaj Dev #define _DWC3_GSBUSCFG1					U(0x4)
15*867cd155SPankaj Dev #define _DWC3_GTXTHRCFG					U(0x8)
16*867cd155SPankaj Dev #define _DWC3_GRXTHRCFG					U(0xC)
17*867cd155SPankaj Dev #define _DWC3_GCTL					U(0x10)
18*867cd155SPankaj Dev #define _DWC3_GPMSTS					U(0x14)
19*867cd155SPankaj Dev #define _DWC3_GSTS					U(0x18)
20*867cd155SPankaj Dev #define _DWC3_GUCTL1					U(0x1C)
21*867cd155SPankaj Dev #define _DWC3_GSNPSID					U(0x20)
22*867cd155SPankaj Dev #define _DWC3_GGPIO					U(0x24)
23*867cd155SPankaj Dev #define _DWC3_GUID					U(0x28)
24*867cd155SPankaj Dev #define _DWC3_GUCTL					U(0x2C)
25*867cd155SPankaj Dev #define _DWC3_GBUSERRADDRLO				U(0x30)
26*867cd155SPankaj Dev #define _DWC3_GBUSERRADDRHI				U(0x34)
27*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO				U(0x38)
28*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPHI				U(0x3C)
29*867cd155SPankaj Dev #define _DWC3_GHWPARAMS0				U(0x40)
30*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1				U(0x44)
31*867cd155SPankaj Dev #define _DWC3_GHWPARAMS2				U(0x48)
32*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3				U(0x4C)
33*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4				U(0x50)
34*867cd155SPankaj Dev #define _DWC3_GHWPARAMS5				U(0x54)
35*867cd155SPankaj Dev #define _DWC3_GHWPARAMS6				U(0x58)
36*867cd155SPankaj Dev #define _DWC3_GHWPARAMS7				U(0x5C)
37*867cd155SPankaj Dev #define _DWC3_GDBGFIFOSPACE				U(0x60)
38*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM					U(0x64)
39*867cd155SPankaj Dev #define _DWC3_GDBGLNMCC					U(0x68)
40*867cd155SPankaj Dev #define _DWC3_GDBGBMU					U(0x6C)
41*867cd155SPankaj Dev #define _DWC3_GDBGLSPMUX_HST				U(0x70)
42*867cd155SPankaj Dev #define _DWC3_GDBGLSP					U(0x74)
43*867cd155SPankaj Dev #define _DWC3_GDBGEPINFO0				U(0x78)
44*867cd155SPankaj Dev #define _DWC3_GDBGEPINFO1				U(0x7C)
45*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO				U(0x80)
46*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSHI				U(0x84)
47*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO				U(0x88)
48*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSHI				U(0x8C)
49*867cd155SPankaj Dev #define _DWC3_GUCTL2					U(0x9C)
50*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG				U(0x100)
51*867cd155SPankaj Dev #define _DWC3_GUSB2I2CCTL				U(0x140)
52*867cd155SPankaj Dev #define _DWC3_GUSB2PHYACC_ULPI				U(0x180)
53*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL				U(0x1c0)
54*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ0				U(0x200)
55*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ1				U(0x204)
56*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ2				U(0x208)
57*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ3				U(0x20c)
58*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ4				U(0x210)
59*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ5				U(0x214)
60*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ6				U(0x218)
61*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ7				U(0x21c)
62*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ8				U(0x220)
63*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ9				U(0x224)
64*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ10				U(0x228)
65*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ11				U(0x22c)
66*867cd155SPankaj Dev #define _DWC3_GRXFIFOSIZ0				U(0x280)
67*867cd155SPankaj Dev #define _DWC3_GRXFIFOSIZ1				U(0x284)
68*867cd155SPankaj Dev #define _DWC3_GRXFIFOSIZ2				U(0x288)
69*867cd155SPankaj Dev #define _DWC3_GEVNTADRLO				U(0x300)
70*867cd155SPankaj Dev #define _DWC3_GEVNTADRHI				U(0x304)
71*867cd155SPankaj Dev #define _DWC3_GEVNTSIZ					U(0x308)
72*867cd155SPankaj Dev #define _DWC3_GEVNTCOUNT				U(0x30c)
73*867cd155SPankaj Dev #define _DWC3_GHWPARAMS8				U(0x500)
74*867cd155SPankaj Dev #define _DWC3_GTXFIFOPRIDEV				U(0x510)
75*867cd155SPankaj Dev #define _DWC3_GTXFIFOPRIHST				U(0x518)
76*867cd155SPankaj Dev #define _DWC3_GRXFIFOPRIHST				U(0x51C)
77*867cd155SPankaj Dev #define _DWC3_GDMAHLRATIO				U(0x524)
78*867cd155SPankaj Dev #define _DWC3_GFLADJ					U(0x530)
79*867cd155SPankaj Dev 
80*867cd155SPankaj Dev /* _DWC3_GSBUSCFG0 register fields */
81*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_INCRBRSTENA			BIT_32(0)
82*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_INCR4BRSTENA			BIT_32(1)
83*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_INCR8BRSTENA			BIT_32(2)
84*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_INCR16BRSTENA			BIT_32(3)
85*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_INCR32BRSTENA			BIT_32(4)
86*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_INCR64BRSTENA			BIT_32(5)
87*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_INCR128BRSTENA			BIT_32(6)
88*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_INCR256BRSTENA			BIT_32(7)
89*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_DESBIGEND			BIT_32(10)
90*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_DATBIGEND			BIT_32(11)
91*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_DESWRREQINFO_MASK		GENMASK_32(19, 16)
92*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_DESWRREQINFO_SHIFT		16
93*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_DATWRREQINFO_MASK		GENMASK_32(23, 20)
94*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_DATWRREQINFO_SHIFT		20
95*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_DESRDREQINFO_MASK		GENMASK_32(27, 24)
96*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_DESRDREQINFO_SHIFT		24
97*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_DATRDREQINFO_MASK		GENMASK_32(31, 28)
98*867cd155SPankaj Dev #define _DWC3_GSBUSCFG0_DATRDREQINFO_SHIFT		28
99*867cd155SPankaj Dev 
100*867cd155SPankaj Dev /* _DWC3_GSBUSCFG1 register fields */
101*867cd155SPankaj Dev #define _DWC3_GSBUSCFG1_PIPETRANSLIMIT_MASK		GENMASK_32(11, 8)
102*867cd155SPankaj Dev #define _DWC3_GSBUSCFG1_PIPETRANSLIMIT_SHIFT		8
103*867cd155SPankaj Dev #define _DWC3_GSBUSCFG1_EN1KPAGE			BIT_32(12)
104*867cd155SPankaj Dev 
105*867cd155SPankaj Dev /* _DWC3_GTXTHRCFG register fields */
106*867cd155SPankaj Dev #define _DWC3_GTXTHRCFG_USBMAXTXBURSTSIZE_MASK		GENMASK_32(23, 16)
107*867cd155SPankaj Dev #define _DWC3_GTXTHRCFG_USBMAXTXBURSTSIZE_SHIFT		16
108*867cd155SPankaj Dev #define _DWC3_GTXTHRCFG_USBTXPKTCNT_MASK		GENMASK_32(27, 24)
109*867cd155SPankaj Dev #define _DWC3_GTXTHRCFG_USBTXPKTCNT_SHIFT		24
110*867cd155SPankaj Dev #define _DWC3_GTXTHRCFG_USBTXPKTCNTSEL			BIT_32(29)
111*867cd155SPankaj Dev 
112*867cd155SPankaj Dev /* _DWC3_GRXTHRCFG register fields */
113*867cd155SPankaj Dev #define _DWC3_GRXTHRCFG_RESVISOCOUTSPC_MASK		GENMASK_32(12, 0)
114*867cd155SPankaj Dev #define _DWC3_GRXTHRCFG_RESVISOCOUTSPC_SHIFT		0
115*867cd155SPankaj Dev #define _DWC3_GRXTHRCFG_USBMAXRXBURSTSIZE_MASK		GENMASK_32(23, 19)
116*867cd155SPankaj Dev #define _DWC3_GRXTHRCFG_USBMAXRXBURSTSIZE_SHIFT		19
117*867cd155SPankaj Dev #define _DWC3_GRXTHRCFG_USBRXPKTCNT_MASK		GENMASK_32(27, 24)
118*867cd155SPankaj Dev #define _DWC3_GRXTHRCFG_USBRXPKTCNT_SHIFT		24
119*867cd155SPankaj Dev #define _DWC3_GRXTHRCFG_USBRXPKTCNTSEL			BIT_32(29)
120*867cd155SPankaj Dev 
121*867cd155SPankaj Dev /* _DWC3_GCTL register fields */
122*867cd155SPankaj Dev #define _DWC3_GCTL_DSBLCLKGTNG				BIT_32(0)
123*867cd155SPankaj Dev #define _DWC3_GCTL_GBLHIBERNATIONEN			BIT_32(1)
124*867cd155SPankaj Dev #define _DWC3_GCTL_U2EXIT_LFPS				BIT_32(2)
125*867cd155SPankaj Dev #define _DWC3_GCTL_DISSCRAMBLE				BIT_32(3)
126*867cd155SPankaj Dev #define _DWC3_GCTL_SCALEDOWN_MASK			GENMASK_32(5, 4)
127*867cd155SPankaj Dev #define _DWC3_GCTL_SCALEDOWN_SHIFT			4
128*867cd155SPankaj Dev #define _DWC3_GCTL_RAMCLKSEL_MASK			GENMASK_32(7, 6)
129*867cd155SPankaj Dev #define _DWC3_GCTL_RAMCLKSEL_SHIFT			6
130*867cd155SPankaj Dev #define _DWC3_GCTL_DEBUGATTACH				BIT_32(8)
131*867cd155SPankaj Dev #define _DWC3_GCTL_U1U2TIMERSCALE			BIT_32(9)
132*867cd155SPankaj Dev #define _DWC3_GCTL_SOFITPSYNC				BIT_32(10)
133*867cd155SPankaj Dev #define _DWC3_GCTL_CORESOFTRESET			BIT_32(11)
134*867cd155SPankaj Dev #define _DWC3_GCTL_PRTCAPDIR_MASK			GENMASK_32(13, 12)
135*867cd155SPankaj Dev #define _DWC3_GCTL_PRTCAPDIR_SHIFT			12
136*867cd155SPankaj Dev #define _DWC3_GCTL_FRMSCLDWN_MASK			GENMASK_32(15, 14)
137*867cd155SPankaj Dev #define _DWC3_GCTL_FRMSCLDWN_SHIFT			14
138*867cd155SPankaj Dev #define _DWC3_GCTL_U2RSTECN				BIT_32(16)
139*867cd155SPankaj Dev #define _DWC3_GCTL_BYPSSETADDR				BIT_32(17)
140*867cd155SPankaj Dev #define _DWC3_GCTL_MASTERFILTBYPASS			BIT_32(18)
141*867cd155SPankaj Dev #define _DWC3_GCTL_PWRDNSCALE_MASK			GENMASK_32(31, 19)
142*867cd155SPankaj Dev #define _DWC3_GCTL_PWRDNSCALE_SHIFT			19
143*867cd155SPankaj Dev 
144*867cd155SPankaj Dev /* _DWC3_GPMSTS register fields */
145*867cd155SPankaj Dev #define _DWC3_GPMSTS_U2WAKEUP_MASK			GENMASK_32(9, 0)
146*867cd155SPankaj Dev #define _DWC3_GPMSTS_U2WAKEUP_SHIFT			0
147*867cd155SPankaj Dev #define _DWC3_GPMSTS_U3WAKEUP_MASK			GENMASK_32(16, 12)
148*867cd155SPankaj Dev #define _DWC3_GPMSTS_U3WAKEUP_SHIFT			12
149*867cd155SPankaj Dev #define _DWC3_GPMSTS_PORTSEL_MASK			GENMASK_32(31, 28)
150*867cd155SPankaj Dev #define _DWC3_GPMSTS_PORTSEL_SHIFT			28
151*867cd155SPankaj Dev 
152*867cd155SPankaj Dev /* _DWC3_GSTS register fields */
153*867cd155SPankaj Dev #define _DWC3_GSTS_CURMOD_MASK				GENMASK_32(1, 0)
154*867cd155SPankaj Dev #define _DWC3_GSTS_CURMOD_SHIFT				0
155*867cd155SPankaj Dev #define _DWC3_GSTS_BUSERRADDRVLD			BIT_32(4)
156*867cd155SPankaj Dev #define _DWC3_GSTS_CSRTIMEOUT				BIT_32(5)
157*867cd155SPankaj Dev #define _DWC3_GSTS_DEVICE_IP				BIT_32(6)
158*867cd155SPankaj Dev #define _DWC3_GSTS_HOST_IP				BIT_32(7)
159*867cd155SPankaj Dev #define _DWC3_GSTS_ADP_IP				BIT_32(8)
160*867cd155SPankaj Dev #define _DWC3_GSTS_BC_IP				BIT_32(9)
161*867cd155SPankaj Dev #define _DWC3_GSTS_OTG_IP				BIT_32(10)
162*867cd155SPankaj Dev #define _DWC3_GSTS_SSIC_IP				BIT_32(11)
163*867cd155SPankaj Dev #define _DWC3_GSTS_CBELT_MASK				GENMASK_32(31, 20)
164*867cd155SPankaj Dev #define _DWC3_GSTS_CBELT_SHIFT				20
165*867cd155SPankaj Dev 
166*867cd155SPankaj Dev /* _DWC3_GUCTL1 register fields */
167*867cd155SPankaj Dev #define _DWC3_GUCTL1_LOA_FILTER_EN			BIT_32(0)
168*867cd155SPankaj Dev #define _DWC3_GUCTL1_OVRLD_L1_SUSP_COM			BIT_32(1)
169*867cd155SPankaj Dev #define _DWC3_GUCTL1_HC_PARCHK_DISABLE			BIT_32(2)
170*867cd155SPankaj Dev #define _DWC3_GUCTL1_HC_ERRATA_ENABLE			BIT_32(3)
171*867cd155SPankaj Dev #define _DWC3_GUCTL1_L1_SUSP_THRLD_FOR_HOST_MASK	GENMASK_32(7, 4)
172*867cd155SPankaj Dev #define _DWC3_GUCTL1_L1_SUSP_THRLD_FOR_HOST_SHIFT	4
173*867cd155SPankaj Dev #define _DWC3_GUCTL1_L1_SUSP_THRLD_EN_FOR_HOST		BIT_32(8)
174*867cd155SPankaj Dev #define _DWC3_GUCTL1_DEV_HS_NYET_BULK_SPR		BIT_32(9)
175*867cd155SPankaj Dev #define _DWC3_GUCTL1_RESUME_OPMODE_HS_HOST		BIT_32(10)
176*867cd155SPankaj Dev #define _DWC3_GUCTL1_PARKMODE_DISABLE_FSLS		BIT_32(15)
177*867cd155SPankaj Dev #define _DWC3_GUCTL1_PARKMODE_DISABLE_HS		BIT_32(16)
178*867cd155SPankaj Dev #define _DWC3_GUCTL1_PARKMODE_DISABLE_SS		BIT_32(17)
179*867cd155SPankaj Dev #define _DWC3_GUCTL1_NAK_PER_ENH_HS			BIT_32(18)
180*867cd155SPankaj Dev #define _DWC3_GUCTL1_NAK_PER_ENH_FS			BIT_32(19)
181*867cd155SPankaj Dev #define _DWC3_GUCTL1_DEV_LSP_TAIL_LOCK_DIS		BIT_32(20)
182*867cd155SPankaj Dev #define _DWC3_GUCTL1_IP_GAP_ADD_ON_MASK			GENMASK_32(23, 21)
183*867cd155SPankaj Dev #define _DWC3_GUCTL1_IP_GAP_ADD_ON_SHIFT		21
184*867cd155SPankaj Dev #define _DWC3_GUCTL1_DEV_L1_EXIT_BY_HW			BIT_32(24)
185*867cd155SPankaj Dev #define _DWC3_GUCTL1_P3_IN_U2				BIT_32(25)
186*867cd155SPankaj Dev #define _DWC3_GUCTL1_DEV_FORCE_20_CLK_FOR_30_CLK	BIT_32(26)
187*867cd155SPankaj Dev #define _DWC3_GUCTL1_DEV_TRB_OUT_SPR_IND		BIT_32(27)
188*867cd155SPankaj Dev #define _DWC3_GUCTL1_TX_IPGAP_LINECHECK_DIS		BIT_32(28)
189*867cd155SPankaj Dev #define _DWC3_GUCTL1_FILTER_SE0_FSLS_EOP		BIT_32(29)
190*867cd155SPankaj Dev #define _DWC3_GUCTL1_DS_RXDET_MAX_TOUT_CTRL		BIT_32(30)
191*867cd155SPankaj Dev #define _DWC3_GUCTL1_DEV_DECOUPLE_L1L2_EVT		BIT_32(31)
192*867cd155SPankaj Dev 
193*867cd155SPankaj Dev /* _DWC3_GGPIO register fields */
194*867cd155SPankaj Dev #define _DWC3_GGPIO_GPI_MASK				GENMASK_32(15, 0)
195*867cd155SPankaj Dev #define _DWC3_GGPIO_GPI_SHIFT				0
196*867cd155SPankaj Dev #define _DWC3_GGPIO_GPO_MASK				GENMASK_32(31, 16)
197*867cd155SPankaj Dev #define _DWC3_GGPIO_GPO_SHIFT				16
198*867cd155SPankaj Dev 
199*867cd155SPankaj Dev /* _DWC3_GUCTL register fields */
200*867cd155SPankaj Dev #define _DWC3_GUCTL_DTFT_MASK				GENMASK_32(8, 0)
201*867cd155SPankaj Dev #define _DWC3_GUCTL_DTFT_SHIFT				0
202*867cd155SPankaj Dev #define _DWC3_GUCTL_DTCT_MASK				GENMASK_32(10, 9)
203*867cd155SPankaj Dev #define _DWC3_GUCTL_DTCT_SHIFT				9
204*867cd155SPankaj Dev #define _DWC3_GUCTL_INSRTEXTRFSBODI			BIT_32(11)
205*867cd155SPankaj Dev #define _DWC3_GUCTL_EXTCAPSUPPTEN			BIT_32(12)
206*867cd155SPankaj Dev #define _DWC3_GUCTL_ENOVERLAPCHK			BIT_32(13)
207*867cd155SPankaj Dev #define _DWC3_GUCTL_USBHSTINAUTORETRYEN			BIT_32(14)
208*867cd155SPankaj Dev #define _DWC3_GUCTL_RESBWHSEPS				BIT_32(16)
209*867cd155SPankaj Dev #define _DWC3_GUCTL_SPRSCTRLTRANSEN			BIT_32(17)
210*867cd155SPankaj Dev #define _DWC3_GUCTL_NOEXTRDL				BIT_32(21)
211*867cd155SPankaj Dev #define _DWC3_GUCTL_REFCLKPER_MASK			GENMASK_32(31, 22)
212*867cd155SPankaj Dev #define _DWC3_GUCTL_REFCLKPER_SHIFT			22
213*867cd155SPankaj Dev 
214*867cd155SPankaj Dev /* _DWC3_GPRTBIMAPLO register fields */
215*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM1_MASK			GENMASK_32(3, 0)
216*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM1_SHIFT			0
217*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM2_MASK			GENMASK_32(7, 4)
218*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM2_SHIFT			4
219*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM3_MASK			GENMASK_32(11, 8)
220*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM3_SHIFT			8
221*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM4_MASK			GENMASK_32(15, 12)
222*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM4_SHIFT			12
223*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM5_MASK			GENMASK_32(19, 16)
224*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM5_SHIFT			16
225*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM6_MASK			GENMASK_32(23, 20)
226*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM6_SHIFT			20
227*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM7_MASK			GENMASK_32(27, 24)
228*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM7_SHIFT			24
229*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM8_MASK			GENMASK_32(31, 28)
230*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPLO_BINUM8_SHIFT			28
231*867cd155SPankaj Dev 
232*867cd155SPankaj Dev /* _DWC3_GPRTBIMAPHI register fields */
233*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPHI_BINUM9_MASK			GENMASK_32(3, 0)
234*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPHI_BINUM9_SHIFT			0
235*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPHI_BINUM10_MASK			GENMASK_32(7, 4)
236*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPHI_BINUM10_SHIFT			4
237*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPHI_BINUM11_MASK			GENMASK_32(11, 8)
238*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPHI_BINUM11_SHIFT			8
239*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPHI_BINUM12_MASK			GENMASK_32(15, 12)
240*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPHI_BINUM12_SHIFT			12
241*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPHI_BINUM13_MASK			GENMASK_32(19, 16)
242*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPHI_BINUM13_SHIFT			16
243*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPHI_BINUM14_MASK			GENMASK_32(23, 20)
244*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPHI_BINUM14_SHIFT			20
245*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPHI_BINUM15_MASK			GENMASK_32(27, 24)
246*867cd155SPankaj Dev #define _DWC3_GPRTBIMAPHI_BINUM15_SHIFT			24
247*867cd155SPankaj Dev 
248*867cd155SPankaj Dev /* _DWC3_GHWPARAMS0 register fields */
249*867cd155SPankaj Dev #define _DWC3_GHWPARAMS0_GHWPARAMS0_2_0_MASK		GENMASK_32(2, 0)
250*867cd155SPankaj Dev #define _DWC3_GHWPARAMS0_GHWPARAMS0_2_0_SHIFT		0
251*867cd155SPankaj Dev #define _DWC3_GHWPARAMS0_GHWPARAMS0_5_3_MASK		GENMASK_32(5, 3)
252*867cd155SPankaj Dev #define _DWC3_GHWPARAMS0_GHWPARAMS0_5_3_SHIFT		3
253*867cd155SPankaj Dev #define _DWC3_GHWPARAMS0_GHWPARAMS0_7_6_MASK		GENMASK_32(7, 6)
254*867cd155SPankaj Dev #define _DWC3_GHWPARAMS0_GHWPARAMS0_7_6_SHIFT		6
255*867cd155SPankaj Dev #define _DWC3_GHWPARAMS0_GHWPARAMS0_15_8_MASK		GENMASK_32(15, 8)
256*867cd155SPankaj Dev #define _DWC3_GHWPARAMS0_GHWPARAMS0_15_8_SHIFT		8
257*867cd155SPankaj Dev #define _DWC3_GHWPARAMS0_GHWPARAMS0_23_16_MASK		GENMASK_32(23, 16)
258*867cd155SPankaj Dev #define _DWC3_GHWPARAMS0_GHWPARAMS0_23_16_SHIFT		16
259*867cd155SPankaj Dev #define _DWC3_GHWPARAMS0_GHWPARAMS0_31_24_MASK		GENMASK_32(31, 24)
260*867cd155SPankaj Dev #define _DWC3_GHWPARAMS0_GHWPARAMS0_31_24_SHIFT		24
261*867cd155SPankaj Dev 
262*867cd155SPankaj Dev /* _DWC3_GHWPARAMS1 register fields */
263*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_2_0_MASK		GENMASK_32(2, 0)
264*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_2_0_SHIFT		0
265*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_5_3_MASK		GENMASK_32(5, 3)
266*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_5_3_SHIFT		3
267*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_8_6_MASK		GENMASK_32(8, 6)
268*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_8_6_SHIFT		6
269*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_11_9_MASK		GENMASK_32(11, 9)
270*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_11_9_SHIFT		9
271*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_14_12_MASK		GENMASK_32(14, 12)
272*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_14_12_SHIFT		12
273*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_20_15_MASK		GENMASK_32(20, 15)
274*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_20_15_SHIFT		15
275*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_22_21_MASK		GENMASK_32(22, 21)
276*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_22_21_SHIFT		21
277*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_23			BIT_32(23)
278*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_25_24_MASK		GENMASK_32(25, 24)
279*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_25_24_SHIFT		24
280*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_26			BIT_32(26)
281*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_27			BIT_32(27)
282*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_28			BIT_32(28)
283*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_29			BIT_32(29)
284*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_30			BIT_32(30)
285*867cd155SPankaj Dev #define _DWC3_GHWPARAMS1_GHWPARAMS1_31			BIT_32(31)
286*867cd155SPankaj Dev 
287*867cd155SPankaj Dev /* _DWC3_GHWPARAMS3 register fields */
288*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_1_0_MASK		GENMASK_32(1, 0)
289*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_1_0_SHIFT		0
290*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_3_2_MASK		GENMASK_32(3, 2)
291*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_3_2_SHIFT		2
292*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_5_4_MASK		GENMASK_32(5, 4)
293*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_5_4_SHIFT		4
294*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_7_6_MASK		GENMASK_32(7, 6)
295*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_7_6_SHIFT		6
296*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_9_8_MASK		GENMASK_32(9, 8)
297*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_9_8_SHIFT		8
298*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_10			BIT_32(10)
299*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_11			BIT_32(11)
300*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_17_12_MASK		GENMASK_32(17, 12)
301*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_17_12_SHIFT		12
302*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_22_18_MASK		GENMASK_32(22, 18)
303*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_22_18_SHIFT		18
304*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_30_23_MASK		GENMASK_32(30, 23)
305*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_30_23_SHIFT		23
306*867cd155SPankaj Dev #define _DWC3_GHWPARAMS3_GHWPARAMS3_31			BIT_32(31)
307*867cd155SPankaj Dev 
308*867cd155SPankaj Dev /* _DWC3_GHWPARAMS4 register fields */
309*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_5_0_MASK		GENMASK_32(5, 0)
310*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_5_0_SHIFT		0
311*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_6			BIT_32(6)
312*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_8_7_MASK		GENMASK_32(8, 7)
313*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_8_7_SHIFT		7
314*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_10_9_MASK		GENMASK_32(10, 9)
315*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_10_9_SHIFT		9
316*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_11			BIT_32(11)
317*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_12			BIT_32(12)
318*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_16_13_MASK		GENMASK_32(16, 13)
319*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_16_13_SHIFT		13
320*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_20_17_MASK		GENMASK_32(20, 17)
321*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_20_17_SHIFT		17
322*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_21			BIT_32(21)
323*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_22			BIT_32(22)
324*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_23			BIT_32(23)
325*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_27_24_MASK		GENMASK_32(27, 24)
326*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_27_24_SHIFT		24
327*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_31_28_MASK		GENMASK_32(31, 28)
328*867cd155SPankaj Dev #define _DWC3_GHWPARAMS4_GHWPARAMS4_31_28_SHIFT		28
329*867cd155SPankaj Dev 
330*867cd155SPankaj Dev /* _DWC3_GHWPARAMS5 register fields */
331*867cd155SPankaj Dev #define _DWC3_GHWPARAMS5_GHWPARAMS5_3_0_MASK		GENMASK_32(3, 0)
332*867cd155SPankaj Dev #define _DWC3_GHWPARAMS5_GHWPARAMS5_3_0_SHIFT		0
333*867cd155SPankaj Dev #define _DWC3_GHWPARAMS5_GHWPARAMS5_9_4_MASK		GENMASK_32(9, 4)
334*867cd155SPankaj Dev #define _DWC3_GHWPARAMS5_GHWPARAMS5_9_4_SHIFT		4
335*867cd155SPankaj Dev #define _DWC3_GHWPARAMS5_GHWPARAMS5_15_10_MASK		GENMASK_32(15, 10)
336*867cd155SPankaj Dev #define _DWC3_GHWPARAMS5_GHWPARAMS5_15_10_SHIFT		10
337*867cd155SPankaj Dev #define _DWC3_GHWPARAMS5_GHWPARAMS5_21_16_MASK		GENMASK_32(21, 16)
338*867cd155SPankaj Dev #define _DWC3_GHWPARAMS5_GHWPARAMS5_21_16_SHIFT		16
339*867cd155SPankaj Dev #define _DWC3_GHWPARAMS5_GHWPARAMS5_27_22_MASK		GENMASK_32(27, 22)
340*867cd155SPankaj Dev #define _DWC3_GHWPARAMS5_GHWPARAMS5_27_22_SHIFT		22
341*867cd155SPankaj Dev #define _DWC3_GHWPARAMS5_GHWPARAMS5_31_28_MASK		GENMASK_32(31, 28)
342*867cd155SPankaj Dev #define _DWC3_GHWPARAMS5_GHWPARAMS5_31_28_SHIFT		28
343*867cd155SPankaj Dev 
344*867cd155SPankaj Dev /* _DWC3_GHWPARAMS6 register fields */
345*867cd155SPankaj Dev #define _DWC3_GHWPARAMS6_GHWPARAMS6_5_0_MASK		GENMASK_32(5, 0)
346*867cd155SPankaj Dev #define _DWC3_GHWPARAMS6_GHWPARAMS6_5_0_SHIFT		0
347*867cd155SPankaj Dev #define _DWC3_GHWPARAMS6_GHWPARAMS6_6			BIT_32(6)
348*867cd155SPankaj Dev #define _DWC3_GHWPARAMS6_GHWPARAMS6_7			BIT_32(7)
349*867cd155SPankaj Dev #define _DWC3_GHWPARAMS6_GHWPARAMS6_9_8_MASK		GENMASK_32(9, 8)
350*867cd155SPankaj Dev #define _DWC3_GHWPARAMS6_GHWPARAMS6_9_8_SHIFT		8
351*867cd155SPankaj Dev #define _DWC3_GHWPARAMS6_SRPSUPPORT			BIT_32(10)
352*867cd155SPankaj Dev #define _DWC3_GHWPARAMS6_HNPSUPPORT			BIT_32(11)
353*867cd155SPankaj Dev #define _DWC3_GHWPARAMS6_ADPSUPPORT			BIT_32(12)
354*867cd155SPankaj Dev #define _DWC3_GHWPARAMS6_OTG_SS_SUPPORT			BIT_32(13)
355*867cd155SPankaj Dev #define _DWC3_GHWPARAMS6_BCSUPPORT			BIT_32(14)
356*867cd155SPankaj Dev #define _DWC3_GHWPARAMS6_BUSFLTRSSUPPORT		BIT_32(15)
357*867cd155SPankaj Dev #define _DWC3_GHWPARAMS6_GHWPARAMS6_31_16_MASK		GENMASK_32(31, 16)
358*867cd155SPankaj Dev #define _DWC3_GHWPARAMS6_GHWPARAMS6_31_16_SHIFT		16
359*867cd155SPankaj Dev 
360*867cd155SPankaj Dev /* _DWC3_GHWPARAMS7 register fields */
361*867cd155SPankaj Dev #define _DWC3_GHWPARAMS7_GHWPARAMS7_15_0_MASK		GENMASK_32(15, 0)
362*867cd155SPankaj Dev #define _DWC3_GHWPARAMS7_GHWPARAMS7_15_0_SHIFT		0
363*867cd155SPankaj Dev #define _DWC3_GHWPARAMS7_GHWPARAMS7_31_16_MASK		GENMASK_32(31, 16)
364*867cd155SPankaj Dev #define _DWC3_GHWPARAMS7_GHWPARAMS7_31_16_SHIFT		16
365*867cd155SPankaj Dev 
366*867cd155SPankaj Dev /* _DWC3_GDBGFIFOSPACE register fields */
367*867cd155SPankaj Dev #define _DWC3_GDBGFIFOSPACE_FIFO_QUEUE_SELECT_MASK	GENMASK_32(8, 0)
368*867cd155SPankaj Dev #define _DWC3_GDBGFIFOSPACE_FIFO_QUEUE_SELECT_SHIFT	0
369*867cd155SPankaj Dev #define _DWC3_GDBGFIFOSPACE_SPACE_AVAILABLE_MASK	GENMASK_32(31, 16)
370*867cd155SPankaj Dev #define _DWC3_GDBGFIFOSPACE_SPACE_AVAILABLE_SHIFT	16
371*867cd155SPankaj Dev 
372*867cd155SPankaj Dev /* _DWC3_GDBGLTSSM register fields */
373*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_TXONESZEROS			BIT_32(0)
374*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_RXTERMINATION			BIT_32(1)
375*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_TXSWING				BIT_32(2)
376*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_LTDBCLKSTATE_MASK		GENMASK_32(5, 3)
377*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_LTDBCLKSTATE_SHIFT		3
378*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_TXDEEMPHASIS_MASK		GENMASK_32(7, 6)
379*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_TXDEEMPHASIS_SHIFT		6
380*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_RXEQTRAIN			BIT_32(8)
381*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_POWERDOWN_MASK			GENMASK_32(10, 9)
382*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_POWERDOWN_SHIFT			9
383*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_LTDBPHYCMDSTATE_MASK		GENMASK_32(13, 11)
384*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_LTDBPHYCMDSTATE_SHIFT		11
385*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_TXDETRXLOOPBACK			BIT_32(14)
386*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_RXPOLARITY			BIT_32(15)
387*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_TXELECLDLE			BIT_32(16)
388*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_ELASTICBUFFERMODE		BIT_32(17)
389*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_LTDBSUBSTATE_MASK		GENMASK_32(21, 18)
390*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_LTDBSUBSTATE_SHIFT		18
391*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_LTDBLINKSTATE_MASK		GENMASK_32(25, 22)
392*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_LTDBLINKSTATE_SHIFT		22
393*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_LTDBTIMEOUT			BIT_32(26)
394*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_PRTDIRECTION			BIT_32(27)
395*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_X3_DS_HOST_SHUTDOWN		BIT_32(28)
396*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_X3_XS_SWAPPING			BIT_32(29)
397*867cd155SPankaj Dev #define _DWC3_GDBGLTSSM_RXELECIDLE			BIT_32(30)
398*867cd155SPankaj Dev 
399*867cd155SPankaj Dev /* _DWC3_GDBGLNMCC register fields */
400*867cd155SPankaj Dev #define _DWC3_GDBGLNMCC_LNMCC_BERC_MASK			GENMASK_32(8, 0)
401*867cd155SPankaj Dev #define _DWC3_GDBGLNMCC_LNMCC_BERC_SHIFT		0
402*867cd155SPankaj Dev 
403*867cd155SPankaj Dev /* _DWC3_GDBGBMU register fields */
404*867cd155SPankaj Dev #define _DWC3_GDBGBMU_BMU_CCU_MASK			GENMASK_32(3, 0)
405*867cd155SPankaj Dev #define _DWC3_GDBGBMU_BMU_CCU_SHIFT			0
406*867cd155SPankaj Dev #define _DWC3_GDBGBMU_BMU_DCU_MASK			GENMASK_32(7, 4)
407*867cd155SPankaj Dev #define _DWC3_GDBGBMU_BMU_DCU_SHIFT			4
408*867cd155SPankaj Dev #define _DWC3_GDBGBMU_BMU_BCU_MASK			GENMASK_32(31, 8)
409*867cd155SPankaj Dev #define _DWC3_GDBGBMU_BMU_BCU_SHIFT			8
410*867cd155SPankaj Dev 
411*867cd155SPankaj Dev /* _DWC3_GDBGLSPMUX_HST register fields */
412*867cd155SPankaj Dev #define _DWC3_GDBGLSPMUX_HST_HOSTSELECT_MASK		GENMASK_32(13, 0)
413*867cd155SPankaj Dev #define _DWC3_GDBGLSPMUX_HST_HOSTSELECT_SHIFT		0
414*867cd155SPankaj Dev #define _DWC3_GDBGLSPMUX_HST_LOGIC_ANALYZER_TRACE_MASK	GENMASK_32(23, 16)
415*867cd155SPankaj Dev #define _DWC3_GDBGLSPMUX_HST_LOGIC_ANALYZER_TRACE_SHIFT	16
416*867cd155SPankaj Dev 
417*867cd155SPankaj Dev /* _DWC3_GPRTBIMAP_HSLO register fields */
418*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM1_MASK		GENMASK_32(3, 0)
419*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM1_SHIFT		0
420*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM2_MASK		GENMASK_32(7, 4)
421*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM2_SHIFT		4
422*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM3_MASK		GENMASK_32(11, 8)
423*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM3_SHIFT		8
424*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM4_MASK		GENMASK_32(15, 12)
425*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM4_SHIFT		12
426*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM5_MASK		GENMASK_32(19, 16)
427*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM5_SHIFT		16
428*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM6_MASK		GENMASK_32(23, 20)
429*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM6_SHIFT		20
430*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM7_MASK		GENMASK_32(27, 24)
431*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM7_SHIFT		24
432*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM8_MASK		GENMASK_32(31, 28)
433*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSLO_BINUM8_SHIFT		28
434*867cd155SPankaj Dev 
435*867cd155SPankaj Dev /* _DWC3_GPRTBIMAP_HSHI register fields */
436*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSHI_BINUM9_MASK		GENMASK_32(3, 0)
437*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSHI_BINUM9_SHIFT		0
438*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSHI_BINUM10_MASK		GENMASK_32(7, 4)
439*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSHI_BINUM10_SHIFT		4
440*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSHI_BINUM11_MASK		GENMASK_32(11, 8)
441*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSHI_BINUM11_SHIFT		8
442*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSHI_BINUM12_MASK		GENMASK_32(15, 12)
443*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSHI_BINUM12_SHIFT		12
444*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSHI_BINUM13_MASK		GENMASK_32(19, 16)
445*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSHI_BINUM13_SHIFT		16
446*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSHI_BINUM14_MASK		GENMASK_32(23, 20)
447*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSHI_BINUM14_SHIFT		20
448*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSHI_BINUM15_MASK		GENMASK_32(27, 24)
449*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_HSHI_BINUM15_SHIFT		24
450*867cd155SPankaj Dev 
451*867cd155SPankaj Dev /* _DWC3_GPRTBIMAP_FSLO register fields */
452*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM1_MASK		GENMASK_32(3, 0)
453*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM1_SHIFT		0
454*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM2_MASK		GENMASK_32(7, 4)
455*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM2_SHIFT		4
456*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM3_MASK		GENMASK_32(11, 8)
457*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM3_SHIFT		8
458*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM4_MASK		GENMASK_32(15, 12)
459*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM4_SHIFT		12
460*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM5_MASK		GENMASK_32(19, 16)
461*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM5_SHIFT		16
462*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM6_MASK		GENMASK_32(23, 20)
463*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM6_SHIFT		20
464*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM7_MASK		GENMASK_32(27, 24)
465*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM7_SHIFT		24
466*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM8_MASK		GENMASK_32(31, 28)
467*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSLO_BINUM8_SHIFT		28
468*867cd155SPankaj Dev 
469*867cd155SPankaj Dev /* _DWC3_GPRTBIMAP_FSHI register fields */
470*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSHI_BINUM9_MASK		GENMASK_32(3, 0)
471*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSHI_BINUM9_SHIFT		0
472*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSHI_BINUM10_MASK		GENMASK_32(7, 4)
473*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSHI_BINUM10_SHIFT		4
474*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSHI_BINUM11_MASK		GENMASK_32(11, 8)
475*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSHI_BINUM11_SHIFT		8
476*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSHI_BINUM12_MASK		GENMASK_32(15, 12)
477*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSHI_BINUM12_SHIFT		12
478*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSHI_BINUM13_MASK		GENMASK_32(19, 16)
479*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSHI_BINUM13_SHIFT		16
480*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSHI_BINUM14_MASK		GENMASK_32(23, 20)
481*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSHI_BINUM14_SHIFT		20
482*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSHI_BINUM15_MASK		GENMASK_32(27, 24)
483*867cd155SPankaj Dev #define _DWC3_GPRTBIMAP_FSHI_BINUM15_SHIFT		24
484*867cd155SPankaj Dev 
485*867cd155SPankaj Dev /* _DWC3_GUCTL2 register fields */
486*867cd155SPankaj Dev #define _DWC3_GUCTL2_TXPINGDURATION_MASK		GENMASK_32(4, 0)
487*867cd155SPankaj Dev #define _DWC3_GUCTL2_TXPINGDURATION_SHIFT		0
488*867cd155SPankaj Dev #define _DWC3_GUCTL2_RXPINGDURATION_MASK		GENMASK_32(10, 5)
489*867cd155SPankaj Dev #define _DWC3_GUCTL2_RXPINGDURATION_SHIFT		5
490*867cd155SPankaj Dev #define _DWC3_GUCTL2_DISABLECFC				BIT_32(11)
491*867cd155SPankaj Dev #define _DWC3_GUCTL2_ENABLEEPCACHEEVICT			BIT_32(12)
492*867cd155SPankaj Dev #define _DWC3_GUCTL2_RST_ACTBITLATER			BIT_32(14)
493*867cd155SPankaj Dev #define _DWC3_GUCTL2_NOLOWPWRDUR_MASK			GENMASK_32(18, 15)
494*867cd155SPankaj Dev #define _DWC3_GUCTL2_NOLOWPWRDUR_SHIFT			15
495*867cd155SPankaj Dev #define _DWC3_GUCTL2_EN_HP_PM_TIMER_MASK		GENMASK_32(25, 19)
496*867cd155SPankaj Dev #define _DWC3_GUCTL2_EN_HP_PM_TIMER_SHIFT		19
497*867cd155SPankaj Dev 
498*867cd155SPankaj Dev /* _DWC3_GTXFIFOPRIDEV register fields */
499*867cd155SPankaj Dev #define _DWC3_GTXFIFOPRIDEV_GTXFIFOPRIDEV_MASK		GENMASK_32(11, 0)
500*867cd155SPankaj Dev #define _DWC3_GTXFIFOPRIDEV_GTXFIFOPRIDEV_SHIFT		0
501*867cd155SPankaj Dev 
502*867cd155SPankaj Dev /* _DWC3_GTXFIFOPRIHST register fields */
503*867cd155SPankaj Dev #define _DWC3_GTXFIFOPRIHST_GTXFIFOPRIHST_MASK		GENMASK_32(2, 0)
504*867cd155SPankaj Dev #define _DWC3_GTXFIFOPRIHST_GTXFIFOPRIHST_SHIFT		0
505*867cd155SPankaj Dev 
506*867cd155SPankaj Dev /* _DWC3_GRXFIFOPRIHST register fields */
507*867cd155SPankaj Dev #define _DWC3_GRXFIFOPRIHST_GRXFIFOPRIHST_MASK		GENMASK_32(2, 0)
508*867cd155SPankaj Dev #define _DWC3_GRXFIFOPRIHST_GRXFIFOPRIHST_SHIFT		0
509*867cd155SPankaj Dev 
510*867cd155SPankaj Dev /* _DWC3_GDMAHLRATIO register fields */
511*867cd155SPankaj Dev #define _DWC3_GDMAHLRATIO_HSTTXFIFO_MASK		GENMASK_32(4, 0)
512*867cd155SPankaj Dev #define _DWC3_GDMAHLRATIO_HSTTXFIFO_SHIFT		0
513*867cd155SPankaj Dev #define _DWC3_GDMAHLRATIO_HSTRXFIFO_MASK		GENMASK_32(12, 8)
514*867cd155SPankaj Dev #define _DWC3_GDMAHLRATIO_HSTRXFIFO_SHIFT		8
515*867cd155SPankaj Dev 
516*867cd155SPankaj Dev /* _DWC3_GFLADJ register fields */
517*867cd155SPankaj Dev #define _DWC3_GFLADJ_GFLADJ_30MHZ_MASK			GENMASK_32(5, 0)
518*867cd155SPankaj Dev #define _DWC3_GFLADJ_GFLADJ_30MHZ_SHIFT			0
519*867cd155SPankaj Dev #define _DWC3_GFLADJ_GFLADJ_30MHZ_SDBND_SEL		BIT_32(7)
520*867cd155SPankaj Dev #define _DWC3_GFLADJ_GFLADJ_REFCLK_FLADJ_MASK		GENMASK_32(21, 8)
521*867cd155SPankaj Dev #define _DWC3_GFLADJ_GFLADJ_REFCLK_FLADJ_SHIFT		8
522*867cd155SPankaj Dev #define _DWC3_GFLADJ_GFLADJ_REFCLK_LPM_SEL		BIT_32(23)
523*867cd155SPankaj Dev #define _DWC3_GFLADJ_GFLADJ_REFCLK_240MHZ_DECR_MASK	GENMASK_32(30, 24)
524*867cd155SPankaj Dev #define _DWC3_GFLADJ_GFLADJ_REFCLK_240MHZ_DECR_SHIFT	24
525*867cd155SPankaj Dev #define _DWC3_GFLADJ_GFLADJ_REFCLK_240MHZDECR_PLS1	BIT_32(31)
526*867cd155SPankaj Dev 
527*867cd155SPankaj Dev /* _DWC3_GUSB2PHYCFG register fields */
528*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_TOUTCAL_MASK			GENMASK_32(2, 0)
529*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_TOUTCAL_SHIFT			0
530*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_PHYIF				BIT_32(3)
531*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_ULPI_UTMI_SEL			BIT_32(4)
532*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_FSINTF			BIT_32(5)
533*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_SUSPENDUSB20			BIT_32(6)
534*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_PHYSEL			BIT_32(7)
535*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_ENBLSLPM			BIT_32(8)
536*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_XCVRDLY			BIT_32(9)
537*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_USBTRDTIM_MASK		GENMASK_32(13, 10)
538*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_USBTRDTIM_SHIFT		10
539*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_ULPIAUTORES			BIT_32(15)
540*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_ULPIEXTVBUSDRV		BIT_32(17)
541*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_ULPIEXTVBUSINDIACTOR		BIT_32(18)
542*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_LSIPD_MASK			GENMASK_32(21, 19)
543*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_LSIPD_SHIFT			19
544*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_LSTRD_MASK			GENMASK_32(24, 22)
545*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_LSTRD_SHIFT			22
546*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_INV_SEL_HSIC			BIT_32(26)
547*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_HSIC_CON_WIDTH_ADJ_MASK	GENMASK_32(28, 27)
548*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_HSIC_CON_WIDTH_ADJ_SHIFT	27
549*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_ULPI_LPM_WITH_OPMODE_CHK	BIT_32(29)
550*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_U2_FREECLK_EXISTS		BIT_32(30)
551*867cd155SPankaj Dev #define _DWC3_GUSB2PHYCFG_PHYSOFTRST			BIT_32(31)
552*867cd155SPankaj Dev 
553*867cd155SPankaj Dev /* _DWC3_GUSB2PHYACC_ULPI register fields */
554*867cd155SPankaj Dev #define _DWC3_GUSB2PHYACC_ULPI_REGDATA_MASK		GENMASK_32(7, 0)
555*867cd155SPankaj Dev #define _DWC3_GUSB2PHYACC_ULPI_REGDATA_SHIFT		0
556*867cd155SPankaj Dev #define _DWC3_GUSB2PHYACC_ULPI_EXTREGADDR_MASK		GENMASK_32(15, 8)
557*867cd155SPankaj Dev #define _DWC3_GUSB2PHYACC_ULPI_EXTREGADDR_SHIFT		8
558*867cd155SPankaj Dev #define _DWC3_GUSB2PHYACC_ULPI_REGADDR_MASK		GENMASK_32(21, 16)
559*867cd155SPankaj Dev #define _DWC3_GUSB2PHYACC_ULPI_REGADDR_SHIFT		16
560*867cd155SPankaj Dev #define _DWC3_GUSB2PHYACC_ULPI_REGWR			BIT_32(22)
561*867cd155SPankaj Dev #define _DWC3_GUSB2PHYACC_ULPI_VSTSBSY			BIT_32(23)
562*867cd155SPankaj Dev #define _DWC3_GUSB2PHYACC_ULPI_VSTSDONE			BIT_32(24)
563*867cd155SPankaj Dev #define _DWC3_GUSB2PHYACC_ULPI_NEWREGREQ		BIT_32(25)
564*867cd155SPankaj Dev #define _DWC3_GUSB2PHYACC_ULPI_DISUIPIDRVR		BIT_32(26)
565*867cd155SPankaj Dev 
566*867cd155SPankaj Dev /* _DWC3_GUSB3PIPECTL register fields */
567*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_ELASTIC_BUFFER_MODE		BIT_32(0)
568*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_SS_TX_DE_EMPHASIS_MASK	GENMASK_32(2, 1)
569*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_SS_TX_DE_EMPHASIS_SHIFT	1
570*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_TX_MARGIN_MASK		GENMASK_32(5, 3)
571*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_TX_MARGIN_SHIFT		3
572*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_TX_SWING			BIT_32(6)
573*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_SSICEN			BIT_32(7)
574*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_RX_DETECT_TO_POLLING_LFPS_CONTROL	BIT_32(8)
575*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_LFPSFILTER			BIT_32(9)
576*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_P3EXSIGP2			BIT_32(10)
577*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_P3P2TRANOK			BIT_32(11)
578*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_LFPSP0ALGN			BIT_32(12)
579*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_SKIPRXDET			BIT_32(13)
580*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_ABORTRXDETINU2		BIT_32(14)
581*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_DATWIDTH_MASK		GENMASK_32(16, 15)
582*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_DATWIDTH_SHIFT		15
583*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_SUSPENDENABLE		BIT_32(17)
584*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_DELAYP1TRANS			BIT_32(18)
585*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_DELAYP1P2P3_MASK		GENMASK_32(21, 19)
586*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_DELAYP1P2P3_SHIFT		19
587*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_DISRXDETU3RXDET		BIT_32(22)
588*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_STARTRXDETU3RXDET		BIT_32(23)
589*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_REQUEST_P1P2P3		BIT_32(24)
590*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_U1U2EXITFAIL_TO_RECOV	BIT_32(25)
591*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_PING_ENHANCEMENT_EN		BIT_32(26)
592*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_UX_EXIT_IN_PX		BIT_32(27)
593*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_DISRXDETP3			BIT_32(28)
594*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_U2P3OK			BIT_32(29)
595*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_HSTPRTCMPL			BIT_32(30)
596*867cd155SPankaj Dev #define _DWC3_GUSB3PIPECTL_PHYSOFTRST			BIT_32(31)
597*867cd155SPankaj Dev 
598*867cd155SPankaj Dev /* _DWC3_GTXFIFOSIZ0 register fields */
599*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ0_TXFDEP_N_MASK			GENMASK_32(15, 0)
600*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ0_TXFDEP_N_SHIFT		0
601*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ0_TXFSTADDR_N_MASK		GENMASK_32(31, 16)
602*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ0_TXFSTADDR_N_SHIFT		16
603*867cd155SPankaj Dev 
604*867cd155SPankaj Dev /* _DWC3_GTXFIFOSIZ1 register fields */
605*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ1_TXFDEP_N_MASK			GENMASK_32(15, 0)
606*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ1_TXFDEP_N_SHIFT		0
607*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ1_TXFSTADDR_N_MASK		GENMASK_32(31, 16)
608*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ1_TXFSTADDR_N_SHIFT		16
609*867cd155SPankaj Dev 
610*867cd155SPankaj Dev /* _DWC3_GTXFIFOSIZ2 register fields */
611*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ2_TXFDEP_N_MASK			GENMASK_32(15, 0)
612*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ2_TXFDEP_N_SHIFT		0
613*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ2_TXFSTADDR_N_MASK		GENMASK_32(31, 16)
614*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ2_TXFSTADDR_N_SHIFT		16
615*867cd155SPankaj Dev 
616*867cd155SPankaj Dev /* _DWC3_GTXFIFOSIZ3 register fields */
617*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ3_TXFDEP_N_MASK			GENMASK_32(15, 0)
618*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ3_TXFDEP_N_SHIFT		0
619*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ3_TXFSTADDR_N_MASK		GENMASK_32(31, 16)
620*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ3_TXFSTADDR_N_SHIFT		16
621*867cd155SPankaj Dev 
622*867cd155SPankaj Dev /* _DWC3_GTXFIFOSIZ4 register fields */
623*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ4_TXFDEP_N_MASK			GENMASK_32(15, 0)
624*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ4_TXFDEP_N_SHIFT		0
625*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ4_TXFSTADDR_N_MASK		GENMASK_32(31, 16)
626*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ4_TXFSTADDR_N_SHIFT		16
627*867cd155SPankaj Dev 
628*867cd155SPankaj Dev /* _DWC3_GTXFIFOSIZ5 register fields */
629*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ5_TXFDEP_N_MASK			GENMASK_32(15, 0)
630*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ5_TXFDEP_N_SHIFT		0
631*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ5_TXFSTADDR_N_MASK		GENMASK_32(31, 16)
632*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ5_TXFSTADDR_N_SHIFT		16
633*867cd155SPankaj Dev 
634*867cd155SPankaj Dev /* _DWC3_GTXFIFOSIZ6 register fields */
635*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ6_TXFDEP_N_MASK			GENMASK_32(15, 0)
636*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ6_TXFDEP_N_SHIFT		0
637*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ6_TXFSTADDR_N_MASK		GENMASK_32(31, 16)
638*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ6_TXFSTADDR_N_SHIFT		16
639*867cd155SPankaj Dev 
640*867cd155SPankaj Dev /* _DWC3_GTXFIFOSIZ7 register fields */
641*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ7_TXFDEP_N_MASK			GENMASK_32(15, 0)
642*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ7_TXFDEP_N_SHIFT		0
643*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ7_TXFSTADDR_N_MASK		GENMASK_32(31, 16)
644*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ7_TXFSTADDR_N_SHIFT		16
645*867cd155SPankaj Dev 
646*867cd155SPankaj Dev /* _DWC3_GTXFIFOSIZ8 register fields */
647*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ8_TXFDEP_N_MASK			GENMASK_32(15, 0)
648*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ8_TXFDEP_N_SHIFT		0
649*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ8_TXFSTADDR_N_MASK		GENMASK_32(31, 16)
650*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ8_TXFSTADDR_N_SHIFT		16
651*867cd155SPankaj Dev 
652*867cd155SPankaj Dev /* _DWC3_GTXFIFOSIZ9 register fields */
653*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ9_TXFDEP_N_MASK			GENMASK_32(15, 0)
654*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ9_TXFDEP_N_SHIFT		0
655*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ9_TXFSTADDR_N_MASK		GENMASK_32(31, 16)
656*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ9_TXFSTADDR_N_SHIFT		16
657*867cd155SPankaj Dev 
658*867cd155SPankaj Dev /* _DWC3_GTXFIFOSIZ10 register fields */
659*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ10_TXFDEP_N_MASK		GENMASK_32(15, 0)
660*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ10_TXFDEP_N_SHIFT		0
661*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ10_TXFSTADDR_N_MASK		GENMASK_32(31, 16)
662*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ10_TXFSTADDR_N_SHIFT		16
663*867cd155SPankaj Dev 
664*867cd155SPankaj Dev /* _DWC3_GTXFIFOSIZ11 register fields */
665*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ11_TXFDEP_N_MASK		GENMASK_32(15, 0)
666*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ11_TXFDEP_N_SHIFT		0
667*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ11_TXFSTADDR_N_MASK		GENMASK_32(31, 16)
668*867cd155SPankaj Dev #define _DWC3_GTXFIFOSIZ11_TXFSTADDR_N_SHIFT		16
669*867cd155SPankaj Dev 
670*867cd155SPankaj Dev /* _DWC3_GRXFIFOSIZ0 register fields */
671*867cd155SPankaj Dev #define _DWC3_GRXFIFOSIZ0_RXFDEP_N_MASK			GENMASK_32(15, 0)
672*867cd155SPankaj Dev #define _DWC3_GRXFIFOSIZ0_RXFDEP_N_SHIFT		0
673*867cd155SPankaj Dev #define _DWC3_GRXFIFOSIZ0_RXFSTADDR_N_MASK		GENMASK_32(31, 16)
674*867cd155SPankaj Dev #define _DWC3_GRXFIFOSIZ0_RXFSTADDR_N_SHIFT		16
675*867cd155SPankaj Dev 
676*867cd155SPankaj Dev /* _DWC3_GRXFIFOSIZ1 register fields */
677*867cd155SPankaj Dev #define _DWC3_GRXFIFOSIZ1_RXFDEP_N_MASK			GENMASK_32(15, 0)
678*867cd155SPankaj Dev #define _DWC3_GRXFIFOSIZ1_RXFDEP_N_SHIFT		0
679*867cd155SPankaj Dev #define _DWC3_GRXFIFOSIZ1_RXFSTADDR_N_MASK		GENMASK_32(31, 16)
680*867cd155SPankaj Dev #define _DWC3_GRXFIFOSIZ1_RXFSTADDR_N_SHIFT		16
681*867cd155SPankaj Dev 
682*867cd155SPankaj Dev /* _DWC3_GRXFIFOSIZ2 register fields */
683*867cd155SPankaj Dev #define _DWC3_GRXFIFOSIZ2_RXFDEP_N_MASK			GENMASK_32(15, 0)
684*867cd155SPankaj Dev #define _DWC3_GRXFIFOSIZ2_RXFDEP_N_SHIFT		0
685*867cd155SPankaj Dev #define _DWC3_GRXFIFOSIZ2_RXFSTADDR_N_MASK		GENMASK_32(31, 16)
686*867cd155SPankaj Dev #define _DWC3_GRXFIFOSIZ2_RXFSTADDR_N_SHIFT		16
687*867cd155SPankaj Dev 
688*867cd155SPankaj Dev /* _DWC3_GEVNTSIZ register fields */
689*867cd155SPankaj Dev #define _DWC3_GEVNTSIZ_EVENTSIZ_MASK			GENMASK_32(15, 0)
690*867cd155SPankaj Dev #define _DWC3_GEVNTSIZ_EVENTSIZ_SHIFT			0
691*867cd155SPankaj Dev #define _DWC3_GEVNTSIZ_EVNTINTRPTMASK			BIT_32(31)
692*867cd155SPankaj Dev 
693*867cd155SPankaj Dev /* _DWC3_GEVNTCOUNT register fields */
694*867cd155SPankaj Dev #define _DWC3_GEVNTCOUNT_EVNTCOUNT_MASK			GENMASK_32(15, 0)
695*867cd155SPankaj Dev #define _DWC3_GEVNTCOUNT_EVNTCOUNT_SHIFT		0
696*867cd155SPankaj Dev #define _DWC3_GEVNTCOUNT_EVNT_HANDLER_BUSY		BIT_32(31)
697*867cd155SPankaj Dev 
698*867cd155SPankaj Dev /*
699*867cd155SPankaj Dev  * USB3 Device Register Block
700*867cd155SPankaj Dev  */
701*867cd155SPankaj Dev #define _DWC3_DCFG					U(0x0)
702*867cd155SPankaj Dev #define _DWC3_DCTL					U(0x4)
703*867cd155SPankaj Dev #define _DWC3_DEVTEN					U(0x8)
704*867cd155SPankaj Dev #define _DWC3_DSTS					U(0xC)
705*867cd155SPankaj Dev #define _DWC3_DGCMDPAR					U(0x10)
706*867cd155SPankaj Dev #define _DWC3_DGCMD					U(0x14)
707*867cd155SPankaj Dev #define _DWC3_DALEPENA					U(0x20)
708*867cd155SPankaj Dev #define _DWC3_DEPCMDPAR2				U(0x100)
709*867cd155SPankaj Dev #define _DWC3_DEPCMDPAR1				U(0x104)
710*867cd155SPankaj Dev #define _DWC3_DEPCMDPAR0				U(0x108)
711*867cd155SPankaj Dev #define _DWC3_DEPCMD					U(0x10c)
712*867cd155SPankaj Dev #define _DWC3_DEV_IMOD					U(0x300)
713*867cd155SPankaj Dev 
714*867cd155SPankaj Dev /* _DWC3_DCFG register fields */
715*867cd155SPankaj Dev #define _DWC3_DCFG_DEVSPD_MASK				GENMASK_32(2, 0)
716*867cd155SPankaj Dev #define _DWC3_DCFG_DEVSPD_SHIFT				0
717*867cd155SPankaj Dev #define _DWC3_DCFG_DEVADDR_MASK				GENMASK_32(9, 3)
718*867cd155SPankaj Dev #define _DWC3_DCFG_DEVADDR_SHIFT			3
719*867cd155SPankaj Dev #define _DWC3_DCFG_INTRNUM_MASK				GENMASK_32(16, 12)
720*867cd155SPankaj Dev #define _DWC3_DCFG_INTRNUM_SHIFT			12
721*867cd155SPankaj Dev #define _DWC3_DCFG_NUMP_MASK				GENMASK_32(21, 17)
722*867cd155SPankaj Dev #define _DWC3_DCFG_NUMP_SHIFT				17
723*867cd155SPankaj Dev #define _DWC3_DCFG_LPMCAP				BIT_32(22)
724*867cd155SPankaj Dev #define _DWC3_DCFG_IGNSTRMPP				BIT_32(23)
725*867cd155SPankaj Dev 
726*867cd155SPankaj Dev /* _DWC3_DCTL register fields */
727*867cd155SPankaj Dev #define _DWC3_DCTL_TSTCTL_MASK				GENMASK_32(4, 1)
728*867cd155SPankaj Dev #define _DWC3_DCTL_TSTCTL_SHIFT				1
729*867cd155SPankaj Dev #define _DWC3_DCTL_ULSTCHNGREQ_MASK			GENMASK_32(8, 5)
730*867cd155SPankaj Dev #define _DWC3_DCTL_ULSTCHNGREQ_SHIFT			5
731*867cd155SPankaj Dev #define _DWC3_DCTL_ACCEPTU1ENA				BIT_32(9)
732*867cd155SPankaj Dev #define _DWC3_DCTL_INITU1ENA				BIT_32(10)
733*867cd155SPankaj Dev #define _DWC3_DCTL_ACCEPTU2ENA				BIT_32(11)
734*867cd155SPankaj Dev #define _DWC3_DCTL_INITU2ENA				BIT_32(12)
735*867cd155SPankaj Dev #define _DWC3_DCTL_CSS					BIT_32(16)
736*867cd155SPankaj Dev #define _DWC3_DCTL_CRS					BIT_32(17)
737*867cd155SPankaj Dev #define _DWC3_DCTL_L1HIBERNATIONEN			BIT_32(18)
738*867cd155SPankaj Dev #define _DWC3_DCTL_KEEPCONNECT				BIT_32(19)
739*867cd155SPankaj Dev #define _DWC3_DCTL_LPM_NYET_THRES_MASK			GENMASK_32(23, 20)
740*867cd155SPankaj Dev #define _DWC3_DCTL_LPM_NYET_THRES_SHIFT			20
741*867cd155SPankaj Dev #define _DWC3_DCTL_HIRDTHRES_MASK			GENMASK_32(28, 24)
742*867cd155SPankaj Dev #define _DWC3_DCTL_HIRDTHRES_SHIFT			24
743*867cd155SPankaj Dev #define _DWC3_DCTL_CSFTRST				BIT_32(30)
744*867cd155SPankaj Dev #define _DWC3_DCTL_RUN_STOP				BIT_32(31)
745*867cd155SPankaj Dev 
746*867cd155SPankaj Dev /* _DWC3_DEVTEN register fields */
747*867cd155SPankaj Dev #define _DWC3_DEVTEN_DISSCONNEVTEN			BIT_32(0)
748*867cd155SPankaj Dev #define _DWC3_DEVTEN_USBRSTEVTEN			BIT_32(1)
749*867cd155SPankaj Dev #define _DWC3_DEVTEN_CONNECTDONEEVTEN			BIT_32(2)
750*867cd155SPankaj Dev #define _DWC3_DEVTEN_ULSTCNGEN				BIT_32(3)
751*867cd155SPankaj Dev #define _DWC3_DEVTEN_WKUPEVTEN				BIT_32(4)
752*867cd155SPankaj Dev #define _DWC3_DEVTEN_HIBERNATIONREQEVTEN		BIT_32(5)
753*867cd155SPankaj Dev #define _DWC3_DEVTEN_U3L2L1SUSPEN			BIT_32(6)
754*867cd155SPankaj Dev #define _DWC3_DEVTEN_SOFTEVTEN				BIT_32(7)
755*867cd155SPankaj Dev #define _DWC3_DEVTEN_L1SUSPEN				BIT_32(8)
756*867cd155SPankaj Dev #define _DWC3_DEVTEN_ERRTICERREVTEN			BIT_32(9)
757*867cd155SPankaj Dev #define _DWC3_DEVTEN_CMDCMPLTEN				BIT_32(10)
758*867cd155SPankaj Dev #define _DWC3_DEVTEN_EVNTOVERFLOWEN			BIT_32(11)
759*867cd155SPankaj Dev #define _DWC3_DEVTEN_VENDEVTSTRCVDEN			BIT_32(12)
760*867cd155SPankaj Dev #define _DWC3_DEVTEN_L1WKUPEVTEN			BIT_32(14)
761*867cd155SPankaj Dev #define _DWC3_DEVTEN_ECCERREN				BIT_32(16)
762*867cd155SPankaj Dev 
763*867cd155SPankaj Dev /* _DWC3_DSTS register fields */
764*867cd155SPankaj Dev #define _DWC3_DSTS_CONNECTSPD_MASK			GENMASK_32(2, 0)
765*867cd155SPankaj Dev #define _DWC3_DSTS_CONNECTSPD_SHIFT			0
766*867cd155SPankaj Dev #define _DWC3_DSTS_SOFFN_MASK				GENMASK_32(16, 3)
767*867cd155SPankaj Dev #define _DWC3_DSTS_SOFFN_SHIFT				3
768*867cd155SPankaj Dev #define _DWC3_DSTS_RXFIFOEMPTY				BIT_32(17)
769*867cd155SPankaj Dev #define _DWC3_DSTS_USBLNKST_MASK			GENMASK_32(21, 18)
770*867cd155SPankaj Dev #define _DWC3_DSTS_USBLNKST_SHIFT			18
771*867cd155SPankaj Dev #define _DWC3_DSTS_DEVCTRLHLT				BIT_32(22)
772*867cd155SPankaj Dev #define _DWC3_DSTS_COREIDLE				BIT_32(23)
773*867cd155SPankaj Dev #define _DWC3_DSTS_SSS					BIT_32(24)
774*867cd155SPankaj Dev #define _DWC3_DSTS_RSS					BIT_32(25)
775*867cd155SPankaj Dev #define _DWC3_DSTS_SRE					BIT_32(28)
776*867cd155SPankaj Dev #define _DWC3_DSTS_DCNRD				BIT_32(29)
777*867cd155SPankaj Dev 
778*867cd155SPankaj Dev /* _DWC3_DGCMD register fields */
779*867cd155SPankaj Dev #define _DWC3_DGCMD_CMDTYP_MASK				GENMASK_32(7, 0)
780*867cd155SPankaj Dev #define _DWC3_DGCMD_CMDTYP_SHIFT			0
781*867cd155SPankaj Dev #define _DWC3_DGCMD_CMDIOC				BIT_32(8)
782*867cd155SPankaj Dev #define _DWC3_DGCMD_CMDACT				BIT_32(10)
783*867cd155SPankaj Dev #define _DWC3_DGCMD_CMDSTATUS_MASK			GENMASK_32(15, 12)
784*867cd155SPankaj Dev #define _DWC3_DGCMD_CMDSTATUS_SHIFT			12
785*867cd155SPankaj Dev 
786*867cd155SPankaj Dev /* _DWC3_DEPCMD register fields */
787*867cd155SPankaj Dev #define _DWC3_DEPCMD_CMDTYP_MASK			GENMASK_32(3, 0)
788*867cd155SPankaj Dev #define _DWC3_DEPCMD_CMDTYP_SHIFT			0
789*867cd155SPankaj Dev #define _DWC3_DEPCMD_CMDIOC				BIT_32(8)
790*867cd155SPankaj Dev #define _DWC3_DEPCMD_CMDACT				BIT_32(10)
791*867cd155SPankaj Dev #define _DWC3_DEPCMD_HIPRI_FORCERM			BIT_32(11)
792*867cd155SPankaj Dev #define _DWC3_DEPCMD_CMDSTATUS_MASK			GENMASK_32(15, 12)
793*867cd155SPankaj Dev #define _DWC3_DEPCMD_CMDSTATUS_SHIFT			12
794*867cd155SPankaj Dev #define _DWC3_DEPCMD_COMMANDPARAM_MASK			GENMASK_32(31, 16)
795*867cd155SPankaj Dev #define _DWC3_DEPCMD_COMMANDPARAM_SHIFT			16
796*867cd155SPankaj Dev 
797*867cd155SPankaj Dev /* _DWC3_DEV_IMOD register fields */
798*867cd155SPankaj Dev #define _DWC3_DEV_IMOD_DEVICE_IMODI_MASK		GENMASK_32(15, 0)
799*867cd155SPankaj Dev #define _DWC3_DEV_IMOD_DEVICE_IMODI_SHIFT		0
800*867cd155SPankaj Dev #define _DWC3_DEV_IMOD_DEVICE_IMODC_MASK		GENMASK_32(31, 16)
801*867cd155SPankaj Dev #define _DWC3_DEV_IMOD_DEVICE_IMODC_SHIFT		16
802*867cd155SPankaj Dev 
803*867cd155SPankaj Dev /*
804*867cd155SPankaj Dev  * USB3 BC Register Block
805*867cd155SPankaj Dev  */
806*867cd155SPankaj Dev #define _DWC3_BCFG					U(0x0)
807*867cd155SPankaj Dev #define _DWC3_BCEVT					U(0x8)
808*867cd155SPankaj Dev #define _DWC3_BCEVTEN					U(0xC)
809*867cd155SPankaj Dev 
810*867cd155SPankaj Dev /* _DWC3_BCFG register fields */
811*867cd155SPankaj Dev #define _DWC3_BCFG_CHIRP_EN				BIT_32(0)
812*867cd155SPankaj Dev #define _DWC3_BCFG_IDDIG_SEL				BIT_32(1)
813*867cd155SPankaj Dev 
814*867cd155SPankaj Dev /* _DWC3_BCEVT register fields */
815*867cd155SPankaj Dev #define _DWC3_BCEVT_MULTVALIDBC_MASK			GENMASK_32(4, 0)
816*867cd155SPankaj Dev #define _DWC3_BCEVT_MULTVALIDBC_SHIFT			0
817*867cd155SPankaj Dev #define _DWC3_BCEVT_MV_CHNGEVNT				BIT_32(24)
818*867cd155SPankaj Dev 
819*867cd155SPankaj Dev /* _DWC3_BCEVTEN register fields */
820*867cd155SPankaj Dev #define _DWC3_BCEVTEN_MV_CHNGEVNTENA			BIT_32(24)
821*867cd155SPankaj Dev 
822*867cd155SPankaj Dev /*
823*867cd155SPankaj Dev  * USB3 eXtensible Host Controller Capability Register Block
824*867cd155SPankaj Dev  */
825*867cd155SPankaj Dev #define _DWC3_CAPLENGTH					U(0x0)
826*867cd155SPankaj Dev #define _DWC3_HCSPARAMS1				U(0x4)
827*867cd155SPankaj Dev #define _DWC3_HCSPARAMS2				U(0x8)
828*867cd155SPankaj Dev #define _DWC3_HCSPARAMS3				U(0xC)
829*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1				U(0x10)
830*867cd155SPankaj Dev #define _DWC3_DBOFF					U(0x14)
831*867cd155SPankaj Dev #define _DWC3_RTSOFF					U(0x18)
832*867cd155SPankaj Dev #define _DWC3_HCCPARAMS2				U(0x1C)
833*867cd155SPankaj Dev 
834*867cd155SPankaj Dev /* _DWC3_CAPLENGTH register fields */
835*867cd155SPankaj Dev #define _DWC3_CAPLENGTH_CAPLENGTH_MASK			GENMASK_32(7, 0)
836*867cd155SPankaj Dev #define _DWC3_CAPLENGTH_CAPLENGTH_SHIFT			0
837*867cd155SPankaj Dev #define _DWC3_CAPLENGTH_HCIVERSION_MASK			GENMASK_32(31, 16)
838*867cd155SPankaj Dev #define _DWC3_CAPLENGTH_HCIVERSION_SHIFT		16
839*867cd155SPankaj Dev 
840*867cd155SPankaj Dev /* _DWC3_HCSPARAMS1 register fields */
841*867cd155SPankaj Dev #define _DWC3_HCSPARAMS1_MAXSLOTS_MASK			GENMASK_32(7, 0)
842*867cd155SPankaj Dev #define _DWC3_HCSPARAMS1_MAXSLOTS_SHIFT			0
843*867cd155SPankaj Dev #define _DWC3_HCSPARAMS1_MAXINTRS_MASK			GENMASK_32(18, 8)
844*867cd155SPankaj Dev #define _DWC3_HCSPARAMS1_MAXINTRS_SHIFT			8
845*867cd155SPankaj Dev #define _DWC3_HCSPARAMS1_MAXPORTS_MASK			GENMASK_32(31, 24)
846*867cd155SPankaj Dev #define _DWC3_HCSPARAMS1_MAXPORTS_SHIFT			24
847*867cd155SPankaj Dev 
848*867cd155SPankaj Dev /* _DWC3_HCSPARAMS2 register fields */
849*867cd155SPankaj Dev #define _DWC3_HCSPARAMS2_IST_MASK			GENMASK_32(3, 0)
850*867cd155SPankaj Dev #define _DWC3_HCSPARAMS2_IST_SHIFT			0
851*867cd155SPankaj Dev #define _DWC3_HCSPARAMS2_ERSTMAX_MASK			GENMASK_32(7, 4)
852*867cd155SPankaj Dev #define _DWC3_HCSPARAMS2_ERSTMAX_SHIFT			4
853*867cd155SPankaj Dev #define _DWC3_HCSPARAMS2_MAXSCRATCHPADBUFS_HI_MASK	GENMASK_32(25, 21)
854*867cd155SPankaj Dev #define _DWC3_HCSPARAMS2_MAXSCRATCHPADBUFS_HI_SHIFT	21
855*867cd155SPankaj Dev #define _DWC3_HCSPARAMS2_SPR				BIT_32(26)
856*867cd155SPankaj Dev #define _DWC3_HCSPARAMS2_MAXSCRATCHPADBUFS_MASK		GENMASK_32(31, 27)
857*867cd155SPankaj Dev #define _DWC3_HCSPARAMS2_MAXSCRATCHPADBUFS_SHIFT	27
858*867cd155SPankaj Dev 
859*867cd155SPankaj Dev /* _DWC3_HCSPARAMS3 register fields */
860*867cd155SPankaj Dev #define _DWC3_HCSPARAMS3_U1_DEVICE_EXIT_LAT_MASK	GENMASK_32(7, 0)
861*867cd155SPankaj Dev #define _DWC3_HCSPARAMS3_U1_DEVICE_EXIT_LAT_SHIFT	0
862*867cd155SPankaj Dev #define _DWC3_HCSPARAMS3_U2_DEVICE_EXIT_LAT_MASK	GENMASK_32(31, 16)
863*867cd155SPankaj Dev #define _DWC3_HCSPARAMS3_U2_DEVICE_EXIT_LAT_SHIFT	16
864*867cd155SPankaj Dev 
865*867cd155SPankaj Dev /* _DWC3_HCCPARAMS1 register fields */
866*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_AC64				BIT_32(0)
867*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_BNC				BIT_32(1)
868*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_CSZ				BIT_32(2)
869*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_PPC				BIT_32(3)
870*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_PIND				BIT_32(4)
871*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_LHRC				BIT_32(5)
872*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_LTC				BIT_32(6)
873*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_NSS				BIT_32(7)
874*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_PAE				BIT_32(8)
875*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_SPC				BIT_32(9)
876*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_SEC				BIT_32(10)
877*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_CFC				BIT_32(11)
878*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_MAXPSASIZE_MASK		GENMASK_32(15, 12)
879*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_MAXPSASIZE_SHIFT		12
880*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_XECP_MASK			GENMASK_32(31, 16)
881*867cd155SPankaj Dev #define _DWC3_HCCPARAMS1_XECP_SHIFT			16
882*867cd155SPankaj Dev 
883*867cd155SPankaj Dev /* _DWC3_DBOFF register fields */
884*867cd155SPankaj Dev #define _DWC3_DBOFF_DOORBELL_ARRAY_OFFSET_MASK		GENMASK_32(31, 2)
885*867cd155SPankaj Dev #define _DWC3_DBOFF_DOORBELL_ARRAY_OFFSET_SHIFT		2
886*867cd155SPankaj Dev 
887*867cd155SPankaj Dev /* _DWC3_RTSOFF register fields */
888*867cd155SPankaj Dev #define _DWC3_RTSOFF_RUNTIME_REG_SPACE_OFFSET_MASK	GENMASK_32(31, 5)
889*867cd155SPankaj Dev #define _DWC3_RTSOFF_RUNTIME_REG_SPACE_OFFSET_SHIFT	5
890*867cd155SPankaj Dev 
891*867cd155SPankaj Dev /* _DWC3_HCCPARAMS2 register fields */
892*867cd155SPankaj Dev #define _DWC3_HCCPARAMS2_U3C				BIT_32(0)
893*867cd155SPankaj Dev #define _DWC3_HCCPARAMS2_CMC				BIT_32(1)
894*867cd155SPankaj Dev #define _DWC3_HCCPARAMS2_FSC				BIT_32(2)
895*867cd155SPankaj Dev #define _DWC3_HCCPARAMS2_CTC				BIT_32(3)
896*867cd155SPankaj Dev #define _DWC3_HCCPARAMS2_LEC				BIT_32(4)
897*867cd155SPankaj Dev #define _DWC3_HCCPARAMS2_CIC				BIT_32(5)
898*867cd155SPankaj Dev 
899*867cd155SPankaj Dev /*
900*867cd155SPankaj Dev  * USB3 Host Cntrl Oper Regs Block
901*867cd155SPankaj Dev  */
902*867cd155SPankaj Dev #define _DWC3_USBCMD					U(0x0)
903*867cd155SPankaj Dev #define _DWC3_USBSTS					U(0x4)
904*867cd155SPankaj Dev #define _DWC3_PAGESIZE					U(0x8)
905*867cd155SPankaj Dev #define _DWC3_DNCTRL					U(0x14)
906*867cd155SPankaj Dev #define _DWC3_CRCR_LO					U(0x18)
907*867cd155SPankaj Dev #define _DWC3_CRCR_HI					U(0x1C)
908*867cd155SPankaj Dev #define _DWC3_DCBAAP_LO					U(0x30)
909*867cd155SPankaj Dev #define _DWC3_DCBAAP_HI					U(0x34)
910*867cd155SPankaj Dev #define _DWC3_CONFIG					U(0x38)
911*867cd155SPankaj Dev 
912*867cd155SPankaj Dev /* _DWC3_USBCMD register fields */
913*867cd155SPankaj Dev #define _DWC3_USBCMD_R_S				BIT_32(0)
914*867cd155SPankaj Dev #define _DWC3_USBCMD_HCRST				BIT_32(1)
915*867cd155SPankaj Dev #define _DWC3_USBCMD_INTE				BIT_32(2)
916*867cd155SPankaj Dev #define _DWC3_USBCMD_HSEE				BIT_32(3)
917*867cd155SPankaj Dev #define _DWC3_USBCMD_LHCRST				BIT_32(7)
918*867cd155SPankaj Dev #define _DWC3_USBCMD_CSS				BIT_32(8)
919*867cd155SPankaj Dev #define _DWC3_USBCMD_CRS				BIT_32(9)
920*867cd155SPankaj Dev #define _DWC3_USBCMD_EWE				BIT_32(10)
921*867cd155SPankaj Dev #define _DWC3_USBCMD_EU3S				BIT_32(11)
922*867cd155SPankaj Dev #define _DWC3_USBCMD_CME				BIT_32(13)
923*867cd155SPankaj Dev 
924*867cd155SPankaj Dev /* _DWC3_USBSTS register fields */
925*867cd155SPankaj Dev #define _DWC3_USBSTS_HCH				BIT_32(0)
926*867cd155SPankaj Dev #define _DWC3_USBSTS_HSE				BIT_32(2)
927*867cd155SPankaj Dev #define _DWC3_USBSTS_EINT				BIT_32(3)
928*867cd155SPankaj Dev #define _DWC3_USBSTS_PCD				BIT_32(4)
929*867cd155SPankaj Dev #define _DWC3_USBSTS_SSS				BIT_32(8)
930*867cd155SPankaj Dev #define _DWC3_USBSTS_RSS				BIT_32(9)
931*867cd155SPankaj Dev #define _DWC3_USBSTS_SRE				BIT_32(10)
932*867cd155SPankaj Dev #define _DWC3_USBSTS_CNR				BIT_32(11)
933*867cd155SPankaj Dev #define _DWC3_USBSTS_HCE				BIT_32(12)
934*867cd155SPankaj Dev 
935*867cd155SPankaj Dev /* _DWC3_PAGESIZE register fields */
936*867cd155SPankaj Dev #define _DWC3_PAGESIZE_PAGE_SIZE_MASK			GENMASK_32(15, 0)
937*867cd155SPankaj Dev #define _DWC3_PAGESIZE_PAGE_SIZE_SHIFT			0
938*867cd155SPankaj Dev 
939*867cd155SPankaj Dev /* _DWC3_DNCTRL register fields */
940*867cd155SPankaj Dev #define _DWC3_DNCTRL_N0_N15_MASK			GENMASK_32(15, 0)
941*867cd155SPankaj Dev #define _DWC3_DNCTRL_N0_N15_SHIFT			0
942*867cd155SPankaj Dev 
943*867cd155SPankaj Dev /* _DWC3_CRCR_LO register fields */
944*867cd155SPankaj Dev #define _DWC3_CRCR_LO_RCS				BIT_32(0)
945*867cd155SPankaj Dev #define _DWC3_CRCR_LO_CS				BIT_32(1)
946*867cd155SPankaj Dev #define _DWC3_CRCR_LO_CA				BIT_32(2)
947*867cd155SPankaj Dev #define _DWC3_CRCR_LO_CRR				BIT_32(3)
948*867cd155SPankaj Dev #define _DWC3_CRCR_LO_CMD_RING_PNTR_MASK		GENMASK_32(31, 6)
949*867cd155SPankaj Dev #define _DWC3_CRCR_LO_CMD_RING_PNTR_SHIFT		6
950*867cd155SPankaj Dev 
951*867cd155SPankaj Dev /* _DWC3_DCBAAP_LO register fields */
952*867cd155SPankaj Dev #define _DWC3_DCBAAP_LO_DEVICE_CONTEXT_BAAP_MASK	GENMASK_32(31, 6)
953*867cd155SPankaj Dev #define _DWC3_DCBAAP_LO_DEVICE_CONTEXT_BAAP_SHIFT	6
954*867cd155SPankaj Dev 
955*867cd155SPankaj Dev /* _DWC3_CONFIG register fields */
956*867cd155SPankaj Dev #define _DWC3_CONFIG_MAXSLOTSEN_MASK			GENMASK_32(7, 0)
957*867cd155SPankaj Dev #define _DWC3_CONFIG_MAXSLOTSEN_SHIFT			0
958*867cd155SPankaj Dev #define _DWC3_CONFIG_U3E				BIT_32(8)
959*867cd155SPankaj Dev #define _DWC3_CONFIG_CIE				BIT_32(9)
960*867cd155SPankaj Dev 
961*867cd155SPankaj Dev /*
962*867cd155SPankaj Dev  * USB3 Host Cntrl Port Reg Set Block
963*867cd155SPankaj Dev  */
964*867cd155SPankaj Dev #define _DWC3_PORTSC_20					U(0x0)
965*867cd155SPankaj Dev #define _DWC3_PORTPMSC_20				U(0x4)
966*867cd155SPankaj Dev #define _DWC3_PORTLI_20					U(0x8)
967*867cd155SPankaj Dev #define _DWC3_PORTHLPMC_20				U(0xc)
968*867cd155SPankaj Dev #define _DWC3_PORTSC_30					U(0x10)
969*867cd155SPankaj Dev #define _DWC3_PORTPMSC_30				U(0x14)
970*867cd155SPankaj Dev #define _DWC3_PORTLI_30					U(0x18)
971*867cd155SPankaj Dev #define _DWC3_PORTHLPMC_30				U(0x1c)
972*867cd155SPankaj Dev 
973*867cd155SPankaj Dev /* _DWC3_PORTSC_20 register fields */
974*867cd155SPankaj Dev #define _DWC3_PORTSC_20_CCS				BIT_32(0)
975*867cd155SPankaj Dev #define _DWC3_PORTSC_20_PED				BIT_32(1)
976*867cd155SPankaj Dev #define _DWC3_PORTSC_20_OCA				BIT_32(3)
977*867cd155SPankaj Dev #define _DWC3_PORTSC_20_PR				BIT_32(4)
978*867cd155SPankaj Dev #define _DWC3_PORTSC_20_PLS_MASK			GENMASK_32(8, 5)
979*867cd155SPankaj Dev #define _DWC3_PORTSC_20_PLS_SHIFT			5
980*867cd155SPankaj Dev #define _DWC3_PORTSC_20_PP				BIT_32(9)
981*867cd155SPankaj Dev #define _DWC3_PORTSC_20_PORTSPEED_MASK			GENMASK_32(13, 10)
982*867cd155SPankaj Dev #define _DWC3_PORTSC_20_PORTSPEED_SHIFT			10
983*867cd155SPankaj Dev #define _DWC3_PORTSC_20_PIC_MASK			GENMASK_32(15, 14)
984*867cd155SPankaj Dev #define _DWC3_PORTSC_20_PIC_SHIFT			14
985*867cd155SPankaj Dev #define _DWC3_PORTSC_20_LWS				BIT_32(16)
986*867cd155SPankaj Dev #define _DWC3_PORTSC_20_CSC				BIT_32(17)
987*867cd155SPankaj Dev #define _DWC3_PORTSC_20_PEC				BIT_32(18)
988*867cd155SPankaj Dev #define _DWC3_PORTSC_20_OCC				BIT_32(20)
989*867cd155SPankaj Dev #define _DWC3_PORTSC_20_PRC				BIT_32(21)
990*867cd155SPankaj Dev #define _DWC3_PORTSC_20_PLC				BIT_32(22)
991*867cd155SPankaj Dev #define _DWC3_PORTSC_20_CAS				BIT_32(24)
992*867cd155SPankaj Dev #define _DWC3_PORTSC_20_WCE				BIT_32(25)
993*867cd155SPankaj Dev #define _DWC3_PORTSC_20_WDE				BIT_32(26)
994*867cd155SPankaj Dev #define _DWC3_PORTSC_20_WOE				BIT_32(27)
995*867cd155SPankaj Dev #define _DWC3_PORTSC_20_DR				BIT_32(30)
996*867cd155SPankaj Dev 
997*867cd155SPankaj Dev /* _DWC3_PORTPMSC_20 register fields */
998*867cd155SPankaj Dev #define _DWC3_PORTPMSC_20_L1S_MASK			GENMASK_32(2, 0)
999*867cd155SPankaj Dev #define _DWC3_PORTPMSC_20_L1S_SHIFT			0
1000*867cd155SPankaj Dev #define _DWC3_PORTPMSC_20_RWE				BIT_32(3)
1001*867cd155SPankaj Dev #define _DWC3_PORTPMSC_20_HIRD_MASK			GENMASK_32(7, 4)
1002*867cd155SPankaj Dev #define _DWC3_PORTPMSC_20_HIRD_SHIFT			4
1003*867cd155SPankaj Dev #define _DWC3_PORTPMSC_20_L1DSLOT_MASK			GENMASK_32(15, 8)
1004*867cd155SPankaj Dev #define _DWC3_PORTPMSC_20_L1DSLOT_SHIFT			8
1005*867cd155SPankaj Dev #define _DWC3_PORTPMSC_20_HLE				BIT_32(16)
1006*867cd155SPankaj Dev #define _DWC3_PORTPMSC_20_PRTTSTCTRL_MASK		GENMASK_32(31, 28)
1007*867cd155SPankaj Dev #define _DWC3_PORTPMSC_20_PRTTSTCTRL_SHIFT		28
1008*867cd155SPankaj Dev 
1009*867cd155SPankaj Dev /* _DWC3_PORTHLPMC_20 register fields */
1010*867cd155SPankaj Dev #define _DWC3_PORTHLPMC_20_HIRDM_MASK			GENMASK_32(1, 0)
1011*867cd155SPankaj Dev #define _DWC3_PORTHLPMC_20_HIRDM_SHIFT			0
1012*867cd155SPankaj Dev #define _DWC3_PORTHLPMC_20_L1_TIMEOUT_MASK		GENMASK_32(9, 2)
1013*867cd155SPankaj Dev #define _DWC3_PORTHLPMC_20_L1_TIMEOUT_SHIFT		2
1014*867cd155SPankaj Dev #define _DWC3_PORTHLPMC_20_HIRDD_MASK			GENMASK_32(13, 10)
1015*867cd155SPankaj Dev #define _DWC3_PORTHLPMC_20_HIRDD_SHIFT			10
1016*867cd155SPankaj Dev 
1017*867cd155SPankaj Dev /* _DWC3_PORTSC_30 register fields */
1018*867cd155SPankaj Dev #define _DWC3_PORTSC_30_CCS				BIT_32(0)
1019*867cd155SPankaj Dev #define _DWC3_PORTSC_30_PED				BIT_32(1)
1020*867cd155SPankaj Dev #define _DWC3_PORTSC_30_OCA				BIT_32(3)
1021*867cd155SPankaj Dev #define _DWC3_PORTSC_30_PR				BIT_32(4)
1022*867cd155SPankaj Dev #define _DWC3_PORTSC_30_PLS_MASK			GENMASK_32(8, 5)
1023*867cd155SPankaj Dev #define _DWC3_PORTSC_30_PLS_SHIFT			5
1024*867cd155SPankaj Dev #define _DWC3_PORTSC_30_PP				BIT_32(9)
1025*867cd155SPankaj Dev #define _DWC3_PORTSC_30_PORTSPEED_MASK			GENMASK_32(13, 10)
1026*867cd155SPankaj Dev #define _DWC3_PORTSC_30_PORTSPEED_SHIFT			10
1027*867cd155SPankaj Dev #define _DWC3_PORTSC_30_PIC_MASK			GENMASK_32(15, 14)
1028*867cd155SPankaj Dev #define _DWC3_PORTSC_30_PIC_SHIFT			14
1029*867cd155SPankaj Dev #define _DWC3_PORTSC_30_LWS				BIT_32(16)
1030*867cd155SPankaj Dev #define _DWC3_PORTSC_30_CSC				BIT_32(17)
1031*867cd155SPankaj Dev #define _DWC3_PORTSC_30_PEC				BIT_32(18)
1032*867cd155SPankaj Dev #define _DWC3_PORTSC_30_WRC				BIT_32(19)
1033*867cd155SPankaj Dev #define _DWC3_PORTSC_30_OCC				BIT_32(20)
1034*867cd155SPankaj Dev #define _DWC3_PORTSC_30_PRC				BIT_32(21)
1035*867cd155SPankaj Dev #define _DWC3_PORTSC_30_PLC				BIT_32(22)
1036*867cd155SPankaj Dev #define _DWC3_PORTSC_30_CEC				BIT_32(23)
1037*867cd155SPankaj Dev #define _DWC3_PORTSC_30_CAS				BIT_32(24)
1038*867cd155SPankaj Dev #define _DWC3_PORTSC_30_WCE				BIT_32(25)
1039*867cd155SPankaj Dev #define _DWC3_PORTSC_30_WDE				BIT_32(26)
1040*867cd155SPankaj Dev #define _DWC3_PORTSC_30_WOE				BIT_32(27)
1041*867cd155SPankaj Dev #define _DWC3_PORTSC_30_DR				BIT_32(30)
1042*867cd155SPankaj Dev #define _DWC3_PORTSC_30_WPR				BIT_32(31)
1043*867cd155SPankaj Dev 
1044*867cd155SPankaj Dev /* _DWC3_PORTPMSC_30 register fields */
1045*867cd155SPankaj Dev #define _DWC3_PORTPMSC_30_U1_TIMEOUT_MASK		GENMASK_32(7, 0)
1046*867cd155SPankaj Dev #define _DWC3_PORTPMSC_30_U1_TIMEOUT_SHIFT		0
1047*867cd155SPankaj Dev #define _DWC3_PORTPMSC_30_U2_TIMEOUT_MASK		GENMASK_32(15, 8)
1048*867cd155SPankaj Dev #define _DWC3_PORTPMSC_30_U2_TIMEOUT_SHIFT		8
1049*867cd155SPankaj Dev #define _DWC3_PORTPMSC_30_FLA				BIT_32(16)
1050*867cd155SPankaj Dev 
1051*867cd155SPankaj Dev /* _DWC3_PORTLI_30 register fields */
1052*867cd155SPankaj Dev #define _DWC3_PORTLI_30_LINK_ERROR_COUNT_MASK		GENMASK_32(15, 0)
1053*867cd155SPankaj Dev #define _DWC3_PORTLI_30_LINK_ERROR_COUNT_SHIFT		0
1054*867cd155SPankaj Dev 
1055*867cd155SPankaj Dev /*
1056*867cd155SPankaj Dev  * USB3 Host Cntrl Runtime Regs Block
1057*867cd155SPankaj Dev  */
1058*867cd155SPankaj Dev #define _DWC3_MFINDEX					U(0x0)
1059*867cd155SPankaj Dev 
1060*867cd155SPankaj Dev /* _DWC3_MFINDEX register fields */
1061*867cd155SPankaj Dev #define _DWC3_MFINDEX_MICROFRAME_INDEX_MASK		GENMASK_32(13, 0)
1062*867cd155SPankaj Dev #define _DWC3_MFINDEX_MICROFRAME_INDEX_SHIFT		0
1063*867cd155SPankaj Dev 
1064*867cd155SPankaj Dev /*
1065*867cd155SPankaj Dev  * USB3 Interrupter Regs Block
1066*867cd155SPankaj Dev  */
1067*867cd155SPankaj Dev #define _DWC3_IMAN					U(0x0)
1068*867cd155SPankaj Dev #define _DWC3_IMOD					U(0x4)
1069*867cd155SPankaj Dev #define _DWC3_ERSTSZ					U(0x8)
1070*867cd155SPankaj Dev #define _DWC3_ERSTBA_LO					U(0x10)
1071*867cd155SPankaj Dev #define _DWC3_ERSTBA_HI					U(0x14)
1072*867cd155SPankaj Dev #define _DWC3_ERDP_LO					U(0x18)
1073*867cd155SPankaj Dev #define _DWC3_ERDP_HI					U(0x1c)
1074*867cd155SPankaj Dev 
1075*867cd155SPankaj Dev /* _DWC3_IMAN register fields */
1076*867cd155SPankaj Dev #define _DWC3_IMAN_IP					BIT_32(0)
1077*867cd155SPankaj Dev #define _DWC3_IMAN_IE					BIT_32(1)
1078*867cd155SPankaj Dev 
1079*867cd155SPankaj Dev /* _DWC3_IMOD register fields */
1080*867cd155SPankaj Dev #define _DWC3_IMOD_IMODI_MASK				GENMASK_32(15, 0)
1081*867cd155SPankaj Dev #define _DWC3_IMOD_IMODI_SHIFT				0
1082*867cd155SPankaj Dev #define _DWC3_IMOD_IMODC_MASK				GENMASK_32(31, 16)
1083*867cd155SPankaj Dev #define _DWC3_IMOD_IMODC_SHIFT				16
1084*867cd155SPankaj Dev 
1085*867cd155SPankaj Dev /* _DWC3_ERSTSZ register fields */
1086*867cd155SPankaj Dev #define _DWC3_ERSTSZ_ERS_TABLE_SIZE_MASK		GENMASK_32(15, 0)
1087*867cd155SPankaj Dev #define _DWC3_ERSTSZ_ERS_TABLE_SIZE_SHIFT		0
1088*867cd155SPankaj Dev 
1089*867cd155SPankaj Dev /* _DWC3_ERSTBA_LO register fields */
1090*867cd155SPankaj Dev #define _DWC3_ERSTBA_LO_ERS_TABLE_BAR_MASK		GENMASK_32(31, 6)
1091*867cd155SPankaj Dev #define _DWC3_ERSTBA_LO_ERS_TABLE_BAR_SHIFT		6
1092*867cd155SPankaj Dev 
1093*867cd155SPankaj Dev /* _DWC3_ERDP_LO register fields */
1094*867cd155SPankaj Dev #define _DWC3_ERDP_LO_DESI_MASK				GENMASK_32(2, 0)
1095*867cd155SPankaj Dev #define _DWC3_ERDP_LO_DESI_SHIFT			0
1096*867cd155SPankaj Dev #define _DWC3_ERDP_LO_EHB				BIT_32(3)
1097*867cd155SPankaj Dev #define _DWC3_ERDP_LO_ERD_PNTR_MASK			GENMASK_32(31, 4)
1098*867cd155SPankaj Dev #define _DWC3_ERDP_LO_ERD_PNTR_SHIFT			4
1099*867cd155SPankaj Dev 
1100*867cd155SPankaj Dev /*
1101*867cd155SPankaj Dev  * USB3 Doorbell Reg Block
1102*867cd155SPankaj Dev  */
1103*867cd155SPankaj Dev #define _DWC3_DB					U(0x0)
1104*867cd155SPankaj Dev 
1105*867cd155SPankaj Dev /* _DWC3_DB register fields */
1106*867cd155SPankaj Dev #define _DWC3_DB_DB_TARGET_MASK				GENMASK_32(7, 0)
1107*867cd155SPankaj Dev #define _DWC3_DB_DB_TARGET_SHIFT			0
1108*867cd155SPankaj Dev #define _DWC3_DB_DB_STREAM_ID_MASK			GENMASK_32(31, 16)
1109*867cd155SPankaj Dev #define _DWC3_DB_DB_STREAM_ID_SHIFT			16
1110*867cd155SPankaj Dev 
1111*867cd155SPankaj Dev /*
1112*867cd155SPankaj Dev  * USB3 internal RAM0 Register Block
1113*867cd155SPankaj Dev 
1114*867cd155SPankaj Dev  * For a description of this standard USB register field, see the eXtensible Host Controller
1115*867cd155SPankaj Dev  * Interface for Universal Serial Bus (USB) Specification 3.0.
1116*867cd155SPankaj Dev 
1117*867cd155SPankaj Dev  */
1118*867cd155SPankaj Dev 
1119*867cd155SPankaj Dev /*
1120*867cd155SPankaj Dev  * USB3 internal RAM1 Register Block
1121*867cd155SPankaj Dev 
1122*867cd155SPankaj Dev  * For a description of this standard USB register field, see the eXtensible Host Controller
1123*867cd155SPankaj Dev  * Interface for Universal Serial Bus (USB) Specification 3.0.
1124*867cd155SPankaj Dev 
1125*867cd155SPankaj Dev  */
1126*867cd155SPankaj Dev 
1127*867cd155SPankaj Dev /*
1128*867cd155SPankaj Dev  * USB3 internal RAM2 Register Block
1129*867cd155SPankaj Dev  */
1130*867cd155SPankaj Dev 
1131*867cd155SPankaj Dev /*
1132*867cd155SPankaj Dev  * USB3 HC Extended Capability Register Block
1133*867cd155SPankaj Dev  */
1134*867cd155SPankaj Dev #define _DWC3_USBLEGSUP					U(0x0)
1135*867cd155SPankaj Dev #define _DWC3_USBLEGCTLSTS				U(0x4)
1136*867cd155SPankaj Dev 
1137*867cd155SPankaj Dev /* _DWC3_USBLEGSUP register fields */
1138*867cd155SPankaj Dev #define _DWC3_USBLEGSUP_CAPABILITY_ID_MASK		GENMASK_32(7, 0)
1139*867cd155SPankaj Dev #define _DWC3_USBLEGSUP_CAPABILITY_ID_SHIFT		0
1140*867cd155SPankaj Dev #define _DWC3_USBLEGSUP_NEXT_CAPABILITY_POINTER_MASK	GENMASK_32(15, 8)
1141*867cd155SPankaj Dev #define _DWC3_USBLEGSUP_NEXT_CAPABILITY_POINTER_SHIFT	8
1142*867cd155SPankaj Dev #define _DWC3_USBLEGSUP_HC_BIOS_OWNED			BIT_32(16)
1143*867cd155SPankaj Dev #define _DWC3_USBLEGSUP_HC_OS_OWNED			BIT_32(24)
1144*867cd155SPankaj Dev 
1145*867cd155SPankaj Dev /* _DWC3_USBLEGCTLSTS register fields */
1146*867cd155SPankaj Dev #define _DWC3_USBLEGCTLSTS_USB_SMI_ENABLE		BIT_32(0)
1147*867cd155SPankaj Dev #define _DWC3_USBLEGCTLSTS_SMI_ON_HOST_E		BIT_32(4)
1148*867cd155SPankaj Dev #define _DWC3_USBLEGCTLSTS_SMI_ON_OS_E			BIT_32(13)
1149*867cd155SPankaj Dev #define _DWC3_USBLEGCTLSTS_SMI_ON_PCI_E			BIT_32(14)
1150*867cd155SPankaj Dev #define _DWC3_USBLEGCTLSTS_SMI_ON_BAR_E			BIT_32(15)
1151*867cd155SPankaj Dev #define _DWC3_USBLEGCTLSTS_SMI_ON_EVENT			BIT_32(16)
1152*867cd155SPankaj Dev #define _DWC3_USBLEGCTLSTS_SMI_ON_HOST			BIT_32(20)
1153*867cd155SPankaj Dev #define _DWC3_USBLEGCTLSTS_SMI_ON_OS			BIT_32(29)
1154*867cd155SPankaj Dev #define _DWC3_USBLEGCTLSTS_SMI_ON_PCI			BIT_32(30)
1155*867cd155SPankaj Dev #define _DWC3_USBLEGCTLSTS_SMI_ON_BAR			BIT_32(31)
1156*867cd155SPankaj Dev 
1157*867cd155SPankaj Dev /*
1158*867cd155SPankaj Dev  * USB3 xHCI Supported Protocol Capability (USB 2.0) Block
1159*867cd155SPankaj Dev  */
1160*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW0				U(0x0)
1161*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW1				U(0x4)
1162*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW2				U(0x8)
1163*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW3				U(0xC)
1164*867cd155SPankaj Dev 
1165*867cd155SPankaj Dev /* _DWC3_SUPTPRT2_DW0 register fields */
1166*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW0_CAPABILITY_ID_MASK		GENMASK_32(7, 0)
1167*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW0_CAPABILITY_ID_SHIFT		0
1168*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW0_NEXT_CAPABILITY_POINTER_MASK	GENMASK_32(15, 8)
1169*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW0_NEXT_CAPABILITY_POINTER_SHIFT	8
1170*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW0_MINOR_REVISION_MASK		GENMASK_32(23, 16)
1171*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW0_MINOR_REVISION_SHIFT		16
1172*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW0_MAJOR_REVISION_MASK		GENMASK_32(31, 24)
1173*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW0_MAJOR_REVISION_SHIFT		24
1174*867cd155SPankaj Dev 
1175*867cd155SPankaj Dev /* _DWC3_SUPTPRT2_DW2 register fields */
1176*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW2_COMPATIBLE_PORT_OFFSET_MASK	GENMASK_32(7, 0)
1177*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW2_COMPATIBLE_PORT_OFFSET_SHIFT	0
1178*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW2_COMPATIBLE_PORT_COUNT_MASK	GENMASK_32(15, 8)
1179*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW2_COMPATIBLE_PORT_COUNT_SHIFT	8
1180*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW2_HSO				BIT_32(17)
1181*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW2_IHI				BIT_32(18)
1182*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW2_HLC				BIT_32(19)
1183*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW2_BLC				BIT_32(20)
1184*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW2_MHD_MASK			GENMASK_32(27, 25)
1185*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW2_MHD_SHIFT			25
1186*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW2_PSIC_MASK			GENMASK_32(31, 28)
1187*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW2_PSIC_SHIFT			28
1188*867cd155SPankaj Dev 
1189*867cd155SPankaj Dev /* _DWC3_SUPTPRT2_DW3 register fields */
1190*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW3_PROTCL_SLT_TY_MASK		GENMASK_32(4, 0)
1191*867cd155SPankaj Dev #define _DWC3_SUPTPRT2_DW3_PROTCL_SLT_TY_SHIFT		0
1192*867cd155SPankaj Dev 
1193*867cd155SPankaj Dev /*
1194*867cd155SPankaj Dev  * USB3 xHCI Supported Protocol Capability (USB 3.0) Block
1195*867cd155SPankaj Dev  */
1196*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW0				U(0x0)
1197*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW1				U(0x4)
1198*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW2				U(0x8)
1199*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW3				U(0xC)
1200*867cd155SPankaj Dev 
1201*867cd155SPankaj Dev /* _DWC3_SUPTPRT3_DW0 register fields */
1202*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW0_CAPABILITY_ID_MASK		GENMASK_32(7, 0)
1203*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW0_CAPABILITY_ID_SHIFT		0
1204*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW0_NEXT_CAPABILITY_POINTER_MASK	GENMASK_32(15, 8)
1205*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW0_NEXT_CAPABILITY_POINTER_SHIFT	8
1206*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW0_MINOR_REVISION_MASK		GENMASK_32(23, 16)
1207*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW0_MINOR_REVISION_SHIFT		16
1208*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW0_MAJOR_REVISION_MASK		GENMASK_32(31, 24)
1209*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW0_MAJOR_REVISION_SHIFT		24
1210*867cd155SPankaj Dev 
1211*867cd155SPankaj Dev /* _DWC3_SUPTPRT3_DW2 register fields */
1212*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW2_COMPATIBLE_PORT_OFFSET_MASK	GENMASK_32(7, 0)
1213*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW2_COMPATIBLE_PORT_OFFSET_SHIFT	0
1214*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW2_COMPATIBLE_PORT_COUNT_MASK	GENMASK_32(15, 8)
1215*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW2_COMPATIBLE_PORT_COUNT_SHIFT	8
1216*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW2_MHD_MASK			GENMASK_32(27, 25)
1217*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW2_MHD_SHIFT			25
1218*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW2_PSIC_MASK			GENMASK_32(31, 28)
1219*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW2_PSIC_SHIFT			28
1220*867cd155SPankaj Dev 
1221*867cd155SPankaj Dev /* _DWC3_SUPTPRT3_DW3 register fields */
1222*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW3_PROTCL_SLT_TY_MASK		GENMASK_32(4, 0)
1223*867cd155SPankaj Dev #define _DWC3_SUPTPRT3_DW3_PROTCL_SLT_TY_SHIFT		0
1224*867cd155SPankaj Dev 
1225*867cd155SPankaj Dev #endif /* __USB_DWC3_REGS_H */
1226