[PATCH v2 2/3] arm64: dts: exynos: Add PDMA node for Exynos850
Sam Protsenko
semen.protsenko at linaro.org
Wed Jan 24 17:38:57 PST 2024
Enable PDMA node. It's needed for multiple peripheral modules, like SPI.
Use "arm,pl330-broken-no-flushp" quirk, as otherwise SPI transfers in
DMA mode often fail with error like this:
I/O Error: rx-1 tx-1 rx-f tx-f len-786 dma-1 res-(-5)
Signed-off-by: Sam Protsenko <semen.protsenko at linaro.org>
---
Changes in v2:
- Ordered PDMA node by unit address
arch/arm64/boot/dts/exynos/exynos850.dtsi | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/arch/arm64/boot/dts/exynos/exynos850.dtsi b/arch/arm64/boot/dts/exynos/exynos850.dtsi
index da3f4a791e68..618bc674896e 100644
--- a/arch/arm64/boot/dts/exynos/exynos850.dtsi
+++ b/arch/arm64/boot/dts/exynos/exynos850.dtsi
@@ -184,6 +184,16 @@ timer at 10040000 {
clock-names = "fin_pll", "mct";
};
+ pdma0: dma-controller at 120c0000 {
+ compatible = "arm,pl330", "arm,primecell";
+ reg = <0x120c0000 0x1000>;
+ interrupts = <GIC_SPI 479 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&cmu_core CLK_GOUT_PDMA_CORE_ACLK>;
+ clock-names = "apb_pclk";
+ arm,pl330-broken-no-flushp;
+ #dma-cells = <1>;
+ };
+
gic: interrupt-controller at 12a01000 {
compatible = "arm,gic-400";
#interrupt-cells = <3>;
--
2.39.2
More information about the linux-arm-kernel
mailing list