From: Manish Dharanenthiran <manish.dharanenthiran@oss.qualcomm.com>
To: Mahendran P <mahendran.p@oss.qualcomm.com>, johannes@sipsolutions.net
Cc: linux-wireless@vger.kernel.org
Subject: Re: [PATCH wireless-next] wifi: nl80211: add support to configure 6 GHz non-HT duplicate transmission
Date: Thu, 6 Aug 2026 18:35:21 +0530 [thread overview]
Message-ID: <e7167621-56f7-4b47-80ba-ffe45df47f38@oss.qualcomm.com> (raw)
In-Reply-To: <d9cde078-ad54-4938-8bb2-51193ecddaa2@oss.qualcomm.com>
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-
>> quic_ramess@quicinc.com/
>>
>> Signed-off-by: Manish Dharanenthiran
>> <manish.dharanenthiran@oss.qualcomm.com>
>> ---
>> 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
prev parent reply other threads:[~2026-08-06 13:05 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-05 9:26 [PATCH wireless-next] wifi: nl80211: add support to configure 6 GHz non-HT duplicate transmission Manish Dharanenthiran
2026-08-06 3:14 ` Mahendran P
2026-08-06 13:05 ` Manish Dharanenthiran [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=e7167621-56f7-4b47-80ba-ffe45df47f38@oss.qualcomm.com \
--to=manish.dharanenthiran@oss.qualcomm.com \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
--cc=mahendran.p@oss.qualcomm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox