]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/3.1.1/ath9k_hw-fix-magnitude-phase-coeff-correction.patch
4.14-stable patches
[thirdparty/kernel/stable-queue.git] / releases / 3.1.1 / ath9k_hw-fix-magnitude-phase-coeff-correction.patch
1 From e9c10469cf3c71bc1c6b0f01319161e277d6ac9b Mon Sep 17 00:00:00 2001
2 From: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
3 Date: Thu, 15 Sep 2011 19:02:25 +0530
4 Subject: ath9k_hw: Fix magnitude/phase coeff correction
5
6 From: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
7
8 commit e9c10469cf3c71bc1c6b0f01319161e277d6ac9b upstream.
9
10 Do the magnitude/phase coeff correction only if the outlier
11 is detected. Updating wrong magnitude/phase coeff factor
12 impacts not only tx gain setting but also leads to poor
13 performance in congested networks. In the clear environment
14 the impact is very minimal because the outlier happens
15 very rarely according to the past experiment. It occured
16 less than once every 1000 calibrations.
17
18 Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
19 Signed-off-by: John W. Linville <linville@tuxdriver.com>
20 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
21
22 ---
23 drivers/net/wireless/ath/ath9k/ar9003_calib.c | 3 ++-
24 1 file changed, 2 insertions(+), 1 deletion(-)
25
26 --- a/drivers/net/wireless/ath/ath9k/ar9003_calib.c
27 +++ b/drivers/net/wireless/ath/ath9k/ar9003_calib.c
28 @@ -643,8 +643,9 @@ static void ar9003_hw_detect_outlier(int
29 outlier_idx = max_idx;
30 else
31 outlier_idx = min_idx;
32 +
33 + mp_coeff[outlier_idx] = mp_avg;
34 }
35 - mp_coeff[outlier_idx] = mp_avg;
36 }
37
38 static void ar9003_hw_tx_iqcal_load_avg_2_passes(struct ath_hw *ah,