]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
pinctrl: st: use new GPIO line value setter callbacks
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Thu, 12 Jun 2025 13:15:11 +0000 (15:15 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Wed, 18 Jun 2025 12:08:37 +0000 (14:08 +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>
Link: https://lore.kernel.org/20250612-gpiochip-set-rv-pinctrl-remaining-v1-2-556b0a530cd4@linaro.org
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/pinctrl-st.c

index fe2d52e434db8cdc03d61ef3f4df95cbcc9c513e..fb5d72a6826ed730f5a10a817e9a46f9fe319b5b 100644 (file)
@@ -711,10 +711,12 @@ static int st_gpio_get(struct gpio_chip *chip, unsigned offset)
        return !!(readl(bank->base + REG_PIO_PIN) & BIT(offset));
 }
 
-static void st_gpio_set(struct gpio_chip *chip, unsigned offset, int value)
+static int st_gpio_set(struct gpio_chip *chip, unsigned int offset, int value)
 {
        struct st_gpio_bank *bank = gpiochip_get_data(chip);
        __st_gpio_set(bank, offset, value);
+
+       return 0;
 }
 
 static int st_gpio_direction_output(struct gpio_chip *chip,
@@ -1470,7 +1472,7 @@ static const struct gpio_chip st_gpio_template = {
        .request                = gpiochip_generic_request,
        .free                   = gpiochip_generic_free,
        .get                    = st_gpio_get,
-       .set                    = st_gpio_set,
+       .set_rv                 = st_gpio_set,
        .direction_input        = pinctrl_gpio_direction_input,
        .direction_output       = st_gpio_direction_output,
        .get_direction          = st_gpio_get_direction,