[PATCH v3] dt-bindings: display: panel: one file of all simple LVDS panels with dual ports
Liu Ying
victor.liu at nxp.com
Tue Nov 17 01:45:04 UTC 2020
On Mon, 2020-11-16 at 13:23 -0600, Rob Herring wrote:
> On Thu, Nov 12, 2020 at 02:17:11PM +0800, Liu Ying wrote:
> > To complement panel-simple.yaml, create panel-simple-lvds-dual-
> > ports.yaml.
> > panel-simple-lvds-dual-ports.yaml is for all simple LVDS panels
> > that
> > have dual LVDS ports and require only a single power-supply.
> > The first port receives odd pixels, and the second port receives
> > even pixels.
> > Optionally, a backlight and an enable GPIO can be specified as
> > properties.
> >
> > Panels with swapped pixel order, if any, need dedicated bindings.
> >
> > Migrate 'auo,g133han01', 'auo,g185han01', 'auo,g190ean01',
> > 'koe,tx26d202vm0bwa' and 'nlt,nl192108ac18-02d' over to the new
> > file.
> >
> > The objectives with one file for all the simple LVDS panels with
> > dual ports are:
> > - Make it simpler to add bindings for this kind of LVDS panels
> > - Keep the number of bindings file lower
> > - Keep the binding documentation for this kind of LVDS panels more
> > consistent
> > - Make it possible for drivers to get pixel order via
> > drm_of_lvds_get_dual_link_pixel_order(), as the optional 'ports'
> > property is
> > allowed
> >
> > Suggested-by: Sam Ravnborg <sam at ravnborg.org>
> > Cc: Thierry Reding <thierry.reding at gmail.com>
> > Cc: Sam Ravnborg <sam at ravnborg.org>
> > Cc: David Airlie <airlied at linux.ie>
> > Cc: Daniel Vetter <daniel at ffwll.ch>
> > Cc: Rob Herring <robh+dt at kernel.org>
> > Cc: Lucas Stach <l.stach at pengutronix.de>
> > Cc: Sebastian Reichel <sebastian.reichel at collabora.com>
> > Signed-off-by: Liu Ying <victor.liu at nxp.com>
> > ---
> > v2->v3:
> > * Do not allow 'port' property. (Rob)
> > * Define port number. (Rob)
> > * Specify 'dual-lvds-odd-pixels' and 'dual-lvds-even-pixels'
> > properties. (Rob)
> >
> > v1->v2:
> > * Correct pixel order in example LVDS panel node.
> >
> > .../panel/panel-simple-lvds-dual-ports.yaml | 126
> > +++++++++++++++++++++
> > .../bindings/display/panel/panel-simple.yaml | 10 --
> > 2 files changed, 126 insertions(+), 10 deletions(-)
> > create mode 100644
> > Documentation/devicetree/bindings/display/panel/panel-simple-lvds-
> > dual-ports.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/display/panel/panel-
> > simple-lvds-dual-ports.yaml
> > b/Documentation/devicetree/bindings/display/panel/panel-simple-
> > lvds-dual-ports.yaml
> > new file mode 100644
> > index 00000000..d30ae82
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/display/panel/panel-simple-
> > lvds-dual-ports.yaml
> > @@ -0,0 +1,126 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id:
> > https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fdevicetree.org%2Fschemas%2Fdisplay%2Fpanel%2Fpanel-simple-lvds-dual-ports.yaml%23&data=04%7C01%7Cvictor.liu%40nxp.com%7Ce8617e47af5e4d939a3708d88a652499%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637411514310871830%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=%2F5Jad81MpVVoRLGbEGAka5S4walK1UpsE8y6PGsgLiw%3D&reserved=0
> > +$schema:
> > https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fdevicetree.org%2Fmeta-schemas%2Fcore.yaml%23&data=04%7C01%7Cvictor.liu%40nxp.com%7Ce8617e47af5e4d939a3708d88a652499%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637411514310871830%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=3maA8Yc%2FoDzjSY2njq0bkM6%2FFo4J%2BFv0bEH4IbknM1w%3D&reserved=0
> > +
> > +title: Simple LVDS panels with one power supply and dual LVDS
> > ports
> > +
> > +maintainers:
> > + - Liu Ying <victor.liu at nxp.com>
> > + - Thierry Reding <thierry.reding at gmail.com>
> > + - Sam Ravnborg <sam at ravnborg.org>
> > +
> > +description: |
> > + This binding file is a collection of the LVDS panels that
> > + has dual LVDS ports and requires only a single power-supply.
> > + The first port receives odd pixels, and the second port receives
> > even pixels.
> > + There are optionally a backlight and an enable GPIO.
> > + The panel may use an OF graph binding for the association to the
> > display,
> > + or it may be a direct child node of the display.
> > +
> > + If the panel is more advanced a dedicated binding file is
> > required.
> > +
> > +allOf:
> > + - $ref: panel-common.yaml#
> > +
> > +properties:
> > +
> > + compatible:
> > + enum:
> > + # compatible must be listed in alphabetical order, ordered by
> > compatible.
> > + # The description in the comment is mandatory for each
> > compatible.
> > +
> > + # AU Optronics Corporation 13.3" FHD (1920x1080) TFT LCD
> > panel
> > + - auo,g133han01
> > + # AU Optronics Corporation 18.5" FHD (1920x1080) TFT LCD
> > panel
> > + - auo,g185han01
> > + # AU Optronics Corporation 19.0" (1280x1024) TFT LCD panel
> > + - auo,g190ean01
> > + # Kaohsiung Opto-Electronics Inc. 10.1" WUXGA (1920 x
> > 1200) LVDS TFT LCD panel
> > + - koe,tx26d202vm0bwa
> > + # NLT Technologies, Ltd. 15.6" FHD (1920x1080) LVDS TFT
> > LCD panel
> > + - nlt,nl192108ac18-02d
> > +
> > + ports:
> > + type: object
> > + properties:
> > + '#address-cells':
> > + const: 1
> > +
> > + '#size-cells':
> > + const: 0
> > +
> > + port at 0:
> > + type: object
> > + description: The sink for odd pixels.
> > + properties:
> > + reg:
> > + const: 0
> > +
> > + dual-lvds-odd-pixels: true
>
> Needs a type and description.
Will do in v4.
>
> > +
> > + required:
> > + - reg
> > + - dual-lvds-odd-pixels
> > +
> > + port at 1:
> > + type: object
> > + description: The sink for even pixels.
> > + properties:
> > + reg:
> > + const: 1
> > +
> > + dual-lvds-even-pixels: true
>
> Needs a type and description.
Ditto.
>
> > +
> > + required:
> > + - reg
> > + - dual-lvds-even-pixels
> > +
> > + required:
> > + - "#address-cells"
> > + - "#size-cells"
> > + - port at 0
> > + - port at 1
> > +
> > + additionalProperties: false
> > +
> > + backlight: true
> > + enable-gpios: true
> > + power-supply: true
> > +
> > +additionalProperties: false
> > +
> > +required:
> > + - compatible
> > + - power-supply
> > +
> > +examples:
> > + - |
> > + panel: panel-lvds {
> > + compatible = "koe,tx26d202vm0bwa";
> > + power-supply = <&vdd_lcd_reg>;
> > +
> > + ports {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > +
> > + port at 0 {
> > + dual-lvds-odd-pixels;
> > + reg = <0>;
> > +
> > + panel_lvds0_in: endpoint {
> > + remote-endpoint = <&lvds0_out>;
> > + };
> > + };
> > +
> > + port at 1 {
> > + dual-lvds-even-pixels;
> > + reg = <1>;
> > +
> > + panel_lvds1_in: endpoint {
> > + remote-endpoint = <&lvds1_out>;
> > + };
> > + };
> > + };
> > + };
> > diff --git a/Documentation/devicetree/bindings/display/panel/panel-
> > simple.yaml
> > b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
> > index f9750b0..62618e4 100644
> > --- a/Documentation/devicetree/bindings/display/panel/panel-
> > simple.yaml
> > +++ b/Documentation/devicetree/bindings/display/panel/panel-
> > simple.yaml
> > @@ -57,14 +57,8 @@ properties:
> > - auo,g104sn02
> > # AU Optronics Corporation 12.1" (1280x800) TFT LCD panel
> > - auo,g121ean01
> > - # AU Optronics Corporation 13.3" FHD (1920x1080) TFT LCD
> > panel
> > - - auo,g133han01
> > # AU Optronics Corporation 15.6" (1366x768) TFT LCD panel
> > - auo,g156xtn01
> > - # AU Optronics Corporation 18.5" FHD (1920x1080) TFT LCD
> > panel
> > - - auo,g185han01
> > - # AU Optronics Corporation 19.0" (1280x1024) TFT LCD panel
> > - - auo,g190ean01
> > # AU Optronics Corporation 31.5" FHD (1920x1080) TFT LCD
> > panel
> > - auo,p320hvn03
> > # AU Optronics Corporation 21.5" FHD (1920x1080) color TFT
> > LCD panel
> > @@ -167,8 +161,6 @@ properties:
> > - kingdisplay,kd116n21-30nv-a010
> > # Kaohsiung Opto-Electronics Inc. 5.7" QVGA (320 x 240)
> > TFT LCD panel
> > - koe,tx14d24vm1bpa
> > - # Kaohsiung Opto-Electronics Inc. 10.1" WUXGA (1920 x
> > 1200) LVDS TFT LCD panel
> > - - koe,tx26d202vm0bwa
> > # Kaohsiung Opto-Electronics. TX31D200VM0BAA 12.3" HSXGA
> > LVDS panel
> > - koe,tx31d200vm0baa
> > # Kyocera Corporation 12.1" XGA (1024x768) TFT LCD panel
> > @@ -205,8 +197,6 @@ properties:
> > - neweast,wjfh116008a
> > # Newhaven Display International 480 x 272 TFT LCD panel
> > - newhaven,nhd-4.3-480272ef-atxl
> > - # NLT Technologies, Ltd. 15.6" FHD (1920x1080) LVDS TFT
> > LCD panel
> > - - nlt,nl192108ac18-02d
> > # New Vision Display 7.0" 800 RGB x 480 TFT LCD panel
> > - nvd,9128
> > # OKAYA Electric America, Inc. RS800480T-7X0GP 7" WVGA LCD
> > panel
> > --
> > 2.7.4
> >
--
Liu Ying
More information about the dri-devel
mailing list