summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteffen Klassert <klassert@mathematik.tu-chemnitz.de>2009-01-09 03:53:17 +0000
committerDavid S. Miller <davem@davemloft.net>2009-01-11 00:06:32 -0800
commitc17931c52ec6b1af710185986e10c344039edeb7 (patch)
treeebda2fd65c5eb5bffe8b9c3ff7341f737061da16
parent3d58cefd823e47209ffcac9cada0a618771da1a4 (diff)
3c59x: Use device_set_wakeup_enable
Since dev->power.should_wakeup bit is used by the PCI core to decide whether the device should wake up the system from sleep states, set this bit by calling device_set_wakeup_enable(). This restores proper WOL for the 3c59x driver. Reported-and-tested-by: Graeme Wilford <gwilford@gmail.com> Reported-by: Gunnar Degnbol <degnbol@danbbs.dk> Signed-off-by: Steffen Klassert <klassert@mathematik.tu-chemnitz.de> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/3c59x.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/3c59x.c b/drivers/net/3c59x.c
index 665e7fdf27a..cdbbb6226fc 100644
--- a/drivers/net/3c59x.c
+++ b/drivers/net/3c59x.c
@@ -3109,6 +3109,8 @@ static void acpi_set_WOL(struct net_device *dev)
struct vortex_private *vp = netdev_priv(dev);
void __iomem *ioaddr = vp->ioaddr;
+ device_set_wakeup_enable(vp->gendev, vp->enable_wol);
+
if (vp->enable_wol) {
/* Power up on: 1==Downloaded Filter, 2==Magic Packets, 4==Link Status. */
EL3WINDOW(7);