Unsubscribe
> On 29 Dec 2025, at 4:55 AM, Bjoern A. Zeeb <[email protected]> wrote:
>
> The branch main has been updated by bz:
>
> URL:
> https://cgit.FreeBSD.org/src/commit/?id=8494be1b5af7fe4f765532f802ac0a145e061d73
>
> commit 8494be1b5af7fe4f765532f802ac0a145e061d73
> Author: Bjoern A. Zeeb <[email protected]>
> AuthorDate: 2025-12-28 19:38:16 +0000
> Commit: Bjoern A. Zeeb <[email protected]>
> CommitDate: 2025-12-29 02:54:03 +0000
>
> LinuxKPI: 802.11: fix rx_nss with VHT
>
> When fixing single-stream chipsets, like iwlwifi(4) AX101, we started
> masking the announced with the hardware supported values. This would
> probably limit, e.g., rx_nss. During these works we fixed a loop
> checking from the highest nss=7 to lowest nss=0 (8..1) and would set
> rx_nss if the stream was supported. This left us with always setting
> rx_nss on nss=0 to nss + 1 = 1. Instead only update once when we hit
> the first supported MCS value (highest number of supported streams).
> Looking at the diff of the mentioned commit hash which gets fixed it
> looks like even the old code was not correct either.
>
> This only fixes the logic to calculate rx_nss. This does not yet help
> with modern drivers to actually update the value. Code for this will
> come in a later commit.
>
> Sponsored by: The FreeBSD Foundation
> MFC after: 3 days
> Fixes: adb4901ac9ae
> ---
> sys/compat/linuxkpi/common/src/linux_80211.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c
> b/sys/compat/linuxkpi/common/src/linux_80211.c
> index f4b534122b87..1ac28dfef448 100644
> --- a/sys/compat/linuxkpi/common/src/linux_80211.c
> +++ b/sys/compat/linuxkpi/common/src/linux_80211.c
> @@ -693,7 +693,8 @@ skip_bw:
> sta = IEEE80211_VHT_MCS_NOT_SUPPORTED;
> else {
> sta = MIN(sta, card);
> - rx_nss = i + 1;
> + if (rx_nss == 0)
> + rx_nss = i + 1;
> }
> }
> rx_map |= (sta << (2 * i));
>