diff options
Diffstat (limited to 'arch/arm/mach-iop13xx/io.c')
-rw-r--r-- | arch/arm/mach-iop13xx/io.c | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/arch/arm/mach-iop13xx/io.c b/arch/arm/mach-iop13xx/io.c index 48642e66c566..3c364198db9c 100644 --- a/arch/arm/mach-iop13xx/io.c +++ b/arch/arm/mach-iop13xx/io.c | |||
@@ -21,6 +21,8 @@ | |||
21 | #include <linux/io.h> | 21 | #include <linux/io.h> |
22 | #include <mach/hardware.h> | 22 | #include <mach/hardware.h> |
23 | 23 | ||
24 | #include "pci.h" | ||
25 | |||
24 | void * __iomem __iop13xx_io(unsigned long io_addr) | 26 | void * __iomem __iop13xx_io(unsigned long io_addr) |
25 | { | 27 | { |
26 | void __iomem * io_virt; | 28 | void __iomem * io_virt; |
@@ -40,8 +42,8 @@ void * __iomem __iop13xx_io(unsigned long io_addr) | |||
40 | } | 42 | } |
41 | EXPORT_SYMBOL(__iop13xx_io); | 43 | EXPORT_SYMBOL(__iop13xx_io); |
42 | 44 | ||
43 | void * __iomem __iop13xx_ioremap(unsigned long cookie, size_t size, | 45 | static void __iomem *__iop13xx_ioremap_caller(unsigned long cookie, |
44 | unsigned int mtype) | 46 | size_t size, unsigned int mtype, void *caller) |
45 | { | 47 | { |
46 | void __iomem * retval; | 48 | void __iomem * retval; |
47 | 49 | ||
@@ -76,17 +78,14 @@ void * __iomem __iop13xx_ioremap(unsigned long cookie, size_t size, | |||
76 | break; | 78 | break; |
77 | default: | 79 | default: |
78 | retval = __arm_ioremap_caller(cookie, size, mtype, | 80 | retval = __arm_ioremap_caller(cookie, size, mtype, |
79 | __builtin_return_address(0)); | 81 | caller); |
80 | } | 82 | } |
81 | 83 | ||
82 | return retval; | 84 | return retval; |
83 | } | 85 | } |
84 | EXPORT_SYMBOL(__iop13xx_ioremap); | ||
85 | 86 | ||
86 | void __iop13xx_iounmap(void __iomem *addr) | 87 | static void __iop13xx_iounmap(volatile void __iomem *addr) |
87 | { | 88 | { |
88 | extern void __iounmap(volatile void __iomem *addr); | ||
89 | |||
90 | if (iop13xx_atue_mem_base) | 89 | if (iop13xx_atue_mem_base) |
91 | if (addr >= (void __iomem *) iop13xx_atue_mem_base && | 90 | if (addr >= (void __iomem *) iop13xx_atue_mem_base && |
92 | addr < (void __iomem *) (iop13xx_atue_mem_base + | 91 | addr < (void __iomem *) (iop13xx_atue_mem_base + |
@@ -110,4 +109,9 @@ void __iop13xx_iounmap(void __iomem *addr) | |||
110 | skip: | 109 | skip: |
111 | return; | 110 | return; |
112 | } | 111 | } |
113 | EXPORT_SYMBOL(__iop13xx_iounmap); | 112 | |
113 | void __init iop13xx_init_early(void) | ||
114 | { | ||
115 | arch_ioremap_caller = __iop13xx_ioremap_caller; | ||
116 | arch_iounmap = __iop13xx_iounmap; | ||
117 | } | ||