Lines Matching full:vif
169 static void mt7915_init_bitrate_mask(struct ieee80211_vif *vif) in mt7915_init_bitrate_mask() argument
171 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv; in mt7915_init_bitrate_mask()
186 struct ieee80211_vif *vif) in mt7915_add_interface() argument
188 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv; in mt7915_add_interface()
199 if (vif->type == NL80211_IFTYPE_MONITOR && in mt7915_add_interface()
200 is_zero_ether_addr(vif->addr)) in mt7915_add_interface()
201 phy->monitor_vif = vif; in mt7915_add_interface()
209 idx = get_omac_idx(vif->type, phy->omac_mask); in mt7915_add_interface()
224 ret = mt7915_mcu_add_dev_info(phy, vif, true); in mt7915_add_interface()
244 if (vif->txq) { in mt7915_add_interface()
245 mtxq = (struct mt76_txq *)vif->txq->drv_priv; in mt7915_add_interface()
249 if (vif->type != NL80211_IFTYPE_AP && in mt7915_add_interface()
251 vif->offload_flags = 0; in mt7915_add_interface()
252 vif->offload_flags |= IEEE80211_OFFLOAD_ENCAP_4ADDR; in mt7915_add_interface()
254 mt7915_init_bitrate_mask(vif); in mt7915_add_interface()
263 struct ieee80211_vif *vif) in mt7915_remove_interface() argument
265 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv; in mt7915_remove_interface()
271 mt7915_mcu_add_bss_info(phy, vif, false); in mt7915_remove_interface()
272 mt7915_mcu_add_sta(dev, vif, NULL, false); in mt7915_remove_interface()
278 if (vif == phy->monitor_vif) in mt7915_remove_interface()
281 mt7915_mcu_add_dev_info(phy, vif, false); in mt7915_remove_interface()
360 struct ieee80211_vif *vif, struct ieee80211_sta *sta, in mt7915_set_key() argument
364 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv; in mt7915_set_key()
375 if ((vif->type == NL80211_IFTYPE_ADHOC || in mt7915_set_key()
376 vif->type == NL80211_IFTYPE_MESH_POINT) && in mt7915_set_key()
413 err = mt7915_mcu_add_key(dev, vif, msta, key, cmd); in mt7915_set_key()
471 mt7915_conf_tx(struct ieee80211_hw *hw, struct ieee80211_vif *vif, u16 queue, in mt7915_conf_tx() argument
475 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv; in mt7915_conf_tx()
542 struct ieee80211_vif *vif, in mt7915_bss_info_changed() argument
556 vif->type == NL80211_IFTYPE_STATION) { in mt7915_bss_info_changed()
559 mt7915_mcu_add_bss_info(phy, vif, join); in mt7915_bss_info_changed()
560 mt7915_mcu_add_sta(dev, vif, NULL, join); in mt7915_bss_info_changed()
564 mt7915_mcu_add_bss_info(phy, vif, info->assoc); in mt7915_bss_info_changed()
565 mt7915_mcu_add_obss_spr(dev, vif, info->he_obss_pd.enable); in mt7915_bss_info_changed()
578 mt7915_mcu_add_bss_info(phy, vif, true); in mt7915_bss_info_changed()
579 mt7915_mcu_add_sta(dev, vif, NULL, true); in mt7915_bss_info_changed()
584 mt7915_mcu_set_tx(dev, vif); in mt7915_bss_info_changed()
587 mt7915_mcu_add_obss_spr(dev, vif, info->he_obss_pd.enable); in mt7915_bss_info_changed()
591 mt7915_mcu_add_beacon(hw, vif, info->enable_beacon); in mt7915_bss_info_changed()
598 struct ieee80211_vif *vif, in mt7915_channel_switch_beacon() argument
604 mt7915_mcu_add_beacon(hw, vif, true); in mt7915_channel_switch_beacon()
608 int mt7915_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif, in mt7915_mac_sta_add() argument
613 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv; in mt7915_mac_sta_add()
623 msta->vif = mvif; in mt7915_mac_sta_add()
633 ret = mt7915_mcu_add_sta(dev, vif, sta, true); in mt7915_mac_sta_add()
637 return mt7915_mcu_add_sta_adv(dev, vif, sta, true); in mt7915_mac_sta_add()
640 void mt7915_mac_sta_remove(struct mt76_dev *mdev, struct ieee80211_vif *vif, in mt7915_mac_sta_remove() argument
646 mt7915_mcu_add_sta_adv(dev, vif, sta, false); in mt7915_mac_sta_remove()
647 mt7915_mcu_add_sta(dev, vif, sta, false); in mt7915_mac_sta_remove()
669 struct ieee80211_vif *vif = info->control.vif; in mt7915_tx() local
679 if (vif && !control->sta) { in mt7915_tx()
682 mvif = (struct mt7915_vif *)vif->drv_priv; in mt7915_tx()
703 mt7915_ampdu_action(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in mt7915_ampdu_action() argument
751 ieee80211_stop_tx_ba_cb_irqsafe(vif, sta->addr, tid); in mt7915_ampdu_action()
760 mt7915_sta_add(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in mt7915_sta_add() argument
763 return mt76_sta_state(hw, vif, sta, IEEE80211_STA_NOTEXIST, in mt7915_sta_add()
768 mt7915_sta_remove(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in mt7915_sta_remove() argument
771 return mt76_sta_state(hw, vif, sta, IEEE80211_STA_NONE, in mt7915_sta_remove()
797 mt7915_get_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif) in mt7915_get_tsf() argument
799 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv; in mt7915_get_tsf()
824 mt7915_set_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in mt7915_set_tsf() argument
827 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv; in mt7915_set_tsf()
850 mt7915_offset_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in mt7915_offset_tsf() argument
853 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv; in mt7915_offset_tsf()
923 struct ieee80211_vif *vif, in mt7915_sta_statistics() argument
932 if (!mt7915_mcu_get_rx_rate(phy, vif, sta, &rxrate)) { in mt7915_sta_statistics()
957 struct mt7915_dev *dev = msta->vif->phy->dev; in mt7915_sta_rc_work()
958 struct ieee80211_hw *hw = msta->vif->phy->mt76->hw; in mt7915_sta_rc_work()
971 struct ieee80211_vif *vif, in mt7915_sta_rc_update() argument
979 mt7915_set_bitrate_mask(struct ieee80211_hw *hw, struct ieee80211_vif *vif, in mt7915_set_bitrate_mask() argument
982 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv; in mt7915_set_bitrate_mask()
1004 struct ieee80211_vif *vif, in mt7915_sta_set_4addr() argument
1016 mt7915_mcu_sta_update_hdr_trans(dev, vif, sta); in mt7915_sta_set_4addr()
1020 struct ieee80211_vif *vif, in mt7915_sta_set_decap_offload() argument
1032 mt7915_mcu_sta_update_hdr_trans(dev, vif, sta); in mt7915_sta_set_decap_offload()