summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/ath/ath9k/hw.c
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2012-04-19 23:18:28 +0400
committerJohn W. Linville <linville@tuxdriver.com>2012-04-23 23:35:31 +0400
commitfeb7bc9951246157cb9043b9886c7919b32d3cb9 (patch)
treec2088eec628eb136717b4ee98bf1c6658ac08c67 /drivers/net/wireless/ath/ath9k/hw.c
parente5d821a4ff5bdaba2281b213582e3da7edfb1d3f (diff)
downloadlinux-feb7bc9951246157cb9043b9886c7919b32d3cb9.tar.xz
ath9k_hw: disable fast channel change when changing from/to half/quarter mode
Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/hw.c')
-rw-r--r--drivers/net/wireless/ath/ath9k/hw.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath9k/hw.c b/drivers/net/wireless/ath/ath9k/hw.c
index e576a92f18a3..75fd87f295d4 100644
--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -1687,6 +1687,10 @@ static int ath9k_hw_do_fastcc(struct ath_hw *ah, struct ath9k_channel *chan)
if (chan->channel == ah->curchan->channel)
goto fail;
+ if ((ah->curchan->channelFlags | chan->channelFlags) &
+ (CHANNEL_HALF | CHANNEL_QUARTER))
+ goto fail;
+
if ((chan->channelFlags & CHANNEL_ALL) !=
(ah->curchan->channelFlags & CHANNEL_ALL))
goto fail;