aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRajkumar Manoharan <rmanoharan@atheros.com>2011-01-31 13:58:59 -0500
committerJohn W. Linville <linville@tuxdriver.com>2011-01-31 15:06:26 -0500
commit8c7914dec29f39a6a8ca348a5eeace40a59be65d (patch)
tree36691f711b67e10b5bbf3a114dea8a6a73fc8bf4
parent5a3a0352f39c81dfa5c30a190ad04d115616c3e6 (diff)
mac80211: disable power save if an infra AP vif exists
PS should not be enabled if an infra AP vif exists in the interface list. So while recalculating PS, AP vif type should be taken into account. Reviewed-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: Rajkumar Manoharan <rmanoharan@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--net/mac80211/mlme.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
index 32210695b8b6..dfa752e5520b 100644
--- a/net/mac80211/mlme.c
+++ b/net/mac80211/mlme.c
@@ -601,6 +601,14 @@ void ieee80211_recalc_ps(struct ieee80211_local *local, s32 latency)
601 list_for_each_entry(sdata, &local->interfaces, list) { 601 list_for_each_entry(sdata, &local->interfaces, list) {
602 if (!ieee80211_sdata_running(sdata)) 602 if (!ieee80211_sdata_running(sdata))
603 continue; 603 continue;
604 if (sdata->vif.type == NL80211_IFTYPE_AP) {
605 /* If an AP vif is found, then disable PS
606 * by setting the count to zero thereby setting
607 * ps_sdata to NULL.
608 */
609 count = 0;
610 break;
611 }
604 if (sdata->vif.type != NL80211_IFTYPE_STATION) 612 if (sdata->vif.type != NL80211_IFTYPE_STATION)
605 continue; 613 continue;
606 found = sdata; 614 found = sdata;