* [PATCH] dt-bindings: display: panel-simple: Add Arm virtual platforms display
@ 2022-06-10 20:38 Rob Herring
2022-06-10 20:54 ` Sam Ravnborg
0 siblings, 1 reply; 3+ messages in thread
From: Rob Herring @ 2022-06-10 20:38 UTC (permalink / raw)
To: David Airlie, Daniel Vetter, Krzysztof Kozlowski, Thierry Reding,
Sam Ravnborg, Liviu Dudau, Andre Przywara
Cc: Linus Walleij, Robin Murphy, dri-devel, devicetree, linux-kernel
'arm,rtsm-display' is a panel for Arm, Ltd. virtual platforms (e.g. FVP).
The binding has been in use for a long time, but was never documented.
Some users and an example have a 'panel-dpi' compatible, but that's not
needed without a 'panel-timing' node which none of the users have since
commit 928faf5e3e8d ("arm64: dts: fvp: Remove panel timings"). The
example does have a 'panel-timing' node, but it should not for the
same reasons the node was removed in the dts files. So update the
example in arm,pl11x.yaml to match the schema.
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Robin Murphy <robin.murphy@arm.com>
Cc: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Rob Herring <robh@kernel.org>
---
.../bindings/display/arm,pl11x.yaml | 15 +-------------
.../bindings/display/panel/panel-simple.yaml | 20 +++++++++++++------
2 files changed, 15 insertions(+), 20 deletions(-)
diff --git a/Documentation/devicetree/bindings/display/arm,pl11x.yaml b/Documentation/devicetree/bindings/display/arm,pl11x.yaml
index b545c6d20325..6cc9045e5c68 100644
--- a/Documentation/devicetree/bindings/display/arm,pl11x.yaml
+++ b/Documentation/devicetree/bindings/display/arm,pl11x.yaml
@@ -159,25 +159,12 @@ examples:
};
panel {
- compatible = "arm,rtsm-display", "panel-dpi";
- power-supply = <&vcc_supply>;
+ compatible = "arm,rtsm-display";
port {
clcd_panel: endpoint {
remote-endpoint = <&clcd_pads>;
};
};
-
- panel-timing {
- clock-frequency = <25175000>;
- hactive = <640>;
- hback-porch = <40>;
- hfront-porch = <24>;
- hsync-len = <96>;
- vactive = <480>;
- vback-porch = <32>;
- vfront-porch = <11>;
- vsync-len = <2>;
- };
};
...
diff --git a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
index 21ba90c9fe33..97afd276c54a 100644
--- a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
+++ b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
@@ -19,9 +19,6 @@ description: |
If the panel is more advanced a dedicated binding file is required.
-allOf:
- - $ref: panel-common.yaml#
-
properties:
compatible:
@@ -35,6 +32,8 @@ properties:
- ampire,am-480272h3tmqw-t01h
# Ampire AM-800480R3TMQW-A1H 7.0" WVGA TFT LCD panel
- ampire,am800480r3tmqwa1h
+ # Arm, Ltd. Virtual Platforms Display
+ - arm,rtsm-display
# AU Optronics Corporation 10.1" WSVGA TFT LCD panel
- auo,b101aw03
# AU Optronics Corporation 10.1" WSVGA TFT LCD panel
@@ -340,9 +339,18 @@ properties:
additionalProperties: false
-required:
- - compatible
- - power-supply
+allOf:
+ - $ref: panel-common.yaml#
+ - if:
+ # Most 'simple' panels must have a single supply, but a virtual display does not
+ not:
+ properties:
+ compatible:
+ contains:
+ const: arm,rtsm-display
+ then:
+ required:
+ - power-supply
examples:
- |
--
2.34.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] dt-bindings: display: panel-simple: Add Arm virtual platforms display
2022-06-10 20:38 [PATCH] dt-bindings: display: panel-simple: Add Arm virtual platforms display Rob Herring
@ 2022-06-10 20:54 ` Sam Ravnborg
2022-06-10 21:25 ` Rob Herring
0 siblings, 1 reply; 3+ messages in thread
From: Sam Ravnborg @ 2022-06-10 20:54 UTC (permalink / raw)
To: Rob Herring
Cc: David Airlie, Daniel Vetter, Krzysztof Kozlowski, Thierry Reding,
Liviu Dudau, Andre Przywara, Linus Walleij, Robin Murphy,
dri-devel, devicetree, linux-kernel
Hi Rob,
On Fri, Jun 10, 2022 at 02:38:18PM -0600, Rob Herring wrote:
> 'arm,rtsm-display' is a panel for Arm, Ltd. virtual platforms (e.g. FVP).
> The binding has been in use for a long time, but was never documented.
>
> Some users and an example have a 'panel-dpi' compatible, but that's not
> needed without a 'panel-timing' node which none of the users have since
> commit 928faf5e3e8d ("arm64: dts: fvp: Remove panel timings"). The
> example does have a 'panel-timing' node, but it should not for the
> same reasons the node was removed in the dts files. So update the
> example in arm,pl11x.yaml to match the schema.
>
> Cc: Linus Walleij <linus.walleij@linaro.org>
> Cc: Robin Murphy <robin.murphy@arm.com>
> Cc: Andre Przywara <andre.przywara@arm.com>
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
> .../bindings/display/arm,pl11x.yaml | 15 +-------------
> .../bindings/display/panel/panel-simple.yaml | 20 +++++++++++++------
> 2 files changed, 15 insertions(+), 20 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/display/arm,pl11x.yaml b/Documentation/devicetree/bindings/display/arm,pl11x.yaml
> index b545c6d20325..6cc9045e5c68 100644
> --- a/Documentation/devicetree/bindings/display/arm,pl11x.yaml
> +++ b/Documentation/devicetree/bindings/display/arm,pl11x.yaml
> @@ -159,25 +159,12 @@ examples:
> };
>
> panel {
> - compatible = "arm,rtsm-display", "panel-dpi";
> - power-supply = <&vcc_supply>;
> + compatible = "arm,rtsm-display";
>
> port {
> clcd_panel: endpoint {
> remote-endpoint = <&clcd_pads>;
> };
> };
> -
> - panel-timing {
> - clock-frequency = <25175000>;
> - hactive = <640>;
> - hback-porch = <40>;
> - hfront-porch = <24>;
> - hsync-len = <96>;
> - vactive = <480>;
> - vback-porch = <32>;
> - vfront-porch = <11>;
> - vsync-len = <2>;
> - };
> };
> ...
> diff --git a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
> index 21ba90c9fe33..97afd276c54a 100644
> --- a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
> @@ -19,9 +19,6 @@ description: |
>
> If the panel is more advanced a dedicated binding file is required.
>
> -allOf:
> - - $ref: panel-common.yaml#
> -
> properties:
>
> compatible:
> @@ -35,6 +32,8 @@ properties:
> - ampire,am-480272h3tmqw-t01h
> # Ampire AM-800480R3TMQW-A1H 7.0" WVGA TFT LCD panel
> - ampire,am800480r3tmqwa1h
> + # Arm, Ltd. Virtual Platforms Display
> + - arm,rtsm-display
> # AU Optronics Corporation 10.1" WSVGA TFT LCD panel
> - auo,b101aw03
> # AU Optronics Corporation 10.1" WSVGA TFT LCD panel
> @@ -340,9 +339,18 @@ properties:
>
> additionalProperties: false
>
> -required:
> - - compatible
> - - power-supply
> +allOf:
> + - $ref: panel-common.yaml#
> + - if:
> + # Most 'simple' panels must have a single supply, but a virtual display does not
> + not:
> + properties:
> + compatible:
> + contains:
> + const: arm,rtsm-display
> + then:
> + required:
> + - power-supply
Sorry, but I do not like this change. The beauty of panel-simple is that
this is a collection of simple display with identical bindings because
the HW is more or less the same (in general - not in details like size
etc).
Any panels that requires more are pushed out to their own binding and
for arm,rtsm-display that would be better.
It is not this single exceptions that bothers me, it is the many
exceptions we will have in a few years from now.
Sam
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] dt-bindings: display: panel-simple: Add Arm virtual platforms display
2022-06-10 20:54 ` Sam Ravnborg
@ 2022-06-10 21:25 ` Rob Herring
0 siblings, 0 replies; 3+ messages in thread
From: Rob Herring @ 2022-06-10 21:25 UTC (permalink / raw)
To: Sam Ravnborg
Cc: David Airlie, Daniel Vetter, Krzysztof Kozlowski, Thierry Reding,
Liviu Dudau, Andre Przywara, Linus Walleij, Robin Murphy,
dri-devel, devicetree, linux-kernel
On Fri, Jun 10, 2022 at 2:55 PM Sam Ravnborg <sam@ravnborg.org> wrote:
>
> Hi Rob,
>
> On Fri, Jun 10, 2022 at 02:38:18PM -0600, Rob Herring wrote:
> > 'arm,rtsm-display' is a panel for Arm, Ltd. virtual platforms (e.g. FVP).
> > The binding has been in use for a long time, but was never documented.
> >
> > Some users and an example have a 'panel-dpi' compatible, but that's not
> > needed without a 'panel-timing' node which none of the users have since
> > commit 928faf5e3e8d ("arm64: dts: fvp: Remove panel timings"). The
> > example does have a 'panel-timing' node, but it should not for the
> > same reasons the node was removed in the dts files. So update the
> > example in arm,pl11x.yaml to match the schema.
> >
> > Cc: Linus Walleij <linus.walleij@linaro.org>
> > Cc: Robin Murphy <robin.murphy@arm.com>
> > Cc: Andre Przywara <andre.przywara@arm.com>
> > Signed-off-by: Rob Herring <robh@kernel.org>
> > ---
> > .../bindings/display/arm,pl11x.yaml | 15 +-------------
> > .../bindings/display/panel/panel-simple.yaml | 20 +++++++++++++------
> > 2 files changed, 15 insertions(+), 20 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/display/arm,pl11x.yaml b/Documentation/devicetree/bindings/display/arm,pl11x.yaml
> > index b545c6d20325..6cc9045e5c68 100644
> > --- a/Documentation/devicetree/bindings/display/arm,pl11x.yaml
> > +++ b/Documentation/devicetree/bindings/display/arm,pl11x.yaml
> > @@ -159,25 +159,12 @@ examples:
> > };
> >
> > panel {
> > - compatible = "arm,rtsm-display", "panel-dpi";
> > - power-supply = <&vcc_supply>;
> > + compatible = "arm,rtsm-display";
> >
> > port {
> > clcd_panel: endpoint {
> > remote-endpoint = <&clcd_pads>;
> > };
> > };
> > -
> > - panel-timing {
> > - clock-frequency = <25175000>;
> > - hactive = <640>;
> > - hback-porch = <40>;
> > - hfront-porch = <24>;
> > - hsync-len = <96>;
> > - vactive = <480>;
> > - vback-porch = <32>;
> > - vfront-porch = <11>;
> > - vsync-len = <2>;
> > - };
> > };
> > ...
> > diff --git a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
> > index 21ba90c9fe33..97afd276c54a 100644
> > --- a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
> > +++ b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
> > @@ -19,9 +19,6 @@ description: |
> >
> > If the panel is more advanced a dedicated binding file is required.
> >
> > -allOf:
> > - - $ref: panel-common.yaml#
> > -
> > properties:
> >
> > compatible:
> > @@ -35,6 +32,8 @@ properties:
> > - ampire,am-480272h3tmqw-t01h
> > # Ampire AM-800480R3TMQW-A1H 7.0" WVGA TFT LCD panel
> > - ampire,am800480r3tmqwa1h
> > + # Arm, Ltd. Virtual Platforms Display
> > + - arm,rtsm-display
> > # AU Optronics Corporation 10.1" WSVGA TFT LCD panel
> > - auo,b101aw03
> > # AU Optronics Corporation 10.1" WSVGA TFT LCD panel
> > @@ -340,9 +339,18 @@ properties:
> >
> > additionalProperties: false
> >
> > -required:
> > - - compatible
> > - - power-supply
> > +allOf:
> > + - $ref: panel-common.yaml#
> > + - if:
> > + # Most 'simple' panels must have a single supply, but a virtual display does not
> > + not:
> > + properties:
> > + compatible:
> > + contains:
> > + const: arm,rtsm-display
> > + then:
> > + required:
> > + - power-supply
>
> Sorry, but I do not like this change. The beauty of panel-simple is that
> this is a collection of simple display with identical bindings because
> the HW is more or less the same (in general - not in details like size
> etc).
>
> Any panels that requires more are pushed out to their own binding and
> for arm,rtsm-display that would be better.
But I require less...
> It is not this single exceptions that bothers me, it is the many
> exceptions we will have in a few years from now.
Fair enough, I'll make it a separate file.
Rob
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-06-10 21:25 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-10 20:38 [PATCH] dt-bindings: display: panel-simple: Add Arm virtual platforms display Rob Herring
2022-06-10 20:54 ` Sam Ravnborg
2022-06-10 21:25 ` Rob Herring
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).