| /linux/drivers/net/wireless/ath/ath10k/ |
| H A D | mac.c | 239 static int ath10k_send_key(struct ath10k_vif *arvif, in ath10k_send_key() argument 244 struct ath10k *ar = arvif->ar; in ath10k_send_key() 246 .vdev_id = arvif->vdev_id, in ath10k_send_key() 254 lockdep_assert_held(&arvif->ar->conf_mutex); in ath10k_send_key() 304 return ath10k_wmi_vdev_install_key(arvif->ar, &arg); in ath10k_send_key() 307 static int ath10k_install_key(struct ath10k_vif *arvif, in ath10k_install_key() argument 312 struct ath10k *ar = arvif->ar; in ath10k_install_key() 320 if (arvif->nohwcrypt) in ath10k_install_key() 323 ret = ath10k_send_key(arvif, key, cmd, macaddr, flags); in ath10k_install_key() 334 static int ath10k_install_peer_wep_keys(struct ath10k_vif *arvif, in ath10k_install_peer_wep_keys() argument [all …]
|
| H A D | p2p.c | 70 static void ath10k_p2p_noa_ie_assign(struct ath10k_vif *arvif, void *ie, in ath10k_p2p_noa_ie_assign() argument 73 struct ath10k *ar = arvif->ar; in ath10k_p2p_noa_ie_assign() 77 kfree(arvif->u.ap.noa_data); in ath10k_p2p_noa_ie_assign() 79 arvif->u.ap.noa_data = ie; in ath10k_p2p_noa_ie_assign() 80 arvif->u.ap.noa_len = len; in ath10k_p2p_noa_ie_assign() 83 static void __ath10k_p2p_noa_update(struct ath10k_vif *arvif, in __ath10k_p2p_noa_update() argument 86 struct ath10k *ar = arvif->ar; in __ath10k_p2p_noa_update() 92 ath10k_p2p_noa_ie_assign(arvif, NULL, 0); in __ath10k_p2p_noa_update() 103 ath10k_p2p_noa_ie_assign(arvif, ie, len); in __ath10k_p2p_noa_update() 106 void ath10k_p2p_noa_update(struct ath10k_vif *arvif, in ath10k_p2p_noa_update() argument [all …]
|
| H A D | mac.h | 44 void ath10k_mac_vif_beacon_free(struct ath10k_vif *arvif); 64 void ath10k_mac_vif_tx_lock(struct ath10k_vif *arvif, int reason); 65 void ath10k_mac_vif_tx_unlock(struct ath10k_vif *arvif, int reason); 82 struct ath10k_vif *arvif = (void *)vif->drv_priv; in ath10k_tx_h_seq_no() local 85 if (arvif->tx_seq_no == 0) in ath10k_tx_h_seq_no() 86 arvif->tx_seq_no = 0x1000; in ath10k_tx_h_seq_no() 89 arvif->tx_seq_no += 0x10; in ath10k_tx_h_seq_no() 91 hdr->seq_ctrl |= cpu_to_le16(arvif->tx_seq_no); in ath10k_tx_h_seq_no()
|
| H A D | spectral.c | 163 struct ath10k_vif *arvif; in ath10k_get_spectral_vdev() local 171 list_for_each_entry(arvif, &ar->arvifs, list) in ath10k_get_spectral_vdev() 172 if (arvif->spectral_enabled) in ath10k_get_spectral_vdev() 173 return arvif; in ath10k_get_spectral_vdev() 176 return list_first_entry(&ar->arvifs, typeof(*arvif), list); in ath10k_get_spectral_vdev() 181 struct ath10k_vif *arvif; in ath10k_spectral_scan_trigger() local 187 arvif = ath10k_get_spectral_vdev(ar); in ath10k_spectral_scan_trigger() 188 if (!arvif) in ath10k_spectral_scan_trigger() 190 vdev_id = arvif->vdev_id; in ath10k_spectral_scan_trigger() 214 struct ath10k_vif *arvif; in ath10k_spectral_scan_config() local [all …]
|
| H A D | spectral.h | 43 int ath10k_spectral_vif_stop(struct ath10k_vif *arvif); 63 static inline int ath10k_spectral_vif_stop(struct ath10k_vif *arvif) in ath10k_spectral_vif_stop() argument
|
| H A D | p2p.h | 12 void ath10k_p2p_noa_update(struct ath10k_vif *arvif,
|
| H A D | wmi.c | 1860 static void ath10k_wmi_tx_beacon_nowait(struct ath10k_vif *arvif) in ath10k_wmi_tx_beacon_nowait() argument 1862 struct ath10k *ar = arvif->ar; in ath10k_wmi_tx_beacon_nowait() 1871 bcn = arvif->beacon; in ath10k_wmi_tx_beacon_nowait() 1878 switch (arvif->beacon_state) { in ath10k_wmi_tx_beacon_nowait() 1883 arvif->beacon_state = ATH10K_BEACON_SENDING; in ath10k_wmi_tx_beacon_nowait() 1888 ret = ath10k_wmi_beacon_send_ref_nowait(arvif->ar, in ath10k_wmi_tx_beacon_nowait() 1889 arvif->vdev_id, in ath10k_wmi_tx_beacon_nowait() 1898 arvif->beacon_state = ATH10K_BEACON_SENT; in ath10k_wmi_tx_beacon_nowait() 1900 arvif->beacon_state = ATH10K_BEACON_SCHEDULED; in ath10k_wmi_tx_beacon_nowait() 1910 struct ath10k_vif *arvif = (void *)vif->drv_priv; in ath10k_wmi_tx_beacons_iter() local [all …]
|
| H A D | htt_rx.c | 1117 struct ath10k_vif *arvif; in ath10k_htt_rx_h_peer_channel() local 1145 arvif = ath10k_get_arvif(ar, peer->vdev_id); in ath10k_htt_rx_h_peer_channel() 1146 if (WARN_ON_ONCE(!arvif)) in ath10k_htt_rx_h_peer_channel() 1149 if (ath10k_mac_vif_chan(arvif->vif, &def)) in ath10k_htt_rx_h_peer_channel() 1158 struct ath10k_vif *arvif; in ath10k_htt_rx_h_vdev_channel() local 1163 list_for_each_entry(arvif, &ar->arvifs, list) { in ath10k_htt_rx_h_vdev_channel() 1164 if (arvif->vdev_id == vdev_id && in ath10k_htt_rx_h_vdev_channel() 1165 ath10k_mac_vif_chan(arvif->vif, &def) == 0) in ath10k_htt_rx_h_vdev_channel() 3074 struct ath10k_vif *arvif; in ath10k_htt_rx_addba() local 3094 arvif = ath10k_get_arvif(ar, peer->vdev_id); in ath10k_htt_rx_addba() [all …]
|
| /linux/drivers/net/wireless/ath/ath12k/ |
| H A D | mac.c | 264 struct ath12k_link_vif *arvif); 266 static int ath12k_mac_vdev_create(struct ath12k *ar, struct ath12k_link_vif *arvif); 267 static int ath12k_mac_vdev_delete(struct ath12k *ar, struct ath12k_link_vif *arvif); 633 ath12k_mac_get_tx_arvif(struct ath12k_link_vif *arvif, in ath12k_mac_get_tx_arvif() argument 637 struct ath12k *ar = arvif->ar; in ath12k_mac_get_tx_arvif() 653 static const u8 *ath12k_mac_get_tx_bssid(struct ath12k_link_vif *arvif) in ath12k_mac_get_tx_bssid() argument 657 struct ath12k *ar = arvif->ar; in ath12k_mac_get_tx_bssid() 661 link_conf = ath12k_mac_get_link_bss_conf(arvif); in ath12k_mac_get_tx_bssid() 665 arvif->link_id); in ath12k_mac_get_tx_bssid() 672 tx_arvif = ath12k_mac_get_tx_arvif(arvif, link_conf); in ath12k_mac_get_tx_bssid() [all …]
|
| H A D | wow.c | 104 static int ath12k_wow_vif_cleanup(struct ath12k_link_vif *arvif) in ath12k_wow_vif_cleanup() argument 106 struct ath12k *ar = arvif->ar; in ath12k_wow_vif_cleanup() 110 ret = ath12k_wmi_wow_add_wakeup_event(ar, arvif->vdev_id, i, 0); in ath12k_wow_vif_cleanup() 113 wow_wakeup_event(i), arvif->vdev_id, ret); in ath12k_wow_vif_cleanup() 119 ret = ath12k_wmi_wow_del_pattern(ar, arvif->vdev_id, i); in ath12k_wow_vif_cleanup() 122 i, arvif->vdev_id, ret); in ath12k_wow_vif_cleanup() 132 struct ath12k_link_vif *arvif; in ath12k_wow_cleanup() local 137 list_for_each_entry(arvif, &ar->arvifs, list) { in ath12k_wow_cleanup() 138 if (arvif != &arvif->ahvif->deflink) in ath12k_wow_cleanup() 141 ret = ath12k_wow_vif_cleanup(arvif); in ath12k_wow_cleanup() [all …]
|
| H A D | peer.c | 190 int ath12k_peer_create(struct ath12k *ar, struct ath12k_link_vif *arvif, in ath12k_peer_create() argument 194 struct ieee80211_vif *vif = ath12k_ahvif_to_vif(arvif->ahvif); in ath12k_peer_create() 195 struct ath12k_vif *ahvif = arvif->ahvif; in ath12k_peer_create() 198 u8 link_id = arvif->link_id; in ath12k_peer_create() 318 if (arvif->link_id < IEEE80211_MLD_MAX_NUM_LINKS) { in ath12k_peer_create() 321 arvif->vdev_id, sta, in ath12k_peer_create() 373 struct ath12k_link_vif *arvif; in ath12k_peer_mlo_link_peers_delete() local 401 arvif = wiphy_dereference(ah->hw->wiphy, ahvif->link[link_id]); in ath12k_peer_mlo_link_peers_delete() 403 if (!arvif || !arsta) in ath12k_peer_mlo_link_peers_delete() 406 ar = arvif->ar; in ath12k_peer_mlo_link_peers_delete() [all …]
|
| H A D | wmi.c | 780 int ath12k_wmi_mgmt_send(struct ath12k_link_vif *arvif, u32 buf_id, in ath12k_wmi_mgmt_send() argument 783 struct ath12k *ar = arvif->ar; in ath12k_wmi_mgmt_send() 788 struct ieee80211_vif *vif = ath12k_ahvif_to_vif(arvif->ahvif); in ath12k_wmi_mgmt_send() 796 u32 vdev_id = arvif->vdev_id; in ath12k_wmi_mgmt_send() 812 ab->hw_params->hw_ops->is_frame_link_agnostic(arvif, mgmt)) { in ath12k_wmi_mgmt_send() 2008 int ath12k_wmi_bcn_tmpl(struct ath12k_link_vif *arvif, in ath12k_wmi_bcn_tmpl() argument 2013 struct ath12k *ar = arvif->ar; in ath12k_wmi_bcn_tmpl() 2018 struct ath12k_vif *ahvif = arvif->ahvif; in ath12k_wmi_bcn_tmpl() 2020 u32 vdev_id = arvif->vdev_id; in ath12k_wmi_bcn_tmpl() 2028 conf = ath12k_mac_get_link_bss_conf(arvif); in ath12k_wmi_bcn_tmpl() [all …]
|
| H A D | dp.c | 335 struct ath12k_link_vif *arvif, in ath12k_dp_tx_get_bank_profile() argument 344 bank_config = ath12k_dp_arch_tx_get_vdev_bank_config(dp, arvif); in ath12k_dp_tx_get_bank_profile() 912 static void ath12k_dp_update_vdev_search(struct ath12k_link_vif *arvif) in ath12k_dp_update_vdev_search() argument 914 u8 link_id = arvif->link_id; in ath12k_dp_update_vdev_search() 915 struct ath12k_vif *ahvif = arvif->ahvif; in ath12k_dp_update_vdev_search() 920 switch (arvif->ahvif->vdev_type) { in ath12k_dp_update_vdev_search() 936 void ath12k_dp_vdev_tx_attach(struct ath12k *ar, struct ath12k_link_vif *arvif) in ath12k_dp_vdev_tx_attach() argument 939 struct ath12k_vif *ahvif = arvif->ahvif; in ath12k_dp_vdev_tx_attach() 940 u8 link_id = arvif->link_id; in ath12k_dp_vdev_tx_attach() 947 u32_encode_bits(arvif->vdev_id, in ath12k_dp_vdev_tx_attach() [all …]
|
| H A D | peer.h | 24 int ath12k_peer_create(struct ath12k *ar, struct ath12k_link_vif *arvif,
|
| H A D | dp.h | 395 struct ath12k_link_vif *arvif); 557 struct ath12k_link_vif *arvif) in ath12k_dp_arch_tx_get_vdev_bank_config() argument 559 return dp->ops->tx_get_vdev_bank_config(dp->ab, arvif); in ath12k_dp_arch_tx_get_vdev_bank_config() 683 void ath12k_dp_vdev_tx_attach(struct ath12k *ar, struct ath12k_link_vif *arvif);
|
| H A D | debugfs.c | 911 struct ath12k_link_vif *arvif; in ath12k_open_link_stats() local 930 arvif = rcu_dereference_protected(ahvif->link[link_id], in ath12k_open_link_stats() 933 spin_lock_bh(&arvif->link_stats_lock); in ath12k_open_link_stats() 934 linkstat = arvif->link_stats; in ath12k_open_link_stats() 935 spin_unlock_bh(&arvif->link_stats_lock); in ath12k_open_link_stats() 1338 struct ath12k_link_vif *arvif; in ath12k_open_bcn_stats() local 1356 list_for_each_entry(arvif, &ar->arvifs, list) { in ath12k_open_bcn_stats() 1357 if (!arvif->is_up) in ath12k_open_bcn_stats() 1360 param.vdev_id = arvif->vdev_id; in ath12k_open_bcn_stats()
|
| H A D | hw.h | 250 bool (*is_frame_link_agnostic)(struct ath12k_link_vif *arvif,
|
| H A D | core.h | 398 struct ath12k_link_vif *arvif; member 485 struct ath12k_link_vif *arvif; member 637 struct ath12k_link_vif *arvif; member
|
| H A D | dp_rx.c | 727 vdev_id = arsta->arvif->vdev_id; in ath12k_dp_rx_ampdu_start() 759 vdev_id = arsta->arvif->vdev_id; in ath12k_dp_rx_ampdu_stop() 795 int ath12k_dp_rx_peer_pn_replay_config(struct ath12k_link_vif *arvif, in ath12k_dp_rx_peer_pn_replay_config() argument 800 struct ath12k *ar = arvif->ar; in ath12k_dp_rx_peer_pn_replay_config() 819 peer = ath12k_dp_link_peer_find_by_vdev_and_addr(dp, arvif->vdev_id, in ath12k_dp_rx_peer_pn_replay_config()
|
| H A D | wmi.h | 6533 int ath12k_wmi_mgmt_send(struct ath12k_link_vif *arvif, u32 buf_id, 6537 int ath12k_wmi_bcn_tmpl(struct ath12k_link_vif *arvif, 6720 struct ath12k_link_vif *arvif, 6724 struct ath12k_link_vif *arvif, bool enable); 6726 struct ath12k_link_vif *arvif);
|
| /linux/drivers/net/wireless/ath/ath12k/wifi7/ |
| H A D | dp_tx.c | 106 int ath12k_wifi7_dp_tx(struct ath12k_pdev_dp *dp_pdev, struct ath12k_link_vif *arvif, in ath12k_wifi7_dp_tx() argument 122 struct ath12k_vif *ahvif = arvif->ahvif; in ath12k_wifi7_dp_tx() 173 dp_link_vif = ath12k_dp_vif_to_dp_link_vif(&ahvif->dp_vif, arvif->link_id); in ath12k_wifi7_dp_tx() 220 u32_encode_bits(arvif->nawds_enabled, in ath12k_wifi7_dp_tx() 235 else if (arvif->nawds_enabled && is_mcast && !ti.lookup_override) in ath12k_wifi7_dp_tx() 425 spin_lock_bh(&arvif->link_stats_lock); in ath12k_wifi7_dp_tx() 426 arvif->link_stats.tx_encap_type[ti.encap_type]++; in ath12k_wifi7_dp_tx() 427 arvif->link_stats.tx_encrypt_type[ti.encrypt_type]++; in ath12k_wifi7_dp_tx() 428 arvif->link_stats.tx_desc_type[ti.type]++; in ath12k_wifi7_dp_tx() 431 arvif->link_stats.tx_bcast_mcast++; in ath12k_wifi7_dp_tx() [all …]
|
| H A D | hw.c | 66 ath12k_wifi7_is_frame_link_agnostic_qcn9274(struct ath12k_link_vif *arvif, in ath12k_wifi7_is_frame_link_agnostic_qcn9274() argument 114 ath12k_wifi7_is_frame_link_agnostic_wcn7850(struct ath12k_link_vif *arvif, in ath12k_wifi7_is_frame_link_agnostic_wcn7850() argument 117 struct ieee80211_vif *vif = ath12k_ahvif_to_vif(arvif->ahvif); in ath12k_wifi7_is_frame_link_agnostic_wcn7850() 118 struct ath12k_hw *ah = ath12k_ar_to_ah(arvif->ar); in ath12k_wifi7_is_frame_link_agnostic_wcn7850() 119 struct ath12k_base *ab = arvif->ar->ab; in ath12k_wifi7_is_frame_link_agnostic_wcn7850() 138 return arvif->is_up && in ath12k_wifi7_is_frame_link_agnostic_wcn7850() 909 struct ath12k_link_vif *arvif = &ahvif->deflink; in ath12k_wifi7_mac_op_tx() local 960 arvif = rcu_dereference(ahvif->link[link_id]); in ath12k_wifi7_mac_op_tx() 961 if (!arvif || !arvif->ar) { in ath12k_wifi7_mac_op_tx() 968 ar = arvif->ar; in ath12k_wifi7_mac_op_tx() [all …]
|
| /linux/drivers/net/wireless/ath/ath11k/ |
| H A D | wmi.c | 1040 struct ath11k_vif *arvif; in ath11k_wmi_vdev_up() local 1044 arvif = ath11k_mac_get_arvif(ar, vdev_id); in ath11k_wmi_vdev_up() 1064 if (arvif && arvif->vif->type == NL80211_IFTYPE_STATION) { in ath11k_wmi_vdev_up() 1065 bss_conf = &arvif->vif->bss_conf; in ath11k_wmi_vdev_up() 1785 struct ath11k_vif *arvif = ath11k_mac_get_arvif(ar, vdev_id); in ath11k_wmi_bcn_tmpl() local 1787 if (!arvif) { in ath11k_wmi_bcn_tmpl() 1792 vif = arvif->vif; in ath11k_wmi_bcn_tmpl() 4107 struct ath11k_vif *arvif; in ath11k_wmi_obss_color_collision_event() local 4127 arvif = ath11k_mac_get_arvif_by_vdev_id(ab, ev->vdev_id); in ath11k_wmi_obss_color_collision_event() 4128 if (!arvif) { in ath11k_wmi_obss_color_collision_event() [all …]
|
| H A D | reg.c | 859 struct ath11k_vif *arvif; in ath11k_reg_get_ar_vdev_type() local 867 arvif = list_first_entry_or_null(&ar->arvifs, struct ath11k_vif, list); in ath11k_reg_get_ar_vdev_type() 868 if (arvif) in ath11k_reg_get_ar_vdev_type() 869 return arvif->vdev_type; in ath11k_reg_get_ar_vdev_type()
|
| H A D | cfr.c | 552 ret = ath11k_wmi_peer_set_cfr_capture_conf(ar, arsta->arvif->vdev_id, in ath11k_cfr_send_peer_cfr_capture_cmd() 557 arsta->arvif->vdev_id, peer_mac, ret); in ath11k_cfr_send_peer_cfr_capture_cmd()
|