aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2014-04-08 22:11:13 +0000
committerFelix Fietkau <nbd@openwrt.org>2014-04-08 22:11:13 +0000
commit658d48c1e538318ce7c2662f2515117895e1a177 (patch)
treeb18c2afc2647e922191591f8de1434e1046eb1cb
parent991bea678a830313e1b0161c9ed21760e5dcee93 (diff)
downloadupstream-658d48c1e538318ce7c2662f2515117895e1a177.tar.gz
upstream-658d48c1e538318ce7c2662f2515117895e1a177.tar.bz2
upstream-658d48c1e538318ce7c2662f2515117895e1a177.zip
ath9k: fix some ANI related stability issues
Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@40427 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--package/kernel/mac80211/patches/300-pending_work.patch28
-rw-r--r--package/kernel/mac80211/patches/550-ath9k_entropy_from_adc.patch4
2 files changed, 30 insertions, 2 deletions
diff --git a/package/kernel/mac80211/patches/300-pending_work.patch b/package/kernel/mac80211/patches/300-pending_work.patch
index e69de29bb2..deae67a420 100644
--- a/package/kernel/mac80211/patches/300-pending_work.patch
+++ b/package/kernel/mac80211/patches/300-pending_work.patch
@@ -0,0 +1,28 @@
+commit 93f310a38a1d81a4bc8fcd9bf29628bd721cf2ef
+Author: Felix Fietkau <nbd@openwrt.org>
+Date: Sun Apr 6 23:35:28 2014 +0200
+
+ ath9k_hw: reduce ANI firstep range for older chips
+
+ Use 0-8 instead of 0-16, which is closer to the old implementation.
+ Also drop the overwrite of the firstep_low parameter to improve
+ stability.
+
+ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
+
+
+--- a/drivers/net/wireless/ath/ath9k/ar5008_phy.c
++++ b/drivers/net/wireless/ath/ath9k/ar5008_phy.c
+@@ -1004,11 +1004,9 @@ static bool ar5008_hw_ani_control_new(st
+ case ATH9K_ANI_FIRSTEP_LEVEL:{
+ u32 level = param;
+
+- value = level * 2;
++ value = level;
+ REG_RMW_FIELD(ah, AR_PHY_FIND_SIG,
+ AR_PHY_FIND_SIG_FIRSTEP, value);
+- REG_RMW_FIELD(ah, AR_PHY_FIND_SIG_LOW,
+- AR_PHY_FIND_SIG_FIRSTEP_LOW, value);
+
+ if (level != aniState->firstepLevel) {
+ ath_dbg(common, ANI,
diff --git a/package/kernel/mac80211/patches/550-ath9k_entropy_from_adc.patch b/package/kernel/mac80211/patches/550-ath9k_entropy_from_adc.patch
index d3c17cdeb6..54f5ced4c2 100644
--- a/package/kernel/mac80211/patches/550-ath9k_entropy_from_adc.patch
+++ b/package/kernel/mac80211/patches/550-ath9k_entropy_from_adc.patch
@@ -124,7 +124,7 @@
long_cal_interval = ATH_LONG_CALINTERVAL_INT;
--- a/drivers/net/wireless/ath/ath9k/ar5008_phy.c
+++ b/drivers/net/wireless/ath/ath9k/ar5008_phy.c
-@@ -1233,9 +1233,30 @@ static void ar5008_hw_set_radar_conf(str
+@@ -1231,9 +1231,30 @@ static void ar5008_hw_set_radar_conf(str
conf->radar_inband = 8;
}
@@ -155,7 +155,7 @@
static const u32 ar5416_cca_regs[6] = {
AR_PHY_CCA,
AR_PHY_CH1_CCA,
-@@ -1250,6 +1271,8 @@ int ar5008_hw_attach_phy_ops(struct ath_
+@@ -1248,6 +1269,8 @@ int ar5008_hw_attach_phy_ops(struct ath_
if (ret)
return ret;