summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFred Zhou <fred.zy@gmail.com>2013-09-09 23:03:41 +0800
committerJohannes Berg <johannes.berg@intel.com>2013-10-01 12:24:29 +0200
commit1f4ffde845861acfe2eeaf6a2a965c02eecaad08 (patch)
tree7a2136b27f0666961aaab58aae4f5a7ca7336156
parent0cfcefef1945c6d3f24bce1c22937cfeae07eae8 (diff)
downloadlinux-1f4ffde845861acfe2eeaf6a2a965c02eecaad08.tar.bz2
mac80211: improve default WMM parameter setting
Move the default setting for WMM parameters outside the for loop to avoid redundant assignment multiple times. Signed-off-by: Fred Zhou <fred.zy@gmail.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r--net/mac80211/util.c27
1 files changed, 14 insertions, 13 deletions
diff --git a/net/mac80211/util.c b/net/mac80211/util.c
index 1fb31f94bf89..550a6880625d 100644
--- a/net/mac80211/util.c
+++ b/net/mac80211/util.c
@@ -1004,14 +1004,21 @@ void ieee80211_set_wmm_default(struct ieee80211_sub_if_data *sdata,
*/
enable_qos = (sdata->vif.type != NL80211_IFTYPE_STATION);
- for (ac = 0; ac < IEEE80211_NUM_ACS; ac++) {
- /* Set defaults according to 802.11-2007 Table 7-37 */
- aCWmax = 1023;
- if (use_11b)
- aCWmin = 31;
- else
- aCWmin = 15;
+ /* Set defaults according to 802.11-2007 Table 7-37 */
+ aCWmax = 1023;
+ if (use_11b)
+ aCWmin = 31;
+ else
+ aCWmin = 15;
+ /* Confiure old 802.11b/g medium access rules. */
+ qparam.cw_max = aCWmax;
+ qparam.cw_min = aCWmin;
+ qparam.txop = 0;
+ qparam.aifs = 2;
+
+ for (ac = 0; ac < IEEE80211_NUM_ACS; ac++) {
+ /* Update if QoS is enabled. */
if (enable_qos) {
switch (ac) {
case IEEE80211_AC_BK:
@@ -1047,12 +1054,6 @@ void ieee80211_set_wmm_default(struct ieee80211_sub_if_data *sdata,
qparam.aifs = 2;
break;
}
- } else {
- /* Confiure old 802.11b/g medium access rules. */
- qparam.cw_max = aCWmax;
- qparam.cw_min = aCWmin;
- qparam.txop = 0;
- qparam.aifs = 2;
}
qparam.uapsd = false;