summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/iwlwifi/iwl-sta.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2011-10-10 07:26:54 -0700
committerJohn W. Linville <linville@tuxdriver.com>2011-10-14 14:48:10 -0400
commitc079166e1bb5d8e8ee9ee25f5a2ea3ff457ead65 (patch)
tree159b5a3fd40b9f89d2c0e46d29a8188c897bebe3 /drivers/net/wireless/iwlwifi/iwl-sta.c
parent164ae97eb5be612b58b2b1b395bb8287f555c661 (diff)
iwlagn: send simple LQ command for WoWLAN
For some reason, WoWLAN doesn't always seem to be happy with more advanced LQ commands. Since we don't need them as we're not going to send a lot of data, simply program the station with the very simple default LQ command. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-sta.c')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-sta.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-sta.c b/drivers/net/wireless/iwlwifi/iwl-sta.c
index 580a4d702ff..30bfdd36e42 100644
--- a/drivers/net/wireless/iwlwifi/iwl-sta.c
+++ b/drivers/net/wireless/iwlwifi/iwl-sta.c
@@ -595,8 +595,11 @@ void iwl_restore_stations(struct iwl_priv *priv, struct iwl_rxon_context *ctx)
sizeof(struct iwl_addsta_cmd));
send_lq = false;
if (priv->stations[i].lq) {
- memcpy(&lq, priv->stations[i].lq,
- sizeof(struct iwl_link_quality_cmd));
+ if (priv->shrd->wowlan)
+ iwl_sta_fill_lq(priv, ctx, i, &lq);
+ else
+ memcpy(&lq, priv->stations[i].lq,
+ sizeof(struct iwl_link_quality_cmd));
send_lq = true;
}
spin_unlock_irqrestore(&priv->shrd->sta_lock,