Message ID | 20211203095744.1717706-2-v.v.mitrofanov@yadro.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | riscv: dts: fu740: Add PDMA node | expand |
On 3 Dec 2021, at 09:57, v.v.mitrofanov <v.v.mitrofanov@yadro.com> wrote: > > HiFive unmatched supports PDMA but is not implemented in DT. > > Add the PDMA node in SiFive FU740 soc-specific DT file. > > Signed-off-by: v.v.mitrofanov <v.v.mitrofanov@yadro.com> > --- > arch/riscv/boot/dts/sifive/fu740-c000.dtsi | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/arch/riscv/boot/dts/sifive/fu740-c000.dtsi b/arch/riscv/boot/dts/sifive/fu740-c000.dtsi > index 64ff2e758336..833fb4f4376b 100644 > --- a/arch/riscv/boot/dts/sifive/fu740-c000.dtsi > +++ b/arch/riscv/boot/dts/sifive/fu740-c000.dtsi > @@ -164,6 +164,13 @@ prci: clock-controller@10000000 { > #clock-cells = <1>; > #reset-cells = <1>; > }; > + dma: dma@3000000 { > + compatible = "sifive,fu540-c000-pdma"; I know the PLIC and CGEM devices abuse fu540-specific compatible strings (which it would be great to fix; FreeBSD is already prepared for that, though it’d also be nice to introduce a generic compatible string for the SiFive CGEM rather than having just a SoC-specific one given the FU540 and FU740 have the same interface), but let’s not make things worse. This should say fu740, and there should also be a generic SiFive PDMA compatible so we don’t need to add a new compatible to an otherwise-unchanged driver every time a new SiFive SoC appears. Jess
diff --git a/arch/riscv/boot/dts/sifive/fu740-c000.dtsi b/arch/riscv/boot/dts/sifive/fu740-c000.dtsi index 64ff2e758336..833fb4f4376b 100644 --- a/arch/riscv/boot/dts/sifive/fu740-c000.dtsi +++ b/arch/riscv/boot/dts/sifive/fu740-c000.dtsi @@ -164,6 +164,13 @@ prci: clock-controller@10000000 { #clock-cells = <1>; #reset-cells = <1>; }; + dma: dma@3000000 { + compatible = "sifive,fu540-c000-pdma"; + reg = <0x0 0x3000000 0x0 0x8000>; + interrupt-parent = <&plic0>; + interrupts = <11 12 13 14 15 16 17 18>; + #dma-cells = <1>; + }; uart0: serial@10010000 { compatible = "sifive,fu740-c000-uart", "sifive,uart0"; reg = <0x0 0x10010000 0x0 0x1000>;
HiFive unmatched supports PDMA but is not implemented in DT. Add the PDMA node in SiFive FU740 soc-specific DT file. Signed-off-by: v.v.mitrofanov <v.v.mitrofanov@yadro.com> --- arch/riscv/boot/dts/sifive/fu740-c000.dtsi | 7 +++++++ 1 file changed, 7 insertions(+)