1*c66ec88fSEmmanuel Vadot /* SPDX-License-Identifier: GPL-2.0 */ 2*c66ec88fSEmmanuel Vadot /* 3*c66ec88fSEmmanuel Vadot * Copyright (c) 2013 Samsung Electronics Co., Ltd. 4*c66ec88fSEmmanuel Vadot * Author: Andrzej Hajda <a.hajda@samsung.com> 5*c66ec88fSEmmanuel Vadot * 6*c66ec88fSEmmanuel Vadot * Device Tree binding constants for Exynos4 clock controller. 7*c66ec88fSEmmanuel Vadot */ 8*c66ec88fSEmmanuel Vadot 9*c66ec88fSEmmanuel Vadot #ifndef _DT_BINDINGS_CLOCK_EXYNOS_4_H 10*c66ec88fSEmmanuel Vadot #define _DT_BINDINGS_CLOCK_EXYNOS_4_H 11*c66ec88fSEmmanuel Vadot 12*c66ec88fSEmmanuel Vadot /* core clocks */ 13*c66ec88fSEmmanuel Vadot #define CLK_XXTI 1 14*c66ec88fSEmmanuel Vadot #define CLK_XUSBXTI 2 15*c66ec88fSEmmanuel Vadot #define CLK_FIN_PLL 3 16*c66ec88fSEmmanuel Vadot #define CLK_FOUT_APLL 4 17*c66ec88fSEmmanuel Vadot #define CLK_FOUT_MPLL 5 18*c66ec88fSEmmanuel Vadot #define CLK_FOUT_EPLL 6 19*c66ec88fSEmmanuel Vadot #define CLK_FOUT_VPLL 7 20*c66ec88fSEmmanuel Vadot #define CLK_SCLK_APLL 8 21*c66ec88fSEmmanuel Vadot #define CLK_SCLK_MPLL 9 22*c66ec88fSEmmanuel Vadot #define CLK_SCLK_EPLL 10 23*c66ec88fSEmmanuel Vadot #define CLK_SCLK_VPLL 11 24*c66ec88fSEmmanuel Vadot #define CLK_ARM_CLK 12 25*c66ec88fSEmmanuel Vadot #define CLK_ACLK200 13 26*c66ec88fSEmmanuel Vadot #define CLK_ACLK100 14 27*c66ec88fSEmmanuel Vadot #define CLK_ACLK160 15 28*c66ec88fSEmmanuel Vadot #define CLK_ACLK133 16 29*c66ec88fSEmmanuel Vadot #define CLK_MOUT_MPLL_USER_T 17 /* Exynos4x12 only */ 30*c66ec88fSEmmanuel Vadot #define CLK_MOUT_MPLL_USER_C 18 /* Exynos4x12 only */ 31*c66ec88fSEmmanuel Vadot #define CLK_MOUT_CORE 19 32*c66ec88fSEmmanuel Vadot #define CLK_MOUT_APLL 20 33*c66ec88fSEmmanuel Vadot #define CLK_SCLK_HDMIPHY 22 34*c66ec88fSEmmanuel Vadot #define CLK_OUT_DMC 23 35*c66ec88fSEmmanuel Vadot #define CLK_OUT_TOP 24 36*c66ec88fSEmmanuel Vadot #define CLK_OUT_LEFTBUS 25 37*c66ec88fSEmmanuel Vadot #define CLK_OUT_RIGHTBUS 26 38*c66ec88fSEmmanuel Vadot #define CLK_OUT_CPU 27 39*c66ec88fSEmmanuel Vadot 40*c66ec88fSEmmanuel Vadot /* gate for special clocks (sclk) */ 41*c66ec88fSEmmanuel Vadot #define CLK_SCLK_FIMC0 128 42*c66ec88fSEmmanuel Vadot #define CLK_SCLK_FIMC1 129 43*c66ec88fSEmmanuel Vadot #define CLK_SCLK_FIMC2 130 44*c66ec88fSEmmanuel Vadot #define CLK_SCLK_FIMC3 131 45*c66ec88fSEmmanuel Vadot #define CLK_SCLK_CAM0 132 46*c66ec88fSEmmanuel Vadot #define CLK_SCLK_CAM1 133 47*c66ec88fSEmmanuel Vadot #define CLK_SCLK_CSIS0 134 48*c66ec88fSEmmanuel Vadot #define CLK_SCLK_CSIS1 135 49*c66ec88fSEmmanuel Vadot #define CLK_SCLK_HDMI 136 50*c66ec88fSEmmanuel Vadot #define CLK_SCLK_MIXER 137 51*c66ec88fSEmmanuel Vadot #define CLK_SCLK_DAC 138 52*c66ec88fSEmmanuel Vadot #define CLK_SCLK_PIXEL 139 53*c66ec88fSEmmanuel Vadot #define CLK_SCLK_FIMD0 140 54*c66ec88fSEmmanuel Vadot #define CLK_SCLK_MDNIE0 141 /* Exynos4412 only */ 55*c66ec88fSEmmanuel Vadot #define CLK_SCLK_MDNIE_PWM0 142 56*c66ec88fSEmmanuel Vadot #define CLK_SCLK_MIPI0 143 57*c66ec88fSEmmanuel Vadot #define CLK_SCLK_AUDIO0 144 58*c66ec88fSEmmanuel Vadot #define CLK_SCLK_MMC0 145 59*c66ec88fSEmmanuel Vadot #define CLK_SCLK_MMC1 146 60*c66ec88fSEmmanuel Vadot #define CLK_SCLK_MMC2 147 61*c66ec88fSEmmanuel Vadot #define CLK_SCLK_MMC3 148 62*c66ec88fSEmmanuel Vadot #define CLK_SCLK_MMC4 149 63*c66ec88fSEmmanuel Vadot #define CLK_SCLK_SATA 150 /* Exynos4210 only */ 64*c66ec88fSEmmanuel Vadot #define CLK_SCLK_UART0 151 65*c66ec88fSEmmanuel Vadot #define CLK_SCLK_UART1 152 66*c66ec88fSEmmanuel Vadot #define CLK_SCLK_UART2 153 67*c66ec88fSEmmanuel Vadot #define CLK_SCLK_UART3 154 68*c66ec88fSEmmanuel Vadot #define CLK_SCLK_UART4 155 69*c66ec88fSEmmanuel Vadot #define CLK_SCLK_AUDIO1 156 70*c66ec88fSEmmanuel Vadot #define CLK_SCLK_AUDIO2 157 71*c66ec88fSEmmanuel Vadot #define CLK_SCLK_SPDIF 158 72*c66ec88fSEmmanuel Vadot #define CLK_SCLK_SPI0 159 73*c66ec88fSEmmanuel Vadot #define CLK_SCLK_SPI1 160 74*c66ec88fSEmmanuel Vadot #define CLK_SCLK_SPI2 161 75*c66ec88fSEmmanuel Vadot #define CLK_SCLK_SLIMBUS 162 76*c66ec88fSEmmanuel Vadot #define CLK_SCLK_FIMD1 163 /* Exynos4210 only */ 77*c66ec88fSEmmanuel Vadot #define CLK_SCLK_MIPI1 164 /* Exynos4210 only */ 78*c66ec88fSEmmanuel Vadot #define CLK_SCLK_PCM1 165 79*c66ec88fSEmmanuel Vadot #define CLK_SCLK_PCM2 166 80*c66ec88fSEmmanuel Vadot #define CLK_SCLK_I2S1 167 81*c66ec88fSEmmanuel Vadot #define CLK_SCLK_I2S2 168 82*c66ec88fSEmmanuel Vadot #define CLK_SCLK_MIPIHSI 169 /* Exynos4412 only */ 83*c66ec88fSEmmanuel Vadot #define CLK_SCLK_MFC 170 84*c66ec88fSEmmanuel Vadot #define CLK_SCLK_PCM0 171 85*c66ec88fSEmmanuel Vadot #define CLK_SCLK_G3D 172 86*c66ec88fSEmmanuel Vadot #define CLK_SCLK_PWM_ISP 173 /* Exynos4x12 only */ 87*c66ec88fSEmmanuel Vadot #define CLK_SCLK_SPI0_ISP 174 /* Exynos4x12 only */ 88*c66ec88fSEmmanuel Vadot #define CLK_SCLK_SPI1_ISP 175 /* Exynos4x12 only */ 89*c66ec88fSEmmanuel Vadot #define CLK_SCLK_UART_ISP 176 /* Exynos4x12 only */ 90*c66ec88fSEmmanuel Vadot #define CLK_SCLK_FIMG2D 177 91*c66ec88fSEmmanuel Vadot 92*c66ec88fSEmmanuel Vadot /* gate clocks */ 93*c66ec88fSEmmanuel Vadot #define CLK_SSS 255 94*c66ec88fSEmmanuel Vadot #define CLK_FIMC0 256 95*c66ec88fSEmmanuel Vadot #define CLK_FIMC1 257 96*c66ec88fSEmmanuel Vadot #define CLK_FIMC2 258 97*c66ec88fSEmmanuel Vadot #define CLK_FIMC3 259 98*c66ec88fSEmmanuel Vadot #define CLK_CSIS0 260 99*c66ec88fSEmmanuel Vadot #define CLK_CSIS1 261 100*c66ec88fSEmmanuel Vadot #define CLK_JPEG 262 101*c66ec88fSEmmanuel Vadot #define CLK_SMMU_FIMC0 263 102*c66ec88fSEmmanuel Vadot #define CLK_SMMU_FIMC1 264 103*c66ec88fSEmmanuel Vadot #define CLK_SMMU_FIMC2 265 104*c66ec88fSEmmanuel Vadot #define CLK_SMMU_FIMC3 266 105*c66ec88fSEmmanuel Vadot #define CLK_SMMU_JPEG 267 106*c66ec88fSEmmanuel Vadot #define CLK_VP 268 107*c66ec88fSEmmanuel Vadot #define CLK_MIXER 269 108*c66ec88fSEmmanuel Vadot #define CLK_TVENC 270 /* Exynos4210 only */ 109*c66ec88fSEmmanuel Vadot #define CLK_HDMI 271 110*c66ec88fSEmmanuel Vadot #define CLK_SMMU_TV 272 111*c66ec88fSEmmanuel Vadot #define CLK_MFC 273 112*c66ec88fSEmmanuel Vadot #define CLK_SMMU_MFCL 274 113*c66ec88fSEmmanuel Vadot #define CLK_SMMU_MFCR 275 114*c66ec88fSEmmanuel Vadot #define CLK_G3D 276 115*c66ec88fSEmmanuel Vadot #define CLK_G2D 277 116*c66ec88fSEmmanuel Vadot #define CLK_ROTATOR 278 117*c66ec88fSEmmanuel Vadot #define CLK_MDMA 279 118*c66ec88fSEmmanuel Vadot #define CLK_SMMU_G2D 280 119*c66ec88fSEmmanuel Vadot #define CLK_SMMU_ROTATOR 281 120*c66ec88fSEmmanuel Vadot #define CLK_SMMU_MDMA 282 121*c66ec88fSEmmanuel Vadot #define CLK_FIMD0 283 122*c66ec88fSEmmanuel Vadot #define CLK_MIE0 284 123*c66ec88fSEmmanuel Vadot #define CLK_MDNIE0 285 /* Exynos4412 only */ 124*c66ec88fSEmmanuel Vadot #define CLK_DSIM0 286 125*c66ec88fSEmmanuel Vadot #define CLK_SMMU_FIMD0 287 126*c66ec88fSEmmanuel Vadot #define CLK_FIMD1 288 /* Exynos4210 only */ 127*c66ec88fSEmmanuel Vadot #define CLK_MIE1 289 /* Exynos4210 only */ 128*c66ec88fSEmmanuel Vadot #define CLK_DSIM1 290 /* Exynos4210 only */ 129*c66ec88fSEmmanuel Vadot #define CLK_SMMU_FIMD1 291 /* Exynos4210 only */ 130*c66ec88fSEmmanuel Vadot #define CLK_PDMA0 292 131*c66ec88fSEmmanuel Vadot #define CLK_PDMA1 293 132*c66ec88fSEmmanuel Vadot #define CLK_PCIE_PHY 294 133*c66ec88fSEmmanuel Vadot #define CLK_SATA_PHY 295 /* Exynos4210 only */ 134*c66ec88fSEmmanuel Vadot #define CLK_TSI 296 135*c66ec88fSEmmanuel Vadot #define CLK_SDMMC0 297 136*c66ec88fSEmmanuel Vadot #define CLK_SDMMC1 298 137*c66ec88fSEmmanuel Vadot #define CLK_SDMMC2 299 138*c66ec88fSEmmanuel Vadot #define CLK_SDMMC3 300 139*c66ec88fSEmmanuel Vadot #define CLK_SDMMC4 301 140*c66ec88fSEmmanuel Vadot #define CLK_SATA 302 /* Exynos4210 only */ 141*c66ec88fSEmmanuel Vadot #define CLK_SROMC 303 142*c66ec88fSEmmanuel Vadot #define CLK_USB_HOST 304 143*c66ec88fSEmmanuel Vadot #define CLK_USB_DEVICE 305 144*c66ec88fSEmmanuel Vadot #define CLK_PCIE 306 145*c66ec88fSEmmanuel Vadot #define CLK_ONENAND 307 146*c66ec88fSEmmanuel Vadot #define CLK_NFCON 308 147*c66ec88fSEmmanuel Vadot #define CLK_SMMU_PCIE 309 148*c66ec88fSEmmanuel Vadot #define CLK_GPS 310 149*c66ec88fSEmmanuel Vadot #define CLK_SMMU_GPS 311 150*c66ec88fSEmmanuel Vadot #define CLK_UART0 312 151*c66ec88fSEmmanuel Vadot #define CLK_UART1 313 152*c66ec88fSEmmanuel Vadot #define CLK_UART2 314 153*c66ec88fSEmmanuel Vadot #define CLK_UART3 315 154*c66ec88fSEmmanuel Vadot #define CLK_UART4 316 155*c66ec88fSEmmanuel Vadot #define CLK_I2C0 317 156*c66ec88fSEmmanuel Vadot #define CLK_I2C1 318 157*c66ec88fSEmmanuel Vadot #define CLK_I2C2 319 158*c66ec88fSEmmanuel Vadot #define CLK_I2C3 320 159*c66ec88fSEmmanuel Vadot #define CLK_I2C4 321 160*c66ec88fSEmmanuel Vadot #define CLK_I2C5 322 161*c66ec88fSEmmanuel Vadot #define CLK_I2C6 323 162*c66ec88fSEmmanuel Vadot #define CLK_I2C7 324 163*c66ec88fSEmmanuel Vadot #define CLK_I2C_HDMI 325 164*c66ec88fSEmmanuel Vadot #define CLK_TSADC 326 165*c66ec88fSEmmanuel Vadot #define CLK_SPI0 327 166*c66ec88fSEmmanuel Vadot #define CLK_SPI1 328 167*c66ec88fSEmmanuel Vadot #define CLK_SPI2 329 168*c66ec88fSEmmanuel Vadot #define CLK_I2S1 330 169*c66ec88fSEmmanuel Vadot #define CLK_I2S2 331 170*c66ec88fSEmmanuel Vadot #define CLK_PCM0 332 171*c66ec88fSEmmanuel Vadot #define CLK_I2S0 333 172*c66ec88fSEmmanuel Vadot #define CLK_PCM1 334 173*c66ec88fSEmmanuel Vadot #define CLK_PCM2 335 174*c66ec88fSEmmanuel Vadot #define CLK_PWM 336 175*c66ec88fSEmmanuel Vadot #define CLK_SLIMBUS 337 176*c66ec88fSEmmanuel Vadot #define CLK_SPDIF 338 177*c66ec88fSEmmanuel Vadot #define CLK_AC97 339 178*c66ec88fSEmmanuel Vadot #define CLK_MODEMIF 340 179*c66ec88fSEmmanuel Vadot #define CLK_CHIPID 341 180*c66ec88fSEmmanuel Vadot #define CLK_SYSREG 342 181*c66ec88fSEmmanuel Vadot #define CLK_HDMI_CEC 343 182*c66ec88fSEmmanuel Vadot #define CLK_MCT 344 183*c66ec88fSEmmanuel Vadot #define CLK_WDT 345 184*c66ec88fSEmmanuel Vadot #define CLK_RTC 346 185*c66ec88fSEmmanuel Vadot #define CLK_KEYIF 347 186*c66ec88fSEmmanuel Vadot #define CLK_AUDSS 348 187*c66ec88fSEmmanuel Vadot #define CLK_MIPI_HSI 349 /* Exynos4210 only */ 188*c66ec88fSEmmanuel Vadot #define CLK_PIXELASYNCM0 351 189*c66ec88fSEmmanuel Vadot #define CLK_PIXELASYNCM1 352 190*c66ec88fSEmmanuel Vadot #define CLK_ASYNC_G3D 353 /* Exynos4x12 only */ 191*c66ec88fSEmmanuel Vadot #define CLK_PWM_ISP_SCLK 379 /* Exynos4x12 only */ 192*c66ec88fSEmmanuel Vadot #define CLK_SPI0_ISP_SCLK 380 /* Exynos4x12 only */ 193*c66ec88fSEmmanuel Vadot #define CLK_SPI1_ISP_SCLK 381 /* Exynos4x12 only */ 194*c66ec88fSEmmanuel Vadot #define CLK_UART_ISP_SCLK 382 /* Exynos4x12 only */ 195*c66ec88fSEmmanuel Vadot #define CLK_TMU_APBIF 383 196*c66ec88fSEmmanuel Vadot 197*c66ec88fSEmmanuel Vadot /* mux clocks */ 198*c66ec88fSEmmanuel Vadot #define CLK_MOUT_FIMC0 384 199*c66ec88fSEmmanuel Vadot #define CLK_MOUT_FIMC1 385 200*c66ec88fSEmmanuel Vadot #define CLK_MOUT_FIMC2 386 201*c66ec88fSEmmanuel Vadot #define CLK_MOUT_FIMC3 387 202*c66ec88fSEmmanuel Vadot #define CLK_MOUT_CAM0 388 203*c66ec88fSEmmanuel Vadot #define CLK_MOUT_CAM1 389 204*c66ec88fSEmmanuel Vadot #define CLK_MOUT_CSIS0 390 205*c66ec88fSEmmanuel Vadot #define CLK_MOUT_CSIS1 391 206*c66ec88fSEmmanuel Vadot #define CLK_MOUT_G3D0 392 207*c66ec88fSEmmanuel Vadot #define CLK_MOUT_G3D1 393 208*c66ec88fSEmmanuel Vadot #define CLK_MOUT_G3D 394 209*c66ec88fSEmmanuel Vadot #define CLK_ACLK400_MCUISP 395 /* Exynos4x12 only */ 210*c66ec88fSEmmanuel Vadot #define CLK_MOUT_HDMI 396 211*c66ec88fSEmmanuel Vadot #define CLK_MOUT_MIXER 397 212*c66ec88fSEmmanuel Vadot 213*c66ec88fSEmmanuel Vadot /* gate clocks - ppmu */ 214*c66ec88fSEmmanuel Vadot #define CLK_PPMULEFT 400 215*c66ec88fSEmmanuel Vadot #define CLK_PPMURIGHT 401 216*c66ec88fSEmmanuel Vadot #define CLK_PPMUCAMIF 402 217*c66ec88fSEmmanuel Vadot #define CLK_PPMUTV 403 218*c66ec88fSEmmanuel Vadot #define CLK_PPMUMFC_L 404 219*c66ec88fSEmmanuel Vadot #define CLK_PPMUMFC_R 405 220*c66ec88fSEmmanuel Vadot #define CLK_PPMUG3D 406 221*c66ec88fSEmmanuel Vadot #define CLK_PPMUIMAGE 407 222*c66ec88fSEmmanuel Vadot #define CLK_PPMULCD0 408 223*c66ec88fSEmmanuel Vadot #define CLK_PPMULCD1 409 /* Exynos4210 only */ 224*c66ec88fSEmmanuel Vadot #define CLK_PPMUFILE 410 225*c66ec88fSEmmanuel Vadot #define CLK_PPMUGPS 411 226*c66ec88fSEmmanuel Vadot #define CLK_PPMUDMC0 412 227*c66ec88fSEmmanuel Vadot #define CLK_PPMUDMC1 413 228*c66ec88fSEmmanuel Vadot #define CLK_PPMUCPU 414 229*c66ec88fSEmmanuel Vadot #define CLK_PPMUACP 415 230*c66ec88fSEmmanuel Vadot 231*c66ec88fSEmmanuel Vadot /* div clocks */ 232*c66ec88fSEmmanuel Vadot #define CLK_DIV_ACLK200 454 /* Exynos4x12 only */ 233*c66ec88fSEmmanuel Vadot #define CLK_DIV_ACLK400_MCUISP 455 /* Exynos4x12 only */ 234*c66ec88fSEmmanuel Vadot #define CLK_DIV_ACP 456 235*c66ec88fSEmmanuel Vadot #define CLK_DIV_DMC 457 236*c66ec88fSEmmanuel Vadot #define CLK_DIV_C2C 458 /* Exynos4x12 only */ 237*c66ec88fSEmmanuel Vadot #define CLK_DIV_GDL 459 238*c66ec88fSEmmanuel Vadot #define CLK_DIV_GDR 460 239*c66ec88fSEmmanuel Vadot 240*c66ec88fSEmmanuel Vadot /* must be greater than maximal clock id */ 241*c66ec88fSEmmanuel Vadot #define CLK_NR_CLKS 461 242*c66ec88fSEmmanuel Vadot 243*c66ec88fSEmmanuel Vadot /* Exynos4x12 ISP clocks */ 244*c66ec88fSEmmanuel Vadot #define CLK_ISP_FIMC_ISP 1 245*c66ec88fSEmmanuel Vadot #define CLK_ISP_FIMC_DRC 2 246*c66ec88fSEmmanuel Vadot #define CLK_ISP_FIMC_FD 3 247*c66ec88fSEmmanuel Vadot #define CLK_ISP_FIMC_LITE0 4 248*c66ec88fSEmmanuel Vadot #define CLK_ISP_FIMC_LITE1 5 249*c66ec88fSEmmanuel Vadot #define CLK_ISP_MCUISP 6 250*c66ec88fSEmmanuel Vadot #define CLK_ISP_GICISP 7 251*c66ec88fSEmmanuel Vadot #define CLK_ISP_SMMU_ISP 8 252*c66ec88fSEmmanuel Vadot #define CLK_ISP_SMMU_DRC 9 253*c66ec88fSEmmanuel Vadot #define CLK_ISP_SMMU_FD 10 254*c66ec88fSEmmanuel Vadot #define CLK_ISP_SMMU_LITE0 11 255*c66ec88fSEmmanuel Vadot #define CLK_ISP_SMMU_LITE1 12 256*c66ec88fSEmmanuel Vadot #define CLK_ISP_PPMUISPMX 13 257*c66ec88fSEmmanuel Vadot #define CLK_ISP_PPMUISPX 14 258*c66ec88fSEmmanuel Vadot #define CLK_ISP_MCUCTL_ISP 15 259*c66ec88fSEmmanuel Vadot #define CLK_ISP_MPWM_ISP 16 260*c66ec88fSEmmanuel Vadot #define CLK_ISP_I2C0_ISP 17 261*c66ec88fSEmmanuel Vadot #define CLK_ISP_I2C1_ISP 18 262*c66ec88fSEmmanuel Vadot #define CLK_ISP_MTCADC_ISP 19 263*c66ec88fSEmmanuel Vadot #define CLK_ISP_PWM_ISP 20 264*c66ec88fSEmmanuel Vadot #define CLK_ISP_WDT_ISP 21 265*c66ec88fSEmmanuel Vadot #define CLK_ISP_UART_ISP 22 266*c66ec88fSEmmanuel Vadot #define CLK_ISP_ASYNCAXIM 23 267*c66ec88fSEmmanuel Vadot #define CLK_ISP_SMMU_ISPCX 24 268*c66ec88fSEmmanuel Vadot #define CLK_ISP_SPI0_ISP 25 269*c66ec88fSEmmanuel Vadot #define CLK_ISP_SPI1_ISP 26 270*c66ec88fSEmmanuel Vadot 271*c66ec88fSEmmanuel Vadot #define CLK_ISP_DIV_ISP0 27 272*c66ec88fSEmmanuel Vadot #define CLK_ISP_DIV_ISP1 28 273*c66ec88fSEmmanuel Vadot #define CLK_ISP_DIV_MCUISP0 29 274*c66ec88fSEmmanuel Vadot #define CLK_ISP_DIV_MCUISP1 30 275*c66ec88fSEmmanuel Vadot 276*c66ec88fSEmmanuel Vadot #define CLK_NR_ISP_CLKS 31 277*c66ec88fSEmmanuel Vadot 278*c66ec88fSEmmanuel Vadot #endif /* _DT_BINDINGS_CLOCK_EXYNOS_4_H */ 279