From 508070a74e55bbdc06b8865736301f568feb8e9f Mon Sep 17 00:00:00 2001
From: Peter Chiu <chui-hao.chiu@mediatek.com>
Date: Wed, 26 Jul 2023 16:33:43 +0800
Subject: [PATCH 2010/2012] wifi: mt76: drop packet based on ind_reason

Driver should drop packet which ind_reason is REPEAT and OLDPKT.

Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
Signed-off-by: sujuan.chen <sujuan.chen@mediatek.com>
---
 dma.c | 15 +++++++++++++--
 dma.h |  9 +++++++++
 2 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/dma.c b/dma.c
index 415121f74..7e3d0393b 100644
--- a/dma.c
+++ b/dma.c
@@ -436,8 +436,19 @@ mt76_dma_get_buf(struct mt76_dev *dev, struct mt76_queue *q, int idx,
 
 	if (drop) {
 		*drop = !!(ctrl & (MT_DMA_CTL_TO_HOST_A | MT_DMA_CTL_DROP));
-		if (ctrl & MT_DMA_CTL_VER_MASK)
-			*drop = !!(ctrl & MT_DMA_CTL_PN_CHK_FAIL);
+		if (ctrl & MT_DMA_CTL_VER_MASK) {
+			switch (le32_get_bits(desc->buf1, MT_DMA_IND_REASON)) {
+			case IND_REASON_REPEAT:
+				*drop = true;
+				break;
+			case IND_REASON_OLDPKT:
+				*drop = !le32_get_bits(desc->info, MT_DMA_INFO_DMA_FRAG);
+				break;
+			default:
+				*drop = !!(ctrl & MT_DMA_CTL_PN_CHK_FAIL);
+				break;
+			}
+		}
 	}
 
 	if (mt76_queue_is_wed_rx(q)) {
diff --git a/dma.h b/dma.h
index 480370928..f83604537 100644
--- a/dma.h
+++ b/dma.h
@@ -23,6 +23,7 @@
 
 #define MT_DMA_PPE_CPU_REASON		GENMASK(15, 11)
 #define MT_DMA_PPE_ENTRY		GENMASK(30, 16)
+#define MT_DMA_INFO_DMA_FRAG		BIT(9)
 #define MT_DMA_INFO_PPE_VLD		BIT(31)
 
 #define MT_DMA_CTL_PN_CHK_FAIL		BIT(13)
@@ -31,6 +32,7 @@
 #define MT_DMA_MAGIC_EN		BIT(13)
 
 #define MT_DMA_IND_CMD_MAGIC_CNT	8
+#define MT_DMA_IND_REASON		GENMASK(15, 12)
 
 #define MT_DMA_HDR_LEN			4
 #define MT_RX_INFO_LEN			4
@@ -66,6 +68,13 @@ enum mt76_mcu_evt_type {
 	EVT_EVENT_DFS_DETECT_RSP,
 };
 
+enum ind_reason {
+	IND_REASON_NORMAL,
+	IND_REASON_REPEAT,
+	IND_REASON_OLDPKT,
+	IND_REASON_MAX
+};
+
 int mt76_dma_rx_poll(struct napi_struct *napi, int budget);
 void mt76_dma_attach(struct mt76_dev *dev);
 void mt76_dma_cleanup(struct mt76_dev *dev);
-- 
2.39.2

