summaryrefslogtreecommitdiff
path: root/arch/arm/plat-omap/sram.c
diff options
context:
space:
mode:
authorTony Lindgren <tony@atomide.com>2006-02-09 01:06:45 +0300
committerRussell King <rmk+kernel@arm.linux.org.uk>2006-02-09 01:06:45 +0300
commit53d9cc7395c8dbe8d7fd6f9acd6578b236d14a0f (patch)
tree5ff13b4064bfee3b5149aa49c806d5db36e5e7f4 /arch/arm/plat-omap/sram.c
parent083d06edfda28fdee41ac46dc57ad4949927acd9 (diff)
downloadlinux-53d9cc7395c8dbe8d7fd6f9acd6578b236d14a0f.tar.xz
[ARM] 3279/1: OMAP: 1/3 Fix low-level io init
Patch from Tony Lindgren This patch adds the missing cache flushes to common low-level init that are needed to access the IO region. These flushes are normally done at the end of devicemaps_init(), but we need to detect the OMAP core type early. Signed-off-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/plat-omap/sram.c')
-rw-r--r--arch/arm/plat-omap/sram.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/arm/plat-omap/sram.c b/arch/arm/plat-omap/sram.c
index 792f66375830..ee82763b02b8 100644
--- a/arch/arm/plat-omap/sram.c
+++ b/arch/arm/plat-omap/sram.c
@@ -17,6 +17,7 @@
#include <linux/init.h>
#include <asm/mach/map.h>
+#include <asm/tlb.h>
#include <asm/io.h>
#include <asm/cacheflush.h>
@@ -96,6 +97,14 @@ void __init omap_map_sram(void)
omap_sram_io_desc[0].length);
/*
+ * Normally devicemaps_init() would flush caches and tlb after
+ * mdesc->map_io(), but since we're called from map_io(), we
+ * must do it here.
+ */
+ local_flush_tlb_all();
+ flush_cache_all();
+
+ /*
* Looks like we need to preserve some bootloader code at the
* beginning of SRAM for jumping to flash for reboot to work...
*/