1 # SPDX-License-Identifier: (GPL-2.0-only OR BS 2 %YAML 1.2 3 --- 4 $id: http://devicetree.org/schemas/clock/samsu 5 $schema: http://devicetree.org/meta-schemas/co 6 7 title: Samsung Exynos850 SoC clock controller 8 9 maintainers: 10 - Sam Protsenko <semen.protsenko@linaro.org> 11 - Chanwoo Choi <cw00.choi@samsung.com> 12 - Krzysztof Kozlowski <krzk@kernel.org> 13 - Sylwester Nawrocki <s.nawrocki@samsung.com> 14 - Tomasz Figa <tomasz.figa@gmail.com> 15 16 description: | 17 Exynos850 clock controller is comprised of s 18 clocks for different domains. Those CMU unit 19 tree nodes, and might depend on each other. 20 two external clocks:: OSCCLK (26 MHz) and RT 21 clocks must be defined as fixed-rate clocks 22 23 CMU_TOP is a top-level CMU, where all base c 24 dividers; all other leaf clocks (other CMUs) 25 26 Each clock is assigned an identifier and cli 27 to specify the clock which they consume. All 28 in clock consumer nodes are defined as prepr 29 'dt-bindings/clock/exynos850.h' header. 30 31 properties: 32 compatible: 33 enum: 34 - samsung,exynos850-cmu-top 35 - samsung,exynos850-cmu-apm 36 - samsung,exynos850-cmu-aud 37 - samsung,exynos850-cmu-cmgp 38 - samsung,exynos850-cmu-core 39 - samsung,exynos850-cmu-cpucl0 40 - samsung,exynos850-cmu-cpucl1 41 - samsung,exynos850-cmu-dpu 42 - samsung,exynos850-cmu-g3d 43 - samsung,exynos850-cmu-hsi 44 - samsung,exynos850-cmu-is 45 - samsung,exynos850-cmu-mfcmscl 46 - samsung,exynos850-cmu-peri 47 48 clocks: 49 minItems: 1 50 maxItems: 5 51 52 clock-names: 53 minItems: 1 54 maxItems: 5 55 56 "#clock-cells": 57 const: 1 58 59 reg: 60 maxItems: 1 61 62 allOf: 63 - if: 64 properties: 65 compatible: 66 contains: 67 const: samsung,exynos850-cmu-top 68 69 then: 70 properties: 71 clocks: 72 items: 73 - description: External reference 74 75 clock-names: 76 items: 77 - const: oscclk 78 79 - if: 80 properties: 81 compatible: 82 contains: 83 const: samsung,exynos850-cmu-apm 84 85 then: 86 properties: 87 clocks: 88 items: 89 - description: External reference 90 - description: CMU_APM bus clock ( 91 92 clock-names: 93 items: 94 - const: oscclk 95 - const: dout_clkcmu_apm_bus 96 97 - if: 98 properties: 99 compatible: 100 contains: 101 const: samsung,exynos850-cmu-aud 102 103 then: 104 properties: 105 clocks: 106 items: 107 - description: External reference 108 - description: AUD clock (from CMU 109 110 clock-names: 111 items: 112 - const: oscclk 113 - const: dout_aud 114 115 - if: 116 properties: 117 compatible: 118 contains: 119 const: samsung,exynos850-cmu-cmgp 120 121 then: 122 properties: 123 clocks: 124 items: 125 - description: External reference 126 - description: CMU_CMGP bus clock 127 128 clock-names: 129 items: 130 - const: oscclk 131 - const: gout_clkcmu_cmgp_bus 132 133 - if: 134 properties: 135 compatible: 136 contains: 137 const: samsung,exynos850-cmu-core 138 139 then: 140 properties: 141 clocks: 142 items: 143 - description: External reference 144 - description: CMU_CORE bus clock 145 - description: CCI clock (from CMU 146 - description: eMMC clock (from CM 147 - description: SSS clock (from CMU 148 149 clock-names: 150 items: 151 - const: oscclk 152 - const: dout_core_bus 153 - const: dout_core_cci 154 - const: dout_core_mmc_embd 155 - const: dout_core_sss 156 157 - if: 158 properties: 159 compatible: 160 contains: 161 const: samsung,exynos850-cmu-cpucl 162 163 then: 164 properties: 165 clocks: 166 items: 167 - description: External reference 168 - description: CPUCL0 switch clock 169 - description: CPUCL0 debug clock 170 171 clock-names: 172 items: 173 - const: oscclk 174 - const: dout_cpucl0_switch 175 - const: dout_cpucl0_dbg 176 177 - if: 178 properties: 179 compatible: 180 contains: 181 const: samsung,exynos850-cmu-cpucl 182 183 then: 184 properties: 185 clocks: 186 items: 187 - description: External reference 188 - description: CPUCL1 switch clock 189 - description: CPUCL1 debug clock 190 191 clock-names: 192 items: 193 - const: oscclk 194 - const: dout_cpucl1_switch 195 - const: dout_cpucl1_dbg 196 197 - if: 198 properties: 199 compatible: 200 contains: 201 const: samsung,exynos850-cmu-dpu 202 203 then: 204 properties: 205 clocks: 206 items: 207 - description: External reference 208 - description: DPU clock (from CMU 209 210 clock-names: 211 items: 212 - const: oscclk 213 - const: dout_dpu 214 215 - if: 216 properties: 217 compatible: 218 contains: 219 const: samsung,exynos850-cmu-g3d 220 221 then: 222 properties: 223 clocks: 224 items: 225 - description: External reference 226 - description: G3D clock (from CMU 227 228 clock-names: 229 items: 230 - const: oscclk 231 - const: dout_g3d_switch 232 233 - if: 234 properties: 235 compatible: 236 contains: 237 const: samsung,exynos850-cmu-hsi 238 239 then: 240 properties: 241 clocks: 242 items: 243 - description: External reference 244 - description: External RTC clock 245 - description: CMU_HSI bus clock ( 246 - description: SD card clock (from 247 - description: USB 2.0 DRD clock ( 248 249 clock-names: 250 items: 251 - const: oscclk 252 - const: rtcclk 253 - const: dout_hsi_bus 254 - const: dout_hsi_mmc_card 255 - const: dout_hsi_usb20drd 256 257 - if: 258 properties: 259 compatible: 260 contains: 261 const: samsung,exynos850-cmu-is 262 263 then: 264 properties: 265 clocks: 266 items: 267 - description: External reference 268 - description: CMU_IS bus clock (f 269 - description: Image Texture Proce 270 - description: Visual Recognition 271 - description: Geometric Distortio 272 273 clock-names: 274 items: 275 - const: oscclk 276 - const: dout_is_bus 277 - const: dout_is_itp 278 - const: dout_is_vra 279 - const: dout_is_gdc 280 281 - if: 282 properties: 283 compatible: 284 contains: 285 const: samsung,exynos850-cmu-mfcms 286 287 then: 288 properties: 289 clocks: 290 items: 291 - description: External reference 292 - description: Multi-Format Codec 293 - description: Memory to Memory Sc 294 - description: Multi-Channel Scale 295 - description: JPEG codec clock (f 296 297 clock-names: 298 items: 299 - const: oscclk 300 - const: dout_mfcmscl_mfc 301 - const: dout_mfcmscl_m2m 302 - const: dout_mfcmscl_mcsc 303 - const: dout_mfcmscl_jpeg 304 305 - if: 306 properties: 307 compatible: 308 contains: 309 const: samsung,exynos850-cmu-peri 310 311 then: 312 properties: 313 clocks: 314 items: 315 - description: External reference 316 - description: CMU_PERI bus clock 317 - description: UART clock (from CM 318 - description: Parent clock for HS 319 320 clock-names: 321 items: 322 - const: oscclk 323 - const: dout_peri_bus 324 - const: dout_peri_uart 325 - const: dout_peri_ip 326 327 required: 328 - compatible 329 - "#clock-cells" 330 - clocks 331 - clock-names 332 - reg 333 334 additionalProperties: false 335 336 examples: 337 # Clock controller node for CMU_PERI 338 - | 339 #include <dt-bindings/clock/exynos850.h> 340 341 cmu_peri: clock-controller@10030000 { 342 compatible = "samsung,exynos850-cmu-pe 343 reg = <0x10030000 0x8000>; 344 #clock-cells = <1>; 345 346 clocks = <&oscclk>, <&cmu_top CLK_DOUT 347 <&cmu_top CLK_DOUT_PERI_UART> 348 <&cmu_top CLK_DOUT_PERI_IP>; 349 clock-names = "oscclk", "dout_peri_bus 350 "dout_peri_uart", "dout_ 351 }; 352 353 ...
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.