From d9ac485146f991ed33398f7ba62b751d74352dbf Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Sat, 28 Feb 2026 11:39:33 +0000 Subject: [PATCH] ucode: nl80211: add missing survey info attributes and fix DFS CAC time Signed-off-by: Felix Fietkau --- ...1-add-missing-survey-info-attributes.patch | 36 +++++++++++++++++++ ...0211-fix-dfs_cac_time-attribute-type.patch | 18 ++++++++++ 2 files changed, 54 insertions(+) create mode 100644 package/utils/ucode/patches/130-nl80211-add-missing-survey-info-attributes.patch create mode 100644 package/utils/ucode/patches/131-nl80211-fix-dfs_cac_time-attribute-type.patch diff --git a/package/utils/ucode/patches/130-nl80211-add-missing-survey-info-attributes.patch b/package/utils/ucode/patches/130-nl80211-add-missing-survey-info-attributes.patch new file mode 100644 index 0000000000..6f780bb9df --- /dev/null +++ b/package/utils/ucode/patches/130-nl80211-add-missing-survey-info-attributes.patch @@ -0,0 +1,36 @@ +From: Felix Fietkau +Date: Sat, 28 Feb 2026 11:12:22 +0000 +Subject: [PATCH] nl80211: add missing survey info attributes + +Add in_use, time_bss_rx and frequency_offset to the survey info +nested attribute spec. + +Signed-off-by: Felix Fietkau +--- + +--- a/lib/nl80211.c ++++ b/lib/nl80211.c +@@ -867,16 +867,19 @@ static const uc_nl_nested_spec_t nl80211 + + static const uc_nl_nested_spec_t nl80211_survey_info_nla = { + .headsize = 0, +- .nattrs = 8, ++ .nattrs = 11, + .attrs = { + { NL80211_SURVEY_INFO_FREQUENCY, "frequency", DT_U32, 0, NULL }, ++ { NL80211_SURVEY_INFO_NOISE, "noise", DT_S8, 0, NULL }, ++ { NL80211_SURVEY_INFO_IN_USE, "in_use", DT_FLAG, 0, NULL }, + { NL80211_SURVEY_INFO_TIME, "time", DT_U64, 0, NULL }, +- { NL80211_SURVEY_INFO_TIME_TX, "time_tx", DT_U64, 0, NULL }, +- { NL80211_SURVEY_INFO_TIME_RX, "time_rx", DT_U64, 0, NULL }, + { NL80211_SURVEY_INFO_TIME_BUSY, "busy", DT_U64, 0, NULL }, + { NL80211_SURVEY_INFO_TIME_EXT_BUSY, "ext_busy", DT_U64, 0, NULL }, ++ { NL80211_SURVEY_INFO_TIME_RX, "time_rx", DT_U64, 0, NULL }, ++ { NL80211_SURVEY_INFO_TIME_TX, "time_tx", DT_U64, 0, NULL }, + { NL80211_SURVEY_INFO_TIME_SCAN, "scan", DT_U64, 0, NULL }, +- { NL80211_SURVEY_INFO_NOISE, "noise", DT_S8, 0, NULL }, ++ { NL80211_SURVEY_INFO_TIME_BSS_RX, "time_bss_rx", DT_U64, 0, NULL }, ++ { NL80211_SURVEY_INFO_FREQUENCY_OFFSET, "frequency_offset", DT_U32, 0, NULL }, + } + }; + diff --git a/package/utils/ucode/patches/131-nl80211-fix-dfs_cac_time-attribute-type.patch b/package/utils/ucode/patches/131-nl80211-fix-dfs_cac_time-attribute-type.patch new file mode 100644 index 0000000000..52eebc53ff --- /dev/null +++ b/package/utils/ucode/patches/131-nl80211-fix-dfs_cac_time-attribute-type.patch @@ -0,0 +1,18 @@ +From: Felix Fietkau +Date: Sun, 1 Mar 2026 15:32:06 +0000 +Subject: [PATCH] nl80211: fix dfs_cac_time attribute type + +Signed-off-by: Felix Fietkau +--- + +--- a/lib/nl80211.c ++++ b/lib/nl80211.c +@@ -610,7 +610,7 @@ static const uc_nl_nested_spec_t nl80211 + { NL80211_FREQUENCY_ATTR_NO_HT40_PLUS, "no_ht40_plus", DT_FLAG, 0, NULL }, + { NL80211_FREQUENCY_ATTR_NO_80MHZ, "no_80mhz", DT_FLAG, 0, NULL }, + { NL80211_FREQUENCY_ATTR_NO_160MHZ, "no_160mhz", DT_FLAG, 0, NULL }, +- { NL80211_FREQUENCY_ATTR_DFS_CAC_TIME, "dfs_cac_time", DT_FLAG, 0, NULL }, ++ { NL80211_FREQUENCY_ATTR_DFS_CAC_TIME, "dfs_cac_time", DT_U32, 0, NULL }, + { NL80211_FREQUENCY_ATTR_INDOOR_ONLY, "indoor_only", DT_FLAG, 0, NULL }, + { NL80211_FREQUENCY_ATTR_IR_CONCURRENT, "ir_concurrent", DT_FLAG, 0, NULL }, + { NL80211_FREQUENCY_ATTR_NO_20MHZ, "no_20mhz", DT_FLAG, 0, NULL },