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