Linux-libre 5.7.6-gnu
[librecmc/linux-libre.git] / Documentation / devicetree / bindings / display / panel / advantech,idk-2121wr.yaml
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/display/panel/advantech,idk-2121wr.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Advantech IDK-2121WR 21.5" Full-HD dual-LVDS panel
8
9 maintainers:
10   - Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
11   - Thierry Reding <thierry.reding@gmail.com>
12
13 description: |
14   The IDK-2121WR from Advantech is a Full-HD dual-LVDS panel.
15   A dual-LVDS interface is a dual-link connection with even pixels traveling
16   on one link, and with odd pixels traveling on the other link.
17
18   The panel expects odd pixels on the first port, and even pixels on the
19   second port, therefore the ports must be marked accordingly (with either
20   dual-lvds-odd-pixels or dual-lvds-even-pixels).
21
22 properties:
23   compatible:
24     items:
25       - const: advantech,idk-2121wr
26       - {} # panel-lvds, but not listed here to avoid false select
27
28   width-mm:
29     const: 476
30
31   height-mm:
32     const: 268
33
34   data-mapping:
35     const: vesa-24
36
37   panel-timing: true
38
39   ports:
40     type: object
41     properties:
42       port@0:
43         type: object
44         description: The sink for odd pixels.
45         properties:
46           reg:
47             const: 0
48
49           dual-lvds-odd-pixels: true
50
51         required:
52           - reg
53           - dual-lvds-odd-pixels
54
55       port@1:
56         type: object
57         description: The sink for even pixels.
58         properties:
59           reg:
60             const: 1
61
62           dual-lvds-even-pixels: true
63
64         required:
65           - reg
66           - dual-lvds-even-pixels
67
68 additionalProperties: false
69
70 required:
71   - compatible
72   - width-mm
73   - height-mm
74   - data-mapping
75   - panel-timing
76   - ports
77
78 examples:
79   - |+
80     panel-lvds {
81       compatible = "advantech,idk-2121wr", "panel-lvds";
82
83       width-mm = <476>;
84       height-mm = <268>;
85
86       data-mapping = "vesa-24";
87
88       panel-timing {
89         clock-frequency = <148500000>;
90         hactive = <1920>;
91         vactive = <1080>;
92         hsync-len = <44>;
93         hfront-porch = <88>;
94         hback-porch = <148>;
95         vfront-porch = <4>;
96         vback-porch = <36>;
97         vsync-len = <5>;
98       };
99
100       ports {
101         #address-cells = <1>;
102         #size-cells = <0>;
103
104         port@0 {
105           reg = <0>;
106           dual-lvds-odd-pixels;
107           panel_in0: endpoint {
108             remote-endpoint = <&lvds0_out>;
109           };
110         };
111
112         port@1 {
113           reg = <1>;
114           dual-lvds-even-pixels;
115           panel_in1: endpoint {
116             remote-endpoint = <&lvds1_out>;
117           };
118         };
119       };
120     };
121
122 ...