[openwrt/openwrt] wifi-scripts: fix regression with ucode update

LEDE Commits lede-commits at lists.infradead.org
Sun Dec 8 05:11:54 PST 2024


nbd pushed a commit to openwrt/openwrt.git, branch main:
https://git.openwrt.org/0286dfe394cbad2a736160fec784b024ce4040bd

commit 0286dfe394cbad2a736160fec784b024ce4040bd
Author: Felix Fietkau <nbd at nbd.name>
AuthorDate: Sun Dec 8 13:36:41 2024 +0100

    wifi-scripts: fix regression with ucode update
    
    nl80211.request with GET_WIPHY for a single wiphy no longer returns an array
    
    Signed-off-by: Felix Fietkau <nbd at nbd.name>
---
 .../files-ucode/usr/share/ucode/wifi/hostapd.uc    | 32 ++++++++++------------
 1 file changed, 14 insertions(+), 18 deletions(-)

diff --git a/package/network/config/wifi-scripts/files-ucode/usr/share/ucode/wifi/hostapd.uc b/package/network/config/wifi-scripts/files-ucode/usr/share/ucode/wifi/hostapd.uc
index 78b38ff633..2f6c4ddc40 100644
--- a/package/network/config/wifi-scripts/files-ucode/usr/share/ucode/wifi/hostapd.uc
+++ b/package/network/config/wifi-scripts/files-ucode/usr/share/ucode/wifi/hostapd.uc
@@ -438,29 +438,25 @@ function device_extended_features(data, flag) {
 
 function device_capabilities(phy) {
 	let idx = +substr(phy, 3, 1);;
-	let phys = nl80211.request(nl80211.const.NL80211_CMD_GET_WIPHY, nl80211.const.NLM_F_DUMP, { wiphy: idx, split_wiphy_dump: true });
-
-	for (let phy in phys) {
-		if (!phy || phy.wiphy != idx)
+	phy = nl80211.request(nl80211.const.NL80211_CMD_GET_WIPHY, nl80211.const.NLM_F_DUMP, { wiphy: idx, split_wiphy_dump: true });
+	if (!phy)
+		return;
+	for (let band in phy.wiphy_bands) {
+		if (!band)
 			continue;
-		for (let band in phy.wiphy_bands) {
-			if (!band)
+		phy_capabilities.ht_capa = band.ht_capa ?? 0;
+		phy_capabilities.vht_capa = band.vht_capa ?? 0;
+		for (let iftype in band.iftype_data) {
+			if (!iftype.iftypes.ap)
 				continue;
-			phy_capabilities.ht_capa = band.ht_capa ?? 0;
-			phy_capabilities.vht_capa = band.vht_capa ?? 0;
-			for (let iftype in band.iftype_data) {
-				if (!iftype.iftypes.ap)
-					continue;
-				phy_capabilities.he_mac_cap = iftype.he_cap_mac;
-				phy_capabilities.he_phy_cap = iftype.he_cap_phy;
-			}
-			break;
+			phy_capabilities.he_mac_cap = iftype.he_cap_mac;
+			phy_capabilities.he_phy_cap = iftype.he_cap_phy;
 		}
-
-		phy_features.ftm_responder = device_extended_features(phy.extended_features, NL80211_EXT_FEATURE_ENABLE_FTM_RESPONDER);
-		phy_features.radar_background = device_extended_features(phy.extended_features, NL80211_EXT_FEATURE_RADAR_BACKGROUND);
 		break;
 	}
+
+	phy_features.ftm_responder = device_extended_features(phy.extended_features, NL80211_EXT_FEATURE_ENABLE_FTM_RESPONDER);
+	phy_features.radar_background = device_extended_features(phy.extended_features, NL80211_EXT_FEATURE_RADAR_BACKGROUND);
 }
 
 function generate(config) {




More information about the lede-commits mailing list