Re: [PATCH] Fixup for DEC 21154 bridge to allow CardBus support
From: Pavel Roskin <hidden>
Date: 2004-05-24 05:21:11
Hi, Benjamin! On Mon, 24 May 2004, Benjamin Herrenschmidt wrote:
quoted
As a side not, the kernel says that the Host bridge (Motorola MPC106 Grackle) is configured to support buses 0 and 1. Those values come from the "bus-range" property. I believe this limitation is not enforced, or it would also hinder CardBus support.It's a bit nasty right now... You may bump into other problems, the main issue is OF not setting a proper bus range.
I actually tried to replace all references to "bus-range" with "bus-bogus" in the kernel. The kernel would print Found Grackle (MPC106) PCI host bridge at 0x80000000. Firmware bus number: 0->255 instead of "0->1", but I didn't notice any difference with regards to CardBus support.
Anyway, you should make your patch machine specific to avoid screwing up other possible busses...
I have CONFIG_PPC_PMAC condition already. This plus the exact vendor and device ID should be machine specific. I can check that the machine is "PowerMac1,1" if you want. I have no idea if G4 models have this problem.
(hrm... not too sure in fact if the linux common PCI code will properly fixup the last subordinate bus number, you may also want to only give a range of 5 or 10 bus numbers in case somebody plugs another PCI card with a P2P bridge on it, maybe just read the bus number and rewrite it adding 5 or so...)
I assumed that all PCI devices inserted to the slots would be on the bus 1 and thus behind the DEC bridge I'm reconfiguring. Now I see that the video card is on bus 0 somehow. Maybe that particular slot is wired differently. If you really think that somebody could insert a P2P bridge instead of the video card, then maybe I should leave some space. I seem to remember that some multihead cards (Colorgraphic Predator LT) have internal bridges. There are 3 PCI slots other than VGA. Every card can have 2 CardBus slots. Every CardBus bridge uses 4 buses. That's 24 buses, from 2 to 25. The fixed patch is attached. -- Regards, Pavel Roskin
Attachments
- dec_fixup_2.diff [text/plain] 1621 bytes · preview