blob: 2247f64e7835be8f10319e9c3546e66994f1ff77 [file] [log] [blame]
developer9851a292022-12-15 17:33:43 +08001From 6bd6737abdf42fc5e645a8e5de1a31cfb9f0b37c Mon Sep 17 00:00:00 2001
developer81ca9d62022-10-14 11:23:22 +08002From: Evelyn Tsai <evelyn.tsai@mediatek.com>
3Date: Fri, 14 Oct 2022 11:15:13 +0800
developer9851a292022-12-15 17:33:43 +08004Subject: [PATCH 1128/1130] mt76: mt7915: support on off SW ACI through debugfs
developer81ca9d62022-10-14 11:23:22 +08005
6Signed-off-by: Evelyn Tsai <evelyn.tsai@mediatek.com>
7Change-Id: I8a9c277c41d1ba76f9737d8af6f42e5e8f00ba64
8---
9 mt76_connac_mcu.h | 1 +
10 mt7915/mtk_debugfs.c | 21 +++++++++++++++++++++
11 2 files changed, 22 insertions(+)
12
13diff --git a/mt76_connac_mcu.h b/mt76_connac_mcu.h
developereb6a0182022-12-12 18:53:32 +080014index 5cff1a45..98b00747 100644
developer81ca9d62022-10-14 11:23:22 +080015--- a/mt76_connac_mcu.h
16+++ b/mt76_connac_mcu.h
developereb6a0182022-12-12 18:53:32 +080017@@ -1201,6 +1201,7 @@ enum {
developer81ca9d62022-10-14 11:23:22 +080018 MCU_EXT_CMD_RX_STAT_USER_CTRL = 0xb3,
19 MCU_EXT_CMD_SET_CFG = 0xb7,
20 MCU_EXT_CMD_EDCCA = 0xba,
21+ MCU_EXT_CMD_SWLNA_ACI_CTRL = 0xc0,
22 MCU_EXT_CMD_CSI_CTRL = 0xc2,
developer887da632022-10-28 09:35:38 +080023 MCU_EXT_CMD_IPI_HIST_SCAN = 0xc5,
developer81ca9d62022-10-14 11:23:22 +080024 };
developer81ca9d62022-10-14 11:23:22 +080025diff --git a/mt7915/mtk_debugfs.c b/mt7915/mtk_debugfs.c
developer9851a292022-12-15 17:33:43 +080026index a3846bc9..e247683f 100644
developer81ca9d62022-10-14 11:23:22 +080027--- a/mt7915/mtk_debugfs.c
28+++ b/mt7915/mtk_debugfs.c
developer144824b2022-11-25 21:27:43 +080029@@ -2932,6 +2932,25 @@ static int mt7915_show_eeprom_mode(struct seq_file *s, void *data)
developer29647af2022-11-15 18:09:16 +080030 return 0;
31 }
developer81ca9d62022-10-14 11:23:22 +080032
33+static int
34+mt7915_sw_aci_set(void *data, u64 val)
35+{
36+#define SWLNA_ENABLE 6
37+ struct mt7915_dev *dev = data;
38+ struct {
39+ u32 subcmd;
40+ u8 enable;
41+ } req = {
42+ .subcmd = SWLNA_ENABLE,
43+ .enable = (u8) val,
44+ };
45+ return mt76_mcu_send_msg(&dev->mt76, MCU_EXT_CMD(SWLNA_ACI_CTRL), &req, sizeof(req), NULL);
46+}
47+
48+
49+DEFINE_DEBUGFS_ATTRIBUTE(fops_sw_aci, NULL,
50+ mt7915_sw_aci_set, "%llx\n");
51+
52 int mt7915_mtk_init_debugfs(struct mt7915_phy *phy, struct dentry *dir)
53 {
54 struct mt7915_dev *dev = phy->dev;
developer144824b2022-11-25 21:27:43 +080055@@ -3014,6 +3033,8 @@ int mt7915_mtk_init_debugfs(struct mt7915_phy *phy, struct dentry *dir)
developer81ca9d62022-10-14 11:23:22 +080056
developer29647af2022-11-15 18:09:16 +080057 debugfs_create_devm_seqfile(dev->mt76.dev, "eeprom_mode", dir,
58 mt7915_show_eeprom_mode);
developer81ca9d62022-10-14 11:23:22 +080059+ debugfs_create_file("sw_aci", 0600, dir, dev,
60+ &fops_sw_aci);
61 return 0;
62 }
63 #endif
64--
developer9851a292022-12-15 17:33:43 +0800652.18.0
developer81ca9d62022-10-14 11:23:22 +080066