]> git.ipfire.org Git - thirdparty/u-boot.git/blob - Bindings/soc/amlogic/amlogic,meson-gx-hhi-sysctrl.yaml
Squashed 'dts/upstream/' content from commit aaba2d45dc2a
[thirdparty/u-boot.git] / Bindings / soc / amlogic / amlogic,meson-gx-hhi-sysctrl.yaml
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/soc/amlogic/amlogic,meson-gx-hhi-sysctrl.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Amlogic Meson System Control registers
8
9 maintainers:
10 - Neil Armstrong <neil.armstrong@linaro.org>
11
12 properties:
13 compatible:
14 items:
15 - enum:
16 - amlogic,meson-gx-hhi-sysctrl
17 - amlogic,meson-gx-ao-sysctrl
18 - amlogic,meson-axg-hhi-sysctrl
19 - amlogic,meson-axg-ao-sysctrl
20 - const: simple-mfd
21 - const: syscon
22
23 reg:
24 maxItems: 1
25
26 clock-controller:
27 type: object
28
29 power-controller:
30 $ref: /schemas/power/amlogic,meson-ee-pwrc.yaml
31
32 pinctrl:
33 type: object
34
35 phy:
36 type: object
37
38 allOf:
39 - if:
40 properties:
41 compatible:
42 enum:
43 - amlogic,meson-gx-hhi-sysctrl
44 - amlogic,meson-axg-hhi-sysctrl
45 then:
46 properties:
47 clock-controller:
48 $ref: /schemas/clock/amlogic,gxbb-clkc.yaml#
49
50 required:
51 - power-controller
52
53 - if:
54 properties:
55 compatible:
56 enum:
57 - amlogic,meson-gx-ao-sysctrl
58 - amlogic,meson-axg-ao-sysctrl
59 then:
60 properties:
61 clock-controller:
62 $ref: /schemas/clock/amlogic,gxbb-aoclkc.yaml#
63
64 power-controller: false
65 phy: false
66
67 - if:
68 properties:
69 compatible:
70 enum:
71 - amlogic,meson-gx-hhi-sysctrl
72 then:
73 properties:
74 phy: false
75
76 - if:
77 properties:
78 compatible:
79 enum:
80 - amlogic,meson-axg-hhi-sysctrl
81 then:
82 properties:
83 phy:
84 oneOf:
85 - $ref: /schemas/phy/amlogic,g12a-mipi-dphy-analog.yaml
86 - $ref: /schemas/phy/amlogic,meson-axg-mipi-pcie-analog.yaml
87
88 required:
89 - compatible
90 - reg
91 - clock-controller
92
93 additionalProperties: false
94
95 examples:
96 - |
97 bus@c883c000 {
98 compatible = "simple-bus";
99 reg = <0xc883c000 0x2000>;
100 #address-cells = <1>;
101 #size-cells = <1>;
102 ranges = <0x0 0xc883c000 0x2000>;
103
104 sysctrl: system-controller@0 {
105 compatible = "amlogic,meson-gx-hhi-sysctrl", "simple-mfd", "syscon";
106 reg = <0 0x400>;
107
108 clock-controller {
109 compatible = "amlogic,gxbb-clkc";
110 #clock-cells = <1>;
111 clocks = <&xtal>;
112 clock-names = "xtal";
113 };
114
115 power-controller {
116 compatible = "amlogic,meson-gxbb-pwrc";
117 #power-domain-cells = <1>;
118 amlogic,ao-sysctrl = <&sysctrl_AO>;
119
120 resets = <&reset_viu>,
121 <&reset_venc>,
122 <&reset_vcbus>,
123 <&reset_bt656>,
124 <&reset_dvin>,
125 <&reset_rdma>,
126 <&reset_venci>,
127 <&reset_vencp>,
128 <&reset_vdac>,
129 <&reset_vdi6>,
130 <&reset_vencl>,
131 <&reset_vid_lock>;
132 reset-names = "viu", "venc", "vcbus", "bt656", "dvin",
133 "rdma", "venci", "vencp", "vdac", "vdi6",
134 "vencl", "vid_lock";
135 clocks = <&clk_vpu>, <&clk_vapb>;
136 clock-names = "vpu", "vapb";
137 };
138 };
139 };
140
141 bus@c8100000 {
142 compatible = "simple-bus";
143 reg = <0xc8100000 0x100000>;
144 #address-cells = <1>;
145 #size-cells = <1>;
146 ranges = <0x0 0xc8100000 0x100000>;
147
148 sysctrl_AO: system-controller@0 {
149 compatible = "amlogic,meson-gx-ao-sysctrl", "simple-mfd", "syscon";
150 reg = <0 0x100>;
151
152 clock-controller {
153 compatible = "amlogic,meson-gxbb-aoclkc", "amlogic,meson-gx-aoclkc";
154 #clock-cells = <1>;
155 #reset-cells = <1>;
156 clocks = <&xtal>, <&clk81>;
157 clock-names = "xtal", "mpeg-clk";
158 };
159 };
160 };