summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/display/panel/advantech,idk-2121wr.yaml
blob: 05ca3b2385f835806f14f176d4b189e09daf0c97 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/panel/advantech,idk-2121wr.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Advantech IDK-2121WR 21.5" Full-HD dual-LVDS panel

maintainers:
  - Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
  - Thierry Reding <thierry.reding@gmail.com>

description: |
  The IDK-2121WR from Advantech is a Full-HD dual-LVDS panel.
  A dual-LVDS interface is a dual-link connection with even pixels traveling
  on one link, and with odd pixels traveling on the other link.

  The panel expects odd pixels on the first port, and even pixels on the
  second port, therefore the ports must be marked accordingly (with either
  dual-lvds-odd-pixels or dual-lvds-even-pixels).

allOf:
  - $ref: /schemas/display/lvds-dual-ports.yaml#
  - $ref: panel-common.yaml#

properties:
  compatible:
    items:
      - const: advantech,idk-2121wr
      - {} # panel-lvds, but not listed here to avoid false select

  width-mm:
    const: 476

  height-mm:
    const: 268

  data-mapping:
    const: vesa-24

  panel-timing: true

  ports:
    $ref: /schemas/graph.yaml#/properties/ports

    properties:
      port@0:
        required:
          - dual-lvds-odd-pixels

      port@1:
        required:
          - dual-lvds-even-pixels

    required:
      - port@0
      - port@1

additionalProperties: false

required:
  - compatible
  - width-mm
  - height-mm
  - data-mapping
  - panel-timing

examples:
  - |+
    panel-lvds {
      compatible = "advantech,idk-2121wr", "panel-lvds";

      width-mm = <476>;
      height-mm = <268>;

      data-mapping = "vesa-24";

      panel-timing {
        clock-frequency = <148500000>;
        hactive = <1920>;
        vactive = <1080>;
        hsync-len = <44>;
        hfront-porch = <88>;
        hback-porch = <148>;
        vfront-porch = <4>;
        vback-porch = <36>;
        vsync-len = <5>;
      };

      ports {
        #address-cells = <1>;
        #size-cells = <0>;

        port@0 {
          reg = <0>;
          dual-lvds-odd-pixels;
          panel_in0: endpoint {
            remote-endpoint = <&lvds0_out>;
          };
        };

        port@1 {
          reg = <1>;
          dual-lvds-even-pixels;
          panel_in1: endpoint {
            remote-endpoint = <&lvds1_out>;
          };
        };
      };
    };

...