[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230724144108.2582917-1-ruanjinjie@huawei.com>
Date: Mon, 24 Jul 2023 14:41:08 +0000
From: Ruan Jinjie <ruanjinjie@...wei.com>
To: <linus.walleij@...aro.org>, <vkoul@...nel.org>,
<akpm@...ux-foundation.org>, <dan.j.williams@...el.com>,
<srinidhi.kasagar@...ricsson.com>,
<linux-arm-kernel@...ts.infradead.org>,
<dmaengine@...r.kernel.org>, <linux-kernel@...r.kernel.org>
CC: <ruanjinjie@...wei.com>
Subject: [PATCH -next] dmaengine: ste_dma40: Add missing IRQ check in d40_probe
From: ruanjinjie <ruanjinjie@...wei.com>
Check for the return value of platform_get_irq(): if no interrupt
is specified, it wouldn't make sense to call request_irq().
Fixes: 8d318a50b3d7 ("DMAENGINE: Support for ST-Ericssons DMA40 block v3")
Signed-off-by: Ruan Jinjie <ruanjinjie@...wei.com>
---
drivers/dma/ste_dma40.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/dma/ste_dma40.c b/drivers/dma/ste_dma40.c
index 825001bde42c..89e82508c133 100644
--- a/drivers/dma/ste_dma40.c
+++ b/drivers/dma/ste_dma40.c
@@ -3590,6 +3590,10 @@ static int __init d40_probe(struct platform_device *pdev)
spin_lock_init(&base->lcla_pool.lock);
base->irq = platform_get_irq(pdev, 0);
+ if (base->irq < 0) {
+ ret = base->irq;
+ goto destroy_cache;
+ }
ret = request_irq(base->irq, d40_handle_interrupt, 0, D40_NAME, base);
if (ret) {
--
2.34.1
Powered by blists - more mailing lists