[PATCH 5/5] pinctrl: bcm: iproc-gpio: Propagate errors from optional IRQ lookup

From: phucduc . bui

Date: Mon Aug 10 2026 - 01:34:22 EST


From: bui duc phuc <phucduc.bui@xxxxxxxxx>

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 optional IRQ is available, while other errors should be propagated.

Propagate all error codes returned by platform_get_irq_optional() other
than -ENXIO.

Signed-off-by: bui duc phuc <phucduc.bui@xxxxxxxxx>
---
drivers/pinctrl/bcm/pinctrl-iproc-gpio.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/pinctrl/bcm/pinctrl-iproc-gpio.c b/drivers/pinctrl/bcm/pinctrl-iproc-gpio.c
index e20f7dc79d43..025476e251c2 100644
--- a/drivers/pinctrl/bcm/pinctrl-iproc-gpio.c
+++ b/drivers/pinctrl/bcm/pinctrl-iproc-gpio.c
@@ -873,6 +873,8 @@ static int iproc_gpio_probe(struct platform_device *pdev)

/* optional GPIO interrupt support */
irq = platform_get_irq_optional(pdev, 0);
+ if (irq < 0 && irq != -ENXIO)
+ return irq;
if (irq > 0) {
struct gpio_irq_chip *girq;

--
2.43.0