diff options
author | Pavel Roskin <proski@gnu.org> | 2007-02-04 03:16:08 -0500 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2007-02-07 14:03:22 +1100 |
commit | a1fdf6940a2a3d3c7475755eba5881403473252d (patch) | |
tree | f7aeae38708c8f36d675e6498643001cd80122ab /arch/powerpc/sysdev/grackle.c | |
parent | 6e47a0f38203656125bb6b81216aa4a4f506e98c (diff) |
[POWERPC] Assign all PCI busses on G3 Blue & White
G3 Blue & White is misconfigured by default so that CardBus controllers
in PCI slots don't work. The PCI bridge is programmed to only allow
access to bus 1 but not higher busses.
The patch forces the PCI busses to be reassigned if a Grackle controller
is found and the machine identifies itself as "PowerMac1,1"
Signed-off-by: Pavel Roskin <proski@gnu.org>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/sysdev/grackle.c')
-rw-r--r-- | arch/powerpc/sysdev/grackle.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/powerpc/sysdev/grackle.c b/arch/powerpc/sysdev/grackle.c index b6ec793a23b..42053625f49 100644 --- a/arch/powerpc/sysdev/grackle.c +++ b/arch/powerpc/sysdev/grackle.c @@ -56,6 +56,8 @@ static inline void grackle_set_loop_snoop(struct pci_controller *bp, int enable) void __init setup_grackle(struct pci_controller *hose) { setup_indirect_pci(hose, 0xfec00000, 0xfee00000); + if (machine_is_compatible("PowerMac1,1")) + pci_assign_all_buses = 1; if (machine_is_compatible("AAPL,PowerBook1998")) grackle_set_loop_snoop(hose, 1); #if 0 /* Disabled for now, HW problems ??? */ |