Message ID | 12cff3b68de1bd02a8915bd70999bb4edafaca1b.1646383150.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 |
On 04/03/2022 09:42, 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> > Reviewed-by: Rob Herring <robh@kernel.org> > Reviewed-by: Palmer Dabbelt <palmer@rivosinc.com> > Acked-by: Palmer Dabbelt <palmer@rivosinc.com> > --- > .../bindings/dma/sifive,fu540-c000-pdma.yaml | 19 +++++++++++++++++-- > 1 file changed, 17 insertions(+), 2 deletions(-) > Can you add subystem/driver prefix to the subject? In current form it looks generic, but it is actually specific, so: dt-bindings: dma-engine: sifive,fu540: Best regards, Krzysztof
On Fri, Mar 4, 2022 at 5:09 PM Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com> wrote: > > On 04/03/2022 09:42, 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> > > Reviewed-by: Rob Herring <robh@kernel.org> > > Reviewed-by: Palmer Dabbelt <palmer@rivosinc.com> > > Acked-by: Palmer Dabbelt <palmer@rivosinc.com> > > --- > > .../bindings/dma/sifive,fu540-c000-pdma.yaml | 19 +++++++++++++++++-- > > 1 file changed, 17 insertions(+), 2 deletions(-) > > > > Can you add subystem/driver prefix to the subject? In current form it > looks generic, but it is actually specific, so: > > dt-bindings: dma-engine: sifive,fu540: > Thanks for your correction, I will send the next version to change it. > Best regards, > Krzysztof
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>; };