mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 11:41:38 -04:00
[PATCH] PCI: start paying attention to a lot of pci function return values
Signed-off-by: Greg Kroah-Hartman <[email protected]>
This commit is contained in:
parent
085ae41f66
commit
95a629657d
6 changed files with 39 additions and 13 deletions
|
|
@ -140,10 +140,11 @@ void __devinit pci_bus_add_devices(struct pci_bus *bus)
|
|||
void pci_enable_bridges(struct pci_bus *bus)
|
||||
{
|
||||
struct pci_dev *dev;
|
||||
int retval;
|
||||
|
||||
list_for_each_entry(dev, &bus->devices, bus_list) {
|
||||
if (dev->subordinate) {
|
||||
pci_enable_device(dev);
|
||||
retval = pci_enable_device(dev);
|
||||
pci_set_master(dev);
|
||||
pci_enable_bridges(dev->subordinate);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -272,17 +272,19 @@ static int pci_device_suspend(struct device * dev, pm_message_t state)
|
|||
}
|
||||
|
||||
|
||||
/*
|
||||
/*
|
||||
* Default resume method for devices that have no driver provided resume,
|
||||
* or not even a driver at all.
|
||||
*/
|
||||
static void pci_default_resume(struct pci_dev *pci_dev)
|
||||
{
|
||||
int retval;
|
||||
|
||||
/* restore the PCI config space */
|
||||
pci_restore_state(pci_dev);
|
||||
/* if the device was enabled before suspend, reenable */
|
||||
if (pci_dev->is_enabled)
|
||||
pci_enable_device(pci_dev);
|
||||
retval = pci_enable_device(pci_dev);
|
||||
/* if the device was busmaster before the suspend, make it busmaster again */
|
||||
if (pci_dev->is_busmaster)
|
||||
pci_set_master(pci_dev);
|
||||
|
|
|
|||
|
|
@ -444,8 +444,11 @@ pci_enable_device_bars(struct pci_dev *dev, int bars)
|
|||
{
|
||||
int err;
|
||||
|
||||
pci_set_power_state(dev, PCI_D0);
|
||||
if ((err = pcibios_enable_device(dev, bars)) < 0)
|
||||
err = pci_set_power_state(dev, PCI_D0);
|
||||
if (err)
|
||||
return err;
|
||||
err = pcibios_enable_device(dev, bars);
|
||||
if (err < 0)
|
||||
return err;
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -90,15 +90,19 @@ static void pcie_portdrv_save_config(struct pci_dev *dev)
|
|||
pci_save_msi_state(dev);
|
||||
}
|
||||
|
||||
static void pcie_portdrv_restore_config(struct pci_dev *dev)
|
||||
static int pcie_portdrv_restore_config(struct pci_dev *dev)
|
||||
{
|
||||
struct pcie_port_device_ext *p_ext = pci_get_drvdata(dev);
|
||||
int retval;
|
||||
|
||||
pci_restore_state(dev);
|
||||
if (p_ext->interrupt_mode == PCIE_PORT_MSI_MODE)
|
||||
pci_restore_msi_state(dev);
|
||||
pci_enable_device(dev);
|
||||
retval = pci_enable_device(dev);
|
||||
if (retval)
|
||||
return retval;
|
||||
pci_set_master(dev);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
|||
Loading…
Reference in a new issue