diff mbox series

[v3,1/4] dt-bindings: display: renesas, rzg2l-du: Document RZ/G2UL DU bindings

Message ID 20240805155242.151661-2-biju.das.jz@bp.renesas.com (mailing list archive)
State New, archived
Headers show
Series Add support for RZ/G2UL Display Unit | expand

Commit Message

Biju Das Aug. 5, 2024, 3:52 p.m. UTC
Document DU found in RZ/G2UL SoC. The DU block is identical to RZ/G2L
SoC, but has only DPI interface.

While at it, add missing required property port@1 for RZ/G2L and RZ/V2L
SoCs. Currently there is no user for the DPI interface and hence there
won't be any ABI breakage for adding port@1 as required property for
RZ/G2L and RZ/V2L SoCs.

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
---
v2->v3:
 * Replaced ports->port property for RZ/G2UL as it supports only DPI.
   and retained ports property for RZ/{G2L,V2L} as it supports both DSI
   and DPI output interface.
 * Added missing blank line before example.
 * Dropped tags from Conor and Geert as there are new changes.
v1->v2:
 * Updated commit description related to non ABI breakage.
 * Added Ack from Conor.
---
 .../bindings/display/renesas,rzg2l-du.yaml    | 35 +++++++++++++++++--
 1 file changed, 32 insertions(+), 3 deletions(-)

Comments

Rob Herring (Arm) Aug. 13, 2024, 4:32 p.m. UTC | #1
On Mon, Aug 05, 2024 at 04:52:35PM +0100, Biju Das wrote:
> Document DU found in RZ/G2UL SoC. The DU block is identical to RZ/G2L
> SoC, but has only DPI interface.
> 
> While at it, add missing required property port@1 for RZ/G2L and RZ/V2L
> SoCs. Currently there is no user for the DPI interface and hence there
> won't be any ABI breakage for adding port@1 as required property for
> RZ/G2L and RZ/V2L SoCs.
> 
> Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
> ---
> v2->v3:
>  * Replaced ports->port property for RZ/G2UL as it supports only DPI.
>    and retained ports property for RZ/{G2L,V2L} as it supports both DSI
>    and DPI output interface.

Why? Having port and ports is just a needless complication.

>  * Added missing blank line before example.
>  * Dropped tags from Conor and Geert as there are new changes.
> v1->v2:
>  * Updated commit description related to non ABI breakage.
>  * Added Ack from Conor.
> ---
>  .../bindings/display/renesas,rzg2l-du.yaml    | 35 +++++++++++++++++--
>  1 file changed, 32 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml b/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
> index 08e5b9478051..ca01bf26c4c0 100644
> --- a/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
> +++ b/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
> @@ -18,6 +18,7 @@ properties:
>    compatible:
>      oneOf:
>        - enum:
> +          - renesas,r9a07g043u-du # RZ/G2UL
>            - renesas,r9a07g044-du # RZ/G2{L,LC}
>        - items:
>            - enum:
> @@ -60,8 +61,9 @@ properties:
>          $ref: /schemas/graph.yaml#/properties/port
>          unevaluatedProperties: false
>  
> -    required:
> -      - port@0
> +  port:
> +    $ref: /schemas/graph.yaml#/properties/port
> +    description: Connection to the DU output video port.
>  
>      unevaluatedProperties: false
>  
> @@ -83,11 +85,38 @@ required:
>    - clock-names
>    - resets
>    - power-domains
> -  - ports
>    - renesas,vsps
>  
>  additionalProperties: false
>  
> +allOf:
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: renesas,r9a07g043u-du
> +    then:
> +      properties:
> +        port:
> +          description: DPI

This is equivalent to 'port@0'. IMO, this case should have a 'port@1' 
node so that DPI interface is *always* the same port.

> +
> +      required:
> +        - port
> +    else:
> +      properties:
> +        ports:
> +          properties:
> +            port@0:
> +              description: DSI
> +            port@1:
> +              description: DPI
> +
> +          required:
> +            - port@0
> +            - port@1
> +      required:
> +        - ports
> +
>  examples:
>    # RZ/G2L DU
>    - |
> -- 
> 2.43.0
>
Laurent Pinchart Aug. 13, 2024, 7:39 p.m. UTC | #2
Hi Rob,

On Tue, Aug 13, 2024 at 10:32:20AM -0600, Rob Herring wrote:
> On Mon, Aug 05, 2024 at 04:52:35PM +0100, Biju Das wrote:
> > Document DU found in RZ/G2UL SoC. The DU block is identical to RZ/G2L
> > SoC, but has only DPI interface.
> > 
> > While at it, add missing required property port@1 for RZ/G2L and RZ/V2L
> > SoCs. Currently there is no user for the DPI interface and hence there
> > won't be any ABI breakage for adding port@1 as required property for
> > RZ/G2L and RZ/V2L SoCs.
> > 
> > Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
> > ---
> > v2->v3:
> >  * Replaced ports->port property for RZ/G2UL as it supports only DPI.
> >    and retained ports property for RZ/{G2L,V2L} as it supports both DSI
> >    and DPI output interface.
> 
> Why? Having port and ports is just a needless complication.

I agree that making the ports node mandatory, even when the device has a
single port, will simplify the bindings. In hindsight we should never
have made ports optional, but that can't be changed.

> >  * Added missing blank line before example.
> >  * Dropped tags from Conor and Geert as there are new changes.
> > v1->v2:
> >  * Updated commit description related to non ABI breakage.
> >  * Added Ack from Conor.
> > ---
> >  .../bindings/display/renesas,rzg2l-du.yaml    | 35 +++++++++++++++++--
> >  1 file changed, 32 insertions(+), 3 deletions(-)
> > 
> > diff --git a/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml b/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
> > index 08e5b9478051..ca01bf26c4c0 100644
> > --- a/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
> > +++ b/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
> > @@ -18,6 +18,7 @@ properties:
> >    compatible:
> >      oneOf:
> >        - enum:
> > +          - renesas,r9a07g043u-du # RZ/G2UL
> >            - renesas,r9a07g044-du # RZ/G2{L,LC}
> >        - items:
> >            - enum:
> > @@ -60,8 +61,9 @@ properties:
> >          $ref: /schemas/graph.yaml#/properties/port
> >          unevaluatedProperties: false
> >  
> > -    required:
> > -      - port@0
> > +  port:
> > +    $ref: /schemas/graph.yaml#/properties/port
> > +    description: Connection to the DU output video port.
> >  
> >      unevaluatedProperties: false
> >  
> > @@ -83,11 +85,38 @@ required:
> >    - clock-names
> >    - resets
> >    - power-domains
> > -  - ports
> >    - renesas,vsps
> >  
> >  additionalProperties: false
> >  
> > +allOf:
> > +  - if:
> > +      properties:
> > +        compatible:
> > +          contains:
> > +            const: renesas,r9a07g043u-du
> > +    then:
> > +      properties:
> > +        port:
> > +          description: DPI
> 
> This is equivalent to 'port@0'. IMO, this case should have a 'port@1' 
> node so that DPI interface is *always* the same port.

That's what Biju did in the previous version, and I recommended to
number the ports based on hardware indices, not types. Mapping port
numbers to the hardware documentation makes it more consistent for DT
writers, makes the logic simpler to understand (in my opinion, based on
my experience with the R-Car DU) on the driver side, but most
importantly, type-based numbering wouldn't scale as SoCs could have
multiple ports of the same type (we've seen that happening with R-Car).

> > +
> > +      required:
> > +        - port
> > +    else:
> > +      properties:
> > +        ports:
> > +          properties:
> > +            port@0:
> > +              description: DSI
> > +            port@1:
> > +              description: DPI
> > +
> > +          required:
> > +            - port@0
> > +            - port@1
> > +      required:
> > +        - ports
> > +
> >  examples:
> >    # RZ/G2L DU
> >    - |
Biju Das Aug. 19, 2024, 12:37 p.m. UTC | #3
Hi Laurent and Rob,

Thanks for the feedback

> -----Original Message-----
> From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> Sent: Tuesday, August 13, 2024 8:39 PM
> Subject: Re: [PATCH v3 1/4] dt-bindings: display: renesas,rzg2l-du: Document RZ/G2UL DU bindings
> 
> Hi Rob,
> 
> On Tue, Aug 13, 2024 at 10:32:20AM -0600, Rob Herring wrote:
> > On Mon, Aug 05, 2024 at 04:52:35PM +0100, Biju Das wrote:
> > > Document DU found in RZ/G2UL SoC. The DU block is identical to
> > > RZ/G2L SoC, but has only DPI interface.
> > >
> > > While at it, add missing required property port@1 for RZ/G2L and
> > > RZ/V2L SoCs. Currently there is no user for the DPI interface and
> > > hence there won't be any ABI breakage for adding port@1 as required
> > > property for RZ/G2L and RZ/V2L SoCs.
> > >
> > > Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
> > > ---
> > > v2->v3:
> > >  * Replaced ports->port property for RZ/G2UL as it supports only DPI.
> > >    and retained ports property for RZ/{G2L,V2L} as it supports both DSI
> > >    and DPI output interface.
> >
> > Why? Having port and ports is just a needless complication.
> 
> I agree that making the ports node mandatory, even when the device has a single port, will simplify
> the bindings. In hindsight we should never have made ports optional, but that can't be changed.
> 
> > >  * Added missing blank line before example.
> > >  * Dropped tags from Conor and Geert as there are new changes.
> > > v1->v2:
> > >  * Updated commit description related to non ABI breakage.
> > >  * Added Ack from Conor.
> > > ---
> > >  .../bindings/display/renesas,rzg2l-du.yaml    | 35 +++++++++++++++++--
> > >  1 file changed, 32 insertions(+), 3 deletions(-)
> > >
> > > diff --git
> > > a/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
> > > b/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
> > > index 08e5b9478051..ca01bf26c4c0 100644
> > > ---
> > > a/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
> > > +++ b/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yam
> > > +++ l
> > > @@ -18,6 +18,7 @@ properties:
> > >    compatible:
> > >      oneOf:
> > >        - enum:
> > > +          - renesas,r9a07g043u-du # RZ/G2UL
> > >            - renesas,r9a07g044-du # RZ/G2{L,LC}
> > >        - items:
> > >            - enum:
> > > @@ -60,8 +61,9 @@ properties:
> > >          $ref: /schemas/graph.yaml#/properties/port
> > >          unevaluatedProperties: false
> > >
> > > -    required:
> > > -      - port@0
> > > +  port:
> > > +    $ref: /schemas/graph.yaml#/properties/port
> > > +    description: Connection to the DU output video port.
> > >
> > >      unevaluatedProperties: false
> > >
> > > @@ -83,11 +85,38 @@ required:
> > >    - clock-names
> > >    - resets
> > >    - power-domains
> > > -  - ports
> > >    - renesas,vsps
> > >
> > >  additionalProperties: false
> > >
> > > +allOf:
> > > +  - if:
> > > +      properties:
> > > +        compatible:
> > > +          contains:
> > > +            const: renesas,r9a07g043u-du
> > > +    then:
> > > +      properties:
> > > +        port:
> > > +          description: DPI
> >
> > This is equivalent to 'port@0'. IMO, this case should have a 'port@1'
> > node so that DPI interface is *always* the same port.
> 
> That's what Biju did in the previous version, and I recommended to number the ports based on hardware
> indices, not types. Mapping port numbers to the hardware documentation makes it more consistent for DT
> writers, makes the logic simpler to understand (in my opinion, based on my experience with the R-Car
> DU) on the driver side, but most importantly, type-based numbering wouldn't scale as SoCs could have
> multiple ports of the same type (we've seen that happening with R-Car).

OK, I will send bindings based on hardware indices.

Cheers,
Biju

> 
> > > +
> > > +      required:
> > > +        - port
> > > +    else:
> > > +      properties:
> > > +        ports:
> > > +          properties:
> > > +            port@0:
> > > +              description: DSI
> > > +            port@1:
> > > +              description: DPI
> > > +
> > > +          required:
> > > +            - port@0
> > > +            - port@1
> > > +      required:
> > > +        - ports
> > > +
> > >  examples:
> > >    # RZ/G2L DU
> > >    - |
> 
> --
> Regards,
> 
> Laurent Pinchart
Biju Das Aug. 20, 2024, 6:42 a.m. UTC | #4
Hi Rob and all,

> -----Original Message-----
> From: Biju Das
> Sent: Monday, August 19, 2024 1:37 PM
> Subject: RE: [PATCH v3 1/4] dt-bindings: display: renesas,rzg2l-du: Document RZ/G2UL DU bindings
> 
> Hi Laurent and Rob,
> 
> Thanks for the feedback
> 
> > -----Original Message-----
> > From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> > Sent: Tuesday, August 13, 2024 8:39 PM
> > Subject: Re: [PATCH v3 1/4] dt-bindings: display: renesas,rzg2l-du:
> > Document RZ/G2UL DU bindings
> >
> > Hi Rob,
> >
> > On Tue, Aug 13, 2024 at 10:32:20AM -0600, Rob Herring wrote:
> > > On Mon, Aug 05, 2024 at 04:52:35PM +0100, Biju Das wrote:
> > > > Document DU found in RZ/G2UL SoC. The DU block is identical to
> > > > RZ/G2L SoC, but has only DPI interface.
> > > >
> > > > While at it, add missing required property port@1 for RZ/G2L and
> > > > RZ/V2L SoCs. Currently there is no user for the DPI interface and
> > > > hence there won't be any ABI breakage for adding port@1 as
> > > > required property for RZ/G2L and RZ/V2L SoCs.
> > > >
> > > > Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
> > > > ---
> > > > v2->v3:
> > > >  * Replaced ports->port property for RZ/G2UL as it supports only DPI.
> > > >    and retained ports property for RZ/{G2L,V2L} as it supports both DSI
> > > >    and DPI output interface.
> > >
> > > Why? Having port and ports is just a needless complication.
> >
> > I agree that making the ports node mandatory, even when the device has
> > a single port, will simplify the bindings. In hindsight we should never have made ports optional,
> but that can't be changed.
> >
> > > >  * Added missing blank line before example.
> > > >  * Dropped tags from Conor and Geert as there are new changes.
> > > > v1->v2:
> > > >  * Updated commit description related to non ABI breakage.
> > > >  * Added Ack from Conor.
> > > > ---
> > > >  .../bindings/display/renesas,rzg2l-du.yaml    | 35 +++++++++++++++++--
> > > >  1 file changed, 32 insertions(+), 3 deletions(-)
> > > >
> > > > diff --git
> > > > a/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
> > > > b/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
> > > > index 08e5b9478051..ca01bf26c4c0 100644
> > > > ---
> > > > a/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
> > > > +++ b/Documentation/devicetree/bindings/display/renesas,rzg2l-du.y
> > > > +++ am
> > > > +++ l
> > > > @@ -18,6 +18,7 @@ properties:
> > > >    compatible:
> > > >      oneOf:
> > > >        - enum:
> > > > +          - renesas,r9a07g043u-du # RZ/G2UL
> > > >            - renesas,r9a07g044-du # RZ/G2{L,LC}
> > > >        - items:
> > > >            - enum:
> > > > @@ -60,8 +61,9 @@ properties:
> > > >          $ref: /schemas/graph.yaml#/properties/port
> > > >          unevaluatedProperties: false
> > > >
> > > > -    required:
> > > > -      - port@0
> > > > +  port:
> > > > +    $ref: /schemas/graph.yaml#/properties/port
> > > > +    description: Connection to the DU output video port.
> > > >
> > > >      unevaluatedProperties: false
> > > >
> > > > @@ -83,11 +85,38 @@ required:
> > > >    - clock-names
> > > >    - resets
> > > >    - power-domains
> > > > -  - ports
> > > >    - renesas,vsps
> > > >
> > > >  additionalProperties: false
> > > >
> > > > +allOf:
> > > > +  - if:
> > > > +      properties:
> > > > +        compatible:
> > > > +          contains:
> > > > +            const: renesas,r9a07g043u-du
> > > > +    then:
> > > > +      properties:
> > > > +        port:
> > > > +          description: DPI
> > >
> > > This is equivalent to 'port@0'. IMO, this case should have a 'port@1'
> > > node so that DPI interface is *always* the same port.
> >
> > That's what Biju did in the previous version, and I recommended to
> > number the ports based on hardware indices, not types. Mapping port
> > numbers to the hardware documentation makes it more consistent for DT
> > writers, makes the logic simpler to understand (in my opinion, based
> > on my experience with the R-Car
> > DU) on the driver side, but most importantly, type-based numbering
> > wouldn't scale as SoCs could have multiple ports of the same type (we've seen that happening with R-
> Car).
> 
> OK, I will send bindings based on hardware indices.

I get a warning, if I use ports and port@0 for single port. I don't see this warning if I use ports and port@1

arch/arm64/boot/dts/renesas/r9a07g043u.dtsi:169.9-178.5: Warning (graph_child_address): /soc/display@10890000/ports: graph node has single child node 'port@0', #address-cells/#size-cells are not necessary

Can we fix the dt-schema to getting consistent results for single port usage involving ports?


+  - if:
+      properties:
+        compatible:
+          contains:
+            const: renesas,r9a07g043u-du
+    then:
+      properties:
+        ports:
+          properties:
+            port@0:
+              description: DPI
+
+          required:
+            - port@0

Cheers,
Biju
Laurent Pinchart Aug. 20, 2024, 8:36 a.m. UTC | #5
On Tue, Aug 20, 2024 at 06:42:48AM +0000, Biju Das wrote:
> Hi Rob and all,
> 
> > -----Original Message-----
> > From: Biju Das
> > Sent: Monday, August 19, 2024 1:37 PM
> > Subject: RE: [PATCH v3 1/4] dt-bindings: display: renesas,rzg2l-du: Document RZ/G2UL DU bindings
> > 
> > Hi Laurent and Rob,
> > 
> > Thanks for the feedback
> > 
> > > -----Original Message-----
> > > From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> > > Sent: Tuesday, August 13, 2024 8:39 PM
> > > Subject: Re: [PATCH v3 1/4] dt-bindings: display: renesas,rzg2l-du:
> > > Document RZ/G2UL DU bindings
> > >
> > > Hi Rob,
> > >
> > > On Tue, Aug 13, 2024 at 10:32:20AM -0600, Rob Herring wrote:
> > > > On Mon, Aug 05, 2024 at 04:52:35PM +0100, Biju Das wrote:
> > > > > Document DU found in RZ/G2UL SoC. The DU block is identical to
> > > > > RZ/G2L SoC, but has only DPI interface.
> > > > >
> > > > > While at it, add missing required property port@1 for RZ/G2L and
> > > > > RZ/V2L SoCs. Currently there is no user for the DPI interface and
> > > > > hence there won't be any ABI breakage for adding port@1 as
> > > > > required property for RZ/G2L and RZ/V2L SoCs.
> > > > >
> > > > > Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
> > > > > ---
> > > > > v2->v3:
> > > > >  * Replaced ports->port property for RZ/G2UL as it supports only DPI.
> > > > >    and retained ports property for RZ/{G2L,V2L} as it supports both DSI
> > > > >    and DPI output interface.
> > > >
> > > > Why? Having port and ports is just a needless complication.
> > >
> > > I agree that making the ports node mandatory, even when the device has
> > > a single port, will simplify the bindings. In hindsight we should never have made ports optional,
> > but that can't be changed.
> > >
> > > > >  * Added missing blank line before example.
> > > > >  * Dropped tags from Conor and Geert as there are new changes.
> > > > > v1->v2:
> > > > >  * Updated commit description related to non ABI breakage.
> > > > >  * Added Ack from Conor.
> > > > > ---
> > > > >  .../bindings/display/renesas,rzg2l-du.yaml    | 35 +++++++++++++++++--
> > > > >  1 file changed, 32 insertions(+), 3 deletions(-)
> > > > >
> > > > > diff --git
> > > > > a/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
> > > > > b/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
> > > > > index 08e5b9478051..ca01bf26c4c0 100644
> > > > > ---
> > > > > a/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
> > > > > +++ b/Documentation/devicetree/bindings/display/renesas,rzg2l-du.y
> > > > > +++ am
> > > > > +++ l
> > > > > @@ -18,6 +18,7 @@ properties:
> > > > >    compatible:
> > > > >      oneOf:
> > > > >        - enum:
> > > > > +          - renesas,r9a07g043u-du # RZ/G2UL
> > > > >            - renesas,r9a07g044-du # RZ/G2{L,LC}
> > > > >        - items:
> > > > >            - enum:
> > > > > @@ -60,8 +61,9 @@ properties:
> > > > >          $ref: /schemas/graph.yaml#/properties/port
> > > > >          unevaluatedProperties: false
> > > > >
> > > > > -    required:
> > > > > -      - port@0
> > > > > +  port:
> > > > > +    $ref: /schemas/graph.yaml#/properties/port
> > > > > +    description: Connection to the DU output video port.
> > > > >
> > > > >      unevaluatedProperties: false
> > > > >
> > > > > @@ -83,11 +85,38 @@ required:
> > > > >    - clock-names
> > > > >    - resets
> > > > >    - power-domains
> > > > > -  - ports
> > > > >    - renesas,vsps
> > > > >
> > > > >  additionalProperties: false
> > > > >
> > > > > +allOf:
> > > > > +  - if:
> > > > > +      properties:
> > > > > +        compatible:
> > > > > +          contains:
> > > > > +            const: renesas,r9a07g043u-du
> > > > > +    then:
> > > > > +      properties:
> > > > > +        port:
> > > > > +          description: DPI
> > > >
> > > > This is equivalent to 'port@0'. IMO, this case should have a 'port@1'
> > > > node so that DPI interface is *always* the same port.
> > >
> > > That's what Biju did in the previous version, and I recommended to
> > > number the ports based on hardware indices, not types. Mapping port
> > > numbers to the hardware documentation makes it more consistent for DT
> > > writers, makes the logic simpler to understand (in my opinion, based
> > > on my experience with the R-Car
> > > DU) on the driver side, but most importantly, type-based numbering
> > > wouldn't scale as SoCs could have multiple ports of the same type
> > > (we've seen that happening with R-Car).
> > 
> > OK, I will send bindings based on hardware indices.
> 
> I get a warning, if I use ports and port@0 for single port. I don't
> see this warning if I use ports and port@1
> 
> arch/arm64/boot/dts/renesas/r9a07g043u.dtsi:169.9-178.5: Warning (graph_child_address): /soc/display@10890000/ports: graph node has single child node 'port@0', #address-cells/#size-cells are not necessary
> 
> Can we fix the dt-schema to getting consistent results for single port
> usage involving ports?

I would like that too.

> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: renesas,r9a07g043u-du
> +    then:
> +      properties:
> +        ports:
> +          properties:
> +            port@0:
> +              description: DPI
> +
> +          required:
> +            - port@0
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml b/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
index 08e5b9478051..ca01bf26c4c0 100644
--- a/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
+++ b/Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
@@ -18,6 +18,7 @@  properties:
   compatible:
     oneOf:
       - enum:
+          - renesas,r9a07g043u-du # RZ/G2UL
           - renesas,r9a07g044-du # RZ/G2{L,LC}
       - items:
           - enum:
@@ -60,8 +61,9 @@  properties:
         $ref: /schemas/graph.yaml#/properties/port
         unevaluatedProperties: false
 
-    required:
-      - port@0
+  port:
+    $ref: /schemas/graph.yaml#/properties/port
+    description: Connection to the DU output video port.
 
     unevaluatedProperties: false
 
@@ -83,11 +85,38 @@  required:
   - clock-names
   - resets
   - power-domains
-  - ports
   - renesas,vsps
 
 additionalProperties: false
 
+allOf:
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: renesas,r9a07g043u-du
+    then:
+      properties:
+        port:
+          description: DPI
+
+      required:
+        - port
+    else:
+      properties:
+        ports:
+          properties:
+            port@0:
+              description: DSI
+            port@1:
+              description: DPI
+
+          required:
+            - port@0
+            - port@1
+      required:
+        - ports
+
 examples:
   # RZ/G2L DU
   - |