Lines Matching refs:msta
164 struct mt7996_sta *msta = sta ? (struct mt7996_sta *)sta->drv_priv : in mt7996_set_hw_key() local
166 struct mt76_wcid *wcid = &msta->wcid; in mt7996_set_hw_key()
212 &msta->wcid, cmd); in mt7996_set_hw_key()
306 struct mt7996_sta *msta; in mt7996_vif_link_remove() local
309 msta = &link->sta; in mt7996_vif_link_remove()
310 idx = msta->wcid.idx; in mt7996_vif_link_remove()
322 if (!list_empty(&msta->wcid.poll_list)) in mt7996_vif_link_remove()
323 list_del_init(&msta->wcid.poll_list); in mt7996_vif_link_remove()
326 mt76_wcid_cleanup(&dev->mt76, &msta->wcid); in mt7996_vif_link_remove()
761 struct mt7996_sta *msta = (struct mt7996_sta *)sta->drv_priv; in mt7996_mac_sta_add() local
771 INIT_LIST_HEAD(&msta->rc_list); in mt7996_mac_sta_add()
772 INIT_LIST_HEAD(&msta->wcid.poll_list); in mt7996_mac_sta_add()
773 msta->vif = mvif; in mt7996_mac_sta_add()
774 msta->wcid.sta = 1; in mt7996_mac_sta_add()
775 msta->wcid.idx = idx; in mt7996_mac_sta_add()
776 msta->wcid.phy_idx = band_idx; in mt7996_mac_sta_add()
778 ewma_avg_signal_init(&msta->avg_ack_signal); in mt7996_mac_sta_add()
792 struct mt7996_sta *msta = (struct mt7996_sta *)sta->drv_priv; in mt7996_mac_sta_event() local
808 msta->wcid.tx_info |= MT_WCID_TX_INFO_SET; in mt7996_mac_sta_event()
809 msta->wcid.sta = 1; in mt7996_mac_sta_event()
818 for (i = 0; i < ARRAY_SIZE(msta->twt.flow); i++) in mt7996_mac_sta_event()
819 mt7996_mac_twt_teardown_flow(dev, msta, i); in mt7996_mac_sta_event()
823 msta->wcid.sta_disabled = 1; in mt7996_mac_sta_event()
824 msta->wcid.sta = 0; in mt7996_mac_sta_event()
836 struct mt7996_sta *msta = (struct mt7996_sta *)sta->drv_priv; in mt7996_mac_sta_remove() local
838 mt7996_mac_wtbl_update(dev, msta->wcid.idx, in mt7996_mac_sta_remove()
842 if (!list_empty(&msta->wcid.poll_list)) in mt7996_mac_sta_remove()
843 list_del_init(&msta->wcid.poll_list); in mt7996_mac_sta_remove()
844 if (!list_empty(&msta->rc_list)) in mt7996_mac_sta_remove()
845 list_del_init(&msta->rc_list); in mt7996_mac_sta_remove()
918 struct mt7996_sta *msta = (struct mt7996_sta *)sta->drv_priv; in mt7996_ampdu_action() local
932 mt76_rx_aggr_start(&dev->mt76, &msta->wcid, tid, ssn, in mt7996_ampdu_action()
937 mt76_rx_aggr_stop(&dev->mt76, &msta->wcid, tid); in mt7996_ampdu_action()
948 clear_bit(tid, &msta->wcid.ampdu_state); in mt7996_ampdu_action()
952 set_bit(tid, &msta->wcid.ampdu_state); in mt7996_ampdu_action()
957 clear_bit(tid, &msta->wcid.ampdu_state); in mt7996_ampdu_action()
1147 struct mt7996_sta *msta = (struct mt7996_sta *)sta->drv_priv; in mt7996_sta_statistics() local
1148 struct rate_info *txrate = &msta->wcid.rate; in mt7996_sta_statistics()
1168 sinfo->tx_failed = msta->wcid.stats.tx_failed; in mt7996_sta_statistics()
1171 sinfo->tx_retries = msta->wcid.stats.tx_retries; in mt7996_sta_statistics()
1174 sinfo->ack_signal = (s8)msta->ack_signal; in mt7996_sta_statistics()
1177 sinfo->avg_ack_signal = -(s8)ewma_avg_signal_read(&msta->avg_ack_signal); in mt7996_sta_statistics()
1181 sinfo->tx_bytes = msta->wcid.stats.tx_bytes; in mt7996_sta_statistics()
1184 sinfo->rx_bytes = msta->wcid.stats.rx_bytes; in mt7996_sta_statistics()
1187 sinfo->tx_packets = msta->wcid.stats.tx_packets; in mt7996_sta_statistics()
1190 sinfo->rx_packets = msta->wcid.stats.rx_packets; in mt7996_sta_statistics()
1197 struct mt7996_sta *msta = (struct mt7996_sta *)sta->drv_priv; in mt7996_sta_rc_work() local
1198 struct mt7996_dev *dev = msta->vif->deflink.phy->dev; in mt7996_sta_rc_work()
1202 msta->changed |= *changed; in mt7996_sta_rc_work()
1203 if (list_empty(&msta->rc_list)) in mt7996_sta_rc_work()
1204 list_add_tail(&msta->rc_list, &dev->sta_rc_list); in mt7996_sta_rc_work()
1250 struct mt7996_sta *msta = (struct mt7996_sta *)sta->drv_priv; in mt7996_sta_set_4addr() local
1253 set_bit(MT_WCID_FLAG_4ADDR, &msta->wcid.flags); in mt7996_sta_set_4addr()
1255 clear_bit(MT_WCID_FLAG_4ADDR, &msta->wcid.flags); in mt7996_sta_set_4addr()
1257 if (!msta->wcid.sta) in mt7996_sta_set_4addr()
1269 struct mt7996_sta *msta = (struct mt7996_sta *)sta->drv_priv; in mt7996_sta_set_decap_offload() local
1272 set_bit(MT_WCID_FLAG_HDR_TRANS, &msta->wcid.flags); in mt7996_sta_set_decap_offload()
1274 clear_bit(MT_WCID_FLAG_HDR_TRANS, &msta->wcid.flags); in mt7996_sta_set_decap_offload()
1276 if (!msta->wcid.sta) in mt7996_sta_set_decap_offload()
1410 struct mt7996_sta *msta = (struct mt7996_sta *)sta->drv_priv; in mt7996_ethtool_worker() local
1412 if (msta->vif->deflink.mt76.idx != wi->idx) in mt7996_ethtool_worker()
1415 mt76_ethtool_worker(wi, &msta->wcid.stats, true); in mt7996_ethtool_worker()
1518 struct mt7996_sta *msta = (struct mt7996_sta *)sta->drv_priv; in mt7996_twt_teardown_request() local
1522 mt7996_mac_twt_teardown_flow(dev, msta, flowid); in mt7996_twt_teardown_request()
1591 struct mt7996_sta *msta = (struct mt7996_sta *)sta->drv_priv; in mt7996_net_fill_forward_path() local
1607 if (!msta->wcid.sta || msta->wcid.idx > MT7996_WTBL_STA) in mt7996_net_fill_forward_path()
1615 path->mtk_wdma.wcid = msta->wcid.idx; in mt7996_net_fill_forward_path()