lkml.org 
[lkml]   [2022]   [Oct]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 6.0 279/862] wifi: mt76: sdio: poll sta stat when device transmits data
    Date
    From: Sean Wang <sean.wang@mediatek.com>

    [ Upstream commit a323e5f041dd11af5e3de19ed7ea95a97d588c11 ]

    It is not meaningful to poll sta stat when there is no data traffic.
    So polling sta stat when the device has transmitted data instead to save
    CPU power.

    That implies that it is unallowed the stat_work to work while MCU is being
    initialized in the really early stage to fix the possible time to time MCU
    initialization failure.

    Fixes: d39b52e31aa6 ("mt76: introduce mt76_sdio module")
    Signed-off-by: Sean Wang <sean.wang@mediatek.com>
    Signed-off-by: Felix Fietkau <nbd@nbd.name>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/net/wireless/mediatek/mt76/sdio.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/drivers/net/wireless/mediatek/mt76/sdio.c b/drivers/net/wireless/mediatek/mt76/sdio.c
    index fb2caeae6dba..ece4e4bb94a1 100644
    --- a/drivers/net/wireless/mediatek/mt76/sdio.c
    +++ b/drivers/net/wireless/mediatek/mt76/sdio.c
    @@ -478,7 +478,7 @@ static void mt76s_status_worker(struct mt76_worker *w)
    if (ndata_frames > 0)
    resched = true;

    - if (dev->drv->tx_status_data &&
    + if (dev->drv->tx_status_data && ndata_frames > 0 &&
    !test_and_set_bit(MT76_READING_STATS, &dev->phy.state) &&
    !test_bit(MT76_STATE_SUSPEND, &dev->phy.state))
    ieee80211_queue_work(dev->hw, &dev->sdio.stat_work);
    --
    2.35.1


    \
     
     \ /
      Last update: 2022-10-19 16:01    [W:4.021 / U:0.408 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site