]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
wifi: mt76: mt7996: fix traffic delay when switching back to working channel
authorPeter Chiu <chui-hao.chiu@mediatek.com>
Fri, 16 Aug 2024 09:46:26 +0000 (17:46 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 4 Oct 2024 14:28:55 +0000 (16:28 +0200)
[ Upstream commit 376200f095d0c3a7096199b336204698d7086279 ]

During scanning, UNI_CHANNEL_RX_PATH tag is necessary for the firmware to
properly stop and resume MAC TX queue. Without this tag, HW needs more time
to resume traffic when switching back to working channel.

Fixes: 98686cd21624 ("wifi: mt76: mt7996: add driver for MediaTek Wi-Fi 7 (802.11be) devices")
Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
Link: https://patch.msgid.link/20240816094635.2391-2-shayne.chen@mediatek.com
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/wireless/mediatek/mt76/mt7996/main.c

index 7fea9f0d409bf5ccd8a004aec8c9b94a2f25a290..85f6a9f4f188c1abd1e7f97da967e5ebbe7f05d8 100644 (file)
@@ -287,6 +287,10 @@ int mt7996_set_channel(struct mt7996_phy *phy)
        if (ret)
                goto out;
 
+       ret = mt7996_mcu_set_chan_info(phy, UNI_CHANNEL_RX_PATH);
+       if (ret)
+               goto out;
+
        ret = mt7996_dfs_init_radar_detector(phy);
        mt7996_mac_cca_stats_reset(phy);