diff mbox series

[v2,1/4] dt-bindings: renesas,rcar-dmac: Add r8a779a0 support

Message ID 20210125142431.1049668-2-geert+renesas@glider.be (mailing list archive)
State Superseded
Delegated to: Geert Uytterhoeven
Headers show
Series dmaengine: rcar-dmac: Add support for R-Car V3U | expand

Commit Message

Geert Uytterhoeven Jan. 25, 2021, 2:24 p.m. UTC
Document the compatible value for the Direct Memory Access Controller
blocks in the Renesas R-Car V3U (R8A779A0) SoC.

The most visible difference with DMAC blocks on other R-Car SoCs is the
move of the per-channel registers to a separate register block.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Rob Herring <robh@kernel.org>
---
v2:
  - Add Reviewed-by.
---
 .../bindings/dma/renesas,rcar-dmac.yaml       | 76 ++++++++++++-------
 1 file changed, 48 insertions(+), 28 deletions(-)

Comments

Laurent Pinchart Jan. 26, 2021, 9:48 p.m. UTC | #1
Hi Geert,

Thank you for the patch.

On Mon, Jan 25, 2021 at 03:24:28PM +0100, Geert Uytterhoeven wrote:
> Document the compatible value for the Direct Memory Access Controller
> blocks in the Renesas R-Car V3U (R8A779A0) SoC.
> 
> The most visible difference with DMAC blocks on other R-Car SoCs is the
> move of the per-channel registers to a separate register block.
> 
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> Reviewed-by: Rob Herring <robh@kernel.org>

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

> ---
> v2:
>   - Add Reviewed-by.
> ---
>  .../bindings/dma/renesas,rcar-dmac.yaml       | 76 ++++++++++++-------
>  1 file changed, 48 insertions(+), 28 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.yaml b/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.yaml
> index c07eb6f2fc8d2f12..7f2a54bc732d3a19 100644
> --- a/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.yaml
> +++ b/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.yaml
> @@ -14,34 +14,37 @@ allOf:
>  
>  properties:
>    compatible:
> -    items:
> -      - enum:
> -          - renesas,dmac-r8a7742  # RZ/G1H
> -          - renesas,dmac-r8a7743  # RZ/G1M
> -          - renesas,dmac-r8a7744  # RZ/G1N
> -          - renesas,dmac-r8a7745  # RZ/G1E
> -          - renesas,dmac-r8a77470 # RZ/G1C
> -          - renesas,dmac-r8a774a1 # RZ/G2M
> -          - renesas,dmac-r8a774b1 # RZ/G2N
> -          - renesas,dmac-r8a774c0 # RZ/G2E
> -          - renesas,dmac-r8a774e1 # RZ/G2H
> -          - renesas,dmac-r8a7790  # R-Car H2
> -          - renesas,dmac-r8a7791  # R-Car M2-W
> -          - renesas,dmac-r8a7792  # R-Car V2H
> -          - renesas,dmac-r8a7793  # R-Car M2-N
> -          - renesas,dmac-r8a7794  # R-Car E2
> -          - renesas,dmac-r8a7795  # R-Car H3
> -          - renesas,dmac-r8a7796  # R-Car M3-W
> -          - renesas,dmac-r8a77961 # R-Car M3-W+
> -          - renesas,dmac-r8a77965 # R-Car M3-N
> -          - renesas,dmac-r8a77970 # R-Car V3M
> -          - renesas,dmac-r8a77980 # R-Car V3H
> -          - renesas,dmac-r8a77990 # R-Car E3
> -          - renesas,dmac-r8a77995 # R-Car D3
> -      - const: renesas,rcar-dmac
> -
> -  reg:
> -    maxItems: 1
> +    oneOf:
> +      - items:
> +          - enum:
> +              - renesas,dmac-r8a7742  # RZ/G1H
> +              - renesas,dmac-r8a7743  # RZ/G1M
> +              - renesas,dmac-r8a7744  # RZ/G1N
> +              - renesas,dmac-r8a7745  # RZ/G1E
> +              - renesas,dmac-r8a77470 # RZ/G1C
> +              - renesas,dmac-r8a774a1 # RZ/G2M
> +              - renesas,dmac-r8a774b1 # RZ/G2N
> +              - renesas,dmac-r8a774c0 # RZ/G2E
> +              - renesas,dmac-r8a774e1 # RZ/G2H
> +              - renesas,dmac-r8a7790  # R-Car H2
> +              - renesas,dmac-r8a7791  # R-Car M2-W
> +              - renesas,dmac-r8a7792  # R-Car V2H
> +              - renesas,dmac-r8a7793  # R-Car M2-N
> +              - renesas,dmac-r8a7794  # R-Car E2
> +              - renesas,dmac-r8a7795  # R-Car H3
> +              - renesas,dmac-r8a7796  # R-Car M3-W
> +              - renesas,dmac-r8a77961 # R-Car M3-W+
> +              - renesas,dmac-r8a77965 # R-Car M3-N
> +              - renesas,dmac-r8a77970 # R-Car V3M
> +              - renesas,dmac-r8a77980 # R-Car V3H
> +              - renesas,dmac-r8a77990 # R-Car E3
> +              - renesas,dmac-r8a77995 # R-Car D3
> +          - const: renesas,rcar-dmac
> +
> +      - items:
> +          - const: renesas,dmac-r8a779a0 # R-Car V3U
> +
> +  reg: true
>  
>    interrupts:
>      minItems: 9
> @@ -110,6 +113,23 @@ required:
>    - power-domains
>    - resets
>  
> +if:
> +  properties:
> +    compatible:
> +      contains:
> +        enum:
> +          - renesas,dmac-r8a779a0
> +then:
> +  properties:
> +    reg:
> +      items:
> +        - description: Base register block
> +        - description: Channel register block
> +else:
> +  properties:
> +    reg:
> +      maxItems: 1
> +
>  additionalProperties: false
>  
>  examples:
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.yaml b/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.yaml
index c07eb6f2fc8d2f12..7f2a54bc732d3a19 100644
--- a/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.yaml
+++ b/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.yaml
@@ -14,34 +14,37 @@  allOf:
 
 properties:
   compatible:
-    items:
-      - enum:
-          - renesas,dmac-r8a7742  # RZ/G1H
-          - renesas,dmac-r8a7743  # RZ/G1M
-          - renesas,dmac-r8a7744  # RZ/G1N
-          - renesas,dmac-r8a7745  # RZ/G1E
-          - renesas,dmac-r8a77470 # RZ/G1C
-          - renesas,dmac-r8a774a1 # RZ/G2M
-          - renesas,dmac-r8a774b1 # RZ/G2N
-          - renesas,dmac-r8a774c0 # RZ/G2E
-          - renesas,dmac-r8a774e1 # RZ/G2H
-          - renesas,dmac-r8a7790  # R-Car H2
-          - renesas,dmac-r8a7791  # R-Car M2-W
-          - renesas,dmac-r8a7792  # R-Car V2H
-          - renesas,dmac-r8a7793  # R-Car M2-N
-          - renesas,dmac-r8a7794  # R-Car E2
-          - renesas,dmac-r8a7795  # R-Car H3
-          - renesas,dmac-r8a7796  # R-Car M3-W
-          - renesas,dmac-r8a77961 # R-Car M3-W+
-          - renesas,dmac-r8a77965 # R-Car M3-N
-          - renesas,dmac-r8a77970 # R-Car V3M
-          - renesas,dmac-r8a77980 # R-Car V3H
-          - renesas,dmac-r8a77990 # R-Car E3
-          - renesas,dmac-r8a77995 # R-Car D3
-      - const: renesas,rcar-dmac
-
-  reg:
-    maxItems: 1
+    oneOf:
+      - items:
+          - enum:
+              - renesas,dmac-r8a7742  # RZ/G1H
+              - renesas,dmac-r8a7743  # RZ/G1M
+              - renesas,dmac-r8a7744  # RZ/G1N
+              - renesas,dmac-r8a7745  # RZ/G1E
+              - renesas,dmac-r8a77470 # RZ/G1C
+              - renesas,dmac-r8a774a1 # RZ/G2M
+              - renesas,dmac-r8a774b1 # RZ/G2N
+              - renesas,dmac-r8a774c0 # RZ/G2E
+              - renesas,dmac-r8a774e1 # RZ/G2H
+              - renesas,dmac-r8a7790  # R-Car H2
+              - renesas,dmac-r8a7791  # R-Car M2-W
+              - renesas,dmac-r8a7792  # R-Car V2H
+              - renesas,dmac-r8a7793  # R-Car M2-N
+              - renesas,dmac-r8a7794  # R-Car E2
+              - renesas,dmac-r8a7795  # R-Car H3
+              - renesas,dmac-r8a7796  # R-Car M3-W
+              - renesas,dmac-r8a77961 # R-Car M3-W+
+              - renesas,dmac-r8a77965 # R-Car M3-N
+              - renesas,dmac-r8a77970 # R-Car V3M
+              - renesas,dmac-r8a77980 # R-Car V3H
+              - renesas,dmac-r8a77990 # R-Car E3
+              - renesas,dmac-r8a77995 # R-Car D3
+          - const: renesas,rcar-dmac
+
+      - items:
+          - const: renesas,dmac-r8a779a0 # R-Car V3U
+
+  reg: true
 
   interrupts:
     minItems: 9
@@ -110,6 +113,23 @@  required:
   - power-domains
   - resets
 
+if:
+  properties:
+    compatible:
+      contains:
+        enum:
+          - renesas,dmac-r8a779a0
+then:
+  properties:
+    reg:
+      items:
+        - description: Base register block
+        - description: Channel register block
+else:
+  properties:
+    reg:
+      maxItems: 1
+
 additionalProperties: false
 
 examples: