blob: 3090e09c9a55cddb982e1aeafa02076212479940 [file] [log] [blame]
Sam Protsenko70f7b592024-01-10 21:08:59 -06001/* 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
92/* CMU_APM */
93#define CLK_RCO_I3C_PMIC 1
94#define OSCCLK_RCO_APM 2
95#define CLK_RCO_APM__ALV 3
96#define CLK_DLL_DCO 4
97#define CLK_MOUT_APM_BUS_USER 5
98#define CLK_MOUT_RCO_APM_I3C_USER 6
99#define CLK_MOUT_RCO_APM_USER 7
100#define CLK_MOUT_DLL_USER 8
101#define CLK_MOUT_CLKCMU_CHUB_BUS 9
102#define CLK_MOUT_APM_BUS 10
103#define CLK_MOUT_APM_I3C 11
104#define CLK_DOUT_CLKCMU_CHUB_BUS 12
105#define CLK_DOUT_APM_BUS 13
106#define CLK_DOUT_APM_I3C 14
107#define CLK_GOUT_CLKCMU_CMGP_BUS 15
108#define CLK_GOUT_CLKCMU_CHUB_BUS 16
109#define CLK_GOUT_RTC_PCLK 17
110#define CLK_GOUT_TOP_RTC_PCLK 18
111#define CLK_GOUT_I3C_PCLK 19
112#define CLK_GOUT_I3C_SCLK 20
113#define CLK_GOUT_SPEEDY_PCLK 21
114#define CLK_GOUT_GPIO_ALIVE_PCLK 22
115#define CLK_GOUT_PMU_ALIVE_PCLK 23
116#define CLK_GOUT_SYSREG_APM_PCLK 24
117
118/* CMU_AUD */
119#define CLK_DOUT_AUD_AUDIF 1
120#define CLK_DOUT_AUD_BUSD 2
121#define CLK_DOUT_AUD_BUSP 3
122#define CLK_DOUT_AUD_CNT 4
123#define CLK_DOUT_AUD_CPU 5
124#define CLK_DOUT_AUD_CPU_ACLK 6
125#define CLK_DOUT_AUD_CPU_PCLKDBG 7
126#define CLK_DOUT_AUD_FM 8
127#define CLK_DOUT_AUD_FM_SPDY 9
128#define CLK_DOUT_AUD_MCLK 10
129#define CLK_DOUT_AUD_UAIF0 11
130#define CLK_DOUT_AUD_UAIF1 12
131#define CLK_DOUT_AUD_UAIF2 13
132#define CLK_DOUT_AUD_UAIF3 14
133#define CLK_DOUT_AUD_UAIF4 15
134#define CLK_DOUT_AUD_UAIF5 16
135#define CLK_DOUT_AUD_UAIF6 17
136#define CLK_FOUT_AUD_PLL 18
137#define CLK_GOUT_AUD_ABOX_ACLK 19
138#define CLK_GOUT_AUD_ASB_CCLK 20
139#define CLK_GOUT_AUD_CA32_CCLK 21
140#define CLK_GOUT_AUD_CNT_BCLK 22
141#define CLK_GOUT_AUD_CODEC_MCLK 23
142#define CLK_GOUT_AUD_DAP_CCLK 24
143#define CLK_GOUT_AUD_GPIO_PCLK 25
144#define CLK_GOUT_AUD_PPMU_ACLK 26
145#define CLK_GOUT_AUD_PPMU_PCLK 27
146#define CLK_GOUT_AUD_SPDY_BCLK 28
147#define CLK_GOUT_AUD_SYSMMU_CLK 29
148#define CLK_GOUT_AUD_SYSREG_PCLK 30
149#define CLK_GOUT_AUD_TZPC_PCLK 31
150#define CLK_GOUT_AUD_UAIF0_BCLK 32
151#define CLK_GOUT_AUD_UAIF1_BCLK 33
152#define CLK_GOUT_AUD_UAIF2_BCLK 34
153#define CLK_GOUT_AUD_UAIF3_BCLK 35
154#define CLK_GOUT_AUD_UAIF4_BCLK 36
155#define CLK_GOUT_AUD_UAIF5_BCLK 37
156#define CLK_GOUT_AUD_UAIF6_BCLK 38
157#define CLK_GOUT_AUD_WDT_PCLK 39
158#define CLK_MOUT_AUD_CPU 40
159#define CLK_MOUT_AUD_CPU_HCH 41
160#define CLK_MOUT_AUD_CPU_USER 42
161#define CLK_MOUT_AUD_FM 43
162#define CLK_MOUT_AUD_PLL 44
163#define CLK_MOUT_AUD_TICK_USB_USER 45
164#define CLK_MOUT_AUD_UAIF0 46
165#define CLK_MOUT_AUD_UAIF1 47
166#define CLK_MOUT_AUD_UAIF2 48
167#define CLK_MOUT_AUD_UAIF3 49
168#define CLK_MOUT_AUD_UAIF4 50
169#define CLK_MOUT_AUD_UAIF5 51
170#define CLK_MOUT_AUD_UAIF6 52
171#define IOCLK_AUDIOCDCLK0 53
172#define IOCLK_AUDIOCDCLK1 54
173#define IOCLK_AUDIOCDCLK2 55
174#define IOCLK_AUDIOCDCLK3 56
175#define IOCLK_AUDIOCDCLK4 57
176#define IOCLK_AUDIOCDCLK5 58
177#define IOCLK_AUDIOCDCLK6 59
178#define TICK_USB 60
179#define CLK_GOUT_AUD_CMU_AUD_PCLK 61
180
181/* CMU_CMGP */
182#define CLK_RCO_CMGP 1
183#define CLK_MOUT_CMGP_ADC 2
184#define CLK_MOUT_CMGP_USI0 3
185#define CLK_MOUT_CMGP_USI1 4
186#define CLK_DOUT_CMGP_ADC 5
187#define CLK_DOUT_CMGP_USI0 6
188#define CLK_DOUT_CMGP_USI1 7
189#define CLK_GOUT_CMGP_ADC_S0_PCLK 8
190#define CLK_GOUT_CMGP_ADC_S1_PCLK 9
191#define CLK_GOUT_CMGP_GPIO_PCLK 10
192#define CLK_GOUT_CMGP_USI0_IPCLK 11
193#define CLK_GOUT_CMGP_USI0_PCLK 12
194#define CLK_GOUT_CMGP_USI1_IPCLK 13
195#define CLK_GOUT_CMGP_USI1_PCLK 14
196#define CLK_GOUT_SYSREG_CMGP_PCLK 15
197
198/* CMU_G3D */
199#define CLK_FOUT_G3D_PLL 1
200#define CLK_MOUT_G3D_PLL 2
201#define CLK_MOUT_G3D_SWITCH_USER 3
202#define CLK_MOUT_G3D_BUSD 4
203#define CLK_DOUT_G3D_BUSP 5
204#define CLK_GOUT_G3D_CMU_G3D_PCLK 6
205#define CLK_GOUT_G3D_GPU_CLK 7
206#define CLK_GOUT_G3D_TZPC_PCLK 8
207#define CLK_GOUT_G3D_GRAY2BIN_CLK 9
208#define CLK_GOUT_G3D_BUSD_CLK 10
209#define CLK_GOUT_G3D_BUSP_CLK 11
210#define CLK_GOUT_G3D_SYSREG_PCLK 12
211
212/* CMU_HSI */
213#define CLK_MOUT_HSI_BUS_USER 1
214#define CLK_MOUT_HSI_MMC_CARD_USER 2
215#define CLK_MOUT_HSI_USB20DRD_USER 3
216#define CLK_MOUT_HSI_RTC 4
217#define CLK_GOUT_USB_RTC_CLK 5
218#define CLK_GOUT_USB_REF_CLK 6
219#define CLK_GOUT_USB_PHY_REF_CLK 7
220#define CLK_GOUT_USB_PHY_ACLK 8
221#define CLK_GOUT_USB_BUS_EARLY_CLK 9
222#define CLK_GOUT_GPIO_HSI_PCLK 10
223#define CLK_GOUT_MMC_CARD_ACLK 11
224#define CLK_GOUT_MMC_CARD_SDCLKIN 12
225#define CLK_GOUT_SYSREG_HSI_PCLK 13
226#define CLK_GOUT_HSI_PPMU_ACLK 14
227#define CLK_GOUT_HSI_PPMU_PCLK 15
228#define CLK_GOUT_HSI_CMU_HSI_PCLK 16
229
230/* CMU_IS */
231#define CLK_MOUT_IS_BUS_USER 1
232#define CLK_MOUT_IS_ITP_USER 2
233#define CLK_MOUT_IS_VRA_USER 3
234#define CLK_MOUT_IS_GDC_USER 4
235#define CLK_DOUT_IS_BUSP 5
236#define CLK_GOUT_IS_CMU_IS_PCLK 6
237#define CLK_GOUT_IS_CSIS0_ACLK 7
238#define CLK_GOUT_IS_CSIS1_ACLK 8
239#define CLK_GOUT_IS_CSIS2_ACLK 9
240#define CLK_GOUT_IS_TZPC_PCLK 10
241#define CLK_GOUT_IS_CSIS_DMA_CLK 11
242#define CLK_GOUT_IS_GDC_CLK 12
243#define CLK_GOUT_IS_IPP_CLK 13
244#define CLK_GOUT_IS_ITP_CLK 14
245#define CLK_GOUT_IS_MCSC_CLK 15
246#define CLK_GOUT_IS_VRA_CLK 16
247#define CLK_GOUT_IS_PPMU_IS0_ACLK 17
248#define CLK_GOUT_IS_PPMU_IS0_PCLK 18
249#define CLK_GOUT_IS_PPMU_IS1_ACLK 19
250#define CLK_GOUT_IS_PPMU_IS1_PCLK 20
251#define CLK_GOUT_IS_SYSMMU_IS0_CLK 21
252#define CLK_GOUT_IS_SYSMMU_IS1_CLK 22
253#define CLK_GOUT_IS_SYSREG_PCLK 23
254
255/* CMU_MFCMSCL */
256#define CLK_MOUT_MFCMSCL_MFC_USER 1
257#define CLK_MOUT_MFCMSCL_M2M_USER 2
258#define CLK_MOUT_MFCMSCL_MCSC_USER 3
259#define CLK_MOUT_MFCMSCL_JPEG_USER 4
260#define CLK_DOUT_MFCMSCL_BUSP 5
261#define CLK_GOUT_MFCMSCL_CMU_MFCMSCL_PCLK 6
262#define CLK_GOUT_MFCMSCL_TZPC_PCLK 7
263#define CLK_GOUT_MFCMSCL_JPEG_ACLK 8
264#define CLK_GOUT_MFCMSCL_M2M_ACLK 9
265#define CLK_GOUT_MFCMSCL_MCSC_CLK 10
266#define CLK_GOUT_MFCMSCL_MFC_ACLK 11
267#define CLK_GOUT_MFCMSCL_PPMU_ACLK 12
268#define CLK_GOUT_MFCMSCL_PPMU_PCLK 13
269#define CLK_GOUT_MFCMSCL_SYSMMU_CLK 14
270#define CLK_GOUT_MFCMSCL_SYSREG_PCLK 15
271
272/* CMU_PERI */
273#define CLK_MOUT_PERI_BUS_USER 1
274#define CLK_MOUT_PERI_UART_USER 2
275#define CLK_MOUT_PERI_HSI2C_USER 3
276#define CLK_MOUT_PERI_SPI_USER 4
277#define CLK_DOUT_PERI_HSI2C0 5
278#define CLK_DOUT_PERI_HSI2C1 6
279#define CLK_DOUT_PERI_HSI2C2 7
280#define CLK_DOUT_PERI_SPI0 8
281#define CLK_GOUT_PERI_HSI2C0 9
282#define CLK_GOUT_PERI_HSI2C1 10
283#define CLK_GOUT_PERI_HSI2C2 11
284#define CLK_GOUT_GPIO_PERI_PCLK 12
285#define CLK_GOUT_HSI2C0_IPCLK 13
286#define CLK_GOUT_HSI2C0_PCLK 14
287#define CLK_GOUT_HSI2C1_IPCLK 15
288#define CLK_GOUT_HSI2C1_PCLK 16
289#define CLK_GOUT_HSI2C2_IPCLK 17
290#define CLK_GOUT_HSI2C2_PCLK 18
291#define CLK_GOUT_I2C0_PCLK 19
292#define CLK_GOUT_I2C1_PCLK 20
293#define CLK_GOUT_I2C2_PCLK 21
294#define CLK_GOUT_I2C3_PCLK 22
295#define CLK_GOUT_I2C4_PCLK 23
296#define CLK_GOUT_I2C5_PCLK 24
297#define CLK_GOUT_I2C6_PCLK 25
298#define CLK_GOUT_MCT_PCLK 26
299#define CLK_GOUT_PWM_MOTOR_PCLK 27
300#define CLK_GOUT_SPI0_IPCLK 28
301#define CLK_GOUT_SPI0_PCLK 29
302#define CLK_GOUT_SYSREG_PERI_PCLK 30
303#define CLK_GOUT_UART_IPCLK 31
304#define CLK_GOUT_UART_PCLK 32
305#define CLK_GOUT_WDT0_PCLK 33
306#define CLK_GOUT_WDT1_PCLK 34
307
308/* CMU_CORE */
309#define CLK_MOUT_CORE_BUS_USER 1
310#define CLK_MOUT_CORE_CCI_USER 2
311#define CLK_MOUT_CORE_MMC_EMBD_USER 3
312#define CLK_MOUT_CORE_SSS_USER 4
313#define CLK_MOUT_CORE_GIC 5
314#define CLK_DOUT_CORE_BUSP 6
315#define CLK_GOUT_CCI_ACLK 7
316#define CLK_GOUT_GIC_CLK 8
317#define CLK_GOUT_MMC_EMBD_ACLK 9
318#define CLK_GOUT_MMC_EMBD_SDCLKIN 10
319#define CLK_GOUT_SSS_ACLK 11
320#define CLK_GOUT_SSS_PCLK 12
321#define CLK_GOUT_GPIO_CORE_PCLK 13
322#define CLK_GOUT_SYSREG_CORE_PCLK 14
323
324/* CMU_DPU */
325#define CLK_MOUT_DPU_USER 1
326#define CLK_DOUT_DPU_BUSP 2
327#define CLK_GOUT_DPU_CMU_DPU_PCLK 3
328#define CLK_GOUT_DPU_DECON0_ACLK 4
329#define CLK_GOUT_DPU_DMA_ACLK 5
330#define CLK_GOUT_DPU_DPP_ACLK 6
331#define CLK_GOUT_DPU_PPMU_ACLK 7
332#define CLK_GOUT_DPU_PPMU_PCLK 8
333#define CLK_GOUT_DPU_SMMU_CLK 9
334#define CLK_GOUT_DPU_SYSREG_PCLK 10
335#define DPU_NR_CLK 11
336
337#endif /* _DT_BINDINGS_CLOCK_EXYNOS_850_H */