Message ID | CAAV6Hgmjq9DDpcUUTZtDwodUjKrkzjnKSNZ+sK8U=M_AQgr-iQ@mail.gmail.com (mailing list archive) |
---|---|
State | Not Applicable |
Delegated to: | Kalle Valo |
Headers | show |
Norik Dzhandzhapanyan <norikd@gmail.com> wrote: > Report per chain RSSI to mac80211. > > Signed-off-by: Norik Dzhandzhapanyan <norikd@gmail.com> > [kvalo@qca.qualcomm.com: fix conflicts and style] > Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com> This failed to apply and had quite a few checkpatch warnings. So I recreted the patch manually: https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git/commit/?h=pending&id=5df110e3a093771f23001be2012ab6fa4d87089b
Norik Dzhandzhapanyan <norikd@gmail.com> wrote: > Report per chain RSSI to mac80211. > > Signed-off-by: Norik Dzhandzhapanyan <norikd@gmail.com> > [kvalo@qca.qualcomm.com: fix conflicts and style] > Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com> Patch applied to ath-next branch of ath.git, thanks. 8241253d03fe ath10k: add per chain RSSI reporting
diff --git a/drivers/net/wireless/ath/ath10k/htt_rx.c b/drivers/net/wireless/ath/ath10k/htt_rx.c index 6c0a821fe79d..110953e0bff9 100644 --- a/drivers/net/wireless/ath/ath10k/htt_rx.c +++ b/drivers/net/wireless/ath/ath10k/htt_rx.c @@ -829,6 +829,22 @@ static void ath10k_htt_rx_h_signal(struct ath10k *ar, struct ieee80211_rx_status *status, struct htt_rx_desc *rxd) { + int i; + + for(i=0;i<IEEE80211_MAX_CHAINS;i++) + { + status->chains &= ~BIT(i); + + if (rxd->ppdu_start.rssi_chains[i].pri20_mhz != 0x80) + { + status->chain_signal[i] = ATH10K_DEFAULT_NOISE_FLOOR + + rxd->ppdu_start.rssi_chains[i].pri20_mhz; + + status->chains |= BIT(i); + + } + } + /* FIXME: Get real NF */ status->signal = ATH10K_DEFAULT_NOISE_FLOOR + rxd->ppdu_start.rssi_comb;
Report per chain RSSI Signed-off-by: Norik Dzhandzhapanyan <norikd@gmail.com> --- drivers/net/wireless/ath/ath10k/htt_rx.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)