diff options
author | Lennert Buytenhek <buytenh@wantstofly.org> | 2006-06-22 05:30:51 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2006-06-22 05:30:51 -0400 |
commit | 0967b5f0790cff737c86e9797cbbbdf420eb00f3 (patch) | |
tree | 9b9234f6fc133ad75c2a40779a89e87b99e8f1d3 /arch/arm/mach-ep93xx/ts72xx.c | |
parent | ae2a120ce50e9dc8092f9bd4d76d8c8150a12c48 (diff) |
[ARM] 3614/1: ep93xx: use platform devices for physmap flash
Patch from Lennert Buytenhek
Now that the physmap platform device rewrite is in, make the ep93xx
boards use platform devices for physmap flash.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-ep93xx/ts72xx.c')
-rw-r--r-- | arch/arm/mach-ep93xx/ts72xx.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/arch/arm/mach-ep93xx/ts72xx.c b/arch/arm/mach-ep93xx/ts72xx.c index e24566b88a78..6e5a56cd5ae8 100644 --- a/arch/arm/mach-ep93xx/ts72xx.c +++ b/arch/arm/mach-ep93xx/ts72xx.c | |||
@@ -16,6 +16,7 @@ | |||
16 | #include <linux/mm.h> | 16 | #include <linux/mm.h> |
17 | #include <linux/sched.h> | 17 | #include <linux/sched.h> |
18 | #include <linux/interrupt.h> | 18 | #include <linux/interrupt.h> |
19 | #include <linux/ioport.h> | ||
19 | #include <linux/mtd/physmap.h> | 20 | #include <linux/mtd/physmap.h> |
20 | #include <linux/platform_device.h> | 21 | #include <linux/platform_device.h> |
21 | #include <linux/m48t86.h> | 22 | #include <linux/m48t86.h> |
@@ -111,6 +112,26 @@ static void __init ts72xx_map_io(void) | |||
111 | } | 112 | } |
112 | } | 113 | } |
113 | 114 | ||
115 | static struct physmap_flash_data ts72xx_flash_data = { | ||
116 | .width = 1, | ||
117 | }; | ||
118 | |||
119 | static struct resource ts72xx_flash_resource = { | ||
120 | .start = TS72XX_NOR_PHYS_BASE, | ||
121 | .end = TS72XX_NOR_PHYS_BASE + 0x01000000, | ||
122 | .flags = IORESOURCE_MEM, | ||
123 | }; | ||
124 | |||
125 | static struct platform_device ts72xx_flash = { | ||
126 | .name = "physmap-flash", | ||
127 | .id = 0, | ||
128 | .dev = { | ||
129 | .platform_data = &ts72xx_flash_data, | ||
130 | }, | ||
131 | .num_resources = 1, | ||
132 | .resource = &ts72xx_flash_resource, | ||
133 | }; | ||
134 | |||
114 | static unsigned char ts72xx_rtc_readbyte(unsigned long addr) | 135 | static unsigned char ts72xx_rtc_readbyte(unsigned long addr) |
115 | { | 136 | { |
116 | __raw_writeb(addr, TS72XX_RTC_INDEX_VIRT_BASE); | 137 | __raw_writeb(addr, TS72XX_RTC_INDEX_VIRT_BASE); |
@@ -141,7 +162,7 @@ static void __init ts72xx_init_machine(void) | |||
141 | { | 162 | { |
142 | ep93xx_init_devices(); | 163 | ep93xx_init_devices(); |
143 | if (board_is_ts7200()) | 164 | if (board_is_ts7200()) |
144 | physmap_configure(TS72XX_NOR_PHYS_BASE, 0x01000000, 1, NULL); | 165 | platform_device_register(&ts72xx_flash); |
145 | platform_device_register(&ts72xx_rtc_device); | 166 | platform_device_register(&ts72xx_rtc_device); |
146 | } | 167 | } |
147 | 168 | ||