[PATCH v3 7/8] ap: allow configuring UHR DBE

Raja Mani raja.mani at oss.qualcomm.com
Mon Apr 27 04:33:36 PDT 2026



On 4/24/2026 12:41 PM, Johannes Berg wrote:
> From: Johannes Berg <johannes.berg at intel.com>
> 
> Allow configuring, and push down to the driver's frequency
> configuration, UHR DBE (dynamic bandwidth extension).
> 
> Make up the UHR DBE capabilities on the fly assuming that
> the EHT capabilities cover the MCS set etc. already. The
> position of the DBE capabilities is after PHY, as per
> 802.11bn D1.4.
> 
> Signed-off-by: Johannes Berg <johannes.berg at intel.com>
> ---
>   hostapd/config_file.c           |  5 ++
>   hostapd/hostapd.conf            | 11 ++++
>   src/ap/ap_config.c              |  5 ++
>   src/ap/ap_config.h              |  2 +
>   src/ap/beacon.c                 |  4 ++
>   src/ap/ieee802_11_uhr.c         | 30 +++++++++--
>   src/common/hw_features_common.c | 93 ++++++++++++++++++++++++++++++++-
>   src/common/hw_features_common.h |  7 +++
>   src/common/ieee802_11_defs.h    | 10 +++-
>   9 files changed, 162 insertions(+), 5 deletions(-)
> 
> diff --git a/hostapd/config_file.c b/hostapd/config_file.c
> index 3cb200ea358b..da943e3191ee 100644
> --- a/hostapd/config_file.c
> +++ b/hostapd/config_file.c
> @@ -4997,6 +4997,11 @@ static int hostapd_config_fill(struct hostapd_config *conf,
>   		conf->ieee80211bn = atoi(pos);
>   	} else if (os_strcmp(buf, "require_uhr") == 0) {
>   		conf->require_uhr = atoi(pos);
> +	} else if (os_strcmp(buf, "dbe_bandwidth") == 0) {
> +		conf->dbe_bandwidth = atoi(pos);

Since this is copied directly into the UHR operation element, would it
be worth adding a maximum limit check here to prevent accidental
modification of other bits?

> +	} else if (os_strcmp(buf, "dbe_punct_bitmap") == 0) {
> +		if (get_u16(pos, line, &conf->dbe_punct_bitmap))
> +			return 1;
>   #endif /* CONFIG_IEEE80211BN */
>   	} else if (os_strcmp(buf, "i2r_lmr_policy") == 0) {
>   		conf->i2r_lmr_policy = atoi(pos);
> diff --git a/hostapd/hostapd.conf b/hostapd/hostapd.conf
> index 9eca437ec565..d9c6268dfdb9 100644
> --- a/hostapd/hostapd.conf
> +++ b/hostapd/hostapd.conf
> @@ -1145,6 +1145,17 @@ wmm_ac_vo_acm=0
>   # Require stations to support UHR PHY (reject association if they do not)
>   #require_uhr=0
>   
> +# UHR DBE (dynamic bandwidth extension) bandwidth
> +# Indicates the bandwidth (as encoded in the spec, 802.11bn D1.4 Table 9-bb2
> +# "Encoding of the DBE Bandwidth field") for UHR DBE, 0 is reserved in the
> +# spec and here means DBE is not used.
> +# Must be wider than the EHT bandwidth (from eht_oper_chwidth or operating
> +# class).
> +#dbe_bandwidth=0
> +
> +# UHR DBE puncturing bitmap
> +#dbe_punct_bitmap=0
> +
>   ##### IEEE 802.1X-2004 related configuration ##################################
>   
>   # Require IEEE 802.1X authorization

[..]




More information about the Hostap mailing list