mt76: mt7921: Fix out of order process by invalid event pkt
The acceptable event report should inlcude original CMD-ID. Otherwise, drop unexpected result from fw. Fixes: 1c099ab44727c ("mt76: mt7921: add MCU support") Signed-off-by: Jimmy Hu <Jimmy.Hu@mediatek.com> Signed-off-by: Deren Wu <deren.wu@mediatek.com> Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
parent
bad67a2641
commit
cd3f387371
@ -157,6 +157,7 @@ mt7921_mcu_parse_response(struct mt76_dev *mdev, int cmd,
|
||||
struct sk_buff *skb, int seq)
|
||||
{
|
||||
struct mt7921_mcu_rxd *rxd;
|
||||
int mcu_cmd = cmd & MCU_CMD_MASK;
|
||||
int ret = 0;
|
||||
|
||||
if (!skb) {
|
||||
@ -194,6 +195,9 @@ mt7921_mcu_parse_response(struct mt76_dev *mdev, int cmd,
|
||||
skb_pull(skb, sizeof(*rxd));
|
||||
event = (struct mt7921_mcu_uni_event *)skb->data;
|
||||
ret = le32_to_cpu(event->status);
|
||||
/* skip invalid event */
|
||||
if (mcu_cmd != event->cid)
|
||||
ret = -EAGAIN;
|
||||
break;
|
||||
}
|
||||
case MCU_CMD_REG_READ: {
|
||||
|
Loading…
x
Reference in New Issue
Block a user