From: nbd Date: Tue, 8 Apr 2014 22:11:13 +0000 (+0000) Subject: ath9k: fix some ANI related stability issues X-Git-Url: https://git.enpas.org/?p=openwrt.git;a=commitdiff_plain;h=6f06731842f5fd2cdf400fdfe58bc873986e37d9 ath9k: fix some ANI related stability issues Signed-off-by: Felix Fietkau git-svn-id: svn://svn.openwrt.org/openwrt/trunk@40427 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- 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 +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 + + +--- 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;