aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/pinctrl
diff options
context:
space:
mode:
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>2022-09-27 20:55:09 +0300
committerLinus Walleij <linus.walleij@linaro.org>2022-10-04 09:40:57 +0200
commitf4a31facfa80df2f440a2fdc2b7f58d6c23925b0 (patch)
tree649047204ecff7ab14872eb2a5ed8faf3e05cde5 /drivers/pinctrl
parentpinctrl: bcm: Remove unused struct bcm6328_pingroup (diff)
downloadwireguard-linux-f4a31facfa80df2f440a2fdc2b7f58d6c23925b0.tar.xz
wireguard-linux-f4a31facfa80df2f440a2fdc2b7f58d6c23925b0.zip
pinctrl: wpcm450: Correct the fwnode_irq_get() return value check
fwnode_irq_get() can return zero to indicate IRQ mapping errors. Handle this case by skipping the interrupt resource. Fixes: a1d1e0e3d80a ("pinctrl: nuvoton: Add driver for WPCM450") Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net> Link: https://lore.kernel.org/r/20220927175509.15695-1-andriy.shevchenko@linux.intel.com Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/pinctrl')
-rw-r--r--drivers/pinctrl/nuvoton/pinctrl-wpcm450.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/pinctrl/nuvoton/pinctrl-wpcm450.c b/drivers/pinctrl/nuvoton/pinctrl-wpcm450.c
index 0dbeb91f0bf2..8193b92da403 100644
--- a/drivers/pinctrl/nuvoton/pinctrl-wpcm450.c
+++ b/drivers/pinctrl/nuvoton/pinctrl-wpcm450.c
@@ -1081,10 +1081,13 @@ static int wpcm450_gpio_register(struct platform_device *pdev,
girq->num_parents = 0;
for (i = 0; i < WPCM450_NUM_GPIO_IRQS; i++) {
- int irq = fwnode_irq_get(child, i);
+ int irq;
+ irq = fwnode_irq_get(child, i);
if (irq < 0)
break;
+ if (!irq)
+ continue;
girq->parents[i] = irq;
girq->num_parents++;