OpenCloudOS-Kernel/drivers/net/wireless/ath
Felix Fietkau 0d51cccc24 ath9k: fix stopping tx dma on reset
In some situations, stopping Tx DMA frequently fails, leading to messages
like this:

ath: Failed to stop TX DMA in 100 msec after killing last frame
ath: Failed to stop TX DMA!

This patch uses a few MAC features to abort DMA globally instead of iterating
over all hardware queues and attempting to stop them individually.
Not only is that faster and works with a shorter timeout, it also makes the
process much more reliable.

With this change, I can no longer trigger these messages on AR9380,
and on AR9280 they become much more rare.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2011-03-14 14:46:58 -04:00
..
ar9170 mac80211: make tx() operation return void 2011-02-25 15:32:34 -05:00
ath5k ath5k: implement ieee80211_ops->{get,set}_ringparam 2011-03-11 15:34:18 -05:00
ath9k ath9k: fix stopping tx dma on reset 2011-03-14 14:46:58 -04:00
carl9170 mac80211: make tx() operation return void 2011-02-25 15:32:34 -05:00
Kconfig carl9170: Makefile, Kconfig files and MAINTAINERS 2010-09-14 16:03:42 -04:00
Makefile ath: Copy key cache management functions from ath9k to ath 2010-09-16 15:19:45 -04:00
ath.h ath9k_htc: Add multiple register read API 2011-01-19 11:36:06 -05:00
debug.c ath: Add and use ath_printk and ath_<level> 2010-12-07 16:34:39 -05:00
hw.c ath9k_hw: move the cycle counter tracking to ath 2010-10-11 15:04:20 -04:00
key.c ath: Fix clearing of secondary key cache entry for TKIP 2011-02-04 16:29:52 -05:00
main.c ath: Add and use ath_printk and ath_<level> 2010-12-07 16:34:39 -05:00
reg.h ath9k_hw: move the cycle counter tracking to ath 2010-10-11 15:04:20 -04:00
regd.c ath: Add function to check if 4.9GHz channels are allowed 2011-01-28 15:44:26 -05:00
regd.h ath: Add function to check if 4.9GHz channels are allowed 2011-01-28 15:44:26 -05:00
regd_common.h