From 5b0808fa4aa8c339a53ea05d4215a08d8f2df6b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20Cab=C3=A9?= Date: Thu, 19 Jun 2025 09:11:07 +0200 Subject: [PATCH] drivers: gpio: rzt2m: properly handle error from rzt2m_gpio_get_pin_irq MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit For the negative errno rzt2m_gpio_get_pin_irq may return to be properly handled, irq variable needs to use signed type. Signed-off-by: Benjamin Cabé --- drivers/gpio/gpio_rzt2m.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/gpio/gpio_rzt2m.c b/drivers/gpio/gpio_rzt2m.c index b4d0053cbb7..2bb347db43b 100644 --- a/drivers/gpio/gpio_rzt2m.c +++ b/drivers/gpio/gpio_rzt2m.c @@ -318,18 +318,17 @@ static int rzt2m_gpio_pin_interrupt_configure(const struct device *dev, gpio_pin return -ENOTSUP; } - uint8_t irq = rzt2m_gpio_get_pin_irq(dev, pin); - bool irq_used_by_other = rzt2m_gpio_is_irq_used_by_other_pin(dev, pin, irq); - + int irq = rzt2m_gpio_get_pin_irq(dev, pin); if (irq < 0) { return -ENOTSUP; } - /* secure range - currently not supported*/ if (irq >= NS_IRQ_COUNT) { return -ENOSYS; } + bool irq_used_by_other = rzt2m_gpio_is_irq_used_by_other_pin(dev, pin, irq); + if (mode == GPIO_INT_MODE_DISABLED) { rzt2m_gpio_unlock(); WRITE_BIT(*pmc_reg, pin, 0);