diff options
author | Mike Rapoport <mike@compulab.co.il> | 2010-09-27 05:26:33 -0400 |
---|---|---|
committer | Colin Cross <ccross@android.com> | 2010-10-21 21:13:02 -0400 |
commit | 77ffc1465cec32489889d6bc9c288b7b0d2ce9fb (patch) | |
tree | bb61f413ebaa2b4923e5af6ea633b112021276c6 /arch/arm/mach-tegra/include/mach/io.h | |
parent | 8d685bc5e5cad76c05c9986c23a821c5bcef7c16 (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.h | 12 |
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 | ||
77 | extern void __iomem *tegra_pcie_io_base; | ||
78 | |||
79 | static inline void __iomem *__io(unsigned long addr) | ||
80 | { | ||
81 | return tegra_pcie_io_base + (addr & IO_SPACE_LIMIT); | ||
82 | } | ||
83 | #else | ||
76 | static inline void __iomem *__io(unsigned long addr) | 84 | static 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 | ||