Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1a1769f32349a188db48cf81fe306b6f841fc246
Commit:     1a1769f32349a188db48cf81fe306b6f841fc246
Parent:     d0cab89601c3afb6067175de6796bc7bb9a3f56c
Author:     Steffen Klassert <[EMAIL PROTECTED]>
AuthorDate: Tue Oct 16 14:24:09 2007 -0700
Committer:  Jeff Garzik <[EMAIL PROTECTED]>
CommitDate: Tue Oct 16 21:10:29 2007 -0400

    WOL bugfix for 3c59x.c
    
    Some NICs (3c905B) can not generate PME in power state PCI_D0, while others
    like 3c905C can.  Call pci_enable_wake() with PCI_D3hot should give proper
    WOL for 3c905B.
    
    Signed-off-by: Steffen Klassert <[EMAIL PROTECTED]>
    Tested-by: Harry Coin <[EMAIL PROTECTED]>
    Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
    Signed-off-by: Jeff Garzik <[EMAIL PROTECTED]>
---
 drivers/net/3c59x.c |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/drivers/net/3c59x.c b/drivers/net/3c59x.c
index 8d3893d..862f472 100644
--- a/drivers/net/3c59x.c
+++ b/drivers/net/3c59x.c
@@ -3118,7 +3118,13 @@ static void acpi_set_WOL(struct net_device *dev)
                iowrite16(SetRxFilter|RxStation|RxMulticast|RxBroadcast, ioaddr 
+ EL3_CMD);
                iowrite16(RxEnable, ioaddr + EL3_CMD);
 
-               pci_enable_wake(VORTEX_PCI(vp), 0, 1);
+               if (pci_enable_wake(VORTEX_PCI(vp), PCI_D3hot, 1)) {
+                       printk(KERN_INFO "%s: WOL not supported.\n",
+                                       pci_name(VORTEX_PCI(vp)));
+
+                       vp->enable_wol = 0;
+                       return;
+               }
 
                /* Change the power state to D3; RxEnable doesn't take effect. 
*/
                pci_set_power_state(VORTEX_PCI(vp), PCI_D3hot);
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to