diff options
author | Lucas Stach <dev@lynxeye.de> | 2015-03-05 22:50:21 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2015-03-06 07:53:48 +0100 |
commit | 0e06a77f5b93d4479ff1b88bc32003ceaa37d152 (patch) | |
tree | 331ae8b54bb3855d04d503007a628031c60de6df | |
parent | 59bf5f0b5d3f4d1619a09f3aea7278382d53c3a3 (diff) | |
download | barebox-0e06a77f5b93d4479ff1b88bc32003ceaa37d152.tar.gz barebox-0e06a77f5b93d4479ff1b88bc32003ceaa37d152.tar.xz |
ARM: MMU: unexport cache maintenance functions
Those should only be used internally. All users should rather
use the streaming DMA API, which does proper cache maintenance.
Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r-- | arch/arm/cpu/mmu.c | 35 | ||||
-rw-r--r-- | arch/arm/include/asm/mmu.h | 14 |
2 files changed, 14 insertions, 35 deletions
diff --git a/arch/arm/cpu/mmu.c b/arch/arm/cpu/mmu.c index f1ebd2933f..ba48010f0d 100644 --- a/arch/arm/cpu/mmu.c +++ b/arch/arm/cpu/mmu.c @@ -159,6 +159,20 @@ static u32 *find_pte(unsigned long adr) return &table[(adr >> PAGE_SHIFT) & 0xff]; } +static void dma_flush_range(unsigned long start, unsigned long end) +{ + if (outer_cache.flush_range) + outer_cache.flush_range(start, end); + __dma_flush_range(start, end); +} + +static void dma_inv_range(unsigned long start, unsigned long end) +{ + if (outer_cache.inv_range) + outer_cache.inv_range(start, end); + __dma_inv_range(start, end); +} + void remap_range(void *_start, size_t size, uint32_t flags) { unsigned long start = (unsigned long)_start; @@ -414,27 +428,6 @@ void dma_free_coherent(void *mem, dma_addr_t dma_handle, size_t size) free(mem); } -void dma_clean_range(unsigned long start, unsigned long end) -{ - if (outer_cache.clean_range) - outer_cache.clean_range(start, end); - __dma_clean_range(start, end); -} - -void dma_flush_range(unsigned long start, unsigned long end) -{ - if (outer_cache.flush_range) - outer_cache.flush_range(start, end); - __dma_flush_range(start, end); -} - -void dma_inv_range(unsigned long start, unsigned long end) -{ - if (outer_cache.inv_range) - outer_cache.inv_range(start, end); - __dma_inv_range(start, end); -} - void dma_sync_single_for_cpu(unsigned long address, size_t size, enum dma_data_direction dir) { diff --git a/arch/arm/include/asm/mmu.h b/arch/arm/include/asm/mmu.h index 01c20bd0dd..97bb0dbeb6 100644 --- a/arch/arm/include/asm/mmu.h +++ b/arch/arm/include/asm/mmu.h @@ -27,26 +27,12 @@ static inline void setup_dma_coherent(unsigned long offset) } #ifdef CONFIG_MMU -void dma_clean_range(unsigned long, unsigned long); -void dma_flush_range(unsigned long, unsigned long); -void dma_inv_range(unsigned long, unsigned long); void remap_range(void *_start, size_t size, uint32_t flags); void *map_io_sections(unsigned long physaddr, void *start, size_t size); uint32_t mmu_get_pte_cached_flags(void); uint32_t mmu_get_pte_uncached_flags(void); #else -static inline void dma_clean_range(unsigned long s, unsigned long e) -{ -} - -static inline void dma_flush_range(unsigned long s, unsigned long e) -{ -} - -static inline void dma_inv_range(unsigned long s, unsigned long e) -{ -} static inline void remap_range(void *_start, size_t size, uint32_t flags) { |