|
@@ -1778,7 +1778,17 @@ accept:
|
|
|
|
|
|
rxs.noise = sc->ah->ah_noise_floor;
|
|
|
rxs.signal = rxs.noise + rs.rs_rssi;
|
|
|
- rxs.qual = rs.rs_rssi * 100 / 64;
|
|
|
+
|
|
|
+ /* An rssi of 35 indicates you should be able use
|
|
|
+ * 54 Mbps reliably. A more elaborate scheme can be used
|
|
|
+ * here but it requires a map of SNR/throughput for each
|
|
|
+ * possible mode used */
|
|
|
+ rxs.qual = rs.rs_rssi * 100 / 35;
|
|
|
+
|
|
|
+ /* rssi can be more than 35 though, anything above that
|
|
|
+ * should be considered at 100% */
|
|
|
+ if (rxs.qual > 100)
|
|
|
+ rxs.qual = 100;
|
|
|
|
|
|
rxs.antenna = rs.rs_antenna;
|
|
|
rxs.rate_idx = ath5k_hw_to_driver_rix(sc, rs.rs_rate);
|