diff options
Diffstat (limited to 'net/mac80211/mlme.c')
-rw-r--r-- | net/mac80211/mlme.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 079038d26a14..8149a37c93ee 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c | |||
@@ -1141,7 +1141,7 @@ static void ieee80211_sta_wmm_params(struct ieee80211_local *local, | |||
1141 | 1141 | ||
1142 | memset(¶ms, 0, sizeof(params)); | 1142 | memset(¶ms, 0, sizeof(params)); |
1143 | 1143 | ||
1144 | local->wmm_acm = 0; | 1144 | sdata->wmm_acm = 0; |
1145 | for (; left >= 4; left -= 4, pos += 4) { | 1145 | for (; left >= 4; left -= 4, pos += 4) { |
1146 | int aci = (pos[0] >> 5) & 0x03; | 1146 | int aci = (pos[0] >> 5) & 0x03; |
1147 | int acm = (pos[0] >> 4) & 0x01; | 1147 | int acm = (pos[0] >> 4) & 0x01; |
@@ -1152,21 +1152,21 @@ static void ieee80211_sta_wmm_params(struct ieee80211_local *local, | |||
1152 | case 1: /* AC_BK */ | 1152 | case 1: /* AC_BK */ |
1153 | queue = 3; | 1153 | queue = 3; |
1154 | if (acm) | 1154 | if (acm) |
1155 | local->wmm_acm |= BIT(1) | BIT(2); /* BK/- */ | 1155 | sdata->wmm_acm |= BIT(1) | BIT(2); /* BK/- */ |
1156 | if (uapsd_queues & IEEE80211_WMM_IE_STA_QOSINFO_AC_BK) | 1156 | if (uapsd_queues & IEEE80211_WMM_IE_STA_QOSINFO_AC_BK) |
1157 | uapsd = true; | 1157 | uapsd = true; |
1158 | break; | 1158 | break; |
1159 | case 2: /* AC_VI */ | 1159 | case 2: /* AC_VI */ |
1160 | queue = 1; | 1160 | queue = 1; |
1161 | if (acm) | 1161 | if (acm) |
1162 | local->wmm_acm |= BIT(4) | BIT(5); /* CL/VI */ | 1162 | sdata->wmm_acm |= BIT(4) | BIT(5); /* CL/VI */ |
1163 | if (uapsd_queues & IEEE80211_WMM_IE_STA_QOSINFO_AC_VI) | 1163 | if (uapsd_queues & IEEE80211_WMM_IE_STA_QOSINFO_AC_VI) |
1164 | uapsd = true; | 1164 | uapsd = true; |
1165 | break; | 1165 | break; |
1166 | case 3: /* AC_VO */ | 1166 | case 3: /* AC_VO */ |
1167 | queue = 0; | 1167 | queue = 0; |
1168 | if (acm) | 1168 | if (acm) |
1169 | local->wmm_acm |= BIT(6) | BIT(7); /* VO/NC */ | 1169 | sdata->wmm_acm |= BIT(6) | BIT(7); /* VO/NC */ |
1170 | if (uapsd_queues & IEEE80211_WMM_IE_STA_QOSINFO_AC_VO) | 1170 | if (uapsd_queues & IEEE80211_WMM_IE_STA_QOSINFO_AC_VO) |
1171 | uapsd = true; | 1171 | uapsd = true; |
1172 | break; | 1172 | break; |
@@ -1174,7 +1174,7 @@ static void ieee80211_sta_wmm_params(struct ieee80211_local *local, | |||
1174 | default: | 1174 | default: |
1175 | queue = 2; | 1175 | queue = 2; |
1176 | if (acm) | 1176 | if (acm) |
1177 | local->wmm_acm |= BIT(0) | BIT(3); /* BE/EE */ | 1177 | sdata->wmm_acm |= BIT(0) | BIT(3); /* BE/EE */ |
1178 | if (uapsd_queues & IEEE80211_WMM_IE_STA_QOSINFO_AC_BE) | 1178 | if (uapsd_queues & IEEE80211_WMM_IE_STA_QOSINFO_AC_BE) |
1179 | uapsd = true; | 1179 | uapsd = true; |
1180 | break; | 1180 | break; |
@@ -1275,7 +1275,7 @@ static void ieee80211_set_associated(struct ieee80211_sub_if_data *sdata, | |||
1275 | 1275 | ||
1276 | bss_info_changed |= BSS_CHANGED_BEACON_INT; | 1276 | bss_info_changed |= BSS_CHANGED_BEACON_INT; |
1277 | bss_info_changed |= ieee80211_handle_bss_capability(sdata, | 1277 | bss_info_changed |= ieee80211_handle_bss_capability(sdata, |
1278 | cbss->capability, bss->has_erp_value, bss->erp_value); | 1278 | bss_conf->assoc_capability, bss->has_erp_value, bss->erp_value); |
1279 | 1279 | ||
1280 | sdata->u.mgd.beacon_timeout = usecs_to_jiffies(ieee80211_tu_to_usec( | 1280 | sdata->u.mgd.beacon_timeout = usecs_to_jiffies(ieee80211_tu_to_usec( |
1281 | IEEE80211_BEACON_LOSS_COUNT * bss_conf->beacon_int)); | 1281 | IEEE80211_BEACON_LOSS_COUNT * bss_conf->beacon_int)); |
@@ -3012,7 +3012,7 @@ static int ieee80211_prep_connection(struct ieee80211_sub_if_data *sdata, | |||
3012 | struct ieee80211_local *local = sdata->local; | 3012 | struct ieee80211_local *local = sdata->local; |
3013 | struct ieee80211_if_managed *ifmgd = &sdata->u.mgd; | 3013 | struct ieee80211_if_managed *ifmgd = &sdata->u.mgd; |
3014 | struct ieee80211_bss *bss = (void *)cbss->priv; | 3014 | struct ieee80211_bss *bss = (void *)cbss->priv; |
3015 | struct sta_info *sta; | 3015 | struct sta_info *sta = NULL; |
3016 | bool have_sta = false; | 3016 | bool have_sta = false; |
3017 | int err; | 3017 | int err; |
3018 | int ht_cfreq; | 3018 | int ht_cfreq; |
@@ -3102,7 +3102,7 @@ static int ieee80211_prep_connection(struct ieee80211_sub_if_data *sdata, | |||
3102 | local->oper_channel = cbss->channel; | 3102 | local->oper_channel = cbss->channel; |
3103 | ieee80211_hw_config(local, IEEE80211_CONF_CHANGE_CHANNEL); | 3103 | ieee80211_hw_config(local, IEEE80211_CONF_CHANGE_CHANNEL); |
3104 | 3104 | ||
3105 | if (!have_sta) { | 3105 | if (sta) { |
3106 | u32 rates = 0, basic_rates = 0; | 3106 | u32 rates = 0, basic_rates = 0; |
3107 | bool have_higher_than_11mbit; | 3107 | bool have_higher_than_11mbit; |
3108 | int min_rate = INT_MAX, min_rate_index = -1; | 3108 | int min_rate = INT_MAX, min_rate_index = -1; |