1
0

0063-wifi-ath11k-Prevent-REO-cmd-failures.patch 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. From a8ae833657a45746debde85c38bb7f070d344026 Mon Sep 17 00:00:00 2001
  2. From: Harshitha Prem <quic_hprem@quicinc.com>
  3. Date: Mon, 17 Apr 2023 13:35:01 +0300
  4. Subject: [PATCH] wifi: ath11k: Prevent REO cmd failures
  5. Prevent REO cmd failures causing double free by increasing REO cmd
  6. ring size and moving REO status ring mask to IRQ group 3 from group
  7. 0 to separate from tx completion ring on IRQ group 0 which may delay
  8. reo status processing.
  9. Tested-on: QCN9074 hw1.0 PCI WLAN.HK.2.7.0.1-01744-QCAHKSWPL_SILICONZ-1
  10. Tested-on: IPQ8074 hw2.0 AHB WLAN.HK.2.7.0.1-01744-QCAHKSWPL_SILICONZ-1
  11. Signed-off-by: Sathishkumar Muruganandam <quic_murugana@quicinc.com>
  12. Signed-off-by: Harshitha Prem <quic_hprem@quicinc.com>
  13. Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
  14. Link: https://lore.kernel.org/r/20230403182420.23375-3-quic_hprem@quicinc.com
  15. ---
  16. drivers/net/wireless/ath/ath11k/dp.h | 2 +-
  17. drivers/net/wireless/ath/ath11k/hw.c | 1 +
  18. 2 files changed, 2 insertions(+), 1 deletion(-)
  19. --- a/drivers/net/wireless/ath/ath11k/dp.h
  20. +++ b/drivers/net/wireless/ath/ath11k/dp.h
  21. @@ -214,7 +214,7 @@ struct ath11k_pdev_dp {
  22. #define DP_REO_REINJECT_RING_SIZE 32
  23. #define DP_RX_RELEASE_RING_SIZE 1024
  24. #define DP_REO_EXCEPTION_RING_SIZE 128
  25. -#define DP_REO_CMD_RING_SIZE 128
  26. +#define DP_REO_CMD_RING_SIZE 256
  27. #define DP_REO_STATUS_RING_SIZE 2048
  28. #define DP_RXDMA_BUF_RING_SIZE 4096
  29. #define DP_RXDMA_REFILL_RING_SIZE 2048
  30. --- a/drivers/net/wireless/ath/ath11k/hw.c
  31. +++ b/drivers/net/wireless/ath/ath11k/hw.c
  32. @@ -1233,6 +1233,7 @@ const struct ath11k_hw_ring_mask ath11k_
  33. ATH11K_RX_WBM_REL_RING_MASK_0,
  34. },
  35. .reo_status = {
  36. + 0, 0, 0,
  37. ATH11K_REO_STATUS_RING_MASK_0,
  38. },
  39. .rxdma2host = {