AP: Add TPE element for Indoor standard power AP
According to IEEE P802.11-REVme/D4.0, E.2.7 (6 GHz band), 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@intel.com>
This commit is contained in:
parent
bcad7fec65
commit
3cbb3ac3fa
2 changed files with 12 additions and 4 deletions
|
@ -620,7 +620,9 @@ static size_t hostapd_probe_resp_elems_len(struct hostapd_data *hapd,
|
||||||
/* An additional Transmit Power Envelope element for
|
/* An additional Transmit Power Envelope element for
|
||||||
* subordinate client */
|
* subordinate client */
|
||||||
if (hapd->iconf->he_6ghz_reg_pwr_type ==
|
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;
|
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)) {
|
if (is_6ghz_op_class(hapd->iconf->op_class)) {
|
||||||
total_len += 4;
|
total_len += 4;
|
||||||
if (hapd->iconf->he_6ghz_reg_pwr_type ==
|
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;
|
total_len += 4;
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_IEEE80211AX */
|
#endif /* CONFIG_IEEE80211AX */
|
||||||
|
@ -2096,7 +2100,9 @@ int ieee802_11_build_ap_params(struct hostapd_data *hapd,
|
||||||
/* An additional Transmit Power Envelope element for
|
/* An additional Transmit Power Envelope element for
|
||||||
* subordinate client */
|
* subordinate client */
|
||||||
if (hapd->iconf->he_6ghz_reg_pwr_type ==
|
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;
|
tail_len += 4;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -7078,7 +7078,9 @@ u8 * hostapd_eid_txpower_envelope(struct hostapd_data *hapd, u8 *eid)
|
||||||
/* Indoor Access Point must include an additional TPE for
|
/* Indoor Access Point must include an additional TPE for
|
||||||
* subordinate devices */
|
* subordinate devices */
|
||||||
if (iconf->he_6ghz_reg_pwr_type ==
|
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 */
|
/* TODO: Extract PSD limits from channel data */
|
||||||
if (hapd->iconf->reg_sub_cli_eirp_psd != -1)
|
if (hapd->iconf->reg_sub_cli_eirp_psd != -1)
|
||||||
tx_pwr = hapd->iconf->reg_sub_cli_eirp_psd;
|
tx_pwr = hapd->iconf->reg_sub_cli_eirp_psd;
|
||||||
|
|
Loading…
Reference in a new issue