Net / e100: Fix suspend of devices that cannot be power managed
If the adapter is not power-manageable using either ACPI, or the native PCI PM interface, __e100_power_off() returns error code, which causes every attempt to suspend to fail, although it should return 0 in such a case. Fix this problem by ignoring the return value of pci_set_power_state() in __e100_power_off(). Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Acked-by: Andreas Mohr <andi@lisas.de> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
ab0a8e6c66
commit
6905b1f1a0
@@ -2895,12 +2895,13 @@ static void __e100_shutdown(struct pci_dev *pdev, bool *enable_wake)
|
|||||||
|
|
||||||
static int __e100_power_off(struct pci_dev *pdev, bool wake)
|
static int __e100_power_off(struct pci_dev *pdev, bool wake)
|
||||||
{
|
{
|
||||||
if (wake) {
|
if (wake)
|
||||||
return pci_prepare_to_sleep(pdev);
|
return pci_prepare_to_sleep(pdev);
|
||||||
} else {
|
|
||||||
pci_wake_from_d3(pdev, false);
|
pci_wake_from_d3(pdev, false);
|
||||||
return pci_set_power_state(pdev, PCI_D3hot);
|
pci_set_power_state(pdev, PCI_D3hot);
|
||||||
}
|
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_PM
|
#ifdef CONFIG_PM
|
||||||
|
Reference in New Issue
Block a user