lkml.org 
[lkml]   [2012]   [Apr]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [ 31/78] ath9k: fix max noise floor threshold
On Sat, Apr 14, 2012 at 06:36:12AM +0100, Ben Hutchings wrote:
> On Wed, 2012-04-11 at 16:10 -0700, Greg KH wrote:
> > 3.3-stable review patch. If anyone has any objections, please let me know.
> >
> > ------------------
> >
> > From: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
> >
> > commit 2ee0a07028d2cde6e131b73f029dae2b93c50f3a upstream.
> >
> > Currently the maximum noise floor limit is set as too high (-60dB). The
> > assumption of having a higher threshold limit is that it would help
> > de-sensitize the receiver (reduce phy errors) from continuous
> > interference. But when we have a bursty interference where there are
> > collisions and then free air time and if the receiver is desensitized too
> > much, it will miss the normal packets too. Lets make use of chips
> > specific min, nom and max limits always. This patch helps to improve the
> > connection stability in congested networks.
> [...]
>
> It looks like this is also applicable to 3.0 and 3.2, but the debug
> logging statement changed between 3.2 and 3.3 and stopped this from
> applying directly. Attaching an (untested) backport.
>
Thanks a lot Ben. looks fine.

-Rajkumar
>
> --
> Ben Hutchings
> It is easier to change the specification to fit the program than vice versa.

> From 6d19cb7b3325e6c460db0f07f178793f4500783a Mon Sep 17 00:00:00 2001
> From: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
> Date: Thu, 15 Mar 2012 06:08:04 +0530
> Subject: [PATCH] ath9k: fix max noise floor threshold
>
> commit 2ee0a07028d2cde6e131b73f029dae2b93c50f3a upstream.
>
> Currently the maximum noise floor limit is set as too high (-60dB). The
> assumption of having a higher threshold limit is that it would help
> de-sensitize the receiver (reduce phy errors) from continuous
> interference. But when we have a bursty interference where there are
> collisions and then free air time and if the receiver is desensitized too
> much, it will miss the normal packets too. Lets make use of chips
> specific min, nom and max limits always. This patch helps to improve the
> connection stability in congested networks.
>
> Cc: Paul Stewart <pstew@google.com>
> Tested-by: Gary Morain <gmorain@google.com>
> Signed-off-by: Madhan Jaganathan <madhanj@qca.qualcomm.com>
> Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
> Signed-off-by: John W. Linville <linville@tuxdriver.com>
> [bwh: Backported to 3.0/3.2: adjust context]
> Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
> ---
> drivers/net/wireless/ath/ath9k/calib.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/ath9k/calib.c b/drivers/net/wireless/ath/ath9k/calib.c
> index 8ddef3e..d771de5 100644
> --- a/drivers/net/wireless/ath/ath9k/calib.c
> +++ b/drivers/net/wireless/ath/ath9k/calib.c
> @@ -20,7 +20,6 @@
>
> /* Common calibration code */
>
> -#define ATH9K_NF_TOO_HIGH -60
>
> static int16_t ath9k_hw_get_nf_hist_mid(int16_t *nfCalBuffer)
> {
> @@ -348,10 +347,10 @@ static void ath9k_hw_nf_sanitize(struct ath_hw *ah, s16 *nf)
> "NF calibrated [%s] [chain %d] is %d\n",
> (i >= 3 ? "ext" : "ctl"), i % 3, nf[i]);
>
> - if (nf[i] > ATH9K_NF_TOO_HIGH) {
> + if (nf[i] > limit->max) {
> ath_dbg(common, ATH_DBG_CALIBRATE,
> "NF[%d] (%d) > MAX (%d), correcting to MAX\n",
> - i, nf[i], ATH9K_NF_TOO_HIGH);
> + i, nf[i], limit->max);
> nf[i] = limit->max;
> } else if (nf[i] < limit->min) {
> ath_dbg(common, ATH_DBG_CALIBRATE,
> --
> 1.7.9.5
>





\
 
 \ /
  Last update: 2012-04-14 08:29    [W:0.094 / U:1.464 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site