Skip to content

Commit

Permalink
staging: brcm80211: change interface for common rssi compute function
Browse files Browse the repository at this point in the history
The function wlc_phy_rssi_compute() now uses d11rxhdr struct as
purely input parameter and returns the computed rssi value.

Reviewed-by: Roland Vossen <rvossen@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Franky Lin <frankyl@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  • Loading branch information
Arend van Spriel authored and Greg Kroah-Hartman committed Oct 3, 2011
1 parent d6cf28b commit e053edb
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 7 deletions.
4 changes: 3 additions & 1 deletion drivers/staging/brcm80211/brcmsmac/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -806,15 +806,17 @@ brcms_b_recv(struct brcms_hardware *wlc_hw, uint fifo, bool bound)

/* process each frame */
while ((p = head) != NULL) {
struct d11rxhdr *rxh;
head = head->prev;
p->prev = NULL;

wlc_rxhdr = (struct brcms_d11rxhdr *) p->data;
rxh = (struct d11rxhdr *)p->data;

/*
* compute the RSSI from d11rxhdr and record it in wlc_rxd11hr
*/
wlc_phy_rssi_compute(wlc_hw->band->pi, wlc_rxhdr);
wlc_rxhdr->rssi = wlc_phy_rssi_compute(wlc_hw->band->pi, rxh);

brcms_c_recv(wlc_hw->wlc, p);
}
Expand Down
7 changes: 3 additions & 4 deletions drivers/staging/brcm80211/brcmsmac/phy/phy_cmn.c
Original file line number Diff line number Diff line change
Expand Up @@ -2610,10 +2610,9 @@ void wlc_phy_compute_dB(u32 *cmplx_pwr, s8 *p_cmplx_pwr_dB, u8 core)
}
}

void wlc_phy_rssi_compute(struct brcms_phy_pub *pih,
struct brcms_d11rxhdr *wlc_rxhdr)
int wlc_phy_rssi_compute(struct brcms_phy_pub *pih,
struct d11rxhdr *rxh)
{
struct d11rxhdr *rxh = &wlc_rxhdr->rxhdr;
int rssi = le16_to_cpu(rxh->PhyRxStatus_1) & PRXS1_JSSI_MASK;
uint radioid = pih->radioid;
struct brcms_phy *pi = (struct brcms_phy *) pih;
Expand Down Expand Up @@ -2650,7 +2649,7 @@ void wlc_phy_rssi_compute(struct brcms_phy_pub *pih,
}

end:
wlc_rxhdr->rssi = (s8) rssi;
return rssi;
}

void wlc_phy_freqtrack_start(struct brcms_phy_pub *pih)
Expand Down
4 changes: 2 additions & 2 deletions drivers/staging/brcm80211/brcmsmac/phy/phy_hal.h
Original file line number Diff line number Diff line change
Expand Up @@ -212,8 +212,8 @@ extern void wlc_phy_chanspec_radio_set(struct brcms_phy_pub *ppi,
extern u16 wlc_phy_bw_state_get(struct brcms_phy_pub *ppi);
extern void wlc_phy_bw_state_set(struct brcms_phy_pub *ppi, u16 bw);

extern void wlc_phy_rssi_compute(struct brcms_phy_pub *pih,
struct brcms_d11rxhdr *wlc_rxhdr);
extern int wlc_phy_rssi_compute(struct brcms_phy_pub *pih,
struct d11rxhdr *rxh);
extern void wlc_phy_por_inform(struct brcms_phy_pub *ppi);
extern void wlc_phy_noise_sample_intr(struct brcms_phy_pub *ppi);
extern bool wlc_phy_bist_check_phy(struct brcms_phy_pub *ppi);
Expand Down

0 comments on commit e053edb

Please sign in to comment.