Lines Matching refs:link_sta
100 struct link_sta_info *link_sta) in link_sta_info_hash_add() argument
104 &link_sta->link_hash_node, in link_sta_info_hash_add()
109 struct link_sta_info *link_sta) in link_sta_info_hash_del() argument
113 &link_sta->link_hash_node, in link_sta_info_hash_del()
258 struct link_sta_info *link_sta; in link_sta_info_get_bss() local
261 for_each_link_sta_info(local, addr, link_sta, tmp) { in link_sta_info_get_bss()
262 struct sta_info *sta = link_sta->sta; in link_sta_info_get_bss()
270 return link_sta; in link_sta_info_get_bss()
284 struct link_sta_info *link_sta; in ieee80211_find_sta_by_link_addrs() local
287 for_each_link_sta_info(local, addr, link_sta, tmp) { in ieee80211_find_sta_by_link_addrs()
288 struct sta_info *sta = link_sta->sta; in ieee80211_find_sta_by_link_addrs()
290 u8 _link_id = link_sta->link_id; in ieee80211_find_sta_by_link_addrs()
349 static void sta_info_free_link(struct link_sta_info *link_sta) in sta_info_free_link() argument
351 free_percpu(link_sta->pcpu_rx_stats); in sta_info_free_link()
358 struct link_sta_info *link_sta; in sta_remove_link() local
360 link_sta = rcu_dereference_protected(sta->link[link_id], in sta_remove_link()
363 if (WARN_ON(!link_sta)) in sta_remove_link()
367 link_sta_info_hash_del(sta->local, link_sta); in sta_remove_link()
369 if (link_sta != &sta->deflink) in sta_remove_link()
370 alloc = container_of(link_sta, typeof(*alloc), info); in sta_remove_link()
509 struct ieee80211_link_sta *link_sta) in sta_info_add_link() argument
513 link_info->pub = link_sta; in sta_info_add_link()
514 link_sta->link_id = link_id; in sta_info_add_link()
516 rcu_assign_pointer(sta->sta.link[link_id], link_sta); in sta_info_add_link()
518 link_sta->smps_mode = IEEE80211_SMPS_OFF; in sta_info_add_link()
519 link_sta->agg.max_rc_amsdu_len = IEEE80211_MAX_MPDU_LEN_HT_BA; in sta_info_add_link()
1218 struct link_sta_info *link_sta; in __sta_info_destroy_part1() local
1223 link_sta = rcu_dereference_protected(sta->link[i], in __sta_info_destroy_part1()
1226 link_sta_info_hash_del(local, link_sta); in __sta_info_destroy_part1()
2133 struct ieee80211_link_sta *link_sta; in ieee80211_sta_recalc_aggregates() local
2143 for_each_sta_active_link(&sta->sdata->vif, pubsta, link_sta, link_id) { in ieee80211_sta_recalc_aggregates()
2152 link_sta->agg.max_amsdu_len); in ieee80211_sta_recalc_aggregates()
2155 link_sta->agg.max_rc_amsdu_len); in ieee80211_sta_recalc_aggregates()
2160 link_sta->agg.max_tid_amsdu_len[i]); in ieee80211_sta_recalc_aggregates()
2839 struct link_sta_info *link_sta; in ieee80211_sta_activate_link() local
2844 link_sta = rcu_dereference_protected(sta->link[link_id], in ieee80211_sta_activate_link()
2847 if (WARN_ON(old_links == new_links || !link_sta)) in ieee80211_sta_activate_link()
2851 if (link_sta_info_hash_lookup(sdata->local, link_sta->addr)) { in ieee80211_sta_activate_link()
2877 ret = link_sta_info_hash_add(sdata->local, link_sta); in ieee80211_sta_activate_link()