aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin
diff options
context:
space:
mode:
Diffstat (limited to 'arch/blackfin')
-rw-r--r--arch/blackfin/include/asm/cacheflush.h17
-rw-r--r--arch/blackfin/include/asm/cplbinit.h17
-rw-r--r--arch/blackfin/kernel/cplb-nompu/cplbinit.c1
3 files changed, 18 insertions, 17 deletions
diff --git a/arch/blackfin/include/asm/cacheflush.h b/arch/blackfin/include/asm/cacheflush.h
index 5ef9e35e9c3b..c2d5b6c9fb4d 100644
--- a/arch/blackfin/include/asm/cacheflush.h
+++ b/arch/blackfin/include/asm/cacheflush.h
@@ -85,4 +85,21 @@ do { memcpy(dst, src, len); \
85# define flush_dcache_page(page) do { } while (0) 85# define flush_dcache_page(page) do { } while (0)
86#endif 86#endif
87 87
88extern unsigned long reserved_mem_dcache_on;
89extern unsigned long reserved_mem_icache_on;
90
91static inline int bfin_addr_dcachable(unsigned long addr)
92{
93#ifdef CONFIG_BFIN_DCACHE
94 if (addr < (_ramend - DMA_UNCACHED_REGION))
95 return 1;
96#endif
97
98 if (reserved_mem_dcache_on &&
99 addr >= _ramend && addr < physical_mem_end)
100 return 1;
101
102 return 0;
103}
104
88#endif /* _BLACKFIN_ICACHEFLUSH_H */ 105#endif /* _BLACKFIN_ICACHEFLUSH_H */
diff --git a/arch/blackfin/include/asm/cplbinit.h b/arch/blackfin/include/asm/cplbinit.h
index d179b747ff03..f845b41147ba 100644
--- a/arch/blackfin/include/asm/cplbinit.h
+++ b/arch/blackfin/include/asm/cplbinit.h
@@ -87,23 +87,6 @@ extern u_long dpdt_swapcount_table[];
87 87
88#endif /* CONFIG_MPU */ 88#endif /* CONFIG_MPU */
89 89
90extern unsigned long reserved_mem_dcache_on;
91extern unsigned long reserved_mem_icache_on;
92
93extern void generate_cplb_tables(void); 90extern void generate_cplb_tables(void);
94 91
95static inline int bfin_addr_dcachable(unsigned long addr)
96{
97#ifdef CONFIG_BFIN_DCACHE
98 if (addr < (_ramend - DMA_UNCACHED_REGION))
99 return 1;
100#endif
101
102 if (reserved_mem_dcache_on &&
103 addr >= _ramend && addr < physical_mem_end)
104 return 1;
105
106 return 0;
107}
108
109#endif 92#endif
diff --git a/arch/blackfin/kernel/cplb-nompu/cplbinit.c b/arch/blackfin/kernel/cplb-nompu/cplbinit.c
index 301252e84441..512f8c92ead5 100644
--- a/arch/blackfin/kernel/cplb-nompu/cplbinit.c
+++ b/arch/blackfin/kernel/cplb-nompu/cplbinit.c
@@ -23,6 +23,7 @@
23#include <linux/module.h> 23#include <linux/module.h>
24 24
25#include <asm/blackfin.h> 25#include <asm/blackfin.h>
26#include <asm/cacheflush.h>
26#include <asm/cplb.h> 27#include <asm/cplb.h>
27#include <asm/cplbinit.h> 28#include <asm/cplbinit.h>
28 29