developer | f8871e8 | 2023-03-08 17:22:32 +0800 | [diff] [blame^] | 1 | From c86f2243472f00fd2011cc44b89a87f7f6e2066a Mon Sep 17 00:00:00 2001 |
| 2 | From: Shayne Chen <shayne.chen@mediatek.com> |
| 3 | Date: Wed, 15 Feb 2023 18:38:04 +0800 |
| 4 | Subject: [PATCH 04/19] wifi: mt76: mt7996: move radio enable command to |
| 5 | mt7996_start() |
| 6 | |
| 7 | The radio enable and disable commands are used for per-phy radio, so |
| 8 | move them into mt7996_start() and mt7996_stop(), respectively. |
| 9 | |
| 10 | Signed-off-by: Shayne Chen <shayne.chen@mediatek.com> |
| 11 | Change-Id: I610b170f5198e085eb86dbd371ee0745ac6ff50f |
| 12 | --- |
| 13 | mt7996/main.c | 11 ++++++----- |
| 14 | 1 file changed, 6 insertions(+), 5 deletions(-) |
| 15 | |
| 16 | diff --git a/mt7996/main.c b/mt7996/main.c |
| 17 | index e80ee19e..a4fd9e24 100644 |
| 18 | --- a/mt7996/main.c |
| 19 | +++ b/mt7996/main.c |
| 20 | @@ -46,6 +46,10 @@ static int mt7996_start(struct ieee80211_hw *hw) |
| 21 | if (ret) |
| 22 | goto out; |
| 23 | |
| 24 | + ret = mt7996_mcu_set_radio_en(phy, true); |
| 25 | + if (ret) |
| 26 | + goto out; |
| 27 | + |
| 28 | ret = mt7996_mcu_set_chan_info(phy, UNI_CHANNEL_RX_PATH); |
| 29 | if (ret) |
| 30 | goto out; |
| 31 | @@ -77,6 +81,8 @@ static void mt7996_stop(struct ieee80211_hw *hw) |
| 32 | |
| 33 | mutex_lock(&dev->mt76.mutex); |
| 34 | |
| 35 | + mt7996_mcu_set_radio_en(phy, false); |
| 36 | + |
| 37 | clear_bit(MT76_STATE_RUNNING, &phy->mt76->state); |
| 38 | |
| 39 | ieee80211_iterate_interfaces(dev->mt76.hw, |
| 40 | @@ -189,10 +195,6 @@ static int mt7996_add_interface(struct ieee80211_hw *hw, |
| 41 | if (ret) |
| 42 | goto out; |
| 43 | |
| 44 | - ret = mt7996_mcu_set_radio_en(phy, true); |
| 45 | - if (ret) |
| 46 | - goto out; |
| 47 | - |
| 48 | dev->mt76.vif_mask |= BIT_ULL(mvif->mt76.idx); |
| 49 | phy->omac_mask |= BIT_ULL(mvif->mt76.omac_idx); |
| 50 | |
| 51 | @@ -248,7 +250,6 @@ static void mt7996_remove_interface(struct ieee80211_hw *hw, |
| 52 | phy->monitor_vif = NULL; |
| 53 | |
| 54 | mt7996_mcu_add_dev_info(phy, vif, false); |
| 55 | - mt7996_mcu_set_radio_en(phy, false); |
| 56 | |
| 57 | rcu_assign_pointer(dev->mt76.wcid[idx], NULL); |
| 58 | |
| 59 | -- |
| 60 | 2.39.2 |
| 61 | |