xref: /rk3399_rockchip-uboot/arch/arm/include/asm/arch-rockchip/grf_rk3568.h (revision 7e26af3867078dd5ef0709f27ed7a74afa7aa6a2)
1*7e26af38SJoseph Chen /*
2*7e26af38SJoseph Chen  * (C) Copyright 2020 Rockchip Electronics Co., Ltd.
3*7e26af38SJoseph Chen  *
4*7e26af38SJoseph Chen  * SPDX-License-Identifier:     GPL-2.0+
5*7e26af38SJoseph Chen  */
6*7e26af38SJoseph Chen #ifndef _ASM_ARCH_GRF_RK3568_H
7*7e26af38SJoseph Chen #define _ASM_ARCH_GRF_RK3568_H
8*7e26af38SJoseph Chen 
9*7e26af38SJoseph Chen #include <common.h>
10*7e26af38SJoseph Chen 
11*7e26af38SJoseph Chen struct rk3568_grf {
12*7e26af38SJoseph Chen 	unsigned int gpio1a_iomux_l;
13*7e26af38SJoseph Chen 	unsigned int gpio1a_iomux_h;
14*7e26af38SJoseph Chen 	unsigned int gpio1b_iomux_l;
15*7e26af38SJoseph Chen 	unsigned int gpio1b_iomux_h;
16*7e26af38SJoseph Chen 	unsigned int gpio1c_iomux_l;
17*7e26af38SJoseph Chen 	unsigned int gpio1c_iomux_h;
18*7e26af38SJoseph Chen 	unsigned int gpio1d_iomux_l;
19*7e26af38SJoseph Chen 	unsigned int gpio1d_iomux_h;
20*7e26af38SJoseph Chen 	unsigned int gpio2a_iomux_l;
21*7e26af38SJoseph Chen 	unsigned int gpio2a_iomux_h;
22*7e26af38SJoseph Chen 	unsigned int gpio2b_iomux_l;
23*7e26af38SJoseph Chen 	unsigned int gpio2b_iomux_h;
24*7e26af38SJoseph Chen 	unsigned int gpio2c_iomux_l;
25*7e26af38SJoseph Chen 	unsigned int gpio2c_iomux_h;
26*7e26af38SJoseph Chen 	unsigned int gpio2d_iomux_l;
27*7e26af38SJoseph Chen 	unsigned int gpio2d_iomux_h;
28*7e26af38SJoseph Chen 	unsigned int gpio3a_iomux_l;
29*7e26af38SJoseph Chen 	unsigned int gpio3a_iomux_h;
30*7e26af38SJoseph Chen 	unsigned int gpio3b_iomux_l;
31*7e26af38SJoseph Chen 	unsigned int gpio3b_iomux_h;
32*7e26af38SJoseph Chen 	unsigned int gpio3c_iomux_l;
33*7e26af38SJoseph Chen 	unsigned int gpio3c_iomux_h;
34*7e26af38SJoseph Chen 	unsigned int gpio3d_iomux_l;
35*7e26af38SJoseph Chen 	unsigned int gpio3d_iomux_h;
36*7e26af38SJoseph Chen 	unsigned int gpio4a_iomux_l;
37*7e26af38SJoseph Chen 	unsigned int gpio4a_iomux_h;
38*7e26af38SJoseph Chen 	unsigned int gpio4b_iomux_l;
39*7e26af38SJoseph Chen 	unsigned int gpio4b_iomux_h;
40*7e26af38SJoseph Chen 	unsigned int gpio4c_iomux_l;
41*7e26af38SJoseph Chen 	unsigned int gpio4c_iomux_h;
42*7e26af38SJoseph Chen 	unsigned int gpio4d_iomux_l;
43*7e26af38SJoseph Chen 	unsigned int reserved0[(0x0080 - 0x0078) / 4 - 1];
44*7e26af38SJoseph Chen 	unsigned int gpio1a_p;
45*7e26af38SJoseph Chen 	unsigned int gpio1b_p;
46*7e26af38SJoseph Chen 	unsigned int gpio1c_p;
47*7e26af38SJoseph Chen 	unsigned int gpio1d_p;
48*7e26af38SJoseph Chen 	unsigned int gpio2a_p;
49*7e26af38SJoseph Chen 	unsigned int gpio2b_p;
50*7e26af38SJoseph Chen 	unsigned int gpio2c_p;
51*7e26af38SJoseph Chen 	unsigned int gpio2d_p;
52*7e26af38SJoseph Chen 	unsigned int gpio3a_p;
53*7e26af38SJoseph Chen 	unsigned int gpio3b_p;
54*7e26af38SJoseph Chen 	unsigned int gpio3c_p;
55*7e26af38SJoseph Chen 	unsigned int gpio3d_p;
56*7e26af38SJoseph Chen 	unsigned int gpio4a_p;
57*7e26af38SJoseph Chen 	unsigned int gpio4b_p;
58*7e26af38SJoseph Chen 	unsigned int gpio4c_p;
59*7e26af38SJoseph Chen 	unsigned int gpio4d_p;
60*7e26af38SJoseph Chen 	unsigned int gpio1a_ie;
61*7e26af38SJoseph Chen 	unsigned int gpio1b_ie;
62*7e26af38SJoseph Chen 	unsigned int gpio1c_ie;
63*7e26af38SJoseph Chen 	unsigned int gpio1d_ie;
64*7e26af38SJoseph Chen 	unsigned int gpio2a_ie;
65*7e26af38SJoseph Chen 	unsigned int gpio2b_ie;
66*7e26af38SJoseph Chen 	unsigned int gpio2c_ie;
67*7e26af38SJoseph Chen 	unsigned int gpio2d_ie;
68*7e26af38SJoseph Chen 	unsigned int gpio3a_ie;
69*7e26af38SJoseph Chen 	unsigned int gpio3b_ie;
70*7e26af38SJoseph Chen 	unsigned int gpio3c_ie;
71*7e26af38SJoseph Chen 	unsigned int gpio3d_ie;
72*7e26af38SJoseph Chen 	unsigned int gpio4a_ie;
73*7e26af38SJoseph Chen 	unsigned int gpio4b_ie;
74*7e26af38SJoseph Chen 	unsigned int gpio4c_ie;
75*7e26af38SJoseph Chen 	unsigned int gpio4d_ie;
76*7e26af38SJoseph Chen 	unsigned int gpio1a_opd;
77*7e26af38SJoseph Chen 	unsigned int gpio1b_opd;
78*7e26af38SJoseph Chen 	unsigned int gpio1c_opd;
79*7e26af38SJoseph Chen 	unsigned int gpio1d_opd;
80*7e26af38SJoseph Chen 	unsigned int gpio2a_opd;
81*7e26af38SJoseph Chen 	unsigned int gpio2b_opd;
82*7e26af38SJoseph Chen 	unsigned int gpio2c_opd;
83*7e26af38SJoseph Chen 	unsigned int gpio2d_opd;
84*7e26af38SJoseph Chen 	unsigned int gpio3a_opd;
85*7e26af38SJoseph Chen 	unsigned int gpio3b_opd;
86*7e26af38SJoseph Chen 	unsigned int gpio3c_opd;
87*7e26af38SJoseph Chen 	unsigned int gpio3d_opd;
88*7e26af38SJoseph Chen 	unsigned int gpio4a_opd;
89*7e26af38SJoseph Chen 	unsigned int gpio4b_opd;
90*7e26af38SJoseph Chen 	unsigned int gpio4c_opd;
91*7e26af38SJoseph Chen 	unsigned int gpio4d_opd;
92*7e26af38SJoseph Chen 	unsigned int gpio1a_sus;
93*7e26af38SJoseph Chen 	unsigned int gpio1b_sus;
94*7e26af38SJoseph Chen 	unsigned int gpio1c_sus;
95*7e26af38SJoseph Chen 	unsigned int gpio1d_sus;
96*7e26af38SJoseph Chen 	unsigned int gpio2a_sus;
97*7e26af38SJoseph Chen 	unsigned int gpio2b_sus;
98*7e26af38SJoseph Chen 	unsigned int gpio2c_sus;
99*7e26af38SJoseph Chen 	unsigned int gpio2d_sus;
100*7e26af38SJoseph Chen 	unsigned int gpio3a_sus;
101*7e26af38SJoseph Chen 	unsigned int gpio3b_sus;
102*7e26af38SJoseph Chen 	unsigned int gpio3c_sus;
103*7e26af38SJoseph Chen 	unsigned int gpio3d_sus;
104*7e26af38SJoseph Chen 	unsigned int gpio4a_sus;
105*7e26af38SJoseph Chen 	unsigned int gpio4b_sus;
106*7e26af38SJoseph Chen 	unsigned int gpio4c_sus;
107*7e26af38SJoseph Chen 	unsigned int gpio4d_sus;
108*7e26af38SJoseph Chen 	unsigned int gpio1a_sl;
109*7e26af38SJoseph Chen 	unsigned int gpio1b_sl;
110*7e26af38SJoseph Chen 	unsigned int gpio1c_sl;
111*7e26af38SJoseph Chen 	unsigned int gpio1d_sl;
112*7e26af38SJoseph Chen 	unsigned int gpio2a_sl;
113*7e26af38SJoseph Chen 	unsigned int gpio2b_sl;
114*7e26af38SJoseph Chen 	unsigned int gpio2c_sl;
115*7e26af38SJoseph Chen 	unsigned int gpio2d_sl;
116*7e26af38SJoseph Chen 	unsigned int gpio3a_sl;
117*7e26af38SJoseph Chen 	unsigned int gpio3b_sl;
118*7e26af38SJoseph Chen 	unsigned int gpio3c_sl;
119*7e26af38SJoseph Chen 	unsigned int gpio3d_sl;
120*7e26af38SJoseph Chen 	unsigned int gpio4a_sl;
121*7e26af38SJoseph Chen 	unsigned int gpio4b_sl;
122*7e26af38SJoseph Chen 	unsigned int gpio4c_sl;
123*7e26af38SJoseph Chen 	unsigned int gpio4d_sl;
124*7e26af38SJoseph Chen 	unsigned int reserved1[(0x0200 - 0x01bc) / 4 - 1];
125*7e26af38SJoseph Chen 	unsigned int gpio1a_ds_0;
126*7e26af38SJoseph Chen 	unsigned int gpio1a_ds_1;
127*7e26af38SJoseph Chen 	unsigned int gpio1a_ds_2;
128*7e26af38SJoseph Chen 	unsigned int gpio1a_ds_3;
129*7e26af38SJoseph Chen 	unsigned int gpio1b_ds_0;
130*7e26af38SJoseph Chen 	unsigned int gpio1b_ds_1;
131*7e26af38SJoseph Chen 	unsigned int gpio1b_ds_2;
132*7e26af38SJoseph Chen 	unsigned int gpio1b_ds_3;
133*7e26af38SJoseph Chen 	unsigned int gpio1c_ds_0;
134*7e26af38SJoseph Chen 	unsigned int gpio1c_ds_1;
135*7e26af38SJoseph Chen 	unsigned int gpio1c_ds_2;
136*7e26af38SJoseph Chen 	unsigned int gpio1c_ds_3;
137*7e26af38SJoseph Chen 	unsigned int gpio1d_ds_0;
138*7e26af38SJoseph Chen 	unsigned int gpio1d_ds_1;
139*7e26af38SJoseph Chen 	unsigned int gpio1d_ds_2;
140*7e26af38SJoseph Chen 	unsigned int gpio1d_ds_3;
141*7e26af38SJoseph Chen 	unsigned int gpio2a_ds_0;
142*7e26af38SJoseph Chen 	unsigned int gpio2a_ds_1;
143*7e26af38SJoseph Chen 	unsigned int gpio2a_ds_2;
144*7e26af38SJoseph Chen 	unsigned int gpio2a_ds_3;
145*7e26af38SJoseph Chen 	unsigned int gpio2b_ds_0;
146*7e26af38SJoseph Chen 	unsigned int gpio2b_ds_1;
147*7e26af38SJoseph Chen 	unsigned int gpio2b_ds_2;
148*7e26af38SJoseph Chen 	unsigned int gpio2b_ds_3;
149*7e26af38SJoseph Chen 	unsigned int gpio2c_ds_0;
150*7e26af38SJoseph Chen 	unsigned int gpio2c_ds_1;
151*7e26af38SJoseph Chen 	unsigned int gpio2c_ds_2;
152*7e26af38SJoseph Chen 	unsigned int gpio2c_ds_3;
153*7e26af38SJoseph Chen 	unsigned int gpio2d_ds_0;
154*7e26af38SJoseph Chen 	unsigned int gpio2d_ds_1;
155*7e26af38SJoseph Chen 	unsigned int gpio2d_ds_2;
156*7e26af38SJoseph Chen 	unsigned int gpio2d_ds_3;
157*7e26af38SJoseph Chen 	unsigned int gpio3a_ds_0;
158*7e26af38SJoseph Chen 	unsigned int gpio3a_ds_1;
159*7e26af38SJoseph Chen 	unsigned int gpio3a_ds_2;
160*7e26af38SJoseph Chen 	unsigned int gpio3a_ds_3;
161*7e26af38SJoseph Chen 	unsigned int gpio3b_ds_0;
162*7e26af38SJoseph Chen 	unsigned int gpio3b_ds_1;
163*7e26af38SJoseph Chen 	unsigned int gpio3b_ds_2;
164*7e26af38SJoseph Chen 	unsigned int gpio3b_ds_3;
165*7e26af38SJoseph Chen 	unsigned int gpio3c_ds_0;
166*7e26af38SJoseph Chen 	unsigned int gpio3c_ds_1;
167*7e26af38SJoseph Chen 	unsigned int gpio3c_ds_2;
168*7e26af38SJoseph Chen 	unsigned int gpio3c_ds_3;
169*7e26af38SJoseph Chen 	unsigned int gpio3d_ds_0;
170*7e26af38SJoseph Chen 	unsigned int gpio3d_ds_1;
171*7e26af38SJoseph Chen 	unsigned int gpio3d_ds_2;
172*7e26af38SJoseph Chen 	unsigned int gpio3d_ds_3;
173*7e26af38SJoseph Chen 	unsigned int gpio4a_ds_0;
174*7e26af38SJoseph Chen 	unsigned int gpio4a_ds_1;
175*7e26af38SJoseph Chen 	unsigned int gpio4a_ds_2;
176*7e26af38SJoseph Chen 	unsigned int gpio4a_ds_3;
177*7e26af38SJoseph Chen 	unsigned int gpio4b_ds_0;
178*7e26af38SJoseph Chen 	unsigned int gpio4b_ds_1;
179*7e26af38SJoseph Chen 	unsigned int gpio4b_ds_2;
180*7e26af38SJoseph Chen 	unsigned int gpio4b_ds_3;
181*7e26af38SJoseph Chen 	unsigned int gpio4c_ds_0;
182*7e26af38SJoseph Chen 	unsigned int gpio4c_ds_1;
183*7e26af38SJoseph Chen 	unsigned int gpio4c_ds_2;
184*7e26af38SJoseph Chen 	unsigned int gpio4c_ds_3;
185*7e26af38SJoseph Chen 	unsigned int gpio4d_ds_0;
186*7e26af38SJoseph Chen 	unsigned int gpio4d_ds_1;
187*7e26af38SJoseph Chen 	unsigned int gpio4d_ds_2;
188*7e26af38SJoseph Chen 	unsigned int gpio4d_ds_3;
189*7e26af38SJoseph Chen 	unsigned int iofunc_sel0;
190*7e26af38SJoseph Chen 	unsigned int iofunc_sel1;
191*7e26af38SJoseph Chen 	unsigned int iofunc_sel2;
192*7e26af38SJoseph Chen 	unsigned int iofunc_sel3;
193*7e26af38SJoseph Chen 	unsigned int iofunc_sel4;
194*7e26af38SJoseph Chen 	unsigned int iofunc_sel5;
195*7e26af38SJoseph Chen 	unsigned int reserved2[(0x0340 - 0x0314) / 4 - 1];
196*7e26af38SJoseph Chen 	unsigned int vi_con0;
197*7e26af38SJoseph Chen 	unsigned int vi_con1;
198*7e26af38SJoseph Chen 	unsigned int vi_status0;
199*7e26af38SJoseph Chen 	unsigned int reserved3[(0x0360 - 0x0348) / 4 - 1];
200*7e26af38SJoseph Chen 	unsigned int vo_con0;
201*7e26af38SJoseph Chen 	unsigned int vo_con1;
202*7e26af38SJoseph Chen 	unsigned int vo_con2;
203*7e26af38SJoseph Chen 	unsigned int vo_con3;
204*7e26af38SJoseph Chen 	unsigned int reserved4[(0x0380 - 0x036c) / 4 - 1];
205*7e26af38SJoseph Chen 	unsigned int mac0_con0;
206*7e26af38SJoseph Chen 	unsigned int mac0_con1;
207*7e26af38SJoseph Chen 	unsigned int mac1_con0;
208*7e26af38SJoseph Chen 	unsigned int mac1_con1;
209*7e26af38SJoseph Chen 	unsigned int reserved5[(0x03a0 - 0x038c) / 4 - 1];
210*7e26af38SJoseph Chen 	unsigned int biu_con0;
211*7e26af38SJoseph Chen 	unsigned int biu_con1;
212*7e26af38SJoseph Chen 	unsigned int biu_con2;
213*7e26af38SJoseph Chen 	unsigned int reserved6[(0x03c0 - 0x03a8) / 4 - 1];
214*7e26af38SJoseph Chen 	unsigned int gic_con0;
215*7e26af38SJoseph Chen 	unsigned int gic_con1;
216*7e26af38SJoseph Chen 	unsigned int gic_con2;
217*7e26af38SJoseph Chen 	unsigned int reserved7[(0x03f0 - 0x03c8) / 4 - 1];
218*7e26af38SJoseph Chen 	unsigned int gpu_con0;
219*7e26af38SJoseph Chen 	unsigned int gpu_con1;
220*7e26af38SJoseph Chen 	unsigned int reserved8[(0x0400 - 0x03f4) / 4 - 1];
221*7e26af38SJoseph Chen 	unsigned int cpu_con0;
222*7e26af38SJoseph Chen 	unsigned int reserved9[(0x0420 - 0x0400) / 4 - 1];
223*7e26af38SJoseph Chen 	unsigned int cpu_status0;
224*7e26af38SJoseph Chen 	unsigned int reserved10[(0x0500 - 0x0420) / 4 - 1];
225*7e26af38SJoseph Chen 	unsigned int soc_con0;
226*7e26af38SJoseph Chen 	unsigned int soc_con1;
227*7e26af38SJoseph Chen 	unsigned int soc_con2;
228*7e26af38SJoseph Chen 	unsigned int soc_con3;
229*7e26af38SJoseph Chen 	unsigned int reserved11[(0x0514 - 0x050c) / 4 - 1];
230*7e26af38SJoseph Chen 	unsigned int soc_con5;
231*7e26af38SJoseph Chen 	unsigned int soc_con6;
232*7e26af38SJoseph Chen 	unsigned int reserved12[(0x0580 - 0x0518) / 4 - 1];
233*7e26af38SJoseph Chen 	unsigned int soc_status0;
234*7e26af38SJoseph Chen 	unsigned int reserved13[(0x05c0 - 0x0580) / 4 - 1];
235*7e26af38SJoseph Chen 	unsigned int ram_con;
236*7e26af38SJoseph Chen 	unsigned int core_ram_con;
237*7e26af38SJoseph Chen 	unsigned int reserved14[(0x0600 - 0x05c4) / 4 - 1];
238*7e26af38SJoseph Chen 	unsigned int tsadc_con;
239*7e26af38SJoseph Chen 	unsigned int reserved15[(0x0610 - 0x0600) / 4 - 1];
240*7e26af38SJoseph Chen 	unsigned int saradc_con;
241*7e26af38SJoseph Chen 	unsigned int reserved16[(0x0700 - 0x0610) / 4 - 1];
242*7e26af38SJoseph Chen 	unsigned int gpupvtpll_con0;
243*7e26af38SJoseph Chen 	unsigned int gpupvtpll_con1;
244*7e26af38SJoseph Chen 	unsigned int gpupvtpll_con2;
245*7e26af38SJoseph Chen 	unsigned int gpupvtpll_con3;
246*7e26af38SJoseph Chen 	unsigned int reserved17[(0x0740 - 0x070c) / 4 - 1];
247*7e26af38SJoseph Chen 	unsigned int npupvtpll_con0;
248*7e26af38SJoseph Chen 	unsigned int npupvtpll_con1;
249*7e26af38SJoseph Chen 	unsigned int npupvtpll_con2;
250*7e26af38SJoseph Chen 	unsigned int npupvtpll_con3;
251*7e26af38SJoseph Chen 	unsigned int reserved18[(0x0800 - 0x074c) / 4 - 1];
252*7e26af38SJoseph Chen 	unsigned int chip_id;
253*7e26af38SJoseph Chen 	unsigned int reserved19[(0x0840 - 0x0800) / 4 - 1];
254*7e26af38SJoseph Chen 	unsigned int gpio1c5_ds;
255*7e26af38SJoseph Chen 	unsigned int gpio2a2_ds;
256*7e26af38SJoseph Chen 	unsigned int gpio2b0_ds;
257*7e26af38SJoseph Chen 	unsigned int gpio3a0_ds;
258*7e26af38SJoseph Chen 	unsigned int gpio3a6_ds;
259*7e26af38SJoseph Chen 	unsigned int gpio4a0_ds;
260*7e26af38SJoseph Chen 	unsigned int reserved20[(0x0900 - 0x0854) / 4 - 1];
261*7e26af38SJoseph Chen 	unsigned int dmac0_con0;
262*7e26af38SJoseph Chen 	unsigned int dmac0_con1;
263*7e26af38SJoseph Chen 	unsigned int dmac0_con2;
264*7e26af38SJoseph Chen 	unsigned int dmac0_con3;
265*7e26af38SJoseph Chen 	unsigned int dmac0_con4;
266*7e26af38SJoseph Chen 	unsigned int dmac0_con5;
267*7e26af38SJoseph Chen 	unsigned int dmac0_con6;
268*7e26af38SJoseph Chen 	unsigned int dmac0_con7;
269*7e26af38SJoseph Chen 	unsigned int dmac0_con8;
270*7e26af38SJoseph Chen 	unsigned int dmac0_con9;
271*7e26af38SJoseph Chen 	unsigned int reserved21[(0x0940 - 0x0924) / 4 - 1];
272*7e26af38SJoseph Chen 	unsigned int dmac1_con0;
273*7e26af38SJoseph Chen 	unsigned int dmac1_con1;
274*7e26af38SJoseph Chen 	unsigned int dmac1_con2;
275*7e26af38SJoseph Chen 	unsigned int dmac1_con3;
276*7e26af38SJoseph Chen 	unsigned int dmac1_con4;
277*7e26af38SJoseph Chen 	unsigned int dmac1_con5;
278*7e26af38SJoseph Chen 	unsigned int dmac1_con6;
279*7e26af38SJoseph Chen 	unsigned int dmac1_con7;
280*7e26af38SJoseph Chen 	unsigned int dmac1_con8;
281*7e26af38SJoseph Chen 	unsigned int dmac1_con9;
282*7e26af38SJoseph Chen };
283*7e26af38SJoseph Chen 
284*7e26af38SJoseph Chen check_member(rk3568_grf, dmac1_con9, 0x0964);
285*7e26af38SJoseph Chen 
286*7e26af38SJoseph Chen struct rk3568_pmugrf {
287*7e26af38SJoseph Chen 	unsigned int pmu_gpio0a_iomux_l;
288*7e26af38SJoseph Chen 	unsigned int pmu_gpio0a_iomux_h;
289*7e26af38SJoseph Chen 	unsigned int pmu_gpio0b_iomux_l;
290*7e26af38SJoseph Chen 	unsigned int pmu_gpio0b_iomux_h;
291*7e26af38SJoseph Chen 	unsigned int pmu_gpio0c_iomux_l;
292*7e26af38SJoseph Chen 	unsigned int pmu_gpio0c_iomux_h;
293*7e26af38SJoseph Chen 	unsigned int pmu_gpio0d_iomux_l;
294*7e26af38SJoseph Chen 	unsigned int reserved0[(0x0020 - 0x0018) / 4 - 1];
295*7e26af38SJoseph Chen 	unsigned int pmu_gpio0a_p;
296*7e26af38SJoseph Chen 	unsigned int pmu_gpio0b_p;
297*7e26af38SJoseph Chen 	unsigned int pmu_gpio0c_p;
298*7e26af38SJoseph Chen 	unsigned int pmu_gpio0d_p;
299*7e26af38SJoseph Chen 	unsigned int pmu_gpio0a_ie;
300*7e26af38SJoseph Chen 	unsigned int pmu_gpio0b_ie;
301*7e26af38SJoseph Chen 	unsigned int pmu_gpio0c_ie;
302*7e26af38SJoseph Chen 	unsigned int pmu_gpio0d_ie;
303*7e26af38SJoseph Chen 	unsigned int pmu_gpio0a_opd;
304*7e26af38SJoseph Chen 	unsigned int pmu_gpio0b_opd;
305*7e26af38SJoseph Chen 	unsigned int pmu_gpio0c_opd;
306*7e26af38SJoseph Chen 	unsigned int pmu_gpio0d_opd;
307*7e26af38SJoseph Chen 	unsigned int pmu_gpio0a_sus;
308*7e26af38SJoseph Chen 	unsigned int pmu_gpio0b_sus;
309*7e26af38SJoseph Chen 	unsigned int pmu_gpio0c_sus;
310*7e26af38SJoseph Chen 	unsigned int pmu_gpio0d_sus;
311*7e26af38SJoseph Chen 	unsigned int pmu_gpio0a_sl;
312*7e26af38SJoseph Chen 	unsigned int pmu_gpio0b_sl;
313*7e26af38SJoseph Chen 	unsigned int pmu_gpio0c_sl;
314*7e26af38SJoseph Chen 	unsigned int pmu_gpio0d_sl;
315*7e26af38SJoseph Chen 	unsigned int pmu_gpio0a_ds_0;
316*7e26af38SJoseph Chen 	unsigned int pmu_gpio0a_ds_1;
317*7e26af38SJoseph Chen 	unsigned int pmu_gpio0a_ds_2;
318*7e26af38SJoseph Chen 	unsigned int pmu_gpio0a_ds_3;
319*7e26af38SJoseph Chen 	unsigned int pmu_gpio0b_ds_0;
320*7e26af38SJoseph Chen 	unsigned int pmu_gpio0b_ds_1;
321*7e26af38SJoseph Chen 	unsigned int pmu_gpio0b_ds_2;
322*7e26af38SJoseph Chen 	unsigned int pmu_gpio0b_ds_3;
323*7e26af38SJoseph Chen 	unsigned int pmu_gpio0c_ds_0;
324*7e26af38SJoseph Chen 	unsigned int pmu_gpio0c_ds_1;
325*7e26af38SJoseph Chen 	unsigned int pmu_gpio0c_ds_2;
326*7e26af38SJoseph Chen 	unsigned int pmu_gpio0c_ds_3;
327*7e26af38SJoseph Chen 	unsigned int pmu_gpio0d_ds_0;
328*7e26af38SJoseph Chen 	unsigned int pmu_gpio0d_ds_1;
329*7e26af38SJoseph Chen 	unsigned int pmu_gpio0d_ds_2;
330*7e26af38SJoseph Chen 	unsigned int pmu_gpio0d_ds_3;
331*7e26af38SJoseph Chen 	unsigned int reserved1[(0x0100 - 0x00ac) / 4 - 1];
332*7e26af38SJoseph Chen 	unsigned int pmu_soc_con0;
333*7e26af38SJoseph Chen 	unsigned int pmu_soc_con1;
334*7e26af38SJoseph Chen 	unsigned int pmu_soc_con2;
335*7e26af38SJoseph Chen 	unsigned int pmu_soc_con3;
336*7e26af38SJoseph Chen 	unsigned int pmu_soc_con4;
337*7e26af38SJoseph Chen 	unsigned int pmu_soc_con5;
338*7e26af38SJoseph Chen 	unsigned int reserved2[(0x0124 - 0x0114) / 4 - 1];
339*7e26af38SJoseph Chen 	unsigned int pmu_io_vsel0;
340*7e26af38SJoseph Chen 	unsigned int pmu_io_vsel1;
341*7e26af38SJoseph Chen 	unsigned int pmu_io_vsel2;
342*7e26af38SJoseph Chen 	unsigned int reserved3[(0x0180 - 0x012c) / 4 - 1];
343*7e26af38SJoseph Chen 	unsigned int pmu_dll_con0;
344*7e26af38SJoseph Chen 	unsigned int reserved4[(0x0200 - 0x0180) / 4 - 1];
345*7e26af38SJoseph Chen 	unsigned int pmu_os_reg0;
346*7e26af38SJoseph Chen 	unsigned int pmu_os_reg1;
347*7e26af38SJoseph Chen 	unsigned int pmu_os_reg2;
348*7e26af38SJoseph Chen 	unsigned int pmu_os_reg3;
349*7e26af38SJoseph Chen 	unsigned int pmu_os_reg4;
350*7e26af38SJoseph Chen 	unsigned int pmu_os_reg5;
351*7e26af38SJoseph Chen 	unsigned int pmu_os_reg6;
352*7e26af38SJoseph Chen 	unsigned int pmu_os_reg7;
353*7e26af38SJoseph Chen 	unsigned int pmu_os_reg8;
354*7e26af38SJoseph Chen 	unsigned int pmu_os_reg9;
355*7e26af38SJoseph Chen 	unsigned int pmu_os_reg10;
356*7e26af38SJoseph Chen 	unsigned int pmu_os_reg11;
357*7e26af38SJoseph Chen 	unsigned int pmu_reset_function_status;
358*7e26af38SJoseph Chen 	unsigned int pmu_reset_function_clr;
359*7e26af38SJoseph Chen 	unsigned int reserved5[(0x0380 - 0x0234) / 4 - 1];
360*7e26af38SJoseph Chen 	unsigned int pmu_sig_detect_con;
361*7e26af38SJoseph Chen 	unsigned int reserved6[(0x0390 - 0x0380) / 4 - 1];
362*7e26af38SJoseph Chen 	unsigned int pmu_sig_detect_status;
363*7e26af38SJoseph Chen 	unsigned int reserved7[(0x03a0 - 0x0390) / 4 - 1];
364*7e26af38SJoseph Chen 	unsigned int pmu_sig_detect_status_clear;
365*7e26af38SJoseph Chen 	unsigned int reserved8[(0x03b0 - 0x03a0) / 4 - 1];
366*7e26af38SJoseph Chen 	unsigned int pmu_sdmmc_det_counter;
367*7e26af38SJoseph Chen };
368*7e26af38SJoseph Chen 
369*7e26af38SJoseph Chen check_member(rk3568_pmugrf, pmu_sdmmc_det_counter, 0x03b0);
370*7e26af38SJoseph Chen 
371*7e26af38SJoseph Chen struct rk3568_ddrgrf {
372*7e26af38SJoseph Chen 	unsigned int ddr_con0;
373*7e26af38SJoseph Chen 	unsigned int ddr_con1;
374*7e26af38SJoseph Chen 	unsigned int ddr_con2;
375*7e26af38SJoseph Chen 	unsigned int ddr_con3;
376*7e26af38SJoseph Chen 	unsigned int ddr_con4;
377*7e26af38SJoseph Chen 	unsigned int ddr_split_con;
378*7e26af38SJoseph Chen 	unsigned int reserved0[(0x0020 - 0x0014) / 4 - 1];
379*7e26af38SJoseph Chen 	unsigned int ddr_lp_con;
380*7e26af38SJoseph Chen 	unsigned int reserved1[(0x0100 - 0x0020) / 4 - 1];
381*7e26af38SJoseph Chen 	unsigned int ddr_status0;
382*7e26af38SJoseph Chen 	unsigned int ddr_status1;
383*7e26af38SJoseph Chen 	unsigned int ddr_status2;
384*7e26af38SJoseph Chen 	unsigned int ddr_status3;
385*7e26af38SJoseph Chen 	unsigned int ddr_status4;
386*7e26af38SJoseph Chen 	unsigned int ddr_status5;
387*7e26af38SJoseph Chen 	unsigned int ddr_status6;
388*7e26af38SJoseph Chen 	unsigned int ddr_status7;
389*7e26af38SJoseph Chen 	unsigned int ddr_status8;
390*7e26af38SJoseph Chen 	unsigned int ddr_status9;
391*7e26af38SJoseph Chen 	unsigned int reserved2[(0x0130 - 0x0124) / 4 - 1];
392*7e26af38SJoseph Chen 	unsigned int ddr_status10;
393*7e26af38SJoseph Chen 	unsigned int ddr_status11;
394*7e26af38SJoseph Chen 	unsigned int ddr_status12;
395*7e26af38SJoseph Chen };
396*7e26af38SJoseph Chen 
397*7e26af38SJoseph Chen check_member(rk3568_ddrgrf, ddr_status12, 0x0138);
398*7e26af38SJoseph Chen 
399*7e26af38SJoseph Chen #endif
400