ARM: Add fixed PCI i/o mapping
authorRob Herring <rob.herring@calxeda.com>
Thu, 1 Mar 2012 00:10:58 +0000 (18:10 -0600)
committerRob Herring <rob.herring@calxeda.com>
Wed, 25 Jul 2012 14:26:42 +0000 (09:26 -0500)
commitc2794437091a4fda72c4a4f3567dd728dcc0c3c9
tree56e4d414f5b78bdf35822b38af5be021711a0970
parent701eb2647d7986b42fa973990649a83b3e15e8eb
ARM: Add fixed PCI i/o mapping

This adds a fixed virtual mapping for PCI i/o addresses. The mapping is
located at the last 2MB of vmalloc region (0xfee00000-0xff000000). 2MB
is used to align with PMD size, but IO_SPACE_LIMIT is 1MB. The space
is reserved after .map_io and can be mapped at any time later with
pci_ioremap_io. Platforms which need early i/o mapping (e.g. for vga
console) can call pci_map_io_early in their .map_io function.

This has changed completely from the 1st implementation which only
supported creating the static mapping at .map_io.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Cc: Russell King <linux@arm.linux.org.uk>
Acked-by: Nicolas Pitre <nico@linaro.org>
Documentation/arm/memory.txt
arch/arm/include/asm/io.h
arch/arm/include/asm/mach/map.h
arch/arm/include/asm/mach/pci.h
arch/arm/kernel/bios32.c
arch/arm/mm/ioremap.c
arch/arm/mm/mmu.c