1# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/display/brcm,bcm2835-dsi0.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Broadcom VC4 (VideoCore4) DSI Controller
8
9maintainers:
10  - Eric Anholt <eric@anholt.net>
11
12properties:
13  "#clock-cells":
14    const: 1
15
16  compatible:
17    enum:
18      - brcm,bcm2835-dsi0
19      - brcm,bcm2835-dsi1
20
21  reg:
22    maxItems: 1
23
24  clocks:
25    items:
26      - description: The DSI PLL clock feeding the DSI analog PHY
27      - description: The DSI ESC clock
28      - description: The DSI pixel clock
29
30  clock-names:
31    items:
32      - const: phy
33      - const: escape
34      - const: pixel
35
36  clock-output-names: true
37    # FIXME: The meta-schemas don't seem to allow it for now
38    # items:
39    #   - description: The DSI byte clock for the PHY
40    #   - description: The DSI DDR2 clock
41    #   - description: The DSI DDR clock
42
43  interrupts:
44    maxItems: 1
45
46required:
47  - "#clock-cells"
48  - compatible
49  - reg
50  - clocks
51  - clock-names
52  - clock-output-names
53  - interrupts
54
55unevaluatedProperties: false
56
57examples:
58  - |
59    #include <dt-bindings/clock/bcm2835.h>
60
61    dsi1: dsi@7e700000 {
62        compatible = "brcm,bcm2835-dsi1";
63        reg = <0x7e700000 0x8c>;
64        interrupts = <2 12>;
65        #address-cells = <1>;
66        #size-cells = <0>;
67        #clock-cells = <1>;
68
69        clocks = <&clocks BCM2835_PLLD_DSI1>,
70                 <&clocks BCM2835_CLOCK_DSI1E>,
71                 <&clocks BCM2835_CLOCK_DSI1P>;
72        clock-names = "phy", "escape", "pixel";
73
74        clock-output-names = "dsi1_byte", "dsi1_ddr2", "dsi1_ddr";
75
76        pitouchscreen: panel@0 {
77            compatible = "raspberrypi,touchscreen";
78            reg = <0>;
79
80            /* ... */
81        };
82    };
83
84...
85