]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
pinctrl: renesas: rzv2m: Use new GPIO line value setter callbacks
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Wed, 11 Jun 2025 07:27:55 +0000 (09:27 +0200)
committerGeert Uytterhoeven <geert+renesas@glider.be>
Fri, 13 Jun 2025 09:25:51 +0000 (11:25 +0200)
struct gpio_chip now has callbacks for setting line values that return
an integer, allowing to indicate failures. Convert the driver to using
them.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Reviewed-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/20250611-gpiochip-set-rv-pinctrl-renesas-v1-4-ad169a794ef0@linaro.org
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
drivers/pinctrl/renesas/pinctrl-rzv2m.c

index 8c7169db4fcce6144d26b963dfd3b11bacd66d80..a17b68b4c466e2ca91cb26a713a088e309d5e167 100644 (file)
@@ -790,14 +790,16 @@ static int rzv2m_gpio_direction_input(struct gpio_chip *chip,
        return 0;
 }
 
-static void rzv2m_gpio_set(struct gpio_chip *chip, unsigned int offset,
-                          int value)
+static int rzv2m_gpio_set(struct gpio_chip *chip, unsigned int offset,
+                         int value)
 {
        struct rzv2m_pinctrl *pctrl = gpiochip_get_data(chip);
        u32 port = RZV2M_PIN_ID_TO_PORT(offset);
        u8 bit = RZV2M_PIN_ID_TO_PIN(offset);
 
        rzv2m_writel_we(pctrl->base + DO(port), bit, !!value);
+
+       return 0;
 }
 
 static int rzv2m_gpio_direction_output(struct gpio_chip *chip,
@@ -955,7 +957,7 @@ static int rzv2m_gpio_register(struct rzv2m_pinctrl *pctrl)
        chip->direction_input = rzv2m_gpio_direction_input;
        chip->direction_output = rzv2m_gpio_direction_output;
        chip->get = rzv2m_gpio_get;
-       chip->set = rzv2m_gpio_set;
+       chip->set_rv = rzv2m_gpio_set;
        chip->label = name;
        chip->parent = pctrl->dev;
        chip->owner = THIS_MODULE;