[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>
diff --git a/arch/arm/mm/Makefile b/arch/arm/mm/Makefile
index 07891c8..ddce038 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 934c551..10166fd 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)
{