Lines Matching defs:vif

25 	struct ieee80211_vif *vif = info->control.vif;
26 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv;
39 ret = rtw89_core_tx_write(rtwdev, vif, sta, skb, &qsel);
109 struct ieee80211_vif *vif)
112 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv;
115 rtw89_debug(rtwdev, RTW89_DBG_STATE, "add vif %pM type %d, p2p %d\n",
116 vif->addr, vif->type, vif->p2p);
123 vif->driver_flags |= IEEE80211_VIF_BEACON_FILTER |
135 rtw89_vif_type_mapping(vif, false);
151 ether_addr_copy(rtwvif->mac_addr, vif->addr);
161 rtw89_core_txq_init(rtwdev, vif->txq);
173 struct ieee80211_vif *vif)
176 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv;
178 rtw89_debug(rtwdev, RTW89_DBG_STATE, "remove vif %pM type %d p2p %d\n",
179 vif->addr, vif->type, vif->p2p);
197 struct ieee80211_vif *vif,
205 rtw89_debug(rtwdev, RTW89_DBG_STATE, "change vif %pM (%d)->(%d), p2p (%d)->(%d)\n",
206 vif->addr, vif->type, type, vif->p2p, p2p);
208 rtw89_ops_remove_interface(hw, vif);
210 vif->type = type;
211 vif->p2p = p2p;
213 ret = rtw89_ops_add_interface(hw, vif);
314 struct ieee80211_vif *vif = rtwvif_to_vif(rtwvif);
320 slot_time = vif->bss_conf.use_short_slot ? 9 : 20;
400 struct ieee80211_vif *vif,
405 if (vif->type != NL80211_IFTYPE_STATION)
408 sta = ieee80211_find_sta(vif, conf->bssid);
414 rtw89_vif_type_mapping(vif, true);
416 rtw89_core_sta_assoc(rtwdev, vif, sta);
420 struct ieee80211_vif *vif,
425 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv;
431 if (vif->cfg.assoc) {
432 rtw89_station_mode_sta_assoc(rtwdev, vif, conf);
433 rtw89_phy_set_bss_color(rtwdev, vif);
434 rtw89_chip_cfg_txpwr_ul_tb_offset(rtwdev, vif);
436 rtw89_mac_set_he_obss_narrow_bw_ru(rtwdev, vif);
462 rtw89_phy_set_bss_color(rtwdev, vif);
465 rtw89_mac_bf_set_gid_table(rtwdev, vif, conf);
468 rtw89_core_update_p2p_ps(rtwdev, vif);
471 rtw89_fw_h2c_set_bcn_fltr_cfg(rtwdev, vif, true);
477 rtwvif->ip_addr = vif->cfg.arp_addr_list[0];
483 struct ieee80211_vif *vif,
487 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv;
501 ether_addr_copy(rtwvif->bssid, vif->bss_conf.bssid);
504 rtw89_chip_h2c_assoc_cmac_tbl(rtwdev, vif, NULL);
517 void rtw89_ops_stop_ap(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
521 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv;
525 rtw89_chip_h2c_assoc_cmac_tbl(rtwdev, vif, NULL);
543 struct ieee80211_vif *vif,
548 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv;
560 struct ieee80211_vif *vif,
569 return rtw89_core_sta_add(rtwdev, vif, sta);
573 if (vif->type == NL80211_IFTYPE_STATION && !sta->tdls)
574 return 0; /* defer to bss_info_changed to have vif info */
575 return rtw89_core_sta_assoc(rtwdev, vif, sta);
580 return rtw89_core_sta_disassoc(rtwdev, vif, sta);
584 return rtw89_core_sta_disconnect(rtwdev, vif, sta);
588 return rtw89_core_sta_remove(rtwdev, vif, sta);
594 struct ieee80211_vif *vif,
604 ret = __rtw89_ops_sta_state(hw, vif, sta, old_state, new_state);
611 struct ieee80211_vif *vif,
624 ret = rtw89_cam_sec_key_add(rtwdev, vif, sta, key);
634 ret = rtw89_cam_sec_key_del(rtwdev, vif, sta, key, true);
649 struct ieee80211_vif *vif,
668 rtw89_chip_h2c_ampdu_cmac_tbl(rtwdev, vif, sta);
670 ieee80211_stop_tx_ba_cb_irqsafe(vif, sta->addr, tid);
679 rtw89_chip_h2c_ampdu_cmac_tbl(rtwdev, vif, sta);
714 struct ieee80211_vif *vif,
725 void __rtw89_drop_packets(struct rtw89_dev *rtwdev, struct ieee80211_vif *vif)
729 if (vif) {
730 rtwvif = (struct rtw89_vif *)vif->drv_priv;
738 static void rtw89_ops_flush(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
748 __rtw89_drop_packets(rtwdev, vif);
757 struct ieee80211_vif *vif;
765 struct ieee80211_vif *vif = rtwvif_to_vif(rtwsta->rtwvif);
767 if (vif != br_data->vif || vif->p2p)
776 struct ieee80211_vif *vif,
780 .vif = vif,
788 struct ieee80211_vif *vif,
794 rtw89_phy_rate_pattern_vif(rtwdev, vif, mask);
795 rtw89_ra_mask_info_update(rtwdev, vif, mask);
837 struct ieee80211_vif *vif,
841 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv;
849 struct ieee80211_vif *vif)
854 rtw89_core_scan_complete(rtwdev, vif, false);
867 static int rtw89_ops_hw_scan(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
871 struct rtw89_vif *rtwvif = vif_to_rtwvif_safe(vif);
881 rtw89_hw_scan_start(rtwdev, vif, req);
882 ret = rtw89_hw_scan_offload(rtwdev, vif, true);
884 rtw89_hw_scan_abort(rtwdev, vif);
893 struct ieee80211_vif *vif)
904 rtw89_hw_scan_abort(rtwdev, vif);
909 struct ieee80211_vif *vif,
952 struct ieee80211_vif *vif,
957 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv;
968 struct ieee80211_vif *vif,
973 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv;
981 struct ieee80211_vif *vif,
987 struct rtw89_vif *rtwvif = vif_to_rtwvif_safe(vif);
990 if (!vif)
1020 struct ieee80211_vif *vif)
1023 struct rtw89_vif *rtwvif = vif_to_rtwvif_safe(vif);
1047 struct ieee80211_vif *vif,
1114 struct ieee80211_vif *vif,