diff options
author | Daniel Drake <dsd@laptop.org> | 2011-07-27 12:19:00 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-08-08 16:04:18 -0400 |
commit | dfb72c4fda54b11efe0afbb4e4081af1dfa4c14f (patch) | |
tree | 176b3286832d989d954a21170e59111dffa2db8a | |
parent | 9c204b46c7af93e334114bea1f5eeaa6fea9ba07 (diff) |
libertas_usb: program OLPC EC wakeup mask for wake-on-WLAN
OLPC power management code has recently gone upstream. This piece
completes the puzzle for libertas_usb, which now programs the OLPC EC
for wlan wakeups when they have been requested.
Signed-off-by: Daniel Drake <dsd@laptop.org>
Acked-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | drivers/net/wireless/libertas/if_usb.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/net/wireless/libertas/if_usb.c b/drivers/net/wireless/libertas/if_usb.c index e368b2922ff1..ca6e0a411e9c 100644 --- a/drivers/net/wireless/libertas/if_usb.c +++ b/drivers/net/wireless/libertas/if_usb.c | |||
@@ -1112,6 +1112,15 @@ static int if_usb_suspend(struct usb_interface *intf, pm_message_t message) | |||
1112 | if (priv->psstate != PS_STATE_FULL_POWER) | 1112 | if (priv->psstate != PS_STATE_FULL_POWER) |
1113 | return -1; | 1113 | return -1; |
1114 | 1114 | ||
1115 | #ifdef CONFIG_OLPC | ||
1116 | if (machine_is_olpc()) { | ||
1117 | if (priv->wol_criteria == EHS_REMOVE_WAKEUP) | ||
1118 | olpc_ec_wakeup_clear(EC_SCI_SRC_WLAN); | ||
1119 | else | ||
1120 | olpc_ec_wakeup_set(EC_SCI_SRC_WLAN); | ||
1121 | } | ||
1122 | #endif | ||
1123 | |||
1115 | ret = lbs_suspend(priv); | 1124 | ret = lbs_suspend(priv); |
1116 | if (ret) | 1125 | if (ret) |
1117 | goto out; | 1126 | goto out; |