diff options
author | Krzysztof Hałasa <khc@pm.waw.pl> | 2009-11-15 12:02:10 -0500 |
---|---|---|
committer | Krzysztof Hałasa <khc@pm.waw.pl> | 2009-12-05 10:58:39 -0500 |
commit | ed5b9fa0d1c5ad1e01ff56b9acd3ff52bc783f66 (patch) | |
tree | d3068a6963c1e15d039323462a399175942fc08c /arch/arm/mach-ixp4xx/Kconfig | |
parent | cba362221b12b102dff1f21b291fdc7b93e24a18 (diff) |
IXP4xx: Extend PCI MMIO indirect address space to 1 GB.
IXP4xx CPUs can indirectly access the whole 4 GB PCI MMIO address space (using
the non-prefetch registers). Previously the available space depended on the CPU
variant, since one of the IXP43x platforms needed more than the usual 128 MB.
1 GB should be enough for everyone, and if not, we can trivially increase it.
Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
Diffstat (limited to 'arch/arm/mach-ixp4xx/Kconfig')
-rw-r--r-- | arch/arm/mach-ixp4xx/Kconfig | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/arch/arm/mach-ixp4xx/Kconfig b/arch/arm/mach-ixp4xx/Kconfig index 264f4d59f898..9e5070da17ae 100644 --- a/arch/arm/mach-ixp4xx/Kconfig +++ b/arch/arm/mach-ixp4xx/Kconfig | |||
@@ -179,21 +179,21 @@ config IXP4XX_INDIRECT_PCI | |||
179 | help | 179 | help |
180 | IXP4xx provides two methods of accessing PCI memory space: | 180 | IXP4xx provides two methods of accessing PCI memory space: |
181 | 181 | ||
182 | 1) A direct mapped window from 0x48000000 to 0x4bffffff (64MB). | 182 | 1) A direct mapped window from 0x48000000 to 0x4BFFFFFF (64MB). |
183 | To access PCI via this space, we simply ioremap() the BAR | 183 | To access PCI via this space, we simply ioremap() the BAR |
184 | into the kernel and we can use the standard read[bwl]/write[bwl] | 184 | into the kernel and we can use the standard read[bwl]/write[bwl] |
185 | macros. This is the preferred method due to speed but it | 185 | macros. This is the preferred method due to speed but it |
186 | limits the system to just 64MB of PCI memory. This can be | 186 | limits the system to just 64MB of PCI memory. This can be |
187 | problematic if using video cards and other memory-heavy devices. | 187 | problematic if using video cards and other memory-heavy devices. |
188 | 188 | ||
189 | 2) If > 64MB of memory space is required, the IXP4xx can be | 189 | 2) If > 64MB of memory space is required, the IXP4xx can be |
190 | configured to use indirect registers to access PCI This allows | 190 | configured to use indirect registers to access the whole PCI |
191 | for up to 128MB (0x48000000 to 0x4fffffff) of memory on the bus. | 191 | memory space. This currently allows for up to 1 GB (0x10000000 |
192 | The disadvantage of this is that every PCI access requires | 192 | to 0x4FFFFFFF) of memory on the bus. The disadvantage of this |
193 | three local register accesses plus a spinlock, but in some | 193 | is that every PCI access requires three local register accesses |
194 | cases the performance hit is acceptable. In addition, you cannot | 194 | plus a spinlock, but in some cases the performance hit is |
195 | mmap() PCI devices in this case due to the indirect nature | 195 | acceptable. In addition, you cannot mmap() PCI devices in this |
196 | of the PCI window. | 196 | case due to the indirect nature of the PCI window. |
197 | 197 | ||
198 | By default, the direct method is used. Choose this option if you | 198 | By default, the direct method is used. Choose this option if you |
199 | need to use the indirect method instead. If you don't know | 199 | need to use the indirect method instead. If you don't know |