Index: work3/drivers/pci/hotplug/cpqphp_core.c =================================================================== --- work3.orig/drivers/pci/hotplug/cpqphp_core.c 2005-09-23 10:44:30.000000000 -0600 +++ work3/drivers/pci/hotplug/cpqphp_core.c 2005-09-26 15:06:46.000000000 -0600 @@ -794,6 +794,14 @@ u32 rc; struct controller *ctrl; struct pci_func *func; + int err; + + err = pci_enable_device(pdev); + if (err) { + printk(KERN_ERR MY_NAME ": cannot enable PCI device %s (%d)\n", + pci_name(pdev), err); + return err; + } // Need to read VID early b/c it's used to differentiate CPQ and INTC discovery rc = pci_read_config_word(pdev, PCI_VENDOR_ID, &vendor_id); Index: work3/drivers/i2c/busses/i2c-piix4.c =================================================================== --- work3.orig/drivers/i2c/busses/i2c-piix4.c 2005-09-23 10:44:27.000000000 -0600 +++ work3/drivers/i2c/busses/i2c-piix4.c 2005-09-26 15:24:19.000000000 -0600 @@ -433,9 +433,17 @@ { int retval; + retval = pci_enable_device(dev); + if (retval) { + dev_err(&dev->dev, "Couldn't enable device (%d)\n", retval); + return retval; + } + retval = piix4_setup(dev, id); - if (retval) + if (retval) { + pci_disable_device(dev); return retval; + } /* set up the driverfs linkage to our parent device */ piix4_adapter.dev.parent = &dev->dev;