aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-tegra/include/mach/io.h
diff options
context:
space:
mode:
authorMike Rapoport <mike@compulab.co.il>2010-09-27 05:26:33 -0400
committerColin Cross <ccross@android.com>2010-10-21 21:13:02 -0400
commit77ffc1465cec32489889d6bc9c288b7b0d2ce9fb (patch)
treebb61f413ebaa2b4923e5af6ea633b112021276c6 /arch/arm/mach-tegra/include/mach/io.h
parent8d685bc5e5cad76c05c9986c23a821c5bcef7c16 (diff)
tegra: add PCI Express support
Change-Id: Ibd0bcd46895eb88952b9db29e1f68572d39aae01 Signed-off-by: Mike Rapoport <mike@compulab.co.il> Acked-by: Arnd Bergmann <arnd@arndb.de> CC: Russell King <linux@arm.linux.org.uk> CC: Gary King <GKing@nvidia.com> Signed-off-by: Colin Cross <ccross@android.com>
Diffstat (limited to 'arch/arm/mach-tegra/include/mach/io.h')
-rw-r--r--arch/arm/mach-tegra/include/mach/io.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/arch/arm/mach-tegra/include/mach/io.h b/arch/arm/mach-tegra/include/mach/io.h
index 16f16189b5eb..f0981b1ac59e 100644
--- a/arch/arm/mach-tegra/include/mach/io.h
+++ b/arch/arm/mach-tegra/include/mach/io.h
@@ -21,7 +21,7 @@
21#ifndef __MACH_TEGRA_IO_H 21#ifndef __MACH_TEGRA_IO_H
22#define __MACH_TEGRA_IO_H 22#define __MACH_TEGRA_IO_H
23 23
24#define IO_SPACE_LIMIT 0xffffffff 24#define IO_SPACE_LIMIT 0xffff
25 25
26/* On TEGRA, many peripherals are very closely packed in 26/* On TEGRA, many peripherals are very closely packed in
27 * two 256MB io windows (that actually only use about 64KB 27 * two 256MB io windows (that actually only use about 64KB
@@ -73,10 +73,20 @@ void tegra_iounmap(volatile void __iomem *addr);
73 73
74#define IO_ADDRESS(n) ((void __iomem *) IO_TO_VIRT(n)) 74#define IO_ADDRESS(n) ((void __iomem *) IO_TO_VIRT(n))
75 75
76#ifdef CONFIG_TEGRA_PCI
77extern void __iomem *tegra_pcie_io_base;
78
79static inline void __iomem *__io(unsigned long addr)
80{
81 return tegra_pcie_io_base + (addr & IO_SPACE_LIMIT);
82}
83#else
76static inline void __iomem *__io(unsigned long addr) 84static inline void __iomem *__io(unsigned long addr)
77{ 85{
78 return (void __iomem *)addr; 86 return (void __iomem *)addr;
79} 87}
88#endif
89
80#define __io(a) __io(a) 90#define __io(a) __io(a)
81#define __mem_pci(a) (a) 91#define __mem_pci(a) (a)
82 92