aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/atlx/atl1.c
diff options
context:
space:
mode:
authorJay Cliburn <jacliburn@bellsouth.net>2008-05-09 23:12:08 -0400
committerJeff Garzik <jgarzik@redhat.com>2008-05-13 01:30:24 -0400
commitbf455a2247c6abe7d0debfbf2974514b5144ed4d (patch)
tree06bc5da1985b51e63e7ce1aa1ad08980ffebdc35 /drivers/net/atlx/atl1.c
parent08e0f1dc8388b3e134c714672c59edc2a7059430 (diff)
atl1: add shutdown callback
Add a shutdown callback that points to atl1_suspend(). This, along with a working suspend function, fixes wake-on-lan. Tested-by: Per Olofsson <pelle@dsv.su.se> Signed-off-by: Jay Cliburn <jacliburn@bellsouth.net> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Diffstat (limited to 'drivers/net/atlx/atl1.c')
-rw-r--r--drivers/net/atlx/atl1.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/net/atlx/atl1.c b/drivers/net/atlx/atl1.c
index 12fb3e5529d1..b7092a330f56 100644
--- a/drivers/net/atlx/atl1.c
+++ b/drivers/net/atlx/atl1.c
@@ -36,7 +36,6 @@
36 * A very incomplete list of things that need to be dealt with: 36 * A very incomplete list of things that need to be dealt with:
37 * 37 *
38 * TODO: 38 * TODO:
39 * Wake on LAN.
40 * Add more ethtool functions. 39 * Add more ethtool functions.
41 * Fix abstruse irq enable/disable condition described here: 40 * Fix abstruse irq enable/disable condition described here:
42 * http://marc.theaimsgroup.com/?l=linux-netdev&m=116398508500553&w=2 41 * http://marc.theaimsgroup.com/?l=linux-netdev&m=116398508500553&w=2
@@ -2908,6 +2907,13 @@ static int atl1_resume(struct pci_dev *pdev)
2908#define atl1_resume NULL 2907#define atl1_resume NULL
2909#endif 2908#endif
2910 2909
2910static void atl1_shutdown(struct pci_dev *pdev)
2911{
2912#ifdef CONFIG_PM
2913 atl1_suspend(pdev, PMSG_SUSPEND);
2914#endif
2915}
2916
2911#ifdef CONFIG_NET_POLL_CONTROLLER 2917#ifdef CONFIG_NET_POLL_CONTROLLER
2912static void atl1_poll_controller(struct net_device *netdev) 2918static void atl1_poll_controller(struct net_device *netdev)
2913{ 2919{
@@ -3154,7 +3160,8 @@ static struct pci_driver atl1_driver = {
3154 .probe = atl1_probe, 3160 .probe = atl1_probe,
3155 .remove = __devexit_p(atl1_remove), 3161 .remove = __devexit_p(atl1_remove),
3156 .suspend = atl1_suspend, 3162 .suspend = atl1_suspend,
3157 .resume = atl1_resume 3163 .resume = atl1_resume,
3164 .shutdown = atl1_shutdown
3158}; 3165};
3159 3166
3160/* 3167/*