developer | 9e5bcc5 | 2022-09-27 10:30:15 +0800 | [diff] [blame^] | 1 | From 5fbff98bcf45a6b2a5467d06af26507dbdb0c7aa Mon Sep 17 00:00:00 2001 |
| 2 | From: Peter Chiu <chui-hao.chiu@mediatek.com> |
| 3 | Date: Thu, 22 Sep 2022 09:54:53 +0800 |
| 4 | Subject: [PATCH] mt76: mt7915: update mt7916 trinfo when hw path enable |
| 5 | |
| 6 | --- |
| 7 | mt7915/mt7915_debug.h | 10 ++++++++++ |
| 8 | mt7915/mtk_debugfs.c | 16 +++++++++++++--- |
| 9 | 2 files changed, 23 insertions(+), 3 deletions(-) |
| 10 | |
| 11 | diff --git a/mt7915/mt7915_debug.h b/mt7915/mt7915_debug.h |
| 12 | index 58ba2cdf..50b588bd 100644 |
| 13 | --- a/mt7915/mt7915_debug.h |
| 14 | +++ b/mt7915/mt7915_debug.h |
| 15 | @@ -133,6 +133,8 @@ enum dbg_reg_rev { |
| 16 | DBG_MIB_M0ARNG0, |
| 17 | DBG_MIB_M0DR2, |
| 18 | DBG_MIB_M0DR13, |
| 19 | + DBG_WFDMA_WED_TX_CTRL, |
| 20 | + DBG_WFDMA_WED_RX_CTRL, |
| 21 | __MT_DBG_REG_REV_MAX, |
| 22 | }; |
| 23 | |
| 24 | @@ -177,6 +179,8 @@ static const u32 mt7986_dbg_base[] = { |
| 25 | |
| 26 | /* mt7915 regs with different base and offset */ |
| 27 | static const struct __dbg_reg mt7915_dbg_reg[] = { |
| 28 | + [DBG_WFDMA_WED_TX_CTRL] = { MT_DBG_WFDMA_EXT_CSR_BASE, 0x300 }, |
| 29 | + [DBG_WFDMA_WED_RX_CTRL] = { MT_DBG_WFDMA_EXT_CSR_BASE, 0x400 }, |
| 30 | [DBG_INT_SOURCE_CSR] = { MT_DBG_WFDMA_EXT_CSR_BASE, 0x10 }, |
| 31 | [DBG_INT_MASK_CSR] = { MT_DBG_WFDMA_EXT_CSR_BASE, 0x14 }, |
| 32 | [DBG_INT1_SOURCE_CSR] = { MT_DBG_WFDMA_EXT_CSR_BASE, 0x88 }, |
| 33 | @@ -281,6 +285,8 @@ static const struct __dbg_reg mt7915_dbg_reg[] = { |
| 34 | |
| 35 | /* mt7986/mt7916 regs with different base and offset */ |
| 36 | static const struct __dbg_reg mt7916_dbg_reg[] = { |
| 37 | + [DBG_WFDMA_WED_TX_CTRL] = { MT_DBG_WFDMA_EXT_CSR_BASE, 0x300 }, |
| 38 | + [DBG_WFDMA_WED_RX_CTRL] = { MT_DBG_WFDMA_EXT_CSR_BASE, 0x400 }, |
| 39 | [DBG_INT_SOURCE_CSR] = { MT_DBG_WFDMA0_BASE, 0x200 }, |
| 40 | [DBG_INT_MASK_CSR] = { MT_DBG_WFDMA0_BASE, 0x204 }, |
| 41 | [DBG_INT1_SOURCE_CSR] = { MT_DBG_WFDMA0_PCIE1_BASE, 0x200 }, |
| 42 | @@ -450,11 +456,15 @@ struct bin_debug_hdr { |
| 43 | #define MT_DBG_RX_EVENT_RING_BASE __DBG_REG(dev, DBG_RX_EVENT_RING_BASE) |
| 44 | #define MT_DBG_RX_STS_RING_BASE __DBG_REG(dev, DBG_RX_STS_RING_BASE) |
| 45 | #define MT_DBG_RX_DATA_RING_BASE __DBG_REG(dev, DBG_RX_DATA_RING_BASE) |
| 46 | +#define MT_DBG_WFDMA_WED_TX_CTRL_BASE __DBG_REG(dev, DBG_WFDMA_WED_TX_CTRL) |
| 47 | +#define MT_DBG_WFDMA_WED_RX_CTRL_BASE __DBG_REG(dev, DBG_WFDMA_WED_RX_CTRL) |
| 48 | |
| 49 | #define MT_DBG_TX_RING_CTRL(n) (MT_DBG_TX_RING_BASE + (0x10 * (n))) |
| 50 | #define MT_DBG_RX_DATA_RING_CTRL(n) (MT_DBG_RX_DATA_RING_BASE + (0x10 * (n))) |
| 51 | #define MT_DBG_RX_EVENT_RING_CTRL(n) (MT_DBG_RX_EVENT_RING_BASE + (0x10 * (n))) |
| 52 | |
| 53 | +#define MT_DBG_WFDMA_WED_TX_CTRL(n) (MT_DBG_WFDMA_WED_TX_CTRL_BASE + (0x10 * (n))) |
| 54 | +#define MT_DBG_WFDMA_WED_RX_CTRL(n) (MT_DBG_WFDMA_WED_RX_CTRL_BASE + (0x10 * (n))) |
| 55 | /* WFDMA COMMON */ |
| 56 | #define MT_DBG_INT_SOURCE_CSR __DBG_REG(dev, DBG_INT_SOURCE_CSR) |
| 57 | #define MT_DBG_INT_MASK_CSR __DBG_REG(dev, DBG_INT_MASK_CSR) |
| 58 | diff --git a/mt7915/mtk_debugfs.c b/mt7915/mtk_debugfs.c |
| 59 | index e336b35a..c9d634ce 100644 |
| 60 | --- a/mt7915/mtk_debugfs.c |
| 61 | +++ b/mt7915/mtk_debugfs.c |
| 62 | @@ -855,12 +855,22 @@ mt7986_show_host_dma_info(struct seq_file *s, struct mt7915_dev *dev) |
| 63 | "Name", "Base", "Cnt", "CIDX", "DIDX", "QCnt"); |
| 64 | dump_dma_tx_ring_info(s, dev, "T16:FWDL", MT_DBG_TX_RING_CTRL(0)); |
| 65 | dump_dma_tx_ring_info(s, dev, "T17:Cmd(H2WM)", MT_DBG_TX_RING_CTRL(1)); |
| 66 | - dump_dma_tx_ring_info(s, dev, "T18:TXD0(H2WA)", MT_DBG_TX_RING_CTRL(2)); |
| 67 | - dump_dma_tx_ring_info(s, dev, "T19:TXD1(H2WA)", MT_DBG_TX_RING_CTRL(3)); |
| 68 | + |
| 69 | + if (is_mt7916(&dev->mt76) && mtk_wed_device_active(&dev->mt76.mmio.wed)) { |
| 70 | + dump_dma_tx_ring_info(s, dev, "T18:TXD0(H2WA)", MT_DBG_WFDMA_WED_TX_CTRL(0)); |
| 71 | + dump_dma_tx_ring_info(s, dev, "T19:TXD1(H2WA)", MT_DBG_WFDMA_WED_TX_CTRL(1)); |
| 72 | + } else { |
| 73 | + dump_dma_tx_ring_info(s, dev, "T18:TXD0(H2WA)", MT_DBG_TX_RING_CTRL(2)); |
| 74 | + dump_dma_tx_ring_info(s, dev, "T19:TXD1(H2WA)", MT_DBG_TX_RING_CTRL(3)); |
| 75 | + } |
| 76 | + |
| 77 | dump_dma_tx_ring_info(s, dev, "T20:Cmd(H2WA)", MT_DBG_TX_RING_CTRL(4)); |
| 78 | dump_dma_rx_ring_info(s, dev, "R0:Event(WM2H)", MT_DBG_RX_DATA_RING_CTRL(0)); |
| 79 | dump_dma_rx_ring_info(s, dev, "R1:Event(WA2H)", MT_DBG_RX_EVENT_RING_CTRL(1)); |
| 80 | - dump_dma_rx_ring_info(s, dev, "R2:TxDone(WA2H)", MT_DBG_RX_EVENT_RING_CTRL(2)); |
| 81 | + if (is_mt7916(&dev->mt76) && mtk_wed_device_active(&dev->mt76.mmio.wed)) |
| 82 | + dump_dma_rx_ring_info(s, dev, "R2:TxDone(WA2H)", MT_DBG_WFDMA_WED_RX_CTRL(1)); |
| 83 | + else |
| 84 | + dump_dma_rx_ring_info(s, dev, "R2:TxDone(WA2H)", MT_DBG_RX_EVENT_RING_CTRL(2)); |
| 85 | dump_dma_rx_ring_info(s, dev, "R3:TxDone1(WA2H)", MT_DBG_RX_EVENT_RING_CTRL(3)); |
| 86 | dump_dma_rx_ring_info(s, dev, "R4:Data0(MAC2H)", MT_DBG_RX_DATA_RING_CTRL(0)); |
| 87 | dump_dma_rx_ring_info(s, dev, "R5:Data1(MAC2H)", MT_DBG_RX_DATA_RING_CTRL(1)); |
| 88 | -- |
| 89 | 2.18.0 |
| 90 | |