Ok, the 2-pass thing is almost done, seems to work on my
alpha and i386 boxes.
Now I have in pci_read_bases():
if (dev->skip_probe)
return;
/* Disable I/O & memory decoding while we size the BARs. */
pci_read_config_word(dev, PCI_COMMAND, &cmd);
pci_write_config_word(dev, PCI_COMMAND,
cmd & ~(PCI_COMMAND_IO | PCI_COMMAND_MEMORY));
for(pos=0; pos<howmany; pos = next) {
...
The "skip_probe" (single-bit field) can be set in the phase #1.
It's intended for stuff like pmac combo I/O ASIC, which probably
shouldn't be disabled even for a short time.
If it looks ok, I'll have a complete patch tomorrow, including
updates for all architectures and hotplug drivers.
Ivan.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/