diff options
| author | Emery Hsin <emery.hsin@mediatek.com> | 2026-06-12 15:53:38 +0800 |
|---|---|---|
| committer | Felix Fietkau <nbd@nbd.name> | 2026-07-31 12:25:37 +0000 |
| commit | 8905038d58aa5ffa2a42e0efd4e41da4e25ce101 (patch) | |
| tree | dfdbd8740564dc36c3d9df037a28511761a1542b | |
| parent | f26fda0c6ae2fb2347c16e65d158d9cc9e697751 (diff) | |
| download | linux-next-8905038d58aa5ffa2a42e0efd4e41da4e25ce101.tar.gz linux-next-8905038d58aa5ffa2a42e0efd4e41da4e25ce101.zip | |
wifi: mt76: mt7925: add MT7928 per-chip PCIe register definitions
MT7928 maps PCIe MAC registers through base 0x74040000. Add
MT7928_PCIE_MAC_{INT_ENABLE,PM} macros and override dev->pcie_reg
at probe time for MT7928 hardware.
Signed-off-by: Xiong <xiong.huang@mediatek.com>
Signed-off-by: Emery Hsin <emery.hsin@mediatek.com>
Link: https://patch.msgid.link/20260612075339.2578327-4-jb.tsai@mediatek.com
Signed-off-by: Felix Fietkau <nbd@nbd.name>
| -rw-r--r-- | drivers/net/wireless/mediatek/mt76/mt7925/pci.c | 6 | ||||
| -rw-r--r-- | drivers/net/wireless/mediatek/mt76/mt7925/regs.h | 5 |
2 files changed, 11 insertions, 0 deletions
diff --git a/drivers/net/wireless/mediatek/mt76/mt7925/pci.c b/drivers/net/wireless/mediatek/mt76/mt7925/pci.c index 719f53ddf1eb..1ad5847d4a8c 100644 --- a/drivers/net/wireless/mediatek/mt76/mt7925/pci.c +++ b/drivers/net/wireless/mediatek/mt76/mt7925/pci.c @@ -473,6 +473,11 @@ static const struct mt792x_pcie_reg mt7925_pcie_reg = { .pm = MT7925_PCIE_MAC_PM, }; +static const struct mt792x_pcie_reg mt7928_pcie_reg = { + .imask = MT7928_PCIE_MAC_INT_ENABLE, + .pm = MT7928_PCIE_MAC_PM, +}; + static const struct mt792x_irq_map mt7925_irq_map = { .host_irq_enable = MT_WFDMA0_HOST_INT_ENA, .tx = { @@ -609,6 +614,7 @@ static int mt7925_pci_probe(struct pci_dev *pdev, dev->pcie_reg = &mt7925_pcie_reg; if (is_mt7928_hw) { + dev->pcie_reg = &mt7928_pcie_reg; dev->irq_map = &mt7928_irq_map; mdev->rev = 0x7928 << 16; } else if (is_mt7927_hw) { diff --git a/drivers/net/wireless/mediatek/mt76/mt7925/regs.h b/drivers/net/wireless/mediatek/mt76/mt7925/regs.h index af6291fc53cd..cb937d565a80 100644 --- a/drivers/net/wireless/mediatek/mt76/mt7925/regs.h +++ b/drivers/net/wireless/mediatek/mt76/mt7925/regs.h @@ -114,6 +114,11 @@ #define MT7925_PCIE_MAC_INT_ENABLE MT7925_PCIE_MAC(0x188) #define MT7925_PCIE_MAC_PM MT7925_PCIE_MAC(0x194) +#define MT7928_PCIE_MAC_BASE 0x74040000 +#define MT7928_PCIE_MAC(ofs) (MT7928_PCIE_MAC_BASE + (ofs)) +#define MT7928_PCIE_MAC_INT_ENABLE MT7928_PCIE_MAC(0x188) +#define MT7928_PCIE_MAC_PM MT7928_PCIE_MAC(0x194) + #define MT_DMASHDL_LITE_BASE 0x20026200 #define MT_DMASHDL_LITE(ofs) (MT_DMASHDL_LITE_BASE + (ofs)) #define MT_DMASHDL_LITE_MAIN_CONTROL MT_DMASHDL_LITE(0x004) |
