On Sat, Jan 25, 2020 at 2:35 PM Sam Ravnborg <sam@xxxxxxxxxxxx> wrote: > > With panel-timing converted, now convert the single > remaining .txt user in panel/ of panel-timing to DT schema. > > v2: > - Drop Thierry as maintainer, as this is not a general panel binding > and I have no acks. > - Drop requirement for a panel- specific binding - "panel-dpi" is enough > - Updated example > > Signed-off-by: Sam Ravnborg <sam@xxxxxxxxxxxx> > Cc: Rob Herring <robh@xxxxxxxxxx> > Cc: Thierry Reding <thierry.reding@xxxxxxxxx> > Cc: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > Cc: Maxime Ripard <mripard@xxxxxxxxxx> > --- > .../bindings/display/panel/panel-dpi.txt | 50 ------------- > .../bindings/display/panel/panel-dpi.yaml | 71 +++++++++++++++++++ > 2 files changed, 71 insertions(+), 50 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/display/panel/panel-dpi.txt > create mode 100644 Documentation/devicetree/bindings/display/panel/panel-dpi.yaml > > diff --git a/Documentation/devicetree/bindings/display/panel/panel-dpi.txt b/Documentation/devicetree/bindings/display/panel/panel-dpi.txt > deleted file mode 100644 > index 6b203bc4d932..000000000000 > --- a/Documentation/devicetree/bindings/display/panel/panel-dpi.txt > +++ /dev/null > @@ -1,50 +0,0 @@ > -Generic MIPI DPI Panel > -====================== > - > -Required properties: > -- compatible: "panel-dpi" > - > -Optional properties: > -- label: a symbolic name for the panel > -- enable-gpios: panel enable gpio > -- reset-gpios: GPIO to control the RESET pin > -- vcc-supply: phandle of regulator that will be used to enable power to the display > -- backlight: phandle of the backlight device > - > -Required nodes: > -- "panel-timing" containing video timings > - (Documentation/devicetree/bindings/display/panel/display-timing.txt) > -- Video port for DPI input > - > -Example > -------- > - > -lcd0: display@0 { > - compatible = "samsung,lte430wq-f0c", "panel-dpi"; > - label = "lcd"; > - > - backlight = <&backlight>; > - > - port { > - lcd_in: endpoint { > - remote-endpoint = <&dpi_out>; > - }; > - }; > - > - panel-timing { > - clock-frequency = <9200000>; > - hactive = <480>; > - vactive = <272>; > - hfront-porch = <8>; > - hback-porch = <4>; > - hsync-len = <41>; > - vback-porch = <2>; > - vfront-porch = <4>; > - vsync-len = <10>; > - > - hsync-active = <0>; > - vsync-active = <0>; > - de-active = <1>; > - pixelclk-active = <1>; > - }; > -}; > diff --git a/Documentation/devicetree/bindings/display/panel/panel-dpi.yaml b/Documentation/devicetree/bindings/display/panel/panel-dpi.yaml > new file mode 100644 > index 000000000000..a8e37318ec05 > --- /dev/null > +++ b/Documentation/devicetree/bindings/display/panel/panel-dpi.yaml > @@ -0,0 +1,71 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/display/panel/panel-dpi.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Generic MIPI DPI Panel > + > +maintainers: > + - Sam Ravnborg <sam@xxxxxxxxxxxx> > + > +allOf: > + - $ref: panel-common.yaml# > + > +properties: > + compatible: > + contains: > + const: panel-dpi > + description: > + Shall contain "panel-dpi" in addition to an optional panel-specific > + compatible string defined in individual panel bindings. > + "panel-dpi" can be used alone, thus no dedicated binding file > + is required for each and every panel. While this has occurred, I don't think the schema should allow it. I think a 'minItems: 2' should be added here. AFAIK, MIPI DPI just defines a spec for what already existed. Maybe it constrains things somewhat, but to the extent why we require a panel specific compatible in the first place? Doubtful... Rob > + port: true > + > +required: > + - panel-timing > + > +additionalProperties: false > + > +examples: > + - | > + panel@0 { > + compatible = "panel-dpi"; > + label = "lcd"; > + vcc-supply = <&vcc_supply>; > + > + backlight = <&backlight>; > + > + port { > + lcd_in: endpoint { > + remote-endpoint = <&dpi_out>; > + }; > + }; > + panel-timing { > + clock-frequency = <9200000>; > + hactive = <800>; > + vactive = <480>; > + hfront-porch = <8>; > + hback-porch = <4>; > + hsync-len = <41>; > + vback-porch = <2>; > + vfront-porch = <4>; > + vsync-len = <10>; > + > + hsync-active = <0>; > + vsync-active = <0>; > + de-active = <1>; > + pixelclk-active = <1>; > + }; > + }; > -- > 2.20.1 >