From: Tomi Valkeinen <tomi.valkeinen+renesas@ideasonboard.com>
Extend the Renesas DU display bindings to support the r8a779h0 V4M.
Note that we remove the requirement for two ports from the global part
of the bindings, as each conditional part defines the number of required
ports already. This came up with r8a779h0 as it's the first one that has
only one port.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen+renesas@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Tested-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
.../devicetree/bindings/display/renesas,du.yaml | 52 ++++++++++++++++++++--
1 file changed, 48 insertions(+), 4 deletions(-)
diff --git a/Documentation/devicetree/bindings/display/renesas,du.yaml b/Documentation/devicetree/bindings/display/renesas,du.yaml
index c5b9e6812bce..7dec47aea052 100644
--- a/Documentation/devicetree/bindings/display/renesas,du.yaml
+++ b/Documentation/devicetree/bindings/display/renesas,du.yaml
@@ -41,6 +41,7 @@ properties:
- renesas,du-r8a77995 # for R-Car D3 compatible DU
- renesas,du-r8a779a0 # for R-Car V3U compatible DU
- renesas,du-r8a779g0 # for R-Car V4H compatible DU
+ - renesas,du-r8a779h0 # for R-Car V4M compatible DU
reg:
maxItems: 1
@@ -69,10 +70,6 @@ properties:
$ref: /schemas/graph.yaml#/properties/port
unevaluatedProperties: false
- required:
- - port@0
- - port@1
-
unevaluatedProperties: false
renesas,cmms:
@@ -807,6 +804,53 @@ allOf:
- reset-names
- renesas,vsps
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - renesas,du-r8a779h0
+ then:
+ properties:
+ clocks:
+ items:
+ - description: Functional clock
+
+ clock-names:
+ items:
+ - const: du.0
+
+ interrupts:
+ maxItems: 1
+
+ resets:
+ maxItems: 1
+
+ reset-names:
+ items:
+ - const: du.0
+
+ ports:
+ properties:
+ port@0:
+ description: DSI 0
+ port@1: false
+ port@2: false
+ port@3: false
+
+ required:
+ - port@0
+
+ renesas,vsps:
+ minItems: 1
+
+ required:
+ - clock-names
+ - interrupts
+ - resets
+ - reset-names
+ - renesas,vsps
+
additionalProperties: false
examples:
--
2.43.0
On Fri, Dec 06, 2024 at 11:32:37AM +0200, Tomi Valkeinen wrote: > From: Tomi Valkeinen <tomi.valkeinen+renesas@ideasonboard.com> > > Extend the Renesas DU display bindings to support the r8a779h0 V4M. > > Note that we remove the requirement for two ports from the global part > of the bindings, as each conditional part defines the number of required > ports already. This came up with r8a779h0 as it's the first one that has > only one port. > > Signed-off-by: Tomi Valkeinen <tomi.valkeinen+renesas@ideasonboard.com> > Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> > Tested-by: Geert Uytterhoeven <geert+renesas@glider.be> > --- > .../devicetree/bindings/display/renesas,du.yaml | 52 ++++++++++++++++++++-- > 1 file changed, 48 insertions(+), 4 deletions(-) > > diff --git a/Documentation/devicetree/bindings/display/renesas,du.yaml b/Documentation/devicetree/bindings/display/renesas,du.yaml > index c5b9e6812bce..7dec47aea052 100644 > --- a/Documentation/devicetree/bindings/display/renesas,du.yaml > +++ b/Documentation/devicetree/bindings/display/renesas,du.yaml > @@ -41,6 +41,7 @@ properties: > - renesas,du-r8a77995 # for R-Car D3 compatible DU > - renesas,du-r8a779a0 # for R-Car V3U compatible DU > - renesas,du-r8a779g0 # for R-Car V4H compatible DU > + - renesas,du-r8a779h0 # for R-Car V4M compatible DU > > reg: > maxItems: 1 > @@ -69,10 +70,6 @@ properties: > $ref: /schemas/graph.yaml#/properties/port > unevaluatedProperties: false > > - required: > - - port@0 > - - port@1 > - > unevaluatedProperties: false > > renesas,cmms: > @@ -807,6 +804,53 @@ allOf: > - reset-names > - renesas,vsps > > + - if: > + properties: > + compatible: > + contains: > + enum: > + - renesas,du-r8a779h0 > + then: > + properties: > + clocks: > + items: > + - description: Functional clock > + > + clock-names: > + items: > + - const: du.0 > + > + interrupts: > + maxItems: 1 > + > + resets: > + maxItems: 1 > + > + reset-names: > + items: > + - const: du.0 > + > + ports: > + properties: > + port@0: > + description: DSI 0 > + port@1: false > + port@2: false > + port@3: false > + > + required: > + - port@0 > + > + renesas,vsps: > + minItems: 1 maxItems? The min is already 1. Note maxItems is missing in all the other cases too. Since the top-level definition has no constraints, all the constraints under if/then schemas need both minItems and maxItems. (Unless there's no max). > + > + required: > + - clock-names > + - interrupts > + - resets > + - reset-names > + - renesas,vsps > + > additionalProperties: false > > examples: > > -- > 2.43.0 >
Hi, On 11/12/2024 17:45, Rob Herring wrote: > On Fri, Dec 06, 2024 at 11:32:37AM +0200, Tomi Valkeinen wrote: >> From: Tomi Valkeinen <tomi.valkeinen+renesas@ideasonboard.com> >> >> Extend the Renesas DU display bindings to support the r8a779h0 V4M. >> >> Note that we remove the requirement for two ports from the global part >> of the bindings, as each conditional part defines the number of required >> ports already. This came up with r8a779h0 as it's the first one that has >> only one port. >> >> Signed-off-by: Tomi Valkeinen <tomi.valkeinen+renesas@ideasonboard.com> >> Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> >> Tested-by: Geert Uytterhoeven <geert+renesas@glider.be> >> --- >> .../devicetree/bindings/display/renesas,du.yaml | 52 ++++++++++++++++++++-- >> 1 file changed, 48 insertions(+), 4 deletions(-) >> >> diff --git a/Documentation/devicetree/bindings/display/renesas,du.yaml b/Documentation/devicetree/bindings/display/renesas,du.yaml >> index c5b9e6812bce..7dec47aea052 100644 >> --- a/Documentation/devicetree/bindings/display/renesas,du.yaml >> +++ b/Documentation/devicetree/bindings/display/renesas,du.yaml >> @@ -41,6 +41,7 @@ properties: >> - renesas,du-r8a77995 # for R-Car D3 compatible DU >> - renesas,du-r8a779a0 # for R-Car V3U compatible DU >> - renesas,du-r8a779g0 # for R-Car V4H compatible DU >> + - renesas,du-r8a779h0 # for R-Car V4M compatible DU >> >> reg: >> maxItems: 1 >> @@ -69,10 +70,6 @@ properties: >> $ref: /schemas/graph.yaml#/properties/port >> unevaluatedProperties: false >> >> - required: >> - - port@0 >> - - port@1 >> - >> unevaluatedProperties: false >> >> renesas,cmms: >> @@ -807,6 +804,53 @@ allOf: >> - reset-names >> - renesas,vsps >> >> + - if: >> + properties: >> + compatible: >> + contains: >> + enum: >> + - renesas,du-r8a779h0 >> + then: >> + properties: >> + clocks: >> + items: >> + - description: Functional clock >> + >> + clock-names: >> + items: >> + - const: du.0 >> + >> + interrupts: >> + maxItems: 1 >> + >> + resets: >> + maxItems: 1 >> + >> + reset-names: >> + items: >> + - const: du.0 >> + >> + ports: >> + properties: >> + port@0: >> + description: DSI 0 >> + port@1: false >> + port@2: false >> + port@3: false >> + >> + required: >> + - port@0 >> + >> + renesas,vsps: >> + minItems: 1 > > maxItems? The min is already 1. > > Note maxItems is missing in all the other cases too. Since the top-level > definition has no constraints, all the constraints under if/then schemas > need both minItems and maxItems. (Unless there's no max). Thanks. I have sent a v4, with a new patch that adds the maxItems to all SoCs, and also fixed this patch similarly. Tomi
© 2016 - 2025 Red Hat, Inc.