Linux Audio

Check our new training course

Loading...
v6.8
 1/* SPDX-License-Identifier: BSD-3-Clause-Clear */
 2/*
 3 * Copyright (c) 2018-2019 The Linux Foundation. All rights reserved.
 4 * Copyright (c) 2021, 2023 Qualcomm Innovation Center, Inc. All rights reserved.
 5 */
 6
 7#ifndef ATH11K_DP_TX_H
 8#define ATH11K_DP_TX_H
 9
10#include "core.h"
11#include "hal_tx.h"
12
13struct ath11k_dp_htt_wbm_tx_status {
14	u32 msdu_id;
15	bool acked;
16	int ack_rssi;
17	u16 peer_id;
18};
19
20void ath11k_dp_tx_update_txcompl(struct ath11k *ar, struct hal_tx_status *ts);
21int ath11k_dp_tx_htt_h2t_ver_req_msg(struct ath11k_base *ab);
22int ath11k_dp_tx(struct ath11k *ar, struct ath11k_vif *arvif,
23		 struct ath11k_sta *arsta, struct sk_buff *skb);
24void ath11k_dp_tx_completion_handler(struct ath11k_base *ab, int ring_id);
25int ath11k_dp_tx_send_reo_cmd(struct ath11k_base *ab, struct dp_rx_tid *rx_tid,
26			      enum hal_reo_cmd_type type,
27			      struct ath11k_hal_reo_cmd *cmd,
28			      void (*func)(struct ath11k_dp *, void *,
29					   enum hal_reo_cmd_status));
30
31int ath11k_dp_tx_htt_h2t_ppdu_stats_req(struct ath11k *ar, u32 mask);
32int
33ath11k_dp_tx_htt_h2t_ext_stats_req(struct ath11k *ar, u8 type,
34				   struct htt_ext_stats_cfg_params *cfg_params,
35				   u64 cookie);
36int ath11k_dp_tx_htt_monitor_mode_ring_config(struct ath11k *ar, bool reset);
37
38int ath11k_dp_tx_htt_rx_filter_setup(struct ath11k_base *ab, u32 ring_id,
39				     int mac_id, enum hal_ring_type ring_type,
40				     int rx_buf_size,
41				     struct htt_rx_ring_tlv_filter *tlv_filter);
42
43int ath11k_dp_tx_htt_rx_full_mon_setup(struct ath11k_base *ab, int mac_id,
44				       bool config);
45#endif
v6.2
 1/* SPDX-License-Identifier: BSD-3-Clause-Clear */
 2/*
 3 * Copyright (c) 2018-2019 The Linux Foundation. All rights reserved.
 
 4 */
 5
 6#ifndef ATH11K_DP_TX_H
 7#define ATH11K_DP_TX_H
 8
 9#include "core.h"
10#include "hal_tx.h"
11
12struct ath11k_dp_htt_wbm_tx_status {
13	u32 msdu_id;
14	bool acked;
15	int ack_rssi;
 
16};
17
18void ath11k_dp_tx_update_txcompl(struct ath11k *ar, struct hal_tx_status *ts);
19int ath11k_dp_tx_htt_h2t_ver_req_msg(struct ath11k_base *ab);
20int ath11k_dp_tx(struct ath11k *ar, struct ath11k_vif *arvif,
21		 struct ath11k_sta *arsta, struct sk_buff *skb);
22void ath11k_dp_tx_completion_handler(struct ath11k_base *ab, int ring_id);
23int ath11k_dp_tx_send_reo_cmd(struct ath11k_base *ab, struct dp_rx_tid *rx_tid,
24			      enum hal_reo_cmd_type type,
25			      struct ath11k_hal_reo_cmd *cmd,
26			      void (*func)(struct ath11k_dp *, void *,
27					   enum hal_reo_cmd_status));
28
29int ath11k_dp_tx_htt_h2t_ppdu_stats_req(struct ath11k *ar, u32 mask);
30int
31ath11k_dp_tx_htt_h2t_ext_stats_req(struct ath11k *ar, u8 type,
32				   struct htt_ext_stats_cfg_params *cfg_params,
33				   u64 cookie);
34int ath11k_dp_tx_htt_monitor_mode_ring_config(struct ath11k *ar, bool reset);
35
36int ath11k_dp_tx_htt_rx_filter_setup(struct ath11k_base *ab, u32 ring_id,
37				     int mac_id, enum hal_ring_type ring_type,
38				     int rx_buf_size,
39				     struct htt_rx_ring_tlv_filter *tlv_filter);
40
41int ath11k_dp_tx_htt_rx_full_mon_setup(struct ath11k_base *ab, int mac_id,
42				       bool config);
43#endif