Lines Matching refs:vif
187 static inline u8 get_sta_index(struct ieee80211_vif *vif, in get_sta_index() argument
190 return NL80211_IFTYPE_STATION == vif->type ? in get_sta_index()
377 struct ieee80211_vif *vif = NULL; in wcn36xx_change_ps() local
381 vif = wcn36xx_priv_to_vif(tmp); in wcn36xx_change_ps()
383 if (vif->bss_conf.ps) /* ps allowed ? */ in wcn36xx_change_ps()
384 wcn36xx_pmc_enter_bmps_state(wcn, vif); in wcn36xx_change_ps()
386 wcn36xx_pmc_exit_bmps_state(wcn, vif); in wcn36xx_change_ps()
393 struct ieee80211_vif *vif = NULL; in wcn36xx_change_opchannel() local
397 vif = wcn36xx_priv_to_vif(tmp); in wcn36xx_change_opchannel()
398 wcn36xx_smd_switch_channel(wcn, vif, ch); in wcn36xx_change_opchannel()
458 struct ieee80211_vif *vif = NULL; in wcn36xx_configure_filter() local
468 vif = wcn36xx_priv_to_vif(tmp); in wcn36xx_configure_filter()
472 wcn36xx_smd_set_mc_list(wcn, vif, NULL); in wcn36xx_configure_filter()
473 else if (NL80211_IFTYPE_STATION == vif->type && tmp->sta_assoc) in wcn36xx_configure_filter()
474 wcn36xx_smd_set_mc_list(wcn, vif, fp); in wcn36xx_configure_filter()
523 struct ieee80211_vif *vif, in wcn36xx_set_key() argument
528 struct wcn36xx_vif *vif_priv = wcn36xx_vif_to_priv(vif); in wcn36xx_set_key()
583 if (NL80211_IFTYPE_STATION == vif->type) { in wcn36xx_set_key()
585 vif, in wcn36xx_set_key()
589 wcn36xx_smd_config_sta(wcn, vif, sta); in wcn36xx_set_key()
597 get_sta_index(vif, sta_priv)); in wcn36xx_set_key()
616 get_sta_index(vif, sta_priv)); in wcn36xx_set_key()
637 get_sta_index(vif, sta_priv)); in wcn36xx_set_key()
653 struct ieee80211_vif *vif, in wcn36xx_hw_scan() argument
684 return wcn36xx_smd_start_hw_scan(wcn, vif, &hw_req->req); in wcn36xx_hw_scan()
688 struct ieee80211_vif *vif) in wcn36xx_cancel_hw_scan() argument
704 struct ieee80211_vif *vif, in wcn36xx_sw_scan_start() argument
708 struct wcn36xx_vif *vif_priv = wcn36xx_vif_to_priv(vif); in wcn36xx_sw_scan_start()
711 wcn->sw_scan_vif = vif; in wcn36xx_sw_scan_start()
720 struct ieee80211_vif *vif) in wcn36xx_sw_scan_complete() argument
814 struct ieee80211_vif *vif, in wcn36xx_bss_info_changed() argument
822 struct wcn36xx_vif *vif_priv = wcn36xx_vif_to_priv(vif); in wcn36xx_bss_info_changed()
825 vif, changed); in wcn36xx_bss_info_changed()
844 wcn36xx_smd_set_link_st(wcn, bss_conf->bssid, vif->addr, in wcn36xx_bss_info_changed()
847 vif->addr, WCN36XX_HW_CHANNEL(wcn)); in wcn36xx_bss_info_changed()
848 wcn36xx_smd_config_bss(wcn, vif, NULL, in wcn36xx_bss_info_changed()
852 wcn36xx_smd_delete_bss(wcn, vif); in wcn36xx_bss_info_changed()
853 wcn36xx_smd_set_link_st(wcn, bss_conf->bssid, vif->addr, in wcn36xx_bss_info_changed()
880 vif->addr, in wcn36xx_bss_info_changed()
891 sta = ieee80211_find_sta(vif, bss_conf->bssid); in wcn36xx_bss_info_changed()
902 vif->addr, in wcn36xx_bss_info_changed()
904 wcn36xx_smd_config_bss(wcn, vif, sta, in wcn36xx_bss_info_changed()
912 wcn36xx_smd_config_sta(wcn, vif, sta); in wcn36xx_bss_info_changed()
913 wcn36xx_enable_keep_alive_null_packet(wcn, vif); in wcn36xx_bss_info_changed()
918 vif->addr, in wcn36xx_bss_info_changed()
923 vif->addr, in wcn36xx_bss_info_changed()
930 skb = ieee80211_proberesp_get(hw, vif); in wcn36xx_bss_info_changed()
936 wcn36xx_smd_update_proberesp_tmpl(wcn, vif, skb); in wcn36xx_bss_info_changed()
949 wcn36xx_smd_config_bss(wcn, vif, NULL, in wcn36xx_bss_info_changed()
950 vif->addr, false); in wcn36xx_bss_info_changed()
951 skb = ieee80211_beacon_get_tim(hw, vif, &tim_off, in wcn36xx_bss_info_changed()
957 wcn36xx_smd_send_beacon(wcn, vif, skb, tim_off, 0); in wcn36xx_bss_info_changed()
960 if (vif->type == NL80211_IFTYPE_ADHOC || in wcn36xx_bss_info_changed()
961 vif->type == NL80211_IFTYPE_MESH_POINT) in wcn36xx_bss_info_changed()
966 wcn36xx_smd_set_link_st(wcn, vif->addr, vif->addr, in wcn36xx_bss_info_changed()
969 wcn36xx_smd_delete_bss(wcn, vif); in wcn36xx_bss_info_changed()
970 wcn36xx_smd_set_link_st(wcn, vif->addr, vif->addr, in wcn36xx_bss_info_changed()
993 struct ieee80211_vif *vif) in wcn36xx_remove_interface() argument
996 struct wcn36xx_vif *vif_priv = wcn36xx_vif_to_priv(vif); in wcn36xx_remove_interface()
997 wcn36xx_dbg(WCN36XX_DBG_MAC, "mac remove interface vif %p\n", vif); in wcn36xx_remove_interface()
1002 wcn36xx_smd_delete_sta_self(wcn, vif->addr); in wcn36xx_remove_interface()
1008 struct ieee80211_vif *vif) in wcn36xx_add_interface() argument
1011 struct wcn36xx_vif *vif_priv = wcn36xx_vif_to_priv(vif); in wcn36xx_add_interface()
1014 vif, vif->type); in wcn36xx_add_interface()
1016 if (!(NL80211_IFTYPE_STATION == vif->type || in wcn36xx_add_interface()
1017 NL80211_IFTYPE_AP == vif->type || in wcn36xx_add_interface()
1018 NL80211_IFTYPE_ADHOC == vif->type || in wcn36xx_add_interface()
1019 NL80211_IFTYPE_MESH_POINT == vif->type)) { in wcn36xx_add_interface()
1021 vif->type); in wcn36xx_add_interface()
1030 wcn36xx_smd_add_sta_self(wcn, vif); in wcn36xx_add_interface()
1037 static int wcn36xx_sta_add(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in wcn36xx_sta_add() argument
1041 struct wcn36xx_vif *vif_priv = wcn36xx_vif_to_priv(vif); in wcn36xx_sta_add()
1044 vif, sta->addr); in wcn36xx_sta_add()
1049 sta_priv->vif = vif_priv; in wcn36xx_sta_add()
1056 if (NL80211_IFTYPE_STATION != vif->type) { in wcn36xx_sta_add()
1059 wcn36xx_smd_config_sta(wcn, vif, sta); in wcn36xx_sta_add()
1068 struct ieee80211_vif *vif, in wcn36xx_sta_remove() argument
1075 vif, sta->addr, sta_priv->sta_index); in wcn36xx_sta_remove()
1081 sta_priv->vif = NULL; in wcn36xx_sta_remove()
1093 struct ieee80211_vif *vif = NULL; in wcn36xx_get_first_assoc_vif() local
1097 vif = wcn36xx_priv_to_vif(vif_priv); in wcn36xx_get_first_assoc_vif()
1101 return vif; in wcn36xx_get_first_assoc_vif()
1107 struct ieee80211_vif *vif = NULL; in wcn36xx_suspend() local
1114 vif = wcn36xx_get_first_assoc_vif(wcn); in wcn36xx_suspend()
1115 if (vif) { in wcn36xx_suspend()
1116 ret = wcn36xx_smd_arp_offload(wcn, vif, true); in wcn36xx_suspend()
1119 ret = wcn36xx_smd_ipv6_ns_offload(wcn, vif, true); in wcn36xx_suspend()
1122 ret = wcn36xx_smd_gtk_offload(wcn, vif, true); in wcn36xx_suspend()
1145 struct ieee80211_vif *vif = NULL; in wcn36xx_resume() local
1150 vif = wcn36xx_get_first_assoc_vif(wcn); in wcn36xx_resume()
1151 if (vif) { in wcn36xx_resume()
1154 wcn36xx_smd_gtk_offload_get_info(wcn, vif); in wcn36xx_resume()
1155 wcn36xx_smd_gtk_offload(wcn, vif, false); in wcn36xx_resume()
1156 wcn36xx_smd_ipv6_ns_offload(wcn, vif, false); in wcn36xx_resume()
1157 wcn36xx_smd_arp_offload(wcn, vif, false); in wcn36xx_resume()
1169 struct ieee80211_vif *vif, in wcn36xx_set_rekey_data() argument
1173 struct wcn36xx_vif *vif_priv = wcn36xx_vif_to_priv(vif); in wcn36xx_set_rekey_data()
1189 struct ieee80211_vif *vif, in wcn36xx_ampdu_action() argument
1210 get_sta_index(vif, sta_priv)); in wcn36xx_ampdu_action()
1212 wcn36xx_smd_trigger_ba(wcn, get_sta_index(vif, sta_priv), tid, in wcn36xx_ampdu_action()
1216 wcn36xx_smd_del_ba(wcn, tid, 0, get_sta_index(vif, sta_priv)); in wcn36xx_ampdu_action()
1231 get_sta_index(vif, sta_priv)); in wcn36xx_ampdu_action()
1240 wcn36xx_smd_del_ba(wcn, tid, 1, get_sta_index(vif, sta_priv)); in wcn36xx_ampdu_action()
1241 ieee80211_stop_tx_ba_cb_irqsafe(vif, sta->addr, tid); in wcn36xx_ampdu_action()
1254 struct ieee80211_vif *vif, in wcn36xx_ipv6_addr_change() argument
1257 struct wcn36xx_vif *vif_priv = wcn36xx_vif_to_priv(vif); in wcn36xx_ipv6_addr_change()