[PATCH v2] hostapd: Add he_ldpc configuration

Jouni Malinen j at w1.fi
Sun Oct 29 09:45:35 PDT 2023


On Tue, Jun 20, 2023 at 03:35:49PM +0800, MeiChia Chiu wrote:
> Add configuration option 'he_ldpc' to enable or disable he ldpc support.

> +#he_ldpc: HE LDPC support
> +# 0 = not supported
> +# 1 = supported (default)
> +#he_ldpc=1

> diff --git a/src/ap/ap_config.c b/src/ap/ap_config.c
> +	conf->he_phy_capab.he_ldpc = 1;

What would happen if the driver did not support HE LDPC and it would now
get enabled by default? I could not test this easily since the
capability checks below failed to compile..

> --- a/src/ap/hw_features.c
> +++ b/src/ap/hw_features.c
> @@ -679,6 +679,38 @@ static int ieee80211ac_supported_vht_capab(struct hostapd_iface *iface)
>  #ifdef CONFIG_IEEE80211AX
>  static int ieee80211ax_supported_he_capab(struct hostapd_iface *iface)
>  {
> +	struct he_capabilities *he_cap;
> +	struct hostapd_config *conf = iface->conf;
> +
> +#define HE_CAP_CHECK(hw_cap, field, phy_idx, cap_cfg)		\
> +	do {							\
> +		if (cfg_cap && !(hw_cap[phy_idx] & field)) {	\

cfg_cap is not defined here.. I'd guess that was supposed to be cap_cfg.

> +			wpa_printf(MSG_ERROR,			\
> +				   "Driver does not support configured HE capability [%s]",\
> +				   field);			\

And this does not compile cleanly since field is not a string..

> +	HE_CAP_CHECK(he_cap->phy_cap, HE_PHYCAP_LDPC_CODING_IN_PAYLOAD,
> +		     HE_PHYCAP_LDPC_CODING_IN_PAYLOAD_IDX,
> +		     conf->he_phy_capab.he_ldpc);

field = HE_PHYCAP_LDPC_CODING_IN_PAYLOAD = ((u8) BIT(5))

I'm not sure what was supposed to be here, but clearly this version has
not been even compile tested.

-- 
Jouni Malinen                                            PGP id EFC895FA



More information about the Hostap mailing list