iwinfo: nl80211: omit A-hwmode on non-5GHz hardware
authorDavid Bauer <mail@david-bauer.net>
Mon, 25 Apr 2022 23:53:51 +0000 (01:53 +0200)
committerDavid Bauer <mail@david-bauer.net>
Tue, 26 Apr 2022 22:51:14 +0000 (00:51 +0200)
Don't add the hwmode A for radios which do not support 5GHz operation.
Before, this hwmode was added to all non-VHT radios regardless of their
supported bands.

Fixes commit 562d01532616 ("iwinfo: nl80211: fix hwmode parsing for multi-band NICs")

Signed-off-by: David Bauer <mail@david-bauer.net>
iwinfo_nl80211.c

index 5b5deec7c3f5103077530f31121997ccb0b734f4..adb8c45f8fac4a2486010d987ef47a4922b671f4 100644 (file)
@@ -3051,7 +3051,7 @@ static int nl80211_eval_modelist(struct nl80211_modes *m)
                m->hw |= IWINFO_80211_G;
        }
 
-       if (m->nl_vht)
+       if (m->bands & IWINFO_BAND_5)
        {
                /* Treat any nonzero capability as 11ac */
                if (m->nl_vht > 0)
@@ -3069,6 +3069,10 @@ static int nl80211_eval_modelist(struct nl80211_modes *m)
                                m->ht |= IWINFO_HTMODE_VHT160;
                        }
                }
+               else
+               {
+                       m->hw |= IWINFO_80211_A;
+               }
        }
 
        if (m->bands & IWINFO_BAND_60)
@@ -3076,10 +3080,6 @@ static int nl80211_eval_modelist(struct nl80211_modes *m)
                m->hw |= IWINFO_80211_AD;
        }
 
-       if (!(m->hw & IWINFO_80211_AC))
-       {
-               m->hw |= IWINFO_80211_A;
-       }
 }
 
 static int nl80211_get_modelist_cb(struct nl_msg *msg, void *arg)