diff mbox series

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

Message ID 20210125142431.1049668-2-geert+renesas@glider.be
State Superseded
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:


-- 
Regards,

Laurent Pinchart
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: