aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>2011-06-21 05:21:46 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-06-22 16:09:48 -0400
commit7952ca5b20e1d54a3bfdfd976086c6f9df5873a2 (patch)
tree540bf358207066968d3f896911bf26bc4b877f14
parent9720bb3ab0b80659c63ed337eab66104a4156db0 (diff)
ath9k_hw: Fix calculation of PAPRD training power at 5Ghz
higher the chainmask, lesser the power_delta to be added to the paprd_training_power Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/ath/ath9k/ar9003_paprd.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath9k/ar9003_paprd.c b/drivers/net/wireless/ath/ath9k/ar9003_paprd.c
index fc9c08f513cf..8f6d11dfa371 100644
--- a/drivers/net/wireless/ath/ath9k/ar9003_paprd.c
+++ b/drivers/net/wireless/ath/ath9k/ar9003_paprd.c
@@ -83,7 +83,23 @@ static int ar9003_get_training_power_5g(struct ath_hw *ah)
83 if (delta > scale) 83 if (delta > scale)
84 return -1; 84 return -1;
85 85
86 power += 2 * get_streams(common->tx_chainmask); 86 switch (get_streams(common->tx_chainmask)) {
87 case 1:
88 delta = 6;
89 break;
90 case 2:
91 delta = 4;
92 break;
93 case 3:
94 delta = 2;
95 break;
96 default:
97 delta = 0;
98 ath_dbg(common, ATH_DBG_CALIBRATE,
99 "Invalid tx-chainmask: %u\n", common->tx_chainmask);
100 }
101
102 power += delta;
87 return power; 103 return power;
88} 104}
89 105