Re: [PATCH wireless-next] wifi: nl80211: add support to configure 6 GHz non-HT duplicate transmission

Manish Dharanenthiran <[email protected]> Thu, 6 Aug 2026 18:35:21 +0530
Newsgroups org.kernel.vger.linux-wireless
Message-ID <[email protected]>

On 8/6/2026 8:44 AM, Mahendran P wrote:
> 
> On 8/5/2026 2:56 PM, Manish Dharanenthiran wrote:
>> As per IEEE Std 802.11-2024, subclause 26.17.2.2, a 6 GHz AP can transmit
>> a Beacon frame using a non-HT duplicate PPDU, so that stations scanning
>> only PSC channels can discover it. Currently, there is no mechanism
>> to request the driver to transmit non-HT duplicate Beacon frames.
>>
>> In [1], changes were made to parse the Beacon from user-space to set
>> the non-HT duplicate flag in the kernel. However, it was suggested that
>> non-HT transmission be part of the Beacon TX rate settings. Hence, add
>> NL80211_TXRATE_6GHZ_NON_HT_DUP as a flag attribute under
>> NL80211_ATTR_TX_RATES to let user-space request the driver to transmit
>> non-HT duplicate Beacons.
>>
>> Also add validation to reject the Beacon if non-HT duplicate Beacon
>> transmission is enabled when legacy rates are not configured.
>>
>> [1]  https://lore.kernel.org/all/1644914581-21682-1-git-send-email- 
>> [email protected]/
>>
>> Signed-off-by: Manish Dharanenthiran 
>> <[email protected]>
>> ---
>> Note: Users(ath11k&ath12k) of this new NL attribute will be posted later
>> once this gets approved.
>> ---

[snip]

>>       u32 count_ht, count_vht, count_he, count_eht, i;
>>       u32 rate = beacon_rate->control[band].legacy;
>> +    bool nonht_dup = beacon_rate->control[band].nonht_dup_6ghz;
>>       /* Allow only one rate */
>>       if (hweight32(rate) > 1)
>> @@ -6405,6 +6415,9 @@ static int validate_beacon_tx_rate(struct 
>> cfg80211_registered_device *rdev,
>>           (!rate && !count_ht && !count_vht && !count_he && !count_eht))
>>           return -EINVAL;
>> +    if (nonht_dup && !rate)
>> +        return -EINVAL;
> 
> 
> Since the changes introduce NL80211_TXRATE_6GHZ_NON_HT_DUP as a separate 
> configuration parameter,
> should cfg80211 verify consistency with the Beacon template's HE 
> operation duplicate beacon subfield?
> 
> 
cfg80211 won't verify the beacon element status, but it does verify 
other necessary data validations. IMHO this aligns with respect to other 
existing capabilities/operation parameters in beacon.

>> +
>>       if (rate &&
>>           !wiphy_ext_feature_isset(&rdev->wiphy,
>>                        NL80211_EXT_FEATURE_BEACON_RATE_LEGACY))
>>
>> ---
>> base-commit: 6c5fc504d0d6934132637aa3db4b9b58148eaa78
>> change-id: 20260805-dup-beacon-0d074e15ecf7
>>
>>

-- 
- Manish D