gpio: gpio-wm8994: remove platform_set_drvdata() + cleanup probe

Message ID 20210517113540.237495-3-aardelean@deviqon.com
State New
Headers show
Series
  • gpio: gpio-wm8994: remove platform_set_drvdata() + cleanup probe
Related show

Commit Message

Alexandru Ardelean May 17, 2021, 11:35 a.m.
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 <aardelean@deviqon.com>
---
 drivers/gpio/gpio-wm8994.c | 13 +------------
 1 file changed, 1 insertion(+), 12 deletions(-)

Comments

Bartosz Golaszewski May 25, 2021, 2:35 p.m. | #1
On Mon, May 17, 2021 at 1:36 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.

>

> 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 <aardelean@deviqon.com>

> ---

>  drivers/gpio/gpio-wm8994.c | 13 +------------

>  1 file changed, 1 insertion(+), 12 deletions(-)

>

> diff --git a/drivers/gpio/gpio-wm8994.c b/drivers/gpio/gpio-wm8994.c

> index 9af89cf7f6bc..f4a474cef32d 100644

> --- a/drivers/gpio/gpio-wm8994.c

> +++ b/drivers/gpio/gpio-wm8994.c

> @@ -263,7 +263,6 @@ static int wm8994_gpio_probe(struct platform_device *pdev)

>         struct wm8994 *wm8994 = dev_get_drvdata(pdev->dev.parent);

>         struct wm8994_pdata *pdata = dev_get_platdata(wm8994->dev);

>         struct wm8994_gpio *wm8994_gpio;

> -       int ret;

>

>         wm8994_gpio = devm_kzalloc(&pdev->dev, sizeof(*wm8994_gpio),

>                                    GFP_KERNEL);

> @@ -279,17 +278,7 @@ static int wm8994_gpio_probe(struct platform_device *pdev)

>         else

>                 wm8994_gpio->gpio_chip.base = -1;

>

> -       ret = devm_gpiochip_add_data(&pdev->dev, &wm8994_gpio->gpio_chip,

> -                                    wm8994_gpio);

> -       if (ret < 0) {

> -               dev_err(&pdev->dev, "Could not register gpiochip, %d\n",

> -                       ret);

> -               return ret;

> -       }

> -

> -       platform_set_drvdata(pdev, wm8994_gpio);

> -

> -       return ret;

> +       return devm_gpiochip_add_data(&pdev->dev, &wm8994_gpio->gpio_chip, wm8994_gpio);

>  }

>

>  static struct platform_driver wm8994_gpio_driver = {

> --

> 2.31.1

>


Applied, thanks!

Bart

Patch

diff --git a/drivers/gpio/gpio-wm8994.c b/drivers/gpio/gpio-wm8994.c
index 9af89cf7f6bc..f4a474cef32d 100644
--- a/drivers/gpio/gpio-wm8994.c
+++ b/drivers/gpio/gpio-wm8994.c
@@ -263,7 +263,6 @@  static int wm8994_gpio_probe(struct platform_device *pdev)
 	struct wm8994 *wm8994 = dev_get_drvdata(pdev->dev.parent);
 	struct wm8994_pdata *pdata = dev_get_platdata(wm8994->dev);
 	struct wm8994_gpio *wm8994_gpio;
-	int ret;
 
 	wm8994_gpio = devm_kzalloc(&pdev->dev, sizeof(*wm8994_gpio),
 				   GFP_KERNEL);
@@ -279,17 +278,7 @@  static int wm8994_gpio_probe(struct platform_device *pdev)
 	else
 		wm8994_gpio->gpio_chip.base = -1;
 
-	ret = devm_gpiochip_add_data(&pdev->dev, &wm8994_gpio->gpio_chip,
-				     wm8994_gpio);
-	if (ret < 0) {
-		dev_err(&pdev->dev, "Could not register gpiochip, %d\n",
-			ret);
-		return ret;
-	}
-
-	platform_set_drvdata(pdev, wm8994_gpio);
-
-	return ret;
+	return devm_gpiochip_add_data(&pdev->dev, &wm8994_gpio->gpio_chip, wm8994_gpio);
 }
 
 static struct platform_driver wm8994_gpio_driver = {