Commit 97c9b59f authored by Bartosz Golaszewski's avatar Bartosz Golaszewski
Browse files

gpio: max77650: 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-11-bc4cfd38dae3@linaro.org


Signed-off-by: default avatarBartosz Golaszewski <bartosz.golaszewski@linaro.org>
parent 468eae41
Loading
Loading
Loading
Loading
+6 −8
Original line number Diff line number Diff line
@@ -62,18 +62,16 @@ static int max77650_gpio_direction_output(struct gpio_chip *gc,
				  MAX77650_REG_CNFG_GPIO, mask, regval);
}

static void max77650_gpio_set_value(struct gpio_chip *gc,
static int max77650_gpio_set_value(struct gpio_chip *gc,
				   unsigned int offset, int value)
{
	struct max77650_gpio_chip *chip = gpiochip_get_data(gc);
	int rv, regval;
	int regval;

	regval = value ? MAX77650_GPIO_OUT_HIGH : MAX77650_GPIO_OUT_LOW;

	rv = regmap_update_bits(chip->map, MAX77650_REG_CNFG_GPIO,
	return regmap_update_bits(chip->map, MAX77650_REG_CNFG_GPIO,
				  MAX77650_GPIO_OUTVAL_MASK, regval);
	if (rv)
		dev_err(gc->parent, "cannot set GPIO value: %d\n", rv);
}

static int max77650_gpio_get_value(struct gpio_chip *gc,
@@ -168,7 +166,7 @@ static int max77650_gpio_probe(struct platform_device *pdev)

	chip->gc.direction_input = max77650_gpio_direction_input;
	chip->gc.direction_output = max77650_gpio_direction_output;
	chip->gc.set = max77650_gpio_set_value;
	chip->gc.set_rv = max77650_gpio_set_value;
	chip->gc.get = max77650_gpio_get_value;
	chip->gc.get_direction = max77650_gpio_get_direction;
	chip->gc.set_config = max77650_gpio_set_config;