diff options
author | Paul Mundt <lethal@linux-sh.org> | 2009-08-14 20:30:39 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2009-08-14 20:30:39 -0400 |
commit | cbbe2f68f678a90bebeb30b8a7fcd8aed0614879 (patch) | |
tree | 4a8ffeea96f32ff6e532fdc2667181b48d5a26ca /arch | |
parent | 2739742c24f1a55365e71f0722bfdce8994e9c4e (diff) |
sh: rename pg-mmu.c -> cache.c, enable generically.
This builds in the newly created cache.c (renamed from pg-mmu.c) for both
MMU and NOMMU configurations. The kmap_coherent() stubs and alias
information recorded by each CPU family takes care of doing the right
thing while enabling the code to be commonly shared.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/sh/include/asm/cacheflush.h | 2 | ||||
-rw-r--r-- | arch/sh/mm/Makefile_32 | 16 | ||||
-rw-r--r-- | arch/sh/mm/cache.c (renamed from arch/sh/mm/pg-mmu.c) | 0 |
3 files changed, 8 insertions, 10 deletions
diff --git a/arch/sh/include/asm/cacheflush.h b/arch/sh/include/asm/cacheflush.h index 0e87e87cc01f..4bf621e4146d 100644 --- a/arch/sh/include/asm/cacheflush.h +++ b/arch/sh/include/asm/cacheflush.h | |||
@@ -45,7 +45,6 @@ extern void __flush_purge_region(void *start, int size); | |||
45 | extern void __flush_invalidate_region(void *start, int size); | 45 | extern void __flush_invalidate_region(void *start, int size); |
46 | #endif | 46 | #endif |
47 | 47 | ||
48 | #ifdef CONFIG_MMU | ||
49 | #define ARCH_HAS_FLUSH_ANON_PAGE | 48 | #define ARCH_HAS_FLUSH_ANON_PAGE |
50 | extern void __flush_anon_page(struct page *page, unsigned long); | 49 | extern void __flush_anon_page(struct page *page, unsigned long); |
51 | 50 | ||
@@ -55,7 +54,6 @@ static inline void flush_anon_page(struct vm_area_struct *vma, | |||
55 | if (boot_cpu_data.dcache.n_aliases && PageAnon(page)) | 54 | if (boot_cpu_data.dcache.n_aliases && PageAnon(page)) |
56 | __flush_anon_page(page, vmaddr); | 55 | __flush_anon_page(page, vmaddr); |
57 | } | 56 | } |
58 | #endif | ||
59 | 57 | ||
60 | #define ARCH_HAS_FLUSH_KERNEL_DCACHE_PAGE | 58 | #define ARCH_HAS_FLUSH_KERNEL_DCACHE_PAGE |
61 | static inline void flush_kernel_dcache_page(struct page *page) | 59 | static inline void flush_kernel_dcache_page(struct page *page) |
diff --git a/arch/sh/mm/Makefile_32 b/arch/sh/mm/Makefile_32 index 30771b137f48..affcc9a15cea 100644 --- a/arch/sh/mm/Makefile_32 +++ b/arch/sh/mm/Makefile_32 | |||
@@ -2,20 +2,20 @@ | |||
2 | # Makefile for the Linux SuperH-specific parts of the memory manager. | 2 | # Makefile for the Linux SuperH-specific parts of the memory manager. |
3 | # | 3 | # |
4 | 4 | ||
5 | obj-y := init.o extable_32.o consistent.o mmap.o | 5 | obj-y := cache.o init.o extable_32.o consistent.o mmap.o |
6 | 6 | ||
7 | ifndef CONFIG_CACHE_OFF | 7 | ifndef CONFIG_CACHE_OFF |
8 | cache-$(CONFIG_CPU_SH2) := cache-sh2.o | 8 | cacheops-$(CONFIG_CPU_SH2) := cache-sh2.o |
9 | cache-$(CONFIG_CPU_SH2A) := cache-sh2a.o | 9 | cacheops-$(CONFIG_CPU_SH2A) := cache-sh2a.o |
10 | cache-$(CONFIG_CPU_SH3) := cache-sh3.o | 10 | cacheops-$(CONFIG_CPU_SH3) := cache-sh3.o |
11 | cache-$(CONFIG_CPU_SH4) := cache-sh4.o flush-sh4.o | 11 | cacheops-$(CONFIG_CPU_SH4) := cache-sh4.o flush-sh4.o |
12 | cache-$(CONFIG_SH7705_CACHE_32KB) += cache-sh7705.o | 12 | cacheops-$(CONFIG_SH7705_CACHE_32KB) += cache-sh7705.o |
13 | endif | 13 | endif |
14 | 14 | ||
15 | obj-y += $(cache-y) | 15 | obj-y += $(cacheops-y) |
16 | 16 | ||
17 | mmu-y := tlb-nommu.o pg-nommu.o | 17 | mmu-y := tlb-nommu.o pg-nommu.o |
18 | mmu-$(CONFIG_MMU) := fault_32.o kmap.o tlbflush_32.o ioremap_32.o pg-mmu.o | 18 | mmu-$(CONFIG_MMU) := fault_32.o kmap.o tlbflush_32.o ioremap_32.o |
19 | 19 | ||
20 | obj-y += $(mmu-y) | 20 | obj-y += $(mmu-y) |
21 | obj-$(CONFIG_DEBUG_FS) += asids-debugfs.o | 21 | obj-$(CONFIG_DEBUG_FS) += asids-debugfs.o |
diff --git a/arch/sh/mm/pg-mmu.c b/arch/sh/mm/cache.c index f51d0a4eb3ba..f51d0a4eb3ba 100644 --- a/arch/sh/mm/pg-mmu.c +++ b/arch/sh/mm/cache.c | |||