xref: /freebsd/sys/contrib/device-tree/include/dt-bindings/clock/rk3228-cru.h (revision 7ef62cebc2f965b0f640263e179276928885e33d)
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * Copyright (c) 2015 Rockchip Electronics Co. Ltd.
4  * Author: Jeffy Chen <jeffy.chen@rock-chips.com>
5  */
6 
7 #ifndef _DT_BINDINGS_CLK_ROCKCHIP_RK3228_H
8 #define _DT_BINDINGS_CLK_ROCKCHIP_RK3228_H
9 
10 /* core clocks */
11 #define PLL_APLL		1
12 #define PLL_DPLL		2
13 #define PLL_CPLL		3
14 #define PLL_GPLL		4
15 #define ARMCLK			5
16 
17 /* sclk gates (special clocks) */
18 #define SCLK_SPI0		65
19 #define SCLK_NANDC		67
20 #define SCLK_SDMMC		68
21 #define SCLK_SDIO		69
22 #define SCLK_EMMC		71
23 #define SCLK_TSADC		72
24 #define SCLK_UART0		77
25 #define SCLK_UART1		78
26 #define SCLK_UART2		79
27 #define SCLK_I2S0		80
28 #define SCLK_I2S1		81
29 #define SCLK_I2S2		82
30 #define SCLK_SPDIF		83
31 #define SCLK_TIMER0		85
32 #define SCLK_TIMER1		86
33 #define SCLK_TIMER2		87
34 #define SCLK_TIMER3		88
35 #define SCLK_TIMER4		89
36 #define SCLK_TIMER5		90
37 #define SCLK_I2S_OUT		113
38 #define SCLK_SDMMC_DRV		114
39 #define SCLK_SDIO_DRV		115
40 #define SCLK_EMMC_DRV		117
41 #define SCLK_SDMMC_SAMPLE	118
42 #define SCLK_SDIO_SAMPLE	119
43 #define SCLK_SDIO_SRC		120
44 #define SCLK_EMMC_SAMPLE	121
45 #define SCLK_VOP		122
46 #define SCLK_HDMI_HDCP		123
47 #define SCLK_MAC_SRC		124
48 #define SCLK_MAC_EXTCLK		125
49 #define SCLK_MAC		126
50 #define SCLK_MAC_REFOUT		127
51 #define SCLK_MAC_REF		128
52 #define SCLK_MAC_RX		129
53 #define SCLK_MAC_TX		130
54 #define SCLK_MAC_PHY		131
55 #define SCLK_MAC_OUT		132
56 #define SCLK_VDEC_CABAC		133
57 #define SCLK_VDEC_CORE		134
58 #define SCLK_RGA		135
59 #define SCLK_HDCP		136
60 #define SCLK_HDMI_CEC		137
61 #define SCLK_CRYPTO		138
62 #define SCLK_TSP		139
63 #define SCLK_HSADC		140
64 #define SCLK_WIFI		141
65 #define SCLK_OTGPHY0		142
66 #define SCLK_OTGPHY1		143
67 #define SCLK_HDMI_PHY		144
68 
69 /* dclk gates */
70 #define DCLK_VOP		190
71 #define DCLK_HDMI_PHY		191
72 
73 /* aclk gates */
74 #define ACLK_DMAC		194
75 #define ACLK_CPU		195
76 #define ACLK_VPU_PRE		196
77 #define ACLK_RKVDEC_PRE		197
78 #define ACLK_RGA_PRE		198
79 #define ACLK_IEP_PRE		199
80 #define ACLK_HDCP_PRE		200
81 #define ACLK_VOP_PRE		201
82 #define ACLK_VPU		202
83 #define ACLK_RKVDEC		203
84 #define ACLK_IEP		204
85 #define ACLK_RGA		205
86 #define ACLK_HDCP		206
87 #define ACLK_PERI		210
88 #define ACLK_VOP		211
89 #define ACLK_GMAC		212
90 #define ACLK_GPU		213
91 
92 /* pclk gates */
93 #define PCLK_GPIO0		320
94 #define PCLK_GPIO1		321
95 #define PCLK_GPIO2		322
96 #define PCLK_GPIO3		323
97 #define PCLK_VIO_H2P		324
98 #define PCLK_HDCP		325
99 #define PCLK_EFUSE_1024		326
100 #define PCLK_EFUSE_256		327
101 #define PCLK_GRF		329
102 #define PCLK_I2C0		332
103 #define PCLK_I2C1		333
104 #define PCLK_I2C2		334
105 #define PCLK_I2C3		335
106 #define PCLK_SPI0		338
107 #define PCLK_UART0		341
108 #define PCLK_UART1		342
109 #define PCLK_UART2		343
110 #define PCLK_TSADC		344
111 #define PCLK_PWM		350
112 #define PCLK_TIMER		353
113 #define PCLK_CPU		354
114 #define PCLK_PERI		363
115 #define PCLK_HDMI_CTRL		364
116 #define PCLK_HDMI_PHY		365
117 #define PCLK_GMAC		367
118 
119 /* hclk gates */
120 #define HCLK_I2S0_8CH		442
121 #define HCLK_I2S1_8CH		443
122 #define HCLK_I2S2_2CH		444
123 #define HCLK_SPDIF_8CH		445
124 #define HCLK_VOP		452
125 #define HCLK_NANDC		453
126 #define HCLK_SDMMC		456
127 #define HCLK_SDIO		457
128 #define HCLK_EMMC		459
129 #define HCLK_CPU		460
130 #define HCLK_VPU_PRE		461
131 #define HCLK_RKVDEC_PRE		462
132 #define HCLK_VIO_PRE		463
133 #define HCLK_VPU		464
134 #define HCLK_RKVDEC		465
135 #define HCLK_VIO		466
136 #define HCLK_RGA		467
137 #define HCLK_IEP		468
138 #define HCLK_VIO_H2P		469
139 #define HCLK_HDCP_MMU		470
140 #define HCLK_HOST0		471
141 #define HCLK_HOST1		472
142 #define HCLK_HOST2		473
143 #define HCLK_OTG		474
144 #define HCLK_TSP		475
145 #define HCLK_M_CRYPTO		476
146 #define HCLK_S_CRYPTO		477
147 #define HCLK_PERI		478
148 
149 #define CLK_NR_CLKS		(HCLK_PERI + 1)
150 
151 /* soft-reset indices */
152 #define SRST_CORE0_PO		0
153 #define SRST_CORE1_PO		1
154 #define SRST_CORE2_PO		2
155 #define SRST_CORE3_PO		3
156 #define SRST_CORE0		4
157 #define SRST_CORE1		5
158 #define SRST_CORE2		6
159 #define SRST_CORE3		7
160 #define SRST_CORE0_DBG		8
161 #define SRST_CORE1_DBG		9
162 #define SRST_CORE2_DBG		10
163 #define SRST_CORE3_DBG		11
164 #define SRST_TOPDBG		12
165 #define SRST_ACLK_CORE		13
166 #define SRST_NOC		14
167 #define SRST_L2C		15
168 
169 #define SRST_CPUSYS_H		18
170 #define SRST_BUSSYS_H		19
171 #define SRST_SPDIF		20
172 #define SRST_INTMEM		21
173 #define SRST_ROM		22
174 #define SRST_OTG_ADP		23
175 #define SRST_I2S0		24
176 #define SRST_I2S1		25
177 #define SRST_I2S2		26
178 #define SRST_ACODEC_P		27
179 #define SRST_DFIMON		28
180 #define SRST_MSCH		29
181 #define SRST_EFUSE1024		30
182 #define SRST_EFUSE256		31
183 
184 #define SRST_GPIO0		32
185 #define SRST_GPIO1		33
186 #define SRST_GPIO2		34
187 #define SRST_GPIO3		35
188 #define SRST_PERIPH_NOC_A	36
189 #define SRST_PERIPH_NOC_BUS_H	37
190 #define SRST_PERIPH_NOC_P	38
191 #define SRST_UART0		39
192 #define SRST_UART1		40
193 #define SRST_UART2		41
194 #define SRST_PHYNOC		42
195 #define SRST_I2C0		43
196 #define SRST_I2C1		44
197 #define SRST_I2C2		45
198 #define SRST_I2C3		46
199 
200 #define SRST_PWM		48
201 #define SRST_A53_GIC		49
202 #define SRST_DAP		51
203 #define SRST_DAP_NOC		52
204 #define SRST_CRYPTO		53
205 #define SRST_SGRF		54
206 #define SRST_GRF		55
207 #define SRST_GMAC		56
208 #define SRST_PERIPH_NOC_H	58
209 #define SRST_MACPHY		63
210 
211 #define SRST_DMA		64
212 #define SRST_NANDC		68
213 #define SRST_USBOTG		69
214 #define SRST_OTGC		70
215 #define SRST_USBHOST0		71
216 #define SRST_HOST_CTRL0		72
217 #define SRST_USBHOST1		73
218 #define SRST_HOST_CTRL1		74
219 #define SRST_USBHOST2		75
220 #define SRST_HOST_CTRL2		76
221 #define SRST_USBPOR0		77
222 #define SRST_USBPOR1		78
223 #define SRST_DDRMSCH		79
224 
225 #define SRST_SMART_CARD		80
226 #define SRST_SDMMC		81
227 #define SRST_SDIO		82
228 #define SRST_EMMC		83
229 #define SRST_SPI		84
230 #define SRST_TSP_H		85
231 #define SRST_TSP		86
232 #define SRST_TSADC		87
233 #define SRST_DDRPHY		88
234 #define SRST_DDRPHY_P		89
235 #define SRST_DDRCTRL		90
236 #define SRST_DDRCTRL_P		91
237 #define SRST_HOST0_ECHI		92
238 #define SRST_HOST1_ECHI		93
239 #define SRST_HOST2_ECHI		94
240 #define SRST_VOP_NOC_A		95
241 
242 #define SRST_HDMI_P		96
243 #define SRST_VIO_ARBI_H		97
244 #define SRST_IEP_NOC_A		98
245 #define SRST_VIO_NOC_H		99
246 #define SRST_VOP_A		100
247 #define SRST_VOP_H		101
248 #define SRST_VOP_D		102
249 #define SRST_UTMI0		103
250 #define SRST_UTMI1		104
251 #define SRST_UTMI2		105
252 #define SRST_UTMI3		106
253 #define SRST_RGA		107
254 #define SRST_RGA_NOC_A		108
255 #define SRST_RGA_A		109
256 #define SRST_RGA_H		110
257 #define SRST_HDCP_A		111
258 
259 #define SRST_VPU_A		112
260 #define SRST_VPU_H		113
261 #define SRST_VPU_NOC_A		116
262 #define SRST_VPU_NOC_H		117
263 #define SRST_RKVDEC_A		118
264 #define SRST_RKVDEC_NOC_A	119
265 #define SRST_RKVDEC_H		120
266 #define SRST_RKVDEC_NOC_H	121
267 #define SRST_RKVDEC_CORE	122
268 #define SRST_RKVDEC_CABAC	123
269 #define SRST_IEP_A		124
270 #define SRST_IEP_H		125
271 #define SRST_GPU_A		126
272 #define SRST_GPU_NOC_A		127
273 
274 #define SRST_CORE_DBG		128
275 #define SRST_DBG_P		129
276 #define SRST_TIMER0		130
277 #define SRST_TIMER1		131
278 #define SRST_TIMER2		132
279 #define SRST_TIMER3		133
280 #define SRST_TIMER4		134
281 #define SRST_TIMER5		135
282 #define SRST_VIO_H2P		136
283 #define SRST_HDMIPHY		139
284 #define SRST_VDAC		140
285 #define SRST_TIMER_6CH_P	141
286 
287 #endif
288