diff options
author | Daniel Halperin <dhalperi@cs.washington.edu> | 2010-01-19 13:22:19 -0500 |
---|---|---|
committer | Reinette Chatre <reinette.chatre@intel.com> | 2010-01-29 14:13:19 -0500 |
commit | 49dcc819b077c2d473062e17d5a1373a8b660e02 (patch) | |
tree | 79a2869a213ef3fc9ba2c9cb3cac8f74fb1ca180 /drivers/net/wireless/iwlwifi/iwl-agn.c | |
parent | 1dbfd9d46a6df5232ba0b12d2da950da89eff3da (diff) |
iwlwifi: optimize power saving
In hostap AP mode, every time the client sends the AP
a packet the STA_NOTIFY_AWAKE code is sent from mac80211.
This results in a command being sent to the uCode even if
the client was not asleep.
The following simple patch has fixed the issue for me without any
degradation that I can find.
Signed-off-by: Daniel Halperin <dhalperi@cs.washington.edu>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-agn.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-agn.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c index 4a268927377b..380d2087bf3a 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn.c | |||
@@ -3007,6 +3007,8 @@ static void iwl_mac_sta_notify(struct ieee80211_hw *hw, | |||
3007 | break; | 3007 | break; |
3008 | case STA_NOTIFY_AWAKE: | 3008 | case STA_NOTIFY_AWAKE: |
3009 | WARN_ON(!sta_priv->client); | 3009 | WARN_ON(!sta_priv->client); |
3010 | if (!sta_priv->asleep) | ||
3011 | break; | ||
3010 | sta_priv->asleep = false; | 3012 | sta_priv->asleep = false; |
3011 | sta_id = iwl_find_station(priv, sta->addr); | 3013 | sta_id = iwl_find_station(priv, sta->addr); |
3012 | if (sta_id != IWL_INVALID_STATION) | 3014 | if (sta_id != IWL_INVALID_STATION) |