mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-05-14 19:53:03 +00:00
mac80211: use IEEE80211_NUM_ACS
When comparing hw->queues to determine if the device is QoS capable, use IEEE80211_NUM_ACS instead of just 4. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
4644ae8903
commit
32c5057b22
5 changed files with 9 additions and 8 deletions
|
@ -167,7 +167,7 @@ static void __ieee80211_sta_join_ibss(struct ieee80211_sub_if_data *sdata,
|
||||||
chan, channel_type);
|
chan, channel_type);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (local->hw.queues >= 4) {
|
if (local->hw.queues >= IEEE80211_NUM_ACS) {
|
||||||
pos = skb_put(skb, 9);
|
pos = skb_put(skb, 9);
|
||||||
*pos++ = WLAN_EID_VENDOR_SPECIFIC;
|
*pos++ = WLAN_EID_VENDOR_SPECIFIC;
|
||||||
*pos++ = 7; /* len */
|
*pos++ = 7; /* len */
|
||||||
|
|
|
@ -676,7 +676,7 @@ static u16 ieee80211_monitor_select_queue(struct net_device *dev,
|
||||||
struct ieee80211_hdr *hdr;
|
struct ieee80211_hdr *hdr;
|
||||||
struct ieee80211_radiotap_header *rtap = (void *)skb->data;
|
struct ieee80211_radiotap_header *rtap = (void *)skb->data;
|
||||||
|
|
||||||
if (local->hw.queues < 4)
|
if (local->hw.queues < IEEE80211_NUM_ACS)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (skb->len < 4 ||
|
if (skb->len < 4 ||
|
||||||
|
|
|
@ -1134,7 +1134,7 @@ static void ieee80211_sta_wmm_params(struct ieee80211_local *local,
|
||||||
if (!local->ops->conf_tx)
|
if (!local->ops->conf_tx)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (local->hw.queues < 4)
|
if (local->hw.queues < IEEE80211_NUM_ACS)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (!wmm_param)
|
if (!wmm_param)
|
||||||
|
@ -3312,7 +3312,7 @@ int ieee80211_mgd_assoc(struct ieee80211_sub_if_data *sdata,
|
||||||
/* Also disable HT if we don't support it or the AP doesn't use WMM */
|
/* Also disable HT if we don't support it or the AP doesn't use WMM */
|
||||||
sband = local->hw.wiphy->bands[req->bss->channel->band];
|
sband = local->hw.wiphy->bands[req->bss->channel->band];
|
||||||
if (!sband->ht_cap.ht_supported ||
|
if (!sband->ht_cap.ht_supported ||
|
||||||
local->hw.queues < 4 || !bss->wmm_used)
|
local->hw.queues < IEEE80211_NUM_ACS || !bss->wmm_used)
|
||||||
ifmgd->flags |= IEEE80211_STA_DISABLE_11N;
|
ifmgd->flags |= IEEE80211_STA_DISABLE_11N;
|
||||||
|
|
||||||
memcpy(&ifmgd->ht_capa, &req->ht_capa, sizeof(ifmgd->ht_capa));
|
memcpy(&ifmgd->ht_capa, &req->ht_capa, sizeof(ifmgd->ht_capa));
|
||||||
|
@ -3335,7 +3335,8 @@ int ieee80211_mgd_assoc(struct ieee80211_sub_if_data *sdata,
|
||||||
ifmgd->ap_smps = ifmgd->req_smps;
|
ifmgd->ap_smps = ifmgd->req_smps;
|
||||||
|
|
||||||
assoc_data->capability = req->bss->capability;
|
assoc_data->capability = req->bss->capability;
|
||||||
assoc_data->wmm = bss->wmm_used && (local->hw.queues >= 4);
|
assoc_data->wmm = bss->wmm_used &&
|
||||||
|
(local->hw.queues >= IEEE80211_NUM_ACS);
|
||||||
assoc_data->supp_rates = bss->supp_rates;
|
assoc_data->supp_rates = bss->supp_rates;
|
||||||
assoc_data->supp_rates_len = bss->supp_rates_len;
|
assoc_data->supp_rates_len = bss->supp_rates_len;
|
||||||
assoc_data->ht_operation_ie =
|
assoc_data->ht_operation_ie =
|
||||||
|
|
|
@ -1928,7 +1928,7 @@ netdev_tx_t ieee80211_subif_start_xmit(struct sk_buff *skb,
|
||||||
wme_sta = true;
|
wme_sta = true;
|
||||||
|
|
||||||
/* receiver and we are QoS enabled, use a QoS type frame */
|
/* receiver and we are QoS enabled, use a QoS type frame */
|
||||||
if (wme_sta && local->hw.queues >= 4) {
|
if (wme_sta && local->hw.queues >= IEEE80211_NUM_ACS) {
|
||||||
fc |= cpu_to_le16(IEEE80211_STYPE_QOS_DATA);
|
fc |= cpu_to_le16(IEEE80211_STYPE_QOS_DATA);
|
||||||
hdrlen += 2;
|
hdrlen += 2;
|
||||||
}
|
}
|
||||||
|
|
|
@ -79,7 +79,7 @@ u16 ieee80211_select_queue_80211(struct ieee80211_local *local,
|
||||||
{
|
{
|
||||||
u8 *p;
|
u8 *p;
|
||||||
|
|
||||||
if (local->hw.queues < 4)
|
if (local->hw.queues < IEEE80211_NUM_ACS)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (!ieee80211_is_data(hdr->frame_control)) {
|
if (!ieee80211_is_data(hdr->frame_control)) {
|
||||||
|
@ -106,7 +106,7 @@ u16 ieee80211_select_queue(struct ieee80211_sub_if_data *sdata,
|
||||||
const u8 *ra = NULL;
|
const u8 *ra = NULL;
|
||||||
bool qos = false;
|
bool qos = false;
|
||||||
|
|
||||||
if (local->hw.queues < 4 || skb->len < 6) {
|
if (local->hw.queues < IEEE80211_NUM_ACS || skb->len < 6) {
|
||||||
skb->priority = 0; /* required for correct WPA/11i MIC */
|
skb->priority = 0; /* required for correct WPA/11i MIC */
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue