diff options
Diffstat (limited to 'package/network/utils/iw/patches/110-per_chain_signal_strength.patch')
-rw-r--r-- | package/network/utils/iw/patches/110-per_chain_signal_strength.patch | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/package/network/utils/iw/patches/110-per_chain_signal_strength.patch b/package/network/utils/iw/patches/110-per_chain_signal_strength.patch deleted file mode 100644 index e519a86c6a..0000000000 --- a/package/network/utils/iw/patches/110-per_chain_signal_strength.patch +++ /dev/null @@ -1,71 +0,0 @@ ---- a/station.c -+++ b/station.c -@@ -91,6 +91,33 @@ void parse_bitrate(struct nlattr *bitrat - " VHT-NSS %d", nla_get_u8(rinfo[NL80211_RATE_INFO_VHT_NSS])); - } - -+static char *get_chain_signal(struct nlattr *attr_list) -+{ -+ struct nlattr *attr; -+ static char buf[64]; -+ char *cur = buf; -+ int i = 0, rem; -+ const char *prefix; -+ -+ if (!attr_list) -+ return ""; -+ -+ nla_for_each_nested(attr, attr_list, rem) { -+ if (i++ > 0) -+ prefix = ", "; -+ else -+ prefix = "["; -+ -+ cur += snprintf(cur, sizeof(buf) - (cur - buf), "%s%d", prefix, -+ (int8_t) nla_get_u8(attr)); -+ } -+ -+ if (i) -+ snprintf(cur, sizeof(buf) - (cur - buf), "] "); -+ -+ return buf; -+} -+ - static int print_sta_handler(struct nl_msg *msg, void *arg) - { - struct nlattr *tb[NL80211_ATTR_MAX + 1]; -@@ -118,7 +145,10 @@ static int print_sta_handler(struct nl_m - [NL80211_STA_INFO_LOCAL_PM] = { .type = NLA_U32}, - [NL80211_STA_INFO_PEER_PM] = { .type = NLA_U32}, - [NL80211_STA_INFO_NONPEER_PM] = { .type = NLA_U32}, -+ [NL80211_STA_INFO_CHAIN_SIGNAL] = { .type = NLA_NESTED }, -+ [NL80211_STA_INFO_CHAIN_SIGNAL_AVG] = { .type = NLA_NESTED }, - }; -+ char *chain; - - nla_parse(tb, NL80211_ATTR_MAX, genlmsg_attrdata(gnlh, 0), - genlmsg_attrlen(gnlh, 0), NULL); -@@ -165,12 +195,19 @@ static int print_sta_handler(struct nl_m - if (sinfo[NL80211_STA_INFO_TX_FAILED]) - printf("\n\ttx failed:\t%u", - nla_get_u32(sinfo[NL80211_STA_INFO_TX_FAILED])); -+ -+ chain = get_chain_signal(sinfo[NL80211_STA_INFO_CHAIN_SIGNAL]); - if (sinfo[NL80211_STA_INFO_SIGNAL]) -- printf("\n\tsignal: \t%d dBm", -- (int8_t)nla_get_u8(sinfo[NL80211_STA_INFO_SIGNAL])); -+ printf("\n\tsignal: \t%d %sdBm", -+ (int8_t)nla_get_u8(sinfo[NL80211_STA_INFO_SIGNAL]), -+ chain); -+ -+ chain = get_chain_signal(sinfo[NL80211_STA_INFO_CHAIN_SIGNAL_AVG]); - if (sinfo[NL80211_STA_INFO_SIGNAL_AVG]) -- printf("\n\tsignal avg:\t%d dBm", -- (int8_t)nla_get_u8(sinfo[NL80211_STA_INFO_SIGNAL_AVG])); -+ printf("\n\tsignal avg:\t%d %sdBm", -+ (int8_t)nla_get_u8(sinfo[NL80211_STA_INFO_SIGNAL_AVG]), -+ chain); -+ - if (sinfo[NL80211_STA_INFO_T_OFFSET]) - printf("\n\tToffset:\t%lld us", - (unsigned long long)nla_get_u64(sinfo[NL80211_STA_INFO_T_OFFSET])); |