Re: [PATCH v2 2/3] gpio: gpio-regmap: Use devm_add_action()

From: Andy Shevchenko
Date: Fri May 21 2021 - 06:11:00 EST


On Fri, May 21, 2021 at 12:54 PM Matti Vaittinen
<matti.vaittinen@xxxxxxxxxxxxxxxxx> wrote:
>
> Slightly simplify the devm_gpio_regmap_register() by using the
> devm_add_action().

Reviewed-by: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>

> Signed-off-by: Matti Vaittinen <matti.vaittinen@xxxxxxxxxxxxxxxxx>
> ---
> Changelog:
> - New patch at v2
>
> drivers/gpio/gpio-regmap.c | 20 ++++++--------------
> 1 file changed, 6 insertions(+), 14 deletions(-)
>
> diff --git a/drivers/gpio/gpio-regmap.c b/drivers/gpio/gpio-regmap.c
> index c05370e984b9..4555e59f916e 100644
> --- a/drivers/gpio/gpio-regmap.c
> +++ b/drivers/gpio/gpio-regmap.c
> @@ -341,9 +341,9 @@ void gpio_regmap_unregister(struct gpio_regmap *gpio)
> }
> EXPORT_SYMBOL_GPL(gpio_regmap_unregister);
>
> -static void devm_gpio_regmap_unregister(struct device *dev, void *res)
> +static void devm_gpio_regmap_unregister(void *res)
> {
> - gpio_regmap_unregister(*(struct gpio_regmap **)res);
> + gpio_regmap_unregister(res);
> }
>
> /**
> @@ -360,20 +360,12 @@ static void devm_gpio_regmap_unregister(struct device *dev, void *res)
> struct gpio_regmap *devm_gpio_regmap_register(struct device *dev,
> const struct gpio_regmap_config *config)
> {
> - struct gpio_regmap **ptr, *gpio;
> -
> - ptr = devres_alloc(devm_gpio_regmap_unregister, sizeof(*ptr),
> - GFP_KERNEL);
> - if (!ptr)
> - return ERR_PTR(-ENOMEM);
> + struct gpio_regmap *gpio;
>
> gpio = gpio_regmap_register(config);
> - if (!IS_ERR(gpio)) {
> - *ptr = gpio;
> - devres_add(dev, ptr);
> - } else {
> - devres_free(ptr);
> - }
> +
> + if (!IS_ERR(gpio))
> + devm_add_action(dev, devm_gpio_regmap_unregister, gpio);
>
> return gpio;
> }
> --
> 2.25.4
>
>
> --
> Matti Vaittinen, Linux device drivers
> ROHM Semiconductors, Finland SWDC
> Kiviharjunlenkki 1E
> 90220 OULU
> FINLAND
>
> ~~~ "I don't think so," said Rene Descartes. Just then he vanished ~~~
> Simon says - in Latin please.
> ~~~ "non cogito me" dixit Rene Descarte, deinde evanescavit ~~~
> Thanks to Simon Glass for the translation =]



--
With Best Regards,
Andy Shevchenko