xref: /freebsd/sys/contrib/device-tree/Bindings/display/amlogic,meson-g12a-dw-mipi-dsi.yaml (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*f126890aSEmmanuel Vadot# Copyright 2020 BayLibre, SAS
3*f126890aSEmmanuel Vadot%YAML 1.2
4*f126890aSEmmanuel Vadot---
5*f126890aSEmmanuel Vadot$id: http://devicetree.org/schemas/display/amlogic,meson-g12a-dw-mipi-dsi.yaml#
6*f126890aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
7*f126890aSEmmanuel Vadot
8*f126890aSEmmanuel Vadottitle: Amlogic specific extensions to the Synopsys Designware MIPI DSI Host Controller
9*f126890aSEmmanuel Vadot
10*f126890aSEmmanuel Vadotmaintainers:
11*f126890aSEmmanuel Vadot  - Neil Armstrong <neil.armstrong@linaro.org>
12*f126890aSEmmanuel Vadot
13*f126890aSEmmanuel Vadotdescription: |
14*f126890aSEmmanuel Vadot  The Amlogic Meson Synopsys Designware Integration is composed of
15*f126890aSEmmanuel Vadot  - A Synopsys DesignWare MIPI DSI Host Controller IP
16*f126890aSEmmanuel Vadot  - A TOP control block controlling the Clocks & Resets of the IP
17*f126890aSEmmanuel Vadot
18*f126890aSEmmanuel VadotallOf:
19*f126890aSEmmanuel Vadot  - $ref: dsi-controller.yaml#
20*f126890aSEmmanuel Vadot
21*f126890aSEmmanuel Vadotproperties:
22*f126890aSEmmanuel Vadot  compatible:
23*f126890aSEmmanuel Vadot    enum:
24*f126890aSEmmanuel Vadot      - amlogic,meson-g12a-dw-mipi-dsi
25*f126890aSEmmanuel Vadot
26*f126890aSEmmanuel Vadot  reg:
27*f126890aSEmmanuel Vadot    maxItems: 1
28*f126890aSEmmanuel Vadot
29*f126890aSEmmanuel Vadot  clocks:
30*f126890aSEmmanuel Vadot    minItems: 3
31*f126890aSEmmanuel Vadot    maxItems: 4
32*f126890aSEmmanuel Vadot
33*f126890aSEmmanuel Vadot  clock-names:
34*f126890aSEmmanuel Vadot    minItems: 3
35*f126890aSEmmanuel Vadot    items:
36*f126890aSEmmanuel Vadot      - const: pclk
37*f126890aSEmmanuel Vadot      - const: bit
38*f126890aSEmmanuel Vadot      - const: px
39*f126890aSEmmanuel Vadot      - const: meas
40*f126890aSEmmanuel Vadot
41*f126890aSEmmanuel Vadot  resets:
42*f126890aSEmmanuel Vadot    maxItems: 1
43*f126890aSEmmanuel Vadot
44*f126890aSEmmanuel Vadot  reset-names:
45*f126890aSEmmanuel Vadot    items:
46*f126890aSEmmanuel Vadot      - const: top
47*f126890aSEmmanuel Vadot
48*f126890aSEmmanuel Vadot  phys:
49*f126890aSEmmanuel Vadot    maxItems: 1
50*f126890aSEmmanuel Vadot
51*f126890aSEmmanuel Vadot  phy-names:
52*f126890aSEmmanuel Vadot    items:
53*f126890aSEmmanuel Vadot      - const: dphy
54*f126890aSEmmanuel Vadot
55*f126890aSEmmanuel Vadot  ports:
56*f126890aSEmmanuel Vadot    $ref: /schemas/graph.yaml#/properties/ports
57*f126890aSEmmanuel Vadot
58*f126890aSEmmanuel Vadot    properties:
59*f126890aSEmmanuel Vadot      port@0:
60*f126890aSEmmanuel Vadot        $ref: /schemas/graph.yaml#/properties/port
61*f126890aSEmmanuel Vadot        description: Input node to receive pixel data.
62*f126890aSEmmanuel Vadot
63*f126890aSEmmanuel Vadot      port@1:
64*f126890aSEmmanuel Vadot        $ref: /schemas/graph.yaml#/properties/port
65*f126890aSEmmanuel Vadot        description: DSI output node to panel.
66*f126890aSEmmanuel Vadot
67*f126890aSEmmanuel Vadot    required:
68*f126890aSEmmanuel Vadot      - port@0
69*f126890aSEmmanuel Vadot      - port@1
70*f126890aSEmmanuel Vadot
71*f126890aSEmmanuel Vadotrequired:
72*f126890aSEmmanuel Vadot  - compatible
73*f126890aSEmmanuel Vadot  - reg
74*f126890aSEmmanuel Vadot  - clocks
75*f126890aSEmmanuel Vadot  - clock-names
76*f126890aSEmmanuel Vadot  - resets
77*f126890aSEmmanuel Vadot  - reset-names
78*f126890aSEmmanuel Vadot  - phys
79*f126890aSEmmanuel Vadot  - phy-names
80*f126890aSEmmanuel Vadot  - ports
81*f126890aSEmmanuel Vadot
82*f126890aSEmmanuel VadotunevaluatedProperties: false
83*f126890aSEmmanuel Vadot
84*f126890aSEmmanuel Vadotexamples:
85*f126890aSEmmanuel Vadot  - |
86*f126890aSEmmanuel Vadot    dsi@6000 {
87*f126890aSEmmanuel Vadot          compatible = "amlogic,meson-g12a-dw-mipi-dsi";
88*f126890aSEmmanuel Vadot          reg = <0x6000 0x400>;
89*f126890aSEmmanuel Vadot          resets = <&reset_top>;
90*f126890aSEmmanuel Vadot          reset-names = "top";
91*f126890aSEmmanuel Vadot          clocks = <&clk_pclk>, <&bit_clk>, <&clk_px>;
92*f126890aSEmmanuel Vadot          clock-names = "pclk", "bit", "px";
93*f126890aSEmmanuel Vadot          phys = <&mipi_dphy>;
94*f126890aSEmmanuel Vadot          phy-names = "dphy";
95*f126890aSEmmanuel Vadot
96*f126890aSEmmanuel Vadot          ports {
97*f126890aSEmmanuel Vadot              #address-cells = <1>;
98*f126890aSEmmanuel Vadot              #size-cells = <0>;
99*f126890aSEmmanuel Vadot
100*f126890aSEmmanuel Vadot              /* VPU VENC Input */
101*f126890aSEmmanuel Vadot              mipi_dsi_venc_port: port@0 {
102*f126890aSEmmanuel Vadot                  reg = <0>;
103*f126890aSEmmanuel Vadot
104*f126890aSEmmanuel Vadot                  mipi_dsi_in: endpoint {
105*f126890aSEmmanuel Vadot                       remote-endpoint = <&dpi_out>;
106*f126890aSEmmanuel Vadot                  };
107*f126890aSEmmanuel Vadot              };
108*f126890aSEmmanuel Vadot
109*f126890aSEmmanuel Vadot              /* DSI Output */
110*f126890aSEmmanuel Vadot              mipi_dsi_panel_port: port@1 {
111*f126890aSEmmanuel Vadot                  reg = <1>;
112*f126890aSEmmanuel Vadot
113*f126890aSEmmanuel Vadot                  mipi_out_panel: endpoint {
114*f126890aSEmmanuel Vadot                      remote-endpoint = <&mipi_in_panel>;
115*f126890aSEmmanuel Vadot                  };
116*f126890aSEmmanuel Vadot              };
117*f126890aSEmmanuel Vadot          };
118*f126890aSEmmanuel Vadot    };
119