Skip to content

Commit

Permalink
mt76: mt7615: mt7915: disable txpower sku when testmode enabled
Browse files Browse the repository at this point in the history
When testmode can be enabled, the start() callback would already be
called, causing that txpower sku feature isn't really disabled after
testmode is enabled. This patch fix the issue.

Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
  • Loading branch information
Shayne Chen authored and Felix Fietkau committed Jan 26, 2021
1 parent 3f0caa3 commit 06e0bbe
Show file tree
Hide file tree
Showing 4 changed files with 6 additions and 2 deletions.
2 changes: 1 addition & 1 deletion drivers/net/wireless/mediatek/mt76/mt7615/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -321,7 +321,7 @@ int mt7615_set_channel(struct mt7615_phy *phy)
mt7615_mac_set_timing(phy);
ret = mt7615_dfs_init_radar_detector(phy);
mt7615_mac_cca_stats_reset(phy);
mt7615_mcu_set_sku_en(phy, !mt76_testmode_enabled(phy->mt76));
mt7615_mcu_set_sku_en(phy, true);

mt7615_mac_reset_counters(dev);
phy->noise = 0;
Expand Down
2 changes: 2 additions & 0 deletions drivers/net/wireless/mediatek/mt76/mt7615/testmode.c
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,8 @@ mt7615_tm_init(struct mt7615_phy *phy)
if (!test_bit(MT76_STATE_RUNNING, &phy->mt76->state))
return;

mt7615_mcu_set_sku_en(phy, phy->mt76->test.state == MT76_TM_STATE_OFF);

mutex_unlock(&dev->mt76.mutex);
mt7615_set_channel(phy);
mt7615_ops.configure_filter(phy->mt76->hw, 0, &total_flags, 0);
Expand Down
2 changes: 1 addition & 1 deletion drivers/net/wireless/mediatek/mt76/mt7915/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ static int mt7915_start(struct ieee80211_hw *hw)
mt7915_mac_enable_nf(dev, 1);
}

mt7915_mcu_set_sku_en(phy, !mt76_testmode_enabled(phy->mt76));
mt7915_mcu_set_sku_en(phy, true);
mt7915_mcu_set_chan_info(phy, MCU_EXT_CMD_SET_RX_PATH);

set_bit(MT76_STATE_RUNNING, &phy->mt76->state);
Expand Down
2 changes: 2 additions & 0 deletions drivers/net/wireless/mediatek/mt76/mt7915/testmode.c
Original file line number Diff line number Diff line change
Expand Up @@ -402,6 +402,8 @@ mt7915_tm_init(struct mt7915_phy *phy, bool en)
if (!test_bit(MT76_STATE_RUNNING, &phy->mt76->state))
return;

mt7915_mcu_set_sku_en(phy, !en);

mt7915_tm_mode_ctrl(dev, en);
mt7915_tm_reg_backup_restore(phy);
mt7915_tm_set_trx(phy, TM_MAC_TXRX, !en);
Expand Down

0 comments on commit 06e0bbe

Please sign in to comment.