Lines Matching refs:link_sta

12 static u8 rs_fw_bw_from_sta_bw(const struct ieee80211_link_sta *link_sta)  in rs_fw_bw_from_sta_bw()  argument
14 switch (link_sta->bandwidth) { in rs_fw_bw_from_sta_bw()
41 static u8 rs_fw_sgi_cw_support(struct ieee80211_link_sta *link_sta) in rs_fw_sgi_cw_support() argument
43 struct ieee80211_sta_ht_cap *ht_cap = &link_sta->ht_cap; in rs_fw_sgi_cw_support()
44 struct ieee80211_sta_vht_cap *vht_cap = &link_sta->vht_cap; in rs_fw_sgi_cw_support()
45 struct ieee80211_sta_he_cap *he_cap = &link_sta->he_cap; in rs_fw_sgi_cw_support()
65 struct ieee80211_link_sta *link_sta, in rs_fw_get_config_flags() argument
68 struct ieee80211_sta_ht_cap *ht_cap = &link_sta->ht_cap; in rs_fw_get_config_flags()
69 struct ieee80211_sta_vht_cap *vht_cap = &link_sta->vht_cap; in rs_fw_get_config_flags()
70 struct ieee80211_sta_he_cap *he_cap = &link_sta->he_cap; in rs_fw_get_config_flags()
136 rs_fw_vht_set_enabled_rates(const struct ieee80211_link_sta *link_sta, in rs_fw_vht_set_enabled_rates() argument
142 u8 max_nss = link_sta->rx_nss; in rs_fw_vht_set_enabled_rates()
149 if (link_sta->smps_mode == IEEE80211_SMPS_STATIC) in rs_fw_vht_set_enabled_rates()
160 if (link_sta->bandwidth == IEEE80211_STA_RX_BW_20) in rs_fw_vht_set_enabled_rates()
169 if (link_sta->bandwidth == IEEE80211_STA_RX_BW_160 && in rs_fw_vht_set_enabled_rates()
196 rs_fw_he_set_enabled_rates(const struct ieee80211_link_sta *link_sta, in rs_fw_he_set_enabled_rates() argument
200 const struct ieee80211_sta_he_cap *he_cap = &link_sta->he_cap; in rs_fw_he_set_enabled_rates()
206 u8 nss = link_sta->rx_nss; in rs_fw_he_set_enabled_rates()
209 if (link_sta->smps_mode == IEEE80211_SMPS_STATIC) in rs_fw_he_set_enabled_rates()
286 const struct ieee80211_link_sta *link_sta, in rs_fw_eht_set_enabled_rates() argument
293 &link_sta->eht_cap.eht_mcs_nss_supp; in rs_fw_eht_set_enabled_rates()
304 !(link_sta->he_cap.he_cap_elem.phy_cap_info[0] & in rs_fw_eht_set_enabled_rates()
360 if (link_sta->smps_mode == IEEE80211_SMPS_STATIC || in rs_fw_eht_set_enabled_rates()
361 link_sta->rx_nss < 2) in rs_fw_eht_set_enabled_rates()
367 struct ieee80211_link_sta *link_sta, in rs_fw_set_supp_rates() argument
376 const struct ieee80211_sta_ht_cap *ht_cap = &link_sta->ht_cap; in rs_fw_set_supp_rates()
377 const struct ieee80211_sta_vht_cap *vht_cap = &link_sta->vht_cap; in rs_fw_set_supp_rates()
378 const struct ieee80211_sta_he_cap *he_cap = &link_sta->he_cap; in rs_fw_set_supp_rates()
381 tmp = link_sta->supp_rates[sband->band]; in rs_fw_set_supp_rates()
389 if (link_sta->eht_cap.has_eht && sband_he_cap && sband_eht_cap) { in rs_fw_set_supp_rates()
391 rs_fw_eht_set_enabled_rates(vif, link_sta, sband_he_cap, in rs_fw_set_supp_rates()
395 rs_fw_he_set_enabled_rates(link_sta, sband_he_cap, cmd); in rs_fw_set_supp_rates()
398 rs_fw_vht_set_enabled_rates(link_sta, vht_cap, cmd); in rs_fw_set_supp_rates()
405 if (link_sta->smps_mode == IEEE80211_SMPS_STATIC) in rs_fw_set_supp_rates()
420 struct ieee80211_link_sta *link_sta; in iwl_mvm_tlc_update_notif() local
429 link_sta = rcu_dereference(mvm->fw_id_to_link_sta[notif->sta_id]); in iwl_mvm_tlc_update_notif()
431 if (IS_ERR_OR_NULL(sta) || !link_sta) { in iwl_mvm_tlc_update_notif()
451 mvm_link_sta = rcu_dereference(mvmsta->link[link_sta->link_id]); in iwl_mvm_tlc_update_notif()
455 link_sta->link_id, notif->sta_id); in iwl_mvm_tlc_update_notif()
491 if (link_sta->agg.max_amsdu_len < size) { in iwl_mvm_tlc_update_notif()
503 link_sta->agg.max_rc_amsdu_len = mvmsta->max_amsdu_len; in iwl_mvm_tlc_update_notif()
507 link_sta->agg.max_tid_amsdu_len[i] = in iwl_mvm_tlc_update_notif()
514 link_sta->agg.max_tid_amsdu_len[i] = 1; in iwl_mvm_tlc_update_notif()
530 struct ieee80211_link_sta *link_sta) in rs_fw_get_max_amsdu_len() argument
532 const struct ieee80211_sta_vht_cap *vht_cap = &link_sta->vht_cap; in rs_fw_get_max_amsdu_len()
533 const struct ieee80211_sta_ht_cap *ht_cap = &link_sta->ht_cap; in rs_fw_get_max_amsdu_len()
534 const struct ieee80211_sta_eht_cap *eht_cap = &link_sta->eht_cap; in rs_fw_get_max_amsdu_len()
540 switch (le16_get_bits(link_sta->he_6ghz_capa.capa, in rs_fw_get_max_amsdu_len()
589 struct ieee80211_link_sta *link_sta, in iwl_mvm_rs_fw_rate_init() argument
596 u16 max_amsdu_len = rs_fw_get_max_amsdu_len(sta, link_conf, link_sta); in iwl_mvm_rs_fw_rate_init()
605 rs_fw_bw_from_sta_bw(link_sta) : IWL_TLC_MNG_CH_WIDTH_20MHZ, in iwl_mvm_rs_fw_rate_init()
606 .flags = cpu_to_le16(rs_fw_get_config_flags(mvm, vif, link_sta, in iwl_mvm_rs_fw_rate_init()
609 .sgi_ch_width_supp = rs_fw_sgi_cw_support(link_sta), in iwl_mvm_rs_fw_rate_init()
625 link_sta->eht_cap.has_eht && in iwl_mvm_rs_fw_rate_init()
626 link_sta->eht_cap.eht_cap_elem.phy_cap_info[5] & in iwl_mvm_rs_fw_rate_init()
650 rs_fw_set_supp_rates(vif, link_sta, sband, in iwl_mvm_rs_fw_rate_init()
658 link_sta->agg.max_amsdu_len = max_amsdu_len; in iwl_mvm_rs_fw_rate_init()
721 struct iwl_mvm_link_sta *link_sta) in iwl_mvm_rs_add_sta_link() argument
725 lq_sta = &link_sta->lq_sta.rs_fw; in iwl_mvm_rs_add_sta_link()
728 lq_sta->pers.sta_id = link_sta->sta_id; in iwl_mvm_rs_add_sta_link()