[][MAC80211][wed][fix rx copy patch to sync mt76 lastest version]
[Description]
Fix rx copy patch to sync mt76 lastest version
[Release-log]
N/A
Change-Id: I94f96375c821e9ae98bc7f684a2a5ae839957572
Reviewed-on: https://gerrit.mediatek.inc/c/openwrt/feeds/mtk_openwrt_feeds/+/7017857
diff --git a/autobuild_mac80211_release/package/kernel/mt76/patches/3007-mt76-mt7915-wed-find-rx-token-by-physical-address.patch b/autobuild_mac80211_release/package/kernel/mt76/patches/3007-mt76-mt7915-wed-find-rx-token-by-physical-address.patch
index e3f9cfb..35d9a77 100644
--- a/autobuild_mac80211_release/package/kernel/mt76/patches/3007-mt76-mt7915-wed-find-rx-token-by-physical-address.patch
+++ b/autobuild_mac80211_release/package/kernel/mt76/patches/3007-mt76-mt7915-wed-find-rx-token-by-physical-address.patch
@@ -1,7 +1,7 @@
-From 7d67ffd5b29ee60e02da2bd19dfb12839393ca3c Mon Sep 17 00:00:00 2001
+From 7c2e0d8a456963e4d5df268b7b28ae8a5d0d94d9 Mon Sep 17 00:00:00 2001
From: Sujuan Chen <sujuan.chen@mediatek.com>
Date: Fri, 25 Nov 2022 14:32:35 +0800
-Subject: [PATCH 3007/3013] mt76: mt7915: wed: find rx token by physical
+Subject: [PATCH 3007/3014] mt76: mt7915: wed: find rx token by physical
address
The token id in RxDMAD may be incorrect when it is not the last frame due to
@@ -13,10 +13,10 @@
1 file changed, 20 insertions(+), 1 deletion(-)
diff --git a/dma.c b/dma.c
-index 35beec7..327ed3b 100644
+index 5163a8e9..0dce97fb 100644
--- a/dma.c
+++ b/dma.c
-@@ -376,10 +376,29 @@ mt76_dma_get_buf(struct mt76_dev *dev, struct mt76_queue *q, int idx,
+@@ -406,11 +406,30 @@ mt76_dma_get_buf(struct mt76_dev *dev, struct mt76_queue *q, int idx,
if ((q->flags & MT_QFLAG_WED) &&
FIELD_GET(MT_QFLAG_WED_TYPE, q->flags) == MT76_WED_Q_RX) {
@@ -25,7 +25,8 @@
le32_to_cpu(desc->buf1));
- struct mt76_txwi_cache *t = mt76_rx_token_release(dev, token);
+ struct mt76_txwi_cache *t;
-+
+ struct mt76_queue_buf qbuf;
+
+ if (*more) {
+ spin_lock_bh(&dev->rx_token_lock);
+
@@ -42,7 +43,7 @@
+ if (!find)
+ return NULL;
+ }
-
++
+ t = mt76_rx_token_release(dev, token);
if (!t)
return NULL;