diff --git a/tools/tools/net80211/wlanstats/main.c b/tools/tools/net80211/wlanstats/main.c index 38dd10eda1b2..bd73053be976 100644 --- a/tools/tools/net80211/wlanstats/main.c +++ b/tools/tools/net80211/wlanstats/main.c @@ -63,7 +63,7 @@ static struct { }, { "amsdu", - "input,output,amsdu_tooshort,amsdu_split,amsdu_decap,amsdu_encap,rssi,rate" + "input,output,amsdu_tooshort,amsdu_split,amsdu_decap,amsdu_encap,rx_amsdu_more,rx_amsdu_more_end,rssi,rate" }, }; diff --git a/tools/tools/net80211/wlanstats/wlanstats.c b/tools/tools/net80211/wlanstats/wlanstats.c index 0e5556848dae..b42d7312e519 100644 --- a/tools/tools/net80211/wlanstats/wlanstats.c +++ b/tools/tools/net80211/wlanstats/wlanstats.c @@ -276,7 +276,11 @@ static const struct fmt wlanstats[] = { { 8, "amsdu_decap", "decap", "A-MSDU frames received" }, #define S_AMSDU_ENCAP AFTER(S_AMSDU_DECAP) { 8, "amsdu_encap", "encap", "A-MSDU frames transmitted" }, -#define S_AMPDU_REORDER AFTER(S_AMSDU_ENCAP) +#define S_AMSDU_RX_MORE AFTER(S_AMSDU_ENCAP) + { 13, "rx_amsdu_more", "rx_amsdu_more", "A-MSDU HW intermediary decap'ed received" }, +#define S_AMSDU_RX_MORE_END AFTER(S_AMSDU_RX_MORE) + { 17, "rx_amsdu_more_end", "rx_amsdu_more_end", "A-MSDU HW end decap'ed received" }, +#define S_AMPDU_REORDER AFTER(S_AMSDU_RX_MORE_END) { 8, "ampdu_reorder", "reorder","A-MPDU frames held in reorder q" }, #define S_AMPDU_FLUSH AFTER(S_AMPDU_REORDER) { 8, "ampdu_flush", "flush", "A-MPDU frames sent up from reorder q" }, @@ -778,6 +782,8 @@ wlan_get_curstat(struct bsdstat *sf, int s, char b[], size_t bs) case S_AMSDU_SPLIT: STAT(amsdu_split); case S_AMSDU_DECAP: STAT(amsdu_decap); case S_AMSDU_ENCAP: STAT(amsdu_encap); + case S_AMSDU_RX_MORE: NSTAT(rx_amsdu_more); + case S_AMSDU_RX_MORE_END: NSTAT(rx_amsdu_more_end); case S_AMPDU_REORDER: STAT(ampdu_rx_reorder); case S_AMPDU_FLUSH: STAT(ampdu_rx_flush); case S_AMPDU_BARBAD: STAT(ampdu_bar_bad); @@ -941,6 +947,8 @@ wlan_get_totstat(struct bsdstat *sf, int s, char b[], size_t bs) case S_AMSDU_SPLIT: STAT(amsdu_split); case S_AMSDU_DECAP: STAT(amsdu_decap); case S_AMSDU_ENCAP: STAT(amsdu_encap); + case S_AMSDU_RX_MORE: NSTAT(rx_amsdu_more); + case S_AMSDU_RX_MORE_END: NSTAT(rx_amsdu_more_end); case S_AMPDU_REORDER: STAT(ampdu_rx_reorder); case S_AMPDU_FLUSH: STAT(ampdu_rx_flush); case S_AMPDU_BARBAD: STAT(ampdu_bar_bad);