diff options
author | Marc Zyngier <Marc.Zyngier@arm.com> | 2011-05-18 05:51:49 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-05-20 17:27:08 -0400 |
commit | b8b87aefef435e0f802d78d56804002cc439792b (patch) | |
tree | 0f3c64fa8d45657cc0c66300b6538ea17d9fa676 | |
parent | b7281ca2a4b00044c60c25059f467d05772cdbe3 (diff) |
ARM: 6903/1: Realview: Use physmap driver instead of integrator-flash
Tested on a PB11-MPCore.
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r-- | arch/arm/configs/realview-smp_defconfig | 2 | ||||
-rw-r--r-- | arch/arm/configs/realview_defconfig | 2 | ||||
-rw-r--r-- | arch/arm/mach-realview/core.c | 31 |
3 files changed, 6 insertions, 29 deletions
diff --git a/arch/arm/configs/realview-smp_defconfig b/arch/arm/configs/realview-smp_defconfig index 5ca7a61f7c01..abe61bf379d2 100644 --- a/arch/arm/configs/realview-smp_defconfig +++ b/arch/arm/configs/realview-smp_defconfig | |||
@@ -38,7 +38,7 @@ CONFIG_MTD_BLOCK=y | |||
38 | CONFIG_MTD_CFI=y | 38 | CONFIG_MTD_CFI=y |
39 | CONFIG_MTD_CFI_INTELEXT=y | 39 | CONFIG_MTD_CFI_INTELEXT=y |
40 | CONFIG_MTD_CFI_AMDSTD=y | 40 | CONFIG_MTD_CFI_AMDSTD=y |
41 | CONFIG_MTD_ARM_INTEGRATOR=y | 41 | CONFIG_MTD_PHYSMAP=y |
42 | CONFIG_ARM_CHARLCD=y | 42 | CONFIG_ARM_CHARLCD=y |
43 | CONFIG_NETDEVICES=y | 43 | CONFIG_NETDEVICES=y |
44 | CONFIG_SMSC_PHY=y | 44 | CONFIG_SMSC_PHY=y |
diff --git a/arch/arm/configs/realview_defconfig b/arch/arm/configs/realview_defconfig index fcaa60328051..7079cbe898a8 100644 --- a/arch/arm/configs/realview_defconfig +++ b/arch/arm/configs/realview_defconfig | |||
@@ -37,7 +37,7 @@ CONFIG_MTD_BLOCK=y | |||
37 | CONFIG_MTD_CFI=y | 37 | CONFIG_MTD_CFI=y |
38 | CONFIG_MTD_CFI_INTELEXT=y | 38 | CONFIG_MTD_CFI_INTELEXT=y |
39 | CONFIG_MTD_CFI_AMDSTD=y | 39 | CONFIG_MTD_CFI_AMDSTD=y |
40 | CONFIG_MTD_ARM_INTEGRATOR=y | 40 | CONFIG_MTD_PHYSMAP=y |
41 | CONFIG_ARM_CHARLCD=y | 41 | CONFIG_ARM_CHARLCD=y |
42 | CONFIG_NETDEVICES=y | 42 | CONFIG_NETDEVICES=y |
43 | CONFIG_SMSC_PHY=y | 43 | CONFIG_SMSC_PHY=y |
diff --git a/arch/arm/mach-realview/core.c b/arch/arm/mach-realview/core.c index 75dbc8791d05..d3f1dde70fc9 100644 --- a/arch/arm/mach-realview/core.c +++ b/arch/arm/mach-realview/core.c | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <linux/amba/mmci.h> | 31 | #include <linux/amba/mmci.h> |
32 | #include <linux/gfp.h> | 32 | #include <linux/gfp.h> |
33 | #include <linux/clkdev.h> | 33 | #include <linux/clkdev.h> |
34 | #include <linux/mtd/physmap.h> | ||
34 | 35 | ||
35 | #include <asm/system.h> | 36 | #include <asm/system.h> |
36 | #include <mach/hardware.h> | 37 | #include <mach/hardware.h> |
@@ -41,7 +42,6 @@ | |||
41 | #include <asm/hardware/icst.h> | 42 | #include <asm/hardware/icst.h> |
42 | 43 | ||
43 | #include <asm/mach/arch.h> | 44 | #include <asm/mach/arch.h> |
44 | #include <asm/mach/flash.h> | ||
45 | #include <asm/mach/irq.h> | 45 | #include <asm/mach/irq.h> |
46 | #include <asm/mach/map.h> | 46 | #include <asm/mach/map.h> |
47 | 47 | ||
@@ -77,27 +77,7 @@ void __init realview_adjust_zones(unsigned long *size, unsigned long *hole) | |||
77 | 77 | ||
78 | #define REALVIEW_FLASHCTRL (__io_address(REALVIEW_SYS_BASE) + REALVIEW_SYS_FLASH_OFFSET) | 78 | #define REALVIEW_FLASHCTRL (__io_address(REALVIEW_SYS_BASE) + REALVIEW_SYS_FLASH_OFFSET) |
79 | 79 | ||
80 | static int realview_flash_init(void) | 80 | static void realview_flash_set_vpp(struct map_info *map, int on) |
81 | { | ||
82 | u32 val; | ||
83 | |||
84 | val = __raw_readl(REALVIEW_FLASHCTRL); | ||
85 | val &= ~REALVIEW_FLASHPROG_FLVPPEN; | ||
86 | __raw_writel(val, REALVIEW_FLASHCTRL); | ||
87 | |||
88 | return 0; | ||
89 | } | ||
90 | |||
91 | static void realview_flash_exit(void) | ||
92 | { | ||
93 | u32 val; | ||
94 | |||
95 | val = __raw_readl(REALVIEW_FLASHCTRL); | ||
96 | val &= ~REALVIEW_FLASHPROG_FLVPPEN; | ||
97 | __raw_writel(val, REALVIEW_FLASHCTRL); | ||
98 | } | ||
99 | |||
100 | static void realview_flash_set_vpp(int on) | ||
101 | { | 81 | { |
102 | u32 val; | 82 | u32 val; |
103 | 83 | ||
@@ -109,16 +89,13 @@ static void realview_flash_set_vpp(int on) | |||
109 | __raw_writel(val, REALVIEW_FLASHCTRL); | 89 | __raw_writel(val, REALVIEW_FLASHCTRL); |
110 | } | 90 | } |
111 | 91 | ||
112 | static struct flash_platform_data realview_flash_data = { | 92 | static struct physmap_flash_data realview_flash_data = { |
113 | .map_name = "cfi_probe", | ||
114 | .width = 4, | 93 | .width = 4, |
115 | .init = realview_flash_init, | ||
116 | .exit = realview_flash_exit, | ||
117 | .set_vpp = realview_flash_set_vpp, | 94 | .set_vpp = realview_flash_set_vpp, |
118 | }; | 95 | }; |
119 | 96 | ||
120 | struct platform_device realview_flash_device = { | 97 | struct platform_device realview_flash_device = { |
121 | .name = "armflash", | 98 | .name = "physmap-flash", |
122 | .id = 0, | 99 | .id = 0, |
123 | .dev = { | 100 | .dev = { |
124 | .platform_data = &realview_flash_data, | 101 | .platform_data = &realview_flash_data, |