Lines Matching refs:vif

62 	struct mt7915_dev *dev = msta->vif->phy->dev;
63 enum nl80211_band band = msta->vif->phy->mt76->chandef.chan->band;
64 const u16 *mask = msta->vif->bitrate_mask.control[band].he_mcs;
117 struct mt7915_dev *dev = msta->vif->phy->dev;
226 mt7915_mcu_csa_finish(void *priv, u8 *mac, struct ieee80211_vif *vif)
228 if (!vif->bss_conf.csa_active || vif->type == NL80211_IFTYPE_STATION)
231 ieee80211_csa_finish(vif, 0);
329 mt7915_mcu_cca_finish(void *priv, u8 *mac, struct ieee80211_vif *vif)
331 if (!vif->bss_conf.color_change_active || vif->type == NL80211_IFTYPE_STATION)
334 ieee80211_color_change_finish(vif, 0);
460 struct ieee80211_vif *vif)
466 if (!(vif->bss_conf.chanreq.oper.chan->flags & IEEE80211_CHAN_RADAR))
469 cfg80211_bss_iter(hw->wiphy, &vif->bss_conf.chanreq.oper,
481 mt7915_mcu_bss_rfch_tlv(struct sk_buff *skb, struct ieee80211_vif *vif,
502 if (vif->bss_conf.he_support && vif->type == NL80211_IFTYPE_STATION) {
506 mt7915_check_he_obss_narrow_bw_ru(mphy->hw, vif);
514 mt7915_mcu_bss_ra_tlv(struct sk_buff *skb, struct ieee80211_vif *vif,
524 ra->op_mode = vif->type == NL80211_IFTYPE_AP;
525 ra->adhoc_en = vif->type == NL80211_IFTYPE_ADHOC;
540 mt7915_mcu_bss_he_tlv(struct sk_buff *skb, struct ieee80211_vif *vif,
549 cap = mt76_connac_get_he_phy_cap(phy->mt76, vif);
554 he->he_pe_duration = vif->bss_conf.htc_trig_based_pkt_ext;
558 he->he_rts_thres = cpu_to_le16(vif->bss_conf.frame_time_rts_th);
604 mt7915_mcu_muar_config(struct mt7915_phy *phy, struct ieee80211_vif *vif,
608 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
611 const u8 *addr = vif->addr;
632 addr = vif->bss_conf.bssid;
642 struct ieee80211_vif *vif, int enable)
644 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
649 mt7915_mcu_muar_config(phy, vif, false, enable);
650 mt7915_mcu_muar_config(phy, vif, true, enable);
660 mt76_connac_mcu_bss_omac_tlv(skb, vif);
662 mt76_connac_mcu_bss_basic_tlv(skb, vif, NULL, phy->mt76,
665 if (vif->type == NL80211_IFTYPE_MONITOR)
669 mt7915_mcu_bss_rfch_tlv(skb, vif, phy);
671 mt7915_mcu_bss_ra_tlv(skb, vif, phy);
674 if (vif->bss_conf.he_support)
675 mt7915_mcu_bss_he_tlv(skb, vif, phy);
692 struct mt7915_vif *mvif = msta->vif;
707 struct mt7915_vif *mvif = msta->vif;
716 struct ieee80211_vif *vif)
718 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
859 struct ieee80211_sta *sta, struct ieee80211_vif *vif)
861 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
866 if (vif->type != NL80211_IFTYPE_STATION &&
867 vif->type != NL80211_IFTYPE_AP)
949 struct ieee80211_vif *vif, struct ieee80211_sta *sta)
955 if (vif->type != NL80211_IFTYPE_STATION &&
956 vif->type != NL80211_IFTYPE_AP)
988 struct ieee80211_vif *vif, struct ieee80211_sta *sta)
990 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
1006 mt76_connac_mcu_wtbl_generic_tlv(&dev->mt76, skb, vif, sta, tlv,
1008 mt76_connac_mcu_wtbl_hdr_trans_tlv(skb, vif, wcid, tlv, wtbl_hdr);
1018 mt7915_is_ebf_supported(struct mt7915_phy *phy, struct ieee80211_vif *vif,
1021 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
1024 if (vif->type != NL80211_IFTYPE_STATION &&
1025 vif->type != NL80211_IFTYPE_AP)
1128 mt7915_mcu_sta_bfer_he(struct ieee80211_sta *sta, struct ieee80211_vif *vif,
1134 mt76_connac_get_he_phy_cap(phy->mt76, vif);
1189 struct ieee80211_vif *vif, struct ieee80211_sta *sta)
1191 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
1207 ebf = mt7915_is_ebf_supported(phy, vif, sta, false);
1219 mt7915_mcu_sta_bfer_he(sta, vif, phy, bf);
1258 struct ieee80211_vif *vif, struct ieee80211_sta *sta)
1260 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
1270 if (!mt7915_is_ebf_supported(phy, vif, sta, true))
1308 struct ieee80211_vif *vif,
1312 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
1352 int mt7915_mcu_add_smps(struct mt7915_dev *dev, struct ieee80211_vif *vif,
1355 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
1381 return mt7915_mcu_set_fixed_rate_ctrl(dev, vif, sta, NULL,
1386 mt7915_mcu_set_spe_idx(struct mt7915_dev *dev, struct ieee80211_vif *vif,
1389 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
1393 return mt7915_mcu_set_fixed_rate_ctrl(dev, vif, sta, &spe_idx,
1399 struct ieee80211_vif *vif,
1402 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
1448 ret = mt7915_mcu_set_fixed_rate_ctrl(dev, vif, sta, &phy,
1470 ret = mt7915_mcu_set_fixed_rate_ctrl(dev, vif, sta, &phy,
1478 ret = mt7915_mcu_set_fixed_rate_ctrl(dev, vif, sta, &phy,
1484 return mt7915_mcu_set_spe_idx(dev, vif, sta);
1489 struct ieee80211_vif *vif, struct ieee80211_sta *sta)
1491 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
1506 ra->phy_mode = mt76_connac_get_phy_mode(mphy, vif, band, sta);
1590 int mt7915_mcu_add_rate_ctrl(struct mt7915_dev *dev, struct ieee80211_vif *vif,
1593 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
1608 mt7915_mcu_sta_he_tlv(skb, sta, vif);
1613 mt7915_mcu_sta_rate_ctrl_tlv(skb, dev, vif, sta);
1624 return mt7915_mcu_add_rate_ctrl_fixed(dev, vif, sta);
1628 mt7915_mcu_add_group(struct mt7915_dev *dev, struct ieee80211_vif *vif,
1632 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
1655 int mt7915_mcu_add_sta(struct mt7915_dev *dev, struct ieee80211_vif *vif,
1658 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
1671 mt76_connac_mcu_sta_basic_tlv(&dev->mt76, skb, vif, sta, enable,
1679 mt7915_mcu_sta_bfer_tlv(dev, skb, vif, sta);
1685 mt76_connac_mcu_sta_uapsd(skb, vif, sta);
1688 ret = mt7915_mcu_sta_wtbl_tlv(dev, skb, vif, sta);
1696 mt7915_mcu_sta_amsdu_tlv(dev, skb, vif, sta);
1698 mt7915_mcu_sta_he_tlv(skb, sta, vif);
1700 mt7915_mcu_sta_muru_tlv(dev, skb, sta, vif);
1702 mt7915_mcu_sta_bfee_tlv(dev, skb, vif, sta);
1705 ret = mt7915_mcu_add_group(dev, vif, sta);
1738 struct ieee80211_vif *vif, bool enable)
1741 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
1773 return mt7915_mcu_muar_config(phy, vif, false, enable);
1775 memcpy(data.tlv.omac_addr, vif->addr, ETH_ALEN);
1781 mt7915_mcu_beacon_cntdwn(struct ieee80211_vif *vif, struct sk_buff *rskb,
1792 sub_tag = vif->bss_conf.csa_active ? BSS_INFO_BCN_CSA : BSS_INFO_BCN_BCC;
1801 struct ieee80211_vif *vif, struct bss_info_bcn *bcn,
1808 if (!vif->bss_conf.bssid_indicator)
1855 mt7915_mcu_beacon_cont(struct mt7915_dev *dev, struct ieee80211_vif *vif,
1877 if (vif->bss_conf.csa_active)
1879 if (vif->bss_conf.color_change_active)
1890 mt7915_mcu_add_inband_discov(struct mt7915_dev *dev, struct ieee80211_vif *vif,
1897 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
1910 if (vif->bss_conf.nontransmitted)
1923 interval = vif->bss_conf.fils_discovery.max_interval;
1924 skb = ieee80211_get_fils_discovery_tmpl(hw, vif);
1926 vif->bss_conf.unsol_bcast_probe_resp_interval) {
1927 interval = vif->bss_conf.unsol_bcast_probe_resp_interval;
1928 skb = ieee80211_get_unsol_bcast_probe_resp_tmpl(hw, vif);
1937 info->control.vif = vif;
1973 int mt7915_mcu_add_beacon(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
1978 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
1987 if (vif->bss_conf.nontransmitted)
2002 skb = ieee80211_beacon_get_template(hw, vif, &offs, 0);
2018 mt7915_mcu_beacon_cntdwn(vif, rskb, skb, bcn, &offs);
2019 mt7915_mcu_beacon_mbss(rskb, skb, vif, bcn, &offs);
2020 mt7915_mcu_beacon_cont(dev, vif, rskb, skb, bcn, &offs);
2472 int mt7915_mcu_set_tx(struct mt7915_dev *dev, struct ieee80211_vif *vif)
2480 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
3258 struct ieee80211_vif *vif,
3574 mt7915_mcu_set_obss_spr_siga(struct mt7915_phy *phy, struct ieee80211_vif *vif,
3577 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
3651 int mt7915_mcu_add_obss_spr(struct mt7915_phy *phy, struct ieee80211_vif *vif,
3683 ret = mt7915_mcu_set_obss_spr_siga(phy, vif, he_obss_pd);
3691 int mt7915_mcu_get_rx_rate(struct mt7915_phy *phy, struct ieee80211_vif *vif,
3694 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;
3796 int mt7915_mcu_update_bss_color(struct mt7915_dev *dev, struct ieee80211_vif *vif,
3800 struct mt7915_vif *mvif = (struct mt7915_vif *)vif->drv_priv;