Lines Matching full:peer

8 #include "peer.h"
30 struct ath12k_peer *peer; in ath12k_peer_find() local
34 list_for_each_entry(peer, &ab->peers, list) { in ath12k_peer_find()
35 if (peer->vdev_id != vdev_id) in ath12k_peer_find()
37 if (!ether_addr_equal(peer->addr, addr)) in ath12k_peer_find()
40 return peer; in ath12k_peer_find()
49 struct ath12k_peer *peer; in ath12k_peer_find_by_pdev_idx() local
53 list_for_each_entry(peer, &ab->peers, list) { in ath12k_peer_find_by_pdev_idx()
54 if (peer->pdev_idx != pdev_idx) in ath12k_peer_find_by_pdev_idx()
56 if (!ether_addr_equal(peer->addr, addr)) in ath12k_peer_find_by_pdev_idx()
59 return peer; in ath12k_peer_find_by_pdev_idx()
68 struct ath12k_peer *peer; in ath12k_peer_find_by_addr() local
72 list_for_each_entry(peer, &ab->peers, list) { in ath12k_peer_find_by_addr()
73 if (!ether_addr_equal(peer->addr, addr)) in ath12k_peer_find_by_addr()
76 return peer; in ath12k_peer_find_by_addr()
85 struct ath12k_peer *peer; in ath12k_peer_find_by_ml_id() local
89 list_for_each_entry(peer, &ab->peers, list) in ath12k_peer_find_by_ml_id()
90 if (ml_peer_id == peer->ml_id) in ath12k_peer_find_by_ml_id()
91 return peer; in ath12k_peer_find_by_ml_id()
99 struct ath12k_peer *peer; in ath12k_peer_find_by_id() local
106 list_for_each_entry(peer, &ab->peers, list) in ath12k_peer_find_by_id()
107 if (peer_id == peer->peer_id) in ath12k_peer_find_by_id()
108 return peer; in ath12k_peer_find_by_id()
115 struct ath12k_peer *peer; in ath12k_peer_exist_by_vdev_id() local
119 list_for_each_entry(peer, &ab->peers, list) { in ath12k_peer_exist_by_vdev_id()
120 if (vdev_id == peer->vdev_id) { in ath12k_peer_exist_by_vdev_id()
132 struct ath12k_peer *peer; in ath12k_peer_find_by_ast() local
136 list_for_each_entry(peer, &ab->peers, list) in ath12k_peer_find_by_ast()
137 if (ast_hash == peer->ast_hash) in ath12k_peer_find_by_ast()
138 return peer; in ath12k_peer_find_by_ast()
145 struct ath12k_peer *peer; in ath12k_peer_unmap_event() local
149 peer = ath12k_peer_find_by_id(ab, peer_id); in ath12k_peer_unmap_event()
150 if (!peer) { in ath12k_peer_unmap_event()
151 ath12k_warn(ab, "peer-unmap-event: unknown peer id %d\n", in ath12k_peer_unmap_event()
156 ath12k_dbg(ab, ATH12K_DBG_DP_HTT, "htt peer unmap vdev %d peer %pM id %d\n", in ath12k_peer_unmap_event()
157 peer->vdev_id, peer->addr, peer_id); in ath12k_peer_unmap_event()
159 list_del(&peer->list); in ath12k_peer_unmap_event()
160 kfree(peer); in ath12k_peer_unmap_event()
170 struct ath12k_peer *peer; in ath12k_peer_map_event() local
173 peer = ath12k_peer_find(ab, vdev_id, mac_addr); in ath12k_peer_map_event()
174 if (!peer) { in ath12k_peer_map_event()
175 peer = kzalloc(sizeof(*peer), GFP_ATOMIC); in ath12k_peer_map_event()
176 if (!peer) in ath12k_peer_map_event()
179 peer->vdev_id = vdev_id; in ath12k_peer_map_event()
180 peer->peer_id = peer_id; in ath12k_peer_map_event()
181 peer->ast_hash = ast_hash; in ath12k_peer_map_event()
182 peer->hw_peer_id = hw_peer_id; in ath12k_peer_map_event()
183 ether_addr_copy(peer->addr, mac_addr); in ath12k_peer_map_event()
184 list_add(&peer->list, &ab->peers); in ath12k_peer_map_event()
188 ath12k_dbg(ab, ATH12K_DBG_DP_HTT, "htt peer map vdev %d peer %pM id %d\n", in ath12k_peer_map_event()
219 struct ath12k_peer *peer, *tmp; in ath12k_peer_cleanup() local
225 list_for_each_entry_safe(peer, tmp, &ab->peers, list) { in ath12k_peer_cleanup()
226 if (peer->vdev_id != vdev_id) in ath12k_peer_cleanup()
229 ath12k_warn(ab, "removing stale peer %pM from vdev_id %d\n", in ath12k_peer_cleanup()
230 peer->addr, vdev_id); in ath12k_peer_cleanup()
232 list_del(&peer->list); in ath12k_peer_cleanup()
233 kfree(peer); in ath12k_peer_cleanup()
253 ath12k_warn(ar->ab, "failed wait for peer deleted"); in ath12k_wait_for_peer_delete_done()
260 ath12k_warn(ar->ab, "Timeout in receiving peer delete response\n"); in ath12k_wait_for_peer_delete_done()
279 "failed to delete peer vdev_id %d addr %pM ret %d\n", in ath12k_peer_delete_send()
318 struct ath12k_peer *peer; in ath12k_peer_create() local
327 "failed to create peer due to insufficient peer entry resource in firmware\n"); in ath12k_peer_create()
332 peer = ath12k_peer_find_by_pdev_idx(ar->ab, ar->pdev_idx, arg->peer_addr); in ath12k_peer_create()
333 if (peer) { in ath12k_peer_create()
342 "failed to send peer create vdev_id %d ret %d\n", in ath12k_peer_create()
354 peer = ath12k_peer_find(ar->ab, arg->vdev_id, arg->peer_addr); in ath12k_peer_create()
355 if (!peer) { in ath12k_peer_create()
357 ath12k_warn(ar->ab, "failed to find peer %pM on vdev %i after creation\n", in ath12k_peer_create()
365 ath12k_warn(ar->ab, "failed to delete peer vdev_id %d addr %pM\n", in ath12k_peer_create()
378 peer->pdev_idx = ar->pdev_idx; in ath12k_peer_create()
379 peer->sta = sta; in ath12k_peer_create()
382 arvif->ast_hash = peer->ast_hash; in ath12k_peer_create()
383 arvif->ast_idx = peer->hw_peer_id; in ath12k_peer_create()
391 peer->link_id = arsta->link_id; in ath12k_peer_create()
393 /* Fill ML info into created peer */ in ath12k_peer_create()
396 peer->ml_id = ml_peer_id | ATH12K_PEER_ML_ID_VALID; in ath12k_peer_create()
397 ether_addr_copy(peer->ml_addr, sta->addr); in ath12k_peer_create()
400 peer->primary_link = arsta->is_assoc_link; in ath12k_peer_create()
401 peer->mlo = true; in ath12k_peer_create()
403 peer->ml_id = ATH12K_MLO_PEER_ID_INVALID; in ath12k_peer_create()
404 peer->primary_link = true; in ath12k_peer_create()
405 peer->mlo = false; in ath12k_peer_create()
409 peer->sec_type = HAL_ENCRYPT_TYPE_OPEN; in ath12k_peer_create()
410 peer->sec_type_grp = HAL_ENCRYPT_TYPE_OPEN; in ath12k_peer_create()
451 ath12k_hw_warn(ah, "ML peer %d exists already, unable to add new entry for %pM", in ath12k_peer_ml_create()
463 ath12k_hw_warn(ah, "unable to allocate ML peer id for sta %pM", in ath12k_peer_ml_create()
491 ath12k_hw_warn(ah, "ML peer for %pM not found", sta->addr); in ath12k_peer_ml_delete()
518 * of peer unmap or delete responses in ath12k_peer_mlo_link_peers_delete()
536 "failed to delete peer vdev_id %d addr %pM ret %d\n", in ath12k_peer_mlo_link_peers_delete()