Skip to contentSkip to conversation

ARM: dts: am43xx: fix edma memcpy channel allocation

PATCH New Tero Kristo 3 participants 3 messages Mar 14, 2016 – Mar 30, 2016 Device tree bindings

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ARM: dts: am43xx: fix edma memcpy channel allocation

EDMA was allocating DMA channels 32 and 33 for memcpy usage, out of which channel 33 is actually used by DES crypto engine. This bad allocation of the channel causes a crash in the DES crypto engine, as the channel gets configured for memcpy usage instead of hardware <-> memory DMA.

Fixed by allocating DMA channels 58 and 59 for memcpy usage (I2C0 RX/TX), which are not used by anybody.

---
 arch/arm/boot/dts/am4372.dtsi |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm/boot/dts/am4372.dtsi +1 -1
index 92068fb..cdd3d78 100644
@@ -207,7 +207,7 @@
 			ti,tptcs = <&edma_tptc0 7>, <&edma_tptc1 5>,
 				   <&edma_tptc2 0>;
 
-			ti,edma-memcpy-channels = <32 33>;
+			ti,edma-memcpy-channels = <58 59>;
 		};
 
 		edma_tptc0: tptc at 49800000 {
Signature · 1 line
1.7.9.5
#1 lore raw

PATCH 1/1 ARM: dts: am43xx: fix edma memcpy channel allocation

Quoted 7 lines · Tero Kristo

EDMA was allocating DMA channels 32 and 33 for memcpy usage, out of which channel 33 is actually used by DES crypto engine. This bad allocation of the channel causes a crash in the DES crypto engine, as the channel gets configured for memcpy usage instead of hardware <-> memory DMA.

Fixed by allocating DMA channels 58 and 59 for memcpy usage (I2C0 RX/TX), which are not used by anybody.

Thanks and regards,
Lokesh

Quoted 21 lines
---
 arch/arm/boot/dts/am4372.dtsi |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm/boot/dts/am4372.dtsi +1 -1
index 92068fb..cdd3d78 100644
@@ -207,7 +207,7 @@
 			ti,tptcs = <&edma_tptc0 7>, <&edma_tptc1 5>,
 				   <&edma_tptc2 0>;
 
-			ti,edma-memcpy-channels = <32 33>;
+			ti,edma-memcpy-channels = <58 59>;
 		};
 
 		edma_tptc0: tptc at 49800000 {
#2 lore raw

PATCH 1/1 ARM: dts: am43xx: fix edma memcpy channel allocation

In reply to Tero Kristo
Quoted 7 lines · Tero Kristo

EDMA was allocating DMA channels 32 and 33 for memcpy usage, out of which channel 33 is actually used by DES crypto engine. This bad allocation of the channel causes a crash in the DES crypto engine, as the channel gets configured for memcpy usage instead of hardware <-> memory DMA.

Fixed by allocating DMA channels 58 and 59 for memcpy usage (I2C0 RX/TX), which are not used by anybody.

Thanks applying into omap-for-v4.6/fixes with Cc stable v4.4+.

Tony