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