aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuis R. Rodriguez <lrodriguez@atheros.com>2008-10-13 17:08:10 -0400
committerJohn W. Linville <linville@tuxdriver.com>2008-10-31 19:00:20 -0400
commit6e0e0bf80c963d83f511e1cda652630cf31ebf85 (patch)
tree3c9a28b4ba58cd7d51b659953214b5d93e4122cb
parentc49d154a800c55b8948e6d34563e593b500b31b9 (diff)
ath5k: correct ath5k signal quality
This adjusts ath5k's signal quality reporting taking into consideration received beacons at an RSSI of 35 should indicate you can use of 54 Mbps on a single stream card (all ath5k cards) reliably. Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com> Acked-by: Nick Kossifidis <mickflemm@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/ath5k/base.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath5k/base.c b/drivers/net/wireless/ath5k/base.c
index c98380845fa7..b1e9a47c1c55 100644
--- a/drivers/net/wireless/ath5k/base.c
+++ b/drivers/net/wireless/ath5k/base.c
@@ -1778,7 +1778,17 @@ accept:
1778 1778
1779 rxs.noise = sc->ah->ah_noise_floor; 1779 rxs.noise = sc->ah->ah_noise_floor;
1780 rxs.signal = rxs.noise + rs.rs_rssi; 1780 rxs.signal = rxs.noise + rs.rs_rssi;
1781 rxs.qual = rs.rs_rssi * 100 / 64; 1781
1782 /* An rssi of 35 indicates you should be able use
1783 * 54 Mbps reliably. A more elaborate scheme can be used
1784 * here but it requires a map of SNR/throughput for each
1785 * possible mode used */
1786 rxs.qual = rs.rs_rssi * 100 / 35;
1787
1788 /* rssi can be more than 35 though, anything above that
1789 * should be considered at 100% */
1790 if (rxs.qual > 100)
1791 rxs.qual = 100;
1782 1792
1783 rxs.antenna = rs.rs_antenna; 1793 rxs.antenna = rs.rs_antenna;
1784 rxs.rate_idx = ath5k_hw_to_driver_rix(sc, rs.rs_rate); 1794 rxs.rate_idx = ath5k_hw_to_driver_rix(sc, rs.rs_rate);