diff options
author | Rajkumar Manoharan <rmanoharan@atheros.com> | 2011-05-20 17:52:15 +0530 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-05-26 15:43:33 -0400 |
commit | 1d38c16ce4156f63b45abbd09dd28ca2ef5172b4 (patch) | |
tree | a8ca2168580e0b1ce59252729584d12dba72cbea /net | |
parent | 41e2b05b9598d6bdf91fc20280bfc538d853f769 (diff) | |
download | op-kernel-dev-1d38c16ce4156f63b45abbd09dd28ca2ef5172b4.zip op-kernel-dev-1d38c16ce4156f63b45abbd09dd28ca2ef5172b4.tar.gz |
mac80211: stop queues before rate control updation
Stop tx queues before updating rate control to ensure
proper rate selection. Otherwise packets can be transmitted
in 40 Mhz whereas hw is configured in HT20.
Signed-off-by: Rajkumar Manoharan <rmanoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net')
-rw-r--r-- | net/mac80211/mlme.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 4f6b267..7465955 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -232,6 +232,9 @@ static u32 ieee80211_enable_ht(struct ieee80211_sub_if_data *sdata, WARN_ON(!ieee80211_set_channel_type(local, sdata, channel_type)); } + ieee80211_stop_queues_by_reason(&sdata->local->hw, + IEEE80211_QUEUE_STOP_REASON_CSA); + /* channel_type change automatically detected */ ieee80211_hw_config(local, 0); @@ -245,6 +248,9 @@ static u32 ieee80211_enable_ht(struct ieee80211_sub_if_data *sdata, rcu_read_unlock(); } + ieee80211_wake_queues_by_reason(&sdata->local->hw, + IEEE80211_QUEUE_STOP_REASON_CSA); + ht_opmode = le16_to_cpu(hti->operation_mode); /* if bss configuration changed store the new one */ |