summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/ath/ath11k/hal_tx.c
diff options
context:
space:
mode:
authorJohn Crispin <john@phrozen.org>2019-12-13 18:38:38 +0300
committerKalle Valo <kvalo@codeaurora.org>2019-12-18 20:39:59 +0300
commitd0998eb84ed3cc02c15f92b07223735ddbbe9b06 (patch)
tree986ca99cf9a78b0d8ff4779b85d05bbed9486f28 /drivers/net/wireless/ath/ath11k/hal_tx.c
parent8cfa7ef8127b00de1ce0275a85220c331fe9a4d0 (diff)
downloadlinux-d0998eb84ed3cc02c15f92b07223735ddbbe9b06.tar.xz
ath11k: optimise ath11k_dp_tx_completion_handler
the current code does 4 memcpys for each completion frame. 1) duplicate the desc 2 + 3) inside kfifo insertion 4) kfifo remove The code simply drops the kfifo and uses a trivial ring buffer. This requires a single memcpy for insertion. There is no removal needed as we can simply use the inserted data for processing. As the code runs inside the NAPI context it is atomic and there is no need for most of the locking. Signed-off-by: John Crispin <john@phrozen.org> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Diffstat (limited to 'drivers/net/wireless/ath/ath11k/hal_tx.c')
-rw-r--r--drivers/net/wireless/ath/ath11k/hal_tx.c13
1 files changed, 0 insertions, 13 deletions
diff --git a/drivers/net/wireless/ath/ath11k/hal_tx.c b/drivers/net/wireless/ath/ath11k/hal_tx.c
index c2a3a9d2e534..e8710bbbbc3a 100644
--- a/drivers/net/wireless/ath/ath11k/hal_tx.c
+++ b/drivers/net/wireless/ath/ath11k/hal_tx.c
@@ -74,19 +74,6 @@ void ath11k_hal_tx_cmd_desc_setup(struct ath11k_base *ab, void *cmd,
tcl_cmd->info4 = 0;
}
-/* Commit the descriptor to hardware */
-void ath11k_hal_tx_desc_sync(void *tx_desc_cached, void *hw_desc)
-{
- memcpy(hw_desc + sizeof(struct hal_tlv_hdr), tx_desc_cached,
- sizeof(struct hal_tcl_data_cmd));
-}
-
-/* Get the descriptor status from hardware */
-void ath11k_hal_tx_status_desc_sync(void *hw_desc, void *local_desc)
-{
- memcpy(local_desc, hw_desc, HAL_TX_STATUS_DESC_LEN);
-}
-
void ath11k_hal_tx_status_parse(struct ath11k_base *ab,
struct hal_wbm_release_ring *desc,
struct hal_tx_status *ts)