mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-05 12:16:29 -04:00
wifi: mt76: mt7925: extend mt7925_mcu_sta_vht_tlv for per-link STA
Extend mt7925_mcu_sta_vht_tlv with the per-link STA configuration. The patch we created is a prerequisite to enable the MLO function in the driver. It is purely a refactoring patch so the functionality should remain unchanged. Co-developed-by: Ming Yen Hsieh <mingyen.hsieh@mediatek.com> Signed-off-by: Ming Yen Hsieh <mingyen.hsieh@mediatek.com> Co-developed-by: Deren Wu <deren.wu@mediatek.com> Signed-off-by: Deren Wu <deren.wu@mediatek.com> Signed-off-by: Sean Wang <sean.wang@mediatek.com> Link: https://patch.msgid.link/20240613030241.5771-32-sean.wang@kernel.org Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
@@ -1448,21 +1448,21 @@ mt7925_mcu_sta_ht_tlv(struct sk_buff *skb, struct ieee80211_sta *sta)
|
||||
}
|
||||
|
||||
static void
|
||||
mt7925_mcu_sta_vht_tlv(struct sk_buff *skb, struct ieee80211_sta *sta)
|
||||
mt7925_mcu_sta_vht_tlv(struct sk_buff *skb, struct ieee80211_link_sta *link_sta)
|
||||
{
|
||||
struct sta_rec_vht *vht;
|
||||
struct tlv *tlv;
|
||||
|
||||
/* For 6G band, this tlv is necessary to let hw work normally */
|
||||
if (!sta->deflink.he_6ghz_capa.capa && !sta->deflink.vht_cap.vht_supported)
|
||||
if (!link_sta->he_6ghz_capa.capa && !link_sta->vht_cap.vht_supported)
|
||||
return;
|
||||
|
||||
tlv = mt76_connac_mcu_add_tlv(skb, STA_REC_VHT, sizeof(*vht));
|
||||
|
||||
vht = (struct sta_rec_vht *)tlv;
|
||||
vht->vht_cap = cpu_to_le32(sta->deflink.vht_cap.cap);
|
||||
vht->vht_rx_mcs_map = sta->deflink.vht_cap.vht_mcs.rx_mcs_map;
|
||||
vht->vht_tx_mcs_map = sta->deflink.vht_cap.vht_mcs.tx_mcs_map;
|
||||
vht->vht_cap = cpu_to_le32(link_sta->vht_cap.cap);
|
||||
vht->vht_rx_mcs_map = link_sta->vht_cap.vht_mcs.rx_mcs_map;
|
||||
vht->vht_tx_mcs_map = link_sta->vht_cap.vht_mcs.tx_mcs_map;
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -1641,7 +1641,7 @@ mt7925_mcu_sta_cmd(struct mt76_phy *phy,
|
||||
if (info->link_sta && info->enable) {
|
||||
mt7925_mcu_sta_phy_tlv(skb, info->vif, info->link_sta->sta);
|
||||
mt7925_mcu_sta_ht_tlv(skb, info->link_sta->sta);
|
||||
mt7925_mcu_sta_vht_tlv(skb, info->link_sta->sta);
|
||||
mt7925_mcu_sta_vht_tlv(skb, info->link_sta);
|
||||
mt76_connac_mcu_sta_uapsd(skb, info->vif, info->link_sta->sta);
|
||||
mt7925_mcu_sta_amsdu_tlv(skb, info->vif, info->link_sta);
|
||||
mt7925_mcu_sta_he_tlv(skb, info->link_sta);
|
||||
|
||||
Reference in New Issue
Block a user