blob: b74380da3198b2363197a36a147e13256878d7ea [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/arm/vexpress-config.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: ARM Versatile Express configuration bus
8
9maintainers:
10 - Andre Przywara <andre.przywara@arm.com>
11
12description:
13 This is a system control register block, acting as a bridge to the
14 platform's configuration bus via "system control" interface, addressing
15 devices with site number, position in the board stack, config controller,
16 function and device numbers - see motherboard's TRM for more details.
17
18properties:
19 compatible:
20 const: arm,vexpress,config-bus
21
22 arm,vexpress,config-bridge:
23 $ref: /schemas/types.yaml#/definitions/phandle
24 description:
25 Phandle to the sysreg node.
26
27 muxfpga:
28 type: object
29 properties:
30 compatible:
31 const: arm,vexpress-muxfpga
32
33 arm,vexpress-sysreg,func:
34 description: FPGA specifier
35 $ref: /schemas/types.yaml#/definitions/uint32-array
36 items:
37 - const: 7
38 - description: device number
39
40 additionalProperties: false
41 required:
42 - compatible
43 - arm,vexpress-sysreg,func
44
45 shutdown:
46 type: object
47 properties:
48 compatible:
49 const: arm,vexpress-shutdown
50
51 arm,vexpress-sysreg,func:
52 description: shutdown identifier
53 $ref: /schemas/types.yaml#/definitions/uint32-array
54 items:
55 - const: 8
56 - description: device number
57
58 additionalProperties: false
59 required:
60 - compatible
61 - arm,vexpress-sysreg,func
62
63 reboot:
64 type: object
65 properties:
66 compatible:
67 const: arm,vexpress-reboot
68
69 arm,vexpress-sysreg,func:
70 description: reboot identifier
71 $ref: /schemas/types.yaml#/definitions/uint32-array
72 items:
73 - const: 9
74 - description: device number
75
76 additionalProperties: false
77 required:
78 - compatible
79 - arm,vexpress-sysreg,func
80
81 dvimode:
82 type: object
83 properties:
84 compatible:
85 const: arm,vexpress-dvimode
86
87 arm,vexpress-sysreg,func:
88 description: DVI mode identifier
89 $ref: /schemas/types.yaml#/definitions/uint32-array
90 items:
91 - const: 11
92 - description: device number
93
94 additionalProperties: false
95 required:
96 - compatible
97 - arm,vexpress-sysreg,func
98
99additionalProperties: false
100
101required:
102 - compatible
103 - arm,vexpress,config-bridge
104
105patternProperties:
106 'clk[0-9]*$':
107 type: object
108 description:
109 clocks
110
111 properties:
112 compatible:
113 const: arm,vexpress-osc
114
115 arm,vexpress-sysreg,func:
116 description: clock specifier
117 $ref: /schemas/types.yaml#/definitions/uint32-array
118 items:
119 - const: 1
120 - description: clock number
121
122 freq-range:
123 $ref: /schemas/types.yaml#/definitions/uint32-array
124 items:
125 - description: minimal clock frequency
126 - description: maximum clock frequency
127
128 "#clock-cells":
129 const: 0
130
131 clock-output-names:
132 maxItems: 1
133
134 additionalProperties: false
135 required:
136 - compatible
137 - arm,vexpress-sysreg,func
138 - "#clock-cells"
139
140 "^volt-.+$":
141 $ref: /schemas/regulator/regulator.yaml#
142 properties:
143 compatible:
144 const: arm,vexpress-volt
145
146 arm,vexpress-sysreg,func:
147 description: regulator specifier
148 $ref: /schemas/types.yaml#/definitions/uint32-array
149 items:
150 - const: 2
151 - description: device number
152
153 label:
154 maxItems: 1
155
156 unevaluatedProperties: false
157 required:
158 - compatible
159 - arm,vexpress-sysreg,func
160
161 "^amp-.+$":
162 type: object
163 properties:
164 compatible:
165 const: arm,vexpress-amp
166
167 arm,vexpress-sysreg,func:
168 description: current sensor identifier
169 $ref: /schemas/types.yaml#/definitions/uint32-array
170 items:
171 - const: 3
172 - description: device number
173
174 label:
175 maxItems: 1
176
177 additionalProperties: false
178 required:
179 - compatible
180 - arm,vexpress-sysreg,func
181
182 "^temp-.+$":
183 type: object
184 properties:
185 compatible:
186 const: arm,vexpress-temp
187
188 arm,vexpress-sysreg,func:
189 description: temperature sensor identifier
190 $ref: /schemas/types.yaml#/definitions/uint32-array
191 items:
192 - const: 4
193 - description: device number
194
195 label:
196 maxItems: 1
197
198 additionalProperties: false
199 required:
200 - compatible
201 - arm,vexpress-sysreg,func
202
203 "^reset[0-9]*$":
204 type: object
205 properties:
206 compatible:
207 const: arm,vexpress-reset
208
209 arm,vexpress-sysreg,func:
210 description: reset specifier
211 $ref: /schemas/types.yaml#/definitions/uint32-array
212 items:
213 - const: 5
214 - description: reset device number
215
216 additionalProperties: false
217 required:
218 - compatible
219 - arm,vexpress-sysreg,func
220
221 "^power-.+$":
222 type: object
223 properties:
224 compatible:
225 const: arm,vexpress-power
226
227 arm,vexpress-sysreg,func:
228 description: power sensor identifier
229 $ref: /schemas/types.yaml#/definitions/uint32-array
230 items:
231 - const: 12
232 - description: device number
233
234 label:
235 maxItems: 1
236
237 additionalProperties: false
238 required:
239 - compatible
240 - arm,vexpress-sysreg,func
241
242 "^energy(-.+)?$":
243 type: object
244 properties:
245 compatible:
246 const: arm,vexpress-energy
247
248 arm,vexpress-sysreg,func:
249 description: energy sensor identifier
250 $ref: /schemas/types.yaml#/definitions/uint32-array
251 oneOf:
252 - items:
253 - const: 13
254 - description: device number
255 - items:
256 - const: 13
257 - description: device number
258 - const: 13
259 - description: second device number
260
261 label:
262 maxItems: 1
263
264 additionalProperties: false
265 required:
266 - compatible
267 - arm,vexpress-sysreg,func
268
269examples:
270 - |
271 mcc {
272 compatible = "arm,vexpress,config-bus";
273 arm,vexpress,config-bridge = <&v2m_sysreg>;
274
275 clk0 {
276 compatible = "arm,vexpress-osc";
277 arm,vexpress-sysreg,func = <1 0>;
278 #clock-cells = <0>;
279 };
280
281 energy {
282 compatible = "arm,vexpress-energy";
283 arm,vexpress-sysreg,func = <13 0>, <13 1>;
284 };
285 };