[PATCH 1/2] mt76: mt7921s: make pm->suspended usage consistent
sean.wang at mediatek.com
sean.wang at mediatek.com
Mon Dec 13 10:58:05 PST 2021
From: Sean Wang <sean.wang at mediatek.com>
>> From: Sean Wang <sean.wang at mediatek.com>
>>
>> >> From: Sean Wang <sean.wang at mediatek.com>
>> >>
>> >> Update pm->suspended usage to be consistent with mt7921e driver.
>> >>
>> >> Signed-off-by: Sean Wang <sean.wang at mediatek.com>
>> >> ---
>> >> drivers/net/wireless/mediatek/mt76/mt7921/sdio.c | 7 +++++--
>> >> 1 file changed, 5 insertions(+), 2 deletions(-)
>> >>
>> >> diff --git a/drivers/net/wireless/mediatek/mt76/mt7921/sdio.c
>> >> b/drivers/net/wireless/mediatek/mt76/mt7921/sdio.c
>> >> index 84be229a899d..44ee9369f6bf 100644
>> >> --- a/drivers/net/wireless/mediatek/mt76/mt7921/sdio.c
>> >> +++ b/drivers/net/wireless/mediatek/mt76/mt7921/sdio.c
>> >> @@ -278,7 +278,6 @@ static int mt7921s_resume(struct device *__dev)
>> >> struct mt76_dev *mdev = &dev->mt76;
>> >> int err;
>> >>
>> >> - pm->suspended = false;
>> >> clear_bit(MT76_STATE_SUSPEND, &mdev->phy.state);
>> >>
>> >> err = mt7921_mcu_drv_pmctrl(dev);
>> >> @@ -294,7 +293,11 @@ static int mt7921s_resume(struct device *__dev)
>> >> if (!pm->ds_enable)
>> >> mt76_connac_mcu_set_deep_sleep(mdev, false);
>> >>
>> >> - return mt76_connac_mcu_set_hif_suspend(mdev, false);
>> >> + err = mt76_connac_mcu_set_hif_suspend(mdev, false);
>> >
>> >should we check return value here? Something like:
>> >
>> > if (err)
>> > return err;
>> >
>> > pm->suspended = false;
>> > return 0;
>> >
>> >Or, is the chip up even if mt76_connac_mcu_set_hif_suspend() fails?
>>
>> yes, chip is eventually up again by recovered with the following wifi
>> reset
>>
>> with current logic, if do so (not mark pm->suspended back as false to
>> show suspend/resume is over),
>>
>> the pm runtime would not be enabled again after the wifi reset
>
>maybe we should just set pm->suspended = false; in mt7921_mac_reset_work() as we do for hw_full_reset, wdyt?
That looks fine to me. I will submit another patch for that prior to the patch.
>
>Regards,
>Lorenzo
>
>>
>> >> +
>> >> + pm->suspended = false;
>> >> +
>> >> + return err;
>> >> }
>> >>
>> >> static const struct dev_pm_ops mt7921s_pm_ops = {
>> >> --
>> >> 2.25.1
>> >>
More information about the Linux-mediatek
mailing list