2021-05-14 15:30:32

by Alexandru Ardelean

[permalink] [raw]
Subject: [PATCH] gpio: gpio-crystalcove: remove platform_set_drvdata() + cleanup probe

The platform_set_drvdata() call is only useful if we need to retrieve back
the private information.
Since the driver doesn't do that, it's not useful to have it.

If this is removed, we can also just do a direct return on
devm_gpiochip_add_data(). We don't need to print that this call failed as
there are other ways to log/see this during probe.

Signed-off-by: Alexandru Ardelean <[email protected]>
---
drivers/gpio/gpio-crystalcove.c | 10 +---------
1 file changed, 1 insertion(+), 9 deletions(-)

diff --git a/drivers/gpio/gpio-crystalcove.c b/drivers/gpio/gpio-crystalcove.c
index 2ba225720086..5a909f3c79e8 100644
--- a/drivers/gpio/gpio-crystalcove.c
+++ b/drivers/gpio/gpio-crystalcove.c
@@ -339,8 +339,6 @@ static int crystalcove_gpio_probe(struct platform_device *pdev)
if (!cg)
return -ENOMEM;

- platform_set_drvdata(pdev, cg);
-
mutex_init(&cg->buslock);
cg->chip.label = KBUILD_MODNAME;
cg->chip.direction_input = crystalcove_gpio_dir_in;
@@ -372,13 +370,7 @@ static int crystalcove_gpio_probe(struct platform_device *pdev)
return retval;
}

- retval = devm_gpiochip_add_data(&pdev->dev, &cg->chip, cg);
- if (retval) {
- dev_warn(&pdev->dev, "add gpio chip error: %d\n", retval);
- return retval;
- }
-
- return 0;
+ return devm_gpiochip_add_data(&pdev->dev, &cg->chip, cg);
}

static struct platform_driver crystalcove_gpio_driver = {
--
2.31.1



2021-05-17 13:01:39

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH] gpio: gpio-crystalcove: remove platform_set_drvdata() + cleanup probe

On Fri, May 14, 2021 at 12:32:26PM +0300, Alexandru Ardelean wrote:
> The platform_set_drvdata() call is only useful if we need to retrieve back
> the private information.
> Since the driver doesn't do that, it's not useful to have it.
>
> If this is removed, we can also just do a direct return on
> devm_gpiochip_add_data(). We don't need to print that this call failed as
> there are other ways to log/see this during probe.

Pushed to my review and testing queue, thanks!

> Signed-off-by: Alexandru Ardelean <[email protected]>
> ---
> drivers/gpio/gpio-crystalcove.c | 10 +---------
> 1 file changed, 1 insertion(+), 9 deletions(-)
>
> diff --git a/drivers/gpio/gpio-crystalcove.c b/drivers/gpio/gpio-crystalcove.c
> index 2ba225720086..5a909f3c79e8 100644
> --- a/drivers/gpio/gpio-crystalcove.c
> +++ b/drivers/gpio/gpio-crystalcove.c
> @@ -339,8 +339,6 @@ static int crystalcove_gpio_probe(struct platform_device *pdev)
> if (!cg)
> return -ENOMEM;
>
> - platform_set_drvdata(pdev, cg);
> -
> mutex_init(&cg->buslock);
> cg->chip.label = KBUILD_MODNAME;
> cg->chip.direction_input = crystalcove_gpio_dir_in;
> @@ -372,13 +370,7 @@ static int crystalcove_gpio_probe(struct platform_device *pdev)
> return retval;
> }
>
> - retval = devm_gpiochip_add_data(&pdev->dev, &cg->chip, cg);
> - if (retval) {
> - dev_warn(&pdev->dev, "add gpio chip error: %d\n", retval);
> - return retval;
> - }
> -
> - return 0;
> + return devm_gpiochip_add_data(&pdev->dev, &cg->chip, cg);
> }
>
> static struct platform_driver crystalcove_gpio_driver = {
> --
> 2.31.1
>

--
With Best Regards,
Andy Shevchenko