1 /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
2 /*
3  * Copyright (c) 2022 Samsung Electronics Co., Ltd.
4  * Author: Chanho Park <chanho61.park@samsung.com>
5  *
6  * Device Tree binding constants for Exynos Auto V9 clock controller.
7  */
8 
9 #ifndef _DT_BINDINGS_CLOCK_EXYNOSAUTOV9_H
10 #define _DT_BINDINGS_CLOCK_EXYNOSAUTOV9_H
11 
12 /* CMU_TOP */
13 #define FOUT_SHARED0_PLL		1
14 #define FOUT_SHARED1_PLL		2
15 #define FOUT_SHARED2_PLL		3
16 #define FOUT_SHARED3_PLL		4
17 #define FOUT_SHARED4_PLL		5
18 
19 /* MUX in CMU_TOP */
20 #define MOUT_SHARED0_PLL		6
21 #define MOUT_SHARED1_PLL		7
22 #define MOUT_SHARED2_PLL		8
23 #define MOUT_SHARED3_PLL		9
24 #define MOUT_SHARED4_PLL		10
25 #define MOUT_CLKCMU_CMU_BOOST		11
26 #define MOUT_CLKCMU_CMU_CMUREF		12
27 #define MOUT_CLKCMU_ACC_BUS		13
28 #define MOUT_CLKCMU_APM_BUS		14
29 #define MOUT_CLKCMU_AUD_CPU		15
30 #define MOUT_CLKCMU_AUD_BUS		16
31 #define MOUT_CLKCMU_BUSC_BUS		17
32 #define MOUT_CLKCMU_BUSMC_BUS		19
33 #define MOUT_CLKCMU_CORE_BUS		20
34 #define MOUT_CLKCMU_CPUCL0_SWITCH	21
35 #define MOUT_CLKCMU_CPUCL0_CLUSTER	22
36 #define MOUT_CLKCMU_CPUCL1_SWITCH	24
37 #define MOUT_CLKCMU_CPUCL1_CLUSTER	25
38 #define MOUT_CLKCMU_DPTX_BUS		26
39 #define MOUT_CLKCMU_DPTX_DPGTC		27
40 #define MOUT_CLKCMU_DPUM_BUS		28
41 #define MOUT_CLKCMU_DPUS0_BUS		29
42 #define MOUT_CLKCMU_DPUS1_BUS		30
43 #define MOUT_CLKCMU_FSYS0_BUS		31
44 #define MOUT_CLKCMU_FSYS0_PCIE		32
45 #define MOUT_CLKCMU_FSYS1_BUS		33
46 #define MOUT_CLKCMU_FSYS1_USBDRD	34
47 #define MOUT_CLKCMU_FSYS1_MMC_CARD	35
48 #define MOUT_CLKCMU_FSYS2_BUS		36
49 #define MOUT_CLKCMU_FSYS2_UFS_EMBD	37
50 #define MOUT_CLKCMU_FSYS2_ETHERNET	38
51 #define MOUT_CLKCMU_G2D_G2D		39
52 #define MOUT_CLKCMU_G2D_MSCL		40
53 #define MOUT_CLKCMU_G3D00_SWITCH	41
54 #define MOUT_CLKCMU_G3D01_SWITCH	42
55 #define MOUT_CLKCMU_G3D1_SWITCH		43
56 #define MOUT_CLKCMU_ISPB_BUS		44
57 #define MOUT_CLKCMU_MFC_MFC		45
58 #define MOUT_CLKCMU_MFC_WFD		46
59 #define MOUT_CLKCMU_MIF_SWITCH		47
60 #define MOUT_CLKCMU_MIF_BUSP		48
61 #define MOUT_CLKCMU_NPU_BUS		49
62 #define MOUT_CLKCMU_PERIC0_BUS		50
63 #define MOUT_CLKCMU_PERIC0_IP		51
64 #define MOUT_CLKCMU_PERIC1_BUS		52
65 #define MOUT_CLKCMU_PERIC1_IP		53
66 #define MOUT_CLKCMU_PERIS_BUS		54
67 
68 /* DIV in CMU_TOP */
69 #define DOUT_SHARED0_DIV3		101
70 #define DOUT_SHARED0_DIV2		102
71 #define DOUT_SHARED1_DIV3		103
72 #define DOUT_SHARED1_DIV2		104
73 #define DOUT_SHARED1_DIV4		105
74 #define DOUT_SHARED2_DIV3		106
75 #define DOUT_SHARED2_DIV2		107
76 #define DOUT_SHARED2_DIV4		108
77 #define DOUT_SHARED4_DIV2		109
78 #define DOUT_SHARED4_DIV4		110
79 #define DOUT_CLKCMU_CMU_BOOST		111
80 #define DOUT_CLKCMU_ACC_BUS		112
81 #define DOUT_CLKCMU_APM_BUS		113
82 #define DOUT_CLKCMU_AUD_CPU		114
83 #define DOUT_CLKCMU_AUD_BUS		115
84 #define DOUT_CLKCMU_BUSC_BUS		116
85 #define DOUT_CLKCMU_BUSMC_BUS		118
86 #define DOUT_CLKCMU_CORE_BUS		119
87 #define DOUT_CLKCMU_CPUCL0_SWITCH	120
88 #define DOUT_CLKCMU_CPUCL0_CLUSTER	121
89 #define DOUT_CLKCMU_CPUCL1_SWITCH	123
90 #define DOUT_CLKCMU_CPUCL1_CLUSTER	124
91 #define DOUT_CLKCMU_DPTX_BUS		125
92 #define DOUT_CLKCMU_DPTX_DPGTC		126
93 #define DOUT_CLKCMU_DPUM_BUS		127
94 #define DOUT_CLKCMU_DPUS0_BUS		128
95 #define DOUT_CLKCMU_DPUS1_BUS		129
96 #define DOUT_CLKCMU_FSYS0_BUS		130
97 #define DOUT_CLKCMU_FSYS0_PCIE		131
98 #define DOUT_CLKCMU_FSYS1_BUS		132
99 #define DOUT_CLKCMU_FSYS1_USBDRD	133
100 #define DOUT_CLKCMU_FSYS2_BUS		134
101 #define DOUT_CLKCMU_FSYS2_UFS_EMBD	135
102 #define DOUT_CLKCMU_FSYS2_ETHERNET	136
103 #define DOUT_CLKCMU_G2D_G2D		137
104 #define DOUT_CLKCMU_G2D_MSCL		138
105 #define DOUT_CLKCMU_G3D00_SWITCH	139
106 #define DOUT_CLKCMU_G3D01_SWITCH	140
107 #define DOUT_CLKCMU_G3D1_SWITCH		141
108 #define DOUT_CLKCMU_ISPB_BUS		142
109 #define DOUT_CLKCMU_MFC_MFC		143
110 #define DOUT_CLKCMU_MFC_WFD		144
111 #define DOUT_CLKCMU_MIF_SWITCH		145
112 #define DOUT_CLKCMU_MIF_BUSP		146
113 #define DOUT_CLKCMU_NPU_BUS		147
114 #define DOUT_CLKCMU_PERIC0_BUS		148
115 #define DOUT_CLKCMU_PERIC0_IP		149
116 #define DOUT_CLKCMU_PERIC1_BUS		150
117 #define DOUT_CLKCMU_PERIC1_IP		151
118 #define DOUT_CLKCMU_PERIS_BUS		152
119 
120 /* GAT in CMU_TOP */
121 #define GOUT_CLKCMU_CMU_BOOST		201
122 #define GOUT_CLKCMU_CPUCL0_BOOST	202
123 #define GOUT_CLKCMU_CPUCL1_BOOST	203
124 #define GOUT_CLKCMU_CORE_BOOST		204
125 #define GOUT_CLKCMU_BUSC_BOOST		205
126 #define GOUT_CLKCMU_BUSMC_BOOST		206
127 #define GOUT_CLKCMU_MIF_BOOST		207
128 #define GOUT_CLKCMU_ACC_BUS		208
129 #define GOUT_CLKCMU_APM_BUS		209
130 #define GOUT_CLKCMU_AUD_CPU		210
131 #define GOUT_CLKCMU_AUD_BUS		211
132 #define GOUT_CLKCMU_BUSC_BUS		212
133 #define GOUT_CLKCMU_BUSMC_BUS		214
134 #define GOUT_CLKCMU_CORE_BUS		215
135 #define GOUT_CLKCMU_CPUCL0_SWITCH	216
136 #define GOUT_CLKCMU_CPUCL0_CLUSTER	217
137 #define GOUT_CLKCMU_CPUCL1_SWITCH	219
138 #define GOUT_CLKCMU_CPUCL1_CLUSTER	220
139 #define GOUT_CLKCMU_DPTX_BUS		221
140 #define GOUT_CLKCMU_DPTX_DPGTC		222
141 #define GOUT_CLKCMU_DPUM_BUS		223
142 #define GOUT_CLKCMU_DPUS0_BUS		224
143 #define GOUT_CLKCMU_DPUS1_BUS		225
144 #define GOUT_CLKCMU_FSYS0_BUS		226
145 #define GOUT_CLKCMU_FSYS0_PCIE		227
146 #define GOUT_CLKCMU_FSYS1_BUS		228
147 #define GOUT_CLKCMU_FSYS1_USBDRD	229
148 #define GOUT_CLKCMU_FSYS1_MMC_CARD	230
149 #define GOUT_CLKCMU_FSYS2_BUS		231
150 #define GOUT_CLKCMU_FSYS2_UFS_EMBD	232
151 #define GOUT_CLKCMU_FSYS2_ETHERNET	233
152 #define GOUT_CLKCMU_G2D_G2D		234
153 #define GOUT_CLKCMU_G2D_MSCL		235
154 #define GOUT_CLKCMU_G3D00_SWITCH	236
155 #define GOUT_CLKCMU_G3D01_SWITCH	237
156 #define GOUT_CLKCMU_G3D1_SWITCH		238
157 #define GOUT_CLKCMU_ISPB_BUS		239
158 #define GOUT_CLKCMU_MFC_MFC		240
159 #define GOUT_CLKCMU_MFC_WFD		241
160 #define GOUT_CLKCMU_MIF_SWITCH		242
161 #define GOUT_CLKCMU_MIF_BUSP		243
162 #define GOUT_CLKCMU_NPU_BUS		244
163 #define GOUT_CLKCMU_PERIC0_BUS		245
164 #define GOUT_CLKCMU_PERIC0_IP		246
165 #define GOUT_CLKCMU_PERIC1_BUS		247
166 #define GOUT_CLKCMU_PERIC1_IP		248
167 #define GOUT_CLKCMU_PERIS_BUS		249
168 
169 /* CMU_BUSMC */
170 #define CLK_MOUT_BUSMC_BUS_USER		1
171 #define CLK_DOUT_BUSMC_BUSP		2
172 #define CLK_GOUT_BUSMC_PDMA0_PCLK	3
173 #define CLK_GOUT_BUSMC_SPDMA_PCLK	4
174 
175 /* CMU_CORE */
176 #define CLK_MOUT_CORE_BUS_USER		1
177 #define CLK_DOUT_CORE_BUSP		2
178 #define CLK_GOUT_CORE_CCI_CLK		3
179 #define CLK_GOUT_CORE_CCI_PCLK		4
180 #define CLK_GOUT_CORE_CMU_CORE_PCLK	5
181 
182 /* CMU_FSYS0 */
183 #define CLK_MOUT_FSYS0_BUS_USER		1
184 #define CLK_MOUT_FSYS0_PCIE_USER	2
185 #define CLK_GOUT_FSYS0_BUS_PCLK		3
186 
187 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L0_X1_REFCLK		4
188 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L0_X2_REFCLK		5
189 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L0_X1_DBI_ACLK	6
190 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L0_X1_MSTR_ACLK	7
191 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L0_X1_SLV_ACLK	8
192 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L0_X2_DBI_ACLK	9
193 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L0_X2_MSTR_ACLK	10
194 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L0_X2_SLV_ACLK	11
195 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L0_X2_PIPE_CLK	12
196 #define CLK_GOUT_FSYS0_PCIE_GEN3A_2L0_CLK		13
197 #define CLK_GOUT_FSYS0_PCIE_GEN3B_2L0_CLK		14
198 
199 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L1_X1_REFCLK		15
200 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L1_X2_REFCLK		16
201 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L1_X1_DBI_ACLK	17
202 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L1_X1_MSTR_ACLK	18
203 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L1_X1_SLV_ACLK	19
204 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L1_X2_DBI_ACLK	20
205 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L1_X2_MSTR_ACLK	21
206 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L1_X2_SLV_ACLK	22
207 #define CLK_GOUT_FSYS0_PCIE_GEN3_2L1_X2_PIPE_CLK	23
208 #define CLK_GOUT_FSYS0_PCIE_GEN3A_2L1_CLK		24
209 #define CLK_GOUT_FSYS0_PCIE_GEN3B_2L1_CLK		25
210 
211 #define CLK_GOUT_FSYS0_PCIE_GEN3_4L_X2_REFCLK		26
212 #define CLK_GOUT_FSYS0_PCIE_GEN3_4L_X4_REFCLK		27
213 #define CLK_GOUT_FSYS0_PCIE_GEN3_4L_X2_DBI_ACLK		28
214 #define CLK_GOUT_FSYS0_PCIE_GEN3_4L_X2_MSTR_ACLK	29
215 #define CLK_GOUT_FSYS0_PCIE_GEN3_4L_X2_SLV_ACLK		30
216 #define CLK_GOUT_FSYS0_PCIE_GEN3_4L_X4_DBI_ACLK		31
217 #define CLK_GOUT_FSYS0_PCIE_GEN3_4L_X4_MSTR_ACLK	32
218 #define CLK_GOUT_FSYS0_PCIE_GEN3_4L_X4_SLV_ACLK		33
219 #define CLK_GOUT_FSYS0_PCIE_GEN3_4L_X4_PIPE_CLK		34
220 #define CLK_GOUT_FSYS0_PCIE_GEN3A_4L_CLK		35
221 #define CLK_GOUT_FSYS0_PCIE_GEN3B_4L_CLK		36
222 
223 /* CMU_FSYS1 */
224 #define FOUT_MMC_PLL				1
225 
226 #define CLK_MOUT_FSYS1_BUS_USER			2
227 #define CLK_MOUT_FSYS1_MMC_PLL			3
228 #define CLK_MOUT_FSYS1_MMC_CARD_USER		4
229 #define CLK_MOUT_FSYS1_USBDRD_USER		5
230 #define CLK_MOUT_FSYS1_MMC_CARD			6
231 
232 #define CLK_DOUT_FSYS1_MMC_CARD			7
233 
234 #define CLK_GOUT_FSYS1_PCLK			8
235 #define CLK_GOUT_FSYS1_MMC_CARD_SDCLKIN		9
236 #define CLK_GOUT_FSYS1_MMC_CARD_ACLK		10
237 #define CLK_GOUT_FSYS1_USB20DRD_0_REFCLK	11
238 #define CLK_GOUT_FSYS1_USB20DRD_1_REFCLK	12
239 #define CLK_GOUT_FSYS1_USB30DRD_0_REFCLK	13
240 #define CLK_GOUT_FSYS1_USB30DRD_1_REFCLK	14
241 #define CLK_GOUT_FSYS1_USB20_0_ACLK		15
242 #define CLK_GOUT_FSYS1_USB20_1_ACLK		16
243 #define CLK_GOUT_FSYS1_USB30_0_ACLK		17
244 #define CLK_GOUT_FSYS1_USB30_1_ACLK		18
245 
246 /* CMU_FSYS2 */
247 #define CLK_MOUT_FSYS2_BUS_USER		1
248 #define CLK_MOUT_FSYS2_UFS_EMBD_USER	2
249 #define CLK_MOUT_FSYS2_ETHERNET_USER	3
250 #define CLK_GOUT_FSYS2_UFS_EMBD0_ACLK	4
251 #define CLK_GOUT_FSYS2_UFS_EMBD0_UNIPRO	5
252 #define CLK_GOUT_FSYS2_UFS_EMBD1_ACLK	6
253 #define CLK_GOUT_FSYS2_UFS_EMBD1_UNIPRO	7
254 
255 /* CMU_PERIC0 */
256 #define CLK_MOUT_PERIC0_BUS_USER	1
257 #define CLK_MOUT_PERIC0_IP_USER		2
258 #define CLK_MOUT_PERIC0_USI00_USI	3
259 #define CLK_MOUT_PERIC0_USI01_USI	4
260 #define CLK_MOUT_PERIC0_USI02_USI	5
261 #define CLK_MOUT_PERIC0_USI03_USI	6
262 #define CLK_MOUT_PERIC0_USI04_USI	7
263 #define CLK_MOUT_PERIC0_USI05_USI	8
264 #define CLK_MOUT_PERIC0_USI_I2C		9
265 
266 #define CLK_DOUT_PERIC0_USI00_USI	10
267 #define CLK_DOUT_PERIC0_USI01_USI	11
268 #define CLK_DOUT_PERIC0_USI02_USI	12
269 #define CLK_DOUT_PERIC0_USI03_USI	13
270 #define CLK_DOUT_PERIC0_USI04_USI	14
271 #define CLK_DOUT_PERIC0_USI05_USI	15
272 #define CLK_DOUT_PERIC0_USI_I2C		16
273 
274 #define CLK_GOUT_PERIC0_IPCLK_0		20
275 #define CLK_GOUT_PERIC0_IPCLK_1		21
276 #define CLK_GOUT_PERIC0_IPCLK_2		22
277 #define CLK_GOUT_PERIC0_IPCLK_3		23
278 #define CLK_GOUT_PERIC0_IPCLK_4		24
279 #define CLK_GOUT_PERIC0_IPCLK_5		25
280 #define CLK_GOUT_PERIC0_IPCLK_6		26
281 #define CLK_GOUT_PERIC0_IPCLK_7		27
282 #define CLK_GOUT_PERIC0_IPCLK_8		28
283 #define CLK_GOUT_PERIC0_IPCLK_9		29
284 #define CLK_GOUT_PERIC0_IPCLK_10	30
285 #define CLK_GOUT_PERIC0_IPCLK_11	31
286 #define CLK_GOUT_PERIC0_PCLK_0		32
287 #define CLK_GOUT_PERIC0_PCLK_1		33
288 #define CLK_GOUT_PERIC0_PCLK_2		34
289 #define CLK_GOUT_PERIC0_PCLK_3		35
290 #define CLK_GOUT_PERIC0_PCLK_4		36
291 #define CLK_GOUT_PERIC0_PCLK_5		37
292 #define CLK_GOUT_PERIC0_PCLK_6		38
293 #define CLK_GOUT_PERIC0_PCLK_7		39
294 #define CLK_GOUT_PERIC0_PCLK_8		40
295 #define CLK_GOUT_PERIC0_PCLK_9		41
296 #define CLK_GOUT_PERIC0_PCLK_10		42
297 #define CLK_GOUT_PERIC0_PCLK_11		43
298 
299 /* CMU_PERIC1 */
300 #define CLK_MOUT_PERIC1_BUS_USER	1
301 #define CLK_MOUT_PERIC1_IP_USER		2
302 #define CLK_MOUT_PERIC1_USI06_USI	3
303 #define CLK_MOUT_PERIC1_USI07_USI	4
304 #define CLK_MOUT_PERIC1_USI08_USI	5
305 #define CLK_MOUT_PERIC1_USI09_USI	6
306 #define CLK_MOUT_PERIC1_USI10_USI	7
307 #define CLK_MOUT_PERIC1_USI11_USI	8
308 #define CLK_MOUT_PERIC1_USI_I2C		9
309 
310 #define CLK_DOUT_PERIC1_USI06_USI	10
311 #define CLK_DOUT_PERIC1_USI07_USI	11
312 #define CLK_DOUT_PERIC1_USI08_USI	12
313 #define CLK_DOUT_PERIC1_USI09_USI	13
314 #define CLK_DOUT_PERIC1_USI10_USI	14
315 #define CLK_DOUT_PERIC1_USI11_USI	15
316 #define CLK_DOUT_PERIC1_USI_I2C		16
317 
318 #define CLK_GOUT_PERIC1_IPCLK_0		20
319 #define CLK_GOUT_PERIC1_IPCLK_1		21
320 #define CLK_GOUT_PERIC1_IPCLK_2		22
321 #define CLK_GOUT_PERIC1_IPCLK_3		23
322 #define CLK_GOUT_PERIC1_IPCLK_4		24
323 #define CLK_GOUT_PERIC1_IPCLK_5		25
324 #define CLK_GOUT_PERIC1_IPCLK_6		26
325 #define CLK_GOUT_PERIC1_IPCLK_7		27
326 #define CLK_GOUT_PERIC1_IPCLK_8		28
327 #define CLK_GOUT_PERIC1_IPCLK_9		29
328 #define CLK_GOUT_PERIC1_IPCLK_10	30
329 #define CLK_GOUT_PERIC1_IPCLK_11	31
330 #define CLK_GOUT_PERIC1_PCLK_0		32
331 #define CLK_GOUT_PERIC1_PCLK_1		33
332 #define CLK_GOUT_PERIC1_PCLK_2		34
333 #define CLK_GOUT_PERIC1_PCLK_3		35
334 #define CLK_GOUT_PERIC1_PCLK_4		36
335 #define CLK_GOUT_PERIC1_PCLK_5		37
336 #define CLK_GOUT_PERIC1_PCLK_6		38
337 #define CLK_GOUT_PERIC1_PCLK_7		39
338 #define CLK_GOUT_PERIC1_PCLK_8		40
339 #define CLK_GOUT_PERIC1_PCLK_9		41
340 #define CLK_GOUT_PERIC1_PCLK_10		42
341 #define CLK_GOUT_PERIC1_PCLK_11		43
342 
343 /* CMU_PERIS */
344 #define CLK_MOUT_PERIS_BUS_USER		1
345 #define CLK_GOUT_SYSREG_PERIS_PCLK	2
346 #define CLK_GOUT_WDT_CLUSTER0		3
347 #define CLK_GOUT_WDT_CLUSTER1		4
348 
349 #endif /* _DT_BINDINGS_CLOCK_EXYNOSAUTOV9_H */
350