]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
wifi: rtw89: 8922a: fix incorrect STA-ID in EHT MU PPDU
authorKuan-Chung Chen <damon.chen@realtek.com>
Mon, 17 Feb 2025 06:12:35 +0000 (14:12 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 29 May 2025 09:13:14 +0000 (11:13 +0200)
[ Upstream commit bdce0574243b43b3bb2064f609c0c326df44c4c6 ]

EHT MU PPDU contains user field of EHT-SIG field with STA-ID that
must match AID subfield in the Associate Response. Add a necessary
setting to prevent these from being inconsistent.

Signed-off-by: Kuan-Chung Chen <damon.chen@realtek.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Link: https://patch.msgid.link/20250217061235.32031-1-pkshih@realtek.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/wireless/realtek/rtw89/fw.c

index 92e6bc05cbf66c9a354ce17443f0d99cbb22895a..f4b3438615541a6ac2f2d7cb30493187dd73070d 100644 (file)
@@ -3329,9 +3329,10 @@ int rtw89_fw_h2c_assoc_cmac_tbl_g7(struct rtw89_dev *rtwdev,
                              CCTLINFO_G7_W5_NOMINAL_PKT_PADDING3 |
                              CCTLINFO_G7_W5_NOMINAL_PKT_PADDING4);
 
-       h2c->w6 = le32_encode_bits(vif->type == NL80211_IFTYPE_STATION ? 1 : 0,
+       h2c->w6 = le32_encode_bits(vif->cfg.aid, CCTLINFO_G7_W6_AID12_PAID) |
+                 le32_encode_bits(vif->type == NL80211_IFTYPE_STATION ? 1 : 0,
                                   CCTLINFO_G7_W6_ULDL);
-       h2c->m6 = cpu_to_le32(CCTLINFO_G7_W6_ULDL);
+       h2c->m6 = cpu_to_le32(CCTLINFO_G7_W6_AID12_PAID | CCTLINFO_G7_W6_ULDL);
 
        if (rtwsta_link) {
                h2c->w8 = le32_encode_bits(link_sta->he_cap.has_he,