Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6905b1f1 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki Committed by David S. Miller
Browse files

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: default avatarRafael J. Wysocki <rjw@sisk.pl>
Acked-by: default avatarAndreas Mohr <andi@lisas.de>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent ab0a8e6c
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -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_set_power_state(pdev, PCI_D3hot);

	return 0;
}

#ifdef CONFIG_PM