aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin/include/asm/dma.h
diff options
context:
space:
mode:
authorMichael Hennerich <michael.hennerich@analog.com>2010-06-16 09:12:10 +0000
committerMike Frysinger <vapier@gentoo.org>2010-08-06 12:55:50 -0400
commitd1401e1dc22606a91f577ad3dfd68ae7e60e0357 (patch)
tree6c59463c60fd4ada2b5d4974afaa30be7059c67f /arch/blackfin/include/asm/dma.h
parentBlackfin: BF51x: fix handling of PH8 (the "internal" SPI0SEL4 pin) (diff)
downloadlinux-dev-d1401e1dc22606a91f577ad3dfd68ae7e60e0357.tar.xz
linux-dev-d1401e1dc22606a91f577ad3dfd68ae7e60e0357.zip
Blackfin: fix DMA/cache bug when resuming from suspend to RAM
The dma_memcpy() function takes care of flushing different caches for us. Normally this is what we want, but when resuming from mem, we don't yet have caches enabled. If these functions happen to be placed into L1 mem (which is what we're trying to relocate), then things aren't going to work. So define a non-cache dma_memcpy() variant to utilize in situations like this. Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'arch/blackfin/include/asm/dma.h')
-rw-r--r--arch/blackfin/include/asm/dma.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/blackfin/include/asm/dma.h b/arch/blackfin/include/asm/dma.h
index 2c09b1d50ec9..eedf3ca65ba2 100644
--- a/arch/blackfin/include/asm/dma.h
+++ b/arch/blackfin/include/asm/dma.h
@@ -276,6 +276,7 @@ static inline void clear_dma_irqstat(unsigned int channel)
}
void *dma_memcpy(void *dest, const void *src, size_t count);
+void *dma_memcpy_nocache(void *dest, const void *src, size_t count);
void *safe_dma_memcpy(void *dest, const void *src, size_t count);
void blackfin_dma_early_init(void);
void early_dma_memcpy(void *dest, const void *src, size_t count);