diff -Naur linux-2.6.0-test2.orig.pci/drivers/pci/pci-driver.c linux-2.6.0-test2.my.pci/drivers/pci/pci-driver.c --- linux-2.6.0-test2.orig.pci/drivers/pci/pci-driver.c 2003-08-07 16:14:36.000000000 -0500 +++ linux-2.6.0-test2.my.pci/drivers/pci/pci-driver.c 2003-08-07 21:23:51.000000000 -0500 @@ -122,10 +122,8 @@ if (!pci_dev->driver && drv->probe) { error = pci_device_probe_static(drv, pci_dev); - if (error >= 0) - return error; - - error = pci_device_probe_dynamic(drv, pci_dev); + if (error == -ENODEV) + error = pci_device_probe_dynamic(drv, pci_dev); } return error; }