Lines Matching full:vif

84 	struct ieee80211_vif *vif = NULL;  in wfx_configure_filter()  local
119 vif = wvif_to_vif(wvif); in wfx_configure_filter()
121 if (*total_flags & FIF_PROBE_REQ && vif->type == NL80211_IFTYPE_AP) { in wfx_configure_filter()
139 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_get_ps_timeout() local
141 WARN(!vif->cfg.assoc && enable_ps, in wfx_get_ps_timeout()
155 if (chan0 && chan1 && vif->type != NL80211_IFTYPE_AP) { in wfx_get_ps_timeout()
160 if (vif->cfg.assoc && vif->cfg.ps) in wfx_get_ps_timeout()
173 *enable_ps = vif->cfg.ps; in wfx_get_ps_timeout()
174 if (vif->cfg.assoc && vif->cfg.ps) in wfx_get_ps_timeout()
182 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_update_pm() local
186 if (!vif->cfg.assoc) in wfx_update_pm()
200 int wfx_conf_tx(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in wfx_conf_tx() argument
205 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_conf_tx()
213 if (vif->type == NL80211_IFTYPE_STATION && in wfx_conf_tx()
237 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_event_report_rssi() local
242 if (rcpi_rssi <= vif->bss_conf.cqm_rssi_thold) in wfx_event_report_rssi()
246 ieee80211_cqm_rssi_notify(vif, cqm_evt, rcpi_rssi, GFP_KERNEL); in wfx_event_report_rssi()
253 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_beacon_loss_work() local
254 struct ieee80211_bss_conf *bss_conf = &vif->bss_conf; in wfx_beacon_loss_work()
256 ieee80211_beacon_loss(vif); in wfx_beacon_loss_work()
260 void wfx_set_default_unicast_key(struct ieee80211_hw *hw, struct ieee80211_vif *vif, int idx) in wfx_set_default_unicast_key() argument
262 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_set_default_unicast_key()
284 int wfx_sta_add(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_sta *sta) in wfx_sta_add() argument
286 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_sta_add()
291 if (vif->type == NL80211_IFTYPE_STATION) in wfx_sta_add()
295 if (vif->type == NL80211_IFTYPE_STATION && !sta->tdls) in wfx_sta_add()
306 int wfx_sta_remove(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_sta *sta) in wfx_sta_remove() argument
308 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_sta_remove()
322 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_upload_ap_templates() local
325 skb = ieee80211_beacon_get(wvif->wdev->hw, vif, 0); in wfx_upload_ap_templates()
331 skb = ieee80211_proberesp_get(wvif->wdev->hw, vif); in wfx_upload_ap_templates()
341 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_set_mfp_ap() local
342 struct sk_buff *skb = ieee80211_beacon_get(wvif->wdev->hw, vif, 0); in wfx_set_mfp_ap()
373 int wfx_start_ap(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in wfx_start_ap() argument
376 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_start_ap()
383 wvif = (struct wfx_vif *)vif->drv_priv; in wfx_start_ap()
385 ret = wfx_hif_start(wvif, &vif->bss_conf, wvif->channel); in wfx_start_ap()
391 void wfx_stop_ap(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in wfx_stop_ap() argument
394 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_stop_ap()
400 wvif = (struct wfx_vif *)vif->drv_priv; in wfx_stop_ap()
406 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_join() local
407 struct ieee80211_bss_conf *conf = &vif->bss_conf; in wfx_join()
418 if (!bss && !vif->cfg.ibss_joined) { in wfx_join()
439 ieee80211_connection_loss(vif); in wfx_join()
453 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_join_finalize() local
459 if (info->bssid && !vif->cfg.ibss_joined) in wfx_join_finalize()
460 sta = ieee80211_find_sta(vif, info->bssid); in wfx_join_finalize()
472 wfx_hif_set_bss_params(wvif, vif->cfg.aid, 7); in wfx_join_finalize()
477 int wfx_join_ibss(struct ieee80211_hw *hw, struct ieee80211_vif *vif) in wfx_join_ibss() argument
479 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_join_ibss()
486 void wfx_leave_ibss(struct ieee80211_hw *hw, struct ieee80211_vif *vif) in wfx_leave_ibss() argument
488 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_leave_ibss()
506 void wfx_bss_info_changed(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in wfx_bss_info_changed() argument
510 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_bss_info_changed()
518 if (vif->type == NL80211_IFTYPE_STATION) in wfx_bss_info_changed()
523 if (vif->cfg.assoc || vif->cfg.ibss_joined) in wfx_bss_info_changed()
525 else if (!vif->cfg.assoc && vif->type == NL80211_IFTYPE_STATION) in wfx_bss_info_changed()
532 if (vif->type != NL80211_IFTYPE_STATION) in wfx_bss_info_changed()
541 __be32 *arp_addr = &vif->cfg.arp_addr_list[i]; in wfx_bss_info_changed()
543 if (vif->cfg.arp_addr_cnt > HIF_MAX_ARP_IP_ADDRTABLE_ENTRIES) in wfx_bss_info_changed()
545 if (i >= vif->cfg.arp_addr_cnt) in wfx_bss_info_changed()
581 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_update_tim() local
586 skb = ieee80211_beacon_get_tim(wvif->wdev->hw, vif, &tim_offset, in wfx_update_tim()
623 dev_warn(wdev->dev, "%s: received event for non-existent vif\n", __func__); in wfx_set_tim()
648 int wfx_ampdu_action(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in wfx_ampdu_action() argument
676 int wfx_assign_vif_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in wfx_assign_vif_chanctx() argument
680 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_assign_vif_chanctx()
689 void wfx_unassign_vif_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in wfx_unassign_vif_chanctx() argument
693 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_unassign_vif_chanctx()
705 int wfx_add_interface(struct ieee80211_hw *hw, struct ieee80211_vif *vif) in wfx_add_interface() argument
709 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_add_interface()
711 vif->driver_flags |= IEEE80211_VIF_BEACON_FILTER | in wfx_add_interface()
717 switch (vif->type) { in wfx_add_interface()
744 for (i = 0; i < ARRAY_SIZE(wdev->vif); i++) { in wfx_add_interface()
745 if (!wdev->vif[i]) { in wfx_add_interface()
746 wdev->vif[i] = vif; in wfx_add_interface()
751 WARN(i == ARRAY_SIZE(wdev->vif), "try to instantiate more vif than supported"); in wfx_add_interface()
753 wfx_hif_set_macaddr(wvif, vif->addr); in wfx_add_interface()
768 void wfx_remove_interface(struct ieee80211_hw *hw, struct ieee80211_vif *vif) in wfx_remove_interface() argument
771 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_remove_interface()
784 wdev->vif[wvif->id] = NULL; in wfx_remove_interface()