| From 3a1df78f8a0d4ff8293a3ddd0b7247bd4d11a3a8 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Fri, 26 Feb 2021 16:23:26 +0800 |
| Subject: mt76: mt7921: fix the base of PCIe interrupt |
| |
| From: Sean Wang <sean.wang@mediatek.com> |
| |
| [ Upstream commit 23c1d2dc9ed5be1d0df7987335f5646e3826a461 ] |
| |
| Should use 0x10000 as the base to operate PCIe interrupt according |
| to the vendor reference driver. |
| |
| Fixes: ffa1bf97425b ("mt76: mt7921: introduce PM support") |
| Co-developed-by: YN Chen <YN.Chen@mediatek.com> |
| Signed-off-by: YN Chen <YN.Chen@mediatek.com> |
| Signed-off-by: Sean Wang <sean.wang@mediatek.com> |
| Tested-by: Lorenzo Bianconi <lorenzo@kernel.org> |
| Signed-off-by: Felix Fietkau <nbd@nbd.name> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/net/wireless/mediatek/mt76/mt7921/pci.c | 4 ++-- |
| drivers/net/wireless/mediatek/mt76/mt7921/regs.h | 2 +- |
| 2 files changed, 3 insertions(+), 3 deletions(-) |
| |
| diff --git a/drivers/net/wireless/mediatek/mt76/mt7921/pci.c b/drivers/net/wireless/mediatek/mt76/mt7921/pci.c |
| index c747022f7642..0262bd8b1626 100644 |
| --- a/drivers/net/wireless/mediatek/mt76/mt7921/pci.c |
| +++ b/drivers/net/wireless/mediatek/mt76/mt7921/pci.c |
| @@ -137,7 +137,7 @@ static int mt7921_pci_probe(struct pci_dev *pdev, |
| |
| mt76_wr(dev, MT_WFDMA0_HOST_INT_ENA, 0); |
| |
| - mt7921_l1_wr(dev, MT_PCIE_MAC_INT_ENABLE, 0xff); |
| + mt76_wr(dev, MT_PCIE_MAC_INT_ENABLE, 0xff); |
| |
| ret = devm_request_irq(mdev->dev, pdev->irq, mt7921_irq_handler, |
| IRQF_SHARED, KBUILD_MODNAME, dev); |
| @@ -248,7 +248,7 @@ static int mt7921_pci_resume(struct pci_dev *pdev) |
| return err; |
| |
| /* enable interrupt */ |
| - mt7921_l1_wr(dev, MT_PCIE_MAC_INT_ENABLE, 0xff); |
| + mt76_wr(dev, MT_PCIE_MAC_INT_ENABLE, 0xff); |
| mt7921_irq_enable(dev, MT_INT_RX_DONE_ALL | MT_INT_TX_DONE_ALL | |
| MT_INT_MCU_CMD); |
| |
| diff --git a/drivers/net/wireless/mediatek/mt76/mt7921/regs.h b/drivers/net/wireless/mediatek/mt76/mt7921/regs.h |
| index 2dd2e628b776..e7bb918446ee 100644 |
| --- a/drivers/net/wireless/mediatek/mt76/mt7921/regs.h |
| +++ b/drivers/net/wireless/mediatek/mt76/mt7921/regs.h |
| @@ -389,7 +389,7 @@ |
| #define MT_HW_CHIPID 0x70010200 |
| #define MT_HW_REV 0x70010204 |
| |
| -#define MT_PCIE_MAC_BASE 0x74030000 |
| +#define MT_PCIE_MAC_BASE 0x10000 |
| #define MT_PCIE_MAC(ofs) (MT_PCIE_MAC_BASE + (ofs)) |
| #define MT_PCIE_MAC_INT_ENABLE MT_PCIE_MAC(0x188) |
| |
| -- |
| 2.30.2 |
| |