From a04628518732167237ddcac0b92a988a7b76ff0b Mon Sep 17 00:00:00 2001
From: Jan-Tarek Butt <tarek@ring0.de>
Date: Sun, 25 Jul 2021 23:44:47 +0200
Subject: [PATCH] remove patch ath9k-check-for-deaf-rx

---
 ...add-0016-ath9k-check-for-deaf-rx-pat.patch | 147 ------------------
 1 file changed, 147 deletions(-)
 delete mode 100644 gluon_patches/0004-patches-openwrt-add-0016-ath9k-check-for-deaf-rx-pat.patch

diff --git a/gluon_patches/0004-patches-openwrt-add-0016-ath9k-check-for-deaf-rx-pat.patch b/gluon_patches/0004-patches-openwrt-add-0016-ath9k-check-for-deaf-rx-pat.patch
deleted file mode 100644
index 5709708..0000000
--- a/gluon_patches/0004-patches-openwrt-add-0016-ath9k-check-for-deaf-rx-pat.patch
+++ /dev/null
@@ -1,147 +0,0 @@
-From 16e48445555a8597a7d6dde41138dff4bc66d139 Mon Sep 17 00:00:00 2001
-From: Jan-Tarek Butt <tarek@ring0.de>
-Date: Sat, 5 Sep 2020 11:45:57 +0200
-Subject: [PATCH 4/4] patches/openwrt: add
- 0016-ath9k-check-for-deaf-rx-path-state.patch to fix 0% bug on meshlinks
-
-Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>
----
- ...6-ath9k-check-for-deaf-rx-path-state.patch | 126 ++++++++++++++++++
- 1 file changed, 126 insertions(+)
- create mode 100644 patches/openwrt/0016-ath9k-check-for-deaf-rx-path-state.patch
-
-diff --git a/patches/openwrt/0016-ath9k-check-for-deaf-rx-path-state.patch b/patches/openwrt/0016-ath9k-check-for-deaf-rx-path-state.patch
-new file mode 100644
-index 00000000..1c200536
---- /dev/null
-+++ b/patches/openwrt/0016-ath9k-check-for-deaf-rx-path-state.patch
-@@ -0,0 +1,126 @@
-+From: Jan-Tarek Butt <tarek@ring0.de>
-+Date: Sat, 5 Sep 2020 11:18:59 +0200
-+Subject: ath9k: check for deaf rx path state
-+
-+Various chips occasionally run into a state where the tx path still
-+appears to be working normally, but the rx path is deaf.
-+
-+There is no known register signature to check for this state explicitly,
-+so use the lack of rx interrupts as an indicator.
-+
-+This detection is prone to false positives, since a device could also
-+simply be in an environment where there are no frames on the air.
-+However, in this case doing a reset should be harmless since it's
-+obviously not interrupting any real activity. To avoid confusion, call
-+the reset counters in this case "Rx path inactive" instead of something
-+like "Rx path deaf", since it may not be an indication of a real
-+hardware failure.
-+
-+Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>
-+
-+diff --git a/package/kernel/mac80211/patches/ath/359-ath9k-check-for-deaf-rx-path-state.patch b/package/kernel/mac80211/patches/ath/359-ath9k-check-for-deaf-rx-path-state.patch
-+new file mode 100644
-+index 0000000000000000000000000000000000000000..347d06ec888c56102523ed40b38aa4b5083d4c9c
-+--- /dev/null
-++++ b/package/kernel/mac80211/patches/ath/359-ath9k-check-for-deaf-rx-path-state.patch
-+@@ -0,0 +1,100 @@
-++From: Felix Fietkau <nbd@nbd.name>
-++Date: Wed, 25 Jan 2017 13:00:58 +0100
-++Subject: [PATCH] ath9k: check for deaf rx path state
-++
-++Various chips occasionally run into a state where the tx path still
-++appears to be working normally, but the rx path is deaf.
-++
-++There is no known register signature to check for this state explicitly,
-++so use the lack of rx interrupts as an indicator.
-++
-++This detection is prone to false positives, since a device could also
-++simply be in an environment where there are no frames on the air.
-++However, in this case doing a reset should be harmless since it's
-++obviously not interrupting any real activity. To avoid confusion, call
-++the reset counters in this case "Rx path inactive" instead of something
-++like "Rx path deaf", since it may not be an indication of a real
-++hardware failure.
-++
-++Signed-off-by: Felix Fietkau <nbd@nbd.name>
-++---
-++
-++--- a/drivers/net/wireless/ath/ath9k/ath9k.h
-+++++ b/drivers/net/wireless/ath/ath9k/ath9k.h
-++@@ -1027,6 +1027,7 @@ struct ath_softc {
-++
-++ 	u8 gtt_cnt;
-++ 	u32 intrstatus;
-+++	u32 rx_active;
-++ 	u16 ps_flags; /* PS_* */
-++ 	bool ps_enabled;
-++ 	bool ps_idle;
-++--- a/drivers/net/wireless/ath/ath9k/debug.c
-+++++ b/drivers/net/wireless/ath/ath9k/debug.c
-++@@ -763,6 +763,7 @@ static int read_file_reset(struct seq_fi
-++ 		[RESET_TYPE_BEACON_STUCK] = "Stuck Beacon",
-++ 		[RESET_TYPE_MCI] = "MCI Reset",
-++ 		[RESET_TYPE_CALIBRATION] = "Calibration error",
-+++		[RESET_TYPE_RX_INACTIVE] = "Rx path inactive",
-++ 		[RESET_TX_DMA_ERROR] = "Tx DMA stop error",
-++ 		[RESET_RX_DMA_ERROR] = "Rx DMA stop error",
-++ 	};
-++--- a/drivers/net/wireless/ath/ath9k/debug.h
-+++++ b/drivers/net/wireless/ath/ath9k/debug.h
-++@@ -50,6 +50,7 @@ enum ath_reset_type {
-++ 	RESET_TYPE_BEACON_STUCK,
-++ 	RESET_TYPE_MCI,
-++ 	RESET_TYPE_CALIBRATION,
-+++	RESET_TYPE_RX_INACTIVE,
-++ 	RESET_TX_DMA_ERROR,
-++ 	RESET_RX_DMA_ERROR,
-++ 	__RESET_TYPE_MAX
-++--- a/drivers/net/wireless/ath/ath9k/link.c
-+++++ b/drivers/net/wireless/ath/ath9k/link.c
-++@@ -53,13 +53,27 @@ reset:
-++
-++ }
-++
-+++static bool ath_rx_active_check(struct ath_softc *sc)
-+++{
-+++	if (sc->rx_active) {
-+++		sc->rx_active = 0;
-+++		return true;
-+++	}
-+++
-+++	ath_dbg(ath9k_hw_common(sc->sc_ah), RESET,
-+++		"rx path inactive, resetting the chip\n");
-+++	ath9k_queue_reset(sc, RESET_TYPE_RX_INACTIVE);
-+++	return false;
-+++}
-+++
-++ void ath_hw_check_work(struct work_struct *work)
-++ {
-++ 	struct ath_softc *sc = container_of(work, struct ath_softc,
-++ 					    hw_check_work.work);
-++
-++ 	if (!ath_hw_check(sc) ||
-++-	    !ath_tx_complete_check(sc))
-+++	    !ath_tx_complete_check(sc) ||
-+++	    !ath_rx_active_check(sc))
-++ 		return;
-++
-++ 	ieee80211_queue_delayed_work(sc->hw, &sc->hw_check_work,
-++--- a/drivers/net/wireless/ath/ath9k/main.c
-+++++ b/drivers/net/wireless/ath/ath9k/main.c
-++@@ -269,6 +269,7 @@ static bool ath_complete_reset(struct at
-++ 	}
-++
-++ 	sc->gtt_cnt = 0;
-+++	sc->rx_active = 1;
-++
-++ 	ath9k_hw_set_interrupts(ah);
-++ 	ath9k_hw_enable_interrupts(ah);
-++@@ -452,6 +453,7 @@ void ath9k_tasklet(unsigned long data)
-++ 			ath_rx_tasklet(sc, 0, true);
-++
-++ 		ath_rx_tasklet(sc, 0, false);
-+++		sc->rx_active = 1;
-++ 	}
-++
-++ 	if (status & ATH9K_INT_TX) {
--- 
-2.20.1
-
-- 
GitLab