summaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/305-ath9k-clean-up-ANI-per-channel-pointer-checking.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/kernel/mac80211/patches/305-ath9k-clean-up-ANI-per-channel-pointer-checking.patch')
-rw-r--r--package/kernel/mac80211/patches/305-ath9k-clean-up-ANI-per-channel-pointer-checking.patch91
1 files changed, 91 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/305-ath9k-clean-up-ANI-per-channel-pointer-checking.patch b/package/kernel/mac80211/patches/305-ath9k-clean-up-ANI-per-channel-pointer-checking.patch
new file mode 100644
index 0000000000..a1ac67c828
--- /dev/null
+++ b/package/kernel/mac80211/patches/305-ath9k-clean-up-ANI-per-channel-pointer-checking.patch
@@ -0,0 +1,91 @@
+From: Miaoqing Pan <miaoqing@codeaurora.org>
+Date: Fri, 15 Jan 2016 18:17:18 +0800
+Subject: [PATCH] ath9k: clean up ANI per-channel pointer checking
+
+commit c24bd3620c50 ("ath9k: Do not maintain ANI state per-channel")
+removed per-channel handling, the code to check 'curchan' also
+should be removed as never used.
+
+Signed-off-by: Miaoqing Pan <miaoqing@codeaurora.org>
+---
+
+--- a/drivers/net/wireless/ath/ath9k/ani.c
++++ b/drivers/net/wireless/ath/ath9k/ani.c
+@@ -126,12 +126,8 @@ static void ath9k_hw_update_mibstats(str
+
+ static void ath9k_ani_restart(struct ath_hw *ah)
+ {
+- struct ar5416AniState *aniState;
+-
+- if (!ah->curchan)
+- return;
++ struct ar5416AniState *aniState = &ah->ani;
+
+- aniState = &ah->ani;
+ aniState->listenTime = 0;
+
+ ENABLE_REGWRITE_BUFFER(ah);
+@@ -221,12 +217,7 @@ static void ath9k_hw_set_ofdm_nil(struct
+
+ static void ath9k_hw_ani_ofdm_err_trigger(struct ath_hw *ah)
+ {
+- struct ar5416AniState *aniState;
+-
+- if (!ah->curchan)
+- return;
+-
+- aniState = &ah->ani;
++ struct ar5416AniState *aniState = &ah->ani;
+
+ if (aniState->ofdmNoiseImmunityLevel < ATH9K_ANI_OFDM_MAX_LEVEL)
+ ath9k_hw_set_ofdm_nil(ah, aniState->ofdmNoiseImmunityLevel + 1, false);
+@@ -281,12 +272,7 @@ static void ath9k_hw_set_cck_nil(struct
+
+ static void ath9k_hw_ani_cck_err_trigger(struct ath_hw *ah)
+ {
+- struct ar5416AniState *aniState;
+-
+- if (!ah->curchan)
+- return;
+-
+- aniState = &ah->ani;
++ struct ar5416AniState *aniState = &ah->ani;
+
+ if (aniState->cckNoiseImmunityLevel < ATH9K_ANI_CCK_MAX_LEVEL)
+ ath9k_hw_set_cck_nil(ah, aniState->cckNoiseImmunityLevel + 1,
+@@ -299,9 +285,7 @@ static void ath9k_hw_ani_cck_err_trigger
+ */
+ static void ath9k_hw_ani_lower_immunity(struct ath_hw *ah)
+ {
+- struct ar5416AniState *aniState;
+-
+- aniState = &ah->ani;
++ struct ar5416AniState *aniState = &ah->ani;
+
+ /* lower OFDM noise immunity */
+ if (aniState->ofdmNoiseImmunityLevel > 0 &&
+@@ -329,7 +313,7 @@ void ath9k_ani_reset(struct ath_hw *ah,
+ struct ath_common *common = ath9k_hw_common(ah);
+ int ofdm_nil, cck_nil;
+
+- if (!ah->curchan)
++ if (!chan)
+ return;
+
+ BUG_ON(aniState == NULL);
+@@ -416,14 +400,10 @@ static bool ath9k_hw_ani_read_counters(s
+
+ void ath9k_hw_ani_monitor(struct ath_hw *ah, struct ath9k_channel *chan)
+ {
+- struct ar5416AniState *aniState;
++ struct ar5416AniState *aniState = &ah->ani;
+ struct ath_common *common = ath9k_hw_common(ah);
+ u32 ofdmPhyErrRate, cckPhyErrRate;
+
+- if (!ah->curchan)
+- return;
+-
+- aniState = &ah->ani;
+ if (!ath9k_hw_ani_read_counters(ah))
+ return;
+