Message ID | 1564731249-22671-4-git-send-email-fabrizio.castro@bp.renesas.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Kieran Bingham |
Headers | show |
Series | Add dual-LVDS panel support to EK874 | expand |
Hi Fabrizio, Thank you for the patch. On Fri, Aug 02, 2019 at 08:34:00AM +0100, Fabrizio Castro wrote: > Dual-link LVDS displays have two ports, therefore document this > with the bindings. > > Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com> > --- > .../bindings/display/panel/panel-lvds.txt | 91 ++++++++++++++++------ > 1 file changed, 67 insertions(+), 24 deletions(-) > > diff --git a/Documentation/devicetree/bindings/display/panel/panel-lvds.txt b/Documentation/devicetree/bindings/display/panel/panel-lvds.txt > index 250850a..07795441 100644 > --- a/Documentation/devicetree/bindings/display/panel/panel-lvds.txt > +++ b/Documentation/devicetree/bindings/display/panel/panel-lvds.txt > @@ -41,7 +41,8 @@ Required nodes: > > - panel-timing: See panel-common.txt. > - ports: See panel-common.txt. These bindings require a single port subnode > - corresponding to the panel LVDS input. > + (for a single link display) or two port subnodes (for a dual link display) > + corresponding to the panel LVDS input(s). I think you should expand this a bit to explain what the ports correspond to in the dual link mode. > LVDS data mappings are defined as follows. > @@ -92,30 +93,72 @@ CTL3: 0 > Example > ------- > > -panel { > - compatible = "mitsubishi,aa121td01", "panel-lvds"; > - > - width-mm = <261>; > - height-mm = <163>; > - > - data-mapping = "jeida-24"; > - > - panel-timing { > - /* 1280x800 @60Hz */ > - clock-frequency = <71000000>; > - hactive = <1280>; > - vactive = <800>; > - hsync-len = <70>; > - hfront-porch = <20>; > - hback-porch = <70>; > - vsync-len = <5>; > - vfront-porch = <3>; > - vback-porch = <15>; > +Single port: > + panel { > + compatible = "mitsubishi,aa121td01", "panel-lvds"; > + > + width-mm = <261>; > + height-mm = <163>; > + > + data-mapping = "jeida-24"; > + > + panel-timing { > + /* 1280x800 @60Hz */ > + clock-frequency = <71000000>; > + hactive = <1280>; > + vactive = <800>; > + hsync-len = <70>; > + hfront-porch = <20>; > + hback-porch = <70>; > + vsync-len = <5>; > + vfront-porch = <3>; > + vback-porch = <15>; > + }; > + > + port { > + panel_in: endpoint { > + remote-endpoint = <&lvds_encoder>; > + }; > + }; > }; > > - port { > - panel_in: endpoint { > - remote-endpoint = <&lvds_encoder>; > +Two ports: > + panel { > + 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>; > + lvds0_panel_in: endpoint { I would name the label panel_in0 and panel_in1 below to have a common prefix showing that both refer to the same panel. > + remote-endpoint = <&lvds0_out>; > + }; > + }; > + > + port@1 { > + reg = <1>; > + lvds1_panel_in: endpoint { > + remote-endpoint = <&lvds1_out>; > + }; > + }; > }; > }; > -};
Hi Laurent, Thank you for your feedback! > From: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > Sent: 02 August 2019 09:00 > Subject: Re: [PATCH/RFC 03/12] dt-bindings: panel: lvds: Add dual-link LVDS display support > > Hi Fabrizio, > > Thank you for the patch. > > On Fri, Aug 02, 2019 at 08:34:00AM +0100, Fabrizio Castro wrote: > > Dual-link LVDS displays have two ports, therefore document this > > with the bindings. > > > > Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com> > > --- > > .../bindings/display/panel/panel-lvds.txt | 91 ++++++++++++++++------ > > 1 file changed, 67 insertions(+), 24 deletions(-) > > > > diff --git a/Documentation/devicetree/bindings/display/panel/panel-lvds.txt > b/Documentation/devicetree/bindings/display/panel/panel-lvds.txt > > index 250850a..07795441 100644 > > --- a/Documentation/devicetree/bindings/display/panel/panel-lvds.txt > > +++ b/Documentation/devicetree/bindings/display/panel/panel-lvds.txt > > @@ -41,7 +41,8 @@ Required nodes: > > > > - panel-timing: See panel-common.txt. > > - ports: See panel-common.txt. These bindings require a single port subnode > > - corresponding to the panel LVDS input. > > + (for a single link display) or two port subnodes (for a dual link display) > > + corresponding to the panel LVDS input(s). > > I think you should expand this a bit to explain what the ports > correspond to in the dual link mode. Will change. > > > LVDS data mappings are defined as follows. > > @@ -92,30 +93,72 @@ CTL3: 0 > > Example > > ------- > > > > -panel { > > - compatible = "mitsubishi,aa121td01", "panel-lvds"; > > - > > - width-mm = <261>; > > - height-mm = <163>; > > - > > - data-mapping = "jeida-24"; > > - > > - panel-timing { > > - /* 1280x800 @60Hz */ > > - clock-frequency = <71000000>; > > - hactive = <1280>; > > - vactive = <800>; > > - hsync-len = <70>; > > - hfront-porch = <20>; > > - hback-porch = <70>; > > - vsync-len = <5>; > > - vfront-porch = <3>; > > - vback-porch = <15>; > > +Single port: > > + panel { > > + compatible = "mitsubishi,aa121td01", "panel-lvds"; > > + > > + width-mm = <261>; > > + height-mm = <163>; > > + > > + data-mapping = "jeida-24"; > > + > > + panel-timing { > > + /* 1280x800 @60Hz */ > > + clock-frequency = <71000000>; > > + hactive = <1280>; > > + vactive = <800>; > > + hsync-len = <70>; > > + hfront-porch = <20>; > > + hback-porch = <70>; > > + vsync-len = <5>; > > + vfront-porch = <3>; > > + vback-porch = <15>; > > + }; > > + > > + port { > > + panel_in: endpoint { > > + remote-endpoint = <&lvds_encoder>; > > + }; > > + }; > > }; > > > > - port { > > - panel_in: endpoint { > > - remote-endpoint = <&lvds_encoder>; > > +Two ports: > > + panel { > > + 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>; > > + lvds0_panel_in: endpoint { > > I would name the label panel_in0 and panel_in1 below to have a common > prefix showing that both refer to the same panel. I agree, will change, thank you for pointing this out. > > > + remote-endpoint = <&lvds0_out>; > > + }; > > + }; > > + > > + port@1 { > > + reg = <1>; > > + lvds1_panel_in: endpoint { > > + remote-endpoint = <&lvds1_out>; > > + }; > > + }; > > }; > > }; > > -}; Thanks, Fab > > -- > Regards, > > Laurent Pinchart
diff --git a/Documentation/devicetree/bindings/display/panel/panel-lvds.txt b/Documentation/devicetree/bindings/display/panel/panel-lvds.txt index 250850a..07795441 100644 --- a/Documentation/devicetree/bindings/display/panel/panel-lvds.txt +++ b/Documentation/devicetree/bindings/display/panel/panel-lvds.txt @@ -41,7 +41,8 @@ Required nodes: - panel-timing: See panel-common.txt. - ports: See panel-common.txt. These bindings require a single port subnode - corresponding to the panel LVDS input. + (for a single link display) or two port subnodes (for a dual link display) + corresponding to the panel LVDS input(s). LVDS data mappings are defined as follows. @@ -92,30 +93,72 @@ CTL3: 0 Example ------- -panel { - compatible = "mitsubishi,aa121td01", "panel-lvds"; - - width-mm = <261>; - height-mm = <163>; - - data-mapping = "jeida-24"; - - panel-timing { - /* 1280x800 @60Hz */ - clock-frequency = <71000000>; - hactive = <1280>; - vactive = <800>; - hsync-len = <70>; - hfront-porch = <20>; - hback-porch = <70>; - vsync-len = <5>; - vfront-porch = <3>; - vback-porch = <15>; +Single port: + panel { + compatible = "mitsubishi,aa121td01", "panel-lvds"; + + width-mm = <261>; + height-mm = <163>; + + data-mapping = "jeida-24"; + + panel-timing { + /* 1280x800 @60Hz */ + clock-frequency = <71000000>; + hactive = <1280>; + vactive = <800>; + hsync-len = <70>; + hfront-porch = <20>; + hback-porch = <70>; + vsync-len = <5>; + vfront-porch = <3>; + vback-porch = <15>; + }; + + port { + panel_in: endpoint { + remote-endpoint = <&lvds_encoder>; + }; + }; }; - port { - panel_in: endpoint { - remote-endpoint = <&lvds_encoder>; +Two ports: + panel { + 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>; + lvds0_panel_in: endpoint { + remote-endpoint = <&lvds0_out>; + }; + }; + + port@1 { + reg = <1>; + lvds1_panel_in: endpoint { + remote-endpoint = <&lvds1_out>; + }; + }; }; }; -};
Dual-link LVDS displays have two ports, therefore document this with the bindings. Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com> --- .../bindings/display/panel/panel-lvds.txt | 91 ++++++++++++++++------ 1 file changed, 67 insertions(+), 24 deletions(-)