Lines Matching full:vif
102 struct ieee80211_vif *vif = NULL; in wfx_configure_filter() local
135 vif = wvif_to_vif(wvif); in wfx_configure_filter()
137 if (*total_flags & FIF_PROBE_REQ && vif->type == NL80211_IFTYPE_AP) { in wfx_configure_filter()
157 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_get_ps_timeout() local
159 WARN(!vif->cfg.assoc && enable_ps, in wfx_get_ps_timeout()
173 if (chan0 && chan1 && vif->type != NL80211_IFTYPE_AP) { in wfx_get_ps_timeout()
178 if (vif->cfg.assoc && vif->cfg.ps) in wfx_get_ps_timeout()
191 *enable_ps = vif->cfg.ps; in wfx_get_ps_timeout()
192 if (vif->cfg.assoc && vif->cfg.ps) in wfx_get_ps_timeout()
200 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_update_pm() local
204 if (!vif->cfg.assoc) in wfx_update_pm()
218 int wfx_conf_tx(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in wfx_conf_tx() argument
223 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_conf_tx()
231 if (vif->type == NL80211_IFTYPE_STATION && in wfx_conf_tx()
255 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_event_report_rssi() local
260 if (rcpi_rssi <= vif->bss_conf.cqm_rssi_thold) in wfx_event_report_rssi()
264 ieee80211_cqm_rssi_notify(vif, cqm_evt, rcpi_rssi, GFP_KERNEL); in wfx_event_report_rssi()
271 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_beacon_loss_work() local
272 struct ieee80211_bss_conf *bss_conf = &vif->bss_conf; in wfx_beacon_loss_work()
274 ieee80211_beacon_loss(vif); in wfx_beacon_loss_work()
278 void wfx_set_default_unicast_key(struct ieee80211_hw *hw, struct ieee80211_vif *vif, int idx) in wfx_set_default_unicast_key() argument
280 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_set_default_unicast_key()
302 int wfx_sta_add(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_sta *sta) in wfx_sta_add() argument
304 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_sta_add()
309 if (vif->type == NL80211_IFTYPE_STATION) in wfx_sta_add()
313 if (vif->type == NL80211_IFTYPE_STATION && !sta->tdls) in wfx_sta_add()
324 int wfx_sta_remove(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_sta *sta) in wfx_sta_remove() argument
326 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_sta_remove()
340 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_upload_ap_templates() local
343 skb = ieee80211_beacon_get(wvif->wdev->hw, vif, 0); in wfx_upload_ap_templates()
349 skb = ieee80211_proberesp_get(wvif->wdev->hw, vif); in wfx_upload_ap_templates()
359 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_set_mfp_ap() local
360 struct sk_buff *skb = ieee80211_beacon_get(wvif->wdev->hw, vif, 0); in wfx_set_mfp_ap()
399 int wfx_start_ap(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in wfx_start_ap() argument
402 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_start_ap()
409 wvif = (struct wfx_vif *)vif->drv_priv; in wfx_start_ap()
411 ret = wfx_hif_start(wvif, &vif->bss_conf, wvif->channel); in wfx_start_ap()
417 void wfx_stop_ap(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in wfx_stop_ap() argument
420 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_stop_ap()
427 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_join() local
428 struct ieee80211_bss_conf *conf = &vif->bss_conf; in wfx_join()
439 if (!bss && !vif->cfg.ibss_joined) { in wfx_join()
460 ieee80211_connection_loss(vif); in wfx_join()
474 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_join_finalize() local
480 if (info->bssid && !vif->cfg.ibss_joined) in wfx_join_finalize()
481 sta = ieee80211_find_sta(vif, info->bssid); in wfx_join_finalize()
493 wfx_hif_set_bss_params(wvif, vif->cfg.aid, 7); in wfx_join_finalize()
498 int wfx_join_ibss(struct ieee80211_hw *hw, struct ieee80211_vif *vif) in wfx_join_ibss() argument
500 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_join_ibss()
507 void wfx_leave_ibss(struct ieee80211_hw *hw, struct ieee80211_vif *vif) in wfx_leave_ibss() argument
509 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_leave_ibss()
527 void wfx_bss_info_changed(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in wfx_bss_info_changed() argument
531 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_bss_info_changed()
539 if (vif->type == NL80211_IFTYPE_STATION) in wfx_bss_info_changed()
544 if (vif->cfg.assoc || vif->cfg.ibss_joined) in wfx_bss_info_changed()
546 else if (!vif->cfg.assoc && vif->type == NL80211_IFTYPE_STATION) in wfx_bss_info_changed()
553 if (vif->type != NL80211_IFTYPE_STATION) in wfx_bss_info_changed()
562 __be32 *arp_addr = &vif->cfg.arp_addr_list[i]; in wfx_bss_info_changed()
564 if (vif->cfg.arp_addr_cnt > HIF_MAX_ARP_IP_ADDRTABLE_ENTRIES) in wfx_bss_info_changed()
566 if (i >= vif->cfg.arp_addr_cnt) in wfx_bss_info_changed()
602 struct ieee80211_vif *vif = wvif_to_vif(wvif); in wfx_update_tim() local
607 skb = ieee80211_beacon_get_tim(wvif->wdev->hw, vif, &tim_offset, in wfx_update_tim()
644 dev_warn(wdev->dev, "%s: received event for non-existent vif\n", __func__); in wfx_set_tim()
673 int wfx_ampdu_action(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in wfx_ampdu_action() argument
701 int wfx_assign_vif_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in wfx_assign_vif_chanctx() argument
705 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_assign_vif_chanctx()
714 void wfx_unassign_vif_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in wfx_unassign_vif_chanctx() argument
718 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_unassign_vif_chanctx()
730 int wfx_add_interface(struct ieee80211_hw *hw, struct ieee80211_vif *vif) in wfx_add_interface() argument
734 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_add_interface()
736 vif->driver_flags |= IEEE80211_VIF_BEACON_FILTER | in wfx_add_interface()
742 switch (vif->type) { in wfx_add_interface()
769 for (i = 0; i < ARRAY_SIZE(wdev->vif); i++) { in wfx_add_interface()
770 if (!wdev->vif[i]) { in wfx_add_interface()
771 wdev->vif[i] = vif; in wfx_add_interface()
776 WARN(i == ARRAY_SIZE(wdev->vif), "try to instantiate more vif than supported"); in wfx_add_interface()
778 wfx_hif_set_macaddr(wvif, vif->addr); in wfx_add_interface()
793 void wfx_remove_interface(struct ieee80211_hw *hw, struct ieee80211_vif *vif) in wfx_remove_interface() argument
796 struct wfx_vif *wvif = (struct wfx_vif *)vif->drv_priv; in wfx_remove_interface()
809 wdev->vif[wvif->id] = NULL; in wfx_remove_interface()