]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
wifi: mt76: mt7996: set link_valid field when initializing wcid
authorShayne Chen <shayne.chen@mediatek.com>
Thu, 6 Nov 2025 06:41:58 +0000 (14:41 +0800)
committerFelix Fietkau <nbd@nbd.name>
Mon, 24 Nov 2025 13:59:12 +0000 (14:59 +0100)
This ensures the upper layer uses the correct link ID during packet
processing.

Fixes: dd82a9e02c05 ("wifi: mt76: mt7996: Rely on mt7996_sta_link in sta_add/sta_remove callbacks")
Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
Acked-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://patch.msgid.link/20251106064203.1000505-7-shayne.chen@mediatek.com
Signed-off-by: Felix Fietkau <nbd@nbd.name>
drivers/net/wireless/mediatek/mt76/mt7996/main.c

index 685be98b9f2758a0a7bcff71a888e657116773a1..c26f8f49ce44a4420d0c915ac7b4164987c7f2ca 100644 (file)
@@ -343,6 +343,7 @@ int mt7996_vif_link_add(struct mt76_phy *mphy, struct ieee80211_vif *vif,
        INIT_LIST_HEAD(&msta_link->rc_list);
        msta_link->wcid.idx = idx;
        msta_link->wcid.link_id = link_conf->link_id;
+       msta_link->wcid.link_valid = ieee80211_vif_is_mld(vif);
        msta_link->wcid.tx_info |= MT_WCID_TX_INFO_SET;
        mt76_wcid_init(&msta_link->wcid, band_idx);
 
@@ -984,6 +985,7 @@ mt7996_mac_sta_init_link(struct mt7996_dev *dev,
        msta_link->wcid.sta = 1;
        msta_link->wcid.idx = idx;
        msta_link->wcid.link_id = link_id;
+       msta_link->wcid.link_valid = !!sta->valid_links;
        msta_link->wcid.def_wcid = &msta->deflink.wcid;
 
        ewma_avg_signal_init(&msta_link->avg_ack_signal);