lkml.org 
[lkml]   [2021]   [May]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.12 541/677] mt76: mt7921: always wake the device in mt7921_remove_interface
    Date
    From: Lorenzo Bianconi <lorenzo@kernel.org>

    [ Upstream commit 859c85fd19715349ce01539459095fd5fc7e483a ]

    Make sure the mcu is not in sleep mode before sending mcu messages in
    mt7921_remove_interface routine.

    Fixes: 1d8efc741df80 ("mt76: mt7921: introduce Runtime PM support")
    Co-developed-by: Sean Wang <sean.wang@mediatek.com>
    Signed-off-by: Sean Wang <sean.wang@mediatek.com>
    Co-developed-by: Leon Yen <leon.yen@mediatek.com>
    Signed-off-by: Leon Yen <leon.yen@mediatek.com>
    Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
    Signed-off-by: Felix Fietkau <nbd@nbd.name>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/net/wireless/mediatek/mt76/mt7921/main.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/drivers/net/wireless/mediatek/mt76/mt7921/main.c b/drivers/net/wireless/mediatek/mt76/mt7921/main.c
    index 3566059e5704..166c9c0eb5fd 100644
    --- a/drivers/net/wireless/mediatek/mt76/mt7921/main.c
    +++ b/drivers/net/wireless/mediatek/mt76/mt7921/main.c
    @@ -348,6 +348,7 @@ static void mt7921_remove_interface(struct ieee80211_hw *hw,
    if (vif == phy->monitor_vif)
    phy->monitor_vif = NULL;

    + mt7921_mutex_acquire(dev);
    mt76_connac_free_pending_tx_skbs(&dev->pm, &msta->wcid);

    if (dev->pm.enable) {
    @@ -360,7 +361,6 @@ static void mt7921_remove_interface(struct ieee80211_hw *hw,

    rcu_assign_pointer(dev->mt76.wcid[idx], NULL);

    - mt7921_mutex_acquire(dev);
    dev->mt76.vif_mask &= ~BIT(mvif->mt76.idx);
    phy->omac_mask &= ~BIT_ULL(mvif->mt76.omac_idx);
    mt7921_mutex_release(dev);
    --
    2.30.2


    \
     
     \ /
      Last update: 2021-05-12 23:01    [W:2.368 / U:0.116 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site