]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
EHT: Configuration option for ACS puncturing threshold
authorAloka Dixit <quic_alokad@quicinc.com>
Tue, 14 Mar 2023 04:59:23 +0000 (21:59 -0700)
committerJouni Malinen <j@w1.fi>
Fri, 17 Mar 2023 17:49:57 +0000 (19:49 +0200)
Add a new option 'punct_acs_threshold' where the value indicates
the percentage of ideal channel average interference factor above
which a channel should be punctured. Default is set to 0 which disables
the puncturing for ACS.

Signed-off-by: Aloka Dixit <quic_alokad@quicinc.com>
hostapd/config_file.c
hostapd/hostapd.conf
src/ap/ap_config.h

index 4c1eeda5899cb53486278b0dc6b46da9551e97a7..8e179d1519d4a8890cc2500216c29de3d7db6962 100644 (file)
@@ -4760,6 +4760,16 @@ static int hostapd_config_fill(struct hostapd_config *conf,
                conf->eht_phy_capab.mu_beamformer = atoi(pos);
        } else if (os_strcmp(buf, "punct_bitmap") == 0) {
                conf->punct_bitmap = atoi(pos);
+       } else if (os_strcmp(buf, "punct_acs_threshold") == 0) {
+               int val = atoi(pos);
+
+               if (val < 0 || val > 100) {
+                       wpa_printf(MSG_ERROR,
+                                  "Line %d: punct_acs_threshold must be between 0 and 100",
+                                  line);
+                       return 1;
+               }
+               conf->punct_acs_threshold = val;
 #endif /* CONFIG_IEEE80211BE */
        } else {
                wpa_printf(MSG_ERROR,
index 401c84f1994c18756600fe3488af85ef29dae48f..bc4a0f6ef7a59f1ea5e61b0cbbccd2a93f68957a 100644 (file)
@@ -1034,6 +1034,12 @@ wmm_ac_vo_acm=0
 # value is 0 indicating that all channels are active.
 #punct_bitmap=0
 
+# Preamble puncturing threshold in automatic channel selection (ACS).
+# The value indicates the percentage of ideal channel average interference
+# factor above which a channel should be punctured.
+# Default is 0, indicates that ACS algorithm should not puncture any channel.
+#punct_acs_threshold=75
+
 ##### IEEE 802.1X-2004 related configuration ##################################
 
 # Require IEEE 802.1X authorization
index 04a9c409c9e23d8c1f6762b021997006775a760d..8598602b164a6304eee39c3e3ae6f386eabb9a8a 100644 (file)
@@ -1157,6 +1157,7 @@ struct hostapd_config {
        u8 eht_oper_centr_freq_seg0_idx;
        struct eht_phy_capabilities_info eht_phy_capab;
        u16 punct_bitmap; /* a bitmap of disabled 20 MHz channels */
+       u8 punct_acs_threshold;
 #endif /* CONFIG_IEEE80211BE */
 
        /* EHT enable/disable config from CHAN_SWITCH */