diff options
Diffstat (limited to 'arch/arm/mm/ioremap.c')
-rw-r--r-- | arch/arm/mm/ioremap.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/arm/mm/ioremap.c b/arch/arm/mm/ioremap.c index 566750fa57d4..9d869f93a3da 100644 --- a/arch/arm/mm/ioremap.c +++ b/arch/arm/mm/ioremap.c | |||
@@ -36,6 +36,7 @@ | |||
36 | #include <asm/system_info.h> | 36 | #include <asm/system_info.h> |
37 | 37 | ||
38 | #include <asm/mach/map.h> | 38 | #include <asm/mach/map.h> |
39 | #include <asm/mach/pci.h> | ||
39 | #include "mm.h" | 40 | #include "mm.h" |
40 | 41 | ||
41 | int ioremap_page(unsigned long virt, unsigned long phys, | 42 | int ioremap_page(unsigned long virt, unsigned long phys, |
@@ -383,3 +384,16 @@ void __arm_iounmap(volatile void __iomem *io_addr) | |||
383 | arch_iounmap(io_addr); | 384 | arch_iounmap(io_addr); |
384 | } | 385 | } |
385 | EXPORT_SYMBOL(__arm_iounmap); | 386 | EXPORT_SYMBOL(__arm_iounmap); |
387 | |||
388 | #ifdef CONFIG_PCI | ||
389 | int pci_ioremap_io(unsigned int offset, phys_addr_t phys_addr) | ||
390 | { | ||
391 | BUG_ON(offset + SZ_64K > IO_SPACE_LIMIT); | ||
392 | |||
393 | return ioremap_page_range(PCI_IO_VIRT_BASE + offset, | ||
394 | PCI_IO_VIRT_BASE + offset + SZ_64K, | ||
395 | phys_addr, | ||
396 | __pgprot(get_mem_type(MT_DEVICE)->prot_pte)); | ||
397 | } | ||
398 | EXPORT_SYMBOL_GPL(pci_ioremap_io); | ||
399 | #endif | ||