diff options
| -rw-r--r-- | arch/parisc/include/asm/cacheflush.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/parisc/include/asm/cacheflush.h b/arch/parisc/include/asm/cacheflush.h index 7a73b615c23d..477277739da5 100644 --- a/arch/parisc/include/asm/cacheflush.h +++ b/arch/parisc/include/asm/cacheflush.h | |||
| @@ -38,6 +38,18 @@ void flush_cache_mm(struct mm_struct *mm); | |||
| 38 | 38 | ||
| 39 | #define flush_kernel_dcache_range(start,size) \ | 39 | #define flush_kernel_dcache_range(start,size) \ |
| 40 | flush_kernel_dcache_range_asm((start), (start)+(size)); | 40 | flush_kernel_dcache_range_asm((start), (start)+(size)); |
| 41 | /* vmap range flushes and invalidates. Architecturally, we don't need | ||
| 42 | * the invalidate, because the CPU should refuse to speculate once an | ||
| 43 | * area has been flushed, so invalidate is left empty */ | ||
| 44 | static inline void flush_kernel_vmap_range(void *vaddr, int size) | ||
| 45 | { | ||
| 46 | unsigned long start = (unsigned long)vaddr; | ||
| 47 | |||
| 48 | flush_kernel_dcache_range_asm(start, start + size); | ||
| 49 | } | ||
| 50 | static inline void invalidate_kernel_vmap_range(void *vaddr, int size) | ||
| 51 | { | ||
| 52 | } | ||
| 41 | 53 | ||
| 42 | #define flush_cache_vmap(start, end) flush_cache_all() | 54 | #define flush_cache_vmap(start, end) flush_cache_all() |
| 43 | #define flush_cache_vunmap(start, end) flush_cache_all() | 55 | #define flush_cache_vunmap(start, end) flush_cache_all() |
