[PATCH v2 1/3] nl80211: Add support for beacon tx mode

jjohnson at codeaurora.org jjohnson at codeaurora.org
Wed May 5 15:27:31 BST 2021


On 2021-05-05 00:18, Maharaja Kennadyrajan wrote:
> On 2021-05-03 22:54, jjohnson at codeaurora.org wrote:
>> On 2021-04-29 04:47, Maharaja Kennadyrajan wrote:
>> [..snip..]
>>> +/**
>>> + * enum nl80211_beacon_tx_mode - Beacon Tx Mode enum.
>>> + *      Used to configure beacon staggered mode or beacon burst 
>>> mode.
>>> + */
>>> +enum nl80211_beacon_tx_mode {
>>> +	NL80211_BEACON_STAGGERED_MODE = 1,
>>> +	NL80211_BEACON_BURST_MODE = 2,
>>> +};
>>> +
>> [..snip..]
>>> @@ -5330,6 +5331,10 @@ static int nl80211_start_ap(struct sk_buff 
>>> *skb,
>>> struct genl_info *info)
>>>  	params.dtim_period =
>>>  		nla_get_u32(info->attrs[NL80211_ATTR_DTIM_PERIOD]);
>>> 
>>> +	if (info->attrs[NL80211_ATTR_BEACON_TX_MODE])
>>> +		params.beacon_tx_mode =
>>> +
>>> nla_get_u32(info->attrs[NL80211_ATTR_BEACON_TX_MODE]);
>>> +
>> 
>> Note that in the case where NL80211_ATTR_BEACON_TX_MODE is not 
>> specified that
>> beacon_tx_mode will be zero, which is not a valid
>> nl80211_beacon_tx_mode enumeration.
>> 
>> Should you renumber the nl80211_beacon_tx_mode enumerations so that 
>> the default
>> mode has a value of 0? Or add NL80211_BEACON_DEFAULT_MODE = 0 and
>> allow the driver
>> to select a default mode?
> 
> [Maha]: Yes, it will select the default mode as STAGGERED mode when the 
> user set
> beacon_tx_mode as 0 in the hostapd conf file.
> Also, it will select the default mode as STAGGERED mode when the user 
> didn't add
> beacon_tx_mode config in the hostapd conf file.
> This is how it is handled here already.

Regardless of how it is handled, I still assert that there is a
coding/logic error here since in the case the attribute is not
present you send an invalid enumeration (0) to the driver. I'm
suggesting to fix that logic/coding error either by renumbering
the existing enumerations or by adding a new enumeration so that
0 is a valid enumeration.




More information about the ath11k mailing list