xref: /linux/include/dt-bindings/clock/exynos850.h (revision 5ea5880764cbb164afb17a62e76ca75dc371409d)
1 /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
2 /*
3  * Copyright (C) 2021 Linaro Ltd.
4  * Author: Sam Protsenko <semen.protsenko@linaro.org>
5  *
6  * Device Tree binding constants for Exynos850 clock controller.
7  */
8 
9 #ifndef _DT_BINDINGS_CLOCK_EXYNOS_850_H
10 #define _DT_BINDINGS_CLOCK_EXYNOS_850_H
11 
12 /* CMU_TOP */
13 #define CLK_FOUT_SHARED0_PLL		1
14 #define CLK_FOUT_SHARED1_PLL		2
15 #define CLK_FOUT_MMC_PLL		3
16 #define CLK_MOUT_SHARED0_PLL		4
17 #define CLK_MOUT_SHARED1_PLL		5
18 #define CLK_MOUT_MMC_PLL		6
19 #define CLK_MOUT_CORE_BUS		7
20 #define CLK_MOUT_CORE_CCI		8
21 #define CLK_MOUT_CORE_MMC_EMBD		9
22 #define CLK_MOUT_CORE_SSS		10
23 #define CLK_MOUT_DPU			11
24 #define CLK_MOUT_HSI_BUS		12
25 #define CLK_MOUT_HSI_MMC_CARD		13
26 #define CLK_MOUT_HSI_USB20DRD		14
27 #define CLK_MOUT_PERI_BUS		15
28 #define CLK_MOUT_PERI_UART		16
29 #define CLK_MOUT_PERI_IP		17
30 #define CLK_DOUT_SHARED0_DIV3		18
31 #define CLK_DOUT_SHARED0_DIV2		19
32 #define CLK_DOUT_SHARED1_DIV3		20
33 #define CLK_DOUT_SHARED1_DIV2		21
34 #define CLK_DOUT_SHARED0_DIV4		22
35 #define CLK_DOUT_SHARED1_DIV4		23
36 #define CLK_DOUT_CORE_BUS		24
37 #define CLK_DOUT_CORE_CCI		25
38 #define CLK_DOUT_CORE_MMC_EMBD		26
39 #define CLK_DOUT_CORE_SSS		27
40 #define CLK_DOUT_DPU			28
41 #define CLK_DOUT_HSI_BUS		29
42 #define CLK_DOUT_HSI_MMC_CARD		30
43 #define CLK_DOUT_HSI_USB20DRD		31
44 #define CLK_DOUT_PERI_BUS		32
45 #define CLK_DOUT_PERI_UART		33
46 #define CLK_DOUT_PERI_IP		34
47 #define CLK_GOUT_CORE_BUS		35
48 #define CLK_GOUT_CORE_CCI		36
49 #define CLK_GOUT_CORE_MMC_EMBD		37
50 #define CLK_GOUT_CORE_SSS		38
51 #define CLK_GOUT_DPU			39
52 #define CLK_GOUT_HSI_BUS		40
53 #define CLK_GOUT_HSI_MMC_CARD		41
54 #define CLK_GOUT_HSI_USB20DRD		42
55 #define CLK_GOUT_PERI_BUS		43
56 #define CLK_GOUT_PERI_UART		44
57 #define CLK_GOUT_PERI_IP		45
58 #define CLK_MOUT_CLKCMU_APM_BUS		46
59 #define CLK_DOUT_CLKCMU_APM_BUS		47
60 #define CLK_GOUT_CLKCMU_APM_BUS		48
61 #define CLK_MOUT_AUD			49
62 #define CLK_GOUT_AUD			50
63 #define CLK_DOUT_AUD			51
64 #define CLK_MOUT_IS_BUS			52
65 #define CLK_MOUT_IS_ITP			53
66 #define CLK_MOUT_IS_VRA			54
67 #define CLK_MOUT_IS_GDC			55
68 #define CLK_GOUT_IS_BUS			56
69 #define CLK_GOUT_IS_ITP			57
70 #define CLK_GOUT_IS_VRA			58
71 #define CLK_GOUT_IS_GDC			59
72 #define CLK_DOUT_IS_BUS			60
73 #define CLK_DOUT_IS_ITP			61
74 #define CLK_DOUT_IS_VRA			62
75 #define CLK_DOUT_IS_GDC			63
76 #define CLK_MOUT_MFCMSCL_MFC		64
77 #define CLK_MOUT_MFCMSCL_M2M		65
78 #define CLK_MOUT_MFCMSCL_MCSC		66
79 #define CLK_MOUT_MFCMSCL_JPEG		67
80 #define CLK_GOUT_MFCMSCL_MFC		68
81 #define CLK_GOUT_MFCMSCL_M2M		69
82 #define CLK_GOUT_MFCMSCL_MCSC		70
83 #define CLK_GOUT_MFCMSCL_JPEG		71
84 #define CLK_DOUT_MFCMSCL_MFC		72
85 #define CLK_DOUT_MFCMSCL_M2M		73
86 #define CLK_DOUT_MFCMSCL_MCSC		74
87 #define CLK_DOUT_MFCMSCL_JPEG		75
88 #define CLK_MOUT_G3D_SWITCH		76
89 #define CLK_GOUT_G3D_SWITCH		77
90 #define CLK_DOUT_G3D_SWITCH		78
91 #define CLK_MOUT_CPUCL0_DBG		79
92 #define CLK_MOUT_CPUCL0_SWITCH		80
93 #define CLK_GOUT_CPUCL0_DBG		81
94 #define CLK_GOUT_CPUCL0_SWITCH		82
95 #define CLK_DOUT_CPUCL0_DBG		83
96 #define CLK_DOUT_CPUCL0_SWITCH		84
97 #define CLK_MOUT_CPUCL1_DBG		85
98 #define CLK_MOUT_CPUCL1_SWITCH		86
99 #define CLK_GOUT_CPUCL1_DBG		87
100 #define CLK_GOUT_CPUCL1_SWITCH		88
101 #define CLK_DOUT_CPUCL1_DBG		89
102 #define CLK_DOUT_CPUCL1_SWITCH		90
103 
104 /* CMU_APM */
105 #define CLK_RCO_I3C_PMIC		1
106 #define OSCCLK_RCO_APM			2
107 #define CLK_RCO_APM__ALV		3
108 #define CLK_DLL_DCO			4
109 #define CLK_MOUT_APM_BUS_USER		5
110 #define CLK_MOUT_RCO_APM_I3C_USER	6
111 #define CLK_MOUT_RCO_APM_USER		7
112 #define CLK_MOUT_DLL_USER		8
113 #define CLK_MOUT_CLKCMU_CHUB_BUS	9
114 #define CLK_MOUT_APM_BUS		10
115 #define CLK_MOUT_APM_I3C		11
116 #define CLK_DOUT_CLKCMU_CHUB_BUS	12
117 #define CLK_DOUT_APM_BUS		13
118 #define CLK_DOUT_APM_I3C		14
119 #define CLK_GOUT_CLKCMU_CMGP_BUS	15
120 #define CLK_GOUT_CLKCMU_CHUB_BUS	16
121 #define CLK_GOUT_RTC_PCLK		17
122 #define CLK_GOUT_TOP_RTC_PCLK		18
123 #define CLK_GOUT_I3C_PCLK		19
124 #define CLK_GOUT_I3C_SCLK		20
125 #define CLK_GOUT_SPEEDY_PCLK		21
126 #define CLK_GOUT_GPIO_ALIVE_PCLK	22
127 #define CLK_GOUT_PMU_ALIVE_PCLK		23
128 #define CLK_GOUT_SYSREG_APM_PCLK	24
129 #define CLK_GOUT_MAILBOX_APM_AP_PCLK	25
130 
131 /* CMU_AUD */
132 #define CLK_DOUT_AUD_AUDIF		1
133 #define CLK_DOUT_AUD_BUSD		2
134 #define CLK_DOUT_AUD_BUSP		3
135 #define CLK_DOUT_AUD_CNT		4
136 #define CLK_DOUT_AUD_CPU		5
137 #define CLK_DOUT_AUD_CPU_ACLK		6
138 #define CLK_DOUT_AUD_CPU_PCLKDBG	7
139 #define CLK_DOUT_AUD_FM			8
140 #define CLK_DOUT_AUD_FM_SPDY		9
141 #define CLK_DOUT_AUD_MCLK		10
142 #define CLK_DOUT_AUD_UAIF0		11
143 #define CLK_DOUT_AUD_UAIF1		12
144 #define CLK_DOUT_AUD_UAIF2		13
145 #define CLK_DOUT_AUD_UAIF3		14
146 #define CLK_DOUT_AUD_UAIF4		15
147 #define CLK_DOUT_AUD_UAIF5		16
148 #define CLK_DOUT_AUD_UAIF6		17
149 #define CLK_FOUT_AUD_PLL		18
150 #define CLK_GOUT_AUD_ABOX_ACLK		19
151 #define CLK_GOUT_AUD_ASB_CCLK		20
152 #define CLK_GOUT_AUD_CA32_CCLK		21
153 #define CLK_GOUT_AUD_CNT_BCLK		22
154 #define CLK_GOUT_AUD_CODEC_MCLK		23
155 #define CLK_GOUT_AUD_DAP_CCLK		24
156 #define CLK_GOUT_AUD_GPIO_PCLK		25
157 #define CLK_GOUT_AUD_PPMU_ACLK		26
158 #define CLK_GOUT_AUD_PPMU_PCLK		27
159 #define CLK_GOUT_AUD_SPDY_BCLK		28
160 #define CLK_GOUT_AUD_SYSMMU_CLK		29
161 #define CLK_GOUT_AUD_SYSREG_PCLK	30
162 #define CLK_GOUT_AUD_TZPC_PCLK		31
163 #define CLK_GOUT_AUD_UAIF0_BCLK		32
164 #define CLK_GOUT_AUD_UAIF1_BCLK		33
165 #define CLK_GOUT_AUD_UAIF2_BCLK		34
166 #define CLK_GOUT_AUD_UAIF3_BCLK		35
167 #define CLK_GOUT_AUD_UAIF4_BCLK		36
168 #define CLK_GOUT_AUD_UAIF5_BCLK		37
169 #define CLK_GOUT_AUD_UAIF6_BCLK		38
170 #define CLK_GOUT_AUD_WDT_PCLK		39
171 #define CLK_MOUT_AUD_CPU		40
172 #define CLK_MOUT_AUD_CPU_HCH		41
173 #define CLK_MOUT_AUD_CPU_USER		42
174 #define CLK_MOUT_AUD_FM			43
175 #define CLK_MOUT_AUD_PLL		44
176 #define CLK_MOUT_AUD_TICK_USB_USER	45
177 #define CLK_MOUT_AUD_UAIF0		46
178 #define CLK_MOUT_AUD_UAIF1		47
179 #define CLK_MOUT_AUD_UAIF2		48
180 #define CLK_MOUT_AUD_UAIF3		49
181 #define CLK_MOUT_AUD_UAIF4		50
182 #define CLK_MOUT_AUD_UAIF5		51
183 #define CLK_MOUT_AUD_UAIF6		52
184 #define IOCLK_AUDIOCDCLK0		53
185 #define IOCLK_AUDIOCDCLK1		54
186 #define IOCLK_AUDIOCDCLK2		55
187 #define IOCLK_AUDIOCDCLK3		56
188 #define IOCLK_AUDIOCDCLK4		57
189 #define IOCLK_AUDIOCDCLK5		58
190 #define IOCLK_AUDIOCDCLK6		59
191 #define TICK_USB			60
192 #define CLK_GOUT_AUD_CMU_AUD_PCLK	61
193 
194 /* CMU_CMGP */
195 #define CLK_RCO_CMGP			1
196 #define CLK_MOUT_CMGP_ADC		2
197 #define CLK_MOUT_CMGP_USI0		3
198 #define CLK_MOUT_CMGP_USI1		4
199 #define CLK_DOUT_CMGP_ADC		5
200 #define CLK_DOUT_CMGP_USI0		6
201 #define CLK_DOUT_CMGP_USI1		7
202 #define CLK_GOUT_CMGP_ADC_S0_PCLK	8
203 #define CLK_GOUT_CMGP_ADC_S1_PCLK	9
204 #define CLK_GOUT_CMGP_GPIO_PCLK		10
205 #define CLK_GOUT_CMGP_USI0_IPCLK	11
206 #define CLK_GOUT_CMGP_USI0_PCLK		12
207 #define CLK_GOUT_CMGP_USI1_IPCLK	13
208 #define CLK_GOUT_CMGP_USI1_PCLK		14
209 #define CLK_GOUT_SYSREG_CMGP_PCLK	15
210 
211 /* CMU_CPUCL0 */
212 #define CLK_FOUT_CPUCL0_PLL		1
213 #define CLK_MOUT_PLL_CPUCL0		2
214 #define CLK_MOUT_CPUCL0_SWITCH_USER	3
215 #define CLK_MOUT_CPUCL0_DBG_USER	4
216 #define CLK_MOUT_CPUCL0_PLL		5
217 #define CLK_DOUT_CPUCL0_CPU		6
218 #define CLK_DOUT_CPUCL0_CMUREF		7
219 #define CLK_DOUT_CPUCL0_PCLK		8
220 #define CLK_DOUT_CLUSTER0_ACLK		9
221 #define CLK_DOUT_CLUSTER0_ATCLK		10
222 #define CLK_DOUT_CLUSTER0_PCLKDBG	11
223 #define CLK_DOUT_CLUSTER0_PERIPHCLK	12
224 #define CLK_GOUT_CLUSTER0_ATCLK		13
225 #define CLK_GOUT_CLUSTER0_PCLK		14
226 #define CLK_GOUT_CLUSTER0_PERIPHCLK	15
227 #define CLK_GOUT_CLUSTER0_SCLK		16
228 #define CLK_GOUT_CPUCL0_CMU_CPUCL0_PCLK	17
229 #define CLK_GOUT_CLUSTER0_CPU		18
230 #define CLK_CLUSTER0_SCLK		19
231 
232 /* CMU_CPUCL1 */
233 #define CLK_FOUT_CPUCL1_PLL		1
234 #define CLK_MOUT_PLL_CPUCL1		2
235 #define CLK_MOUT_CPUCL1_SWITCH_USER	3
236 #define CLK_MOUT_CPUCL1_DBG_USER	4
237 #define CLK_MOUT_CPUCL1_PLL		5
238 #define CLK_DOUT_CPUCL1_CPU		6
239 #define CLK_DOUT_CPUCL1_CMUREF		7
240 #define CLK_DOUT_CPUCL1_PCLK		8
241 #define CLK_DOUT_CLUSTER1_ACLK		9
242 #define CLK_DOUT_CLUSTER1_ATCLK		10
243 #define CLK_DOUT_CLUSTER1_PCLKDBG	11
244 #define CLK_DOUT_CLUSTER1_PERIPHCLK	12
245 #define CLK_GOUT_CLUSTER1_ATCLK		13
246 #define CLK_GOUT_CLUSTER1_PCLK		14
247 #define CLK_GOUT_CLUSTER1_PERIPHCLK	15
248 #define CLK_GOUT_CLUSTER1_SCLK		16
249 #define CLK_GOUT_CPUCL1_CMU_CPUCL1_PCLK	17
250 #define CLK_GOUT_CLUSTER1_CPU		18
251 #define CLK_CLUSTER1_SCLK		19
252 
253 /* CMU_G3D */
254 #define CLK_FOUT_G3D_PLL		1
255 #define CLK_MOUT_G3D_PLL		2
256 #define CLK_MOUT_G3D_SWITCH_USER	3
257 #define CLK_MOUT_G3D_BUSD		4
258 #define CLK_DOUT_G3D_BUSP		5
259 #define CLK_GOUT_G3D_CMU_G3D_PCLK	6
260 #define CLK_GOUT_G3D_GPU_CLK		7
261 #define CLK_GOUT_G3D_TZPC_PCLK		8
262 #define CLK_GOUT_G3D_GRAY2BIN_CLK	9
263 #define CLK_GOUT_G3D_BUSD_CLK		10
264 #define CLK_GOUT_G3D_BUSP_CLK		11
265 #define CLK_GOUT_G3D_SYSREG_PCLK	12
266 
267 /* CMU_HSI */
268 #define CLK_MOUT_HSI_BUS_USER		1
269 #define CLK_MOUT_HSI_MMC_CARD_USER	2
270 #define CLK_MOUT_HSI_USB20DRD_USER	3
271 #define CLK_MOUT_HSI_RTC		4
272 #define CLK_GOUT_USB_RTC_CLK		5
273 #define CLK_GOUT_USB_REF_CLK		6
274 #define CLK_GOUT_USB_PHY_REF_CLK	7
275 #define CLK_GOUT_USB_PHY_ACLK		8
276 #define CLK_GOUT_USB_BUS_EARLY_CLK	9
277 #define CLK_GOUT_GPIO_HSI_PCLK		10
278 #define CLK_GOUT_MMC_CARD_ACLK		11
279 #define CLK_GOUT_MMC_CARD_SDCLKIN	12
280 #define CLK_GOUT_SYSREG_HSI_PCLK	13
281 #define CLK_GOUT_HSI_PPMU_ACLK		14
282 #define CLK_GOUT_HSI_PPMU_PCLK		15
283 #define CLK_GOUT_HSI_CMU_HSI_PCLK	16
284 
285 /* CMU_IS */
286 #define CLK_MOUT_IS_BUS_USER		1
287 #define CLK_MOUT_IS_ITP_USER		2
288 #define CLK_MOUT_IS_VRA_USER		3
289 #define CLK_MOUT_IS_GDC_USER		4
290 #define CLK_DOUT_IS_BUSP		5
291 #define CLK_GOUT_IS_CMU_IS_PCLK		6
292 #define CLK_GOUT_IS_CSIS0_ACLK		7
293 #define CLK_GOUT_IS_CSIS1_ACLK		8
294 #define CLK_GOUT_IS_CSIS2_ACLK		9
295 #define CLK_GOUT_IS_TZPC_PCLK		10
296 #define CLK_GOUT_IS_CSIS_DMA_CLK	11
297 #define CLK_GOUT_IS_GDC_CLK		12
298 #define CLK_GOUT_IS_IPP_CLK		13
299 #define CLK_GOUT_IS_ITP_CLK		14
300 #define CLK_GOUT_IS_MCSC_CLK		15
301 #define CLK_GOUT_IS_VRA_CLK		16
302 #define CLK_GOUT_IS_PPMU_IS0_ACLK	17
303 #define CLK_GOUT_IS_PPMU_IS0_PCLK	18
304 #define CLK_GOUT_IS_PPMU_IS1_ACLK	19
305 #define CLK_GOUT_IS_PPMU_IS1_PCLK	20
306 #define CLK_GOUT_IS_SYSMMU_IS0_CLK	21
307 #define CLK_GOUT_IS_SYSMMU_IS1_CLK	22
308 #define CLK_GOUT_IS_SYSREG_PCLK		23
309 
310 /* CMU_MFCMSCL */
311 #define CLK_MOUT_MFCMSCL_MFC_USER		1
312 #define CLK_MOUT_MFCMSCL_M2M_USER		2
313 #define CLK_MOUT_MFCMSCL_MCSC_USER		3
314 #define CLK_MOUT_MFCMSCL_JPEG_USER		4
315 #define CLK_DOUT_MFCMSCL_BUSP			5
316 #define CLK_GOUT_MFCMSCL_CMU_MFCMSCL_PCLK	6
317 #define CLK_GOUT_MFCMSCL_TZPC_PCLK		7
318 #define CLK_GOUT_MFCMSCL_JPEG_ACLK		8
319 #define CLK_GOUT_MFCMSCL_M2M_ACLK		9
320 #define CLK_GOUT_MFCMSCL_MCSC_CLK		10
321 #define CLK_GOUT_MFCMSCL_MFC_ACLK		11
322 #define CLK_GOUT_MFCMSCL_PPMU_ACLK		12
323 #define CLK_GOUT_MFCMSCL_PPMU_PCLK		13
324 #define CLK_GOUT_MFCMSCL_SYSMMU_CLK		14
325 #define CLK_GOUT_MFCMSCL_SYSREG_PCLK		15
326 
327 /* CMU_PERI */
328 #define CLK_MOUT_PERI_BUS_USER		1
329 #define CLK_MOUT_PERI_UART_USER		2
330 #define CLK_MOUT_PERI_HSI2C_USER	3
331 #define CLK_MOUT_PERI_SPI_USER		4
332 #define CLK_DOUT_PERI_HSI2C0		5
333 #define CLK_DOUT_PERI_HSI2C1		6
334 #define CLK_DOUT_PERI_HSI2C2		7
335 #define CLK_DOUT_PERI_SPI0		8
336 #define CLK_GOUT_PERI_HSI2C0		9
337 #define CLK_GOUT_PERI_HSI2C1		10
338 #define CLK_GOUT_PERI_HSI2C2		11
339 #define CLK_GOUT_GPIO_PERI_PCLK		12
340 #define CLK_GOUT_HSI2C0_IPCLK		13
341 #define CLK_GOUT_HSI2C0_PCLK		14
342 #define CLK_GOUT_HSI2C1_IPCLK		15
343 #define CLK_GOUT_HSI2C1_PCLK		16
344 #define CLK_GOUT_HSI2C2_IPCLK		17
345 #define CLK_GOUT_HSI2C2_PCLK		18
346 #define CLK_GOUT_I2C0_PCLK		19
347 #define CLK_GOUT_I2C1_PCLK		20
348 #define CLK_GOUT_I2C2_PCLK		21
349 #define CLK_GOUT_I2C3_PCLK		22
350 #define CLK_GOUT_I2C4_PCLK		23
351 #define CLK_GOUT_I2C5_PCLK		24
352 #define CLK_GOUT_I2C6_PCLK		25
353 #define CLK_GOUT_MCT_PCLK		26
354 #define CLK_GOUT_PWM_MOTOR_PCLK		27
355 #define CLK_GOUT_SPI0_IPCLK		28
356 #define CLK_GOUT_SPI0_PCLK		29
357 #define CLK_GOUT_SYSREG_PERI_PCLK	30
358 #define CLK_GOUT_UART_IPCLK		31
359 #define CLK_GOUT_UART_PCLK		32
360 #define CLK_GOUT_WDT0_PCLK		33
361 #define CLK_GOUT_WDT1_PCLK		34
362 #define CLK_GOUT_BUSIF_TMU_PCLK		35
363 
364 /* CMU_CORE */
365 #define CLK_MOUT_CORE_BUS_USER		1
366 #define CLK_MOUT_CORE_CCI_USER		2
367 #define CLK_MOUT_CORE_MMC_EMBD_USER	3
368 #define CLK_MOUT_CORE_SSS_USER		4
369 #define CLK_MOUT_CORE_GIC		5
370 #define CLK_DOUT_CORE_BUSP		6
371 #define CLK_GOUT_CCI_ACLK		7
372 #define CLK_GOUT_GIC_CLK		8
373 #define CLK_GOUT_MMC_EMBD_ACLK		9
374 #define CLK_GOUT_MMC_EMBD_SDCLKIN	10
375 #define CLK_GOUT_SSS_ACLK		11
376 #define CLK_GOUT_SSS_PCLK		12
377 #define CLK_GOUT_GPIO_CORE_PCLK		13
378 #define CLK_GOUT_SYSREG_CORE_PCLK	14
379 #define CLK_GOUT_PDMA_CORE_ACLK		15
380 #define CLK_GOUT_SPDMA_CORE_ACLK	16
381 
382 /* CMU_DPU */
383 #define CLK_MOUT_DPU_USER		1
384 #define CLK_DOUT_DPU_BUSP		2
385 #define CLK_GOUT_DPU_CMU_DPU_PCLK	3
386 #define CLK_GOUT_DPU_DECON0_ACLK	4
387 #define CLK_GOUT_DPU_DMA_ACLK		5
388 #define CLK_GOUT_DPU_DPP_ACLK		6
389 #define CLK_GOUT_DPU_PPMU_ACLK		7
390 #define CLK_GOUT_DPU_PPMU_PCLK		8
391 #define CLK_GOUT_DPU_SMMU_CLK		9
392 #define CLK_GOUT_DPU_SYSREG_PCLK	10
393 #define DPU_NR_CLK			11
394 
395 #endif /* _DT_BINDINGS_CLOCK_EXYNOS_850_H */
396