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