Lines Matching refs:rtwvif
110 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv; in rtw89_ops_add_interface() local
117 rtwvif->rtwdev = rtwdev; in rtw89_ops_add_interface()
118 list_add_tail(&rtwvif->list, &rtwdev->rtwvifs_list); in rtw89_ops_add_interface()
119 INIT_WORK(&rtwvif->update_beacon_work, rtw89_core_update_beacon_work); in rtw89_ops_add_interface()
122 rtw89_traffic_stats_init(rtwdev, &rtwvif->stats); in rtw89_ops_add_interface()
124 rtwvif->port = rtw89_core_acquire_bit_map(rtwdev->hw_port, in rtw89_ops_add_interface()
126 if (rtwvif->port == RTW89_PORT_NUM) { in rtw89_ops_add_interface()
128 list_del_init(&rtwvif->list); in rtw89_ops_add_interface()
132 rtwvif->bcn_hit_cond = 0; in rtw89_ops_add_interface()
133 rtwvif->mac_idx = RTW89_MAC_0; in rtw89_ops_add_interface()
134 rtwvif->phy_idx = RTW89_PHY_0; in rtw89_ops_add_interface()
135 rtwvif->sub_entity_idx = RTW89_SUB_ENTITY_0; in rtw89_ops_add_interface()
136 rtwvif->hit_rule = 0; in rtw89_ops_add_interface()
137 ether_addr_copy(rtwvif->mac_addr, vif->addr); in rtw89_ops_add_interface()
138 INIT_LIST_HEAD(&rtwvif->general_pkt_list); in rtw89_ops_add_interface()
140 ret = rtw89_mac_add_vif(rtwdev, rtwvif); in rtw89_ops_add_interface()
142 rtw89_core_release_bit_map(rtwdev->hw_port, rtwvif->port); in rtw89_ops_add_interface()
143 list_del_init(&rtwvif->list); in rtw89_ops_add_interface()
149 rtw89_btc_ntfy_role_info(rtwdev, rtwvif, NULL, BTC_ROLE_START); in rtw89_ops_add_interface()
160 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv; in rtw89_ops_remove_interface() local
165 cancel_work_sync(&rtwvif->update_beacon_work); in rtw89_ops_remove_interface()
169 rtw89_btc_ntfy_role_info(rtwdev, rtwvif, NULL, BTC_ROLE_STOP); in rtw89_ops_remove_interface()
170 rtw89_mac_remove_vif(rtwdev, rtwvif); in rtw89_ops_remove_interface()
171 rtw89_core_release_bit_map(rtwdev->hw_port, rtwvif->port); in rtw89_ops_remove_interface()
172 list_del_init(&rtwvif->list); in rtw89_ops_remove_interface()
277 struct rtw89_vif *rtwvif, u8 aifsn) in rtw89_aifsn_to_aifs() argument
279 struct ieee80211_vif *vif = rtwvif_to_vif(rtwvif); in rtw89_aifsn_to_aifs()
291 struct rtw89_vif *rtwvif, u16 ac) in ____rtw89_conf_tx_edca() argument
293 struct ieee80211_tx_queue_params *params = &rtwvif->tx_params[ac]; in ____rtw89_conf_tx_edca()
301 aifs = rtw89_aifsn_to_aifs(rtwdev, rtwvif, params->aifs); in ____rtw89_conf_tx_edca()
306 rtw89_fw_h2c_set_edca(rtwdev, rtwvif, ac_to_fw_idx[ac], val); in ____rtw89_conf_tx_edca()
317 struct rtw89_vif *rtwvif, u16 ac) in ____rtw89_conf_tx_mu_edca() argument
319 struct ieee80211_tx_queue_params *params = &rtwvif->tx_params[ac]; in ____rtw89_conf_tx_mu_edca()
331 aifs = aifsn ? rtw89_aifsn_to_aifs(rtwdev, rtwvif, aifsn) : 0; in ____rtw89_conf_tx_mu_edca()
337 reg = rtw89_mac_reg_by_idx(ac_to_mu_edca_param[ac], rtwvif->mac_idx); in ____rtw89_conf_tx_mu_edca()
340 rtw89_mac_set_hw_muedca_ctrl(rtwdev, rtwvif, true); in ____rtw89_conf_tx_mu_edca()
344 struct rtw89_vif *rtwvif, u16 ac) in __rtw89_conf_tx() argument
346 ____rtw89_conf_tx_edca(rtwdev, rtwvif, ac); in __rtw89_conf_tx()
347 ____rtw89_conf_tx_mu_edca(rtwdev, rtwvif, ac); in __rtw89_conf_tx()
351 struct rtw89_vif *rtwvif) in rtw89_conf_tx() argument
356 __rtw89_conf_tx(rtwdev, rtwvif, ac); in rtw89_conf_tx()
385 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv; in rtw89_ops_bss_info_changed() local
395 rtw89_mac_port_update(rtwdev, rtwvif); in rtw89_ops_bss_info_changed()
408 ether_addr_copy(rtwvif->bssid, conf->bssid); in rtw89_ops_bss_info_changed()
409 rtw89_cam_bssid_changed(rtwdev, rtwvif); in rtw89_ops_bss_info_changed()
410 rtw89_fw_h2c_cam(rtwdev, rtwvif, NULL, NULL); in rtw89_ops_bss_info_changed()
414 rtw89_fw_h2c_update_beacon(rtwdev, rtwvif); in rtw89_ops_bss_info_changed()
417 rtw89_conf_tx(rtwdev, rtwvif); in rtw89_ops_bss_info_changed()
436 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv; in rtw89_ops_start_ap() local
439 ether_addr_copy(rtwvif->bssid, vif->bss_conf.bssid); in rtw89_ops_start_ap()
440 rtw89_cam_bssid_changed(rtwdev, rtwvif); in rtw89_ops_start_ap()
441 rtw89_mac_port_update(rtwdev, rtwvif); in rtw89_ops_start_ap()
443 rtw89_fw_h2c_role_maintain(rtwdev, rtwvif, NULL, RTW89_ROLE_TYPE_CHANGE); in rtw89_ops_start_ap()
444 rtw89_fw_h2c_join_info(rtwdev, rtwvif, NULL, true); in rtw89_ops_start_ap()
445 rtw89_fw_h2c_cam(rtwdev, rtwvif, NULL, NULL); in rtw89_ops_start_ap()
457 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv; in rtw89_ops_stop_ap() local
460 rtw89_mac_stop_ap(rtwdev, rtwvif); in rtw89_ops_stop_ap()
462 rtw89_fw_h2c_join_info(rtwdev, rtwvif, NULL, true); in rtw89_ops_stop_ap()
471 struct rtw89_vif *rtwvif = rtwsta->rtwvif; in rtw89_ops_set_tim() local
473 ieee80211_queue_work(rtwdev->hw, &rtwvif->update_beacon_work); in rtw89_ops_set_tim()
484 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv; in rtw89_ops_conf_tx() local
488 rtwvif->tx_params[ac] = *params; in rtw89_ops_conf_tx()
489 __rtw89_conf_tx(rtwdev, rtwvif, ac); in rtw89_ops_conf_tx()
659 struct rtw89_vif *rtwvif; in __rtw89_drop_packets() local
662 rtwvif = (struct rtw89_vif *)vif->drv_priv; in __rtw89_drop_packets()
663 rtw89_mac_pkt_drop_vif(rtwdev, rtwvif); in __rtw89_drop_packets()
665 rtw89_for_each_rtwvif(rtwdev, rtwvif) in __rtw89_drop_packets()
666 rtw89_mac_pkt_drop_vif(rtwdev, rtwvif); in __rtw89_drop_packets()
697 struct ieee80211_vif *vif = rtwvif_to_vif(rtwsta->rtwvif); in rtw89_ra_mask_info_update_iter()
768 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv; in rtw89_ops_sw_scan_start() local
771 rtw89_core_scan_start(rtwdev, rtwvif, mac_addr, false); in rtw89_ops_sw_scan_start()
883 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv; in rtw89_ops_assign_vif_chanctx() local
887 ret = rtw89_chanctx_ops_assign_vif(rtwdev, rtwvif, ctx); in rtw89_ops_assign_vif_chanctx()
899 struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv; in rtw89_ops_unassign_vif_chanctx() local
902 rtw89_chanctx_ops_unassign_vif(rtwdev, rtwvif, ctx); in rtw89_ops_unassign_vif_chanctx()
910 struct rtw89_dev *rtwdev = rtwsta->rtwvif->rtwdev; in rtw89_set_tid_config_iter()