From: Karthikeyan Kathirvel <karthikeyan.kathirvel@oss.qualcomm.com>
To: Johannes Berg <johannes@sipsolutions.net>
Cc: linux-wireless@vger.kernel.org, ath12k@lists.infradead.org
Subject: Re: [PATCH wireless-next v4 2/2] wifi: mac80211_hwsim: Add UHR capabilities to the driver
Date: Tue, 3 Mar 2026 17:11:10 +0530 [thread overview]
Message-ID: <a882918a-0d6f-4eac-ada9-5d4bd748b33c@oss.qualcomm.com> (raw)
In-Reply-To: <d52fdbe5d9a483b5746b7253b512958d1460a9a1.camel@sipsolutions.net>
On 2/24/2026 9:50 PM, Johannes Berg wrote:
> On Tue, 2026-02-17 at 11:17 +0530, Karthikeyan Kathirvel wrote:
>>
>> + .uhr_cap = {
>> + .has_uhr = true,
>> + .mac = {
>> + .mac_cap[0] =
>> + IEEE80211_UHR_MAC_CAP0_DPS_SUPP |
>> + IEEE80211_UHR_MAC_CAP0_DPS_ASSIST_SUPP |
>
> I'm really not sure we should claim all of this, e.g. DPS assist, right
> now.
>
> Also, I think you really mixed this up - a regular AP shouldn't claim
> DPS below (only mobile AP), but this here station should probably not
> normally claim DPS assist?
>
> Just as examples! There are other issues like this such as:
>
>> + IEEE80211_UHR_MAC_CAP1_AP_PUO_SUPP |
>
> I don't think the station should claim AP PUO support.
>
> Certainly not an exhaustive list, ELR also seems wrong, etc.
>
> johannes
Got it. It looks like this requires a deeper feature-level understanding
or a review of the full spec document for each feature. Instead, I used
AI to simplify this. Below, I’ve pasted the AI output, categorized by
AP/non-AP STA and by bands. Is this approach fine? Shall I go ahead and
make the changes based on this?
### UHR MAC capabilities
| Macro | Role tag | Band tag |
|---------------------------------|-----------------------|----------|
| IEEE80211_UHR_MAC_CAP0_DPS_SUPP | Both (AP + non‑AP STA) | All |
| IEEE80211_UHR_MAC_CAP0_DPS_ASSIST_SUPP | Both | All |
| IEEE80211_UHR_MAC_CAP0_DPS_AP_STATIC_HCM_SUPP | Mobile AP only
(reserved for non‑AP STA) | All |
| IEEE80211_UHR_MAC_CAP0_NPCA_SUPP | Both | All |
| IEEE80211_UHR_MAC_CAP0_ENH_BSR_SUPP | Both (requires +HTC-HE=1) | All |
| IEEE80211_UHR_MAC_CAP0_ADD_MAP_TID_SUPP | Both (conditional; EHT
SCS Traffic Description Support) | All |
| IEEE80211_UHR_MAC_CAP0_EOTSP_SUPP | Both | All |
| IEEE80211_UHR_MAC_CAP1_DSO_SUPP | Both | All |
| IEEE80211_UHR_MAC_CAP1_PEDCA_SUPP | Both | All |
| IEEE80211_UHR_MAC_CAP1_DBE_SUPP | Both | All |
| IEEE80211_UHR_MAC_CAP1_UL_LLI_SUPP | Both | All |
| IEEE80211_UHR_MAC_CAP1_P2P_LLI_SUPP | Both | All |
| IEEE80211_UHR_MAC_CAP1_PUO_SUPP | Both (different meaning AP vs
STA) | All |
| IEEE80211_UHR_MAC_CAP1_AP_PUO_SUPP | Both (different meaning AP vs
STA) | All |
| IEEE80211_UHR_MAC_CAP1_DUO_SUPP | Both (different meaning AP vs
STA) | All |
| IEEE80211_UHR_MAC_CAP2_OMC_UL_MU_DIS_RX_SUPP | AP-only (reserved
for non‑AP STA) | All |
| IEEE80211_UHR_MAC_CAP2_AOM_SUPP | Both | All |
| IEEE80211_UHR_MAC_CAP2_IFCS_LOC_SUPP | Both | All |
| IEEE80211_UHR_MAC_CAP2_UHR_TRS_SUPP | non‑AP STA only (reserved for
AP; requires +HTC-HE=1) | All |
| IEEE80211_UHR_MAC_CAP2_TXSPG_SUPP | Both | All |
| IEEE80211_UHR_MAC_CAP2_TXOP_RET_IN_TXSPG | Both | All |
| IEEE80211_UHR_MAC_CAP2_UHR_OM_PU_TO_LOW | Both | All |
| IEEE80211_UHR_MAC_CAP3_UHR_OM_PU_TO_HIGH | Both | All |
| IEEE80211_UHR_MAC_CAP3_PARAM_UPD_ADV_NOTIF_INTV | AP-only (reserved
for non‑AP STA) | All |
| IEEE80211_UHR_MAC_CAP3_UPD_IND_TIM_INTV_LOW | AP-only (reserved for
non‑AP STA) | All |
| IEEE80211_UHR_MAC_CAP4_UPD_IND_TIM_INTV_HIGH | AP-only (reserved
for non‑AP STA) | All |
| IEEE80211_UHR_MAC_CAP4_BOUNDED_ESS | AP-only | All |
| IEEE80211_UHR_MAC_CAP4_BTM_ASSURANCE | AP-only | All |
| IEEE80211_UHR_MAC_CAP4_CO_BF_SUPP | Both | All |
### UHR PHY capabilities
| Macro | Role tag | Band tag |
|---------------------------------|-----------------------|----------|
| IEEE80211_UHR_PHY_CAP_MAX_NSS_RX_SND_NDP_LE80 | Both | All (≤80) |
| IEEE80211_UHR_PHY_CAP_MAX_NSS_RX_DL_MU_LE80 | non‑AP STA only
(reserved for AP) | All (≤80) |
| IEEE80211_UHR_PHY_CAP_MAX_NSS_RX_SND_NDP_160 | Both | 5/6 (160) |
| IEEE80211_UHR_PHY_CAP_MAX_NSS_RX_DL_MU_160 | non‑AP STA only
(reserved for AP) | 5/6 (160) |
| IEEE80211_UHR_PHY_CAP_MAX_NSS_RX_SND_NDP_320 | Both | 6 (320) |
| IEEE80211_UHR_PHY_CAP_MAX_NSS_RX_DL_MU_320 | non‑AP STA only
(reserved for AP) | 6 (320) |
| IEEE80211_UHR_PHY_CAP_ELR_RX | Both | All |
| IEEE80211_UHR_PHY_CAP_ELR_TX | Both | All |
/KK
next prev parent reply other threads:[~2026-03-03 11:41 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-17 5:47 [PATCH wireless-next v4 00/02] wifi: ieee80211/mac80211: Add UHR (802.11bn) Capability and Operation parsing helpers Karthikeyan Kathirvel
2026-02-17 5:47 ` [PATCH wireless-next v4 1/2] wifi: UHR: define DPS/DBE/P-EDCA elements and fix size parsing Karthikeyan Kathirvel
2026-02-24 16:32 ` Johannes Berg
2026-03-03 10:11 ` Karthikeyan Kathirvel
2026-02-24 16:42 ` Johannes Berg
2026-02-24 17:38 ` Johannes Berg
2026-03-03 10:11 ` Karthikeyan Kathirvel
2026-02-24 20:47 ` Johannes Berg
2026-02-17 5:47 ` [PATCH wireless-next v4 2/2] wifi: mac80211_hwsim: Add UHR capabilities to the driver Karthikeyan Kathirvel
2026-02-24 16:20 ` Johannes Berg
2026-03-03 11:41 ` Karthikeyan Kathirvel [this message]
2026-03-03 11:44 ` Johannes Berg
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=a882918a-0d6f-4eac-ada9-5d4bd748b33c@oss.qualcomm.com \
--to=karthikeyan.kathirvel@oss.qualcomm.com \
--cc=ath12k@lists.infradead.org \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
/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