From: Sean Wang <sean.wang@xxxxxxxxxx> This patchset introduces comprehensive support for MLO (Multi-Link- Operation) mode on the MT7925 Wi-Fi driver. It includes driver modifications to ensure seamless operation specifically with MLO-enabled firmware environments. The patches included are: 1) Enable the link handling in the existing neccessary functions in the driver for MLO mode. 2) Add MCU TLV handling tailored for the MLO-enabled firmware. 3) Implement .change_vif_links and .change_sta_links callbacks for MLO mode. 4) Register the MLO capability with mac80211 when the driver is operating with the MLO-enabled firmware. These changes maintain compatibility with non-MLO mode and the older firmware versions. Sean Wang (29): wifi: mt76: mt7925: update mt76_connac_mcu_uni_add_dev for MLO wifi: mt76: mt7925: update mt7925_mac_link_sta_[add, remove] for MLO wifi: mt76: mt7925: set Tx queue parameters according to link id wifi: mt76: mt7925: set mt7925_mcu_sta_key_tlv according to link id wifi: mt76: mt7925: add mt7925_set_link_key wifi: mt76: mt7925: extend mt7925_mcu_uni_roc_event wifi: mt76: mt7925: add mt7925_change_vif_links wifi: mt76: mt7925: add mt7925_change_sta_links wifi: mt76: mt7925: add link handling in mt7925_mac_sta_add wifi: mt76: mt7925: add link handling in mt7925_mac_sta_remove wifi: mt76: mt7925: add link handling to txwi wifi: mt76: mt7925: add link handling in mt7925_set_key wifi: mt76: mt7925: add link handling to mt7925_change_chanctx wifi: mt76: mt7925: add link handling in the BSS_CHANGED_PS handler wifi: mt76: mt7925: add link handling in mt7925_mcu_set_beacon_filter wifi: mt76: mt7925: add link handling in mt7925_txwi_free wifi: mt76: mt7925: add link handling in mt7925_mac_sta_assoc wifi: mt76: mt7925: add link handling in mt7925_sta_set_decap_offload wifi: mt76: mt7925: update rate index according to link id wifi: mt76: mt7925: report link information in rx status wifi: mt76: add def_wcid to struct mt76_wcid wifi: mt76: mt7925: add mt7925_[assign,unassign]_vif_chanctx wifi: mt76: mt7925: update mt7925_mcu_sta_mld_tlv for MLO wifi: mt76: mt7925: update mt7925_mcu_bss_mld_tlv for MLO wifi: mt76: mt7925: update mt7925_mcu_add_bss_info for MLO wifi: mt76: mt7925: update mt7925_mcu_sta_update for MLO wifi: mt76: mt7925: add mt7925_mcu_sta_eht_mld_tlv for MLO wifi: mt76: mt7925: update mt7925_mcu_sta_rate_ctrl_tlv for MLO wifi: mt76: mt7925: enabling MLO when the firmware supports it drivers/net/wireless/mediatek/mt76/mac80211.c | 5 + drivers/net/wireless/mediatek/mt76/mt76.h | 7 + .../wireless/mediatek/mt76/mt76_connac_mcu.c | 2 +- .../wireless/mediatek/mt76/mt76_connac_mcu.h | 11 + .../net/wireless/mediatek/mt76/mt7925/init.c | 6 + .../net/wireless/mediatek/mt76/mt7925/mac.c | 66 +- .../net/wireless/mediatek/mt76/mt7925/main.c | 660 ++++++++++++++++-- .../net/wireless/mediatek/mt76/mt7925/mcu.c | 397 +++++++++-- .../net/wireless/mediatek/mt76/mt7925/mcu.h | 40 +- .../wireless/mediatek/mt76/mt7925/mt7925.h | 13 +- drivers/net/wireless/mediatek/mt76/mt792x.h | 26 + .../net/wireless/mediatek/mt76/mt792x_core.c | 49 +- 12 files changed, 1134 insertions(+), 148 deletions(-) -- 2.25.1