diff options
| author | John W. Linville <linville@tuxdriver.com> | 2010-11-24 16:49:20 -0500 |
|---|---|---|
| committer | John W. Linville <linville@tuxdriver.com> | 2010-11-24 16:49:20 -0500 |
| commit | 51cce8a590c4696d62bfacc63378d1036084cef7 (patch) | |
| tree | dc24485bdff37ca6a83c69e93ffdbe5c5807b59d /drivers/net/wireless/libertas/cmd.c | |
| parent | 2fe66ec242d3f76e3b0101f36419e7e5405bcff3 (diff) | |
| parent | 4f8559383c41262b50dc758e2e310f257ce6a14d (diff) | |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem
Diffstat (limited to 'drivers/net/wireless/libertas/cmd.c')
| -rw-r--r-- | drivers/net/wireless/libertas/cmd.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/net/wireless/libertas/cmd.c b/drivers/net/wireless/libertas/cmd.c index 70745928f3f..78c4da150a7 100644 --- a/drivers/net/wireless/libertas/cmd.c +++ b/drivers/net/wireless/libertas/cmd.c @@ -177,6 +177,14 @@ int lbs_host_sleep_cfg(struct lbs_private *priv, uint32_t criteria, struct cmd_ds_host_sleep cmd_config; int ret; + /* + * Certain firmware versions do not support EHS_REMOVE_WAKEUP command + * and the card will return a failure. Since we need to be + * able to reset the mask, in those cases we set a 0 mask instead. + */ + if (criteria == EHS_REMOVE_WAKEUP && !priv->ehs_remove_supported) + criteria = 0; + cmd_config.hdr.size = cpu_to_le16(sizeof(cmd_config)); cmd_config.criteria = cpu_to_le32(criteria); cmd_config.gpio = priv->wol_gpio; |
