summaryrefslogtreecommitdiff
path: root/iwinfo_nl80211.c
diff options
context:
space:
mode:
authorImre Kaloz <kaloz@openwrt.org>2015-03-20 15:36:04 +0100
committerFelix Fietkau <nbd@openwrt.org>2015-03-20 16:50:21 +0100
commit40f2844fadc05f4a4de7699dbc12fee295b7057b (patch)
treebf9192c780b59320ade91a09b5d0daa4735e28c7 /iwinfo_nl80211.c
parentc9fd399316003040825dfbd9700488b621bd990e (diff)
downloadiwinfo-40f2844fadc05f4a4de7699dbc12fee295b7057b.tar.gz
iwinfo: don't report AC capabilities on 2GHz-only interfaces
If a 802.11ac capable chip is in 2GHz-only mode, the hwmode reported should be 802.11bgn. Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
Diffstat (limited to 'iwinfo_nl80211.c')
-rw-r--r--iwinfo_nl80211.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/iwinfo_nl80211.c b/iwinfo_nl80211.c
index be58c56..e090052 100644
--- a/iwinfo_nl80211.c
+++ b/iwinfo_nl80211.c
@@ -2383,13 +2383,6 @@ static int nl80211_get_hwmodelist_cb(struct nl_msg *msg, void *arg)
if (caps > 0)
*modes |= IWINFO_80211_N;
- if (bands[NL80211_BAND_ATTR_VHT_CAPA])
- vht_caps = nla_get_u32(bands[NL80211_BAND_ATTR_VHT_CAPA]);
-
- /* Treat any nonzero capability as 11ac */
- if (vht_caps > 0)
- *modes |= IWINFO_80211_AC;
-
nla_for_each_nested(freq, bands[NL80211_BAND_ATTR_FREQS],
freqs_remain)
{
@@ -2404,6 +2397,14 @@ static int nl80211_get_hwmodelist_cb(struct nl_msg *msg, void *arg)
*modes |= IWINFO_80211_B;
*modes |= IWINFO_80211_G;
}
+ else if (bands[NL80211_BAND_ATTR_VHT_CAPA])
+ {
+ vht_caps = nla_get_u32(bands[NL80211_BAND_ATTR_VHT_CAPA]);
+
+ /* Treat any nonzero capability as 11ac */
+ if (vht_caps > 0)
+ *modes |= IWINFO_80211_AC;
+ }
else if (!(*modes & IWINFO_80211_AC))
{
*modes |= IWINFO_80211_A;