summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbui duc phuc <phucduc.bui@gmail.com>2026-08-07 15:16:52 +0700
committerGuenter Roeck <linux@roeck-us.net>2026-08-10 09:00:05 -0700
commit1f3c3fa76ddbc2eb92b60c5d4db24d7f702a7811 (patch)
treefa1e60029a1a1eecabda279f83b7d62709e02b46
parent553edb793e5be81a0d9bdb7b5aa2f9f1e0eb237b (diff)
downloadlinux-1f3c3fa76ddbc2eb92b60c5d4db24d7f702a7811.tar.gz
linux-1f3c3fa76ddbc2eb92b60c5d4db24d7f702a7811.zip
watchdog: aspeed: Propagate errors from optional IRQ lookup
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 <phucduc.bui@gmail.com> Link: https://lore.kernel.org/r/20260807081652.38692-4-phucduc.bui@gmail.com Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-rw-r--r--drivers/watchdog/aspeed_wdt.c2
1 files changed, 2 insertions, 0 deletions
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) {
ret = devm_request_irq(dev, irq, aspeed_wdt_irq,
IRQF_SHARED, dev_name(dev),