Lines Matching defs:vif

288 mt7921_add_interface(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
290 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
309 ret = mt76_connac_mcu_uni_add_dev(&dev->mphy, vif, &mvif->sta.wcid,
332 if (vif->txq) {
333 mtxq = (struct mt76_txq *)vif->txq->drv_priv;
337 vif->driver_flags |= IEEE80211_VIF_BEACON_FILTER;
339 vif->driver_flags |= IEEE80211_VIF_SUPPORTS_CQM_RSSI;
347 struct ieee80211_vif *vif)
349 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
386 static int mt7921_abort_roc(struct mt792x_phy *phy, struct mt792x_vif *vif)
395 err = mt7921_mcu_abort_roc(phy, vif, phy->roc_token_id);
402 struct mt792x_vif *vif,
414 err = mt7921_mcu_set_roc(phy, vif, chan, duration, type,
422 mt7921_mcu_abort_roc(phy, vif, phy->roc_token_id);
432 struct ieee80211_vif *vif,
437 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
449 struct ieee80211_vif *vif)
451 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
490 struct ieee80211_vif *vif, struct ieee80211_sta *sta,
494 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
504 if ((vif->type == NL80211_IFTYPE_ADHOC ||
505 vif->type == NL80211_IFTYPE_MESH_POINT) &&
544 err = mt76_connac_mcu_add_key(&dev->mt76, vif, &msta->bip,
552 err = mt76_connac_mcu_add_key(&dev->mt76, vif,
563 mt7921_pm_interface_iter(void *priv, u8 *mac, struct ieee80211_vif *vif)
570 err = mt7921_mcu_set_beacon_filter(dev, vif, pm_enable);
575 vif->driver_flags |= IEEE80211_VIF_BEACON_FILTER;
578 vif->driver_flags &= ~IEEE80211_VIF_BEACON_FILTER;
584 mt7921_sniffer_interface_iter(void *priv, u8 *mac, struct ieee80211_vif *vif)
591 mt7921_mcu_set_sniffer(dev, vif, monitor);
598 mt7921_mcu_set_beacon_filter(dev, vif, false);
679 struct ieee80211_vif *vif,
699 mt7921_mcu_uni_add_beacon_offload(dev, hw, vif,
704 mt7921_mcu_set_tx(dev, vif);
707 mt7921_mcu_uni_bss_ps(dev, vif);
710 mt7921_mcu_set_rssimonitor(dev, vif);
713 mt7921_mcu_sta_update(dev, NULL, vif, true,
715 mt7921_mcu_set_beacon_filter(dev, vif, vif->cfg.assoc);
719 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
729 mt7921_calc_vif_num(void *priv, u8 *mac, struct ieee80211_vif *vif)
736 switch (vif->type) {
749 mt7921_regd_set_6ghz_power_type(struct ieee80211_vif *vif, bool is_add)
751 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
766 vif->bss_conf.power_type = IEEE80211_REG_UNSET_AP;
768 switch (vif->bss_conf.power_type) {
790 int mt7921_mac_sta_add(struct mt76_dev *mdev, struct ieee80211_vif *vif,
795 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
803 msta->vif = mvif;
814 if (vif->type == NL80211_IFTYPE_STATION)
820 ret = mt7921_mcu_sta_update(dev, sta, vif, true,
825 mt7921_regd_set_6ghz_power_type(vif, true);
833 void mt7921_mac_sta_assoc(struct mt76_dev *mdev, struct ieee80211_vif *vif,
838 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
842 if (vif->type == NL80211_IFTYPE_STATION && !sta->tdls)
843 mt76_connac_mcu_uni_add_bss(&dev->mphy, vif, &mvif->sta.wcid,
852 mt7921_mcu_sta_update(dev, sta, vif, true, MT76_STA_INFO_STATE_ASSOC);
858 void mt7921_mac_sta_remove(struct mt76_dev *mdev, struct ieee80211_vif *vif,
867 mt7921_mcu_sta_update(dev, sta, vif, false, MT76_STA_INFO_STATE_NONE);
871 if (vif->type == NL80211_IFTYPE_STATION) {
872 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
877 mt76_connac_mcu_uni_add_bss(&dev->mphy, vif,
887 mt7921_regd_set_6ghz_power_type(vif, false);
905 mt7921_ampdu_action(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
953 ieee80211_stop_tx_ba_cb_irqsafe(vif, sta->addr, tid);
962 struct ieee80211_vif *vif,
975 return mt76_sta_state(hw, vif, sta, old_state, new_state);
1012 mt7921_hw_scan(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
1020 err = mt76_connac_mcu_hw_scan(mphy, vif, req);
1027 mt7921_cancel_hw_scan(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
1033 mt76_connac_mcu_cancel_hw_scan(mphy, vif);
1038 mt7921_start_sched_scan(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
1048 err = mt76_connac_mcu_sched_scan_req(mphy, vif, req);
1052 err = mt76_connac_mcu_sched_scan_enable(mphy, vif, true);
1060 mt7921_stop_sched_scan(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
1067 err = mt76_connac_mcu_sched_scan_enable(mphy, vif, false);
1147 struct ieee80211_vif *vif,
1153 mt76_connac_mcu_update_gtk_rekey(hw, vif, data);
1159 struct ieee80211_vif *vif,
1173 mt76_connac_mcu_sta_update_hdr_trans(&dev->mt76, vif, &msta->wcid,
1181 struct ieee80211_vif *vif,
1184 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
1276 struct ieee80211_vif *vif,
1282 mt7921_mcu_uni_add_beacon_offload(dev, hw, vif, true);
1287 mt7921_start_ap(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
1290 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
1297 err = mt76_connac_mcu_uni_add_bss(phy->mt76, vif, &mvif->sta.wcid,
1302 err = mt7921_mcu_set_bss_pm(dev, vif, true);
1306 err = mt7921_mcu_sta_update(dev, NULL, vif, true,
1315 mt7921_stop_ap(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
1318 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
1325 err = mt7921_mcu_set_bss_pm(dev, vif, false);
1329 mt76_connac_mcu_uni_add_bss(phy->mt76, vif, &mvif->sta.wcid, false,
1350 struct ieee80211_vif *vif)
1352 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
1358 if (vif->type == NL80211_IFTYPE_MONITOR)
1379 struct ieee80211_vif *vif,
1382 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
1394 struct ieee80211_vif *vif,
1397 struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;