summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmery Hsin <emery.hsin@mediatek.com>2026-06-12 15:50:38 +0800
committerFelix Fietkau <nbd@nbd.name>2026-07-31 12:25:36 +0000
commit047dc4dc582066266643b2617373e62f162de215 (patch)
treedccf2cc7aa58ab8e1c0bdf2318c09ccaf51c1929
parentbda8324270b1ac91bfba1df8928e0570e29759e8 (diff)
downloadlinux-047dc4dc582066266643b2617373e62f162de215.tar.gz
linux-047dc4dc582066266643b2617373e62f162de215.zip
wifi: mt76: mt792x: consolidate rx interrupt masks into all_complete_mask
Add all_complete_mask to irq_map rx sub-struct and use it in mt792x_irq_tasklet() and mt792x_dma_enable() to replace individual per-ring mask OR expressions. This is a preparation patch before enabling MT7928 PCIe support. Signed-off-by: Emery Hsin <emery.hsin@mediatek.com> Link: https://patch.msgid.link/20260612075042.2577193-1-jb.tsai@mediatek.com Signed-off-by: Felix Fietkau <nbd@nbd.name>
-rw-r--r--drivers/net/wireless/mediatek/mt76/mt792x.h1
-rw-r--r--drivers/net/wireless/mediatek/mt76/mt792x_dma.c8
2 files changed, 3 insertions, 6 deletions
diff --git a/drivers/net/wireless/mediatek/mt76/mt792x.h b/drivers/net/wireless/mediatek/mt76/mt792x.h
index 70073b43af54..83c729f8bb76 100644
--- a/drivers/net/wireless/mediatek/mt76/mt792x.h
+++ b/drivers/net/wireless/mediatek/mt76/mt792x.h
@@ -200,6 +200,7 @@ struct mt792x_irq_map {
u32 mcu_complete_mask;
} tx;
struct {
+ u32 all_complete_mask;
u32 data_complete_mask;
u32 wm_complete_mask;
u32 wm2_complete_mask;
diff --git a/drivers/net/wireless/mediatek/mt76/mt792x_dma.c b/drivers/net/wireless/mediatek/mt76/mt792x_dma.c
index fc326447c792..946ff6d58954 100644
--- a/drivers/net/wireless/mediatek/mt76/mt792x_dma.c
+++ b/drivers/net/wireless/mediatek/mt76/mt792x_dma.c
@@ -39,9 +39,7 @@ void mt792x_irq_tasklet(unsigned long data)
trace_dev_irq(&dev->mt76, intr, dev->mt76.mmio.irqmask);
- mask |= intr & (irq_map->rx.data_complete_mask |
- irq_map->rx.wm_complete_mask |
- irq_map->rx.wm2_complete_mask);
+ mask |= intr & irq_map->rx.all_complete_mask;
if (intr & dev->irq_map->tx.mcu_complete_mask)
mask |= dev->irq_map->tx.mcu_complete_mask;
@@ -276,9 +274,7 @@ int mt792x_dma_enable(struct mt792x_dev *dev)
/* enable interrupts for TX/RX rings */
mt76_connac_irq_enable(&dev->mt76,
dev->irq_map->tx.all_complete_mask |
- dev->irq_map->rx.data_complete_mask |
- dev->irq_map->rx.wm2_complete_mask |
- dev->irq_map->rx.wm_complete_mask |
+ dev->irq_map->rx.all_complete_mask |
MT_INT_MCU_CMD);
mt76_set(dev, MT_MCU2HOST_SW_INT_ENA, MT_MCU_CMD_WAKE_RX_PCIE);