diff options
author | Stephen Rothwell <sfr@canb.auug.org.au> | 2005-11-18 08:33:56 -0500 |
---|---|---|
committer | Stephen Rothwell <sfr@canb.auug.org.au> | 2005-11-18 09:48:33 -0500 |
commit | 78baa2f8ad53968ff82ad9827b7793b3f46cba0e (patch) | |
tree | 24da1067859554f3833c98cd7212da46e2862b51 | |
parent | f365cfd0d8b6d8fb3583d23d48f54efa88ee8563 (diff) |
ppc32: move some dma routines
Every other architecture define dma_cache_{inv,wback,wback_inv}
in asm/io.h and doing so brings us closer to ppc64.
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
-rw-r--r-- | include/asm-ppc/dma-mapping.h | 10 | ||||
-rw-r--r-- | include/asm-ppc/io.h | 17 |
2 files changed, 17 insertions, 10 deletions
diff --git a/include/asm-ppc/dma-mapping.h b/include/asm-ppc/dma-mapping.h index 6e9635114433..798602620e87 100644 --- a/include/asm-ppc/dma-mapping.h +++ b/include/asm-ppc/dma-mapping.h | |||
@@ -24,22 +24,12 @@ extern void __dma_free_coherent(size_t size, void *vaddr); | |||
24 | extern void __dma_sync(void *vaddr, size_t size, int direction); | 24 | extern void __dma_sync(void *vaddr, size_t size, int direction); |
25 | extern void __dma_sync_page(struct page *page, unsigned long offset, | 25 | extern void __dma_sync_page(struct page *page, unsigned long offset, |
26 | size_t size, int direction); | 26 | size_t size, int direction); |
27 | #define dma_cache_inv(_start,_size) \ | ||
28 | invalidate_dcache_range(_start, (_start + _size)) | ||
29 | #define dma_cache_wback(_start,_size) \ | ||
30 | clean_dcache_range(_start, (_start + _size)) | ||
31 | #define dma_cache_wback_inv(_start,_size) \ | ||
32 | flush_dcache_range(_start, (_start + _size)) | ||
33 | 27 | ||
34 | #else /* ! CONFIG_NOT_COHERENT_CACHE */ | 28 | #else /* ! CONFIG_NOT_COHERENT_CACHE */ |
35 | /* | 29 | /* |
36 | * Cache coherent cores. | 30 | * Cache coherent cores. |
37 | */ | 31 | */ |
38 | 32 | ||
39 | #define dma_cache_inv(_start,_size) do { } while (0) | ||
40 | #define dma_cache_wback(_start,_size) do { } while (0) | ||
41 | #define dma_cache_wback_inv(_start,_size) do { } while (0) | ||
42 | |||
43 | #define __dma_alloc_coherent(gfp, size, handle) NULL | 33 | #define __dma_alloc_coherent(gfp, size, handle) NULL |
44 | #define __dma_free_coherent(size, addr) do { } while (0) | 34 | #define __dma_free_coherent(size, addr) do { } while (0) |
45 | #define __dma_sync(addr, size, rw) do { } while (0) | 35 | #define __dma_sync(addr, size, rw) do { } while (0) |
diff --git a/include/asm-ppc/io.h b/include/asm-ppc/io.h index 2bfdf9c98459..84ac6e258eef 100644 --- a/include/asm-ppc/io.h +++ b/include/asm-ppc/io.h | |||
@@ -545,6 +545,23 @@ extern void pci_iounmap(struct pci_dev *dev, void __iomem *); | |||
545 | #include <asm/mpc8260_pci9.h> | 545 | #include <asm/mpc8260_pci9.h> |
546 | #endif | 546 | #endif |
547 | 547 | ||
548 | #ifdef CONFIG_NOT_COHERENT_CACHE | ||
549 | |||
550 | #define dma_cache_inv(_start,_size) \ | ||
551 | invalidate_dcache_range(_start, (_start + _size)) | ||
552 | #define dma_cache_wback(_start,_size) \ | ||
553 | clean_dcache_range(_start, (_start + _size)) | ||
554 | #define dma_cache_wback_inv(_start,_size) \ | ||
555 | flush_dcache_range(_start, (_start + _size)) | ||
556 | |||
557 | #else | ||
558 | |||
559 | #define dma_cache_inv(_start,_size) do { } while (0) | ||
560 | #define dma_cache_wback(_start,_size) do { } while (0) | ||
561 | #define dma_cache_wback_inv(_start,_size) do { } while (0) | ||
562 | |||
563 | #endif | ||
564 | |||
548 | /* | 565 | /* |
549 | * Convert a physical pointer to a virtual kernel pointer for /dev/mem | 566 | * Convert a physical pointer to a virtual kernel pointer for /dev/mem |
550 | * access | 567 | * access |