blob: 8ab501f51116f9520d43f2b091c664411f179ef4 [file] [log] [blame]
developer281084d2023-06-19 12:03:50 +08001From 83d30a89d61ee914b23d77256e993e9521de5cbc Mon Sep 17 00:00:00 2001
developerf8871e82023-03-08 17:22:32 +08002From: Shayne Chen <shayne.chen@mediatek.com>
3Date: Wed, 15 Feb 2023 18:38:04 +0800
developer281084d2023-06-19 12:03:50 +08004Subject: [PATCH 02/11] wifi: mt76: mt7996: move radio ctrl commands to proper
5 functions
developerf8871e82023-03-08 17:22:32 +08006
developer281084d2023-06-19 12:03:50 +08007Move radio enable/disable commands into functions for configuring
8per-phy radio.
developerf8871e82023-03-08 17:22:32 +08009
10Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
developerf8871e82023-03-08 17:22:32 +080011---
12 mt7996/main.c | 11 ++++++-----
13 1 file changed, 6 insertions(+), 5 deletions(-)
14
15diff --git a/mt7996/main.c b/mt7996/main.c
developer281084d2023-06-19 12:03:50 +080016index f306e9c5..e7c97d2f 100644
developerf8871e82023-03-08 17:22:32 +080017--- a/mt7996/main.c
18+++ b/mt7996/main.c
developerad9333b2023-05-22 15:16:16 +080019@@ -43,6 +43,10 @@ int mt7996_run(struct ieee80211_hw *hw)
developerf8871e82023-03-08 17:22:32 +080020 if (ret)
21 goto out;
22
23+ ret = mt7996_mcu_set_radio_en(phy, true);
24+ if (ret)
25+ goto out;
26+
27 ret = mt7996_mcu_set_chan_info(phy, UNI_CHANNEL_RX_PATH);
28 if (ret)
29 goto out;
developerad9333b2023-05-22 15:16:16 +080030@@ -82,6 +86,8 @@ static void mt7996_stop(struct ieee80211_hw *hw)
developerf8871e82023-03-08 17:22:32 +080031
32 mutex_lock(&dev->mt76.mutex);
33
34+ mt7996_mcu_set_radio_en(phy, false);
35+
36 clear_bit(MT76_STATE_RUNNING, &phy->mt76->state);
37
developerd5789dc2023-03-27 11:22:06 +080038 mutex_unlock(&dev->mt76.mutex);
developerad9333b2023-05-22 15:16:16 +080039@@ -190,10 +196,6 @@ static int mt7996_add_interface(struct ieee80211_hw *hw,
developerf8871e82023-03-08 17:22:32 +080040 if (ret)
41 goto out;
42
43- ret = mt7996_mcu_set_radio_en(phy, true);
44- if (ret)
45- goto out;
46-
47 dev->mt76.vif_mask |= BIT_ULL(mvif->mt76.idx);
48 phy->omac_mask |= BIT_ULL(mvif->mt76.omac_idx);
49
developerad9333b2023-05-22 15:16:16 +080050@@ -253,7 +255,6 @@ static void mt7996_remove_interface(struct ieee80211_hw *hw,
developerf8871e82023-03-08 17:22:32 +080051 phy->monitor_vif = NULL;
52
53 mt7996_mcu_add_dev_info(phy, vif, false);
54- mt7996_mcu_set_radio_en(phy, false);
55
56 rcu_assign_pointer(dev->mt76.wcid[idx], NULL);
57
58--
developerad9333b2023-05-22 15:16:16 +0800592.39.2
developerf8871e82023-03-08 17:22:32 +080060