diff mbox series

[v5,1/3] dt-bindings: Add dma-channels property and modify compatible

Message ID 30430019105af445d52b7a48331c106f8e6d6816.1644215230.git.zong.li@sifive.com (mailing list archive)
State New, archived
Headers show
Series Determine the number of DMA channels by 'dma-channels' property | expand

Commit Message

Zong Li Feb. 7, 2022, 6:30 a.m. UTC
Add dma-channels property, then we can determine how many channels there
by device tree, rather than statically defining it in PDMA driver.
In addition, we also modify the compatible for PDMA versioning scheme.

Signed-off-by: Zong Li <zong.li@sifive.com>
Suggested-by: Palmer Dabbelt <palmer@rivosinc.com>
---
 .../bindings/dma/sifive,fu540-c000-pdma.yaml  | 19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)

Comments

Rob Herring (Arm) Feb. 7, 2022, 8:09 p.m. UTC | #1
On Mon, 07 Feb 2022 14:30:38 +0800, Zong Li wrote:
> Add dma-channels property, then we can determine how many channels there
> by device tree, rather than statically defining it in PDMA driver.
> In addition, we also modify the compatible for PDMA versioning scheme.
> 
> Signed-off-by: Zong Li <zong.li@sifive.com>
> Suggested-by: Palmer Dabbelt <palmer@rivosinc.com>
> ---
>  .../bindings/dma/sifive,fu540-c000-pdma.yaml  | 19 +++++++++++++++++--
>  1 file changed, 17 insertions(+), 2 deletions(-)
> 

Reviewed-by: Rob Herring <robh@kernel.org>
Palmer Dabbelt March 3, 2022, 8:43 p.m. UTC | #2
On Sun, 06 Feb 2022 22:30:38 PST (-0800), zong.li@sifive.com wrote:
> Add dma-channels property, then we can determine how many channels there
> by device tree, rather than statically defining it in PDMA driver.
> In addition, we also modify the compatible for PDMA versioning scheme.
>
> Signed-off-by: Zong Li <zong.li@sifive.com>
> Suggested-by: Palmer Dabbelt <palmer@rivosinc.com>
> ---
>  .../bindings/dma/sifive,fu540-c000-pdma.yaml  | 19 +++++++++++++++++--
>  1 file changed, 17 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml b/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml
> index 75ad898c59bc..92f410f54d72 100644
> --- a/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml
> +++ b/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml
> @@ -25,7 +25,15 @@ description: |
>  properties:
>    compatible:
>      items:
> -      - const: sifive,fu540-c000-pdma
> +      - enum:
> +          - sifive,fu540-c000-pdma
> +      - const: sifive,pdma0
> +    description:
> +      Should be "sifive,<chip>-pdma" and "sifive,pdma<version>".
> +      Supported compatible strings are -
> +      "sifive,fu540-c000-pdma" for the SiFive PDMA v0 as integrated onto the
> +      SiFive FU540 chip resp and "sifive,pdma0" for the SiFive PDMA v0 IP block
> +      with no chip integration tweaks.
>
>    reg:
>      maxItems: 1
> @@ -34,6 +42,12 @@ properties:
>      minItems: 1
>      maxItems: 8
>
> +  dma-channels:
> +    description: For backwards-compatibility, the default value is 4
> +    minimum: 1
> +    maximum: 4
> +    default: 4
> +
>    '#dma-cells':
>      const: 1
>
> @@ -48,8 +62,9 @@ additionalProperties: false
>  examples:
>    - |
>      dma@3000000 {
> -      compatible = "sifive,fu540-c000-pdma";
> +      compatible = "sifive,fu540-c000-pdma", "sifive,pdma0";
>        reg = <0x3000000 0x8000>;
> +      dma-channels = <4>;
>        interrupts = <23>, <24>, <25>, <26>, <27>, <28>, <29>, <30>;
>        #dma-cells = <1>;
>      };

Reviewed-by: Palmer Dabbelt <palmer@rivosinc.com>
Acked-by: Palmer Dabbelt <palmer@rivosinc.com>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml b/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml
index 75ad898c59bc..92f410f54d72 100644
--- a/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml
+++ b/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml
@@ -25,7 +25,15 @@  description: |
 properties:
   compatible:
     items:
-      - const: sifive,fu540-c000-pdma
+      - enum:
+          - sifive,fu540-c000-pdma
+      - const: sifive,pdma0
+    description:
+      Should be "sifive,<chip>-pdma" and "sifive,pdma<version>".
+      Supported compatible strings are -
+      "sifive,fu540-c000-pdma" for the SiFive PDMA v0 as integrated onto the
+      SiFive FU540 chip resp and "sifive,pdma0" for the SiFive PDMA v0 IP block
+      with no chip integration tweaks.
 
   reg:
     maxItems: 1
@@ -34,6 +42,12 @@  properties:
     minItems: 1
     maxItems: 8
 
+  dma-channels:
+    description: For backwards-compatibility, the default value is 4
+    minimum: 1
+    maximum: 4
+    default: 4
+
   '#dma-cells':
     const: 1
 
@@ -48,8 +62,9 @@  additionalProperties: false
 examples:
   - |
     dma@3000000 {
-      compatible = "sifive,fu540-c000-pdma";
+      compatible = "sifive,fu540-c000-pdma", "sifive,pdma0";
       reg = <0x3000000 0x8000>;
+      dma-channels = <4>;
       interrupts = <23>, <24>, <25>, <26>, <27>, <28>, <29>, <30>;
       #dma-cells = <1>;
     };