Commit f01436c2 authored by Bartosz Golaszewski's avatar Bartosz Golaszewski
Browse files

gpio: davinci: use value returning setters



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: default avatarLinus Walleij <linus.walleij@linaro.org>
Acked-by: default avatarUwe 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: default avatarBartosz Golaszewski <bartosz.golaszewski@linaro.org>
parent 4b28762c
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -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;