xref: /OK3568_Linux_fs/u-boot/arch/arm/include/asm/arch-rockchip/grf_px30.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 /*
2  * (C) Copyright 2017 Rockchip Electronics Co., Ltd.
3  *
4  * SPDX-License-Identifier:     GPL-2.0+
5  */
6 #ifndef _ASM_ARCH_GRF_px30_H
7 #define _ASM_ARCH_GRF_px30_H
8 
9 #include <common.h>
10 
11 struct px30_grf {
12 	unsigned int gpio1al_iomux;
13 	unsigned int gpio1ah_iomux;
14 	unsigned int gpio1bl_iomux;
15 	unsigned int gpio1bh_iomux;
16 	unsigned int gpio1cl_iomux;
17 	unsigned int gpio1ch_iomux;
18 	unsigned int gpio1dl_iomux;
19 	unsigned int gpio1dh_iomux;
20 
21 	unsigned int gpio2al_iomux;
22 	unsigned int gpio2ah_iomux;
23 	unsigned int gpio2bl_iomux;
24 	unsigned int gpio2bh_iomux;
25 	unsigned int gpio2cl_iomux;
26 	unsigned int gpio2ch_iomux;
27 	unsigned int gpio2dl_iomux;
28 	unsigned int gpio2dh_iomux;
29 
30 	unsigned int gpio3al_iomux;
31 	unsigned int gpio3ah_iomux;
32 	unsigned int gpio3bl_iomux;
33 	unsigned int gpio3bh_iomux;
34 	unsigned int gpio3cl_iomux;
35 	unsigned int gpio3ch_iomux;
36 	unsigned int gpio3dl_iomux;
37 	unsigned int gpio3dh_iomux;
38 
39 	unsigned int gpio1a_p;
40 	unsigned int gpio1b_p;
41 	unsigned int gpio1c_p;
42 	unsigned int gpio1d_p;
43 	unsigned int gpio2a_p;
44 	unsigned int gpio2b_p;
45 	unsigned int gpio2c_p;
46 	unsigned int gpio2d_p;
47 	unsigned int gpio3a_p;
48 	unsigned int gpio3b_p;
49 	unsigned int gpio3c_p;
50 	unsigned int gpio3d_p;
51 	unsigned int gpio1a_sr;
52 	unsigned int gpio1b_sr;
53 	unsigned int gpio1c_sr;
54 	unsigned int gpio1d_sr;
55 	unsigned int gpio2a_sr;
56 	unsigned int gpio2b_sr;
57 	unsigned int gpio2c_sr;
58 	unsigned int gpio2d_sr;
59 	unsigned int gpio3a_sr;
60 	unsigned int gpio3b_sr;
61 	unsigned int gpio3c_sr;
62 	unsigned int gpio3d_sr;
63 	unsigned int gpio1a_smt;
64 	unsigned int gpio1b_smt;
65 	unsigned int gpio1c_smt;
66 	unsigned int gpio1d_smt;
67 	unsigned int gpio2a_smt;
68 	unsigned int gpio2b_smt;
69 	unsigned int gpio2c_smt;
70 	unsigned int gpio2d_smt;
71 	unsigned int gpio3a_smt;
72 	unsigned int gpio3b_smt;
73 	unsigned int gpio3c_smt;
74 	unsigned int gpio3d_smt;
75 	unsigned int gpio1a_e;
76 	unsigned int gpio1b_e;
77 	unsigned int gpio1c_e;
78 	unsigned int gpio1d_e;
79 	unsigned int gpio2a_e;
80 	unsigned int gpio2b_e;
81 	unsigned int gpio2c_e;
82 	unsigned int gpio2d_e;
83 	unsigned int gpio3a_e;
84 	unsigned int gpio3b_e;
85 	unsigned int gpio3c_e;
86 	unsigned int gpio3d_e;
87 
88 	unsigned int reserved0[(0x180 - 0x11C) / 4 - 1];
89 	unsigned int io_vsel;
90 	unsigned int iofunc_con0;
91 	unsigned int reserved1[(0x400 - 0x184) / 4 - 1];
92 	unsigned int soc_con[6];
93 	unsigned int reserved2[(0x480 - 0x414) / 4 - 1];
94 	unsigned int soc_status0;
95 	unsigned int reserved3[(0x500 - 0x480) / 4 - 1];
96 	unsigned int cpu_con[3];
97 	unsigned int reserved4[5];
98 	unsigned int cpu_status[2];
99 	unsigned int reserved5[2];
100 	unsigned int soc_noc_con[2];
101 	unsigned int reserved6[6];
102 	unsigned int ddr_bankhash[4];
103 	unsigned int reserved7[(0x700 - 0x55c) / 4 - 1];
104 	unsigned int host0_con[2];
105 	unsigned int reserved8[(0x880 - 0x704) / 4 - 1];
106 	unsigned int otg_con3;
107 	unsigned int reserved9[3];
108 	unsigned int host0_status4;
109 	unsigned int reserved10[(0x904 - 0x890) / 4 - 1];
110 	unsigned int mac_con1;
111 };
112 
113 check_member(px30_grf, mac_con1, 0x904);
114 
115 struct px30_pmugrf {
116 	unsigned int gpio0a_iomux;
117 	unsigned int gpio0b_iomux;
118 	unsigned int gpio0c_iomux;
119 	unsigned int reserved0[1];
120 	unsigned int gpio0a_p;
121 	unsigned int gpio0b_p;
122 	unsigned int gpio0c_p;
123 	unsigned int reserved1[1];
124 	unsigned int gpio0a_e;
125 	unsigned int gpio0b_e;
126 	unsigned int gpio0c_e;
127 	unsigned int reserved2[1];
128 	unsigned int gpio0l_sr;
129 	unsigned int gpio0h_sr;
130 	unsigned int gpio0l_smt;
131 	unsigned int gpio0h_smt;
132 	unsigned int reserved3[(0x100 - 0x3c) / 4 - 1];
133 	unsigned int soc_con[3];
134 	unsigned int failsafe_con;
135 	unsigned int reserved4[(0x180 - 0x10c) / 4 - 1];
136 	unsigned int pvtm_con[2];
137 	unsigned int reserved5[2];
138 	unsigned int pvtm_status[2];
139 	unsigned int reserved6[(0x200 - 0x194) / 4 - 1];
140 	unsigned int os_reg[12];
141 	unsigned int reset_function_status;
142 };
143 
144 check_member(px30_pmugrf, reset_function_status, 0x230);
145 
146 #endif
147