|
@@ -5975,10 +5975,12 @@ static void nv_shutdown(struct pci_dev *pdev)
|
|
|
if (netif_running(dev))
|
|
|
nv_close(dev);
|
|
|
|
|
|
- pci_enable_wake(pdev, PCI_D3hot, np->wolenabled);
|
|
|
- pci_enable_wake(pdev, PCI_D3cold, np->wolenabled);
|
|
|
pci_disable_device(pdev);
|
|
|
- pci_set_power_state(pdev, PCI_D3hot);
|
|
|
+ if (system_state == SYSTEM_POWER_OFF) {
|
|
|
+ if (pci_enable_wake(pdev, PCI_D3cold, np->wolenabled))
|
|
|
+ pci_enable_wake(pdev, PCI_D3hot, np->wolenabled);
|
|
|
+ pci_set_power_state(pdev, PCI_D3hot);
|
|
|
+ }
|
|
|
}
|
|
|
#else
|
|
|
#define nv_suspend NULL
|