Re: [PATCH] dt-bindings: display: Use OF graph schema

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Nov 17, 2020 at 3:43 AM Laurent Pinchart
<laurent.pinchart@xxxxxxxxxxxxxxxx> wrote:
>
> Hi Rob,
>
> Thank you for the patch.
>
> On Mon, Nov 16, 2020 at 07:37:03PM -0600, Rob Herring wrote:
> > Now that we have a graph schema, rework the display related schemas to use
> > it. Mostly this is adding a reference to graph.yaml and dropping duplicate
> > parts from schemas.
> >
> > Cc: Thierry Reding <thierry.reding@xxxxxxxxx>
> > Cc: Sam Ravnborg <sam@xxxxxxxxxxxx>
> > Cc: Laurent Pinchart <laurent.pinchart+renesas@xxxxxxxxxxxxxxxx>
> > Cc: Maxime Ripard <mripard@xxxxxxxxxx>
> > Cc: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
> > Cc: Thomas Zimmermann <tzimmermann@xxxxxxx>
> > Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
> > ---
> > graph.yaml is in the dtschema repo, so this can go into drm-misc and
> > hopefully anything afterwards be fixed up to use graph.yaml.
> >
> >  .../allwinner,sun4i-a10-display-backend.yaml  | 14 +---
> >  .../allwinner,sun4i-a10-display-frontend.yaml | 16 +----
> >  .../display/allwinner,sun4i-a10-hdmi.yaml     | 16 +----
> >  .../display/allwinner,sun4i-a10-tcon.yaml     | 16 +----
> >  .../allwinner,sun4i-a10-tv-encoder.yaml       |  2 +-
> >  .../display/allwinner,sun6i-a31-drc.yaml      | 16 +----
> >  .../display/allwinner,sun6i-a31-mipi-dsi.yaml |  6 +-
> >  .../allwinner,sun8i-a83t-de2-mixer.yaml       | 16 +----
> >  .../display/allwinner,sun8i-a83t-dw-hdmi.yaml | 16 +----
> >  .../display/allwinner,sun8i-r40-tcon-top.yaml | 19 +-----
> >  .../display/allwinner,sun9i-a80-deu.yaml      | 16 +----
> >  .../bindings/display/brcm,bcm2835-dpi.yaml    |  7 +-
> >  .../display/bridge/analogix,anx7625.yaml      |  5 +-
> >  .../display/bridge/analogix,anx7814.yaml      | 18 +----
> >  .../bindings/display/bridge/anx6345.yaml      | 15 ++--
> >  .../display/bridge/cdns,mhdp8546.yaml         | 18 +----
> >  .../display/bridge/chrontel,ch7033.yaml       |  3 +
> >  .../display/bridge/intel,keembay-dsi.yaml     |  9 +--
> >  .../bindings/display/bridge/ite,it6505.yaml   |  2 +-
> >  .../display/bridge/lontium,lt9611.yaml        | 68 ++-----------------
> >  .../bindings/display/bridge/lvds-codec.yaml   | 15 +---
> >  .../bindings/display/bridge/nwl-dsi.yaml      | 17 +----
> >  .../bindings/display/bridge/ps8640.yaml       | 21 ++----
> >  .../bindings/display/bridge/renesas,lvds.yaml | 15 +---
> >  .../display/bridge/simple-bridge.yaml         | 15 +---
> >  .../display/bridge/snps,dw-mipi-dsi.yaml      |  5 +-
> >  .../display/bridge/thine,thc63lvd1024.yaml    | 16 +----
> >  .../bindings/display/bridge/ti,sn65dsi86.yaml | 27 +-------
> >  .../bindings/display/bridge/ti,tfp410.yaml    | 15 +---
> >  .../display/bridge/toshiba,tc358762.yaml      | 51 ++------------
> >  .../display/bridge/toshiba,tc358768.yaml      | 11 +--
> >  .../display/bridge/toshiba,tc358775.yaml      | 17 ++---
> >  .../connector/analog-tv-connector.yaml        |  1 +
> >  .../display/connector/dvi-connector.yaml      |  1 +
> >  .../display/connector/hdmi-connector.yaml     |  1 +
> >  .../display/connector/vga-connector.yaml      |  1 +
> >  .../bindings/display/imx/nxp,imx8mq-dcss.yaml |  2 +-
> >  .../bindings/display/ingenic,lcd.yaml         |  7 +-
> >  .../display/intel,keembay-display.yaml        |  2 +-
> >  .../display/panel/advantech,idk-2121wr.yaml   |  5 ++
> >  .../bindings/display/panel/panel-common.yaml  | 11 +--
> >  .../rockchip/rockchip,rk3066-hdmi.yaml        | 13 +---
> >  .../display/rockchip/rockchip-vop.yaml        |  5 +-
> >  .../bindings/display/st,stm32-dsi.yaml        | 13 ++--
> >  .../bindings/display/st,stm32-ltdc.yaml       |  7 +-
> >  .../bindings/display/ti/ti,am65x-dss.yaml     | 16 +----
> >  .../bindings/display/ti/ti,j721e-dss.yaml     | 18 +----
> >  .../bindings/display/ti/ti,k2g-dss.yaml       |  4 +-
> >  48 files changed, 121 insertions(+), 509 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/display/allwinner,sun4i-a10-display-backend.yaml b/Documentation/devicetree/bindings/display/allwinner,sun4i-a10-display-backend.yaml
> > index 86057d541065..7e8798b43c2a 100644
> > --- a/Documentation/devicetree/bindings/display/allwinner,sun4i-a10-display-backend.yaml
> > +++ b/Documentation/devicetree/bindings/display/allwinner,sun4i-a10-display-backend.yaml
> > @@ -85,17 +85,9 @@ properties:
> >
> >    ports:
> >      type: object
>
> Do we need to specify the type here (and in all the locations below),
> give that it's specified in /schemas/graph.yaml#/properties/ports ?

The metaschema enforces that we have 'type' if we have 'properties'
(except at the top level), so yes. Now that I think about it more,
maybe I can rework it such that we required at least 'type' or '$ref'
when we have 'properties'. Though that's not going to remove 'type'
for 'port@n' schemas.

[...]

> > diff --git a/Documentation/devicetree/bindings/display/panel/panel-common.yaml b/Documentation/devicetree/bindings/display/panel/panel-common.yaml
> > index cd6dc5461721..5b38dc89cb21 100644
> > --- a/Documentation/devicetree/bindings/display/panel/panel-common.yaml
> > +++ b/Documentation/devicetree/bindings/display/panel/panel-common.yaml
> > @@ -68,16 +68,7 @@ properties:
> >
> >    # Connectivity
> >    port:
> > -    type: object
> > -
> > -  ports:
> > -    type: object
> > -    description:
> > -      Panels receive video data through one or multiple connections. While
> > -      the nature of those connections is specific to the panel type, the
> > -      connectivity is expressed in a standard fashion using ports as specified
> > -      in the device graph bindings defined in
> > -      Documentation/devicetree/bindings/graph.txt.
> > +    $ref: /schemas/graph.yaml#/properties/port
>
> This drops "ports", is it intentional ?

Yes, I forgot to note that in the commit. The reason is defining ports
here is not that useful. We don't want single port cases just randomly
picking whether they use port or ports. If you use 'ports' then you
need a schema defining each 'port'.

[...]

> > diff --git a/Documentation/devicetree/bindings/display/ti/ti,k2g-dss.yaml b/Documentation/devicetree/bindings/display/ti/ti,k2g-dss.yaml
> > index 8f87b82c6695..74dd1ce46d00 100644
> > --- a/Documentation/devicetree/bindings/display/ti/ti,k2g-dss.yaml
> > +++ b/Documentation/devicetree/bindings/display/ti/ti,k2g-dss.yaml
> > @@ -55,9 +55,7 @@ properties:
> >
> >    port:
> >      type: object
> > -    description:
> > -      Port as described in Documentation/devicetree/bindings/graph.txt.
> > -      The DSS DPI output port node
>
> I think the second line of the description should be kept.

Yes.

Rob



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux