aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/mlme.c
diff options
context:
space:
mode:
authorRajkumar Manoharan <rmanoharan@atheros.com>2011-02-01 00:28:59 +0530
committerJohn W. Linville <linville@tuxdriver.com>2011-01-31 15:06:26 -0500
commit8c7914dec29f39a6a8ca348a5eeace40a59be65d (patch)
tree36691f711b67e10b5bbf3a114dea8a6a73fc8bf4 /net/mac80211/mlme.c
parent5a3a0352f39c81dfa5c30a190ad04d115616c3e6 (diff)
downloadkernel_samsung_smdk4412-8c7914dec29f39a6a8ca348a5eeace40a59be65d.zip
kernel_samsung_smdk4412-8c7914dec29f39a6a8ca348a5eeace40a59be65d.tar.gz
kernel_samsung_smdk4412-8c7914dec29f39a6a8ca348a5eeace40a59be65d.tar.bz2
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>
Diffstat (limited to 'net/mac80211/mlme.c')
-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 3221069..dfa752e 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)
list_for_each_entry(sdata, &local->interfaces, list) {
if (!ieee80211_sdata_running(sdata))
continue;
+ if (sdata->vif.type == NL80211_IFTYPE_AP) {
+ /* If an AP vif is found, then disable PS
+ * by setting the count to zero thereby setting
+ * ps_sdata to NULL.
+ */
+ count = 0;
+ break;
+ }
if (sdata->vif.type != NL80211_IFTYPE_STATION)
continue;
found = sdata;