]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
wifi: mt76: mt7996: rework mt7996_update_mu_group to support MLO
authorLorenzo Bianconi <lorenzo@kernel.org>
Wed, 12 Mar 2025 11:13:58 +0000 (12:13 +0100)
committerFelix Fietkau <nbd@nbd.name>
Wed, 19 Mar 2025 13:47:07 +0000 (14:47 +0100)
Rework mt7996_update_mu_group routine in order to support multi-link
setup.

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://patch.msgid.link/20250312-b4-mt7996-mlo-p2-v1-14-015b3d6fd928@kernel.org
Signed-off-by: Felix Fietkau <nbd@nbd.name>
drivers/net/wireless/mediatek/mt76/mt7996/main.c

index 4d3098e47dbbc25ced2a4b40c6b92423c451899e..2bf6453975ae584b2ab7cc9a46cc80ad7d73d05d 100644 (file)
@@ -700,12 +700,11 @@ mt7996_get_rates_table(struct mt7996_phy *phy, struct ieee80211_bss_conf *conf,
 }
 
 static void
-mt7996_update_mu_group(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
+mt7996_update_mu_group(struct ieee80211_hw *hw, struct mt7996_vif_link *link,
                       struct ieee80211_bss_conf *info)
 {
-       struct mt7996_vif *mvif = (struct mt7996_vif *)vif->drv_priv;
        struct mt7996_dev *dev = mt7996_hw_dev(hw);
-       u8 band = mvif->deflink.mt76.band_idx;
+       u8 band = link->mt76.band_idx;
        u32 *mu;
 
        mu = (u32 *)info->mu_group.membership;
@@ -831,7 +830,7 @@ mt7996_link_info_changed(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
                mt7996_mcu_beacon_inband_discov(dev, vif, changed);
 
        if (changed & BSS_CHANGED_MU_GROUPS)
-               mt7996_update_mu_group(hw, vif, info);
+               mt7996_update_mu_group(hw, link, info);
 
        if (changed & BSS_CHANGED_TXPOWER &&
            info->txpower != phy->txpower) {