[report] wifi: mt76: mt7996: fix FCS error flag check in RX descriptor
ALOK TIWARI
alok.a.tiwari at oracle.com
Sun Oct 12 09:32:24 PDT 2025
Hi,
While looking through the FCS error handling in the mt76 drivers,
I noticed that mt7996 uses rxd1 to check the MT_RXD3_NORMAL_FCS_ERR bit,
whereas other Connac3-based drivers (such as mt7925) use rxd3.
According to the definitions, MT_RXD3_NORMAL_FCS_ERR is located in the
fourth
RX descriptor word (rxd3), so I prepared a small patch to switch the
check from
rxd1 to rxd3 for consistency and correctness.
Before sending it formally, I wanted to confirm whether this
understanding is correct.
is mt7996 indeed supposed to use rxd3 for this flag, like mt7925?
Fixes: 98686cd21624 ("wifi: mt76: mt7996: add driver for MediaTek Wi-Fi
7 (802.11be) devices")
Thanks,
Alok
---
drivers/net/wireless/mediatek/mt76/mt7996/mac.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/wireless/mediatek/mt76/mt7996/mac.c
b/drivers/net/wireless/mediatek/mt76/mt7996/mac.c
index 9501def3e0e3..59744e5593b6 100644
--- a/drivers/net/wireless/mediatek/mt76/mt7996/mac.c
+++ b/drivers/net/wireless/mediatek/mt76/mt7996/mac.c
@@ -527,7 +527,7 @@ mt7996_mac_fill_rx(struct mt7996_dev *dev, enum
mt76_rxq_id q,
!(csum_status & (BIT(0) | BIT(2) | BIT(3))))
skb->ip_summed = CHECKSUM_UNNECESSARY;
- if (rxd1 & MT_RXD3_NORMAL_FCS_ERR)
+ if (rxd3 & MT_RXD3_NORMAL_FCS_ERR)
status->flag |= RX_FLAG_FAILED_FCS_CRC;
if (rxd1 & MT_RXD1_NORMAL_TKIP_MIC_ERR)
--
2.50.1
More information about the Linux-mediatek
mailing list