133 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/ingenic,cgu.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Ingenic SoCs CGU8 9description: |10 The CGU in an Ingenic SoC provides all the clocks generated on-chip. It11 typically includes a variety of PLLs, multiplexers, dividers & gates in order12 to provide many different clock signals derived from only 2 external source13 clocks.14 15maintainers:16 - Paul Cercueil <paul@crapouillou.net>17 18select:19 properties:20 compatible:21 contains:22 enum:23 - ingenic,jz4740-cgu24 - ingenic,jz4725b-cgu25 - ingenic,jz4755-cgu26 - ingenic,jz4760-cgu27 - ingenic,jz4760b-cgu28 - ingenic,jz4770-cgu29 - ingenic,jz4780-cgu30 - ingenic,x1000-cgu31 - ingenic,x1830-cgu32 required:33 - compatible34 35properties:36 $nodename:37 pattern: "^clock-controller@[0-9a-f]+$"38 39 "#address-cells":40 const: 141 42 "#size-cells":43 const: 144 45 "#clock-cells":46 const: 147 48 ranges: true49 50 compatible:51 items:52 - enum:53 - ingenic,jz4740-cgu54 - ingenic,jz4725b-cgu55 - ingenic,jz4755-cgu56 - ingenic,jz4760-cgu57 - ingenic,jz4760b-cgu58 - ingenic,jz4770-cgu59 - ingenic,jz4780-cgu60 - ingenic,x1000-cgu61 - ingenic,x1830-cgu62 - const: simple-mfd63 minItems: 164 65 reg:66 maxItems: 167 68 clocks:69 items:70 - description: External oscillator clock71 - description: Internal 32 kHz RTC clock72 73 clock-names:74 items:75 - const: ext76 - enum:77 - rtc78 - osc32k # Different name, same clock79 80 assigned-clocks:81 minItems: 182 maxItems: 6483 84 assigned-clock-parents:85 minItems: 186 maxItems: 6487 88 assigned-clock-rates:89 minItems: 190 maxItems: 6491 92required:93 - "#clock-cells"94 - compatible95 - reg96 - clocks97 - clock-names98 99patternProperties:100 "^usb-phy@[a-f0-9]+$":101 $ref: /schemas/phy/ingenic,phy-usb.yaml#102 "^mac-phy-ctrl@[a-f0-9]+$":103 $ref: /schemas/net/ingenic,mac.yaml#104 105additionalProperties: false106 107examples:108 - |109 #include <dt-bindings/clock/ingenic,jz4770-cgu.h>110 cgu: clock-controller@10000000 {111 compatible = "ingenic,jz4770-cgu", "simple-mfd";112 reg = <0x10000000 0x100>;113 #address-cells = <1>;114 #size-cells = <1>;115 ranges = <0x0 0x10000000 0x100>;116 117 clocks = <&ext>, <&osc32k>;118 clock-names = "ext", "osc32k";119 120 #clock-cells = <1>;121 122 otg_phy: usb-phy@3c {123 compatible = "ingenic,jz4770-phy";124 reg = <0x3c 0x10>;125 126 clocks = <&cgu JZ4770_CLK_OTG_PHY>;127 128 vcc-supply = <&ldo5>;129 130 #phy-cells = <0>;131 };132 };133