bcm27xx: update patches from RPi foundation
[openwrt/staging/luka.git] / target / linux / bcm27xx / patches-5.4 / 950-0540-dt-bindings-display-Convert-VC4-bindings-to-schemas.patch
1 From 193065956ba3e285df2c67f7c3bdeb3bdaae6ee9 Mon Sep 17 00:00:00 2001
2 From: Maxime Ripard <maxime@cerno.tech>
3 Date: Thu, 13 Feb 2020 15:42:05 +0100
4 Subject: [PATCH] dt-bindings: display: Convert VC4 bindings to schemas
5
6 The BCM283x SoCs have a display pipeline composed of several controllers
7 with device tree bindings that are supported by Linux.
8
9 Now that we have the DT validation in place, let's split into separate
10 files and convert the device tree bindings for those controllers to
11 schemas.
12
13 This is just a 1:1 conversion though, and some bindings were incomplete so
14 it results in example validation warnings that are going to be addressed in
15 the following patches.
16
17 Cc: Rob Herring <robh+dt@kernel.org>
18 Cc: devicetree@vger.kernel.org
19 Signed-off-by: Maxime Ripard <maxime@cerno.tech>
20 ---
21 .../bindings/display/brcm,bcm-vc4.txt | 174 ------------------
22 .../bindings/display/brcm,bcm2835-dpi.yaml | 66 +++++++
23 .../bindings/display/brcm,bcm2835-dsi0.yaml | 73 ++++++++
24 .../bindings/display/brcm,bcm2835-hdmi.yaml | 75 ++++++++
25 .../bindings/display/brcm,bcm2835-hvs.yaml | 37 ++++
26 .../display/brcm,bcm2835-pixelvalve0.yaml | 40 ++++
27 .../bindings/display/brcm,bcm2835-txp.yaml | 37 ++++
28 .../bindings/display/brcm,bcm2835-v3d.yaml | 42 +++++
29 .../bindings/display/brcm,bcm2835-vc4.yaml | 34 ++++
30 .../bindings/display/brcm,bcm2835-vec.yaml | 44 +++++
31 MAINTAINERS | 2 +-
32 11 files changed, 449 insertions(+), 175 deletions(-)
33 delete mode 100644 Documentation/devicetree/bindings/display/brcm,bcm-vc4.txt
34 create mode 100644 Documentation/devicetree/bindings/display/brcm,bcm2835-dpi.yaml
35 create mode 100644 Documentation/devicetree/bindings/display/brcm,bcm2835-dsi0.yaml
36 create mode 100644 Documentation/devicetree/bindings/display/brcm,bcm2835-hdmi.yaml
37 create mode 100644 Documentation/devicetree/bindings/display/brcm,bcm2835-hvs.yaml
38 create mode 100644 Documentation/devicetree/bindings/display/brcm,bcm2835-pixelvalve0.yaml
39 create mode 100644 Documentation/devicetree/bindings/display/brcm,bcm2835-txp.yaml
40 create mode 100644 Documentation/devicetree/bindings/display/brcm,bcm2835-v3d.yaml
41 create mode 100644 Documentation/devicetree/bindings/display/brcm,bcm2835-vc4.yaml
42 create mode 100644 Documentation/devicetree/bindings/display/brcm,bcm2835-vec.yaml
43
44 --- a/Documentation/devicetree/bindings/display/brcm,bcm-vc4.txt
45 +++ /dev/null
46 @@ -1,174 +0,0 @@
47 -Broadcom VC4 (VideoCore4) GPU
48 -
49 -The VC4 device present on the Raspberry Pi includes a display system
50 -with HDMI output and the HVS (Hardware Video Scaler) for compositing
51 -display planes.
52 -
53 -Required properties for VC4:
54 -- compatible: Should be "brcm,bcm2835-vc4" or "brcm,cygnus-vc4"
55 -
56 -Required properties for Pixel Valve:
57 -- compatible: Should be one of "brcm,bcm2835-pixelvalve0",
58 - "brcm,bcm2835-pixelvalve1", or "brcm,bcm2835-pixelvalve2"
59 -- reg: Physical base address and length of the PV's registers
60 -- interrupts: The interrupt number
61 - See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
62 -
63 -Required properties for HVS:
64 -- compatible: Should be "brcm,bcm2835-hvs"
65 -- reg: Physical base address and length of the HVS's registers
66 -- interrupts: The interrupt number
67 - See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
68 -
69 -Required properties for HDMI
70 -- compatible: Should be "brcm,bcm2835-hdmi"
71 -- reg: Physical base address and length of the two register ranges
72 - ("HDMI" and "HD", in that order)
73 -- interrupts: The interrupt numbers
74 - See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
75 -- ddc: phandle of the I2C controller used for DDC EDID probing
76 -- clocks: a) hdmi: The HDMI state machine clock
77 - b) pixel: The pixel clock.
78 -
79 -Optional properties for HDMI:
80 -- hpd-gpios: The GPIO pin for HDMI hotplug detect (if it doesn't appear
81 - as an interrupt/status bit in the HDMI controller
82 - itself). See bindings/pinctrl/brcm,bcm2835-gpio.txt
83 -- dmas: Should contain one entry pointing to the DMA channel used to
84 - transfer audio data
85 -- dma-names: Should contain "audio-rx"
86 -
87 -Required properties for DPI:
88 -- compatible: Should be "brcm,bcm2835-dpi"
89 -- reg: Physical base address and length of the registers
90 -- clocks: a) core: The core clock the unit runs on
91 - b) pixel: The pixel clock that feeds the pixelvalve
92 -- port: Port node with a single endpoint connecting to the panel
93 - device, as defined in [1]
94 -
95 -Required properties for VEC:
96 -- compatible: Should be "brcm,bcm2835-vec"
97 -- reg: Physical base address and length of the registers
98 -- clocks: The core clock the unit runs on
99 -- interrupts: The interrupt number
100 - See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
101 -
102 -Required properties for V3D:
103 -- compatible: Should be "brcm,bcm2835-v3d" or "brcm,cygnus-v3d"
104 -- reg: Physical base address and length of the V3D's registers
105 -- interrupts: The interrupt number
106 - See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
107 -
108 -Optional properties for V3D:
109 -- clocks: The clock the unit runs on
110 -
111 -Required properties for DSI:
112 -- compatible: Should be "brcm,bcm2835-dsi0" or "brcm,bcm2835-dsi1"
113 -- reg: Physical base address and length of the DSI block's registers
114 -- interrupts: The interrupt number
115 - See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
116 -- clocks: a) phy: The DSI PLL clock feeding the DSI analog PHY
117 - b) escape: The DSI ESC clock from CPRMAN
118 - c) pixel: The DSI pixel clock from CPRMAN
119 -- clock-output-names:
120 - The 3 clocks output from the DSI analog PHY: dsi[01]_byte,
121 - dsi[01]_ddr2, and dsi[01]_ddr
122 -
123 -Required properties for the TXP (writeback) block:
124 -- compatible: Should be "brcm,bcm2835-txp"
125 -- reg: Physical base address and length of the TXP block's registers
126 -- interrupts: The interrupt number
127 - See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
128 -
129 -[1] Documentation/devicetree/bindings/media/video-interfaces.txt
130 -
131 -Example:
132 -pixelvalve@7e807000 {
133 - compatible = "brcm,bcm2835-pixelvalve2";
134 - reg = <0x7e807000 0x100>;
135 - interrupts = <2 10>; /* pixelvalve */
136 -};
137 -
138 -hvs@7e400000 {
139 - compatible = "brcm,bcm2835-hvs";
140 - reg = <0x7e400000 0x6000>;
141 - interrupts = <2 1>;
142 -};
143 -
144 -hdmi: hdmi@7e902000 {
145 - compatible = "brcm,bcm2835-hdmi";
146 - reg = <0x7e902000 0x600>,
147 - <0x7e808000 0x100>;
148 - interrupts = <2 8>, <2 9>;
149 - ddc = <&i2c2>;
150 - hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>;
151 - clocks = <&clocks BCM2835_PLLH_PIX>,
152 - <&clocks BCM2835_CLOCK_HSM>;
153 - clock-names = "pixel", "hdmi";
154 -};
155 -
156 -dpi: dpi@7e208000 {
157 - compatible = "brcm,bcm2835-dpi";
158 - reg = <0x7e208000 0x8c>;
159 - clocks = <&clocks BCM2835_CLOCK_VPU>,
160 - <&clocks BCM2835_CLOCK_DPI>;
161 - clock-names = "core", "pixel";
162 - #address-cells = <1>;
163 - #size-cells = <0>;
164 -
165 - port {
166 - dpi_out: endpoint@0 {
167 - remote-endpoint = <&panel_in>;
168 - };
169 - };
170 -};
171 -
172 -dsi1: dsi@7e700000 {
173 - compatible = "brcm,bcm2835-dsi1";
174 - reg = <0x7e700000 0x8c>;
175 - interrupts = <2 12>;
176 - #address-cells = <1>;
177 - #size-cells = <0>;
178 - #clock-cells = <1>;
179 -
180 - clocks = <&clocks BCM2835_PLLD_DSI1>,
181 - <&clocks BCM2835_CLOCK_DSI1E>,
182 - <&clocks BCM2835_CLOCK_DSI1P>;
183 - clock-names = "phy", "escape", "pixel";
184 -
185 - clock-output-names = "dsi1_byte", "dsi1_ddr2", "dsi1_ddr";
186 -
187 - pitouchscreen: panel@0 {
188 - compatible = "raspberrypi,touchscreen";
189 - reg = <0>;
190 -
191 - <...>
192 - };
193 -};
194 -
195 -vec: vec@7e806000 {
196 - compatible = "brcm,bcm2835-vec";
197 - reg = <0x7e806000 0x1000>;
198 - clocks = <&clocks BCM2835_CLOCK_VEC>;
199 - interrupts = <2 27>;
200 -};
201 -
202 -v3d: v3d@7ec00000 {
203 - compatible = "brcm,bcm2835-v3d";
204 - reg = <0x7ec00000 0x1000>;
205 - interrupts = <1 10>;
206 -};
207 -
208 -vc4: gpu {
209 - compatible = "brcm,bcm2835-vc4";
210 -};
211 -
212 -panel: panel {
213 - compatible = "ontat,yx700wv03", "simple-panel";
214 -
215 - port {
216 - panel_in: endpoint {
217 - remote-endpoint = <&dpi_out>;
218 - };
219 - };
220 -};
221 --- /dev/null
222 +++ b/Documentation/devicetree/bindings/display/brcm,bcm2835-dpi.yaml
223 @@ -0,0 +1,66 @@
224 +# SPDX-License-Identifier: GPL-2.0
225 +%YAML 1.2
226 +---
227 +$id: http://devicetree.org/schemas/display/brcm,bcm2835-dpi.yaml#
228 +$schema: http://devicetree.org/meta-schemas/core.yaml#
229 +
230 +title: Broadcom VC4 (VideoCore4) DPI Controller
231 +
232 +maintainers:
233 + - Eric Anholt <eric@anholt.net>
234 +
235 +properties:
236 + compatible:
237 + const: brcm,bcm2835-dpi
238 +
239 + reg:
240 + maxItems: 1
241 +
242 + clocks:
243 + items:
244 + - description: The core clock the unit runs on
245 + - description: The pixel clock that feeds the pixelvalve
246 +
247 + port:
248 + type: object
249 + description: >
250 + Port node with a single endpoint connecting to the panel, as
251 + defined in Documentation/devicetree/bindings/media/video-interfaces.txt.
252 +
253 +required:
254 + - compatible
255 + - reg
256 + - clocks
257 + - port
258 +
259 +additionalProperties: false
260 +
261 +examples:
262 + - |
263 + #include <dt-bindings/clock/bcm2835.h>
264 +
265 + panel: panel {
266 + compatible = "ontat,yx700wv03", "simple-panel";
267 +
268 + port {
269 + panel_in: endpoint {
270 + remote-endpoint = <&dpi_out>;
271 + };
272 + };
273 + };
274 +
275 + dpi: dpi@7e208000 {
276 + compatible = "brcm,bcm2835-dpi";
277 + reg = <0x7e208000 0x8c>;
278 + clocks = <&clocks BCM2835_CLOCK_VPU>,
279 + <&clocks BCM2835_CLOCK_DPI>;
280 + clock-names = "core", "pixel";
281 +
282 + port {
283 + dpi_out: endpoint {
284 + remote-endpoint = <&panel_in>;
285 + };
286 + };
287 + };
288 +
289 +...
290 --- /dev/null
291 +++ b/Documentation/devicetree/bindings/display/brcm,bcm2835-dsi0.yaml
292 @@ -0,0 +1,73 @@
293 +# SPDX-License-Identifier: GPL-2.0
294 +%YAML 1.2
295 +---
296 +$id: http://devicetree.org/schemas/display/brcm,bcm2835-dsi0.yaml#
297 +$schema: http://devicetree.org/meta-schemas/core.yaml#
298 +
299 +title: Broadcom VC4 (VideoCore4) DSI Controller
300 +
301 +maintainers:
302 + - Eric Anholt <eric@anholt.net>
303 +
304 +properties:
305 + compatible:
306 + enum:
307 + - brcm,bcm2835-dsi0
308 + - brcm,bcm2835-dsi1
309 +
310 + reg:
311 + maxItems: 1
312 +
313 + clocks:
314 + items:
315 + - description: The DSI PLL clock feeding the DSI analog PHY
316 + - description: The DSI ESC clock
317 + - description: The DSI pixel clock
318 +
319 + clock-output-names: true
320 + # FIXME: The meta-schemas don't seem to allow it for now
321 + # items:
322 + # - description: The DSI byte clock for the PHY
323 + # - description: The DSI DDR2 clock
324 + # - description: The DSI DDR clock
325 +
326 + interrupts:
327 + maxItems: 1
328 +
329 +required:
330 + - compatible
331 + - reg
332 + - clocks
333 + - clock-output-names
334 + - interrupts
335 +
336 +unevaluatedProperties: false
337 +
338 +examples:
339 + - |
340 + #include <dt-bindings/clock/bcm2835.h>
341 +
342 + dsi1: dsi@7e700000 {
343 + compatible = "brcm,bcm2835-dsi1";
344 + reg = <0x7e700000 0x8c>;
345 + interrupts = <2 12>;
346 + #address-cells = <1>;
347 + #size-cells = <0>;
348 + #clock-cells = <1>;
349 +
350 + clocks = <&clocks BCM2835_PLLD_DSI1>,
351 + <&clocks BCM2835_CLOCK_DSI1E>,
352 + <&clocks BCM2835_CLOCK_DSI1P>;
353 + clock-names = "phy", "escape", "pixel";
354 +
355 + clock-output-names = "dsi1_byte", "dsi1_ddr2", "dsi1_ddr";
356 +
357 + pitouchscreen: panel@0 {
358 + compatible = "raspberrypi,touchscreen";
359 + reg = <0>;
360 +
361 + /* ... */
362 + };
363 + };
364 +
365 +...
366 --- /dev/null
367 +++ b/Documentation/devicetree/bindings/display/brcm,bcm2835-hdmi.yaml
368 @@ -0,0 +1,75 @@
369 +# SPDX-License-Identifier: GPL-2.0
370 +%YAML 1.2
371 +---
372 +$id: http://devicetree.org/schemas/display/brcm,bcm2835-hdmi.yaml#
373 +$schema: http://devicetree.org/meta-schemas/core.yaml#
374 +
375 +title: Broadcom VC4 (VideoCore4) HDMI Controller
376 +
377 +maintainers:
378 + - Eric Anholt <eric@anholt.net>
379 +
380 +properties:
381 + compatible:
382 + const: brcm,bcm2835-hdmi
383 +
384 + reg:
385 + items:
386 + - description: HDMI register range
387 + - description: HD register range
388 +
389 + interrupts:
390 + minItems: 2
391 +
392 + clocks:
393 + items:
394 + - description: The HDMI state machine clock
395 + - description: The pixel clock
396 +
397 + ddc:
398 + allOf:
399 + - $ref: /schemas/types.yaml#/definitions/phandle
400 + description: >
401 + Phandle of the I2C controller used for DDC EDID probing
402 +
403 + hpd-gpios:
404 + description: >
405 + The GPIO pin for the HDMI hotplug detect (if it doesn't appear
406 + as an interrupt/status bit in the HDMI controller itself)
407 +
408 + dmas:
409 + maxItems: 1
410 + description: >
411 + Should contain one entry pointing to the DMA channel used to
412 + transfer audio data.
413 +
414 + dma-names:
415 + const: audio-rx
416 +
417 +required:
418 + - compatible
419 + - reg
420 + - interrupts
421 + - clocks
422 + - ddc
423 +
424 +additionalProperties: false
425 +
426 +examples:
427 + - |
428 + #include <dt-bindings/clock/bcm2835.h>
429 + #include <dt-bindings/gpio/gpio.h>
430 +
431 + hdmi: hdmi@7e902000 {
432 + compatible = "brcm,bcm2835-hdmi";
433 + reg = <0x7e902000 0x600>,
434 + <0x7e808000 0x100>;
435 + interrupts = <2 8>, <2 9>;
436 + ddc = <&i2c2>;
437 + hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>;
438 + clocks = <&clocks BCM2835_PLLH_PIX>,
439 + <&clocks BCM2835_CLOCK_HSM>;
440 + clock-names = "pixel", "hdmi";
441 + };
442 +
443 +...
444 --- /dev/null
445 +++ b/Documentation/devicetree/bindings/display/brcm,bcm2835-hvs.yaml
446 @@ -0,0 +1,37 @@
447 +# SPDX-License-Identifier: GPL-2.0
448 +%YAML 1.2
449 +---
450 +$id: http://devicetree.org/schemas/display/brcm,bcm2835-hvs.yaml#
451 +$schema: http://devicetree.org/meta-schemas/core.yaml#
452 +
453 +title: Broadcom VC4 (VideoCore4) Hardware Video Scaler
454 +
455 +maintainers:
456 + - Eric Anholt <eric@anholt.net>
457 +
458 +properties:
459 + compatible:
460 + const: brcm,bcm2835-hvs
461 +
462 + reg:
463 + maxItems: 1
464 +
465 + interrupts:
466 + maxItems: 1
467 +
468 +required:
469 + - compatible
470 + - reg
471 + - interrupts
472 +
473 +additionalProperties: false
474 +
475 +examples:
476 + - |
477 + hvs@7e400000 {
478 + compatible = "brcm,bcm2835-hvs";
479 + reg = <0x7e400000 0x6000>;
480 + interrupts = <2 1>;
481 + };
482 +
483 +...
484 --- /dev/null
485 +++ b/Documentation/devicetree/bindings/display/brcm,bcm2835-pixelvalve0.yaml
486 @@ -0,0 +1,40 @@
487 +# SPDX-License-Identifier: GPL-2.0
488 +%YAML 1.2
489 +---
490 +$id: http://devicetree.org/schemas/display/brcm,bcm2835-pixelvalve0.yaml#
491 +$schema: http://devicetree.org/meta-schemas/core.yaml#
492 +
493 +title: Broadcom VC4 (VideoCore4) PixelValve
494 +
495 +maintainers:
496 + - Eric Anholt <eric@anholt.net>
497 +
498 +properties:
499 + compatible:
500 + enum:
501 + - brcm,bcm2835-pixelvalve0
502 + - brcm,bcm2835-pixelvalve1
503 + - brcm,bcm2835-pixelvalve2
504 +
505 + reg:
506 + maxItems: 1
507 +
508 + interrupts:
509 + maxItems: 1
510 +
511 +required:
512 + - compatible
513 + - reg
514 + - interrupts
515 +
516 +additionalProperties: false
517 +
518 +examples:
519 + - |
520 + pixelvalve@7e807000 {
521 + compatible = "brcm,bcm2835-pixelvalve2";
522 + reg = <0x7e807000 0x100>;
523 + interrupts = <2 10>; /* pixelvalve */
524 + };
525 +
526 +...
527 --- /dev/null
528 +++ b/Documentation/devicetree/bindings/display/brcm,bcm2835-txp.yaml
529 @@ -0,0 +1,37 @@
530 +# SPDX-License-Identifier: GPL-2.0
531 +%YAML 1.2
532 +---
533 +$id: http://devicetree.org/schemas/display/brcm,bcm2835-txp.yaml#
534 +$schema: http://devicetree.org/meta-schemas/core.yaml#
535 +
536 +title: Broadcom VC4 (VideoCore4) TXP (writeback) Controller
537 +
538 +maintainers:
539 + - Eric Anholt <eric@anholt.net>
540 +
541 +properties:
542 + compatible:
543 + const: brcm,bcm2835-txp
544 +
545 + reg:
546 + maxItems: 1
547 +
548 + interrupts:
549 + maxItems: 1
550 +
551 +required:
552 + - compatible
553 + - reg
554 + - interrupts
555 +
556 +additionalProperties: false
557 +
558 +examples:
559 + - |
560 + txp: txp@7e004000 {
561 + compatible = "brcm,bcm2835-txp";
562 + reg = <0x7e004000 0x20>;
563 + interrupts = <1 11>;
564 + };
565 +
566 +...
567 --- /dev/null
568 +++ b/Documentation/devicetree/bindings/display/brcm,bcm2835-v3d.yaml
569 @@ -0,0 +1,42 @@
570 +# SPDX-License-Identifier: GPL-2.0
571 +%YAML 1.2
572 +---
573 +$id: http://devicetree.org/schemas/display/brcm,bcm2835-v3d.yaml#
574 +$schema: http://devicetree.org/meta-schemas/core.yaml#
575 +
576 +title: Broadcom VC4 (VideoCore4) V3D GPU
577 +
578 +maintainers:
579 + - Eric Anholt <eric@anholt.net>
580 +
581 +properties:
582 + compatible:
583 + enum:
584 + - brcm,bcm2835-v3d
585 + - brcm,cygnus-v3d
586 +
587 + reg:
588 + maxItems: 1
589 +
590 + clocks:
591 + maxItems: 1
592 +
593 + interrupts:
594 + maxItems: 1
595 +
596 +required:
597 + - compatible
598 + - reg
599 + - interrupts
600 +
601 +additionalProperties: false
602 +
603 +examples:
604 + - |
605 + v3d: v3d@7ec00000 {
606 + compatible = "brcm,bcm2835-v3d";
607 + reg = <0x7ec00000 0x1000>;
608 + interrupts = <1 10>;
609 + };
610 +
611 +...
612 --- /dev/null
613 +++ b/Documentation/devicetree/bindings/display/brcm,bcm2835-vc4.yaml
614 @@ -0,0 +1,34 @@
615 +# SPDX-License-Identifier: GPL-2.0
616 +%YAML 1.2
617 +---
618 +$id: http://devicetree.org/schemas/display/brcm,bcm2835-vc4.yaml#
619 +$schema: http://devicetree.org/meta-schemas/core.yaml#
620 +
621 +title: Broadcom VC4 (VideoCore4) GPU
622 +
623 +maintainers:
624 + - Eric Anholt <eric@anholt.net>
625 +
626 +description: >
627 + The VC4 device present on the Raspberry Pi includes a display system
628 + with HDMI output and the HVS (Hardware Video Scaler) for compositing
629 + display planes.
630 +
631 +properties:
632 + compatible:
633 + enum:
634 + - brcm,bcm2835-vc4
635 + - brcm,cygnus-vc4
636 +
637 +required:
638 + - compatible
639 +
640 +additionalProperties: false
641 +
642 +examples:
643 + - |
644 + vc4: gpu {
645 + compatible = "brcm,bcm2835-vc4";
646 + };
647 +
648 +...
649 --- /dev/null
650 +++ b/Documentation/devicetree/bindings/display/brcm,bcm2835-vec.yaml
651 @@ -0,0 +1,44 @@
652 +# SPDX-License-Identifier: GPL-2.0
653 +%YAML 1.2
654 +---
655 +$id: http://devicetree.org/schemas/display/brcm,bcm2835-vec.yaml#
656 +$schema: http://devicetree.org/meta-schemas/core.yaml#
657 +
658 +title: Broadcom VC4 (VideoCore4) VEC
659 +
660 +maintainers:
661 + - Eric Anholt <eric@anholt.net>
662 +
663 +properties:
664 + compatible:
665 + const: brcm,bcm2835-vec
666 +
667 + reg:
668 + maxItems: 1
669 +
670 + clocks:
671 + maxItems: 1
672 +
673 + interrupts:
674 + maxItems: 1
675 +
676 +required:
677 + - compatible
678 + - reg
679 + - clocks
680 + - interrupts
681 +
682 +additionalProperties: false
683 +
684 +examples:
685 + - |
686 + #include <dt-bindings/clock/bcm2835.h>
687 +
688 + vec: vec@7e806000 {
689 + compatible = "brcm,bcm2835-vec";
690 + reg = <0x7e806000 0x1000>;
691 + clocks = <&clocks BCM2835_CLOCK_VEC>;
692 + interrupts = <2 27>;
693 + };
694 +
695 +...
696 --- a/MAINTAINERS
697 +++ b/MAINTAINERS
698 @@ -5573,7 +5573,7 @@ T: git git://github.com/anholt/linux
699 S: Supported
700 F: drivers/gpu/drm/vc4/
701 F: include/uapi/drm/vc4_drm.h
702 -F: Documentation/devicetree/bindings/display/brcm,bcm-vc4.txt
703 +F: Documentation/devicetree/bindings/display/brcm,bcm2835-*.yaml
704 T: git git://anongit.freedesktop.org/drm/drm-misc
705
706 DRM DRIVERS FOR VIVANTE GPU IP