Lines Matching refs:link_sta
899 struct ieee80211_link_sta *link_sta) in mt7925_mcu_sta_hdr_trans_tlv() argument
915 if (link_sta) { in mt7925_mcu_sta_hdr_trans_tlv()
916 struct mt792x_sta *msta = (struct mt792x_sta *)link_sta->sta->drv_priv; in mt7925_mcu_sta_hdr_trans_tlv()
919 mlink = mt792x_sta_to_link(msta, link_sta->link_id); in mt7925_mcu_sta_hdr_trans_tlv()
941 struct ieee80211_link_sta *link_sta = sta ? &sta->deflink : NULL; in mt7925_mcu_wtbl_update_hdr_trans() local
950 link_sta = mt792x_sta_to_link_sta(vif, sta, link_id); in mt7925_mcu_wtbl_update_hdr_trans()
960 mt7925_mcu_sta_hdr_trans_tlv(skb, vif, link_sta); in mt7925_mcu_wtbl_update_hdr_trans()
1048 struct ieee80211_link_sta *link_sta; in mt7925_mcu_sta_key_tlv() local
1052 link_sta = mt792x_sta_to_link_sta(vif, sta, wcid->link_id); in mt7925_mcu_sta_key_tlv()
1054 if (link_sta) in mt7925_mcu_sta_key_tlv()
1055 memcpy(sec->peer_addr, link_sta->addr, ETH_ALEN); in mt7925_mcu_sta_key_tlv()
1459 mt7925_mcu_sta_he_tlv(struct sk_buff *skb, struct ieee80211_link_sta *link_sta) in mt7925_mcu_sta_he_tlv() argument
1461 if (!link_sta->he_cap.has_he) in mt7925_mcu_sta_he_tlv()
1464 mt76_connac_mcu_sta_he_tlv_v2(skb, link_sta->sta); in mt7925_mcu_sta_he_tlv()
1469 struct ieee80211_link_sta *link_sta) in mt7925_mcu_sta_he_6g_tlv() argument
1474 if (!link_sta->he_6ghz_capa.capa) in mt7925_mcu_sta_he_6g_tlv()
1480 he_6g->capa = link_sta->he_6ghz_capa.capa; in mt7925_mcu_sta_he_6g_tlv()
1484 mt7925_mcu_sta_eht_tlv(struct sk_buff *skb, struct ieee80211_link_sta *link_sta) in mt7925_mcu_sta_eht_tlv() argument
1491 if (!link_sta->eht_cap.has_eht) in mt7925_mcu_sta_eht_tlv()
1494 mcs_map = &link_sta->eht_cap.eht_mcs_nss_supp; in mt7925_mcu_sta_eht_tlv()
1495 elem = &link_sta->eht_cap.eht_cap_elem; in mt7925_mcu_sta_eht_tlv()
1505 if (link_sta->bandwidth == IEEE80211_STA_RX_BW_20) in mt7925_mcu_sta_eht_tlv()
1512 mt7925_mcu_sta_ht_tlv(struct sk_buff *skb, struct ieee80211_link_sta *link_sta) in mt7925_mcu_sta_ht_tlv() argument
1517 if (!link_sta->ht_cap.ht_supported) in mt7925_mcu_sta_ht_tlv()
1523 ht->ht_cap = cpu_to_le16(link_sta->ht_cap.cap); in mt7925_mcu_sta_ht_tlv()
1527 mt7925_mcu_sta_vht_tlv(struct sk_buff *skb, struct ieee80211_link_sta *link_sta) in mt7925_mcu_sta_vht_tlv() argument
1533 if (!link_sta->he_6ghz_capa.capa && !link_sta->vht_cap.vht_supported) in mt7925_mcu_sta_vht_tlv()
1539 vht->vht_cap = cpu_to_le32(link_sta->vht_cap.cap); in mt7925_mcu_sta_vht_tlv()
1540 vht->vht_rx_mcs_map = link_sta->vht_cap.vht_mcs.rx_mcs_map; in mt7925_mcu_sta_vht_tlv()
1541 vht->vht_tx_mcs_map = link_sta->vht_cap.vht_mcs.tx_mcs_map; in mt7925_mcu_sta_vht_tlv()
1547 struct ieee80211_link_sta *link_sta) in mt7925_mcu_sta_amsdu_tlv() argument
1549 struct mt792x_sta *msta = (struct mt792x_sta *)link_sta->sta->drv_priv; in mt7925_mcu_sta_amsdu_tlv()
1558 if (!link_sta->agg.max_amsdu_len) in mt7925_mcu_sta_amsdu_tlv()
1566 mlink = mt792x_sta_to_link(msta, link_sta->link_id); in mt7925_mcu_sta_amsdu_tlv()
1569 switch (link_sta->agg.max_amsdu_len) { in mt7925_mcu_sta_amsdu_tlv()
1587 struct ieee80211_link_sta *link_sta) in mt7925_mcu_sta_phy_tlv() argument
1597 link_conf = mt792x_vif_to_bss_conf(vif, link_sta->link_id); in mt7925_mcu_sta_phy_tlv()
1598 mconf = mt792x_vif_to_link(mvif, link_sta->link_id); in mt7925_mcu_sta_phy_tlv()
1606 link_sta); in mt7925_mcu_sta_phy_tlv()
1608 if (link_sta->ht_cap.ht_supported) { in mt7925_mcu_sta_phy_tlv()
1609 af = link_sta->ht_cap.ampdu_factor; in mt7925_mcu_sta_phy_tlv()
1610 mm = link_sta->ht_cap.ampdu_density; in mt7925_mcu_sta_phy_tlv()
1613 if (link_sta->vht_cap.vht_supported) { in mt7925_mcu_sta_phy_tlv()
1615 link_sta->vht_cap.cap); in mt7925_mcu_sta_phy_tlv()
1620 if (link_sta->he_6ghz_capa.capa) { in mt7925_mcu_sta_phy_tlv()
1621 af = le16_get_bits(link_sta->he_6ghz_capa.capa, in mt7925_mcu_sta_phy_tlv()
1623 mm = le16_get_bits(link_sta->he_6ghz_capa.capa, in mt7925_mcu_sta_phy_tlv()
1634 struct ieee80211_link_sta *link_sta, in mt7925_mcu_sta_state_v2_tlv() argument
1654 if (link_sta->vht_cap.vht_supported) { in mt7925_mcu_sta_state_v2_tlv()
1655 state->vht_opmode = link_sta->bandwidth; in mt7925_mcu_sta_state_v2_tlv()
1656 state->vht_opmode |= link_sta->rx_nss << in mt7925_mcu_sta_state_v2_tlv()
1664 struct ieee80211_link_sta *link_sta) in mt7925_mcu_sta_rate_ctrl_tlv() argument
1675 link_conf = mt792x_vif_to_bss_conf(vif, link_sta->link_id); in mt7925_mcu_sta_rate_ctrl_tlv()
1676 mconf = mt792x_vif_to_link(mvif, link_sta->link_id); in mt7925_mcu_sta_rate_ctrl_tlv()
1684 supp_rates = link_sta->supp_rates[band]; in mt7925_mcu_sta_rate_ctrl_tlv()
1693 if (link_sta->ht_cap.ht_supported) in mt7925_mcu_sta_rate_ctrl_tlv()
1695 link_sta->ht_cap.mcs.rx_mask, in mt7925_mcu_sta_rate_ctrl_tlv()
1785 if (info->link_sta) in mt7925_mcu_sta_cmd()
1787 info->link_sta, in mt7925_mcu_sta_cmd()
1789 if (info->link_sta && info->enable) { in mt7925_mcu_sta_cmd()
1790 mt7925_mcu_sta_phy_tlv(skb, info->vif, info->link_sta); in mt7925_mcu_sta_cmd()
1791 mt7925_mcu_sta_ht_tlv(skb, info->link_sta); in mt7925_mcu_sta_cmd()
1792 mt7925_mcu_sta_vht_tlv(skb, info->link_sta); in mt7925_mcu_sta_cmd()
1793 mt76_connac_mcu_sta_uapsd(skb, info->vif, info->link_sta->sta); in mt7925_mcu_sta_cmd()
1794 mt7925_mcu_sta_amsdu_tlv(skb, info->vif, info->link_sta); in mt7925_mcu_sta_cmd()
1795 mt7925_mcu_sta_he_tlv(skb, info->link_sta); in mt7925_mcu_sta_cmd()
1796 mt7925_mcu_sta_he_6g_tlv(skb, info->link_sta); in mt7925_mcu_sta_cmd()
1797 mt7925_mcu_sta_eht_tlv(skb, info->link_sta); in mt7925_mcu_sta_cmd()
1799 info->link_sta); in mt7925_mcu_sta_cmd()
1800 mt7925_mcu_sta_state_v2_tlv(phy, skb, info->link_sta, in mt7925_mcu_sta_cmd()
1803 mt7925_mcu_sta_mld_tlv(skb, info->vif, info->link_sta->sta); in mt7925_mcu_sta_cmd()
1807 mt7925_mcu_sta_hdr_trans_tlv(skb, info->vif, info->link_sta); in mt7925_mcu_sta_cmd()
1841 info->link_sta, in mt7925_mcu_mlo_sta_cmd()
1844 if (info->enable && info->link_sta) { in mt7925_mcu_mlo_sta_cmd()
1845 mt7925_mcu_sta_phy_tlv(skb, info->vif, info->link_sta); in mt7925_mcu_mlo_sta_cmd()
1846 mt7925_mcu_sta_ht_tlv(skb, info->link_sta); in mt7925_mcu_mlo_sta_cmd()
1847 mt7925_mcu_sta_vht_tlv(skb, info->link_sta); in mt7925_mcu_mlo_sta_cmd()
1848 mt76_connac_mcu_sta_uapsd(skb, info->vif, info->link_sta->sta); in mt7925_mcu_mlo_sta_cmd()
1849 mt7925_mcu_sta_amsdu_tlv(skb, info->vif, info->link_sta); in mt7925_mcu_mlo_sta_cmd()
1850 mt7925_mcu_sta_he_tlv(skb, info->link_sta); in mt7925_mcu_mlo_sta_cmd()
1851 mt7925_mcu_sta_he_6g_tlv(skb, info->link_sta); in mt7925_mcu_mlo_sta_cmd()
1852 mt7925_mcu_sta_eht_tlv(skb, info->link_sta); in mt7925_mcu_mlo_sta_cmd()
1854 info->link_sta); in mt7925_mcu_mlo_sta_cmd()
1855 mt7925_mcu_sta_state_v2_tlv(phy, skb, info->link_sta, in mt7925_mcu_mlo_sta_cmd()
1860 mt7925_mcu_sta_mld_tlv(skb, info->vif, info->link_sta->sta); in mt7925_mcu_mlo_sta_cmd()
1861 mt7925_mcu_sta_eht_mld_tlv(skb, info->vif, info->link_sta->sta); in mt7925_mcu_mlo_sta_cmd()
1864 mt7925_mcu_sta_hdr_trans_tlv(skb, info->vif, info->link_sta); in mt7925_mcu_mlo_sta_cmd()
1877 struct ieee80211_link_sta *link_sta, in mt7925_mcu_sta_update() argument
1884 .link_sta = link_sta, in mt7925_mcu_sta_update()
1896 if (link_sta) { in mt7925_mcu_sta_update()
1897 msta = (struct mt792x_sta *)link_sta->sta->drv_priv; in mt7925_mcu_sta_update()
1898 mlink = mt792x_sta_to_link(msta, link_sta->link_id); in mt7925_mcu_sta_update()
1900 info.wcid = link_sta ? &mlink->wcid : &mvif->sta.deflink.wcid; in mt7925_mcu_sta_update()
1901 info.newly = link_sta ? state != MT76_STA_INFO_STATE_ASSOC : true; in mt7925_mcu_sta_update()
2258 struct ieee80211_link_sta *link_sta) in mt7925_get_phy_mode_ext() argument
2265 if (link_sta) { in mt7925_get_phy_mode_ext()
2266 he_6ghz_capa = &link_sta->he_6ghz_capa; in mt7925_get_phy_mode_ext()
2267 eht_cap = &link_sta->eht_cap; in mt7925_get_phy_mode_ext()
2304 struct ieee80211_link_sta *link_sta, in mt7925_mcu_bss_basic_tlv() argument
2328 link_sta); in mt7925_mcu_bss_basic_tlv()
2336 basic_req->phymode = mt76_connac_get_phy_mode(phy, vif, band, link_sta); in mt7925_mcu_bss_basic_tlv()
2342 if (link_sta) { in mt7925_mcu_bss_basic_tlv()
2345 msta = (struct mt792x_sta *)link_sta->sta->drv_priv; in mt7925_mcu_bss_basic_tlv()
2346 mlink = mt792x_sta_to_link(msta, link_sta->link_id); in mt7925_mcu_bss_basic_tlv()
2580 struct ieee80211_link_sta *link_sta, in mt7925_mcu_add_bss_info() argument
2597 mt7925_mcu_bss_basic_tlv(skb, link_conf, link_sta, ctx, phy->mt76, in mt7925_mcu_add_bss_info()