Message ID | 20240120012948.8836-7-semen.protsenko@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | arm64: exynos: Enable SPI for Exynos850 | expand |
On 20/01/2024 02:29, Sam Protsenko wrote: > 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@linaro.org> > --- > 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..cd0a452cd6b4 100644 > --- a/arch/arm64/boot/dts/exynos/exynos850.dtsi > +++ b/arch/arm64/boot/dts/exynos/exynos850.dtsi > @@ -197,6 +197,16 @@ gic: interrupt-controller@12a01000 { > IRQ_TYPE_LEVEL_HIGH)>; > }; > > + pdma0: dma-controller@120c0000 { Looks misordered. Keep unit-address order. > + 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"; Best regards, Krzysztof
diff --git a/arch/arm64/boot/dts/exynos/exynos850.dtsi b/arch/arm64/boot/dts/exynos/exynos850.dtsi index da3f4a791e68..cd0a452cd6b4 100644 --- a/arch/arm64/boot/dts/exynos/exynos850.dtsi +++ b/arch/arm64/boot/dts/exynos/exynos850.dtsi @@ -197,6 +197,16 @@ gic: interrupt-controller@12a01000 { IRQ_TYPE_LEVEL_HIGH)>; }; + pdma0: dma-controller@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>; + }; + pmu_system_controller: system-controller@11860000 { compatible = "samsung,exynos850-pmu", "syscon"; reg = <0x11860000 0x10000>;
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@linaro.org> --- arch/arm64/boot/dts/exynos/exynos850.dtsi | 10 ++++++++++ 1 file changed, 10 insertions(+)