[PATCH] zd1211rw-mac80211: Fix SSI reporting
From: Daniel Drake <hidden>
Date: 2007-07-01 16:40:37
Also in:
linux-wireless
Subsystem:
networking drivers (wireless), the rest · Maintainers:
Johannes Berg, Linus Torvalds
zd1211rw-mac80211 currently reports different values for signal level than zd1211rw-softmac. This is because the softmac driver passes the raw strength value, whereas zd1211rw-mac80211 is performing some other calculation. Signed-off-by: Daniel Drake <redacted> Signed-off-by: Ulrich Kunitz <redacted> --- drivers/net/wireless/mac80211/zd1211rw/zd_chip.c | 8 -------- drivers/net/wireless/mac80211/zd1211rw/zd_chip.h | 1 - drivers/net/wireless/mac80211/zd1211rw/zd_mac.c | 2 +- 3 files changed, 1 insertions(+), 10 deletions(-)
diff --git a/drivers/net/wireless/mac80211/zd1211rw/zd_chip.c b/drivers/net/wireless/mac80211/zd1211rw/zd_chip.c
index 75728bb..662e66e 100644
--- a/drivers/net/wireless/mac80211/zd1211rw/zd_chip.c
+++ b/drivers/net/wireless/mac80211/zd1211rw/zd_chip.c@@ -1464,14 +1464,6 @@ u8 zd_rx_qual_percent(const void *rx_frame, unsigned int size, cck_qual_percent(status->signal_quality_cck); } -u8 zd_rx_strength_percent(u8 rssi) -{ - int r = (rssi*100) / 41; - if (r > 100) - r = 100; - return (u8) r; -} - u16 zd_rx_rate(const void *rx_frame, const struct rx_status *status) { static const u16 ofdm_rates[] = {
diff --git a/drivers/net/wireless/mac80211/zd1211rw/zd_chip.h b/drivers/net/wireless/mac80211/zd1211rw/zd_chip.h
index 96ada90..5229290 100644
--- a/drivers/net/wireless/mac80211/zd1211rw/zd_chip.h
+++ b/drivers/net/wireless/mac80211/zd1211rw/zd_chip.h@@ -877,7 +877,6 @@ struct rx_status; u8 zd_rx_qual_percent(const void *rx_frame, unsigned int size, const struct rx_status *status); -u8 zd_rx_strength_percent(u8 rssi); u16 zd_rx_rate(const void *rx_frame, const struct rx_status *status);
diff --git a/drivers/net/wireless/mac80211/zd1211rw/zd_mac.c b/drivers/net/wireless/mac80211/zd1211rw/zd_mac.c
index 49633d4..373916a 100644
--- a/drivers/net/wireless/mac80211/zd1211rw/zd_mac.c
+++ b/drivers/net/wireless/mac80211/zd1211rw/zd_mac.c@@ -652,7 +652,7 @@ static int fill_rx_stats(struct ieee80211_rx_status *stats, stats->channel = _zd_chip_get_channel(&mac->chip); stats->freq = zd_channels[stats->channel - 1].freq; stats->phymode = MODE_IEEE80211G; - stats->ssi = zd_rx_strength_percent(status->signal_strength); + stats->ssi = status->signal_strength; stats->signal = zd_rx_qual_percent(buffer, length - sizeof(struct rx_status), status);
--
1.5.2.2