diff options
author | Michael S. Tsirkin <mst@redhat.com> | 2012-01-30 00:23:38 +0200 |
---|---|---|
committer | Michael S. Tsirkin <mst@redhat.com> | 2012-01-31 23:20:30 +0200 |
commit | 0f3b3956c4946a6a991974943e3de33ae3d2523f (patch) | |
tree | 2c1968a5e270a37303e7ceed3ef6516150b50bf1 /arch | |
parent | b923650b84068b74b6df838aa8f9b2a350171de6 (diff) | |
download | linux-stable-0f3b3956c4946a6a991974943e3de33ae3d2523f.tar.gz linux-stable-0f3b3956c4946a6a991974943e3de33ae3d2523f.tar.bz2 linux-stable-0f3b3956c4946a6a991974943e3de33ae3d2523f.zip |
mips: use the the PCI controller's io_map_base
commit eab90291d35438bcebf7c3dc85be66d0f24e3002
(mips: switch to GENERIC_PCI_IOMAP)
failed to take into account the PCI controller's
io_map_base for mapping IO BARs.
This also caused a new warning on mips.
Fix this, without re-introducing code duplication,
by setting NO_GENERIC_PCI_IOPORT_MAP
and supplying a mips-specific __pci_ioport_map.
Reported-by: Kevin Cernekee <cernekee@gmail.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips/Kconfig | 1 | ||||
-rw-r--r-- | arch/mips/lib/iomap-pci.c | 4 |
2 files changed, 3 insertions, 2 deletions
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index c4c1312473fb..5ab6e89603c5 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig @@ -2356,6 +2356,7 @@ config PCI depends on HW_HAS_PCI select PCI_DOMAINS select GENERIC_PCI_IOMAP + select NO_GENERIC_PCI_IOPORT_MAP help Find out whether you have a PCI motherboard. PCI is the name of a bus system, i.e. the way the CPU talks to the other stuff inside diff --git a/arch/mips/lib/iomap-pci.c b/arch/mips/lib/iomap-pci.c index 2635b1a96333..fd35daa45314 100644 --- a/arch/mips/lib/iomap-pci.c +++ b/arch/mips/lib/iomap-pci.c @@ -10,8 +10,8 @@ #include <linux/module.h> #include <asm/io.h> -static void __iomem *ioport_map_pci(struct pci_dev *dev, - unsigned long port, unsigned int nr) +void __iomem *__pci_ioport_map(struct pci_dev *dev, + unsigned long port, unsigned int nr) { struct pci_controller *ctrl = dev->bus->sysdata; unsigned long base = ctrl->io_map_base; |