]> git.ipfire.org Git - thirdparty/iw.git/blobdiff - station.c
iw: Add printing of station tx duration and airtime weight
[thirdparty/iw.git] / station.c
index e1477efe88e3644381b762c32180e48562f3e22e..b731409502d480f9ae203d55a569d3b322629571 100644 (file)
--- a/station.c
+++ b/station.c
@@ -309,6 +309,7 @@ static int print_sta_handler(struct nl_msg *msg, void *arg)
                [NL80211_STA_INFO_TID_STATS] = { .type = NLA_NESTED },
                [NL80211_STA_INFO_BSS_PARAM] = { .type = NLA_NESTED },
                [NL80211_STA_INFO_RX_DURATION] = { .type = NLA_U64 },
+               [NL80211_STA_INFO_TX_DURATION] = { .type = NLA_U64 },
                [NL80211_STA_INFO_ACK_SIGNAL] = {.type = NLA_U8 },
                [NL80211_STA_INFO_ACK_SIGNAL_AVG] = { .type = NLA_U8 },
        };
@@ -401,6 +402,10 @@ static int print_sta_handler(struct nl_msg *msg, void *arg)
                printf("\n\ttx bitrate:\t%s", buf);
        }
 
+       if (sinfo[NL80211_STA_INFO_TX_DURATION])
+               printf("\n\ttx duration:\t%lld us",
+                      (unsigned long long)nla_get_u64(sinfo[NL80211_STA_INFO_TX_DURATION]));
+
        if (sinfo[NL80211_STA_INFO_RX_BITRATE]) {
                char buf[100];
 
@@ -420,6 +425,10 @@ static int print_sta_handler(struct nl_msg *msg, void *arg)
                printf("\n\tavg ack signal:\t%d dBm",
                        (int8_t)nla_get_u8(sinfo[NL80211_STA_INFO_ACK_SIGNAL_AVG]));
 
+       if (sinfo[NL80211_STA_INFO_AIRTIME_WEIGHT]) {
+               printf("\n\tairtime weight: %d", nla_get_u16(sinfo[NL80211_STA_INFO_AIRTIME_WEIGHT]));
+       }
+
        if (sinfo[NL80211_STA_INFO_EXPECTED_THROUGHPUT]) {
                uint32_t thr;