525 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/clock/samsung,exynos5433-clock.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Samsung Exynos5433 SoC clock controller8 9maintainers:10 - Chanwoo Choi <cw00.choi@samsung.com>11 - Krzysztof Kozlowski <krzk@kernel.org>12 - Sylwester Nawrocki <s.nawrocki@samsung.com>13 - Tomasz Figa <tomasz.figa@gmail.com>14 15description: |16 Expected external clocks, defined in DTS as fixed-rate clocks with a matching17 name::18 - "oscclk" - PLL input clock from XXTI19 20 All available clocks are defined as preprocessor macros in21 include/dt-bindings/clock/exynos5433.h header.22 23properties:24 compatible:25 enum:26 # CMU_TOP which generates clocks for27 # IMEM/FSYS/G3D/GSCL/HEVC/MSCL/G2D/MFC/PERIC/PERIS domains and bus28 # clocks29 - samsung,exynos5433-cmu-top30 # CMU_CPIF which generates clocks for LLI (Low Latency Interface) IP31 - samsung,exynos5433-cmu-cpif32 # CMU_MIF which generates clocks for DRAM Memory Controller domain33 - samsung,exynos5433-cmu-mif34 # CMU_PERIC which generates clocks for35 # UART/I2C/SPI/I2S/PCM/SPDIF/PWM/SLIMBUS IPs36 - samsung,exynos5433-cmu-peric37 # CMU_PERIS which generates clocks for PMU/TMU/MCT/WDT/RTC/SECKEY/TZPC IPs38 - samsung,exynos5433-cmu-peris39 # CMU_FSYS which generates clocks for USB/UFS/SDMMC/TSI/PDMA IPs40 - samsung,exynos5433-cmu-fsys41 - samsung,exynos5433-cmu-g2d42 # CMU_DISP which generates clocks for Display (DECON/HDMI/DSIM/MIXER) IPs43 - samsung,exynos5433-cmu-disp44 - samsung,exynos5433-cmu-aud45 - samsung,exynos5433-cmu-bus046 - samsung,exynos5433-cmu-bus147 - samsung,exynos5433-cmu-bus248 - samsung,exynos5433-cmu-g3d49 - samsung,exynos5433-cmu-gscl50 - samsung,exynos5433-cmu-apollo51 # CMU_ATLAS which generates clocks for Cortex-A57 Quad-core processor,52 # CoreSight and L2 cache controller53 - samsung,exynos5433-cmu-atlas54 # CMU_MSCL which generates clocks for M2M (Memory to Memory) scaler and55 # JPEG IPs56 - samsung,exynos5433-cmu-mscl57 - samsung,exynos5433-cmu-mfc58 - samsung,exynos5433-cmu-hevc59 # CMU_ISP which generates clocks for FIMC-ISP/DRC/SCLC/DIS/3DNR IPs60 - samsung,exynos5433-cmu-isp61 # CMU_CAM0 which generates clocks for62 # MIPI_CSIS{0|1}/FIMC_LITE_{A|B|D}/FIMC_3AA{0|1} IPs63 - samsung,exynos5433-cmu-cam064 # CMU_CAM1 which generates clocks for65 # Cortex-A5/MIPI_CSIS2/FIMC-LITE_C/FIMC-FD IPs66 - samsung,exynos5433-cmu-cam167 # CMU_IMEM which generates clocks for SSS (Security SubSystem) and68 # SlimSSS IPs69 - samsung,exynos5433-cmu-imem70 71 clocks:72 minItems: 173 maxItems: 1074 75 clock-names:76 minItems: 177 maxItems: 1078 79 "#clock-cells":80 const: 181 82 power-domains:83 maxItems: 184 85 reg:86 maxItems: 187 88required:89 - compatible90 - "#clock-cells"91 - reg92 93allOf:94 - if:95 properties:96 compatible:97 contains:98 const: samsung,exynos5433-cmu-top99 then:100 properties:101 clocks:102 minItems: 4103 maxItems: 4104 clock-names:105 items:106 - const: oscclk107 - const: sclk_mphy_pll108 - const: sclk_mfc_pll109 - const: sclk_bus_pll110 required:111 - clock-names112 - clocks113 114 - if:115 properties:116 compatible:117 contains:118 const: samsung,exynos5433-cmu-cpif119 then:120 properties:121 clocks:122 minItems: 1123 maxItems: 1124 clock-names:125 items:126 - const: oscclk127 required:128 - clock-names129 - clocks130 131 - if:132 properties:133 compatible:134 contains:135 const: samsung,exynos5433-cmu-mif136 then:137 properties:138 clocks:139 minItems: 2140 maxItems: 2141 clock-names:142 items:143 - const: oscclk144 - const: sclk_mphy_pll145 required:146 - clock-names147 - clocks148 149 - if:150 properties:151 compatible:152 contains:153 const: samsung,exynos5433-cmu-fsys154 then:155 properties:156 clocks:157 minItems: 10158 maxItems: 10159 clock-names:160 items:161 - const: oscclk162 - const: sclk_ufs_mphy163 - const: aclk_fsys_200164 - const: sclk_pcie_100_fsys165 - const: sclk_ufsunipro_fsys166 - const: sclk_mmc2_fsys167 - const: sclk_mmc1_fsys168 - const: sclk_mmc0_fsys169 - const: sclk_usbhost30_fsys170 - const: sclk_usbdrd30_fsys171 required:172 - clock-names173 - clocks174 175 - if:176 properties:177 compatible:178 contains:179 const: samsung,exynos5433-cmu-g2d180 then:181 properties:182 clocks:183 minItems: 3184 maxItems: 3185 clock-names:186 items:187 - const: oscclk188 - const: aclk_g2d_266189 - const: aclk_g2d_400190 required:191 - clock-names192 - clocks193 194 - if:195 properties:196 compatible:197 contains:198 const: samsung,exynos5433-cmu-disp199 then:200 properties:201 clocks:202 minItems: 9203 maxItems: 9204 clock-names:205 items:206 - const: oscclk207 - const: sclk_dsim1_disp208 - const: sclk_dsim0_disp209 - const: sclk_dsd_disp210 - const: sclk_decon_tv_eclk_disp211 - const: sclk_decon_vclk_disp212 - const: sclk_decon_eclk_disp213 - const: sclk_decon_tv_vclk_disp214 - const: aclk_disp_333215 required:216 - clock-names217 - clocks218 219 - if:220 properties:221 compatible:222 contains:223 const: samsung,exynos5433-cmu-aud224 then:225 properties:226 clocks:227 minItems: 2228 maxItems: 2229 clock-names:230 items:231 - const: oscclk232 - const: fout_aud_pll233 required:234 - clock-names235 - clocks236 237 - if:238 properties:239 compatible:240 contains:241 const: samsung,exynos5433-cmu-bus0242 then:243 properties:244 clocks:245 minItems: 1246 maxItems: 1247 clock-names:248 items:249 - const: aclk_bus0_400250 required:251 - clock-names252 - clocks253 254 - if:255 properties:256 compatible:257 contains:258 const: samsung,exynos5433-cmu-bus1259 then:260 properties:261 clocks:262 minItems: 1263 maxItems: 1264 clock-names:265 items:266 - const: aclk_bus1_400267 required:268 - clock-names269 - clocks270 271 - if:272 properties:273 compatible:274 contains:275 const: samsung,exynos5433-cmu-bus2276 then:277 properties:278 clocks:279 minItems: 2280 maxItems: 2281 clock-names:282 items:283 - const: oscclk284 - const: aclk_bus2_400285 required:286 - clock-names287 - clocks288 289 - if:290 properties:291 compatible:292 contains:293 const: samsung,exynos5433-cmu-g3d294 then:295 properties:296 clocks:297 minItems: 2298 maxItems: 2299 clock-names:300 items:301 - const: oscclk302 - const: aclk_g3d_400303 required:304 - clock-names305 - clocks306 307 - if:308 properties:309 compatible:310 contains:311 const: samsung,exynos5433-cmu-gscl312 then:313 properties:314 clocks:315 minItems: 3316 maxItems: 3317 clock-names:318 items:319 - const: oscclk320 - const: aclk_gscl_111321 - const: aclk_gscl_333322 required:323 - clock-names324 - clocks325 326 - if:327 properties:328 compatible:329 contains:330 const: samsung,exynos5433-cmu-apollo331 then:332 properties:333 clocks:334 minItems: 2335 maxItems: 2336 clock-names:337 items:338 - const: oscclk339 - const: sclk_bus_pll_apollo340 required:341 - clock-names342 - clocks343 344 - if:345 properties:346 compatible:347 contains:348 const: samsung,exynos5433-cmu-atlas349 then:350 properties:351 clocks:352 minItems: 2353 maxItems: 2354 clock-names:355 items:356 - const: oscclk357 - const: sclk_bus_pll_atlas358 required:359 - clock-names360 - clocks361 362 - if:363 properties:364 compatible:365 contains:366 const: samsung,exynos5433-cmu-mscl367 then:368 properties:369 clocks:370 minItems: 3371 maxItems: 3372 clock-names:373 items:374 - const: oscclk375 - const: sclk_jpeg_mscl376 - const: aclk_mscl_400377 required:378 - clock-names379 - clocks380 381 - if:382 properties:383 compatible:384 contains:385 const: samsung,exynos5433-cmu-mfc386 then:387 properties:388 clocks:389 minItems: 2390 maxItems: 2391 clock-names:392 items:393 - const: oscclk394 - const: aclk_mfc_400395 required:396 - clock-names397 - clocks398 399 - if:400 properties:401 compatible:402 contains:403 const: samsung,exynos5433-cmu-hevc404 then:405 properties:406 clocks:407 minItems: 2408 maxItems: 2409 clock-names:410 items:411 - const: oscclk412 - const: aclk_hevc_400413 required:414 - clock-names415 - clocks416 417 - if:418 properties:419 compatible:420 contains:421 const: samsung,exynos5433-cmu-isp422 then:423 properties:424 clocks:425 minItems: 3426 maxItems: 3427 clock-names:428 items:429 - const: oscclk430 - const: aclk_isp_dis_400431 - const: aclk_isp_400432 required:433 - clock-names434 - clocks435 436 - if:437 properties:438 compatible:439 contains:440 const: samsung,exynos5433-cmu-cam0441 then:442 properties:443 clocks:444 minItems: 4445 maxItems: 4446 clock-names:447 items:448 - const: oscclk449 - const: aclk_cam0_333450 - const: aclk_cam0_400451 - const: aclk_cam0_552452 required:453 - clock-names454 - clocks455 456 - if:457 properties:458 compatible:459 contains:460 const: samsung,exynos5433-cmu-cam1461 then:462 properties:463 clocks:464 minItems: 7465 maxItems: 7466 clock-names:467 items:468 - const: oscclk469 - const: sclk_isp_uart_cam1470 - const: sclk_isp_spi1_cam1471 - const: sclk_isp_spi0_cam1472 - const: aclk_cam1_333473 - const: aclk_cam1_400474 - const: aclk_cam1_552475 required:476 - clock-names477 - clocks478 479 - if:480 properties:481 compatible:482 contains:483 const: samsung,exynos5433-cmu-imem484 then:485 properties:486 clocks:487 minItems: 4488 maxItems: 4489 clock-names:490 items:491 - const: oscclk492 - const: aclk_imem_sssx_266493 - const: aclk_imem_266494 - const: aclk_imem_200495 required:496 - clock-names497 - clocks498 499additionalProperties: false500 501examples:502 - |503 #include <dt-bindings/clock/exynos5433.h>504 xxti: clock {505 compatible = "fixed-clock";506 clock-output-names = "oscclk";507 #clock-cells = <0>;508 clock-frequency = <24000000>;509 };510 511 clock-controller@10030000 {512 compatible = "samsung,exynos5433-cmu-top";513 reg = <0x10030000 0x1000>;514 #clock-cells = <1>;515 516 clock-names = "oscclk",517 "sclk_mphy_pll",518 "sclk_mfc_pll",519 "sclk_bus_pll";520 clocks = <&xxti>,521 <&cmu_cpif CLK_SCLK_MPHY_PLL>,522 <&cmu_mif CLK_SCLK_MFC_PLL>,523 <&cmu_mif CLK_SCLK_BUS_PLL>;524 };525