[U-Boot] [PATCH] fsl_dma: fix support for 83xx DMA engine

Ira W. Snyder iws at ovro.caltech.edu
Tue Mar 1 23:40:55 CET 2011


Commit 359ec4931944adb885882deb9b781e4095eabc94 broke support for the
Freescale DMA engine on the 83xx parts. This is due to using registers
which do not exist on 83xx. Remove the attribute register accesses from
the 83xx build.

Signed-off-by: Ira W. Snyder <iws at ovro.caltech.edu>
Cc: York Sun <yorksun at freescale.com>
Cc: Peter Tyser <ptyser at xes-inc.com>
Cc: Kumar Gala <galak at kernel.crashing.org>
---
 drivers/dma/fsl_dma.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/drivers/dma/fsl_dma.c b/drivers/dma/fsl_dma.c
index 09c18c1..30785ec 100644
--- a/drivers/dma/fsl_dma.c
+++ b/drivers/dma/fsl_dma.c
@@ -116,10 +116,12 @@ int dmacpy(phys_addr_t dest, phys_addr_t src, phys_size_t count) {
 
 		out_dma32(&dma->dar, (u32) (dest & 0xFFFFFFFF));
 		out_dma32(&dma->sar, (u32) (src & 0xFFFFFFFF));
+#if !defined(CONFIG_MPC83xx)
 		out_dma32(&dma->satr,
 			in_dma32(&dma->satr) | (u32)((u64)src >> 32));
 		out_dma32(&dma->datr,
 			in_dma32(&dma->datr) | (u32)((u64)dest >> 32));
+#endif
 		out_dma32(&dma->bcr, xfer_size);
 		dma_sync();
 
-- 
1.7.3.4



More information about the U-Boot mailing list