• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2014 Samsung Electronics Co., Ltd.
3  * Author: Chanwoo Choi <cw00.choi@samsung.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 version 2 as
7  * published by the Free Software Foundation.
8  *
9  * Device Tree binding constants for Samsung Exynos4415 clock controllers.
10  */
11 
12 #ifndef _DT_BINDINGS_CLOCK_SAMSUNG_EXYNOS4415_CLOCK_H
13 #define _DT_BINDINGS_CLOCK_SAMSUNG_EXYNOS4415_CLOCK_H
14 
15 /*
16  * Let each exported clock get a unique index, which is used on DT-enabled
17  * platforms to lookup the clock from a clock specifier. These indices are
18  * therefore considered an ABI and so must not be changed. This implies
19  * that new clocks should be added either in free spaces between clock groups
20  * or at the end.
21  */
22 
23 /*
24  * Main CMU
25  */
26 
27 #define CLK_OSCSEL			1
28 #define CLK_FIN_PLL			2
29 #define CLK_FOUT_APLL			3
30 #define CLK_FOUT_MPLL			4
31 #define CLK_FOUT_EPLL			5
32 #define CLK_FOUT_G3D_PLL		6
33 #define CLK_FOUT_ISP_PLL		7
34 #define CLK_FOUT_DISP_PLL		8
35 
36 /* Muxes */
37 #define CLK_MOUT_MPLL_USER_L		16
38 #define CLK_MOUT_GDL			17
39 #define CLK_MOUT_MPLL_USER_R		18
40 #define CLK_MOUT_GDR			19
41 #define CLK_MOUT_EBI			20
42 #define CLK_MOUT_ACLK_200		21
43 #define CLK_MOUT_ACLK_160		22
44 #define CLK_MOUT_ACLK_100		23
45 #define CLK_MOUT_ACLK_266		24
46 #define CLK_MOUT_G3D_PLL		25
47 #define CLK_MOUT_EPLL			26
48 #define CLK_MOUT_EBI_1			27
49 #define CLK_MOUT_ISP_PLL		28
50 #define CLK_MOUT_DISP_PLL		29
51 #define CLK_MOUT_MPLL_USER_T		30
52 #define CLK_MOUT_ACLK_400_MCUISP	31
53 #define CLK_MOUT_G3D_PLLSRC		32
54 #define CLK_MOUT_CSIS1			33
55 #define CLK_MOUT_CSIS0			34
56 #define CLK_MOUT_CAM1			35
57 #define CLK_MOUT_FIMC3_LCLK		36
58 #define CLK_MOUT_FIMC2_LCLK		37
59 #define CLK_MOUT_FIMC1_LCLK		38
60 #define CLK_MOUT_FIMC0_LCLK		39
61 #define CLK_MOUT_MFC			40
62 #define CLK_MOUT_MFC_1			41
63 #define CLK_MOUT_MFC_0			42
64 #define CLK_MOUT_G3D			43
65 #define CLK_MOUT_G3D_1			44
66 #define CLK_MOUT_G3D_0			45
67 #define CLK_MOUT_MIPI0			46
68 #define CLK_MOUT_FIMD0			47
69 #define CLK_MOUT_TSADC_ISP		48
70 #define CLK_MOUT_UART_ISP		49
71 #define CLK_MOUT_SPI1_ISP		50
72 #define CLK_MOUT_SPI0_ISP		51
73 #define CLK_MOUT_PWM_ISP		52
74 #define CLK_MOUT_AUDIO0			53
75 #define CLK_MOUT_TSADC			54
76 #define CLK_MOUT_MMC2			55
77 #define CLK_MOUT_MMC1			56
78 #define CLK_MOUT_MMC0			57
79 #define CLK_MOUT_UART3			58
80 #define CLK_MOUT_UART2			59
81 #define CLK_MOUT_UART1			60
82 #define CLK_MOUT_UART0			61
83 #define CLK_MOUT_SPI2			62
84 #define CLK_MOUT_SPI1			63
85 #define CLK_MOUT_SPI0			64
86 #define CLK_MOUT_SPDIF			65
87 #define CLK_MOUT_AUDIO2			66
88 #define CLK_MOUT_AUDIO1			67
89 #define CLK_MOUT_MPLL_USER_C		68
90 #define CLK_MOUT_HPM			69
91 #define CLK_MOUT_CORE			70
92 #define CLK_MOUT_APLL			71
93 #define CLK_MOUT_PXLASYNC_CSIS1_FIMC	72
94 #define CLK_MOUT_PXLASYNC_CSIS0_FIMC	73
95 #define CLK_MOUT_JPEG			74
96 #define CLK_MOUT_JPEG1			75
97 #define CLK_MOUT_JPEG0			76
98 #define CLK_MOUT_ACLK_ISP0_300		77
99 #define CLK_MOUT_ACLK_ISP0_400		78
100 #define CLK_MOUT_ACLK_ISP0_300_USER	79
101 #define CLK_MOUT_ACLK_ISP1_300		80
102 #define CLK_MOUT_ACLK_ISP1_300_USER	81
103 #define CLK_MOUT_HDMI			82
104 
105 /* Dividers */
106 #define CLK_DIV_GPL			90
107 #define CLK_DIV_GDL			91
108 #define CLK_DIV_GPR			92
109 #define CLK_DIV_GDR			93
110 #define CLK_DIV_ACLK_400_MCUISP		94
111 #define CLK_DIV_EBI			95
112 #define CLK_DIV_ACLK_200		96
113 #define CLK_DIV_ACLK_160		97
114 #define CLK_DIV_ACLK_100		98
115 #define CLK_DIV_ACLK_266		99
116 #define CLK_DIV_CSIS1			100
117 #define CLK_DIV_CSIS0			101
118 #define CLK_DIV_CAM1			102
119 #define CLK_DIV_FIMC3_LCLK		103
120 #define CLK_DIV_FIMC2_LCLK		104
121 #define CLK_DIV_FIMC1_LCLK		105
122 #define CLK_DIV_FIMC0_LCLK		106
123 #define CLK_DIV_TV_BLK			107
124 #define CLK_DIV_MFC			108
125 #define CLK_DIV_G3D			109
126 #define CLK_DIV_MIPI0_PRE		110
127 #define CLK_DIV_MIPI0			111
128 #define CLK_DIV_FIMD0			112
129 #define CLK_DIV_UART_ISP		113
130 #define CLK_DIV_SPI1_ISP_PRE		114
131 #define CLK_DIV_SPI1_ISP		115
132 #define CLK_DIV_SPI0_ISP_PRE		116
133 #define CLK_DIV_SPI0_ISP		117
134 #define CLK_DIV_PWM_ISP			118
135 #define CLK_DIV_PCM0			119
136 #define CLK_DIV_AUDIO0			120
137 #define CLK_DIV_TSADC_PRE		121
138 #define CLK_DIV_TSADC			122
139 #define CLK_DIV_MMC1_PRE		123
140 #define CLK_DIV_MMC1			124
141 #define CLK_DIV_MMC0_PRE		125
142 #define CLK_DIV_MMC0			126
143 #define CLK_DIV_MMC2_PRE		127
144 #define CLK_DIV_MMC2			128
145 #define CLK_DIV_UART3			129
146 #define CLK_DIV_UART2			130
147 #define CLK_DIV_UART1			131
148 #define CLK_DIV_UART0			132
149 #define CLK_DIV_SPI1_PRE		133
150 #define CLK_DIV_SPI1			134
151 #define CLK_DIV_SPI0_PRE		135
152 #define CLK_DIV_SPI0			136
153 #define CLK_DIV_SPI2_PRE		137
154 #define CLK_DIV_SPI2			138
155 #define CLK_DIV_PCM2			139
156 #define CLK_DIV_AUDIO2			140
157 #define CLK_DIV_PCM1			141
158 #define CLK_DIV_AUDIO1			142
159 #define CLK_DIV_I2S1			143
160 #define CLK_DIV_PXLASYNC_CSIS1_FIMC	144
161 #define CLK_DIV_PXLASYNC_CSIS0_FIMC	145
162 #define CLK_DIV_JPEG			146
163 #define CLK_DIV_CORE2			147
164 #define CLK_DIV_APLL			148
165 #define CLK_DIV_PCLK_DBG		149
166 #define CLK_DIV_ATB			150
167 #define CLK_DIV_PERIPH			151
168 #define CLK_DIV_COREM1			152
169 #define CLK_DIV_COREM0			153
170 #define CLK_DIV_CORE			154
171 #define CLK_DIV_HPM			155
172 #define CLK_DIV_COPY			156
173 
174 /* Gates */
175 #define CLK_ASYNC_G3D			180
176 #define CLK_ASYNC_MFCL			181
177 #define CLK_ASYNC_TVX			182
178 #define CLK_PPMULEFT			183
179 #define CLK_GPIO_LEFT			184
180 #define CLK_PPMUIMAGE			185
181 #define CLK_QEMDMA2			186
182 #define CLK_QEROTATOR			187
183 #define CLK_SMMUMDMA2			188
184 #define CLK_SMMUROTATOR			189
185 #define CLK_MDMA2			190
186 #define CLK_ROTATOR			191
187 #define CLK_ASYNC_ISPMX			192
188 #define CLK_ASYNC_MAUDIOX		193
189 #define CLK_ASYNC_MFCR			194
190 #define CLK_ASYNC_FSYSD			195
191 #define CLK_ASYNC_LCD0X			196
192 #define CLK_ASYNC_CAMX			197
193 #define CLK_PPMURIGHT			198
194 #define CLK_GPIO_RIGHT			199
195 #define CLK_ANTIRBK_APBIF		200
196 #define CLK_EFUSE_WRITER_APBIF		201
197 #define CLK_MONOCNT			202
198 #define CLK_TZPC6			203
199 #define CLK_PROVISIONKEY1		204
200 #define CLK_PROVISIONKEY0		205
201 #define CLK_CMU_ISPPART			206
202 #define CLK_TMU_APBIF			207
203 #define CLK_KEYIF			208
204 #define CLK_RTC				209
205 #define CLK_WDT				210
206 #define CLK_MCT				211
207 #define CLK_SECKEY			212
208 #define CLK_HDMI_CEC			213
209 #define CLK_TZPC5			214
210 #define CLK_TZPC4			215
211 #define CLK_TZPC3			216
212 #define CLK_TZPC2			217
213 #define CLK_TZPC1			218
214 #define CLK_TZPC0			219
215 #define CLK_CMU_COREPART		220
216 #define CLK_CMU_TOPPART			221
217 #define CLK_PMU_APBIF			222
218 #define CLK_SYSREG			223
219 #define CLK_CHIP_ID			224
220 #define CLK_SMMUFIMC_LITE2		225
221 #define CLK_FIMC_LITE2			226
222 #define CLK_PIXELASYNCM1		227
223 #define CLK_PIXELASYNCM0		228
224 #define CLK_PPMUCAMIF			229
225 #define CLK_SMMUJPEG			230
226 #define CLK_SMMUFIMC3			231
227 #define CLK_SMMUFIMC2			232
228 #define CLK_SMMUFIMC1			233
229 #define CLK_SMMUFIMC0			234
230 #define CLK_JPEG			235
231 #define CLK_CSIS1			236
232 #define CLK_CSIS0			237
233 #define CLK_FIMC3			238
234 #define CLK_FIMC2			239
235 #define CLK_FIMC1			240
236 #define CLK_FIMC0			241
237 #define CLK_PPMUTV			242
238 #define CLK_SMMUTV			243
239 #define CLK_HDMI			244
240 #define CLK_MIXER			245
241 #define CLK_VP				246
242 #define CLK_PPMUMFC_R			247
243 #define CLK_PPMUMFC_L			248
244 #define CLK_SMMUMFC_R			249
245 #define CLK_SMMUMFC_L			250
246 #define CLK_MFC				251
247 #define CLK_PPMUG3D			252
248 #define CLK_G3D				253
249 #define CLK_PPMULCD0			254
250 #define CLK_SMMUFIMD0			255
251 #define CLK_DSIM0			256
252 #define CLK_SMIES			257
253 #define CLK_MIE0			258
254 #define CLK_FIMD0			259
255 #define CLK_TSADC			260
256 #define CLK_PPMUFILE			261
257 #define CLK_NFCON			262
258 #define CLK_USBDEVICE			263
259 #define CLK_USBHOST			264
260 #define CLK_SROMC			265
261 #define CLK_SDMMC2			266
262 #define CLK_SDMMC1			267
263 #define CLK_SDMMC0			268
264 #define CLK_PDMA1			269
265 #define CLK_PDMA0			270
266 #define CLK_SPDIF			271
267 #define CLK_PWM				272
268 #define CLK_PCM2			273
269 #define CLK_PCM1			274
270 #define CLK_I2S1			275
271 #define CLK_SPI2			276
272 #define CLK_SPI1			277
273 #define CLK_SPI0			278
274 #define CLK_I2CHDMI			279
275 #define CLK_I2C7			280
276 #define CLK_I2C6			281
277 #define CLK_I2C5			282
278 #define CLK_I2C4			283
279 #define CLK_I2C3			284
280 #define CLK_I2C2			285
281 #define CLK_I2C1			286
282 #define CLK_I2C0			287
283 #define CLK_UART3			288
284 #define CLK_UART2			289
285 #define CLK_UART1			290
286 #define CLK_UART0			291
287 
288 /* Special clocks */
289 #define CLK_SCLK_PXLAYSNC_CSIS1_FIMC	330
290 #define CLK_SCLK_PXLAYSNC_CSIS0_FIMC	331
291 #define CLK_SCLK_JPEG			332
292 #define CLK_SCLK_CSIS1			333
293 #define CLK_SCLK_CSIS0			334
294 #define CLK_SCLK_CAM1			335
295 #define CLK_SCLK_FIMC3_LCLK		336
296 #define CLK_SCLK_FIMC2_LCLK		337
297 #define CLK_SCLK_FIMC1_LCLK		338
298 #define CLK_SCLK_FIMC0_LCLK		339
299 #define CLK_SCLK_PIXEL			340
300 #define CLK_SCLK_HDMI			341
301 #define CLK_SCLK_MIXER			342
302 #define CLK_SCLK_MFC			343
303 #define CLK_SCLK_G3D			344
304 #define CLK_SCLK_MIPIDPHY4L		345
305 #define CLK_SCLK_MIPI0			346
306 #define CLK_SCLK_MDNIE0			347
307 #define CLK_SCLK_FIMD0			348
308 #define CLK_SCLK_PCM0			349
309 #define CLK_SCLK_AUDIO0			350
310 #define CLK_SCLK_TSADC			351
311 #define CLK_SCLK_EBI			352
312 #define CLK_SCLK_MMC2			353
313 #define CLK_SCLK_MMC1			354
314 #define CLK_SCLK_MMC0			355
315 #define CLK_SCLK_I2S			356
316 #define CLK_SCLK_PCM2			357
317 #define CLK_SCLK_PCM1			358
318 #define CLK_SCLK_AUDIO2			359
319 #define CLK_SCLK_AUDIO1			360
320 #define CLK_SCLK_SPDIF			361
321 #define CLK_SCLK_SPI2			362
322 #define CLK_SCLK_SPI1			363
323 #define CLK_SCLK_SPI0			364
324 #define CLK_SCLK_UART3			365
325 #define CLK_SCLK_UART2			366
326 #define CLK_SCLK_UART1			367
327 #define CLK_SCLK_UART0			368
328 #define CLK_SCLK_HDMIPHY		369
329 
330 /*
331  * Total number of clocks of main CMU.
332  * NOTE: Must be equal to last clock ID increased by one.
333  */
334 #define CLK_NR_CLKS			370
335 
336 /*
337  * CMU DMC
338  */
339 #define CLK_DMC_FOUT_MPLL		1
340 #define CLK_DMC_FOUT_BPLL		2
341 
342 #define CLK_DMC_MOUT_MPLL		3
343 #define CLK_DMC_MOUT_BPLL		4
344 #define CLK_DMC_MOUT_DPHY		5
345 #define CLK_DMC_MOUT_DMC_BUS		6
346 
347 #define CLK_DMC_DIV_DMC			7
348 #define CLK_DMC_DIV_DPHY		8
349 #define CLK_DMC_DIV_DMC_PRE		9
350 #define CLK_DMC_DIV_DMCP		10
351 #define CLK_DMC_DIV_DMCD		11
352 #define CLK_DMC_DIV_MPLL_PRE		12
353 
354 /*
355  * Total number of clocks of CMU_DMC.
356  * NOTE: Must be equal to highest clock ID increased by one.
357  */
358 #define NR_CLKS_DMC			13
359 
360 #endif /* _DT_BINDINGS_CLOCK_SAMSUNG_EXYNOS4415_CLOCK_H */
361