1c25b84c0SMaxime Ripard# SPDX-License-Identifier: GPL-2.0
2c25b84c0SMaxime Ripard%YAML 1.2
3c25b84c0SMaxime Ripard---
4c25b84c0SMaxime Ripard$id: http://devicetree.org/schemas/display/allwinner,sun6i-a31-mipi-dsi.yaml#
5c25b84c0SMaxime Ripard$schema: http://devicetree.org/meta-schemas/core.yaml#
6c25b84c0SMaxime Ripard
7dd3cb467SAndrew Lunntitle: Allwinner A31 MIPI-DSI Controller
8c25b84c0SMaxime Ripard
9c25b84c0SMaxime Ripardmaintainers:
10c25b84c0SMaxime Ripard  - Chen-Yu Tsai <wens@csie.org>
115c7404bbSMaxime Ripard  - Maxime Ripard <mripard@kernel.org>
12c25b84c0SMaxime Ripard
13c25b84c0SMaxime Ripardproperties:
14c25b84c0SMaxime Ripard  compatible:
15fe5040f2SJagan Teki    enum:
16fe5040f2SJagan Teki      - allwinner,sun6i-a31-mipi-dsi
17fe5040f2SJagan Teki      - allwinner,sun50i-a64-mipi-dsi
18c25b84c0SMaxime Ripard
19c25b84c0SMaxime Ripard  reg:
20c25b84c0SMaxime Ripard    maxItems: 1
21c25b84c0SMaxime Ripard
22c25b84c0SMaxime Ripard  interrupts:
23c25b84c0SMaxime Ripard    maxItems: 1
24c25b84c0SMaxime Ripard
25c25b84c0SMaxime Ripard  clocks:
26fe5040f2SJagan Teki    minItems: 1
27c25b84c0SMaxime Ripard    items:
28c25b84c0SMaxime Ripard      - description: Bus Clock
29c25b84c0SMaxime Ripard      - description: Module Clock
30c25b84c0SMaxime Ripard
31c25b84c0SMaxime Ripard  clock-names:
32c25b84c0SMaxime Ripard    items:
33c25b84c0SMaxime Ripard      - const: bus
34c25b84c0SMaxime Ripard      - const: mod
35c25b84c0SMaxime Ripard
36c25b84c0SMaxime Ripard  resets:
37c25b84c0SMaxime Ripard    maxItems: 1
38c25b84c0SMaxime Ripard
398a317f22SJagan Teki  vcc-dsi-supply:
408a317f22SJagan Teki    description: VCC-DSI power supply of the DSI encoder
418a317f22SJagan Teki
42c25b84c0SMaxime Ripard  phys:
43c25b84c0SMaxime Ripard    maxItems: 1
44c25b84c0SMaxime Ripard
45c25b84c0SMaxime Ripard  phy-names:
46c25b84c0SMaxime Ripard    const: dphy
47c25b84c0SMaxime Ripard
48c25b84c0SMaxime Ripard  port:
49b6755423SRob Herring    $ref: /schemas/graph.yaml#/properties/port
50c25b84c0SMaxime Ripard    description:
51b6755423SRob Herring      The port should be the input endpoint, usually coming from the
52c25b84c0SMaxime Ripard      associated TCON.
53c25b84c0SMaxime Ripard
54c25b84c0SMaxime Ripardrequired:
55c25b84c0SMaxime Ripard  - compatible
56c25b84c0SMaxime Ripard  - reg
57c25b84c0SMaxime Ripard  - interrupts
58c25b84c0SMaxime Ripard  - clocks
59c25b84c0SMaxime Ripard  - phys
60c25b84c0SMaxime Ripard  - phy-names
61c25b84c0SMaxime Ripard  - resets
628a317f22SJagan Teki  - vcc-dsi-supply
63c25b84c0SMaxime Ripard  - port
64c25b84c0SMaxime Ripard
65fe5040f2SJagan TekiallOf:
6624d59795SRob Herring  - $ref: dsi-controller.yaml#
67fe5040f2SJagan Teki  - if:
68fe5040f2SJagan Teki      properties:
69fe5040f2SJagan Teki        compatible:
70fe5040f2SJagan Teki          contains:
71fe5040f2SJagan Teki            const: allwinner,sun6i-a31-mipi-dsi
72fe5040f2SJagan Teki
73fe5040f2SJagan Teki    then:
74fe5040f2SJagan Teki      properties:
75fe5040f2SJagan Teki        clocks:
76fe5040f2SJagan Teki          minItems: 2
77fe5040f2SJagan Teki
78fe5040f2SJagan Teki      required:
79fe5040f2SJagan Teki        - clock-names
80fe5040f2SJagan Teki
81*f7931b03SSamuel Holland    else:
82fe5040f2SJagan Teki      properties:
83fe5040f2SJagan Teki        clocks:
84*f7931b03SSamuel Holland          maxItems: 1
85fe5040f2SJagan Teki
8624d59795SRob HerringunevaluatedProperties: false
87c25b84c0SMaxime Ripard
88c25b84c0SMaxime Ripardexamples:
89c25b84c0SMaxime Ripard  - |
90c25b84c0SMaxime Ripard    dsi0: dsi@1ca0000 {
91c25b84c0SMaxime Ripard        compatible = "allwinner,sun6i-a31-mipi-dsi";
92c25b84c0SMaxime Ripard        reg = <0x01ca0000 0x1000>;
93c25b84c0SMaxime Ripard        interrupts = <0 89 4>;
94c25b84c0SMaxime Ripard        clocks = <&ccu 23>, <&ccu 96>;
95c25b84c0SMaxime Ripard        clock-names = "bus", "mod";
96c25b84c0SMaxime Ripard        resets = <&ccu 4>;
97c25b84c0SMaxime Ripard        phys = <&dphy0>;
98c25b84c0SMaxime Ripard        phy-names = "dphy";
998a317f22SJagan Teki        vcc-dsi-supply = <&reg_dcdc1>;
100c25b84c0SMaxime Ripard        #address-cells = <1>;
101c25b84c0SMaxime Ripard        #size-cells = <0>;
102c25b84c0SMaxime Ripard
103c25b84c0SMaxime Ripard        panel@0 {
104c25b84c0SMaxime Ripard                compatible = "bananapi,lhr050h41", "ilitek,ili9881c";
105c25b84c0SMaxime Ripard                reg = <0>;
106ba98fc38SSam Ravnborg                power-supply = <&reg_display>;
107c25b84c0SMaxime Ripard                reset-gpios = <&r_pio 0 5 1>; /* PL05 */
108c25b84c0SMaxime Ripard                backlight = <&pwm_bl>;
109c25b84c0SMaxime Ripard        };
110c25b84c0SMaxime Ripard
111c25b84c0SMaxime Ripard        port {
112c25b84c0SMaxime Ripard            dsi0_in_tcon0: endpoint {
113c25b84c0SMaxime Ripard                remote-endpoint = <&tcon0_out_dsi0>;
114c25b84c0SMaxime Ripard            };
115c25b84c0SMaxime Ripard        };
116c25b84c0SMaxime Ripard    };
117c25b84c0SMaxime Ripard
118c25b84c0SMaxime Ripard...
119