aboutsummaryrefslogtreecommitdiffstats
path: root/arch/tile/include/asm/cacheflush.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/tile/include/asm/cacheflush.h')
-rw-r--r--arch/tile/include/asm/cacheflush.h9
1 files changed, 2 insertions, 7 deletions
diff --git a/arch/tile/include/asm/cacheflush.h b/arch/tile/include/asm/cacheflush.h
index 7e2096a4ef7d..c5741da4eeac 100644
--- a/arch/tile/include/asm/cacheflush.h
+++ b/arch/tile/include/asm/cacheflush.h
@@ -21,6 +21,7 @@
21#include <linux/mm.h> 21#include <linux/mm.h>
22#include <linux/cache.h> 22#include <linux/cache.h>
23#include <asm/system.h> 23#include <asm/system.h>
24#include <arch/icache.h>
24 25
25/* Caches are physically-indexed and so don't need special treatment */ 26/* Caches are physically-indexed and so don't need special treatment */
26#define flush_cache_all() do { } while (0) 27#define flush_cache_all() do { } while (0)
@@ -37,14 +38,8 @@
37#define flush_icache_page(vma, pg) do { } while (0) 38#define flush_icache_page(vma, pg) do { } while (0)
38#define flush_icache_user_range(vma, pg, adr, len) do { } while (0) 39#define flush_icache_user_range(vma, pg, adr, len) do { } while (0)
39 40
40/* See "arch/tile/lib/__invalidate_icache.S". */
41extern void __invalidate_icache(unsigned long start, unsigned long size);
42
43/* Flush the icache just on this cpu */ 41/* Flush the icache just on this cpu */
44static inline void __flush_icache_range(unsigned long start, unsigned long end) 42extern void __flush_icache_range(unsigned long start, unsigned long end);
45{
46 __invalidate_icache(start, end - start);
47}
48 43
49/* Flush the entire icache on this cpu. */ 44/* Flush the entire icache on this cpu. */
50#define __flush_icache() __flush_icache_range(0, CHIP_L1I_CACHE_SIZE()) 45#define __flush_icache() __flush_icache_range(0, CHIP_L1I_CACHE_SIZE())