xref: /openbmc/linux/Documentation/devicetree/bindings/display/panel/advantech,idk-2121wr.yaml (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
18efef33eSFabrizio Castro# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
28efef33eSFabrizio Castro%YAML 1.2
38efef33eSFabrizio Castro---
48efef33eSFabrizio Castro$id: http://devicetree.org/schemas/display/panel/advantech,idk-2121wr.yaml#
58efef33eSFabrizio Castro$schema: http://devicetree.org/meta-schemas/core.yaml#
68efef33eSFabrizio Castro
78efef33eSFabrizio Castrotitle: Advantech IDK-2121WR 21.5" Full-HD dual-LVDS panel
88efef33eSFabrizio Castro
98efef33eSFabrizio Castromaintainers:
108efef33eSFabrizio Castro  - Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
118efef33eSFabrizio Castro  - Thierry Reding <thierry.reding@gmail.com>
128efef33eSFabrizio Castro
138efef33eSFabrizio Castrodescription: |
148efef33eSFabrizio Castro  The IDK-2121WR from Advantech is a Full-HD dual-LVDS panel.
158efef33eSFabrizio Castro  A dual-LVDS interface is a dual-link connection with even pixels traveling
168efef33eSFabrizio Castro  on one link, and with odd pixels traveling on the other link.
178efef33eSFabrizio Castro
188efef33eSFabrizio Castro  The panel expects odd pixels on the first port, and even pixels on the
198efef33eSFabrizio Castro  second port, therefore the ports must be marked accordingly (with either
208efef33eSFabrizio Castro  dual-lvds-odd-pixels or dual-lvds-even-pixels).
218efef33eSFabrizio Castro
22*4f154712SKrzysztof KozlowskiallOf:
23*4f154712SKrzysztof Kozlowski  - $ref: panel-common.yaml#
24*4f154712SKrzysztof Kozlowski
258efef33eSFabrizio Castroproperties:
268efef33eSFabrizio Castro  compatible:
278efef33eSFabrizio Castro    items:
288efef33eSFabrizio Castro      - const: advantech,idk-2121wr
298efef33eSFabrizio Castro      - {} # panel-lvds, but not listed here to avoid false select
308efef33eSFabrizio Castro
318efef33eSFabrizio Castro  width-mm:
328efef33eSFabrizio Castro    const: 476
338efef33eSFabrizio Castro
348efef33eSFabrizio Castro  height-mm:
358efef33eSFabrizio Castro    const: 268
368efef33eSFabrizio Castro
378efef33eSFabrizio Castro  data-mapping:
388efef33eSFabrizio Castro    const: vesa-24
398efef33eSFabrizio Castro
408efef33eSFabrizio Castro  panel-timing: true
418efef33eSFabrizio Castro
428efef33eSFabrizio Castro  ports:
43b6755423SRob Herring    $ref: /schemas/graph.yaml#/properties/ports
44b6755423SRob Herring
458efef33eSFabrizio Castro    properties:
468efef33eSFabrizio Castro      port@0:
47b6755423SRob Herring        $ref: /schemas/graph.yaml#/$defs/port-base
48b6755423SRob Herring        unevaluatedProperties: false
498efef33eSFabrizio Castro        description: The sink for odd pixels.
508efef33eSFabrizio Castro        properties:
518efef33eSFabrizio Castro          dual-lvds-odd-pixels: true
528efef33eSFabrizio Castro
538efef33eSFabrizio Castro        required:
548efef33eSFabrizio Castro          - dual-lvds-odd-pixels
558efef33eSFabrizio Castro
568efef33eSFabrizio Castro      port@1:
57b6755423SRob Herring        $ref: /schemas/graph.yaml#/$defs/port-base
58b6755423SRob Herring        unevaluatedProperties: false
598efef33eSFabrizio Castro        description: The sink for even pixels.
608efef33eSFabrizio Castro        properties:
618efef33eSFabrizio Castro          dual-lvds-even-pixels: true
628efef33eSFabrizio Castro
638efef33eSFabrizio Castro        required:
648efef33eSFabrizio Castro          - dual-lvds-even-pixels
658efef33eSFabrizio Castro
66b6755423SRob Herring    required:
67b6755423SRob Herring      - port@0
68b6755423SRob Herring      - port@1
69b6755423SRob Herring
708efef33eSFabrizio CastroadditionalProperties: false
718efef33eSFabrizio Castro
728efef33eSFabrizio Castrorequired:
738efef33eSFabrizio Castro  - compatible
748efef33eSFabrizio Castro  - width-mm
758efef33eSFabrizio Castro  - height-mm
768efef33eSFabrizio Castro  - data-mapping
778efef33eSFabrizio Castro  - panel-timing
788efef33eSFabrizio Castro  - ports
798efef33eSFabrizio Castro
808efef33eSFabrizio Castroexamples:
818efef33eSFabrizio Castro  - |+
828efef33eSFabrizio Castro    panel-lvds {
838efef33eSFabrizio Castro      compatible = "advantech,idk-2121wr", "panel-lvds";
848efef33eSFabrizio Castro
858efef33eSFabrizio Castro      width-mm = <476>;
868efef33eSFabrizio Castro      height-mm = <268>;
878efef33eSFabrizio Castro
888efef33eSFabrizio Castro      data-mapping = "vesa-24";
898efef33eSFabrizio Castro
908efef33eSFabrizio Castro      panel-timing {
918efef33eSFabrizio Castro        clock-frequency = <148500000>;
928efef33eSFabrizio Castro        hactive = <1920>;
938efef33eSFabrizio Castro        vactive = <1080>;
948efef33eSFabrizio Castro        hsync-len = <44>;
958efef33eSFabrizio Castro        hfront-porch = <88>;
968efef33eSFabrizio Castro        hback-porch = <148>;
978efef33eSFabrizio Castro        vfront-porch = <4>;
988efef33eSFabrizio Castro        vback-porch = <36>;
998efef33eSFabrizio Castro        vsync-len = <5>;
1008efef33eSFabrizio Castro      };
1018efef33eSFabrizio Castro
1028efef33eSFabrizio Castro      ports {
1038efef33eSFabrizio Castro        #address-cells = <1>;
1048efef33eSFabrizio Castro        #size-cells = <0>;
1058efef33eSFabrizio Castro
1068efef33eSFabrizio Castro        port@0 {
1078efef33eSFabrizio Castro          reg = <0>;
1088efef33eSFabrizio Castro          dual-lvds-odd-pixels;
1098efef33eSFabrizio Castro          panel_in0: endpoint {
1108efef33eSFabrizio Castro            remote-endpoint = <&lvds0_out>;
1118efef33eSFabrizio Castro          };
1128efef33eSFabrizio Castro        };
1138efef33eSFabrizio Castro
1148efef33eSFabrizio Castro        port@1 {
1158efef33eSFabrizio Castro          reg = <1>;
1168efef33eSFabrizio Castro          dual-lvds-even-pixels;
1178efef33eSFabrizio Castro          panel_in1: endpoint {
1188efef33eSFabrizio Castro            remote-endpoint = <&lvds1_out>;
1198efef33eSFabrizio Castro          };
1208efef33eSFabrizio Castro        };
1218efef33eSFabrizio Castro      };
1228efef33eSFabrizio Castro    };
1238efef33eSFabrizio Castro
1248efef33eSFabrizio Castro...
125