1 # SPDX-License-Identifier: (GPL-2.0-only OR BS 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/clock/renes 4 $id: http://devicetree.org/schemas/clock/renesas,cpg-clocks.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Renesas Clock Pulse Generator (CPG) 7 title: Renesas Clock Pulse Generator (CPG) 8 8 9 maintainers: 9 maintainers: 10 - Geert Uytterhoeven <geert+renesas@glider.be 10 - Geert Uytterhoeven <geert+renesas@glider.be> 11 11 12 description: 12 description: 13 The Clock Pulse Generator (CPG) generates co 13 The Clock Pulse Generator (CPG) generates core clocks for the SoC. It 14 includes PLLs, and fixed and variable ratio 14 includes PLLs, and fixed and variable ratio dividers. 15 15 16 The CPG may also provide a Clock Domain for 16 The CPG may also provide a Clock Domain for SoC devices, in combination with 17 the CPG Module Stop (MSTP) Clocks. 17 the CPG Module Stop (MSTP) Clocks. 18 18 19 properties: 19 properties: 20 compatible: 20 compatible: 21 oneOf: 21 oneOf: 22 - const: renesas,r8a73a4-cpg-clocks 22 - const: renesas,r8a73a4-cpg-clocks # R-Mobile APE6 23 - const: renesas,r8a7740-cpg-clocks 23 - const: renesas,r8a7740-cpg-clocks # R-Mobile A1 24 - const: renesas,r8a7778-cpg-clocks 24 - const: renesas,r8a7778-cpg-clocks # R-Car M1 25 - const: renesas,r8a7779-cpg-clocks 25 - const: renesas,r8a7779-cpg-clocks # R-Car H1 26 - items: 26 - items: 27 - enum: 27 - enum: 28 - renesas,r7s72100-cpg-clocks 28 - renesas,r7s72100-cpg-clocks # RZ/A1H 29 - const: renesas,rz-cpg-clocks 29 - const: renesas,rz-cpg-clocks # RZ/A1 30 - const: renesas,sh73a0-cpg-clocks 30 - const: renesas,sh73a0-cpg-clocks # SH-Mobile AG5 31 31 32 reg: 32 reg: 33 maxItems: 1 33 maxItems: 1 34 34 35 clocks: !! 35 clocks: true 36 minItems: 1 << 37 maxItems: 3 << 38 36 39 '#clock-cells': 37 '#clock-cells': 40 const: 1 38 const: 1 41 39 42 clock-output-names: !! 40 clock-output-names: true 43 minItems: 3 << 44 maxItems: 17 << 45 41 46 renesas,mode: 42 renesas,mode: 47 description: Board-specific settings of th 43 description: Board-specific settings of the MD_CK* bits on R-Mobile A1 48 $ref: /schemas/types.yaml#/definitions/uin 44 $ref: /schemas/types.yaml#/definitions/uint32 49 minimum: 0 45 minimum: 0 50 maximum: 7 46 maximum: 7 51 47 52 '#power-domain-cells': 48 '#power-domain-cells': 53 const: 0 49 const: 0 54 50 55 required: 51 required: 56 - compatible 52 - compatible 57 - reg 53 - reg 58 - clocks 54 - clocks 59 - '#clock-cells' 55 - '#clock-cells' 60 - clock-output-names 56 - clock-output-names 61 57 62 allOf: 58 allOf: 63 - if: 59 - if: 64 properties: 60 properties: 65 compatible: 61 compatible: 66 contains: 62 contains: 67 const: renesas,r8a73a4-cpg-clocks 63 const: renesas,r8a73a4-cpg-clocks 68 then: 64 then: 69 properties: 65 properties: 70 clocks: 66 clocks: 71 items: 67 items: 72 - description: extal1 68 - description: extal1 73 - description: extal2 69 - description: extal2 74 70 75 clock-output-names: 71 clock-output-names: 76 items: 72 items: 77 - const: main 73 - const: main 78 - const: pll0 74 - const: pll0 79 - const: pll1 75 - const: pll1 80 - const: pll2 76 - const: pll2 81 - const: pll2s 77 - const: pll2s 82 - const: pll2h 78 - const: pll2h 83 - const: z 79 - const: z 84 - const: z2 80 - const: z2 85 - const: i 81 - const: i 86 - const: m3 82 - const: m3 87 - const: b 83 - const: b 88 - const: m1 84 - const: m1 89 - const: m2 85 - const: m2 90 - const: zx 86 - const: zx 91 - const: zs 87 - const: zs 92 - const: hp 88 - const: hp 93 89 94 - if: 90 - if: 95 properties: 91 properties: 96 compatible: 92 compatible: 97 contains: 93 contains: 98 const: renesas,r8a7740-cpg-clocks 94 const: renesas,r8a7740-cpg-clocks 99 then: 95 then: 100 properties: 96 properties: 101 clocks: 97 clocks: 102 items: 98 items: 103 - description: extal1 99 - description: extal1 104 - description: extal2 100 - description: extal2 105 - description: extalr 101 - description: extalr 106 102 107 clock-output-names: 103 clock-output-names: 108 items: 104 items: 109 - const: system 105 - const: system 110 - const: pllc0 106 - const: pllc0 111 - const: pllc1 107 - const: pllc1 112 - const: pllc2 108 - const: pllc2 113 - const: r 109 - const: r 114 - const: usb24s 110 - const: usb24s 115 - const: i 111 - const: i 116 - const: zg 112 - const: zg 117 - const: b 113 - const: b 118 - const: m1 114 - const: m1 119 - const: hp 115 - const: hp 120 - const: hpp 116 - const: hpp 121 - const: usbp 117 - const: usbp 122 - const: s 118 - const: s 123 - const: zb 119 - const: zb 124 - const: m3 120 - const: m3 125 - const: cp 121 - const: cp 126 122 127 required: 123 required: 128 - renesas,mode 124 - renesas,mode 129 125 130 - if: 126 - if: 131 properties: 127 properties: 132 compatible: 128 compatible: 133 contains: 129 contains: 134 const: renesas,r8a7778-cpg-clocks 130 const: renesas,r8a7778-cpg-clocks 135 then: 131 then: 136 properties: 132 properties: 137 clocks: 133 clocks: 138 maxItems: 1 134 maxItems: 1 139 135 140 clock-output-names: 136 clock-output-names: 141 items: 137 items: 142 - const: plla 138 - const: plla 143 - const: pllb 139 - const: pllb 144 - const: b 140 - const: b 145 - const: out 141 - const: out 146 - const: p 142 - const: p 147 - const: s 143 - const: s 148 - const: s1 144 - const: s1 149 145 150 - if: 146 - if: 151 properties: 147 properties: 152 compatible: 148 compatible: 153 contains: 149 contains: 154 const: renesas,r8a7779-cpg-clocks 150 const: renesas,r8a7779-cpg-clocks 155 then: 151 then: 156 properties: 152 properties: 157 clocks: 153 clocks: 158 maxItems: 1 154 maxItems: 1 159 155 160 clock-output-names: 156 clock-output-names: 161 items: 157 items: 162 - const: plla 158 - const: plla 163 - const: z 159 - const: z 164 - const: zs 160 - const: zs 165 - const: s 161 - const: s 166 - const: s1 162 - const: s1 167 - const: p 163 - const: p 168 - const: b 164 - const: b 169 - const: out 165 - const: out 170 166 171 - if: 167 - if: 172 properties: 168 properties: 173 compatible: 169 compatible: 174 contains: 170 contains: 175 const: renesas,r7s72100-cpg-clocks 171 const: renesas,r7s72100-cpg-clocks 176 then: 172 then: 177 properties: 173 properties: 178 clocks: 174 clocks: 179 items: 175 items: 180 - description: extal1 176 - description: extal1 181 - description: usb_x1 177 - description: usb_x1 182 178 183 clock-output-names: 179 clock-output-names: 184 items: 180 items: 185 - const: pll 181 - const: pll 186 - const: i 182 - const: i 187 - const: g 183 - const: g 188 184 189 - if: 185 - if: 190 properties: 186 properties: 191 compatible: 187 compatible: 192 contains: 188 contains: 193 const: renesas,sh73a0-cpg-clocks 189 const: renesas,sh73a0-cpg-clocks 194 then: 190 then: 195 properties: 191 properties: 196 clocks: 192 clocks: 197 items: 193 items: 198 - description: extal1 194 - description: extal1 199 - description: extal2 195 - description: extal2 200 196 201 clock-output-names: 197 clock-output-names: 202 items: 198 items: 203 - const: main 199 - const: main 204 - const: pll0 200 - const: pll0 205 - const: pll1 201 - const: pll1 206 - const: pll2 202 - const: pll2 207 - const: pll3 203 - const: pll3 208 - const: dsi0phy 204 - const: dsi0phy 209 - const: dsi1phy 205 - const: dsi1phy 210 - const: zg 206 - const: zg 211 - const: m3 207 - const: m3 212 - const: b 208 - const: b 213 - const: m1 209 - const: m1 214 - const: m2 210 - const: m2 215 - const: z 211 - const: z 216 - const: zx 212 - const: zx 217 - const: hp 213 - const: hp 218 214 219 - if: 215 - if: 220 properties: 216 properties: 221 compatible: 217 compatible: 222 contains: 218 contains: 223 enum: 219 enum: 224 - renesas,r8a7778-cpg-clocks 220 - renesas,r8a7778-cpg-clocks 225 - renesas,r8a7779-cpg-clocks 221 - renesas,r8a7779-cpg-clocks 226 - renesas,rz-cpg-clocks 222 - renesas,rz-cpg-clocks 227 then: 223 then: 228 required: 224 required: 229 - '#power-domain-cells' 225 - '#power-domain-cells' 230 226 231 additionalProperties: false 227 additionalProperties: false 232 228 233 examples: 229 examples: 234 - | 230 - | 235 #include <dt-bindings/clock/r8a7740-clock. 231 #include <dt-bindings/clock/r8a7740-clock.h> 236 cpg_clocks: cpg_clocks@e6150000 { 232 cpg_clocks: cpg_clocks@e6150000 { 237 compatible = "renesas,r8a7740-cpg- 233 compatible = "renesas,r8a7740-cpg-clocks"; 238 reg = <0xe6150000 0x10000>; 234 reg = <0xe6150000 0x10000>; 239 clocks = <&extal1_clk>, <&extal2_c 235 clocks = <&extal1_clk>, <&extal2_clk>, <&extalr_clk>; 240 #clock-cells = <1>; 236 #clock-cells = <1>; 241 clock-output-names = "system", "pl 237 clock-output-names = "system", "pllc0", "pllc1", "pllc2", "r", 242 "usb24s", "i" 238 "usb24s", "i", "zg", "b", "m1", "hp", "hpp", 243 "usbp", "s", 239 "usbp", "s", "zb", "m3", "cp"; 244 renesas,mode = <0x05>; 240 renesas,mode = <0x05>; 245 }; 241 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.