[report] wifi: mt76: mt7996: fix FCS error flag check in RX descriptor
Peter Chiu
chui-hao.chiu at mediatek.com
Mon Oct 13 22:57:19 PDT 2025
On Mon, 2025-10-13 at 11:11 -0700, Ben Greear wrote:
Hi Ben,
The incorrect bit is MT_RXD1_NORMAL_CLM.
It is only set when there is a decryption error so most of the time
this bit is zero.
Thanks,
Peter Chiu
>
> External email : Please do not click links or open attachments until
> you have verified the sender or the content.
>
>
> Hello Peter,
>
> To help understand the severity of this problem, can you let us know
> when
> the incorrect bit is set? In other words, would looking at the wrong
> bit
> erroneously cause good frames to be dropped, or was the bit always
> zero and
> it just allowed bad frames to be accepted?
>
> Thanks,
> Ben
>
> On 10/12/25 20:19, Peter Chiu wrote:
> > On Sun, 2025-10-12 at 22:02 +0530, ALOK TIWARI wrote:
> >
> > Hi Alok,
> >
> > Thanks for your mail.
> > Your understanding is correct.
> > There is a typo in mt7996.
> >
> > Thanks,
> > Peter Chiu
> >
> > >
> > > External email : Please do not click links or open attachments
> > > until
> > > you have verified the sender or the content.
> > >
> > >
> > > 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
> >
> > ************* MEDIATEK Confidentiality Notice
> > ********************
> > The information contained in this e-mail message (including any
> > attachments) may be confidential, proprietary, privileged, or
> > otherwise
> > exempt from disclosure under applicable laws. It is intended to be
> > conveyed only to the designated recipient(s). Any use,
> > dissemination,
> > distribution, printing, retaining or copying of this e-mail
> > (including its
> > attachments) by unintended recipient(s) is strictly prohibited and
> > may
> > be unlawful. If you are not an intended recipient of this e-mail,
> > or believe
> >
> > that you have received this e-mail in error, please notify the
> > sender
> > immediately (by replying to this e-mail), delete any and all copies
> > of
> > this e-mail (including any attachments) from your system, and do
> > not
> > disclose the content of this e-mail to any other person. Thank you!
> >
>
> --
> Ben Greear <greearb at candelatech.com>
> Candela Technologies Inc
> https://urldefense.com/v3/__http://www.candelatech.com__;!!CTRNKA9wMg0ARbw!kqzkHZoLin2hRuz5nWsnd8WZ4M-4HouFcKGVf4pC7KWdV8u0t0p2yxxigivg90pEO6fACMrQNuRD0RK8z19PvhZOFA$
>
>
More information about the Linux-mediatek
mailing list