[PATCH v2 22/26] staging: brcm80211: move rssi computation to place we need it

Franky Lin frankyl at broadcom.com
Tue Sep 27 17:45:26 UTC 2011


From: Arend van Spriel <arend at broadcom.com>

The rssi computation was done upon getting the frame from the
queue, but the value is needed when filling in the receive status
data for mac80211. The call to wlc_phy_rssi_compute() has been
deferred.

Reviewed-by: Roland Vossen <rvossen at broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg at broadcom.com>
Signed-off-by: Franky Lin <frankyl at broadcom.com>
---
 drivers/staging/brcm80211/brcmsmac/main.c |    7 +------
 1 files changed, 1 insertions(+), 6 deletions(-)

diff --git a/drivers/staging/brcm80211/brcmsmac/main.c b/drivers/staging/brcm80211/brcmsmac/main.c
index 3e39407..bdc0611 100644
--- a/drivers/staging/brcm80211/brcmsmac/main.c
+++ b/drivers/staging/brcm80211/brcmsmac/main.c
@@ -828,11 +828,6 @@ brcms_b_recv(struct brcms_hardware *wlc_hw, uint fifo, bool bound)
 		rxh->RxTSFTime = le16_to_cpu(rxh_le->RxTSFTime);
 		rxh->RxChan = le16_to_cpu(rxh_le->RxChan);
 
-		/*
-		 * compute the RSSI from d11rxhdr and record it in wlc_rxd11hr
-		 */
-		wlc_rxhdr->rssi = (s8)wlc_phy_rssi_compute(wlc_hw->band->pi,
-							   rxh);
 		brcms_c_recv(wlc_hw->wlc, p);
 	}
 
@@ -8172,7 +8167,7 @@ prep_mac80211_status(struct brcms_c_info *wlc, struct d11rxhdr *rxh,
 		rx_status->freq = ieee80211_dsss_chan_to_freq(channel);
 	}
 
-	rx_status->signal = wlc_rxh->rssi;
+	rx_status->signal = wlc_phy_rssi_compute(wlc->hw->band->pi, rxh);
 
 	/* noise */
 	/* qual */
-- 
1.7.1





More information about the devel mailing list