Commit b6cee17b authored by Max Filippov's avatar Max Filippov
Browse files

xtensa: nommu: don't build most of the cache flushing code



Most cache flushing code is only relevant for MMU. Don't build it for
nommu configuration.

Signed-off-by: default avatarMax Filippov <jcmvbkbc@gmail.com>
parent d10fa7cf
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -86,7 +86,8 @@ static inline void __invalidate_icache_page_alias(unsigned long virt,
 * (see also Documentation/cachetlb.txt)
 */

#if (DCACHE_WAY_SIZE > PAGE_SIZE) || defined(CONFIG_SMP)
#if defined(CONFIG_MMU) && \
	((DCACHE_WAY_SIZE > PAGE_SIZE) || defined(CONFIG_SMP))

#ifdef CONFIG_SMP
void flush_cache_all(void);
@@ -152,7 +153,7 @@ void local_flush_cache_page(struct vm_area_struct *vma,
#define flush_dcache_mmap_lock(mapping)			do { } while (0)
#define flush_dcache_mmap_unlock(mapping)		do { } while (0)

#if (DCACHE_WAY_SIZE > PAGE_SIZE)
#if defined(CONFIG_MMU) && (DCACHE_WAY_SIZE > PAGE_SIZE)

extern void copy_to_user_page(struct vm_area_struct*, struct page*,
		unsigned long, void*, const void*, unsigned long);
+1 −1
Original line number Diff line number Diff line
@@ -145,7 +145,7 @@ extern void copy_page(void *to, void *from);
 * some extra work
 */

#if DCACHE_WAY_SIZE > PAGE_SIZE
#if defined(CONFIG_MMU) && DCACHE_WAY_SIZE > PAGE_SIZE
extern void clear_page_alias(void *vaddr, unsigned long paddr);
extern void copy_page_alias(void *to, void *from,
			    unsigned long to_paddr, unsigned long from_paddr);
+2 −2
Original line number Diff line number Diff line
@@ -2,6 +2,6 @@
# Makefile for the Linux/Xtensa-specific parts of the memory manager.
#

obj-y			:= init.o cache.o misc.o
obj-$(CONFIG_MMU)	+= fault.o mmu.o tlb.o
obj-y			:= init.o misc.o
obj-$(CONFIG_MMU)	+= cache.o fault.o mmu.o tlb.o
obj-$(CONFIG_HIGHMEM)	+= highmem.o