[PATCH 5/7] AP: Add TPE element for Indoor standard power AP
Andrei Otcheretianski
andrei.otcheretianski at intel.com
Fri Dec 22 01:04:21 PST 2023
From: Ilan Peer <ilan.peer at intel.com>
According to Appendix E.2.7 in Draft P802.11Revme_D2.0, two Transmit
Power Envelope (TPE) elements need to be included by Indoor Standard
Power (Indoor SP) APs. Extend the code to support this.
Signed-off-by: Ilan Peer <ilan.peer at intel.com>
---
src/ap/beacon.c | 12 +++++++++---
src/ap/ieee802_11.c | 4 +++-
2 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/src/ap/beacon.c b/src/ap/beacon.c
index 3c0353901c..eb7ef6f19f 100644
--- a/src/ap/beacon.c
+++ b/src/ap/beacon.c
@@ -620,7 +620,9 @@ static size_t hostapd_probe_resp_elems_len(struct hostapd_data *hapd,
/* An additional Transmit Power Envelope element for
* subordinate client */
if (hapd->iconf->he_6ghz_reg_pwr_type ==
- HE_REG_INFO_6GHZ_AP_TYPE_INDOOR)
+ HE_REG_INFO_6GHZ_AP_TYPE_INDOOR ||
+ hapd->iconf->he_6ghz_reg_pwr_type ==
+ HE_REG_INFO_6GHZ_AP_TYPE_INDOOR_SP)
buflen += 4;
}
}
@@ -1931,7 +1933,9 @@ static u8 * hostapd_gen_fils_discovery(struct hostapd_data *hapd, size_t *len)
if (is_6ghz_op_class(hapd->iconf->op_class)) {
total_len += 4;
if (hapd->iconf->he_6ghz_reg_pwr_type ==
- HE_REG_INFO_6GHZ_AP_TYPE_INDOOR)
+ HE_REG_INFO_6GHZ_AP_TYPE_INDOOR ||
+ hapd->iconf->he_6ghz_reg_pwr_type ==
+ HE_REG_INFO_6GHZ_AP_TYPE_INDOOR_SP)
total_len += 4;
}
#endif /* CONFIG_IEEE80211AX */
@@ -2096,7 +2100,9 @@ int ieee802_11_build_ap_params(struct hostapd_data *hapd,
/* An additional Transmit Power Envelope element for
* subordinate client */
if (hapd->iconf->he_6ghz_reg_pwr_type ==
- HE_REG_INFO_6GHZ_AP_TYPE_INDOOR)
+ HE_REG_INFO_6GHZ_AP_TYPE_INDOOR ||
+ hapd->iconf->he_6ghz_reg_pwr_type ==
+ HE_REG_INFO_6GHZ_AP_TYPE_INDOOR_SP)
tail_len += 4;
}
}
diff --git a/src/ap/ieee802_11.c b/src/ap/ieee802_11.c
index 92b368b997..5930eac9c3 100644
--- a/src/ap/ieee802_11.c
+++ b/src/ap/ieee802_11.c
@@ -7072,7 +7072,9 @@ u8 * hostapd_eid_txpower_envelope(struct hostapd_data *hapd, u8 *eid)
* subordinate devices
*/
if (iconf->he_6ghz_reg_pwr_type ==
- HE_REG_INFO_6GHZ_AP_TYPE_INDOOR) {
+ HE_REG_INFO_6GHZ_AP_TYPE_INDOOR ||
+ iconf->he_6ghz_reg_pwr_type ==
+ HE_REG_INFO_6GHZ_AP_TYPE_INDOOR_SP) {
/* TODO: Extract PSD limits from channel data */
if (hapd->iconf->reg_sub_cli_eirp_psd != -1)
tx_pwr = hapd->iconf->reg_sub_cli_eirp_psd;
--
2.43.0
More information about the Hostap
mailing list