path: root/drivers/net/wireless
diff options
authorFelix Fietkau <nbd@openwrt.org>2011-04-15 00:41:43 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2011-05-09 15:06:45 -0700
commitbf4b1d070aeb3669d4b4e95c59c404d0e055c41c (patch)
treea6707345458674f98781ea5fba3d0dff00d7831a /drivers/net/wireless
parent15f0758f185241ad9c358a5bf60ff0a21eccc218 (diff)
ath9k: fix the return value of ath_stoprecv
commit 2232d31bf18ba02f5cd632bbfc3466aeca394c75 upstream. The patch 'ath9k_hw: fix stopping rx DMA during resets' added code to detect a condition where rx DMA was stopped, but the MAC failed to enter the idle state. This condition requires a hardware reset, however the return value of ath_stoprecv was 'true' in that case, which allowed it to skip the reset when issuing a fast channel change. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Reported-by: Paul Stewart <pstew@google.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/net/wireless')
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath9k/recv.c b/drivers/net/wireless/ath/ath9k/recv.c
index 89546bc3029..1e0c1e3b514 100644
--- a/drivers/net/wireless/ath/ath9k/recv.c
+++ b/drivers/net/wireless/ath/ath9k/recv.c
@@ -533,7 +533,7 @@ bool ath_stoprecv(struct ath_softc *sc)
"confusing the DMA engine when we start RX up\n");
- return stopped || reset;
+ return stopped && !reset;
void ath_flushrecv(struct ath_softc *sc)