linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] gpio: gpio-spear-spics: remove platform_set_drvdata() + cleanup probe
@ 2021-05-16  7:43 Alexandru Ardelean
  2021-05-25 14:35 ` Bartosz Golaszewski
  0 siblings, 1 reply; 2+ messages in thread
From: Alexandru Ardelean @ 2021-05-16  7:43 UTC (permalink / raw)
  To: linux-gpio, linux-kernel; +Cc: linus.walleij, bgolaszewski, Alexandru Ardelean

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.

This change isn't removing the 'DT probe failed' message, as some may find
it useful as a reason for the failed probe. But that can be part of another
change if needed.

Signed-off-by: Alexandru Ardelean <aardelean@deviqon.com>
---
 drivers/gpio/gpio-spear-spics.c | 12 +-----------
 1 file changed, 1 insertion(+), 11 deletions(-)

diff --git a/drivers/gpio/gpio-spear-spics.c b/drivers/gpio/gpio-spear-spics.c
index 6eca531b7d96..49aac2bb8d2c 100644
--- a/drivers/gpio/gpio-spear-spics.c
+++ b/drivers/gpio/gpio-spear-spics.c
@@ -122,7 +122,6 @@ static int spics_gpio_probe(struct platform_device *pdev)
 {
 	struct device_node *np = pdev->dev.of_node;
 	struct spear_spics *spics;
-	int ret;
 
 	spics = devm_kzalloc(&pdev->dev, sizeof(*spics), GFP_KERNEL);
 	if (!spics)
@@ -148,8 +147,6 @@ static int spics_gpio_probe(struct platform_device *pdev)
 				&spics->cs_enable_shift))
 		goto err_dt_data;
 
-	platform_set_drvdata(pdev, spics);
-
 	spics->chip.ngpio = NUM_OF_GPIO;
 	spics->chip.base = -1;
 	spics->chip.request = spics_request;
@@ -163,14 +160,7 @@ static int spics_gpio_probe(struct platform_device *pdev)
 	spics->chip.owner = THIS_MODULE;
 	spics->last_off = -1;
 
-	ret = devm_gpiochip_add_data(&pdev->dev, &spics->chip, spics);
-	if (ret) {
-		dev_err(&pdev->dev, "unable to add gpio chip\n");
-		return ret;
-	}
-
-	dev_info(&pdev->dev, "spear spics registered\n");
-	return 0;
+	return devm_gpiochip_add_data(&pdev->dev, &spics->chip, spics);
 
 err_dt_data:
 	dev_err(&pdev->dev, "DT probe failed\n");
-- 
2.31.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] gpio: gpio-spear-spics: remove platform_set_drvdata() + cleanup probe
  2021-05-16  7:43 [PATCH] gpio: gpio-spear-spics: remove platform_set_drvdata() + cleanup probe Alexandru Ardelean
@ 2021-05-25 14:35 ` Bartosz Golaszewski
  0 siblings, 0 replies; 2+ messages in thread
From: Bartosz Golaszewski @ 2021-05-25 14:35 UTC (permalink / raw)
  To: Alexandru Ardelean; +Cc: linux-gpio, LKML, Linus Walleij

On Sun, May 16, 2021 at 9:43 AM Alexandru Ardelean
<aardelean@deviqon.com> 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.
>
> This change isn't removing the 'DT probe failed' message, as some may find
> it useful as a reason for the failed probe. But that can be part of another
> change if needed.
>
> Signed-off-by: Alexandru Ardelean <aardelean@deviqon.com>
> ---
>  drivers/gpio/gpio-spear-spics.c | 12 +-----------
>  1 file changed, 1 insertion(+), 11 deletions(-)
>
> diff --git a/drivers/gpio/gpio-spear-spics.c b/drivers/gpio/gpio-spear-spics.c
> index 6eca531b7d96..49aac2bb8d2c 100644
> --- a/drivers/gpio/gpio-spear-spics.c
> +++ b/drivers/gpio/gpio-spear-spics.c
> @@ -122,7 +122,6 @@ static int spics_gpio_probe(struct platform_device *pdev)
>  {
>         struct device_node *np = pdev->dev.of_node;
>         struct spear_spics *spics;
> -       int ret;
>
>         spics = devm_kzalloc(&pdev->dev, sizeof(*spics), GFP_KERNEL);
>         if (!spics)
> @@ -148,8 +147,6 @@ static int spics_gpio_probe(struct platform_device *pdev)
>                                 &spics->cs_enable_shift))
>                 goto err_dt_data;
>
> -       platform_set_drvdata(pdev, spics);
> -
>         spics->chip.ngpio = NUM_OF_GPIO;
>         spics->chip.base = -1;
>         spics->chip.request = spics_request;
> @@ -163,14 +160,7 @@ static int spics_gpio_probe(struct platform_device *pdev)
>         spics->chip.owner = THIS_MODULE;
>         spics->last_off = -1;
>
> -       ret = devm_gpiochip_add_data(&pdev->dev, &spics->chip, spics);
> -       if (ret) {
> -               dev_err(&pdev->dev, "unable to add gpio chip\n");
> -               return ret;
> -       }
> -
> -       dev_info(&pdev->dev, "spear spics registered\n");
> -       return 0;
> +       return devm_gpiochip_add_data(&pdev->dev, &spics->chip, spics);
>
>  err_dt_data:
>         dev_err(&pdev->dev, "DT probe failed\n");
> --
> 2.31.1
>

Applied, thanks!

Bart

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-05-25 14:36 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-16  7:43 [PATCH] gpio: gpio-spear-spics: remove platform_set_drvdata() + cleanup probe Alexandru Ardelean
2021-05-25 14:35 ` Bartosz Golaszewski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).