Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 37946
b: refs/heads/master
c: 975b366
h: refs/heads/master
v: v3
  • Loading branch information
Auke Kok authored and Auke Kok committed Sep 27, 2006
1 parent 4ad2d6e commit 82558d4
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 32 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: dc45010e28bc4a1bfa6043eee31d1c59e93e1546
refs/heads/master: 975b366af66280ed5b852a1a0446586ce71e306e
51 changes: 20 additions & 31 deletions trunk/drivers/net/e100.c
Original file line number Diff line number Diff line change
Expand Up @@ -2715,68 +2715,56 @@ static void __devexit e100_remove(struct pci_dev *pdev)
}
}

#ifdef CONFIG_PM
static int e100_suspend(struct pci_dev *pdev, pm_message_t state)
{
struct net_device *netdev = pci_get_drvdata(pdev);
struct nic *nic = netdev_priv(netdev);
int retval;

if(netif_running(netdev))
if (netif_running(netdev))
e100_down(nic);
e100_hw_reset(nic);
netif_device_detach(netdev);

#ifdef CONFIG_PM
pci_save_state(pdev);
retval = pci_enable_wake(pdev, pci_choose_state(pdev, state),
nic->flags & (wol_magic | e100_asf(nic)));
if (retval)
DPRINTK(PROBE,ERR, "Error enabling wake\n");
if (nic->flags & (wol_magic | e100_asf(nic)))
#else
if (nic->flags & (wol_magic))
#endif
pci_enable_wake(pdev, pci_choose_state(pdev, state), 1);
else
/* disable PME */
pci_enable_wake(pdev, 0, 0);

pci_disable_device(pdev);
retval = pci_set_power_state(pdev, pci_choose_state(pdev, state));
if (retval)
DPRINTK(PROBE,ERR, "Error %d setting power state\n", retval);
pci_set_power_state(pdev, pci_choose_state(pdev, state));

return 0;
}

#ifdef CONFIG_PM
static int e100_resume(struct pci_dev *pdev)
{
struct net_device *netdev = pci_get_drvdata(pdev);
struct nic *nic = netdev_priv(netdev);
int retval;

retval = pci_set_power_state(pdev, PCI_D0);
if (retval)
DPRINTK(PROBE,ERR, "Error waking adapter\n");
pci_set_power_state(pdev, PCI_D0);
pci_restore_state(pdev);
/* ack any pending wake events, disable PME */
retval = pci_enable_wake(pdev, 0, 0);
if (retval)
DPRINTK(PROBE,ERR, "Error clearing wake events\n");
pci_enable_wake(pdev, 0, 0);

netif_device_attach(netdev);
if(netif_running(netdev))
if (netif_running(netdev))
e100_up(nic);

return 0;
}
#endif
#endif /* CONFIG_PM */


static void e100_shutdown(struct pci_dev *pdev)
{
struct net_device *netdev = pci_get_drvdata(pdev);
struct nic *nic = netdev_priv(netdev);
int retval;

#ifdef CONFIG_PM
retval = pci_enable_wake(pdev, 0, nic->flags & (wol_magic | e100_asf(nic)));
#else
retval = pci_enable_wake(pdev, 0, nic->flags & (wol_magic));
#endif
if (retval)
DPRINTK(PROBE,ERR, "Error enabling wake\n");
e100_suspend(pdev, PMSG_SUSPEND);
}

/* ------------------ PCI Error Recovery infrastructure -------------- */
Expand Down Expand Up @@ -2860,8 +2848,9 @@ static struct pci_driver e100_driver = {
.id_table = e100_id_table,
.probe = e100_probe,
.remove = __devexit_p(e100_remove),
#ifdef CONFIG_PM
/* Power Management hooks */
.suspend = e100_suspend,
#ifdef CONFIG_PM
.resume = e100_resume,
#endif
.shutdown = e100_shutdown,
Expand Down

0 comments on commit 82558d4

Please sign in to comment.