xref: /linux/Documentation/devicetree/bindings/display/brcm,bcm2835-hvs.yaml (revision d30c1683aaecb93d2ab95685dc4300a33d3cea7a)
1# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/display/brcm,bcm2835-hvs.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Broadcom VC4 (VideoCore4) Hardware Video Scaler
8
9maintainers:
10  - Eric Anholt <eric@anholt.net>
11
12properties:
13  compatible:
14    enum:
15      - brcm,bcm2711-hvs
16      - brcm,bcm2712-hvs
17      - brcm,bcm2835-hvs
18
19  reg:
20    maxItems: 1
21
22  interrupts:
23    minItems: 1
24    maxItems: 3
25
26  interrupt-names:
27    minItems: 1
28    maxItems: 3
29
30  clocks:
31    minItems: 1
32    maxItems: 2
33
34  clock-names:
35    minItems: 1
36    maxItems: 2
37
38required:
39  - compatible
40  - reg
41  - interrupts
42
43additionalProperties: false
44
45allOf:
46  - if:
47      properties:
48        compatible:
49          contains:
50            const: brcm,bcm2711-hvs
51
52    then:
53      properties:
54        clocks:
55          items:
56            - description: Core Clock
57        interrupts:
58          maxItems: 1
59        clock-names: false
60        interrupt-names: false
61
62      required:
63        - clocks
64
65  - if:
66      properties:
67        compatible:
68          contains:
69            const: brcm,bcm2712-hvs
70
71    then:
72      properties:
73        clocks:
74          minItems: 2
75          maxItems: 2
76        clock-names:
77          items:
78            - const: core
79            - const: disp
80        interrupts:
81          items:
82            - description: Channel 0 End of frame
83            - description: Channel 1 End of frame
84            - description: Channel 2 End of frame
85        interrupt-names:
86          items:
87            - const: ch0-eof
88            - const: ch1-eof
89            - const: ch2-eof
90      required:
91        - clocks
92        - clock-names
93        - interrupt-names
94
95  - if:
96      properties:
97        compatible:
98          contains:
99            const: brcm,bcm2835-hvs
100
101    then:
102      properties:
103        interrupts:
104          maxItems: 1
105        clock-names: false
106        interrupt-names: false
107
108examples:
109  - |
110    hvs@7e400000 {
111        compatible = "brcm,bcm2835-hvs";
112        reg = <0x7e400000 0x6000>;
113        interrupts = <2 1>;
114    };
115
116...
117