In case of PCIe we need to have a different __io macro, which can write into PCIe address space. Signed-off-by: Pratyush Anand <pratyush.anand@xxxxxx> --- arch/arm/mach-spear13xx/include/mach/io.h | 35 +++++++++++++++++++++++++++++ 1 files changed, 35 insertions(+), 0 deletions(-) create mode 100644 arch/arm/mach-spear13xx/include/mach/io.h diff --git a/arch/arm/mach-spear13xx/include/mach/io.h b/arch/arm/mach-spear13xx/include/mach/io.h new file mode 100644 index 0000000..a0d93ca --- /dev/null +++ b/arch/arm/mach-spear13xx/include/mach/io.h @@ -0,0 +1,35 @@ +/* + * arch/arm/mach-spear13xx/include/mach/io.h + * + * spear13xx machine family generic header file + * + * Copyright (C) 2012 ST Microelectronics + * Pratyush Anand <pratyush.anand@xxxxxx> + * + * This file is licensed under the terms of the GNU General Public + * License version 2. This program is licensed "as is" without any + * warranty of any kind, whether express or implied. + */ + +#ifndef __MACH_IO_H +#define __MACH_IO_H + +#define IO_SPACE_LIMIT 0xFFFF + +#ifdef CONFIG_SPEAR13XX_PCI +extern void __iomem *spear13xx_pcie_io_base(unsigned long addr); + +static inline void __iomem *__io(unsigned long addr) +{ + return spear13xx_pcie_io_base(addr) + (addr & IO_SPACE_LIMIT); +} +#else +static inline void __iomem *__io(unsigned long addr) +{ + return (void __iomem *)addr; +} +#endif + +#define __io(a) __io(a) + +#endif /* __MACH_IO_H */ -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html