]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
dmaengine: fsl-edma: Fix return code for unhandled interrupts
authorStefan Wahren <wahrenst@gmx.net>
Thu, 24 Apr 2025 11:48:29 +0000 (13:48 +0200)
committerVinod Koul <vkoul@kernel.org>
Wed, 14 May 2025 13:56:22 +0000 (14:56 +0100)
For fsl,imx93-edma4 two DMA channels share the same interrupt.
So in case fsl_edma3_tx_handler is called for the "wrong"
channel, the return code must be IRQ_NONE. This signalize that
the interrupt wasn't handled.

Fixes: 72f5801a4e2b ("dmaengine: fsl-edma: integrate v3 support")
Signed-off-by: Stefan Wahren <wahrenst@gmx.net>
Reviewed-by: Joy Zou <joy.zou@nxp.com>
Link: https://lore.kernel.org/r/20250424114829.9055-1-wahrenst@gmx.net
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/fsl-edma-main.c

index 756d67325db5268c082e23bd4997a2f656f945a3..66bfa28d984e1b8799ba74c3541e3c2370b2bd5c 100644 (file)
@@ -57,7 +57,7 @@ static irqreturn_t fsl_edma3_tx_handler(int irq, void *dev_id)
 
        intr = edma_readl_chreg(fsl_chan, ch_int);
        if (!intr)
-               return IRQ_HANDLED;
+               return IRQ_NONE;
 
        edma_writel_chreg(fsl_chan, 1, ch_int);