[PATCH 06/10] pinctrl: amlogic-a4: use new GPIO line value setter callbacks

Xianwei Zhao xianwei.zhao at amlogic.com
Tue Apr 8 18:56:12 PDT 2025



On 2025/4/8 15:17, Bartosz Golaszewski wrote:
> [ EXTERNAL EMAIL ]
> 
> From: Bartosz Golaszewski <bartosz.golaszewski at linaro.org>
> 
> 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 at linaro.org>
> ---
>   drivers/pinctrl/meson/pinctrl-amlogic-a4.c | 8 ++++----
>   1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/pinctrl/meson/pinctrl-amlogic-a4.c b/drivers/pinctrl/meson/pinctrl-amlogic-a4.c
> index ee7bbc72f9b3..a76f266b4b94 100644
> --- a/drivers/pinctrl/meson/pinctrl-amlogic-a4.c
> +++ b/drivers/pinctrl/meson/pinctrl-amlogic-a4.c
> @@ -806,15 +806,15 @@ static int aml_gpio_direction_output(struct gpio_chip *chip, unsigned int gpio,
>                                    value ? BIT(bit) : 0);
>   }
> 
> -static void aml_gpio_set(struct gpio_chip *chip, unsigned int gpio, int value)
> +static int aml_gpio_set(struct gpio_chip *chip, unsigned int gpio, int value)
>   {
>          struct aml_gpio_bank *bank = gpiochip_get_data(chip);
>          unsigned int bit, reg;
> 
>          aml_gpio_calc_reg_and_bit(bank, AML_REG_OUT, gpio, &reg, &bit);
> 
> -       regmap_update_bits(bank->reg_gpio, reg, BIT(bit),
> -                          value ? BIT(bit) : 0);
> +       return regmap_update_bits(bank->reg_gpio, reg, BIT(bit),
> +                                 value ? BIT(bit) : 0);
>   }
> 
>   static int aml_gpio_get(struct gpio_chip *chip, unsigned int gpio)
> @@ -832,7 +832,7 @@ static const struct gpio_chip aml_gpio_template = {
>          .request                = gpiochip_generic_request,
>          .free                   = gpiochip_generic_free,
>          .set_config             = gpiochip_generic_config,
> -       .set                    = aml_gpio_set,
> +       .set_rv                 = aml_gpio_set,
>          .get                    = aml_gpio_get,
>          .direction_input        = aml_gpio_direction_input,
>          .direction_output       = aml_gpio_direction_output,
> 
> --
> 2.45.2
> 
Reviewed-by: Xianwei Zhao <xianwei.zhao at amlogic.com>



More information about the linux-amlogic mailing list