From: Sean Wang Date: Wed, 15 Dec 2021 21:25:37 +0000 (+0800) Subject: mt76: mt7921s: fix suspend error with enlarging mcu timeout value X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=1bb42a354d8ca2888c7c2fcbf0add410176a33dc;p=linux.git mt76: mt7921s: fix suspend error with enlarging mcu timeout value Fix the false positive suspend error that may occur on mt7921s with enlarging mcu timeout value. The reason why we have to enlarge mcu timeout from HZ / 3 to HZ is we should consider the additional overhead caused by running concurrently with btmtksdio (a MT7921 bluetooth SDIO driver) that would compete for the same SDIO bus in process context to complete the suspend procedure. Fixes: 48fab5bbef40 ("mt76: mt7921: introduce mt7921s support") Signed-off-by: Sean Wang Signed-off-by: Felix Fietkau --- diff --git a/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c b/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c index a2c892be2e2f1..ef1e1ef91611b 100644 --- a/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c +++ b/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c @@ -226,7 +226,7 @@ int mt7921_mcu_fill_message(struct mt76_dev *mdev, struct sk_buff *skb, if (cmd == MCU_UNI_CMD(HIF_CTRL) || cmd == MCU_UNI_CMD(SUSPEND) || cmd == MCU_UNI_CMD(OFFLOAD)) - mdev->mcu.timeout = HZ / 3; + mdev->mcu.timeout = HZ; else mdev->mcu.timeout = 3 * HZ;