2022-04-22 21:39:23

by CGEL

[permalink] [raw]
Subject: [PATCH] pinctrl: fix error check return value of irq_of_parse_and_map()

From: Lv Ruyi <[email protected]>

The irq_of_parse_and_map() function returns 0 on failure, and does not
return an negative value.

Fixes: cefc03e5995e ("pinctrl: Add Pistachio SoC pin control driver")
Reported-by: Zeal Robot <[email protected]>
Signed-off-by: Lv Ruyi <[email protected]>
---
drivers/pinctrl/pinctrl-pistachio.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/pinctrl/pinctrl-pistachio.c b/drivers/pinctrl/pinctrl-pistachio.c
index 8d271c6b0ca4..ff34f9755368 100644
--- a/drivers/pinctrl/pinctrl-pistachio.c
+++ b/drivers/pinctrl/pinctrl-pistachio.c
@@ -1374,7 +1374,7 @@ static int pistachio_gpio_register(struct pistachio_pinctrl *pctl)
}

irq = irq_of_parse_and_map(child, 0);
- if (irq < 0) {
+ if (!irq) {
dev_err(pctl->dev, "No IRQ for bank %u: %d\n", i, irq);
of_node_put(child);
ret = irq;
--
2.25.1


2022-04-24 08:50:17

by CGEL

[permalink] [raw]
Subject: [PATCH v2] pinctrl: fix error check return value of irq_of_parse_and_map()

From: Lv Ruyi <[email protected]>

The irq_of_parse_and_map() function returns 0 on failure, and does not
return an negative value.

Fixes: cefc03e5995e ("pinctrl: Add Pistachio SoC pin control driver")
Reported-by: Zeal Robot <[email protected]>
Signed-off-by: Lv Ruyi <[email protected]>
---
v2: don't print irq, and return -EINVAL rather than 0
---
drivers/pinctrl/pinctrl-pistachio.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/pinctrl/pinctrl-pistachio.c b/drivers/pinctrl/pinctrl-pistachio.c
index 8d271c6b0ca4..5de691c630b4 100644
--- a/drivers/pinctrl/pinctrl-pistachio.c
+++ b/drivers/pinctrl/pinctrl-pistachio.c
@@ -1374,10 +1374,10 @@ static int pistachio_gpio_register(struct pistachio_pinctrl *pctl)
}

irq = irq_of_parse_and_map(child, 0);
- if (irq < 0) {
- dev_err(pctl->dev, "No IRQ for bank %u: %d\n", i, irq);
+ if (!irq) {
+ dev_err(pctl->dev, "No IRQ for bank %u\n", i);
of_node_put(child);
- ret = irq;
+ ret = -EINVAL;
goto err;
}

--
2.25.1

2022-04-25 09:28:49

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH v2] pinctrl: fix error check return value of irq_of_parse_and_map()

On Sun, Apr 24, 2022 at 5:14 AM <[email protected]> wrote:

> From: Lv Ruyi <[email protected]>
>
> The irq_of_parse_and_map() function returns 0 on failure, and does not
> return an negative value.
>
> Fixes: cefc03e5995e ("pinctrl: Add Pistachio SoC pin control driver")
> Reported-by: Zeal Robot <[email protected]>
> Signed-off-by: Lv Ruyi <[email protected]>
> ---
> v2: don't print irq, and return -EINVAL rather than 0

Patch applied for fixes (changed the subject a bit).

Thanks!
Linus Walleij