help with pci probing at boot time

From: Chris Friesen
Date: Tue Jun 08 2004 - 17:15:31 EST



I'm trying to boot an mcpn765 card with 2.6.5 and I seem to be running into PCI issues.

There is a calling sequence in the 765 boot that goes like this:

arch_initcall(ppc_init);
ppc_md.init()
mcpn765_init2()
mcpn765_setup_via_82c586b()

This last function tries to find a particular VIA bridge using pci_find_device(), and if it doesn't find it it dumps an error message and halts. This is what I'm seeing.

I tried to figure out how the PCI probing thing worked (I have CONFIG_HOTPLUG=n) but I couldn't figure out the call chain. (pci_devices gets added to by pci_bus_add_devices, which gets called by pci_do_scan_bus and pci_scan_bus_parented, but neither of those seems to get called by anyone in the ppc kernel, and all other callers of pci_bus_add_devices are hotplug-related or in another architecture.)

I instrumented the PCI probing functions, and they do not seem to be called before the ppc_init path, which presents difficulties since pci_find_device() doesn't have the data it needs to actually do its job.

Any suggestions?

Chris
-
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/