]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
pinctrl: renesas: rza2: Use new GPIO line value setter callbacks
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Wed, 11 Jun 2025 07:27:56 +0000 (09:27 +0200)
committerGeert Uytterhoeven <geert+renesas@glider.be>
Fri, 13 Jun 2025 09:25:54 +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-5-ad169a794ef0@linaro.org
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
drivers/pinctrl/renesas/pinctrl-rza2.c

index 3b58129638500eef61058e43e49e6f39fde3cb4e..7a0b268d3eb91a42911f372e66805291344f8750 100644 (file)
@@ -172,8 +172,7 @@ static int rza2_chip_get(struct gpio_chip *chip, unsigned int offset)
        return !!(readb(priv->base + RZA2_PIDR(port)) & BIT(pin));
 }
 
-static void rza2_chip_set(struct gpio_chip *chip, unsigned int offset,
-                         int value)
+static int rza2_chip_set(struct gpio_chip *chip, unsigned int offset, int value)
 {
        struct rza2_pinctrl_priv *priv = gpiochip_get_data(chip);
        u8 port = RZA2_PIN_ID_TO_PORT(offset);
@@ -188,6 +187,8 @@ static void rza2_chip_set(struct gpio_chip *chip, unsigned int offset,
                new_value &= ~BIT(pin);
 
        writeb(new_value, priv->base + RZA2_PODR(port));
+
+       return 0;
 }
 
 static int rza2_chip_direction_output(struct gpio_chip *chip,
@@ -236,7 +237,7 @@ static struct gpio_chip chip = {
        .direction_input = rza2_chip_direction_input,
        .direction_output = rza2_chip_direction_output,
        .get = rza2_chip_get,
-       .set = rza2_chip_set,
+       .set_rv = rza2_chip_set,
 };
 
 static int rza2_gpio_register(struct rza2_pinctrl_priv *priv)