From 98108710b65b07e2b2bb4c0e0727b9830709493b Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Mon, 13 Jul 2026 10:39:43 +0200 Subject: [PATCH] qualcommax: qca-edma: enable threaded NAPI by default Run the EDMA RX and TX NAPI poll loops in dedicated kernel threads by default. This allows the threads and their interrupts to be placed on separate CPUs and avoids overloading a single softirq context. If thread creation fails, dev_set_threaded() leaves NAPI in softirq mode and the driver reports the failure. Link: https://github.com/openwrt/openwrt/pull/24203 Signed-off-by: Robert Marko --- .../qualcommax/files/drivers/net/ethernet/qualcomm/qca_edma.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/target/linux/qualcommax/files/drivers/net/ethernet/qualcomm/qca_edma.c b/target/linux/qualcommax/files/drivers/net/ethernet/qualcomm/qca_edma.c index 37110d2f96b..a1b6b4ebffc 100644 --- a/target/linux/qualcommax/files/drivers/net/ethernet/qualcomm/qca_edma.c +++ b/target/linux/qualcommax/files/drivers/net/ethernet/qualcomm/qca_edma.c @@ -1191,6 +1191,10 @@ static int edma_probe(struct platform_device *pdev) goto err_irq; } + ret = dev_set_threaded(netdev, true); + if (ret) + dev_warn(dev, "failed to enable threaded NAPI: %d\n", ret); + platform_set_drvdata(pdev, priv); return 0; -- 2.47.3