mt76: mt7915: set bssinfo/starec command when adding interface
authorShayne Chen <shayne.chen@mediatek.com>
Fri, 14 Jan 2022 09:49:11 +0000 (17:49 +0800)
committerFelix Fietkau <nbd@nbd.name>
Thu, 3 Feb 2022 12:57:59 +0000 (13:57 +0100)
bssinfo/starec disabled commands are sent during removing interface.
However, if we don't set corresponding enabled commands before
removing interface, the fw may enter an exception state due to
some NULL structs.
For example, the following commands can cause fw timeout in our newer
chips:
    ifconfig wlan0/mon0 up
    ifconfig wlan0/mon0 down

Fix this by setting enabled commands once interface added.

Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
drivers/net/wireless/mediatek/mt76/mt7915/main.c

index b45b75f..41b0a4d 100644 (file)
@@ -257,6 +257,9 @@ static int mt7915_add_interface(struct ieee80211_hw *hw,
        mt7915_init_bitrate_mask(vif);
        memset(&mvif->cap, -1, sizeof(mvif->cap));
 
+       mt7915_mcu_add_bss_info(phy, vif, true);
+       mt7915_mcu_add_sta(dev, vif, NULL, true);
+
 out:
        mutex_unlock(&dev->mt76.mutex);