xref: /rk3399_ARM-atf/include/drivers/st/stm32mp2_pwr.h (revision d76d27e9781ee56a07ab550ff058551c8e682b5e)
1*6add7154SYann Gautier /*
2*6add7154SYann Gautier  * Copyright (c) 2018-2024, STMicroelectronics - All Rights Reserved
3*6add7154SYann Gautier  *
4*6add7154SYann Gautier  * SPDX-License-Identifier: BSD-3-Clause
5*6add7154SYann Gautier  */
6*6add7154SYann Gautier 
7*6add7154SYann Gautier #ifndef STM32MP2_PWR_H
8*6add7154SYann Gautier #define STM32MP2_PWR_H
9*6add7154SYann Gautier 
10*6add7154SYann Gautier #include <lib/utils_def.h>
11*6add7154SYann Gautier 
12*6add7154SYann Gautier #define PWR_CR1					U(0x00)
13*6add7154SYann Gautier #define PWR_CR2					U(0x04)
14*6add7154SYann Gautier #define PWR_CR3					U(0x08)
15*6add7154SYann Gautier #define PWR_CR4					U(0x0C)
16*6add7154SYann Gautier #define PWR_CR5					U(0x10)
17*6add7154SYann Gautier #define PWR_CR6					U(0x14)
18*6add7154SYann Gautier #define PWR_CR7					U(0x18)
19*6add7154SYann Gautier #define PWR_CR8					U(0x1C)
20*6add7154SYann Gautier #define PWR_CR9					U(0x20)
21*6add7154SYann Gautier #define PWR_CR10				U(0x24)
22*6add7154SYann Gautier #define PWR_CR11				U(0x28)
23*6add7154SYann Gautier #define PWR_CR12				U(0x2C)
24*6add7154SYann Gautier #define PWR_UCPDR				U(0x30)
25*6add7154SYann Gautier #define PWR_BDCR1				U(0x38)
26*6add7154SYann Gautier #define PWR_BDCR2				U(0x3C)
27*6add7154SYann Gautier #define PWR_CPU1CR				U(0x40)
28*6add7154SYann Gautier #define PWR_CPU2CR				U(0x44)
29*6add7154SYann Gautier #define PWR_CPU3CR				U(0x48)
30*6add7154SYann Gautier #define PWR_D1CR				U(0x4C)
31*6add7154SYann Gautier #define PWR_D2CR				U(0x50)
32*6add7154SYann Gautier #define PWR_D3CR				U(0x54)
33*6add7154SYann Gautier #define PWR_WKUPCR1				U(0x60)
34*6add7154SYann Gautier #define PWR_WKUPCR2				U(0x64)
35*6add7154SYann Gautier #define PWR_WKUPCR3				U(0x68)
36*6add7154SYann Gautier #define PWR_WKUPCR4				U(0x6C)
37*6add7154SYann Gautier #define PWR_WKUPCR5				U(0x70)
38*6add7154SYann Gautier #define PWR_WKUPCR6				U(0x74)
39*6add7154SYann Gautier #define PWR_D3WKUPENR				U(0x98)
40*6add7154SYann Gautier #define PWR_RSECCFGR				U(0x100)
41*6add7154SYann Gautier #define PWR_RPRIVCFGR				U(0x104)
42*6add7154SYann Gautier #define PWR_R0CIDCFGR				U(0x108)
43*6add7154SYann Gautier #define PWR_R1CIDCFGR				U(0x10C)
44*6add7154SYann Gautier #define PWR_R2CIDCFGR				U(0x110)
45*6add7154SYann Gautier #define PWR_R3CIDCFGR				U(0x114)
46*6add7154SYann Gautier #define PWR_R4CIDCFGR				U(0x118)
47*6add7154SYann Gautier #define PWR_R5CIDCFGR				U(0x11C)
48*6add7154SYann Gautier #define PWR_R6CIDCFGR				U(0x120)
49*6add7154SYann Gautier #define PWR_WIOSECCFGR				U(0x180)
50*6add7154SYann Gautier #define PWR_WIOPRIVCFGR				U(0x184)
51*6add7154SYann Gautier #define PWR_WIO1CIDCFGR				U(0x188)
52*6add7154SYann Gautier #define PWR_WIO1SEMCR				U(0x18C)
53*6add7154SYann Gautier #define PWR_WIO2CIDCFGR				U(0x190)
54*6add7154SYann Gautier #define PWR_WIO2SEMCR				U(0x194)
55*6add7154SYann Gautier #define PWR_WIO3CIDCFGR				U(0x198)
56*6add7154SYann Gautier #define PWR_WIO3SEMCR				U(0x19C)
57*6add7154SYann Gautier #define PWR_WIO4CIDCFGR				U(0x1A0)
58*6add7154SYann Gautier #define PWR_WIO4SEMCR				U(0x1A4)
59*6add7154SYann Gautier #define PWR_WIO5CIDCFGR				U(0x1A8)
60*6add7154SYann Gautier #define PWR_WIO5SEMCR				U(0x1AC)
61*6add7154SYann Gautier #define PWR_WIO6CIDCFGR				U(0x1B0)
62*6add7154SYann Gautier #define PWR_WIO6SEMCR				U(0x1B4)
63*6add7154SYann Gautier #define PWR_CPU1D1SR				U(0x200)
64*6add7154SYann Gautier #define PWR_CPU2D2SR				U(0x204)
65*6add7154SYann Gautier #define PWR_CPU3D3SR				U(0x208)
66*6add7154SYann Gautier #define PWR_DBGR				U(0x308)
67*6add7154SYann Gautier #define PWR_VERR				U(0x3F4)
68*6add7154SYann Gautier #define PWR_IPIDR				U(0x3F8)
69*6add7154SYann Gautier #define PWR_SIDR				U(0x3FC)
70*6add7154SYann Gautier 
71*6add7154SYann Gautier /* PWR_CR1 register fields */
72*6add7154SYann Gautier #define PWR_CR1_VDDIO3VMEN			BIT_32(0)
73*6add7154SYann Gautier #define PWR_CR1_VDDIO4VMEN			BIT_32(1)
74*6add7154SYann Gautier #define PWR_CR1_USB33VMEN			BIT_32(2)
75*6add7154SYann Gautier #define PWR_CR1_UCPDVMEN			BIT_32(3)
76*6add7154SYann Gautier #define PWR_CR1_AVMEN				BIT_32(4)
77*6add7154SYann Gautier #define PWR_CR1_VDDIO3SV			BIT_32(8)
78*6add7154SYann Gautier #define PWR_CR1_VDDIO4SV			BIT_32(9)
79*6add7154SYann Gautier #define PWR_CR1_USB33SV				BIT_32(10)
80*6add7154SYann Gautier #define PWR_CR1_UCPDSV				BIT_32(11)
81*6add7154SYann Gautier #define PWR_CR1_ASV				BIT_32(12)
82*6add7154SYann Gautier #define PWR_CR1_VDDIO3RDY			BIT_32(16)
83*6add7154SYann Gautier #define PWR_CR1_VDDIO4RDY			BIT_32(17)
84*6add7154SYann Gautier #define PWR_CR1_USB33RDY			BIT_32(18)
85*6add7154SYann Gautier #define PWR_CR1_UCPDRDY				BIT_32(19)
86*6add7154SYann Gautier #define PWR_CR1_ARDY				BIT_32(20)
87*6add7154SYann Gautier #define PWR_CR1_VDDIOVRSEL			BIT_32(24)
88*6add7154SYann Gautier #define PWR_CR1_VDDIO3VRSEL			BIT_32(25)
89*6add7154SYann Gautier #define PWR_CR1_VDDIO4VRSEL			BIT_32(26)
90*6add7154SYann Gautier #define PWR_CR1_GPVMO				BIT_32(31)
91*6add7154SYann Gautier 
92*6add7154SYann Gautier /* PWR_CR2 register fields */
93*6add7154SYann Gautier #define PWR_CR2_MONEN				BIT_32(0)
94*6add7154SYann Gautier #define PWR_CR2_VBATL				BIT_32(8)
95*6add7154SYann Gautier #define PWR_CR2_VBATH				BIT_32(9)
96*6add7154SYann Gautier #define PWR_CR2_TEMPL				BIT_32(10)
97*6add7154SYann Gautier #define PWR_CR2_TEMPH				BIT_32(11)
98*6add7154SYann Gautier 
99*6add7154SYann Gautier /* PWR_CR3 register fields */
100*6add7154SYann Gautier #define PWR_CR3_PVDEN				BIT_32(0)
101*6add7154SYann Gautier #define PWR_CR3_PVDO				BIT_32(8)
102*6add7154SYann Gautier 
103*6add7154SYann Gautier /* PWR_CR5 register fields */
104*6add7154SYann Gautier #define PWR_CR5_VCOREMONEN			BIT_32(0)
105*6add7154SYann Gautier #define PWR_CR5_VCOREL				BIT_32(8)
106*6add7154SYann Gautier #define PWR_CR5_VCOREH				BIT_32(9)
107*6add7154SYann Gautier 
108*6add7154SYann Gautier /* PWR_CR6 register fields */
109*6add7154SYann Gautier #define PWR_CR6_VCPUMONEN			BIT_32(0)
110*6add7154SYann Gautier #define PWR_CR6_VCPULLS				BIT_32(4)
111*6add7154SYann Gautier #define PWR_CR6_VCPUL				BIT_32(8)
112*6add7154SYann Gautier #define PWR_CR6_VCPUH				BIT_32(9)
113*6add7154SYann Gautier 
114*6add7154SYann Gautier /* PWR_CR7 register fields */
115*6add7154SYann Gautier #define PWR_CR7_VDDIO2VMEN			BIT_32(0)
116*6add7154SYann Gautier #define PWR_CR7_VDDIO2SV			BIT_32(8)
117*6add7154SYann Gautier #define PWR_CR7_VDDIO2RDY			BIT_32(16)
118*6add7154SYann Gautier #define PWR_CR7_VDDIO2VRSEL			BIT_32(24)
119*6add7154SYann Gautier #define PWR_CR7_VDDIO2VRSTBY			BIT_32(25)
120*6add7154SYann Gautier 
121*6add7154SYann Gautier /* PWR_CR8 register fields */
122*6add7154SYann Gautier #define PWR_CR8_VDDIO1VMEN			BIT_32(0)
123*6add7154SYann Gautier #define PWR_CR8_VDDIO1SV			BIT_32(8)
124*6add7154SYann Gautier #define PWR_CR8_VDDIO1RDY			BIT_32(16)
125*6add7154SYann Gautier #define PWR_CR8_VDDIO1VRSEL			BIT_32(24)
126*6add7154SYann Gautier #define PWR_CR8_VDDIO1VRSTBY			BIT_32(25)
127*6add7154SYann Gautier 
128*6add7154SYann Gautier /* PWR_CR9 register fields */
129*6add7154SYann Gautier #define PWR_CR9_BKPRBSEN			BIT_32(0)
130*6add7154SYann Gautier #define PWR_CR9_LPR1BSEN			BIT_32(4)
131*6add7154SYann Gautier 
132*6add7154SYann Gautier /* PWR_CR10 register fields */
133*6add7154SYann Gautier #define PWR_CR10_RETRBSEN_MASK			GENMASK_32(1, 0)
134*6add7154SYann Gautier #define PWR_CR10_RETRBSEN_SHIFT			U(0)
135*6add7154SYann Gautier 
136*6add7154SYann Gautier /* PWR_CR11 register fields */
137*6add7154SYann Gautier #define PWR_CR11_DDRRETDIS			BIT_32(0)
138*6add7154SYann Gautier 
139*6add7154SYann Gautier /* PWR_CR12 register fields */
140*6add7154SYann Gautier #define PWR_CR12_GPUVMEN			BIT_32(0)
141*6add7154SYann Gautier #define PWR_CR12_GPULVTEN			BIT_32(1)
142*6add7154SYann Gautier #define PWR_CR12_GPUSV				BIT_32(8)
143*6add7154SYann Gautier #define PWR_CR12_VDDGPURDY			BIT_32(16)
144*6add7154SYann Gautier 
145*6add7154SYann Gautier /* PWR_UCPDR register fields */
146*6add7154SYann Gautier #define PWR_UCPDR_UCPD_DBDIS			BIT_32(0)
147*6add7154SYann Gautier #define PWR_UCPDR_UCPD_STBY			BIT_32(1)
148*6add7154SYann Gautier 
149*6add7154SYann Gautier /* PWR_BDCR1 register fields */
150*6add7154SYann Gautier #define PWR_BDCR1_DBD3P				BIT_32(0)
151*6add7154SYann Gautier 
152*6add7154SYann Gautier /* PWR_BDCR2 register fields */
153*6add7154SYann Gautier #define PWR_BDCR2_DBP				BIT_32(0)
154*6add7154SYann Gautier 
155*6add7154SYann Gautier /* PWR_CPU1CR register fields */
156*6add7154SYann Gautier #define PWR_CPU1CR_PDDS_D2			BIT_32(0)
157*6add7154SYann Gautier #define PWR_CPU1CR_PDDS_D1			BIT_32(1)
158*6add7154SYann Gautier #define PWR_CPU1CR_VBF				BIT_32(4)
159*6add7154SYann Gautier #define PWR_CPU1CR_STOPF			BIT_32(5)
160*6add7154SYann Gautier #define PWR_CPU1CR_SBF				BIT_32(6)
161*6add7154SYann Gautier #define PWR_CPU1CR_SBF_D1			BIT_32(7)
162*6add7154SYann Gautier #define PWR_CPU1CR_SBF_D3			BIT_32(8)
163*6add7154SYann Gautier #define PWR_CPU1CR_CSSF				BIT_32(9)
164*6add7154SYann Gautier #define PWR_CPU1CR_STANDBYWFIL2			BIT_32(15)
165*6add7154SYann Gautier #define PWR_CPU1CR_LPDS_D1			BIT_32(16)
166*6add7154SYann Gautier #define PWR_CPU1CR_LVDS_D1			BIT_32(17)
167*6add7154SYann Gautier 
168*6add7154SYann Gautier /* PWR_CPU2CR register fields */
169*6add7154SYann Gautier #define PWR_CPU2CR_PDDS_D2			BIT_32(0)
170*6add7154SYann Gautier #define PWR_CPU2CR_VBF				BIT_32(4)
171*6add7154SYann Gautier #define PWR_CPU2CR_STOPF			BIT_32(5)
172*6add7154SYann Gautier #define PWR_CPU2CR_SBF				BIT_32(6)
173*6add7154SYann Gautier #define PWR_CPU2CR_SBF_D2			BIT_32(7)
174*6add7154SYann Gautier #define PWR_CPU2CR_SBF_D3			BIT_32(8)
175*6add7154SYann Gautier #define PWR_CPU2CR_CSSF				BIT_32(9)
176*6add7154SYann Gautier #define PWR_CPU2CR_DEEPSLEEP			BIT_32(15)
177*6add7154SYann Gautier #define PWR_CPU2CR_LPDS_D2			BIT_32(16)
178*6add7154SYann Gautier #define PWR_CPU2CR_LVDS_D2			BIT_32(17)
179*6add7154SYann Gautier 
180*6add7154SYann Gautier /* PWR_CPU3CR register fields */
181*6add7154SYann Gautier #define PWR_CPU3CR_VBF				BIT_32(4)
182*6add7154SYann Gautier #define PWR_CPU3CR_SBF_D3			BIT_32(8)
183*6add7154SYann Gautier #define PWR_CPU3CR_CSSF				BIT_32(9)
184*6add7154SYann Gautier #define PWR_CPU3CR_DEEPSLEEP			BIT_32(15)
185*6add7154SYann Gautier 
186*6add7154SYann Gautier /* PWR_D1CR register fields */
187*6add7154SYann Gautier #define PWR_D1CR_LPCFG_D1			BIT_32(0)
188*6add7154SYann Gautier #define PWR_D1CR_POPL_D1_MASK			GENMASK_32(12, 8)
189*6add7154SYann Gautier #define PWR_D1CR_POPL_D1_SHIFT			U(8)
190*6add7154SYann Gautier 
191*6add7154SYann Gautier /* PWR_D2CR register fields */
192*6add7154SYann Gautier #define PWR_D2CR_LPCFG_D2			BIT_32(0)
193*6add7154SYann Gautier #define PWR_D2CR_POPL_D2_MASK			GENMASK_32(12, 8)
194*6add7154SYann Gautier #define PWR_D2CR_POPL_D2_SHIFT			U(8)
195*6add7154SYann Gautier #define PWR_D2CR_LPLVDLY_D2_MASK		GENMASK_32(18, 16)
196*6add7154SYann Gautier #define PWR_D2CR_LPLVDLY_D2_SHIFT		U(16)
197*6add7154SYann Gautier #define PWR_D2CR_PODH_D2_MASK			GENMASK_32(27, 24)
198*6add7154SYann Gautier #define PWR_D2CR_PODH_D2_SHIFT			U(24)
199*6add7154SYann Gautier 
200*6add7154SYann Gautier /* PWR_D3CR register fields */
201*6add7154SYann Gautier #define PWR_D3CR_PDDS_D3			BIT_32(0)
202*6add7154SYann Gautier #define PWR_D3CR_D3RDY				BIT_32(31)
203*6add7154SYann Gautier 
204*6add7154SYann Gautier /* PWR_WKUPCR1 register fields */
205*6add7154SYann Gautier #define PWR_WKUPCR1_WKUPC			BIT_32(0)
206*6add7154SYann Gautier #define PWR_WKUPCR1_WKUPP			BIT_32(8)
207*6add7154SYann Gautier #define PWR_WKUPCR1_WKUPPUPD_MASK		GENMASK_32(13, 12)
208*6add7154SYann Gautier #define PWR_WKUPCR1_WKUPPUPD_SHIFT		U(12)
209*6add7154SYann Gautier #define PWR_WKUPCR1_WKUPENCPU1			BIT_32(16)
210*6add7154SYann Gautier #define PWR_WKUPCR1_WKUPENCPU2			BIT_32(17)
211*6add7154SYann Gautier #define PWR_WKUPCR1_WKUPF			BIT_32(31)
212*6add7154SYann Gautier 
213*6add7154SYann Gautier /* PWR_WKUPCR2 register fields */
214*6add7154SYann Gautier #define PWR_WKUPCR2_WKUPC			BIT_32(0)
215*6add7154SYann Gautier #define PWR_WKUPCR2_WKUPP			BIT_32(8)
216*6add7154SYann Gautier #define PWR_WKUPCR2_WKUPPUPD_MASK		GENMASK_32(13, 12)
217*6add7154SYann Gautier #define PWR_WKUPCR2_WKUPPUPD_SHIFT		U(12)
218*6add7154SYann Gautier #define PWR_WKUPCR2_WKUPENCPU1			BIT_32(16)
219*6add7154SYann Gautier #define PWR_WKUPCR2_WKUPENCPU2			BIT_32(17)
220*6add7154SYann Gautier #define PWR_WKUPCR2_WKUPF			BIT_32(31)
221*6add7154SYann Gautier 
222*6add7154SYann Gautier /* PWR_WKUPCR3 register fields */
223*6add7154SYann Gautier #define PWR_WKUPCR3_WKUPC			BIT_32(0)
224*6add7154SYann Gautier #define PWR_WKUPCR3_WKUPP			BIT_32(8)
225*6add7154SYann Gautier #define PWR_WKUPCR3_WKUPPUPD_MASK		GENMASK_32(13, 12)
226*6add7154SYann Gautier #define PWR_WKUPCR3_WKUPPUPD_SHIFT		U(12)
227*6add7154SYann Gautier #define PWR_WKUPCR3_WKUPENCPU1			BIT_32(16)
228*6add7154SYann Gautier #define PWR_WKUPCR3_WKUPENCPU2			BIT_32(17)
229*6add7154SYann Gautier #define PWR_WKUPCR3_WKUPF			BIT_32(31)
230*6add7154SYann Gautier 
231*6add7154SYann Gautier /* PWR_WKUPCR4 register fields */
232*6add7154SYann Gautier #define PWR_WKUPCR4_WKUPC			BIT_32(0)
233*6add7154SYann Gautier #define PWR_WKUPCR4_WKUPP			BIT_32(8)
234*6add7154SYann Gautier #define PWR_WKUPCR4_WKUPPUPD_MASK		GENMASK_32(13, 12)
235*6add7154SYann Gautier #define PWR_WKUPCR4_WKUPPUPD_SHIFT		U(12)
236*6add7154SYann Gautier #define PWR_WKUPCR4_WKUPENCPU1			BIT_32(16)
237*6add7154SYann Gautier #define PWR_WKUPCR4_WKUPENCPU2			BIT_32(17)
238*6add7154SYann Gautier #define PWR_WKUPCR4_WKUPF			BIT_32(31)
239*6add7154SYann Gautier 
240*6add7154SYann Gautier /* PWR_WKUPCR5 register fields */
241*6add7154SYann Gautier #define PWR_WKUPCR5_WKUPC			BIT_32(0)
242*6add7154SYann Gautier #define PWR_WKUPCR5_WKUPP			BIT_32(8)
243*6add7154SYann Gautier #define PWR_WKUPCR5_WKUPPUPD_MASK		GENMASK_32(13, 12)
244*6add7154SYann Gautier #define PWR_WKUPCR5_WKUPPUPD_SHIFT		U(12)
245*6add7154SYann Gautier #define PWR_WKUPCR5_WKUPENCPU1			BIT_32(16)
246*6add7154SYann Gautier #define PWR_WKUPCR5_WKUPENCPU2			BIT_32(17)
247*6add7154SYann Gautier #define PWR_WKUPCR5_WKUPF			BIT_32(31)
248*6add7154SYann Gautier 
249*6add7154SYann Gautier /* PWR_WKUPCR6 register fields */
250*6add7154SYann Gautier #define PWR_WKUPCR6_WKUPC			BIT_32(0)
251*6add7154SYann Gautier #define PWR_WKUPCR6_WKUPP			BIT_32(8)
252*6add7154SYann Gautier #define PWR_WKUPCR6_WKUPPUPD_MASK		GENMASK_32(13, 12)
253*6add7154SYann Gautier #define PWR_WKUPCR6_WKUPPUPD_SHIFT		U(12)
254*6add7154SYann Gautier #define PWR_WKUPCR6_WKUPENCPU1			BIT_32(16)
255*6add7154SYann Gautier #define PWR_WKUPCR6_WKUPENCPU2			BIT_32(17)
256*6add7154SYann Gautier #define PWR_WKUPCR6_WKUPF			BIT_32(31)
257*6add7154SYann Gautier 
258*6add7154SYann Gautier /* PWR_D3WKUPENR register fields */
259*6add7154SYann Gautier #define PWR_D3WKUPENR_TAMP_WKUPEN_D3		BIT_32(0)
260*6add7154SYann Gautier 
261*6add7154SYann Gautier /* PWR_RSECCFGR register fields */
262*6add7154SYann Gautier #define PWR_RSECCFGR_RSEC0			BIT_32(0)
263*6add7154SYann Gautier #define PWR_RSECCFGR_RSEC1			BIT_32(1)
264*6add7154SYann Gautier #define PWR_RSECCFGR_RSEC2			BIT_32(2)
265*6add7154SYann Gautier #define PWR_RSECCFGR_RSEC3			BIT_32(3)
266*6add7154SYann Gautier #define PWR_RSECCFGR_RSEC4			BIT_32(4)
267*6add7154SYann Gautier #define PWR_RSECCFGR_RSEC5			BIT_32(5)
268*6add7154SYann Gautier #define PWR_RSECCFGR_RSEC6			BIT_32(6)
269*6add7154SYann Gautier 
270*6add7154SYann Gautier /* PWR_RPRIVCFGR register fields */
271*6add7154SYann Gautier #define PWR_RPRIVCFGR_RPRIV0			BIT_32(0)
272*6add7154SYann Gautier #define PWR_RPRIVCFGR_RPRIV1			BIT_32(1)
273*6add7154SYann Gautier #define PWR_RPRIVCFGR_RPRIV2			BIT_32(2)
274*6add7154SYann Gautier #define PWR_RPRIVCFGR_RPRIV3			BIT_32(3)
275*6add7154SYann Gautier #define PWR_RPRIVCFGR_RPRIV4			BIT_32(4)
276*6add7154SYann Gautier #define PWR_RPRIVCFGR_RPRIV5			BIT_32(5)
277*6add7154SYann Gautier #define PWR_RPRIVCFGR_RPRIV6			BIT_32(6)
278*6add7154SYann Gautier 
279*6add7154SYann Gautier /* PWR_R0CIDCFGR register fields */
280*6add7154SYann Gautier #define PWR_R0CIDCFGR_CFEN			BIT_32(0)
281*6add7154SYann Gautier #define PWR_R0CIDCFGR_SCID_MASK			GENMASK_32(6, 4)
282*6add7154SYann Gautier #define PWR_R0CIDCFGR_SCID_SHIFT		U(4)
283*6add7154SYann Gautier 
284*6add7154SYann Gautier /* PWR_R1CIDCFGR register fields */
285*6add7154SYann Gautier #define PWR_R1CIDCFGR_CFEN			BIT_32(0)
286*6add7154SYann Gautier #define PWR_R1CIDCFGR_SCID_MASK			GENMASK_32(6, 4)
287*6add7154SYann Gautier #define PWR_R1CIDCFGR_SCID_SHIFT		U(4)
288*6add7154SYann Gautier 
289*6add7154SYann Gautier /* PWR_R2CIDCFGR register fields */
290*6add7154SYann Gautier #define PWR_R2CIDCFGR_CFEN			BIT_32(0)
291*6add7154SYann Gautier #define PWR_R2CIDCFGR_SCID_MASK			GENMASK_32(6, 4)
292*6add7154SYann Gautier #define PWR_R2CIDCFGR_SCID_SHIFT		U(4)
293*6add7154SYann Gautier 
294*6add7154SYann Gautier /* PWR_R3CIDCFGR register fields */
295*6add7154SYann Gautier #define PWR_R3CIDCFGR_CFEN			BIT_32(0)
296*6add7154SYann Gautier #define PWR_R3CIDCFGR_SCID_MASK			GENMASK_32(6, 4)
297*6add7154SYann Gautier #define PWR_R3CIDCFGR_SCID_SHIFT		U(4)
298*6add7154SYann Gautier 
299*6add7154SYann Gautier /* PWR_R4CIDCFGR register fields */
300*6add7154SYann Gautier #define PWR_R4CIDCFGR_CFEN			BIT_32(0)
301*6add7154SYann Gautier #define PWR_R4CIDCFGR_SCID_MASK			GENMASK_32(6, 4)
302*6add7154SYann Gautier #define PWR_R4CIDCFGR_SCID_SHIFT		U(4)
303*6add7154SYann Gautier 
304*6add7154SYann Gautier /* PWR_R5CIDCFGR register fields */
305*6add7154SYann Gautier #define PWR_R5CIDCFGR_CFEN			BIT_32(0)
306*6add7154SYann Gautier #define PWR_R5CIDCFGR_SCID_MASK			GENMASK_32(6, 4)
307*6add7154SYann Gautier #define PWR_R5CIDCFGR_SCID_SHIFT		U(4)
308*6add7154SYann Gautier 
309*6add7154SYann Gautier /* PWR_R6CIDCFGR register fields */
310*6add7154SYann Gautier #define PWR_R6CIDCFGR_CFEN			BIT_32(0)
311*6add7154SYann Gautier #define PWR_R6CIDCFGR_SCID_MASK			GENMASK_32(6, 4)
312*6add7154SYann Gautier #define PWR_R6CIDCFGR_SCID_SHIFT		U(4)
313*6add7154SYann Gautier 
314*6add7154SYann Gautier /* PWR_WIOSECCFGR register fields */
315*6add7154SYann Gautier #define PWR_WIOSECCFGR_WIOSEC1			BIT_32(0)
316*6add7154SYann Gautier #define PWR_WIOSECCFGR_WIOSEC2			BIT_32(1)
317*6add7154SYann Gautier #define PWR_WIOSECCFGR_WIOSEC3			BIT_32(2)
318*6add7154SYann Gautier #define PWR_WIOSECCFGR_WIOSEC4			BIT_32(3)
319*6add7154SYann Gautier #define PWR_WIOSECCFGR_WIOSEC5			BIT_32(4)
320*6add7154SYann Gautier #define PWR_WIOSECCFGR_WIOSEC6			BIT_32(5)
321*6add7154SYann Gautier 
322*6add7154SYann Gautier /* PWR_WIOPRIVCFGR register fields */
323*6add7154SYann Gautier #define PWR_WIOPRIVCFGR_WIOPRIV1		BIT_32(0)
324*6add7154SYann Gautier #define PWR_WIOPRIVCFGR_WIOPRIV2		BIT_32(1)
325*6add7154SYann Gautier #define PWR_WIOPRIVCFGR_WIOPRIV3		BIT_32(2)
326*6add7154SYann Gautier #define PWR_WIOPRIVCFGR_WIOPRIV4		BIT_32(3)
327*6add7154SYann Gautier #define PWR_WIOPRIVCFGR_WIOPRIV5		BIT_32(4)
328*6add7154SYann Gautier #define PWR_WIOPRIVCFGR_WIOPRIV6		BIT_32(5)
329*6add7154SYann Gautier 
330*6add7154SYann Gautier /* PWR_WIO1CIDCFGR register fields */
331*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_CFEN			BIT_32(0)
332*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEM_EN			BIT_32(1)
333*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SCID_MASK		GENMASK_32(6, 4)
334*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SCID_SHIFT		U(4)
335*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC0			BIT_32(16)
336*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC1			BIT_32(17)
337*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC2			BIT_32(18)
338*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC3			BIT_32(19)
339*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC4			BIT_32(20)
340*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC5			BIT_32(21)
341*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC6			BIT_32(22)
342*6add7154SYann Gautier #define PWR_WIO1CIDCFGR_SEMWLC7			BIT_32(23)
343*6add7154SYann Gautier 
344*6add7154SYann Gautier /* PWR_WIO1SEMCR register fields */
345*6add7154SYann Gautier #define PWR_WIO1SEMCR_SEM_MUTEX			BIT_32(0)
346*6add7154SYann Gautier #define PWR_WIO1SEMCR_SEMCID_MASK		GENMASK_32(6, 4)
347*6add7154SYann Gautier #define PWR_WIO1SEMCR_SEMCID_SHIFT		U(4)
348*6add7154SYann Gautier 
349*6add7154SYann Gautier /* PWR_WIO2CIDCFGR register fields */
350*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_CFEN			BIT_32(0)
351*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEM_EN			BIT_32(1)
352*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SCID_MASK		GENMASK_32(6, 4)
353*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SCID_SHIFT		U(4)
354*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC0			BIT_32(16)
355*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC1			BIT_32(17)
356*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC2			BIT_32(18)
357*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC3			BIT_32(19)
358*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC4			BIT_32(20)
359*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC5			BIT_32(21)
360*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC6			BIT_32(22)
361*6add7154SYann Gautier #define PWR_WIO2CIDCFGR_SEMWLC7			BIT_32(23)
362*6add7154SYann Gautier 
363*6add7154SYann Gautier /* PWR_WIO2SEMCR register fields */
364*6add7154SYann Gautier #define PWR_WIO2SEMCR_SEM_MUTEX			BIT_32(0)
365*6add7154SYann Gautier #define PWR_WIO2SEMCR_SEMCID_MASK		GENMASK_32(6, 4)
366*6add7154SYann Gautier #define PWR_WIO2SEMCR_SEMCID_SHIFT		U(4)
367*6add7154SYann Gautier 
368*6add7154SYann Gautier /* PWR_WIO3CIDCFGR register fields */
369*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_CFEN			BIT_32(0)
370*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEM_EN			BIT_32(1)
371*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SCID_MASK		GENMASK_32(6, 4)
372*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SCID_SHIFT		U(4)
373*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC0			BIT_32(16)
374*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC1			BIT_32(17)
375*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC2			BIT_32(18)
376*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC3			BIT_32(19)
377*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC4			BIT_32(20)
378*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC5			BIT_32(21)
379*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC6			BIT_32(22)
380*6add7154SYann Gautier #define PWR_WIO3CIDCFGR_SEMWLC7			BIT_32(23)
381*6add7154SYann Gautier 
382*6add7154SYann Gautier /* PWR_WIO3SEMCR register fields */
383*6add7154SYann Gautier #define PWR_WIO3SEMCR_SEM_MUTEX			BIT_32(0)
384*6add7154SYann Gautier #define PWR_WIO3SEMCR_SEMCID_MASK		GENMASK_32(6, 4)
385*6add7154SYann Gautier #define PWR_WIO3SEMCR_SEMCID_SHIFT		U(4)
386*6add7154SYann Gautier 
387*6add7154SYann Gautier /* PWR_WIO4CIDCFGR register fields */
388*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_CFEN			BIT_32(0)
389*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEM_EN			BIT_32(1)
390*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SCID_MASK		GENMASK_32(6, 4)
391*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SCID_SHIFT		U(4)
392*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC0			BIT_32(16)
393*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC1			BIT_32(17)
394*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC2			BIT_32(18)
395*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC3			BIT_32(19)
396*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC4			BIT_32(20)
397*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC5			BIT_32(21)
398*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC6			BIT_32(22)
399*6add7154SYann Gautier #define PWR_WIO4CIDCFGR_SEMWLC7			BIT_32(23)
400*6add7154SYann Gautier 
401*6add7154SYann Gautier /* PWR_WIO4SEMCR register fields */
402*6add7154SYann Gautier #define PWR_WIO4SEMCR_SEM_MUTEX			BIT_32(0)
403*6add7154SYann Gautier #define PWR_WIO4SEMCR_SEMCID_MASK		GENMASK_32(6, 4)
404*6add7154SYann Gautier #define PWR_WIO4SEMCR_SEMCID_SHIFT		U(4)
405*6add7154SYann Gautier 
406*6add7154SYann Gautier /* PWR_WIO5CIDCFGR register fields */
407*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_CFEN			BIT_32(0)
408*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEM_EN			BIT_32(1)
409*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SCID_MASK		GENMASK_32(6, 4)
410*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SCID_SHIFT		U(4)
411*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC0			BIT_32(16)
412*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC1			BIT_32(17)
413*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC2			BIT_32(18)
414*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC3			BIT_32(19)
415*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC4			BIT_32(20)
416*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC5			BIT_32(21)
417*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC6			BIT_32(22)
418*6add7154SYann Gautier #define PWR_WIO5CIDCFGR_SEMWLC7			BIT_32(23)
419*6add7154SYann Gautier 
420*6add7154SYann Gautier /* PWR_WIO5SEMCR register fields */
421*6add7154SYann Gautier #define PWR_WIO5SEMCR_SEM_MUTEX			BIT_32(0)
422*6add7154SYann Gautier #define PWR_WIO5SEMCR_SEMCID_MASK		GENMASK_32(6, 4)
423*6add7154SYann Gautier #define PWR_WIO5SEMCR_SEMCID_SHIFT		U(4)
424*6add7154SYann Gautier 
425*6add7154SYann Gautier /* PWR_WIO6CIDCFGR register fields */
426*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_CFEN			BIT_32(0)
427*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEM_EN			BIT_32(1)
428*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SCID_MASK		GENMASK_32(6, 4)
429*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SCID_SHIFT		U(4)
430*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC0			BIT_32(16)
431*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC1			BIT_32(17)
432*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC2			BIT_32(18)
433*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC3			BIT_32(19)
434*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC4			BIT_32(20)
435*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC5			BIT_32(21)
436*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC6			BIT_32(22)
437*6add7154SYann Gautier #define PWR_WIO6CIDCFGR_SEMWLC7			BIT_32(23)
438*6add7154SYann Gautier 
439*6add7154SYann Gautier /* PWR_WIO6SEMCR register fields */
440*6add7154SYann Gautier #define PWR_WIO6SEMCR_SEM_MUTEX			BIT_32(0)
441*6add7154SYann Gautier #define PWR_WIO6SEMCR_SEMCID_MASK		GENMASK_32(6, 4)
442*6add7154SYann Gautier #define PWR_WIO6SEMCR_SEMCID_SHIFT		U(4)
443*6add7154SYann Gautier 
444*6add7154SYann Gautier /* PWR_CPU1D1SR register fields */
445*6add7154SYann Gautier #define PWR_CPU1D1SR_HOLD_BOOT			BIT_32(0)
446*6add7154SYann Gautier #define PWR_CPU1D1SR_CSTATE_MASK		GENMASK_32(3, 2)
447*6add7154SYann Gautier #define PWR_CPU1D1SR_CSTATE_SHIFT		U(2)
448*6add7154SYann Gautier #define PWR_CPU1D1SR_DSTATE_MASK		GENMASK_32(10, 8)
449*6add7154SYann Gautier #define PWR_CPU1D1SR_DSTATE_SHIFT		U(8)
450*6add7154SYann Gautier 
451*6add7154SYann Gautier /* PWR_CPU2D2SR register fields */
452*6add7154SYann Gautier #define PWR_CPU2D2SR_HOLD_BOOT			BIT_32(0)
453*6add7154SYann Gautier #define PWR_CPU2D2SR_WFBEN			BIT_32(1)
454*6add7154SYann Gautier #define PWR_CPU2D2SR_CSTATE_MASK		GENMASK_32(3, 2)
455*6add7154SYann Gautier #define PWR_CPU2D2SR_CSTATE_SHIFT		U(2)
456*6add7154SYann Gautier #define PWR_CPU2D2SR_DSTATE_MASK		GENMASK_32(10, 8)
457*6add7154SYann Gautier #define PWR_CPU2D2SR_DSTATE_SHIFT		U(8)
458*6add7154SYann Gautier 
459*6add7154SYann Gautier /* PWR_CPU3D3SR register fields */
460*6add7154SYann Gautier #define PWR_CPU3D3SR_CSTATE_MASK		GENMASK_32(3, 2)
461*6add7154SYann Gautier #define PWR_CPU3D3SR_CSTATE_SHIFT		U(2)
462*6add7154SYann Gautier #define PWR_CPU3D3SR_DSTATE_MASK		GENMASK_32(10, 8)
463*6add7154SYann Gautier #define PWR_CPU3D3SR_DSTATE_SHIFT		U(8)
464*6add7154SYann Gautier 
465*6add7154SYann Gautier /* PWR_DBGR register fields */
466*6add7154SYann Gautier #define PWR_DBGR_FD3S				BIT_32(0)
467*6add7154SYann Gautier #define PWR_DBGR_VDDIOKRETRAM			BIT_32(16)
468*6add7154SYann Gautier #define PWR_DBGR_VDDIOKBKPRAM			BIT_32(17)
469*6add7154SYann Gautier #define PWR_DBGR_VDDIOKD3			BIT_32(18)
470*6add7154SYann Gautier #define PWR_DBGR_VDDIOKLPSRAM1			BIT_32(19)
471*6add7154SYann Gautier 
472*6add7154SYann Gautier /* PWR_VERR register fields */
473*6add7154SYann Gautier #define PWR_VERR_MINREV_MASK			GENMASK_32(3, 0)
474*6add7154SYann Gautier #define PWR_VERR_MINREV_SHIFT			U(0)
475*6add7154SYann Gautier #define PWR_VERR_MAJREV_MASK			GENMASK_32(7, 4)
476*6add7154SYann Gautier #define PWR_VERR_MAJREV_SHIFT			U(4)
477*6add7154SYann Gautier 
478*6add7154SYann Gautier #endif /* STM32MP2_PWR_H */
479