summaryrefslogtreecommitdiff
path: root/drivers/dma/fsl_dma.c
diff options
context:
space:
mode:
authorIra W. Snyder <iws@ovro.caltech.edu>2011-03-01 14:40:55 -0800
committerKim Phillips <kim.phillips@freescale.com>2011-07-06 19:09:27 -0500
commit9a865fff15931b5269778a20babcfd1b3f836f96 (patch)
tree897c73be8903bcff8c6cf4d693fe2dfa52f2687c /drivers/dma/fsl_dma.c
parent79642098a8345e2506ab0ff02e8c7ac4da405d0c (diff)
downloadu-boot-9a865fff15931b5269778a20babcfd1b3f836f96.tar.gz
fsl_dma: fix support for 83xx DMA engine
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@ovro.caltech.edu> Cc: York Sun <yorksun@freescale.com> Cc: Peter Tyser <ptyser@xes-inc.com> Cc: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Diffstat (limited to 'drivers/dma/fsl_dma.c')
-rw-r--r--drivers/dma/fsl_dma.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/dma/fsl_dma.c b/drivers/dma/fsl_dma.c
index 09c18c1929..30785ecf98 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();