Linux wireless drivers development
 help / color / mirror / Atom feed
* [RESEND PATCH 0/2] genirq/ath12k: fallback to threaded NAPI when IRQ affinity is unavailable
@ 2026-05-19  1:16 Hangtian Zhu
  2026-05-19  1:16 ` [RESEND PATCH 1/2] genirq: export irq_can_set_affinity() for module drivers Hangtian Zhu
  2026-05-19  1:16 ` [RESEND PATCH 2/2] wifi: ath12k: enable threaded NAPI when DP IRQ affinity is unavailable Hangtian Zhu
  0 siblings, 2 replies; 6+ messages in thread
From: Hangtian Zhu @ 2026-05-19  1:16 UTC (permalink / raw)
  To: tglx, jjohnson; +Cc: linux-wireless, ath12k, linux-kernel

This series improves ath12k datapath behavior on platforms where the
effective IRQ path for WLAN MSI interrupts does not support affinity
setting.

In such setups, DP processing cannot be distributed as intended and can
become CPU-constrained. The ath12k change switches to threaded NAPI when
runtime IRQ capability indicates affinity is unavailable.

Patch 1 exports irq_can_set_affinity() for module drivers so they can
reuse the IRQ core helper instead of open-coding equivalent checks.

Patch 2 uses irq_can_set_affinity() in ath12k PCI to enable threaded NAPI
for DP interrupt groups only when affinity cannot be set.

On RB3Gen2 with QCC2072, EHT160 UDP downlink throughput improved from
802 Mbps to 2.58 Gbps after enabling threaded NAPI.

Tested-on: QCC2072 hw1.0 PCI WLAN.COL.1.0.c2-00074-QCACOLSWPL_V1_TO_SILICONZ-1

Thanks,
Hangtian Zhu

Hangtian Zhu (2):
  genirq: export irq_can_set_affinity() for module drivers
  wifi: ath12k: enable threaded NAPI when DP IRQ affinity is unavailable

 drivers/net/wireless/ath/ath12k/pci.c | 11 ++++++++++-
 kernel/irq/manage.c                   |  1 +
 2 files changed, 11 insertions(+), 1 deletion(-)


base-commit: db17e958184be9fe2b6242b7c5b7b261c0ce7110
-- 
2.25.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-05-20 16:00 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-19  1:16 [RESEND PATCH 0/2] genirq/ath12k: fallback to threaded NAPI when IRQ affinity is unavailable Hangtian Zhu
2026-05-19  1:16 ` [RESEND PATCH 1/2] genirq: export irq_can_set_affinity() for module drivers Hangtian Zhu
2026-05-19 14:30   ` Thomas Gleixner
2026-05-20  2:42     ` Hangtian Zhu
2026-05-20 16:00       ` Jeff Johnson
2026-05-19  1:16 ` [RESEND PATCH 2/2] wifi: ath12k: enable threaded NAPI when DP IRQ affinity is unavailable Hangtian Zhu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox