linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] gpio: viperboard: remove platform_set_drvdata() call in probe
@ 2021-07-07 13:51 Alexandru Ardelean
  2021-07-21 13:16 ` Bartosz Golaszewski
  2021-08-25  7:01 ` [PATCH v2] " Alexandru Ardelean
  0 siblings, 2 replies; 6+ messages in thread
From: Alexandru Ardelean @ 2021-07-07 13:51 UTC (permalink / raw)
  To: linux-gpio, linux-kernel; +Cc: bgolaszewski, linus.walleij, 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.

This change removes it.

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

diff --git a/drivers/gpio/gpio-viperboard.c b/drivers/gpio/gpio-viperboard.c
index c301c1d56dd2..98ddd6590362 100644
--- a/drivers/gpio/gpio-viperboard.c
+++ b/drivers/gpio/gpio-viperboard.c
@@ -422,12 +422,8 @@ static int vprbrd_gpio_probe(struct platform_device *pdev)
 	vb_gpio->gpiob.direction_input = vprbrd_gpiob_direction_input;
 	vb_gpio->gpiob.direction_output = vprbrd_gpiob_direction_output;
 	ret = devm_gpiochip_add_data(&pdev->dev, &vb_gpio->gpiob, vb_gpio);
-	if (ret < 0) {
+	if (ret < 0)
 		dev_err(vb_gpio->gpiob.parent, "could not add gpio b");
-		return ret;
-	}
-
-	platform_set_drvdata(pdev, vb_gpio);
 
 	return ret;
 }
-- 
2.31.1


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

* Re: [PATCH] gpio: viperboard: remove platform_set_drvdata() call in probe
  2021-07-07 13:51 [PATCH] gpio: viperboard: remove platform_set_drvdata() call in probe Alexandru Ardelean
@ 2021-07-21 13:16 ` Bartosz Golaszewski
  2021-07-21 14:13   ` Alexandru Ardelean
  2021-08-25  7:01 ` [PATCH v2] " Alexandru Ardelean
  1 sibling, 1 reply; 6+ messages in thread
From: Bartosz Golaszewski @ 2021-07-21 13:16 UTC (permalink / raw)
  To: Alexandru Ardelean; +Cc: linux-gpio, LKML, Linus Walleij

On Wed, Jul 7, 2021 at 3:51 PM 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.
>
> This change removes it.
>
> Signed-off-by: Alexandru Ardelean <aardelean@deviqon.com>
> ---
>  drivers/gpio/gpio-viperboard.c | 6 +-----
>  1 file changed, 1 insertion(+), 5 deletions(-)
>
> diff --git a/drivers/gpio/gpio-viperboard.c b/drivers/gpio/gpio-viperboard.c
> index c301c1d56dd2..98ddd6590362 100644
> --- a/drivers/gpio/gpio-viperboard.c
> +++ b/drivers/gpio/gpio-viperboard.c
> @@ -422,12 +422,8 @@ static int vprbrd_gpio_probe(struct platform_device *pdev)
>         vb_gpio->gpiob.direction_input = vprbrd_gpiob_direction_input;
>         vb_gpio->gpiob.direction_output = vprbrd_gpiob_direction_output;
>         ret = devm_gpiochip_add_data(&pdev->dev, &vb_gpio->gpiob, vb_gpio);
> -       if (ret < 0) {
> +       if (ret < 0)
>                 dev_err(vb_gpio->gpiob.parent, "could not add gpio b");
> -               return ret;
> -       }
> -
> -       platform_set_drvdata(pdev, vb_gpio);
>
>         return ret;
>  }
> --
> 2.31.1
>

The log is not really needed, we'll get an error message from gpiolib
core. Can you remove it while you're at it and just return the result
of devm_gpiochip_add_data()?

Bart

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

* Re: [PATCH] gpio: viperboard: remove platform_set_drvdata() call in probe
  2021-07-21 13:16 ` Bartosz Golaszewski
@ 2021-07-21 14:13   ` Alexandru Ardelean
  2021-07-27 13:32     ` Bartosz Golaszewski
  0 siblings, 1 reply; 6+ messages in thread
From: Alexandru Ardelean @ 2021-07-21 14:13 UTC (permalink / raw)
  To: Bartosz Golaszewski; +Cc: linux-gpio, LKML, Linus Walleij

On Wed, 21 Jul 2021 at 16:16, Bartosz Golaszewski
<bgolaszewski@baylibre.com> wrote:
>
> On Wed, Jul 7, 2021 at 3:51 PM 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.
> >
> > This change removes it.
> >
> > Signed-off-by: Alexandru Ardelean <aardelean@deviqon.com>
> > ---
> >  drivers/gpio/gpio-viperboard.c | 6 +-----
> >  1 file changed, 1 insertion(+), 5 deletions(-)
> >
> > diff --git a/drivers/gpio/gpio-viperboard.c b/drivers/gpio/gpio-viperboard.c
> > index c301c1d56dd2..98ddd6590362 100644
> > --- a/drivers/gpio/gpio-viperboard.c
> > +++ b/drivers/gpio/gpio-viperboard.c
> > @@ -422,12 +422,8 @@ static int vprbrd_gpio_probe(struct platform_device *pdev)
> >         vb_gpio->gpiob.direction_input = vprbrd_gpiob_direction_input;
> >         vb_gpio->gpiob.direction_output = vprbrd_gpiob_direction_output;
> >         ret = devm_gpiochip_add_data(&pdev->dev, &vb_gpio->gpiob, vb_gpio);
> > -       if (ret < 0) {
> > +       if (ret < 0)
> >                 dev_err(vb_gpio->gpiob.parent, "could not add gpio b");
> > -               return ret;
> > -       }
> > -
> > -       platform_set_drvdata(pdev, vb_gpio);
> >
> >         return ret;
> >  }
> > --
> > 2.31.1
> >
>
> The log is not really needed, we'll get an error message from gpiolib
> core. Can you remove it while you're at it and just return the result
> of devm_gpiochip_add_data()?

I thought about removing it, but in this driver there are 2
devm_gpiochip_add_data() calls.
It registers 2 GPIOchip instances.
Which is not so easy to see in this patch.

First one says "could not add gpio a"  and this one says "could not add gpio b".
I hesitated to remove either of these.

In this case, it may be a little helpful to know which GPIOchip failed
to be registered.

But I don't mind removing them both.
Whatever you prefer. I'm undecided.

>
> Bart

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

* Re: [PATCH] gpio: viperboard: remove platform_set_drvdata() call in probe
  2021-07-21 14:13   ` Alexandru Ardelean
@ 2021-07-27 13:32     ` Bartosz Golaszewski
  0 siblings, 0 replies; 6+ messages in thread
From: Bartosz Golaszewski @ 2021-07-27 13:32 UTC (permalink / raw)
  To: Alexandru Ardelean; +Cc: linux-gpio, LKML, Linus Walleij

On Wed, Jul 21, 2021 at 4:13 PM Alexandru Ardelean
<aardelean@deviqon.com> wrote:
>
> On Wed, 21 Jul 2021 at 16:16, Bartosz Golaszewski
> <bgolaszewski@baylibre.com> wrote:
> >
> > On Wed, Jul 7, 2021 at 3:51 PM 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.
> > >
> > > This change removes it.
> > >
> > > Signed-off-by: Alexandru Ardelean <aardelean@deviqon.com>
> > > ---
> > >  drivers/gpio/gpio-viperboard.c | 6 +-----
> > >  1 file changed, 1 insertion(+), 5 deletions(-)
> > >
> > > diff --git a/drivers/gpio/gpio-viperboard.c b/drivers/gpio/gpio-viperboard.c
> > > index c301c1d56dd2..98ddd6590362 100644
> > > --- a/drivers/gpio/gpio-viperboard.c
> > > +++ b/drivers/gpio/gpio-viperboard.c
> > > @@ -422,12 +422,8 @@ static int vprbrd_gpio_probe(struct platform_device *pdev)
> > >         vb_gpio->gpiob.direction_input = vprbrd_gpiob_direction_input;
> > >         vb_gpio->gpiob.direction_output = vprbrd_gpiob_direction_output;
> > >         ret = devm_gpiochip_add_data(&pdev->dev, &vb_gpio->gpiob, vb_gpio);
> > > -       if (ret < 0) {
> > > +       if (ret < 0)
> > >                 dev_err(vb_gpio->gpiob.parent, "could not add gpio b");
> > > -               return ret;
> > > -       }
> > > -
> > > -       platform_set_drvdata(pdev, vb_gpio);
> > >
> > >         return ret;
> > >  }
> > > --
> > > 2.31.1
> > >
> >
> > The log is not really needed, we'll get an error message from gpiolib
> > core. Can you remove it while you're at it and just return the result
> > of devm_gpiochip_add_data()?
>
> I thought about removing it, but in this driver there are 2
> devm_gpiochip_add_data() calls.
> It registers 2 GPIOchip instances.
> Which is not so easy to see in this patch.
>
> First one says "could not add gpio a"  and this one says "could not add gpio b".
> I hesitated to remove either of these.
>
> In this case, it may be a little helpful to know which GPIOchip failed
> to be registered.
>
> But I don't mind removing them both.
> Whatever you prefer. I'm undecided.
>

The core code will still use the label for the error message which
says 'a' or 'b' already. I think we can remove it.

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

* [PATCH v2] gpio: viperboard: remove platform_set_drvdata() call in probe
  2021-07-07 13:51 [PATCH] gpio: viperboard: remove platform_set_drvdata() call in probe Alexandru Ardelean
  2021-07-21 13:16 ` Bartosz Golaszewski
@ 2021-08-25  7:01 ` Alexandru Ardelean
  2021-08-31  9:29   ` Bartosz Golaszewski
  1 sibling, 1 reply; 6+ messages in thread
From: Alexandru Ardelean @ 2021-08-25  7:01 UTC (permalink / raw)
  To: linux-gpio, linux-kernel; +Cc: bgolaszewski, linus.walleij, 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.

This change removes it.
Also removing with this change is some logging about the failure to init
the gpio chip data. There are other logging methods to view that this
failed.

Signed-off-by: Alexandru Ardelean <aardelean@deviqon.com>
---

Changelog v1 -> v2:
* remove dev_err() prints
* [styling] added empty line before first devm_gpiochip_add_data()

 drivers/gpio/gpio-viperboard.c | 14 +++-----------
 1 file changed, 3 insertions(+), 11 deletions(-)

diff --git a/drivers/gpio/gpio-viperboard.c b/drivers/gpio/gpio-viperboard.c
index c301c1d56dd2..e55d28a8a66f 100644
--- a/drivers/gpio/gpio-viperboard.c
+++ b/drivers/gpio/gpio-viperboard.c
@@ -404,11 +404,10 @@ static int vprbrd_gpio_probe(struct platform_device *pdev)
 	vb_gpio->gpioa.get = vprbrd_gpioa_get;
 	vb_gpio->gpioa.direction_input = vprbrd_gpioa_direction_input;
 	vb_gpio->gpioa.direction_output = vprbrd_gpioa_direction_output;
+
 	ret = devm_gpiochip_add_data(&pdev->dev, &vb_gpio->gpioa, vb_gpio);
-	if (ret < 0) {
-		dev_err(vb_gpio->gpioa.parent, "could not add gpio a");
+	if (ret < 0)
 		return ret;
-	}
 
 	/* registering gpio b */
 	vb_gpio->gpiob.label = "viperboard gpio b";
@@ -421,15 +420,8 @@ static int vprbrd_gpio_probe(struct platform_device *pdev)
 	vb_gpio->gpiob.get = vprbrd_gpiob_get;
 	vb_gpio->gpiob.direction_input = vprbrd_gpiob_direction_input;
 	vb_gpio->gpiob.direction_output = vprbrd_gpiob_direction_output;
-	ret = devm_gpiochip_add_data(&pdev->dev, &vb_gpio->gpiob, vb_gpio);
-	if (ret < 0) {
-		dev_err(vb_gpio->gpiob.parent, "could not add gpio b");
-		return ret;
-	}
-
-	platform_set_drvdata(pdev, vb_gpio);
 
-	return ret;
+	return devm_gpiochip_add_data(&pdev->dev, &vb_gpio->gpiob, vb_gpio);
 }
 
 static struct platform_driver vprbrd_gpio_driver = {
-- 
2.31.1


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

* Re: [PATCH v2] gpio: viperboard: remove platform_set_drvdata() call in probe
  2021-08-25  7:01 ` [PATCH v2] " Alexandru Ardelean
@ 2021-08-31  9:29   ` Bartosz Golaszewski
  0 siblings, 0 replies; 6+ messages in thread
From: Bartosz Golaszewski @ 2021-08-31  9:29 UTC (permalink / raw)
  To: Alexandru Ardelean; +Cc: linux-gpio, LKML, Linus Walleij

On Wed, Aug 25, 2021 at 9:02 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.
>
> This change removes it.
> Also removing with this change is some logging about the failure to init
> the gpio chip data. There are other logging methods to view that this
> failed.
>
> Signed-off-by: Alexandru Ardelean <aardelean@deviqon.com>
> ---
>
> Changelog v1 -> v2:
> * remove dev_err() prints
> * [styling] added empty line before first devm_gpiochip_add_data()
>
>  drivers/gpio/gpio-viperboard.c | 14 +++-----------
>  1 file changed, 3 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/gpio/gpio-viperboard.c b/drivers/gpio/gpio-viperboard.c
> index c301c1d56dd2..e55d28a8a66f 100644
> --- a/drivers/gpio/gpio-viperboard.c
> +++ b/drivers/gpio/gpio-viperboard.c
> @@ -404,11 +404,10 @@ static int vprbrd_gpio_probe(struct platform_device *pdev)
>         vb_gpio->gpioa.get = vprbrd_gpioa_get;
>         vb_gpio->gpioa.direction_input = vprbrd_gpioa_direction_input;
>         vb_gpio->gpioa.direction_output = vprbrd_gpioa_direction_output;
> +
>         ret = devm_gpiochip_add_data(&pdev->dev, &vb_gpio->gpioa, vb_gpio);
> -       if (ret < 0) {
> -               dev_err(vb_gpio->gpioa.parent, "could not add gpio a");
> +       if (ret < 0)
>                 return ret;
> -       }
>
>         /* registering gpio b */
>         vb_gpio->gpiob.label = "viperboard gpio b";
> @@ -421,15 +420,8 @@ static int vprbrd_gpio_probe(struct platform_device *pdev)
>         vb_gpio->gpiob.get = vprbrd_gpiob_get;
>         vb_gpio->gpiob.direction_input = vprbrd_gpiob_direction_input;
>         vb_gpio->gpiob.direction_output = vprbrd_gpiob_direction_output;
> -       ret = devm_gpiochip_add_data(&pdev->dev, &vb_gpio->gpiob, vb_gpio);
> -       if (ret < 0) {
> -               dev_err(vb_gpio->gpiob.parent, "could not add gpio b");
> -               return ret;
> -       }
> -
> -       platform_set_drvdata(pdev, vb_gpio);
>
> -       return ret;
> +       return devm_gpiochip_add_data(&pdev->dev, &vb_gpio->gpiob, vb_gpio);
>  }
>
>  static struct platform_driver vprbrd_gpio_driver = {
> --
> 2.31.1
>

Applied, thanks!

Bart

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

end of thread, other threads:[~2021-08-31  9:30 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-07 13:51 [PATCH] gpio: viperboard: remove platform_set_drvdata() call in probe Alexandru Ardelean
2021-07-21 13:16 ` Bartosz Golaszewski
2021-07-21 14:13   ` Alexandru Ardelean
2021-07-27 13:32     ` Bartosz Golaszewski
2021-08-25  7:01 ` [PATCH v2] " Alexandru Ardelean
2021-08-31  9:29   ` 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).