Re: [PATCH 4/4] watchdog: aspeed: Propagate errors from optional IRQ lookup
Guenter Roeck <[email protected]>
| Newsgroups | org.ozlabs.lists.linux-aspeed,org.infradead.lists.linux-arm-kernel,org.infradead.lists.linux-mediatek,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-kernel,org.kernel.vger.linux-watchdog |
|---|---|
| Message-ID | <[email protected]> |
On Fri, Aug 07, 2026 at 03:16:52PM +0700, [email protected] wrote: > From: bui duc phuc <[email protected]> > > platform_get_irq_optional() returns a positive IRQ number on success or > a negative error code on failure. For an optional IRQ, -ENXIO indicates > that no IRQ is available, while other errors should be propagated. > > Propagate errors such as -EPROBE_DEFER and -EINVAL instead of continuing > probe without the IRQ. > > Signed-off-by: bui duc phuc <[email protected]> > --- > drivers/watchdog/aspeed_wdt.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/watchdog/aspeed_wdt.c b/drivers/watchdog/aspeed_wdt.c > index c9e79851504c..48454ac86074 100644 > --- a/drivers/watchdog/aspeed_wdt.c > +++ b/drivers/watchdog/aspeed_wdt.c > @@ -429,6 +429,8 @@ static int aspeed_wdt_probe(struct platform_device *pdev) > if (wdt->cfg->irq_mask) { > int irq = platform_get_irq_optional(pdev, 0); > > + if (irq < 0 && irq != -ENXIO) > + return irq; > if (irq > 0) { This if () is no longer needed. Thanks, Guenter > ret = devm_request_irq(dev, irq, aspeed_wdt_irq, > IRQF_SHARED, dev_name(dev),