From: Rameshkumar Sundaram <rameshkumar.sundaram@oss.qualcomm.com>
To: Baochen Qiang <baochen.qiang@oss.qualcomm.com>,
Jeff Johnson <jjohnson@kernel.org>
Cc: linux-wireless@vger.kernel.org, ath12k@lists.infradead.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH ath-current] wifi: ath12k: fix EHT TX MCS limitation due to wrong 20 MHz-only parsing
Date: Thu, 14 May 2026 10:43:22 +0530 [thread overview]
Message-ID: <781c9c44-bd2e-4d12-b29b-daff0f86aea0@oss.qualcomm.com> (raw)
In-Reply-To: <20260514-ath12k-fix-20mhz-only-mcs-map-v1-1-a38d4a9b21a2@oss.qualcomm.com>
On 5/14/2026 9:02 AM, Baochen Qiang wrote:
> When connecting to an AP configured for EHT 20 MHz with a full EHT
> MCS/NSS map (supporting MCS 0-13)
>
> Supported EHT-MCS and NSS Set
> EHT-MCS Map (BW <= 80MHz): 0x444444
> .... .... .... .... .... 0100 = Rx Max Nss That Supports EHT-MCS 0-9: 4
> .... .... .... .... 0100 .... = Tx Max Nss That Supports EHT-MCS 0-9: 4
> .... .... .... 0100 .... .... = Rx Max Nss That Supports EHT-MCS 10-11: 4
> .... .... 0100 .... .... .... = Tx Max Nss That Supports EHT-MCS 10-11: 4
> .... 0100 .... .... .... .... = Rx Max Nss That Supports EHT-MCS 12-13: 4
> 0100 .... .... .... .... .... = Tx Max Nss That Supports EHT-MCS 12-13: 4
>
> TX throughput is observed to be significantly lower than expected.
> Investigation shows that TX rates are limited to EHT MCS 11, even though
> the AP advertises support for EHT MCS 12/13.
>
> The root cause is an incorrect parsing of the Supported EHT-MCS and NSS
> Set element in ath12k_peer_assoc_h_eht().
>
> IEEE Std 802.11be-2024 Figure 9-1074as describes the format for 20
> MHz-Only Non-AP STAs.
>
> IEEE Std 802.11be-2024 Figure 9-1074at describes the format for all
> other AP and non-AP STAs.
>
> Currently the first format is parsed when the peer advertises no wider
> HE channel width support, without considering whether it is an AP or a
> non-AP STA. This is incorrect: the peer AP's capabilities must be parsed
> using Figure 9-1074at even when it operates on 20 MHz only. Parsing it
> as Figure 9-1074as causes rx_tx_mcs13_max_nss to be interpreted as zero,
> which is then passed to firmware, leading firmware to assume the peer
> does not support MCS 13 and to limit TX rates at MCS 11.
>
> Fix this by parsing the Figure 9-1074as format only when the peer is a
> 20 MHz-Only non-AP STA, i.e. when the local interface operates as AP or
> mesh point.
>
> Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.1.c5-00302-QCAHMTSWPL_V1.0_V2.0_SILICONZ-1.115823.3
>
> Fixes: 6c95151e2e77 ("wifi: ath12k: Add EHT MCS/NSS rates to Peer Assoc")
> Signed-off-by: Baochen Qiang <baochen.qiang@oss.qualcomm.com>
Reviewed-by: Rameshkumar Sundaram <rameshkumar.sundaram@oss.qualcomm.com>
prev parent reply other threads:[~2026-05-14 5:13 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-14 3:32 [PATCH ath-current] wifi: ath12k: fix EHT TX MCS limitation due to wrong 20 MHz-only parsing Baochen Qiang
2026-05-14 5:13 ` Rameshkumar Sundaram [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=781c9c44-bd2e-4d12-b29b-daff0f86aea0@oss.qualcomm.com \
--to=rameshkumar.sundaram@oss.qualcomm.com \
--cc=ath12k@lists.infradead.org \
--cc=baochen.qiang@oss.qualcomm.com \
--cc=jjohnson@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--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