From: Rafael J. Wysocki Date: Sun, 14 Jun 2009 09:46:46 +0000 (+0000) Subject: Net / e100: Fix suspend of devices that cannot be power managed X-Git-Tag: v3.0~8655^2~48 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6905b1f1a03a48dcf115a2927f7b87dba8d5e566;p=platform%2Fkernel%2Flinux-amlogic.git 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 Acked-by: Andreas Mohr Signed-off-by: David S. Miller --- diff --git a/drivers/net/e100.c b/drivers/net/e100.c index f7929e8..efa680f 100644 --- a/drivers/net/e100.c +++ b/drivers/net/e100.c @@ -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) { - if (wake) { + if (wake) return pci_prepare_to_sleep(pdev); - } else { - pci_wake_from_d3(pdev, false); - return pci_set_power_state(pdev, PCI_D3hot); - } + + pci_wake_from_d3(pdev, false); + pci_set_power_state(pdev, PCI_D3hot); + + return 0; } #ifdef CONFIG_PM