@@ -2310,13 +2310,21 @@ void sta_set_sinfo(struct sta_info *sta, struct station_info *sinfo,
sinfo->filled |= BIT_ULL(NL80211_STA_INFO_ACK_SIGNAL);
}
- if (ieee80211_hw_check(&sta->local->hw, REPORTS_TX_ACK_STATUS) &&
- !(sinfo->filled & BIT_ULL(NL80211_STA_INFO_DATA_ACK_SIGNAL_AVG))) {
- sinfo->avg_ack_signal =
- -(s8)ewma_avg_signal_read(
+ if (ieee80211_hw_check(&sta->local->hw, REPORTS_TX_ACK_STATUS)) {
+ if (sta->status_stats.ack_signal_filled && ((!(sinfo->filled &
+ BIT_ULL(NL80211_STA_INFO_ACK_SIGNAL))) ||
+ (!(sinfo->filled &
+ BIT_ULL(NL80211_STA_INFO_ACK_SIGNAL_AVG))))) {
+ sinfo->ack_signal =
+ sta->status_stats.last_ack_signal;
+ sinfo->filled |=
+ BIT_ULL(NL80211_STA_INFO_ACK_SIGNAL);
+ sinfo->avg_ack_signal =
+ -(s8)ewma_avg_signal_read(
&sta->status_stats.avg_ack_signal);
- sinfo->filled |=
- BIT_ULL(NL80211_STA_INFO_DATA_ACK_SIGNAL_AVG);
+ sinfo->filled |=
+ BIT_ULL(NL80211_STA_INFO_ACK_SIGNAL_AVG);
+ }
}
}
This patch adds "last ack signal" and "avg ack signal" support in station dump for valid ack rssi. Signed-off-by: Balaji Pothunoori <bpothuno@codeaurora.org> --- net/mac80211/sta_info.c | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-)