diff mbox series

[1/1] riscv: dts: fu740: Add PDMA node

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

Commit Message

Viacheslav Mitrofanov Dec. 3, 2021, 9:57 a.m. UTC
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(+)

Comments

Jessica Clarke Dec. 3, 2021, 10:50 a.m. UTC | #1
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 mbox series

Patch

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>;