PCI bug?

From: Li, Shaohua
Date: Tue Mar 23 2004 - 21:46:54 EST


Hi,
I have two questions.There are one p2p bridge and 2 card bus bridges
under the p2p bridge. Firmware assign 8 for p2p bridge's subordinate bus
number. Since the bridge has default bridge number, PCI will not assign
again. But PCI does assign bus number 3~6 and 7~10 to the cardbus
bridge. And it's oversized. I must add pci=assign-busses. I guess many
systems with cardbus bridge have the problem. My question is if
pci=assign-busses should be the default behave.

And another question. Some bridges allocate many bus numbers, but they
don't use them right
now. A case is cardbus bridge. So should pci_bus_max_busnr return max
allocated bus number?

pci_bus_max_busnr(struct pci_bus* bus)
{
struct list_head *tmp;
unsigned char max, n;

- max = bus->number;
+ max = bus->subordinate;
list_for_each(tmp, &bus->children) {
n = pci_bus_max_busnr(pci_bus_b(tmp));
if(n > max)
max = n;
}
return max;
}

thanks,
David
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/