summaryrefslogtreecommitdiff
path: root/arch/arm/mach-omap1/flash.c
diff options
context:
space:
mode:
authorLadislav Michl <ladis@linux-mips.org>2010-02-15 21:03:32 +0300
committerTony Lindgren <tony@atomide.com>2010-02-15 21:03:32 +0300
commit561b036ad9d0b4f0cd311d2e38025919c2cb437f (patch)
tree15c141467fe33e879a539b418e3131dd6d0910b1 /arch/arm/mach-omap1/flash.c
parentfd17a25fe9423bbde16a326466330ad486321dfc (diff)
downloadlinux-561b036ad9d0b4f0cd311d2e38025919c2cb437f.tar.xz
omap: convert boards to use physmap-flash
Convert OMAP based boards to use physmap-flash. Refreshed against today's Linux omap kernel tree Cc: linux-mtd@lists.infradead.org Signed-off-by: Ladislav Michl <ladis@linux-mips.org> Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap1/flash.c')
-rw-r--r--arch/arm/mach-omap1/flash.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/arch/arm/mach-omap1/flash.c b/arch/arm/mach-omap1/flash.c
new file mode 100644
index 000000000000..0b07a78eeaa7
--- /dev/null
+++ b/arch/arm/mach-omap1/flash.c
@@ -0,0 +1,33 @@
+/*
+ * Flash support for OMAP1
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include <linux/mtd/mtd.h>
+#include <linux/mtd/map.h>
+
+#include <plat/io.h>
+#include <plat/tc.h>
+
+void omap1_set_vpp(struct map_info *map, int enable)
+{
+ static int count;
+ u32 l;
+
+ if (enable) {
+ if (count++ == 0) {
+ l = omap_readl(EMIFS_CONFIG);
+ l |= OMAP_EMIFS_CONFIG_WP;
+ omap_writel(l, EMIFS_CONFIG);
+ }
+ } else {
+ if (count && (--count == 0)) {
+ l = omap_readl(EMIFS_CONFIG);
+ l &= ~OMAP_EMIFS_CONFIG_WP;
+ omap_writel(l, EMIFS_CONFIG);
+ }
+ }
+}