diff options
author | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2005-11-09 23:04:24 -0500 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2005-11-09 23:32:37 -0500 |
commit | 0f34f490290e05ee6c02e20b3811fce6f09318f4 (patch) | |
tree | f74ccd9d9f0ce385ee8de5150b24f94800635e4b /arch/ppc64/kernel | |
parent | 47c2ac8cc3cf7c484e131d10cb812b6ab198885a (diff) |
[PATCH] ppc64: fix PCI IO mapping
phbs_remap_io(), which maps the PCI IO space into the kernel virtual space,
is called too early on powermac, and thus doesn't work.
This fixes it by removing the call from all platforms and putting it back
into the ppc64 common code where it belongs, after the actual probing of
the bus.
That means that before that call, only the ISA IO space (if any) is mapped,
any PIO access (from quirks for example) will fail. This happens not to be
a problem for now, but we'll have to rework that code if it becomes one in
the future.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/ppc64/kernel')
-rw-r--r-- | arch/ppc64/kernel/pci.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/ppc64/kernel/pci.c b/arch/ppc64/kernel/pci.c index 66698fdf059e..46929fb24f3c 100644 --- a/arch/ppc64/kernel/pci.c +++ b/arch/ppc64/kernel/pci.c | |||
@@ -548,6 +548,9 @@ static int __init pcibios_init(void) | |||
548 | if (ppc64_isabridge_dev != NULL) | 548 | if (ppc64_isabridge_dev != NULL) |
549 | printk("ISA bridge at %s\n", pci_name(ppc64_isabridge_dev)); | 549 | printk("ISA bridge at %s\n", pci_name(ppc64_isabridge_dev)); |
550 | 550 | ||
551 | /* map in PCI I/O space */ | ||
552 | phbs_remap_io(); | ||
553 | |||
551 | printk("PCI: Probing PCI hardware done\n"); | 554 | printk("PCI: Probing PCI hardware done\n"); |
552 | 555 | ||
553 | return 0; | 556 | return 0; |