Lines Matching refs:vif
309 struct ieee80211_vif *vif; member
745 struct ieee80211_vif *vif; member
1250 struct ieee80211_vif *vif; member
2047 static inline u16 ieee80211_vif_usable_links(const struct ieee80211_vif *vif) in ieee80211_vif_usable_links() argument
2049 return vif->valid_links & ~vif->dormant_links; in ieee80211_vif_usable_links()
2057 static inline bool ieee80211_vif_is_mld(const struct ieee80211_vif *vif) in ieee80211_vif_is_mld() argument
2060 return vif->valid_links != 0; in ieee80211_vif_is_mld()
2070 static inline bool ieee80211_vif_link_active(const struct ieee80211_vif *vif, in ieee80211_vif_link_active() argument
2073 if (!ieee80211_vif_is_mld(vif)) in ieee80211_vif_link_active()
2075 return vif->active_links & BIT(link_id); in ieee80211_vif_link_active()
2078 #define for_each_vif_active_link(vif, link, link_id) \ argument
2079 for (link_id = 0; link_id < ARRAY_SIZE((vif)->link_conf); link_id++) \
2080 if ((!(vif)->active_links || \
2081 (vif)->active_links & BIT(link_id)) && \
2082 (link = link_conf_dereference_check(vif, link_id)))
2084 static inline bool ieee80211_vif_is_mesh(struct ieee80211_vif *vif) in ieee80211_vif_is_mesh() argument
2087 return vif->type == NL80211_IFTYPE_MESH_POINT; in ieee80211_vif_is_mesh()
2115 struct wireless_dev *ieee80211_vif_to_wdev(struct ieee80211_vif *vif);
2117 static inline bool lockdep_vif_wiphy_mutex_held(struct ieee80211_vif *vif) in lockdep_vif_wiphy_mutex_held() argument
2119 return lockdep_is_held(&ieee80211_vif_to_wdev(vif)->wiphy->mtx); in lockdep_vif_wiphy_mutex_held()
2122 #define link_conf_dereference_protected(vif, link_id) \ argument
2123 rcu_dereference_protected((vif)->link_conf[link_id], \
2124 lockdep_vif_wiphy_mutex_held(vif))
2126 #define link_conf_dereference_check(vif, link_id) \ argument
2127 rcu_dereference_check((vif)->link_conf[link_id], \
2128 lockdep_vif_wiphy_mutex_held(vif))
2536 #define for_each_sta_active_link(vif, sta, link_sta, link_id) \ argument
2538 if ((!(vif)->active_links || \
2539 (vif)->active_links & BIT(link_id)) && \
2579 struct ieee80211_vif *vif; member
4460 struct ieee80211_vif *vif);
4462 struct ieee80211_vif *vif,
4465 struct ieee80211_vif *vif);
4468 struct ieee80211_vif *vif,
4472 struct ieee80211_vif *vif,
4475 struct ieee80211_vif *vif,
4479 int (*start_ap)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4481 void (*stop_ap)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4491 struct ieee80211_vif *vif,
4497 struct ieee80211_vif *vif, struct ieee80211_sta *sta,
4500 struct ieee80211_vif *vif,
4505 struct ieee80211_vif *vif,
4508 struct ieee80211_vif *vif, int idx);
4509 int (*hw_scan)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4512 struct ieee80211_vif *vif);
4514 struct ieee80211_vif *vif,
4518 struct ieee80211_vif *vif);
4520 struct ieee80211_vif *vif,
4523 struct ieee80211_vif *vif);
4531 int (*sta_add)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4533 int (*sta_remove)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4537 struct ieee80211_vif *vif);
4539 struct ieee80211_vif *vif,
4543 struct ieee80211_vif *vif,
4547 struct ieee80211_vif *vif,
4551 void (*sta_notify)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4554 struct ieee80211_vif *vif,
4556 int (*sta_state)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4561 struct ieee80211_vif *vif,
4564 struct ieee80211_vif *vif,
4568 struct ieee80211_vif *vif,
4571 struct ieee80211_vif *vif,
4575 struct ieee80211_vif *vif,
4578 u64 (*get_tsf)(struct ieee80211_hw *hw, struct ieee80211_vif *vif);
4579 void (*set_tsf)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4581 void (*offset_tsf)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4583 void (*reset_tsf)(struct ieee80211_hw *hw, struct ieee80211_vif *vif);
4618 struct ieee80211_vif *vif,
4625 int (*testmode_cmd)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4631 void (*flush)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4633 void (*flush_sta)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4636 struct ieee80211_vif *vif,
4642 struct ieee80211_vif *vif,
4647 struct ieee80211_vif *vif);
4652 int (*set_bitrate_mask)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4655 struct ieee80211_vif *vif,
4670 struct ieee80211_vif *vif, int sset);
4672 struct ieee80211_vif *vif,
4675 struct ieee80211_vif *vif,
4679 struct ieee80211_vif *vif,
4682 struct ieee80211_vif *vif,
4686 struct ieee80211_vif *vif,
4697 struct ieee80211_vif *vif,
4701 struct ieee80211_vif *vif,
4714 struct ieee80211_vif *vif,
4718 struct ieee80211_vif *vif,
4721 struct ieee80211_vif *vif,
4725 struct ieee80211_vif *vif,
4728 struct ieee80211_vif *vif,
4731 struct ieee80211_vif *vif,
4734 int (*join_ibss)(struct ieee80211_hw *hw, struct ieee80211_vif *vif);
4735 void (*leave_ibss)(struct ieee80211_hw *hw, struct ieee80211_vif *vif);
4738 int (*get_txpower)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4742 struct ieee80211_vif *vif,
4747 struct ieee80211_vif *vif,
4750 struct ieee80211_vif *vif,
4758 struct ieee80211_vif *vif,
4761 struct ieee80211_vif *vif);
4763 struct ieee80211_vif *vif,
4766 struct ieee80211_vif *vif,
4769 struct ieee80211_vif *vif,
4775 struct ieee80211_vif *vif,
4777 int (*start_pmsr)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4779 void (*abort_pmsr)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4782 struct ieee80211_vif *vif,
4786 struct ieee80211_vif *vif,
4789 struct ieee80211_vif *vif);
4790 void (*sta_set_4addr)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
4795 struct ieee80211_vif *vif,
4805 struct ieee80211_vif *vif,
4810 struct ieee80211_vif *vif,
4813 struct ieee80211_vif *vif,
4817 struct ieee80211_vif *vif,
4821 struct ieee80211_vif *vif,
4824 struct ieee80211_vif *vif,
4829 (*can_neg_ttlm)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
5302 void ieee80211_get_tx_rates(struct ieee80211_vif *vif,
5491 struct ieee80211_vif *vif,
5512 struct ieee80211_vif *vif,
5551 struct ieee80211_vif *vif,
5588 struct ieee80211_vif *vif,
5604 struct ieee80211_vif *vif, in ieee80211_beacon_get() argument
5607 return ieee80211_beacon_get_tim(hw, vif, NULL, NULL, link_id); in ieee80211_beacon_get()
5623 u8 ieee80211_beacon_update_cntdwn(struct ieee80211_vif *vif,
5637 void ieee80211_beacon_set_cntdwn(struct ieee80211_vif *vif, u8 counter);
5648 void ieee80211_csa_finish(struct ieee80211_vif *vif, unsigned int link_id);
5657 bool ieee80211_beacon_cntdwn_is_complete(struct ieee80211_vif *vif,
5669 void ieee80211_color_change_finish(struct ieee80211_vif *vif, u8 link_id);
5684 struct ieee80211_vif *vif);
5701 struct ieee80211_vif *vif);
5726 struct ieee80211_vif *vif,
5761 void ieee80211_rts_get(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
5780 struct ieee80211_vif *vif, size_t frame_len,
5798 struct ieee80211_vif *vif,
5817 struct ieee80211_vif *vif,
5835 struct ieee80211_vif *vif,
5862 ieee80211_get_buffered_bc(struct ieee80211_hw *hw, struct ieee80211_vif *vif);
6022 ieee80211_gtk_rekey_add(struct ieee80211_vif *vif,
6033 void ieee80211_gtk_rekey_notify(struct ieee80211_vif *vif, const u8 *bssid,
6174 struct ieee80211_vif *vif),
6195 struct ieee80211_vif *vif), in ieee80211_iterate_active_interfaces() argument
6221 struct ieee80211_vif *vif),
6240 struct ieee80211_vif *vif),
6341 void ieee80211_start_tx_ba_cb_irqsafe(struct ieee80211_vif *vif, const u8 *ra,
6367 void ieee80211_stop_tx_ba_cb_irqsafe(struct ieee80211_vif *vif, const u8 *ra,
6381 struct ieee80211_sta *ieee80211_find_sta(struct ieee80211_vif *vif,
6575 struct ieee80211_vif *vif,
6577 struct ieee80211_vif *vif,
6599 struct ieee80211_vif *vif,
6601 struct ieee80211_vif *vif,
6648 struct ieee80211_vif *vif);
6659 void ieee80211_beacon_loss(struct ieee80211_vif *vif);
6675 void ieee80211_connection_loss(struct ieee80211_vif *vif);
6686 void ieee80211_disconnect(struct ieee80211_vif *vif, bool reconnect);
6709 void ieee80211_resume_disconnect(struct ieee80211_vif *vif);
6719 void ieee80211_hw_restart_disconnect(struct ieee80211_vif *vif);
6734 void ieee80211_cqm_rssi_notify(struct ieee80211_vif *vif,
6745 void ieee80211_cqm_beacon_loss_notify(struct ieee80211_vif *vif, gfp_t gfp);
6767 void ieee80211_chswitch_done(struct ieee80211_vif *vif, bool success,
6779 void ieee80211_channel_switch_disconnect(struct ieee80211_vif *vif,
6792 void ieee80211_request_smps(struct ieee80211_vif *vif, unsigned int link_id,
6821 void ieee80211_stop_rx_ba_session(struct ieee80211_vif *vif, u16 ba_rx_bitmap,
6854 void ieee80211_send_bar(struct ieee80211_vif *vif, u8 *ra, u16 tid, u16 ssn);
6862 void ieee80211_manage_rx_ba_offl(struct ieee80211_vif *vif, const u8 *addr,
6879 static inline void ieee80211_start_rx_ba_session_offl(struct ieee80211_vif *vif, in ieee80211_start_rx_ba_session_offl() argument
6884 ieee80211_manage_rx_ba_offl(vif, addr, tid); in ieee80211_start_rx_ba_session_offl()
6901 static inline void ieee80211_stop_rx_ba_session_offl(struct ieee80211_vif *vif, in ieee80211_stop_rx_ba_session_offl() argument
6906 ieee80211_manage_rx_ba_offl(vif, addr, tid + IEEE80211_NUM_TIDS); in ieee80211_stop_rx_ba_session_offl()
6921 void ieee80211_rx_ba_timer_expired(struct ieee80211_vif *vif,
7118 ieee80211_vif_type_p2p(struct ieee80211_vif *vif) in ieee80211_vif_type_p2p() argument
7120 return ieee80211_iftype_p2p(vif->type, vif->p2p); in ieee80211_vif_type_p2p()
7132 struct ieee80211_vif *vif) in ieee80211_get_he_iftype_cap_vif() argument
7134 return ieee80211_get_he_iftype_cap(sband, ieee80211_vif_type_p2p(vif)); in ieee80211_get_he_iftype_cap_vif()
7146 struct ieee80211_vif *vif) in ieee80211_get_he_6ghz_capa_vif() argument
7148 return ieee80211_get_he_6ghz_capa(sband, ieee80211_vif_type_p2p(vif)); in ieee80211_get_he_6ghz_capa_vif()
7160 struct ieee80211_vif *vif) in ieee80211_get_eht_iftype_cap_vif() argument
7162 return ieee80211_get_eht_iftype_cap(sband, ieee80211_vif_type_p2p(vif)); in ieee80211_get_eht_iftype_cap_vif()
7178 void ieee80211_update_mu_groups(struct ieee80211_vif *vif, unsigned int link_id,
7181 void ieee80211_enable_rssi_reports(struct ieee80211_vif *vif,
7185 void ieee80211_disable_rssi_reports(struct ieee80211_vif *vif);
7197 int ieee80211_ave_rssi(struct ieee80211_vif *vif);
7207 void ieee80211_report_wowlan_wakeup(struct ieee80211_vif *vif,
7224 struct ieee80211_vif *vif, struct sk_buff *skb,
7300 void ieee80211_tdls_oper_request(struct ieee80211_vif *vif, const u8 *peer,
7522 void ieee80211_nan_func_terminated(struct ieee80211_vif *vif,
7538 void ieee80211_nan_func_match(struct ieee80211_vif *vif,
7584 struct ieee80211_vif *vif);
7598 struct ieee80211_vif *vif);
7610 ieee80211_obss_color_collision_notify(struct ieee80211_vif *vif,
7660 int ieee80211_set_active_links(struct ieee80211_vif *vif, u16 active_links);
7672 void ieee80211_set_active_links_async(struct ieee80211_vif *vif,
7682 void ieee80211_send_teardown_neg_ttlm(struct ieee80211_vif *vif);