diff options
author | Felix Fietkau <nbd@openwrt.org> | 2012-12-10 13:51:02 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2012-12-10 13:51:02 +0000 |
commit | ec9496391e4f976f7c7db1e31f8add7beab507bf (patch) | |
tree | 24c60b17bd07925781dcd85ec7df88ea3b1979fc | |
parent | af2a7d18d1ee900169e55e8588dc86e195bbda9b (diff) | |
download | upstream-ec9496391e4f976f7c7db1e31f8add7beab507bf.tar.gz upstream-ec9496391e4f976f7c7db1e31f8add7beab507bf.tar.bz2 upstream-ec9496391e4f976f7c7db1e31f8add7beab507bf.zip |
ath9k: improve signal strength / channel noise reporting accuracy
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34592 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r-- | package/mac80211/patches/300-pending_work.patch | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/package/mac80211/patches/300-pending_work.patch b/package/mac80211/patches/300-pending_work.patch index d22f8d76b3..753bf0bbb8 100644 --- a/package/mac80211/patches/300-pending_work.patch +++ b/package/mac80211/patches/300-pending_work.patch @@ -561,3 +561,25 @@ ieee80211_rx(ar->hw, skb); return 0; } +--- a/drivers/net/wireless/ath/ath9k/calib.c ++++ b/drivers/net/wireless/ath/ath9k/calib.c +@@ -69,6 +69,7 @@ s16 ath9k_hw_getchan_noise(struct ath_hw + + if (chan && chan->noisefloor) { + s8 delta = chan->noisefloor - ++ ATH9K_NF_CAL_NOISE_THRESH - + ath9k_hw_get_default_nf(ah, chan); + if (delta > 0) + noise += delta; +--- a/drivers/net/wireless/ath/ath9k/calib.h ++++ b/drivers/net/wireless/ath/ath9k/calib.h +@@ -21,6 +21,9 @@ + + #define AR_PHY_CCA_FILTERWINDOW_LENGTH 5 + ++/* Internal noise floor can vary by about 6db depending on the frequency */ ++#define ATH9K_NF_CAL_NOISE_THRESH 6 ++ + #define NUM_NF_READINGS 6 + #define ATH9K_NF_CAL_HIST_MAX 5 + |