mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 23:42:43 +00:00
36 lines
1.4 KiB
Diff
36 lines
1.4 KiB
Diff
|
From 4c1a665b465fa0e9d3369a467fc563ec812a47ce Mon Sep 17 00:00:00 2001
|
||
|
From: Jonathan Bell <jonathan@raspberrypi.com>
|
||
|
Date: Fri, 19 Jul 2024 13:07:59 +0100
|
||
|
Subject: [PATCH 1192/1215] dts: rp1: hobble DMA AXI burst lengths
|
||
|
|
||
|
Channels 1-2 have a statically configured maximum MSIZE of 8, and
|
||
|
channels 3-8 have MSIZE set to 4. The DMAC "helpfully" silently
|
||
|
truncates bursts to the hardware supported maximum, so any FIFO read
|
||
|
operation with an oversized burst threshold will leave a residue of
|
||
|
threshold minus MSIZE rows.
|
||
|
|
||
|
As channel allocation is dynamic, this means every client needs to use a
|
||
|
maximum of 4 for burst length.
|
||
|
|
||
|
AXI AWLEN/ARLEN constraints aren't strictly related to MSIZE, except
|
||
|
that bursts won't be issued that are longer than MSIZE beats. Therefore,
|
||
|
it's a useful proxy to tell clients of the DMAC the hardware
|
||
|
limitations.
|
||
|
|
||
|
Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||
|
---
|
||
|
arch/arm64/boot/dts/broadcom/rp1.dtsi | 2 +-
|
||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||
|
|
||
|
--- a/arch/arm64/boot/dts/broadcom/rp1.dtsi
|
||
|
+++ b/arch/arm64/boot/dts/broadcom/rp1.dtsi
|
||
|
@@ -1064,7 +1064,7 @@
|
||
|
snps,data-width = <4>; // (8 << 4) == 128 bits
|
||
|
snps,block-size = <0x40000 0x40000 0x40000 0x40000 0x40000 0x40000 0x40000 0x40000>;
|
||
|
snps,priority = <0 1 2 3 4 5 6 7>;
|
||
|
- snps,axi-max-burst-len = <8>;
|
||
|
+ snps,axi-max-burst-len = <4>;
|
||
|
status = "disabled";
|
||
|
};
|
||
|
|