mac80211: sync some rt2x00 patches with wireless-next
[openwrt/staging/wigyori.git] / package / kernel / mac80211 / patches / rt2x00 / 000-v6.6-wifi-rt2x00-correct-MAC_SYS_CTRL-register-RX-mask-i.patch
diff --git a/package/kernel/mac80211/patches/rt2x00/000-v6.6-wifi-rt2x00-correct-MAC_SYS_CTRL-register-RX-mask-i.patch b/package/kernel/mac80211/patches/rt2x00/000-v6.6-wifi-rt2x00-correct-MAC_SYS_CTRL-register-RX-mask-i.patch
new file mode 100644 (file)
index 0000000..c84b5a1
--- /dev/null
@@ -0,0 +1,28 @@
+From 186f2432741f6d28d86ff723ac7830446affddfc Mon Sep 17 00:00:00 2001
+From: Shiji Yang <yangshiji66@outlook.com>
+Date: Sat, 5 Aug 2023 17:17:28 +0800
+Subject: wifi: rt2x00: correct MAC_SYS_CTRL register RX mask in R-Calibration
+
+For MAC_SYS_CTRL register, Bit[2] controls MAC_TX_EN and Bit[3]
+controls MAC_RX_EN (Bit index starts from 0). Therefore, 0x08 is
+the correct mask for RX.
+
+Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
+Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
+Signed-off-by: Kalle Valo <kvalo@kernel.org>
+Link: https://lore.kernel.org/r/TYAP286MB03150B571B67B896A504AC34BC0EA@TYAP286MB0315.JPNP286.PROD.OUTLOOK.COM
+---
+ drivers/net/wireless/ralink/rt2x00/rt2800lib.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
++++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
+@@ -8561,7 +8561,7 @@ static void rt2800_r_calibration(struct
+               rt2x00_warn(rt2x00dev, "Wait MAC Tx Status to MAX !!!\n");
+       maccfg = rt2800_register_read(rt2x00dev, MAC_SYS_CTRL);
+-      maccfg &= (~0x04);
++      maccfg &= (~0x08);
+       rt2800_register_write(rt2x00dev, MAC_SYS_CTRL, maccfg);
+       if (unlikely(rt2800_wait_bbp_rf_ready(rt2x00dev, MAC_STATUS_CFG_BBP_RF_BUSY_RX)))