This patchset covers optimizations in rx (first 7 patches) and tx (remaining 5 patches) data path. Running UDP DL/UL traffic on IPQ8074 5G radio showed an average 5-10% improvement on a 4 core platform --- v2: - Addressed internal developer reported segfault and avoid lookup twice by utilizing idr_remove (patch 12/12 and patch 2/12). --- P Praneesh (12): ath11k: disable unused CE8 interrupts for ipq8074 ath11k: allocate dst ring descriptors from cacheable memory ath11k: modify dp_rx desc access wrapper calls inline ath11k: avoid additional access to ath11k_hal_srng_dst_num_free ath11k: avoid active pdev check for each msdu ath11k: remove usage quota while processing rx packets ath11k: add branch predictors in process_rx ath11k: allocate HAL_WBM2SW_RELEASE ring from cacheable memory ath11k: remove mod operator in dst ring processing ath11k: avoid while loop in ring selection of tx completion interrupt ath11k: add branch predictors in dp_tx path ath11k: avoid unnecessary lock contention in tx_completion path drivers/net/wireless/ath/ath11k/ce.c | 2 +- drivers/net/wireless/ath/ath11k/core.c | 5 + drivers/net/wireless/ath/ath11k/dp.c | 48 ++++++-- drivers/net/wireless/ath/ath11k/dp.h | 1 + drivers/net/wireless/ath/ath11k/dp_rx.c | 205 ++++++++++++++++---------------- drivers/net/wireless/ath/ath11k/dp_tx.c | 76 ++++++------ drivers/net/wireless/ath/ath11k/hal.c | 35 +++++- drivers/net/wireless/ath/ath11k/hal.h | 1 + drivers/net/wireless/ath/ath11k/hw.h | 1 + drivers/net/wireless/ath/ath11k/mac.c | 2 +- 10 files changed, 219 insertions(+), 157 deletions(-) -- 2.7.4