]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
gpio: davinci: use value returning setters
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Thu, 20 Feb 2025 09:57:11 +0000 (10:57 +0100)
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Wed, 26 Feb 2025 10:17:40 +0000 (11:17 +0100)
struct gpio_chip now has additional variants of the set(_multiple)
driver callbacks that return an integer to indicate success or failure.
Convert the driver to using them.

Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com>
Link: https://lore.kernel.org/r/20250220-gpio-set-retval-v2-14-bc4cfd38dae3@linaro.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
drivers/gpio/gpio-davinci.c

index 8c033e8cf3c98d98b9fa25904d52026c931c0f44..63fc7888c1d42d25b0d88301eb7aaf9ad7b431e7 100644 (file)
@@ -139,7 +139,7 @@ static int davinci_gpio_get(struct gpio_chip *chip, unsigned offset)
 /*
  * Assuming the pin is muxed as a gpio output, set its output value.
  */
-static void
+static int
 davinci_gpio_set(struct gpio_chip *chip, unsigned offset, int value)
 {
        struct davinci_gpio_controller *d = gpiochip_get_data(chip);
@@ -150,6 +150,8 @@ davinci_gpio_set(struct gpio_chip *chip, unsigned offset, int value)
 
        writel_relaxed(__gpio_mask(offset),
                       value ? &g->set_data : &g->clr_data);
+
+       return 0;
 }
 
 static int davinci_gpio_probe(struct platform_device *pdev)
@@ -209,7 +211,7 @@ static int davinci_gpio_probe(struct platform_device *pdev)
        chips->chip.direction_input = davinci_direction_in;
        chips->chip.get = davinci_gpio_get;
        chips->chip.direction_output = davinci_direction_out;
-       chips->chip.set = davinci_gpio_set;
+       chips->chip.set_rv = davinci_gpio_set;
 
        chips->chip.ngpio = ngpio;
        chips->chip.base = -1;