diff options
author | Daniel Halperin <dhalperi@cs.washington.edu> | 2010-01-19 10:22:19 -0800 |
---|---|---|
committer | Reinette Chatre <reinette.chatre@intel.com> | 2010-01-29 11:13:19 -0800 |
commit | 49dcc819b077c2d473062e17d5a1373a8b660e02 (patch) | |
tree | 79a2869a213ef3fc9ba2c9cb3cac8f74fb1ca180 /drivers/net/wireless/iwlwifi | |
parent | 1dbfd9d46a6df5232ba0b12d2da950da89eff3da (diff) | |
download | op-kernel-dev-49dcc819b077c2d473062e17d5a1373a8b660e02.zip op-kernel-dev-49dcc819b077c2d473062e17d5a1373a8b660e02.tar.gz |
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')
-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 4a26892..380d208 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, break; case STA_NOTIFY_AWAKE: WARN_ON(!sta_priv->client); + if (!sta_priv->asleep) + break; sta_priv->asleep = false; sta_id = iwl_find_station(priv, sta->addr); if (sta_id != IWL_INVALID_STATION) |