summary refs log tree commit diff
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2006-06-24 10:46:23 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2006-06-28 17:59:50 +0100
commite6b1b38c520d85388ab6538001265cc342e81a70 (patch)
tree08bb002ac47da8f90f00dc109eafb371f6933ee3
parent3b93e7b08fc3e87e5b451ee5e47cfe142779d0cd (diff)
downloadlinux-e6b1b38c520d85388ab6538001265cc342e81a70.tar.gz
[ARM] nommu: Provide a simple flush_dcache_page implementation
nommu doesn't require a complex flush_dcache_page implementation
like the MMU-ful CPUs do, so provide a simplified version in nommu.c
and omit flush.c from the build as appropriate.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r--arch/arm/mm/Makefile4
-rw-r--r--arch/arm/mm/nommu.c8
2 files changed, 10 insertions, 2 deletions
diff --git a/arch/arm/mm/Makefile b/arch/arm/mm/Makefile
index 07891c83e52c..ddce03878981 100644
--- a/arch/arm/mm/Makefile
+++ b/arch/arm/mm/Makefile
@@ -3,10 +3,10 @@
 #
 
 obj-y				:= consistent.o extable.o fault-armv.o \
-				   fault.o flush.o init.o iomap.o mmap.o \
+				   fault.o init.o iomap.o mmap.o \
 				   mm-armv.o
 
-obj-$(CONFIG_MMU)		+= ioremap.o
+obj-$(CONFIG_MMU)		+= flush.o ioremap.o
 
 ifneq ($(CONFIG_MMU),y)
 obj-y				+= nommu.o
diff --git a/arch/arm/mm/nommu.c b/arch/arm/mm/nommu.c
index 934c551d93da..10166fdeaace 100644
--- a/arch/arm/mm/nommu.c
+++ b/arch/arm/mm/nommu.c
@@ -4,10 +4,18 @@
  * ARM uCLinux supporting functions.
  */
 #include <linux/module.h>
+#include <linux/mm.h>
+#include <linux/pagemap.h>
 
+#include <asm/cacheflush.h>
 #include <asm/io.h>
 #include <asm/page.h>
 
+void flush_dcache_page(struct page *page)
+{
+	__cpuc_flush_dcache_page(page_address(page));
+}
+
 void __iomem *__ioremap_pfn(unsigned long pfn, unsigned long offset,
 			    size_t size, unsigned long flags)
 {