diff options
| author | Rob Herring <rob.herring@calxeda.com> | 2012-03-06 22:34:19 -0500 |
|---|---|---|
| committer | Rob Herring <rob.herring@calxeda.com> | 2012-03-06 22:34:19 -0500 |
| commit | ed5bf6e884dc176acdd17cbc653154dc02718239 (patch) | |
| tree | 61c04988efee9f7d53aa5e3f6f0a4fa6f89eb14d | |
| parent | f449588c65e23637aef59cae2ea7b6b2b1b767ec (diff) | |
ARM: ebsa110: use runtime ioremap hook
Convert ebsa110 platforms to use run-time ioremap hook instead of the
compile time hook.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Cc: Russell King <linux@arm.linux.org.uk>
| -rw-r--r-- | arch/arm/mach-ebsa110/core.c | 15 | ||||
| -rw-r--r-- | arch/arm/mach-ebsa110/include/mach/io.h | 9 |
2 files changed, 15 insertions, 9 deletions
diff --git a/arch/arm/mach-ebsa110/core.c b/arch/arm/mach-ebsa110/core.c index 804c9122b7b3..b049edbdf152 100644 --- a/arch/arm/mach-ebsa110/core.c +++ b/arch/arm/mach-ebsa110/core.c | |||
| @@ -119,6 +119,20 @@ static void __init ebsa110_map_io(void) | |||
| 119 | iotable_init(ebsa110_io_desc, ARRAY_SIZE(ebsa110_io_desc)); | 119 | iotable_init(ebsa110_io_desc, ARRAY_SIZE(ebsa110_io_desc)); |
| 120 | } | 120 | } |
| 121 | 121 | ||
| 122 | static void __iomem *ebsa110_ioremap_caller(unsigned long cookie, size_t size, | ||
| 123 | unsigned int flags, void *caller) | ||
| 124 | { | ||
| 125 | return (void __iomem *)cookie; | ||
| 126 | } | ||
| 127 | |||
| 128 | static void ebsa110_iounmap(volatile void __iomem *io_addr) | ||
| 129 | {} | ||
| 130 | |||
| 131 | static void __init ebsa110_init_early(void) | ||
| 132 | { | ||
| 133 | arch_ioremap_caller = ebsa110_ioremap_caller; | ||
| 134 | arch_iounmap = ebsa110_iounmap; | ||
| 135 | } | ||
| 122 | 136 | ||
| 123 | #define PIT_CTRL (PIT_BASE + 0x0d) | 137 | #define PIT_CTRL (PIT_BASE + 0x0d) |
| 124 | #define PIT_T2 (PIT_BASE + 0x09) | 138 | #define PIT_T2 (PIT_BASE + 0x09) |
| @@ -315,6 +329,7 @@ MACHINE_START(EBSA110, "EBSA110") | |||
| 315 | .reserve_lp2 = 1, | 329 | .reserve_lp2 = 1, |
| 316 | .restart_mode = 's', | 330 | .restart_mode = 's', |
| 317 | .map_io = ebsa110_map_io, | 331 | .map_io = ebsa110_map_io, |
| 332 | .init_early = ebsa110_init_early, | ||
| 318 | .init_irq = ebsa110_init_irq, | 333 | .init_irq = ebsa110_init_irq, |
| 319 | .timer = &ebsa110_timer, | 334 | .timer = &ebsa110_timer, |
| 320 | .restart = ebsa110_restart, | 335 | .restart = ebsa110_restart, |
diff --git a/arch/arm/mach-ebsa110/include/mach/io.h b/arch/arm/mach-ebsa110/include/mach/io.h index 44679db672fb..11bb0799424b 100644 --- a/arch/arm/mach-ebsa110/include/mach/io.h +++ b/arch/arm/mach-ebsa110/include/mach/io.h | |||
| @@ -62,15 +62,6 @@ void __writel(u32 val, void __iomem *addr); | |||
| 62 | #define writew(v,b) __writew(v,b) | 62 | #define writew(v,b) __writew(v,b) |
| 63 | #define writel(v,b) __writel(v,b) | 63 | #define writel(v,b) __writel(v,b) |
| 64 | 64 | ||
| 65 | static inline void __iomem *__arch_ioremap(unsigned long cookie, size_t size, | ||
| 66 | unsigned int flags) | ||
| 67 | { | ||
| 68 | return (void __iomem *)cookie; | ||
| 69 | } | ||
| 70 | |||
| 71 | #define __arch_ioremap __arch_ioremap | ||
| 72 | #define __arch_iounmap(cookie) do { } while (0) | ||
| 73 | |||
| 74 | extern void insb(unsigned int port, void *buf, int sz); | 65 | extern void insb(unsigned int port, void *buf, int sz); |
| 75 | extern void insw(unsigned int port, void *buf, int sz); | 66 | extern void insw(unsigned int port, void *buf, int sz); |
| 76 | extern void insl(unsigned int port, void *buf, int sz); | 67 | extern void insl(unsigned int port, void *buf, int sz); |
