clk: rockchip: add dt-binding header for rk3328
[firefly-linux-kernel-4.4.55.git] / include / dt-bindings / clock / rk3328-cru.h
1 /*
2  * Copyright (c) 2016 Rockchip Electronics Co. Ltd.
3  * Author: Elaine <zhangqing@rock-chips.com>
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  */
15
16 #ifndef _DT_BINDINGS_CLK_ROCKCHIP_RK3328_H
17 #define _DT_BINDINGS_CLK_ROCKCHIP_RK3328_H
18
19 /* core clocks */
20 #define PLL_APLL                1
21 #define PLL_DPLL                2
22 #define PLL_CPLL                3
23 #define PLL_GPLL                4
24 #define PLL_NPLL                5
25 #define ARMCLK                  6
26
27 /* sclk gates (special clocks) */
28 #define SCLK_RTC32K             30
29 #define SCLK_SDMMC_EXT          31
30 #define SCLK_SPI                32
31 #define SCLK_SDMMC              33
32 #define SCLK_SDIO               34
33 #define SCLK_EMMC               35
34 #define SCLK_TSADC              36
35 #define SCLK_SARADC             37
36 #define SCLK_UART0              38
37 #define SCLK_UART1              39
38 #define SCLK_UART2              40
39 #define SCLK_I2S0               41
40 #define SCLK_I2S1               42
41 #define SCLK_I2S2               43
42 #define SCLK_I2S1_OUT           44
43 #define SCLK_I2S2_OUT           45
44 #define SCLK_SPDIF              46
45 #define SCLK_TIMER0             47
46 #define SCLK_TIMER1             48
47 #define SCLK_TIMER2             49
48 #define SCLK_TIMER3             50
49 #define SCLK_TIMER4             51
50 #define SCLK_TIMER5             52
51 #define SCLK_WIFI               53
52 #define SCLK_CIF_OUT            54
53 #define SCLK_I2C0               55
54 #define SCLK_I2C1               56
55 #define SCLK_I2C2               57
56 #define SCLK_I2C3               58
57 #define SCLK_CRYPTO             59
58 #define SCLK_PWM                60
59 #define SCLK_PDM                61
60 #define SCLK_EFUSE              62
61 #define SCLK_OTP                63
62 #define SCLK_DDRCLK             64
63 #define SCLK_VDEC_CABAC         65
64 #define SCLK_VDEC_CORE          66
65 #define SCLK_VENC_DSP           67
66 #define SCLK_VENC_CORE          68
67 #define SCLK_RGA                69
68 #define SCLK_HDMI_SFC           70
69 #define SCLK_HDMI_CEC           71
70 #define SCLK_USB3_REF           72
71 #define SCLK_USB3_SUSPEND       73
72 #define SCLK_SDMMC_DRV          74
73 #define SCLK_SDIO_DRV           75
74 #define SCLK_EMMC_DRV           76
75 #define SCLK_SDMMC_EXT_DRV      77
76 #define SCLK_SDMMC_SAMPLE       78
77 #define SCLK_SDIO_SAMPLE        79
78 #define SCLK_EMMC_SAMPLE        80
79 #define SCLK_SDMMC_EXT_SAMPLE   81
80 #define SCLK_VOP                82
81 #define SCLK_MAC2PHY_RXTX       83
82 #define SCLK_MAC2PHY_SRC        84
83 #define SCLK_MAC2PHY_REF        85
84 #define SCLK_MAC2PHY_OUT        86
85 #define SCLK_MAC2IO_RX          87
86 #define SCLK_MAC2IO_TX          88
87 #define SCLK_MAC2IO_REFOUT      89
88 #define SCLK_MAC2IO_REF         90
89 #define SCLK_MAC2IO_OUT         91
90 #define SCLK_TSP                92
91 #define SCLK_HSADC_TSP          93
92 #define SCLK_USB3PHY_REF        94
93 #define SCLK_REF_USB3OTG        95
94 #define SCLK_USB3OTG_REF        96
95 #define SCLK_USB3OTG_SUSPEND    97
96 #define SCLK_REF_USB3OTG_SRC    98
97 #define SCLK_MAC2IO_SRC         99
98
99 /* dclk gates */
100 #define DCLK_LCDC               180
101 #define DCLK_HDMIPHY            181
102 #define HDMIPHY                 182
103 #define USB480M                 183
104 #define DCLK_LCDC_SRC           184
105
106 /* aclk gates */
107 #define ACLK_AXISRAM            190
108 #define ACLK_VOP_PRE            191
109 #define ACLK_USB3OTG            192
110 #define ACLK_RGA_PRE            193
111 #define ACLK_DMAC               194
112 #define ACLK_GPU                195
113 #define ACLK_BUS_PRE            196
114 #define ACLK_PERI_PRE           197
115 #define ACLK_RKVDEC_PRE         198
116 #define ACLK_RKVDEC             199
117 #define ACLK_RKVENC             200
118 #define ACLK_VPU_PRE            201
119 #define ACLK_VIO_PRE            202
120 #define ACLK_VPU                203
121 #define ACLK_VIO                204
122 #define ACLK_VOP                205
123 #define ACLK_GMAC               206
124 #define ACLK_H265               207
125 #define ACLK_H264               208
126 #define ACLK_MAC2PHY            209
127 #define ACLK_MAC2IO             210
128 #define ACLK_DCF                211
129 #define ACLK_TSP                212
130 #define ACLK_PERI               213
131 #define ACLK_RGA                214
132 #define ACLK_IEP                215
133 #define ACLK_CIF                216
134 #define ACLK_HDCP               217
135
136 /* pclk gates */
137 #define PCLK_GPIO0              300
138 #define PCLK_GPIO1              301
139 #define PCLK_GPIO2              302
140 #define PCLK_GPIO3              303
141 #define PCLK_GRF                304
142 #define PCLK_I2C0               305
143 #define PCLK_I2C1               306
144 #define PCLK_I2C2               307
145 #define PCLK_I2C3               308
146 #define PCLK_SPI                309
147 #define PCLK_UART0              310
148 #define PCLK_UART1              311
149 #define PCLK_UART2              312
150 #define PCLK_TSADC              313
151 #define PCLK_PWM                314
152 #define PCLK_TIMER              315
153 #define PCLK_BUS_PRE            316
154 #define PCLK_PERI_PRE           317
155 #define PCLK_HDMI_CTRL          318
156 #define PCLK_HDMI_PHY           319
157 #define PCLK_GMAC               320
158 #define PCLK_H265               321
159 #define PCLK_MAC2PHY            322
160 #define PCLK_MAC2IO             323
161 #define PCLK_USB3PHY_OTG        324
162 #define PCLK_USB3PHY_PIPE       325
163 #define PCLK_USB3_GRF           326
164 #define PCLK_USB2_GRF           327
165 #define PCLK_HDMIPHY            328
166 #define PCLK_DDR                329
167 #define PCLK_PERI               330
168 #define PCLK_HDMI               331
169 #define PCLK_HDCP               332
170 #define PCLK_DCF                333
171 #define PCLK_SARADC             334
172
173 /* hclk gates */
174 #define HCLK_PERI               408
175 #define HCLK_TSP                409
176 #define HCLK_GMAC               410
177 #define HCLK_I2S0_8CH           411
178 #define HCLK_I2S1_8CH           413
179 #define HCLK_I2S2_2CH           413
180 #define HCLK_SPDIF_8CH          414
181 #define HCLK_VOP                415
182 #define HCLK_NANDC              416
183 #define HCLK_SDMMC              417
184 #define HCLK_SDIO               418
185 #define HCLK_EMMC               419
186 #define HCLK_SDMMC_EXT          420
187 #define HCLK_RKVDEC_PRE         421
188 #define HCLK_RKVDEC             422
189 #define HCLK_RKVENC             423
190 #define HCLK_VPU_PRE            424
191 #define HCLK_VIO_PRE            425
192 #define HCLK_VPU                426
193 #define HCLK_VIO                427
194 #define HCLK_BUS_PRE            428
195 #define HCLK_PERI_PRE           429
196 #define HCLK_H264               430
197 #define HCLK_CIF                431
198 #define HCLK_OTG_PMU            432
199 #define HCLK_OTG                433
200 #define HCLK_HOST0              434
201 #define HCLK_HOST0_ARB          435
202 #define HCLK_CRYPTO_MST         436
203 #define HCLK_CRYPTO_SLV         437
204 #define HCLK_PDM                438
205 #define HCLK_IEP                439
206 #define HCLK_RGA                440
207 #define HCLK_HDCP               441
208
209 #define CLK_NR_CLKS             (HCLK_HDCP + 1)
210
211 #define SCLK_MAC2IO             0
212 #define SCLK_MAC2PHY            1
213
214 #define CLKGRF_NR_CLKS          (SCLK_MAC2PHY + 1)
215
216 /* soft-reset indices */
217 #define SRST_CORE0_PO           0
218 #define SRST_CORE1_PO           1
219 #define SRST_CORE2_PO           2
220 #define SRST_CORE3_PO           3
221 #define SRST_CORE0              4
222 #define SRST_CORE1              5
223 #define SRST_CORE2              6
224 #define SRST_CORE3              7
225 #define SRST_CORE0_DBG          8
226 #define SRST_CORE1_DBG          9
227 #define SRST_CORE2_DBG          10
228 #define SRST_CORE3_DBG          11
229 #define SRST_TOPDBG             12
230 #define SRST_CORE_NIU           13
231 #define SRST_STRC_A             14
232 #define SRST_L2C                15
233
234 #define SRST_A53_GIC            18
235 #define SRST_DAP                19
236 #define SRST_PMU_P              21
237 #define SRST_EFUSE              22
238 #define SRST_BUSSYS_H           23
239 #define SRST_BUSSYS_P           24
240 #define SRST_SPDIF              25
241 #define SRST_INTMEM             26
242 #define SRST_ROM                27
243 #define SRST_GPIO0              28
244 #define SRST_GPIO1              29
245 #define SRST_GPIO2              30
246 #define SRST_GPIO3              31
247
248 #define SRST_I2S0               32
249 #define SRST_I2S1               33
250 #define SRST_I2S2               34
251 #define SRST_I2S0_H             35
252 #define SRST_I2S1_H             36
253 #define SRST_I2S2_H             37
254 #define SRST_UART0              38
255 #define SRST_UART1              39
256 #define SRST_UART2              40
257 #define SRST_UART0_P            41
258 #define SRST_UART1_P            42
259 #define SRST_UART2_P            43
260 #define SRST_I2C0               44
261 #define SRST_I2C1               45
262 #define SRST_I2C2               46
263 #define SRST_I2C3               47
264
265 #define SRST_I2C0_P             48
266 #define SRST_I2C1_P             49
267 #define SRST_I2C2_P             50
268 #define SRST_I2C3_P             51
269 #define SRST_EFUSE_SE_P         52
270 #define SRST_EFUSE_NS_P         53
271 #define SRST_PWM0               54
272 #define SRST_PWM0_P             55
273 #define SRST_DMA                56
274 #define SRST_TSP_A              57
275 #define SRST_TSP_H              58
276 #define SRST_TSP                59
277 #define SRST_TSP_HSADC          60
278 #define SRST_DCF_A              61
279 #define SRST_DCF_P              62
280
281 #define SRST_SCR                64
282 #define SRST_SPI                65
283 #define SRST_TSADC              66
284 #define SRST_TSADC_P            67
285 #define SRST_CRYPTO             68
286 #define SRST_SGRF               69
287 #define SRST_GRF                70
288 #define SRST_USB_GRF            71
289 #define SRST_TIMER_6CH_P        72
290 #define SRST_TIMER0             73
291 #define SRST_TIMER1             74
292 #define SRST_TIMER2             75
293 #define SRST_TIMER3             76
294 #define SRST_TIMER4             77
295 #define SRST_TIMER5             78
296 #define SRST_USB3GRF            79
297
298 #define SRST_PHYNIU             80
299 #define SRST_HDMIPHY            81
300 #define SRST_VDAC               82
301 #define SRST_ACODEC_p           83
302 #define SRST_SARADC             85
303 #define SRST_SARADC_P           86
304 #define SRST_GRF_DDR            87
305 #define SRST_DFIMON             88
306 #define SRST_MSCH               89
307 #define SRST_DDRMSCH            91
308 #define SRST_DDRCTRL            92
309 #define SRST_DDRCTRL_P          93
310 #define SRST_DDRPHY             94
311 #define SRST_DDRPHY_P           95
312
313 #define SRST_GMAC_NIU_A         96
314 #define SRST_GMAC_NIU_P         97
315 #define SRST_GMAC2PHY_A         98
316 #define SRST_GMAC2IO_A          99
317 #define SRST_MACPHY             100
318 #define SRST_OTP_PHY            101
319 #define SRST_GPU_A              102
320 #define SRST_GPU_NIU_A          103
321 #define SRST_SDMMCEXT           104
322 #define SRST_PERIPH_NIU_A       105
323 #define SRST_PERIHP_NIU_H       106
324 #define SRST_PERIHP_P           107
325 #define SRST_PERIPHSYS_H        108
326 #define SRST_MMC0               109
327 #define SRST_SDIO               110
328 #define SRST_EMMC               111
329
330 #define SRST_USB2OTG_H          112
331 #define SRST_USB2OTG            113
332 #define SRST_USB2OTG_ADP        114
333 #define SRST_USB2HOST_H         115
334 #define SRST_USB2HOST_ARB       116
335 #define SRST_USB2HOST_AUX       117
336 #define SRST_USB2HOST_EHCIPHY   118
337 #define SRST_USB2HOST_UTMI      119
338 #define SRST_USB3OTG            120
339 #define SRST_USBPOR             121
340 #define SRST_USB2OTG_UTMI       122
341 #define SRST_USB2HOST_PHY_UTMI  123
342 #define SRST_USB3OTG_UTMI       124
343 #define SRST_USB3PHY_U2         125
344 #define SRST_USB3PHY_U3         126
345 #define SRST_USB3PHY_PIPE       127
346
347 #define SRST_VIO_A              128
348 #define SRST_VIO_BUS_H          129
349 #define SRST_VIO_H2P_H          130
350 #define SRST_VIO_ARBI_H         131
351 #define SRST_VOP_NIU_A          132
352 #define SRST_VOP_A              133
353 #define SRST_VOP_H              134
354 #define SRST_VOP_D              135
355 #define SRST_RGA                136
356 #define SRST_RGA_NIU_A          137
357 #define SRST_RGA_A              138
358 #define SRST_RGA_H              139
359 #define SRST_IEP_A              140
360 #define SRST_IEP_H              141
361 #define SRST_HDMI               142
362 #define SRST_HDMI_P             143
363
364 #define SRST_HDCP_A             144
365 #define SRST_HDCP               145
366 #define SRST_HDCP_H             146
367 #define SRST_CIF_A              147
368 #define SRST_CIF_H              148
369 #define SRST_CIF_P              149
370 #define SRST_OTP_P              150
371 #define SRST_OTP_SBPI           151
372 #define SRST_OTP_USER           152
373 #define SRST_DDRCTRL_A          153
374 #define SRST_DDRSTDY_P          154
375 #define SRST_DDRSTDY            155
376 #define SRST_PDM_H              156
377 #define SRST_PDM                157
378 #define SRST_USB3PHY_OTG_P      158
379 #define SRST_USB3PHY_PIPE_P     159
380
381 #define SRST_VCODEC_A           160
382 #define SRST_VCODEC_NIU_A       161
383 #define SRST_VCODEC_H           162
384 #define SRST_VCODEC_NIU_H       163
385 #define SRST_VDEC_A             164
386 #define SRST_VDEC_NIU_A         165
387 #define SRST_VDEC_H             166
388 #define SRST_VDEC_NIU_H         167
389 #define SRST_VDEC_CORE          168
390 #define SRST_VDEC_CABAC         169
391 #define SRST_DDRPHYDIV          175
392
393 #define SRST_RKVENC_NIU_A       176
394 #define SRST_RKVENC_NIU_H       177
395 #define SRST_RKVENC_H265_A      178
396 #define SRST_RKVENC_H265_P      179
397 #define SRST_RKVENC_H265_CORE   180
398 #define SRST_RKVENC_H265_DSP    181
399 #define SRST_RKVENC_H264_A      182
400 #define SRST_RKVENC_H264_H      183
401 #define SRST_RKVENC_INTMEM      184
402
403 #endif