From c8e0568252515b5b9fe6982efd099b3d9320f6ff Mon Sep 17 00:00:00 2001
From: Rex Lu <rex.lu@mediatek.com>
Date: Mon, 11 Dec 2023 19:21:16 +0800
Subject: [PATCH] wifi: mt76: mt7915: support backaward compatiable

---
 mt7915/mmio.c | 4 ++--
 wed.c         | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/mt7915/mmio.c b/mt7915/mmio.c
index 142f308..11db3ed 100644
--- a/mt7915/mmio.c
+++ b/mt7915/mmio.c
@@ -697,7 +697,7 @@ int mt7915_mmio_wed_init(struct mt7915_dev *dev, void *pdev_ptr,
 					 MT_RXQ_WED_RING_BASE;
 		wed->wlan.wpdma_rx_glo = pci_resource_start(pci_dev, 0) +
 					 MT_WPDMA_GLO_CFG;
-		wed->wlan.wpdma_rx = pci_resource_start(pci_dev, 0) +
+		wed->wlan.wpdma_rx[0] = pci_resource_start(pci_dev, 0) +
 				     MT_RXQ_WED_DATA_RING_BASE;
 	} else {
 		struct platform_device *plat_dev = pdev_ptr;
@@ -717,7 +717,7 @@ int mt7915_mmio_wed_init(struct mt7915_dev *dev, void *pdev_ptr,
 		wed->wlan.wpdma_tx = res->start + MT_TXQ_WED_RING_BASE;
 		wed->wlan.wpdma_txfree = res->start + MT_RXQ_WED_RING_BASE;
 		wed->wlan.wpdma_rx_glo = res->start + MT_WPDMA_GLO_CFG;
-		wed->wlan.wpdma_rx = res->start + MT_RXQ_WED_DATA_RING_BASE;
+		wed->wlan.wpdma_rx[0] = res->start + MT_RXQ_WED_DATA_RING_BASE;
 	}
 
 	wed->wlan.nbuf = is_mt7915(&dev->mt76) ?
diff --git a/wed.c b/wed.c
index 5ed681e..652f59e 100644
--- a/wed.c
+++ b/wed.c
@@ -175,7 +175,7 @@ int mt76_wed_dma_setup(struct mt76_dev *dev, struct mt76_queue *q, bool reset)
 		break;
 	case MT76_WED_RRO_Q_MSDU_PG:
 		q->flags &= ~MT_QFLAG_WED;
-		__mt76_dma_queue_reset(dev, q);
+		__mt76_dma_queue_reset(dev, q, false);
 		mtk_wed_device_msdu_pg_rx_ring_setup(q->wed, ring, q->regs);
 		q->head = q->ndesc - 1;
 		q->queued = q->head;
-- 
2.18.0

