1 /* SPDX-License-Identifier: BSD-3-Clause-Clear */
3 * Copyright (c) 2018-2021 The Linux Foundation. All rights reserved.
4 * Copyright (c) 2021-2024 Qualcomm Innovation Center, Inc. All rights reserved.
12 struct ppdu_user_delayba
{
23 struct list_head list
;
24 struct ieee80211_sta
*sta
;
32 /* protected by ab->data_lock */
33 struct ieee80211_key_conf
*keys
[WMI_MAX_KEY_INDEX
+ 1];
34 struct ath12k_dp_rx_tid rx_tid
[IEEE80211_NUM_TIDS
+ 1];
36 /* Info used in MMIC verification of
39 struct crypto_shash
*tfm_mmic
;
44 struct ppdu_user_delayba ppdu_stats_delayba
;
48 /* protected by ab->data_lock */
52 void ath12k_peer_unmap_event(struct ath12k_base
*ab
, u16 peer_id
);
53 void ath12k_peer_map_event(struct ath12k_base
*ab
, u8 vdev_id
, u16 peer_id
,
54 u8
*mac_addr
, u16 ast_hash
, u16 hw_peer_id
);
55 struct ath12k_peer
*ath12k_peer_find(struct ath12k_base
*ab
, int vdev_id
,
57 struct ath12k_peer
*ath12k_peer_find_by_addr(struct ath12k_base
*ab
,
59 struct ath12k_peer
*ath12k_peer_find_by_id(struct ath12k_base
*ab
, int peer_id
);
60 void ath12k_peer_cleanup(struct ath12k
*ar
, u32 vdev_id
);
61 int ath12k_peer_delete(struct ath12k
*ar
, u32 vdev_id
, u8
*addr
);
62 int ath12k_peer_create(struct ath12k
*ar
, struct ath12k_link_vif
*arvif
,
63 struct ieee80211_sta
*sta
,
64 struct ath12k_wmi_peer_create_arg
*arg
);
65 int ath12k_wait_for_peer_delete_done(struct ath12k
*ar
, u32 vdev_id
,
67 bool ath12k_peer_exist_by_vdev_id(struct ath12k_base
*ab
, int vdev_id
);
68 struct ath12k_peer
*ath12k_peer_find_by_ast(struct ath12k_base
*ab
, int ast_hash
);