2021-05-17 11:38:40

by Alexandru Ardelean

[permalink] [raw]
Subject: [PATCH] gpio: gpio-wm831x: 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-wm831x.c | 12 +-----------
1 file changed, 1 insertion(+), 11 deletions(-)

diff --git a/drivers/gpio/gpio-wm831x.c b/drivers/gpio/gpio-wm831x.c
index a3a32a77041f..9cf1e5ebb352 100644
--- a/drivers/gpio/gpio-wm831x.c
+++ b/drivers/gpio/gpio-wm831x.c
@@ -261,7 +261,6 @@ static int wm831x_gpio_probe(struct platform_device *pdev)
struct wm831x *wm831x = dev_get_drvdata(pdev->dev.parent);
struct wm831x_pdata *pdata = &wm831x->pdata;
struct wm831x_gpio *wm831x_gpio;
- int ret;

wm831x_gpio = devm_kzalloc(&pdev->dev, sizeof(*wm831x_gpio),
GFP_KERNEL);
@@ -280,16 +279,7 @@ static int wm831x_gpio_probe(struct platform_device *pdev)
wm831x_gpio->gpio_chip.of_node = wm831x->dev->of_node;
#endif

- ret = devm_gpiochip_add_data(&pdev->dev, &wm831x_gpio->gpio_chip,
- wm831x_gpio);
- if (ret < 0) {
- dev_err(&pdev->dev, "Could not register gpiochip, %d\n", ret);
- return ret;
- }
-
- platform_set_drvdata(pdev, wm831x_gpio);
-
- return ret;
+ return devm_gpiochip_add_data(&pdev->dev, &wm831x_gpio->gpio_chip, wm831x_gpio);
}

static struct platform_driver wm831x_gpio_driver = {
--
2.31.1



2021-05-17 17:51:42

by Alexandru Ardelean

[permalink] [raw]
Subject: [PATCH] gpio: gpio-wm8350: 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-wm8350.c | 12 +-----------
1 file changed, 1 insertion(+), 11 deletions(-)

diff --git a/drivers/gpio/gpio-wm8350.c b/drivers/gpio/gpio-wm8350.c
index 460f0a4b04bd..b1b131fb9804 100644
--- a/drivers/gpio/gpio-wm8350.c
+++ b/drivers/gpio/gpio-wm8350.c
@@ -105,7 +105,6 @@ static int wm8350_gpio_probe(struct platform_device *pdev)
struct wm8350 *wm8350 = dev_get_drvdata(pdev->dev.parent);
struct wm8350_platform_data *pdata = dev_get_platdata(wm8350->dev);
struct wm8350_gpio_data *wm8350_gpio;
- int ret;

wm8350_gpio = devm_kzalloc(&pdev->dev, sizeof(*wm8350_gpio),
GFP_KERNEL);
@@ -121,16 +120,7 @@ static int wm8350_gpio_probe(struct platform_device *pdev)
else
wm8350_gpio->gpio_chip.base = -1;

- ret = devm_gpiochip_add_data(&pdev->dev, &wm8350_gpio->gpio_chip,
- wm8350_gpio);
- if (ret < 0) {
- dev_err(&pdev->dev, "Could not register gpiochip, %d\n", ret);
- return ret;
- }
-
- platform_set_drvdata(pdev, wm8350_gpio);
-
- return ret;
+ return devm_gpiochip_add_data(&pdev->dev, &wm8350_gpio->gpio_chip, wm8350_gpio);
}

static struct platform_driver wm8350_gpio_driver = {
--
2.31.1


2021-05-25 16:37:00

by Bartosz Golaszewski

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

On Mon, May 17, 2021 at 1:36 PM Alexandru Ardelean
<[email protected]> 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 <[email protected]>
> ---
> drivers/gpio/gpio-wm8350.c | 12 +-----------
> 1 file changed, 1 insertion(+), 11 deletions(-)
>
> diff --git a/drivers/gpio/gpio-wm8350.c b/drivers/gpio/gpio-wm8350.c
> index 460f0a4b04bd..b1b131fb9804 100644
> --- a/drivers/gpio/gpio-wm8350.c
> +++ b/drivers/gpio/gpio-wm8350.c
> @@ -105,7 +105,6 @@ static int wm8350_gpio_probe(struct platform_device *pdev)
> struct wm8350 *wm8350 = dev_get_drvdata(pdev->dev.parent);
> struct wm8350_platform_data *pdata = dev_get_platdata(wm8350->dev);
> struct wm8350_gpio_data *wm8350_gpio;
> - int ret;
>
> wm8350_gpio = devm_kzalloc(&pdev->dev, sizeof(*wm8350_gpio),
> GFP_KERNEL);
> @@ -121,16 +120,7 @@ static int wm8350_gpio_probe(struct platform_device *pdev)
> else
> wm8350_gpio->gpio_chip.base = -1;
>
> - ret = devm_gpiochip_add_data(&pdev->dev, &wm8350_gpio->gpio_chip,
> - wm8350_gpio);
> - if (ret < 0) {
> - dev_err(&pdev->dev, "Could not register gpiochip, %d\n", ret);
> - return ret;
> - }
> -
> - platform_set_drvdata(pdev, wm8350_gpio);
> -
> - return ret;
> + return devm_gpiochip_add_data(&pdev->dev, &wm8350_gpio->gpio_chip, wm8350_gpio);
> }
>
> static struct platform_driver wm8350_gpio_driver = {
> --
> 2.31.1
>

Applied, thanks!

Bart

2021-05-25 17:11:44

by Bartosz Golaszewski

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

On Mon, May 17, 2021 at 1:36 PM Alexandru Ardelean
<[email protected]> 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 <[email protected]>
> ---
> drivers/gpio/gpio-wm831x.c | 12 +-----------
> 1 file changed, 1 insertion(+), 11 deletions(-)
>
> diff --git a/drivers/gpio/gpio-wm831x.c b/drivers/gpio/gpio-wm831x.c
> index a3a32a77041f..9cf1e5ebb352 100644
> --- a/drivers/gpio/gpio-wm831x.c
> +++ b/drivers/gpio/gpio-wm831x.c
> @@ -261,7 +261,6 @@ static int wm831x_gpio_probe(struct platform_device *pdev)
> struct wm831x *wm831x = dev_get_drvdata(pdev->dev.parent);
> struct wm831x_pdata *pdata = &wm831x->pdata;
> struct wm831x_gpio *wm831x_gpio;
> - int ret;
>
> wm831x_gpio = devm_kzalloc(&pdev->dev, sizeof(*wm831x_gpio),
> GFP_KERNEL);
> @@ -280,16 +279,7 @@ static int wm831x_gpio_probe(struct platform_device *pdev)
> wm831x_gpio->gpio_chip.of_node = wm831x->dev->of_node;
> #endif
>
> - ret = devm_gpiochip_add_data(&pdev->dev, &wm831x_gpio->gpio_chip,
> - wm831x_gpio);
> - if (ret < 0) {
> - dev_err(&pdev->dev, "Could not register gpiochip, %d\n", ret);
> - return ret;
> - }
> -
> - platform_set_drvdata(pdev, wm831x_gpio);
> -
> - return ret;
> + return devm_gpiochip_add_data(&pdev->dev, &wm831x_gpio->gpio_chip, wm831x_gpio);
> }
>
> static struct platform_driver wm831x_gpio_driver = {
> --
> 2.31.1
>

Applied, thanks!

Bart