Browse Source

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>
Ira W. Snyder 13 years ago
parent
commit
9a865fff15
1 changed files with 2 additions and 0 deletions
  1. 2 0
      drivers/dma/fsl_dma.c

+ 2 - 0
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();