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

Palmer Dabbelt palmer at dabbelt.com
Thu Mar 3 12:43:04 PST 2022


On Sun, 06 Feb 2022 22:30:38 PST (-0800), zong.li at 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 at sifive.com>
> Suggested-by: Palmer Dabbelt <palmer at 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 at 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 at rivosinc.com>
Acked-by: Palmer Dabbelt <palmer at rivosinc.com>



More information about the linux-riscv mailing list