diff options
author | Felix Fietkau <nbd@openwrt.org> | 2016-02-29 17:19:04 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2016-02-29 17:19:04 +0000 |
commit | f3a1db04f0ebba577598f1577d3c8c756c8bf757 (patch) | |
tree | eecfe6c9154a9e0717573daba16d1c58bd674d2e /package/kernel/mac80211/patches/351-ath9k-fix-DMA-stop-sequence-for-AR9003.patch | |
parent | 5db86ba649298bef0066cac8e4d0e17834f6b7b0 (diff) | |
download | upstream-f3a1db04f0ebba577598f1577d3c8c756c8bf757.tar.gz upstream-f3a1db04f0ebba577598f1577d3c8c756c8bf757.tar.bz2 upstream-f3a1db04f0ebba577598f1577d3c8c756c8bf757.zip |
mac80211: backport from trunk r48782 + required kernel patches and mt76, mwlwifi
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48822 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/kernel/mac80211/patches/351-ath9k-fix-DMA-stop-sequence-for-AR9003.patch')
-rw-r--r-- | package/kernel/mac80211/patches/351-ath9k-fix-DMA-stop-sequence-for-AR9003.patch | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/package/kernel/mac80211/patches/351-ath9k-fix-DMA-stop-sequence-for-AR9003.patch b/package/kernel/mac80211/patches/351-ath9k-fix-DMA-stop-sequence-for-AR9003.patch deleted file mode 100644 index 814b0d7a4a..0000000000 --- a/package/kernel/mac80211/patches/351-ath9k-fix-DMA-stop-sequence-for-AR9003.patch +++ /dev/null @@ -1,33 +0,0 @@ -From: Felix Fietkau <nbd@openwrt.org> -Date: Tue, 2 Jun 2015 10:35:46 +0200 -Subject: [PATCH] ath9k: fix DMA stop sequence for AR9003+ - -AR93xx and newer needs to stop rx before tx to avoid getting the DMA -engine or MAC into a stuck state. -This should reduce/fix the occurence of "Failed to stop Tx DMA" logspam. - -Cc: stable@vger.kernel.org -Signed-off-by: Felix Fietkau <nbd@openwrt.org> ---- - ---- a/drivers/net/wireless/ath/ath9k/main.c -+++ b/drivers/net/wireless/ath/ath9k/main.c -@@ -216,11 +216,13 @@ static bool ath_prepare_reset(struct ath - ath_stop_ani(sc); - ath9k_hw_disable_interrupts(ah); - -- if (!ath_drain_all_txq(sc)) -- ret = false; -- -- if (!ath_stoprecv(sc)) -- ret = false; -+ if (AR_SREV_9300_20_OR_LATER(ah)) { -+ ret &= ath_stoprecv(sc); -+ ret &= ath_drain_all_txq(sc); -+ } else { -+ ret &= ath_drain_all_txq(sc); -+ ret &= ath_stoprecv(sc); -+ } - - return ret; - } |