mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 03:01:39 -04:00
mac80211: add an rx flag for ignoring a packet's signal strength
For A-MPDU rx it makes sense to only process the signal strength once per aggregate instead of once per subframe. Additonally, some hardware (e.g. Atheros) only provides valid signal strength information for the last subframe. Signed-off-by: Felix Fietkau <[email protected]> Signed-off-by: John W. Linville <[email protected]>
This commit is contained in:
parent
c04a4ff71b
commit
fe8431f89e
2 changed files with 9 additions and 3 deletions
|
|
@ -177,7 +177,8 @@ ieee80211_add_rx_radiotap_header(struct ieee80211_local *local,
|
|||
pos += 2;
|
||||
|
||||
/* IEEE80211_RADIOTAP_DBM_ANTSIGNAL */
|
||||
if (local->hw.flags & IEEE80211_HW_SIGNAL_DBM) {
|
||||
if (local->hw.flags & IEEE80211_HW_SIGNAL_DBM &&
|
||||
!(status->flag & RX_FLAG_NO_SIGNAL_VAL)) {
|
||||
*pos = status->signal;
|
||||
rthdr->it_present |=
|
||||
cpu_to_le32(1 << IEEE80211_RADIOTAP_DBM_ANTSIGNAL);
|
||||
|
|
@ -1309,8 +1310,10 @@ ieee80211_rx_h_sta_process(struct ieee80211_rx_data *rx)
|
|||
|
||||
sta->rx_fragments++;
|
||||
sta->rx_bytes += rx->skb->len;
|
||||
sta->last_signal = status->signal;
|
||||
ewma_add(&sta->avg_signal, -status->signal);
|
||||
if (!(status->flag & RX_FLAG_NO_SIGNAL_VAL)) {
|
||||
sta->last_signal = status->signal;
|
||||
ewma_add(&sta->avg_signal, -status->signal);
|
||||
}
|
||||
|
||||
/*
|
||||
* Change STA power saving mode only at the end of a frame
|
||||
|
|
|
|||
Loading…
Reference in a new issue