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/ingen 4 $id: http://devicetree.org/schemas/clock/ingenic,cgu.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Ingenic SoCs CGU 7 title: Ingenic SoCs CGU 8 8 9 description: | 9 description: | 10 The CGU in an Ingenic SoC provides all the c 10 The CGU in an Ingenic SoC provides all the clocks generated on-chip. It 11 typically includes a variety of PLLs, multip 11 typically includes a variety of PLLs, multiplexers, dividers & gates in order 12 to provide many different clock signals deri 12 to provide many different clock signals derived from only 2 external source 13 clocks. 13 clocks. 14 14 15 maintainers: 15 maintainers: 16 - Paul Cercueil <paul@crapouillou.net> 16 - Paul Cercueil <paul@crapouillou.net> 17 17 18 select: 18 select: 19 properties: 19 properties: 20 compatible: 20 compatible: 21 contains: 21 contains: 22 enum: 22 enum: 23 - ingenic,jz4740-cgu 23 - ingenic,jz4740-cgu 24 - ingenic,jz4725b-cgu 24 - ingenic,jz4725b-cgu 25 - ingenic,jz4755-cgu 25 - ingenic,jz4755-cgu 26 - ingenic,jz4760-cgu 26 - ingenic,jz4760-cgu 27 - ingenic,jz4760b-cgu 27 - ingenic,jz4760b-cgu 28 - ingenic,jz4770-cgu 28 - ingenic,jz4770-cgu 29 - ingenic,jz4780-cgu 29 - ingenic,jz4780-cgu 30 - ingenic,x1000-cgu 30 - ingenic,x1000-cgu 31 - ingenic,x1830-cgu 31 - ingenic,x1830-cgu 32 required: 32 required: 33 - compatible 33 - compatible 34 34 35 properties: 35 properties: 36 $nodename: 36 $nodename: 37 pattern: "^clock-controller@[0-9a-f]+$" 37 pattern: "^clock-controller@[0-9a-f]+$" 38 38 39 "#address-cells": 39 "#address-cells": 40 const: 1 40 const: 1 41 41 42 "#size-cells": 42 "#size-cells": 43 const: 1 43 const: 1 44 44 45 "#clock-cells": 45 "#clock-cells": 46 const: 1 46 const: 1 47 47 48 ranges: true 48 ranges: true 49 49 50 compatible: 50 compatible: 51 items: 51 items: 52 - enum: 52 - enum: 53 - ingenic,jz4740-cgu 53 - ingenic,jz4740-cgu 54 - ingenic,jz4725b-cgu 54 - ingenic,jz4725b-cgu 55 - ingenic,jz4755-cgu 55 - ingenic,jz4755-cgu 56 - ingenic,jz4760-cgu 56 - ingenic,jz4760-cgu 57 - ingenic,jz4760b-cgu 57 - ingenic,jz4760b-cgu 58 - ingenic,jz4770-cgu 58 - ingenic,jz4770-cgu 59 - ingenic,jz4780-cgu 59 - ingenic,jz4780-cgu 60 - ingenic,x1000-cgu 60 - ingenic,x1000-cgu 61 - ingenic,x1830-cgu 61 - ingenic,x1830-cgu 62 - const: simple-mfd 62 - const: simple-mfd 63 minItems: 1 63 minItems: 1 64 64 65 reg: 65 reg: 66 maxItems: 1 66 maxItems: 1 67 67 68 clocks: 68 clocks: 69 items: 69 items: 70 - description: External oscillator clock 70 - description: External oscillator clock 71 - description: Internal 32 kHz RTC clock 71 - description: Internal 32 kHz RTC clock 72 72 73 clock-names: 73 clock-names: 74 items: 74 items: 75 - const: ext 75 - const: ext 76 - enum: 76 - enum: 77 - rtc 77 - rtc 78 - osc32k # Different name, same cloc 78 - osc32k # Different name, same clock 79 79 80 assigned-clocks: 80 assigned-clocks: 81 minItems: 1 81 minItems: 1 82 maxItems: 64 82 maxItems: 64 83 83 84 assigned-clock-parents: 84 assigned-clock-parents: 85 minItems: 1 85 minItems: 1 86 maxItems: 64 86 maxItems: 64 87 87 88 assigned-clock-rates: 88 assigned-clock-rates: 89 minItems: 1 89 minItems: 1 90 maxItems: 64 90 maxItems: 64 91 91 92 required: 92 required: 93 - "#clock-cells" 93 - "#clock-cells" 94 - compatible 94 - compatible 95 - reg 95 - reg 96 - clocks 96 - clocks 97 - clock-names 97 - clock-names 98 98 99 patternProperties: 99 patternProperties: 100 "^usb-phy@[a-f0-9]+$": 100 "^usb-phy@[a-f0-9]+$": 101 $ref: /schemas/phy/ingenic,phy-usb.yaml# !! 101 allOf: [ $ref: "../phy/ingenic,phy-usb.yaml#" ] 102 "^mac-phy-ctrl@[a-f0-9]+$": 102 "^mac-phy-ctrl@[a-f0-9]+$": 103 $ref: /schemas/net/ingenic,mac.yaml# !! 103 allOf: [ $ref: "../net/ingenic,mac.yaml#" ] 104 104 105 additionalProperties: false 105 additionalProperties: false 106 106 107 examples: 107 examples: 108 - | 108 - | 109 #include <dt-bindings/clock/ingenic,jz4770 109 #include <dt-bindings/clock/ingenic,jz4770-cgu.h> 110 cgu: clock-controller@10000000 { 110 cgu: clock-controller@10000000 { 111 compatible = "ingenic,jz4770-cgu", "simp 111 compatible = "ingenic,jz4770-cgu", "simple-mfd"; 112 reg = <0x10000000 0x100>; 112 reg = <0x10000000 0x100>; 113 #address-cells = <1>; 113 #address-cells = <1>; 114 #size-cells = <1>; 114 #size-cells = <1>; 115 ranges = <0x0 0x10000000 0x100>; 115 ranges = <0x0 0x10000000 0x100>; 116 116 117 clocks = <&ext>, <&osc32k>; 117 clocks = <&ext>, <&osc32k>; 118 clock-names = "ext", "osc32k"; 118 clock-names = "ext", "osc32k"; 119 119 120 #clock-cells = <1>; 120 #clock-cells = <1>; 121 121 122 otg_phy: usb-phy@3c { 122 otg_phy: usb-phy@3c { 123 compatible = "ingenic,jz4770-phy"; 123 compatible = "ingenic,jz4770-phy"; 124 reg = <0x3c 0x10>; 124 reg = <0x3c 0x10>; 125 125 126 clocks = <&cgu JZ4770_CLK_OTG_PHY>; 126 clocks = <&cgu JZ4770_CLK_OTG_PHY>; 127 127 128 vcc-supply = <&ldo5>; 128 vcc-supply = <&ldo5>; 129 129 130 #phy-cells = <0>; 130 #phy-cells = <0>; 131 }; 131 }; 132 }; 132 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.