fsl_dma: fix support for 83xx DMA engine
authorIra W. Snyder <iws@ovro.caltech.edu>
Tue, 1 Mar 2011 22:40:55 +0000 (14:40 -0800)
committerKim Phillips <kim.phillips@freescale.com>
Thu, 7 Jul 2011 00:09:27 +0000 (19:09 -0500)
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>
drivers/dma/fsl_dma.c

index 09c18c1..30785ec 100644 (file)
@@ -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();