162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 262306a36Sopenharmony_ci%YAML 1.2 362306a36Sopenharmony_ci--- 462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/display/panel/advantech,idk-2121wr.yaml# 562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 662306a36Sopenharmony_ci 762306a36Sopenharmony_cititle: Advantech IDK-2121WR 21.5" Full-HD dual-LVDS panel 862306a36Sopenharmony_ci 962306a36Sopenharmony_cimaintainers: 1062306a36Sopenharmony_ci - Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> 1162306a36Sopenharmony_ci - Thierry Reding <thierry.reding@gmail.com> 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_cidescription: | 1462306a36Sopenharmony_ci The IDK-2121WR from Advantech is a Full-HD dual-LVDS panel. 1562306a36Sopenharmony_ci A dual-LVDS interface is a dual-link connection with even pixels traveling 1662306a36Sopenharmony_ci on one link, and with odd pixels traveling on the other link. 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ci The panel expects odd pixels on the first port, and even pixels on the 1962306a36Sopenharmony_ci second port, therefore the ports must be marked accordingly (with either 2062306a36Sopenharmony_ci dual-lvds-odd-pixels or dual-lvds-even-pixels). 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ciallOf: 2362306a36Sopenharmony_ci - $ref: panel-common.yaml# 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ciproperties: 2662306a36Sopenharmony_ci compatible: 2762306a36Sopenharmony_ci items: 2862306a36Sopenharmony_ci - const: advantech,idk-2121wr 2962306a36Sopenharmony_ci - {} # panel-lvds, but not listed here to avoid false select 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci width-mm: 3262306a36Sopenharmony_ci const: 476 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci height-mm: 3562306a36Sopenharmony_ci const: 268 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ci data-mapping: 3862306a36Sopenharmony_ci const: vesa-24 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci panel-timing: true 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci ports: 4362306a36Sopenharmony_ci $ref: /schemas/graph.yaml#/properties/ports 4462306a36Sopenharmony_ci 4562306a36Sopenharmony_ci properties: 4662306a36Sopenharmony_ci port@0: 4762306a36Sopenharmony_ci $ref: /schemas/graph.yaml#/$defs/port-base 4862306a36Sopenharmony_ci unevaluatedProperties: false 4962306a36Sopenharmony_ci description: The sink for odd pixels. 5062306a36Sopenharmony_ci properties: 5162306a36Sopenharmony_ci dual-lvds-odd-pixels: true 5262306a36Sopenharmony_ci 5362306a36Sopenharmony_ci required: 5462306a36Sopenharmony_ci - dual-lvds-odd-pixels 5562306a36Sopenharmony_ci 5662306a36Sopenharmony_ci port@1: 5762306a36Sopenharmony_ci $ref: /schemas/graph.yaml#/$defs/port-base 5862306a36Sopenharmony_ci unevaluatedProperties: false 5962306a36Sopenharmony_ci description: The sink for even pixels. 6062306a36Sopenharmony_ci properties: 6162306a36Sopenharmony_ci dual-lvds-even-pixels: true 6262306a36Sopenharmony_ci 6362306a36Sopenharmony_ci required: 6462306a36Sopenharmony_ci - dual-lvds-even-pixels 6562306a36Sopenharmony_ci 6662306a36Sopenharmony_ci required: 6762306a36Sopenharmony_ci - port@0 6862306a36Sopenharmony_ci - port@1 6962306a36Sopenharmony_ci 7062306a36Sopenharmony_ciadditionalProperties: false 7162306a36Sopenharmony_ci 7262306a36Sopenharmony_cirequired: 7362306a36Sopenharmony_ci - compatible 7462306a36Sopenharmony_ci - width-mm 7562306a36Sopenharmony_ci - height-mm 7662306a36Sopenharmony_ci - data-mapping 7762306a36Sopenharmony_ci - panel-timing 7862306a36Sopenharmony_ci - ports 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_ciexamples: 8162306a36Sopenharmony_ci - |+ 8262306a36Sopenharmony_ci panel-lvds { 8362306a36Sopenharmony_ci compatible = "advantech,idk-2121wr", "panel-lvds"; 8462306a36Sopenharmony_ci 8562306a36Sopenharmony_ci width-mm = <476>; 8662306a36Sopenharmony_ci height-mm = <268>; 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ci data-mapping = "vesa-24"; 8962306a36Sopenharmony_ci 9062306a36Sopenharmony_ci panel-timing { 9162306a36Sopenharmony_ci clock-frequency = <148500000>; 9262306a36Sopenharmony_ci hactive = <1920>; 9362306a36Sopenharmony_ci vactive = <1080>; 9462306a36Sopenharmony_ci hsync-len = <44>; 9562306a36Sopenharmony_ci hfront-porch = <88>; 9662306a36Sopenharmony_ci hback-porch = <148>; 9762306a36Sopenharmony_ci vfront-porch = <4>; 9862306a36Sopenharmony_ci vback-porch = <36>; 9962306a36Sopenharmony_ci vsync-len = <5>; 10062306a36Sopenharmony_ci }; 10162306a36Sopenharmony_ci 10262306a36Sopenharmony_ci ports { 10362306a36Sopenharmony_ci #address-cells = <1>; 10462306a36Sopenharmony_ci #size-cells = <0>; 10562306a36Sopenharmony_ci 10662306a36Sopenharmony_ci port@0 { 10762306a36Sopenharmony_ci reg = <0>; 10862306a36Sopenharmony_ci dual-lvds-odd-pixels; 10962306a36Sopenharmony_ci panel_in0: endpoint { 11062306a36Sopenharmony_ci remote-endpoint = <&lvds0_out>; 11162306a36Sopenharmony_ci }; 11262306a36Sopenharmony_ci }; 11362306a36Sopenharmony_ci 11462306a36Sopenharmony_ci port@1 { 11562306a36Sopenharmony_ci reg = <1>; 11662306a36Sopenharmony_ci dual-lvds-even-pixels; 11762306a36Sopenharmony_ci panel_in1: endpoint { 11862306a36Sopenharmony_ci remote-endpoint = <&lvds1_out>; 11962306a36Sopenharmony_ci }; 12062306a36Sopenharmony_ci }; 12162306a36Sopenharmony_ci }; 12262306a36Sopenharmony_ci }; 12362306a36Sopenharmony_ci 12462306a36Sopenharmony_ci... 125