| /freebsd/sys/contrib/dev/mediatek/mt76/mt7603/ |
| H A D | main.c | 90 struct mt7603_sta *msta = &mvif->sta; in mt7603_remove_interface() local 92 int idx = msta->wcid.idx; in mt7603_remove_interface() 103 if (!list_empty(&msta->wcid.poll_list)) in mt7603_remove_interface() 104 list_del_init(&msta->wcid.poll_list); in mt7603_remove_interface() 331 struct mt7603_sta *msta = (struct mt7603_sta *)sta->drv_priv; in mt7603_sta_add() local 340 INIT_LIST_HEAD(&msta->wcid.poll_list); in mt7603_sta_add() 341 __skb_queue_head_init(&msta->psq); in mt7603_sta_add() 342 msta->ps = ~0; in mt7603_sta_add() 343 msta->smps = ~0; in mt7603_sta_add() 344 msta->wcid.sta = 1; in mt7603_sta_add() [all …]
|
| H A D | mac.c | 332 struct mt7603_sta *msta = (struct mt7603_sta *)sta->drv_priv; in mt7603_wtbl_update_cap() local 333 int idx = msta->wcid.idx; in mt7603_wtbl_update_cap() 415 struct mt7603_sta *msta; in mt7603_mac_sta_poll() local 432 msta = list_first_entry(&dev->mt76.sta_poll_list, in mt7603_mac_sta_poll() 434 list_del_init(&msta->wcid.poll_list); in mt7603_mac_sta_poll() 437 addr = mt7603_wtbl4_addr(msta->wcid.idx); in mt7603_mac_sta_poll() 439 u32 airtime_last = msta->tx_airtime_ac[i]; in mt7603_mac_sta_poll() 441 msta->tx_airtime_ac[i] = mt76_rr(dev, addr + i * 8); in mt7603_mac_sta_poll() 442 airtime[i] = msta->tx_airtime_ac[i] - airtime_last; in mt7603_mac_sta_poll() 446 if (msta->tx_airtime_ac[i] & BIT(22)) in mt7603_mac_sta_poll() [all …]
|
| H A D | dma.c | 30 struct mt7603_sta *msta; in mt7603_rx_loopback_skb() local 51 priv = msta = container_of(wcid, struct mt7603_sta, wcid); in mt7603_rx_loopback_skb() 83 __skb_queue_tail(&msta->psq, skb); in mt7603_rx_loopback_skb() 84 if (skb_queue_len(&msta->psq) >= 64) { in mt7603_rx_loopback_skb() 85 skb = __skb_dequeue(&msta->psq); in mt7603_rx_loopback_skb()
|
| /freebsd/sys/contrib/dev/mediatek/mt76/mt7915/ |
| H A D | main.c | 290 struct mt7915_sta *msta = &mvif->sta; in mt7915_remove_interface() local 293 int idx = msta->wcid.idx; in mt7915_remove_interface() 316 if (!list_empty(&msta->wcid.poll_list)) in mt7915_remove_interface() 317 list_del_init(&msta->wcid.poll_list); in mt7915_remove_interface() 320 mt76_wcid_cleanup(&dev->mt76, &msta->wcid); in mt7915_remove_interface() 362 struct mt7915_sta *msta = sta ? (struct mt7915_sta *)sta->drv_priv : in mt7915_set_key() local 364 struct mt76_wcid *wcid = &msta->wcid; in mt7915_set_key() 421 err = mt76_connac_mcu_add_key(&dev->mt76, vif, &msta->bip, in mt7915_set_key() 423 &msta->wcid, cmd); in mt7915_set_key() 745 struct mt7915_sta *msta = (struct mt7915_sta *)sta->drv_priv; in mt7915_mac_sta_add() local [all …]
|
| H A D | mac.c | 103 struct mt7915_sta *msta; in mt7915_mac_sta_poll() local 131 msta = list_first_entry(&sta_poll_list, in mt7915_mac_sta_poll() 133 list_del_init(&msta->wcid.poll_list); in mt7915_mac_sta_poll() 136 idx = msta->wcid.idx; in mt7915_mac_sta_poll() 142 u32 tx_last = msta->airtime_ac[i]; in mt7915_mac_sta_poll() 143 u32 rx_last = msta->airtime_ac[i + 4]; in mt7915_mac_sta_poll() 145 msta->airtime_ac[i] = mt76_rr(dev, addr); in mt7915_mac_sta_poll() 146 msta->airtime_ac[i + 4] = mt76_rr(dev, addr + 4); in mt7915_mac_sta_poll() 148 if (msta->airtime_ac[i] <= tx_last) in mt7915_mac_sta_poll() 151 tx_time[i] = msta->airtime_ac[i] - tx_last; in mt7915_mac_sta_poll() [all …]
|
| H A D | mcu.c | 65 struct mt7915_sta *msta = (struct mt7915_sta *)sta->drv_priv; in mt7915_mcu_set_sta_he_mcs() local 66 struct mt7915_dev *dev = msta->vif->phy->dev; in mt7915_mcu_set_sta_he_mcs() 67 enum nl80211_band band = msta->vif->phy->mt76->chandef.chan->band; in mt7915_mcu_set_sta_he_mcs() 68 const u16 *mask = msta->vif->bitrate_mask.control[band].he_mcs; in mt7915_mcu_set_sta_he_mcs() 120 struct mt7915_sta *msta = (struct mt7915_sta *)sta->drv_priv; in mt7915_mcu_set_sta_vht_mcs() local 121 struct mt7915_dev *dev = msta->vif->phy->dev; in mt7915_mcu_set_sta_vht_mcs() 745 struct mt7915_sta *msta = (struct mt7915_sta *)params->sta->drv_priv; in mt7915_mcu_add_tx_ba() local 746 struct mt7915_vif *mvif = msta->vif; in mt7915_mcu_add_tx_ba() 751 msta->wcid.amsdu = false; in mt7915_mcu_add_tx_ba() 764 struct mt7915_sta *msta = (struct mt7915_sta *)params->sta->drv_priv; in mt7915_mcu_add_rx_ba() local [all …]
|
| /freebsd/sys/contrib/dev/mediatek/mt76/ |
| H A D | mt76x02_util.c | 242 struct mt76x02_sta *msta = (struct mt76x02_sta *)sta->drv_priv; in mt76x02_sta_add() local 246 memset(msta, 0, sizeof(*msta)); in mt76x02_sta_add() 252 msta->vif = mvif; in mt76x02_sta_add() 253 msta->wcid.sta = 1; in mt76x02_sta_add() 254 msta->wcid.idx = idx; in mt76x02_sta_add() 255 msta->wcid.hw_key_idx = -1; in mt76x02_sta_add() 258 ewma_pktlen_init(&msta->pktlen); in mt76x02_sta_add() 261 set_bit(MT_WCID_FLAG_CHECK_PS, &msta->wcid.flags); in mt76x02_sta_add() 358 struct mt76x02_sta *msta = (struct mt76x02_sta *)sta->drv_priv; in mt76x02_ampdu_action() local 373 mt76_rx_aggr_start(&dev->mt76, &msta->wcid, tid, in mt76x02_ampdu_action() [all …]
|
| H A D | mt76x02_mac.c | 476 mt76x02_mac_fill_tx_status(struct mt76x02_dev *dev, struct mt76x02_sta *msta, in mt76x02_mac_fill_tx_status() argument 499 if (!msta) in mt76x02_mac_fill_tx_status() 502 mt76x02_mac_process_tx_rate(&rate[0], msta->wcid.tx_info, in mt76x02_mac_fill_tx_status() 554 struct mt76x02_sta *msta = NULL; in mt76x02_send_tx_status() local 571 priv = msta = container_of(wcid, struct mt76x02_sta, wcid); in mt76x02_send_tx_status() 592 if (msta && stat->aggr && !status.skb) { in mt76x02_send_tx_status() 597 stat_cache = msta->status.rate; in mt76x02_send_tx_status() 598 stat_cache |= ((u32)msta->status.retry) << 16; in mt76x02_send_tx_status() 601 stat->wcid == msta->status.wcid && msta->n_frames < 32) { in mt76x02_send_tx_status() 602 msta->n_frames++; in mt76x02_send_tx_status() [all …]
|
| H A D | mt76x02_txrx.c | 20 struct mt76x02_sta *msta; in mt76x02_tx() local 22 msta = (struct mt76x02_sta *)control->sta->drv_priv; in mt76x02_tx() 23 wcid = &msta->wcid; in mt76x02_tx() 176 struct mt76x02_sta *msta = (struct mt76x02_sta *)sta->drv_priv; in mt76x02_tx_prepare_skb() local 178 ewma_pktlen_add(&msta->pktlen, tx_info->skb->len); in mt76x02_tx_prepare_skb()
|
| H A D | mt792x.h | 283 mt792x_sta_to_link(struct mt792x_sta *msta, u8 link_id) in mt792x_sta_to_link() argument 287 vif = container_of((void *)msta->vif, struct ieee80211_vif, drv_priv); in mt792x_sta_to_link() 291 return &msta->deflink; in mt792x_sta_to_link() 293 return rcu_dereference_protected(msta->link[link_id], in mt792x_sta_to_link() 294 lockdep_is_held(&msta->vif->phy->dev->mt76.mutex)); in mt792x_sta_to_link()
|
| H A D | mt792x_core.c | 490 struct mt792x_sta *msta = (struct mt792x_sta *)sta->drv_priv; in mt792x_ethtool_worker() local 493 if (msta->vif->bss_conf.mt76.idx != wi->idx) in mt792x_ethtool_worker() 496 mt76_ethtool_worker(wi, &msta->deflink.wcid.stats, true); in mt792x_ethtool_worker() 574 struct mt792x_sta *msta = (struct mt792x_sta *)sta->drv_priv; in mt792x_sta_statistics() local 575 struct rate_info *txrate = &msta->deflink.wcid.rate; in mt792x_sta_statistics() 590 sinfo->tx_failed = msta->deflink.wcid.stats.tx_failed; in mt792x_sta_statistics() 593 sinfo->tx_retries = msta->deflink.wcid.stats.tx_retries; in mt792x_sta_statistics() 599 sinfo->ack_signal = (s8)msta->deflink.ack_signal; in mt792x_sta_statistics() 602 sinfo->avg_ack_signal = -(s8)ewma_avg_signal_read(&msta->deflink.avg_ack_signal); in mt792x_sta_statistics()
|
| H A D | mt76x02_mmio.c | 408 struct mt76x02_sta *msta; in mt76x02_reset_state() local 419 priv = msta = container_of(wcid, struct mt76x02_sta, wcid); in mt76x02_reset_state() 422 priv = msta->vif; in mt76x02_reset_state() 426 memset(msta, 0, sizeof(*msta)); in mt76x02_reset_state()
|
| /freebsd/sys/contrib/dev/mediatek/mt76/mt7996/ |
| H A D | main.c | 206 struct mt7996_sta *msta; in mt7996_set_hw_key() local 208 msta = (struct mt7996_sta *)sta->drv_priv; in mt7996_set_hw_key() 209 msta_link = mt76_dereference(msta->link[link_id], in mt7996_set_hw_key() 943 struct mt7996_sta *msta = (struct mt7996_sta *)sta->drv_priv; in mt7996_mac_sta_init_link() local 952 if (msta->deflink_id == IEEE80211_LINK_UNSPECIFIED) { in mt7996_mac_sta_init_link() 955 msta_link = &msta->deflink; in mt7996_mac_sta_init_link() 956 msta->deflink_id = link_id; in mt7996_mac_sta_init_link() 957 msta->seclink_id = msta->deflink_id; in mt7996_mac_sta_init_link() 973 if (msta->seclink_id == msta->deflink_id && in mt7996_mac_sta_init_link() 974 (sta->valid_links & ~BIT(msta->deflink_id))) in mt7996_mac_sta_init_link() [all …]
|
| H A D | mac.c | 63 struct mt7996_sta *msta; in mt7996_rx_get_wcid() local 79 msta = msta_link->sta; in mt7996_rx_get_wcid() 80 if (!msta || !msta->vif) in mt7996_rx_get_wcid() 83 mvif = msta->vif; in mt7996_rx_get_wcid() 94 msta_link = rcu_dereference(msta->link[i]); in mt7996_rx_get_wcid() 129 struct mt7996_sta *msta; in mt7996_mac_sta_poll() local 155 msta = msta_link->sta; in mt7996_mac_sta_poll() 191 sta = container_of((void *)msta, struct ieee80211_sta, in mt7996_mac_sta_poll() 214 mlink = rcu_dereference(msta->vif->mt76.link[wcid->link_id]); in mt7996_mac_sta_poll() 237 struct mt7996_sta *msta = msta_link->sta; in mt7996_reverse_frag0_hdr_trans() local [all …]
|
| /freebsd/sys/contrib/dev/mediatek/mt76/mt7615/ |
| H A D | main.c | 250 struct mt7615_sta *msta = &mvif->sta; in mt7615_remove_interface() local 253 int idx = msta->wcid.idx; in mt7615_remove_interface() 264 mt76_connac_free_pending_tx_skbs(&dev->pm, &msta->wcid); in mt7615_remove_interface() 277 if (!list_empty(&msta->wcid.poll_list)) in mt7615_remove_interface() 278 list_del_init(&msta->wcid.poll_list); in mt7615_remove_interface() 342 struct mt7615_sta *msta = sta ? (struct mt7615_sta *)sta->drv_priv : in mt7615_set_key() local 344 struct mt76_wcid *wcid = &msta->wcid; in mt7615_set_key() 637 struct mt7615_sta *msta = (struct mt7615_sta *)sta->drv_priv; in mt7615_mac_sta_add() local 646 INIT_LIST_HEAD(&msta->wcid.poll_list); in mt7615_mac_sta_add() 647 msta->vif = mvif; in mt7615_mac_sta_add() [all …]
|
| H A D | mac.c | 256 struct mt7615_sta *msta = (struct mt7615_sta *)status->wcid; in mt7615_reverse_frag0_hdr_trans() local 270 if (!msta || !msta->vif) in mt7615_reverse_frag0_hdr_trans() 273 sta = container_of((void *)msta, struct ieee80211_sta, drv_priv); in mt7615_reverse_frag0_hdr_trans() 274 vif = container_of((void *)msta->vif, struct ieee80211_vif, drv_priv); in mt7615_reverse_frag0_hdr_trans() 387 struct mt7615_sta *msta; in mt7615_mac_fill_rx() local 389 msta = container_of(status->wcid, struct mt7615_sta, wcid); in mt7615_mac_fill_rx() 390 mt76_wcid_add_poll(&dev->mt76, &msta->wcid); in mt7615_mac_fill_rx() 740 struct mt7615_sta *msta = (struct mt7615_sta *)sta->drv_priv; in mt7615_mac_write_txwi() local 742 tx_count = msta->rate_count; in mt7615_mac_write_txwi() 899 struct mt7615_sta *msta; in mt7615_mac_sta_poll() local [all …]
|
| H A D | usb_sdio.c | 190 struct mt7615_sta *msta; in mt7663_usb_sdio_tx_prepare_skb() local 193 msta = wcid ? container_of(wcid, struct mt7615_sta, wcid) : NULL; in mt7663_usb_sdio_tx_prepare_skb() 198 msta && !msta->rate_probe) { in mt7663_usb_sdio_tx_prepare_skb() 201 mt7615_mac_set_rates(&dev->phy, msta, &info->control.rates[0], in mt7663_usb_sdio_tx_prepare_skb() 202 msta->rates); in mt7663_usb_sdio_tx_prepare_skb()
|
| H A D | pci_mac.c | 74 struct mt7615_sta *msta; in mt7615_tx_prepare_skb() local 77 msta = wcid ? container_of(wcid, struct mt7615_sta, wcid) : NULL; in mt7615_tx_prepare_skb() 81 if ((info->flags & IEEE80211_TX_CTL_RATE_CTRL_PROBE) && msta) { in mt7615_tx_prepare_skb() 89 mt7615_mac_set_rates(phy, msta, &info->control.rates[0], in mt7615_tx_prepare_skb() 90 msta->rates); in mt7615_tx_prepare_skb()
|
| H A D | mcu.c | 777 struct mt7615_sta *msta = (struct mt7615_sta *)params->sta->drv_priv; in mt7615_mcu_wtbl_tx_ba() local 778 struct mt7615_vif *mvif = msta->vif; in mt7615_mcu_wtbl_tx_ba() 783 wtbl_hdr = mt76_connac_mcu_alloc_wtbl_req(&dev->mt76, &msta->wcid, in mt7615_mcu_wtbl_tx_ba() 797 &msta->wcid); in mt7615_mcu_wtbl_tx_ba() 812 struct mt7615_sta *msta = (struct mt7615_sta *)params->sta->drv_priv; in mt7615_mcu_wtbl_rx_ba() local 813 struct mt7615_vif *mvif = msta->vif; in mt7615_mcu_wtbl_rx_ba() 819 &msta->wcid); in mt7615_mcu_wtbl_rx_ba() 831 wtbl_hdr = mt76_connac_mcu_alloc_wtbl_req(&dev->mt76, &msta->wcid, in mt7615_mcu_wtbl_rx_ba() 852 struct mt7615_sta *msta; in mt7615_mcu_wtbl_sta_add() local 857 msta = sta ? (struct mt7615_sta *)sta->drv_priv : &mvif->sta; in mt7615_mcu_wtbl_sta_add() [all …]
|
| /freebsd/sys/contrib/dev/mediatek/mt76/mt7921/ |
| H A D | main.c | 503 struct mt792x_sta *msta = sta ? (struct mt792x_sta *)sta->drv_priv : in mt7921_set_key() local 505 struct mt76_wcid *wcid = &msta->deflink.wcid; in mt7921_set_key() 558 err = mt76_connac_mcu_add_key(&dev->mt76, vif, &msta->deflink.bip, in mt7921_set_key() 560 &msta->deflink.wcid, cmd); in mt7921_set_key() 806 struct mt792x_sta *msta = (struct mt792x_sta *)sta->drv_priv; in mt7921_mac_sta_add() local 814 INIT_LIST_HEAD(&msta->deflink.wcid.poll_list); in mt7921_mac_sta_add() 815 msta->vif = mvif; in mt7921_mac_sta_add() 816 msta->deflink.wcid.sta = 1; in mt7921_mac_sta_add() 817 msta->deflink.wcid.idx = idx; in mt7921_mac_sta_add() 818 msta->deflink.wcid.phy_idx = mvif->bss_conf.mt76.band_idx; in mt7921_mac_sta_add() [all …]
|
| H A D | mac.c | 44 struct mt792x_sta *msta; in mt7921_mac_sta_poll() local 74 msta = container_of(mlink, struct mt792x_sta, deflink); in mt7921_mac_sta_poll() 106 sta = container_of((void *)msta, struct ieee80211_sta, in mt7921_mac_sta_poll() 168 mt76_rx_signal(msta->vif->phy->mt76->antenna_mask, rssi); in mt7921_mac_sta_poll() 192 struct mt792x_sta *msta = NULL; in mt7921_mac_fill_rx() local 225 msta = container_of(mlink, struct mt792x_sta, deflink); in mt7921_mac_fill_rx() 400 if (!msta || !msta->vif) in mt7921_mac_fill_rx() 403 vif = container_of((void *)msta->vif, struct ieee80211_vif, in mt7921_mac_fill_rx() 800 struct mt792x_sta *msta = (struct mt792x_sta *)sta->drv_priv; in mt7921_usb_sdio_tx_prepare_skb() local 802 if (time_after(jiffies, msta->deflink.last_txs + HZ / 4)) { in mt7921_usb_sdio_tx_prepare_skb() [all …]
|
| H A D | pci_mac.c | 35 struct mt792x_sta *msta = (struct mt792x_sta *)sta->drv_priv; in mt7921e_tx_prepare_skb() local 37 if (time_after(jiffies, msta->deflink.last_txs + HZ / 4)) { in mt7921e_tx_prepare_skb() 39 msta->deflink.last_txs = jiffies; in mt7921e_tx_prepare_skb()
|
| /freebsd/sys/contrib/dev/mediatek/mt76/mt7925/ |
| H A D | main.c | 593 struct mt792x_sta *msta = sta ? (struct mt792x_sta *)sta->drv_priv : in mt7925_set_link_key() local 606 mlink = mt792x_sta_to_link(msta, link_id); in mt7925_set_link_key() 652 &mlink->wcid, cmd, msta); in mt7925_set_link_key() 661 &mvif->wep_sta->deflink.wcid, cmd, msta); in mt7925_set_link_key() 672 struct mt792x_sta *msta = sta ? (struct mt792x_sta *)sta->drv_priv : in mt7925_set_key() local 692 add = key->link_id != -1 ? BIT(key->link_id) : msta->valid_links; in mt7925_set_key() 853 struct mt792x_sta *msta; in mt7925_mac_link_sta_add() local 857 msta = (struct mt792x_sta *)link_sta->sta->drv_priv; in mt7925_mac_link_sta_add() 858 mlink = mt792x_sta_to_link(msta, link_id); in mt7925_mac_link_sta_add() 872 mlink->sta = msta; in mt7925_mac_link_sta_add() [all …]
|
| H A D | mac.c | 31 struct mt792x_sta *msta; in mt7925_mac_sta_poll() local 53 msta = mlink->sta; in mt7925_mac_sta_poll() 86 sta = container_of((void *)msta, struct ieee80211_sta, in mt7925_mac_sta_poll() 151 mt76_rx_signal(msta->vif->phy->mt76->antenna_mask, rssi); in mt7925_mac_sta_poll() 173 struct mt792x_sta *msta = (struct mt792x_sta *)status->wcid; in mt7925_reverse_frag0_hdr_trans() local 187 if (!msta || !msta->vif) in mt7925_reverse_frag0_hdr_trans() 190 sta = container_of((void *)msta, struct ieee80211_sta, drv_priv); in mt7925_reverse_frag0_hdr_trans() 191 vif = container_of((void *)msta->vif, struct ieee80211_vif, drv_priv); in mt7925_reverse_frag0_hdr_trans() 844 struct mt792x_sta *msta; in mt7925_tx_check_aggr() local 877 msta = (struct mt792x_sta *)sta->drv_priv; in mt7925_tx_check_aggr() [all …]
|
| H A D | pci_mac.c | 35 struct mt792x_sta *msta = (struct mt792x_sta *)sta->drv_priv; in mt7925e_tx_prepare_skb() local 37 if (time_after(jiffies, msta->deflink.last_txs + HZ / 4)) { in mt7925e_tx_prepare_skb() 39 msta->deflink.last_txs = jiffies; in mt7925e_tx_prepare_skb()
|