[PATCH] hostap: Option to disable HE ER SU in HE operation

Shay Bar shay.bar at celeno.com
Tue Jul 20 22:46:26 PDT 2021


Add option to disable 242-tone HE ER SU PPDU reception by the AP
in HE operation IE.

Signed-off-by: Shay Bar <shay.bar at celeno.com>
---
 hostapd/config_file.c  | 2 ++
 hostapd/hostapd.conf   | 4 ++++
 src/ap/ap_config.h     | 1 +
 src/ap/ieee802_11_he.c | 3 ++-
 4 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/hostapd/config_file.c b/hostapd/config_file.c
index 9bc1dc775..7b03edf36 100644
--- a/hostapd/config_file.c
+++ b/hostapd/config_file.c
@@ -3515,6 +3515,8 @@ static int hostapd_config_fill(struct hostapd_config *conf,
 		conf->he_op.he_twt_responder = atoi(pos);
 	} else if (os_strcmp(buf, "he_rts_threshold") == 0) {
 		conf->he_op.he_rts_threshold = atoi(pos);
+	} else if (os_strcmp(buf, "he_er_su_disable") == 0) {
+		conf->he_op.he_er_su_disable = atoi(pos);
 	} else if (os_strcmp(buf, "he_basic_mcs_nss_set") == 0) {
 		conf->he_op.he_basic_mcs_nss_set = atoi(pos);
 	} else if (os_strcmp(buf, "he_mu_edca_qos_info_param_count") == 0) {
diff --git a/hostapd/hostapd.conf b/hostapd/hostapd.conf
index b5d15061f..189ce65a4 100644
--- a/hostapd/hostapd.conf
+++ b/hostapd/hostapd.conf
@@ -841,6 +841,10 @@ wmm_ac_vo_acm=0
 # unsigned integer = duration in units of 16 us
 #he_rts_threshold=0
 
+#he_er_su_disable: Disable 242-tone HE ER SU PPDU reception by the AP
+# 0 = enable reception (default)
+# 1 = disable reception
+
 # HE operating channel information; see matching vht_* parameters for details.
 # he_oper_centr_freq_seg0_idx field is used to indicate center frequency of 80
 # and 160 MHz bandwidth operation. In 80+80 MHz operation, it is the center
diff --git a/src/ap/ap_config.h b/src/ap/ap_config.h
index ced36f9cc..3ba368987 100644
--- a/src/ap/ap_config.h
+++ b/src/ap/ap_config.h
@@ -916,6 +916,7 @@ struct he_operation {
 	u8 he_twt_required;
 	u8 he_twt_responder;
 	u16 he_rts_threshold;
+	u8 he_er_su_disable;
 	u16 he_basic_mcs_nss_set;
 };
 
diff --git a/src/ap/ieee802_11_he.c b/src/ap/ieee802_11_he.c
index cbe5e6395..bef2c4685 100644
--- a/src/ap/ieee802_11_he.c
+++ b/src/ap/ieee802_11_he.c
@@ -191,7 +191,8 @@ u8 * hostapd_eid_he_operation(struct hostapd_data *hapd, u8 *eid)
 	if (hapd->iface->conf->he_op.he_rts_threshold)
 		params |= (hapd->iface->conf->he_op.he_rts_threshold <<
 			   HE_OPERATION_RTS_THRESHOLD_OFFSET);
-
+	if (hapd->iface->conf->he_op.he_er_su_disable)
+		params |= HE_OPERATION_ER_SU_DISABLE;
 	if (hapd->iface->conf->he_op.he_bss_color_disabled)
 		params |= HE_OPERATION_BSS_COLOR_DISABLED;
 	if (hapd->iface->conf->he_op.he_bss_color_partial)
-- 
2.17.1




More information about the Hostap mailing list