2021-05-15 11:18:22

by Alexandru Ardelean

[permalink] [raw]
Subject: [PATCH 1/2] gpio: gpio-tegra186: remove empty remove hook

The tegra186_gpio_remove hook simply does a return 0.
Not defining it yields pretty much the same result.
So, this can be removed.

Signed-off-by: Alexandru Ardelean <[email protected]>
---
drivers/gpio/gpio-tegra186.c | 6 ------
1 file changed, 6 deletions(-)

diff --git a/drivers/gpio/gpio-tegra186.c b/drivers/gpio/gpio-tegra186.c
index 1bd9e44df718..10d3597e9ac2 100644
--- a/drivers/gpio/gpio-tegra186.c
+++ b/drivers/gpio/gpio-tegra186.c
@@ -750,11 +750,6 @@ static int tegra186_gpio_probe(struct platform_device *pdev)
return 0;
}

-static int tegra186_gpio_remove(struct platform_device *pdev)
-{
- return 0;
-}
-
#define TEGRA186_MAIN_GPIO_PORT(_name, _bank, _port, _pins) \
[TEGRA186_MAIN_GPIO_PORT_##_name] = { \
.name = #_name, \
@@ -924,7 +919,6 @@ static struct platform_driver tegra186_gpio_driver = {
.of_match_table = tegra186_gpio_of_match,
},
.probe = tegra186_gpio_probe,
- .remove = tegra186_gpio_remove,
};
module_platform_driver(tegra186_gpio_driver);

--
2.31.1



2021-05-15 11:20:41

by Alexandru Ardelean

[permalink] [raw]
Subject: [PATCH 2/2] gpio: gpio-tegra186: 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-tegra186.c | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/drivers/gpio/gpio-tegra186.c b/drivers/gpio/gpio-tegra186.c
index 10d3597e9ac2..f54ae9d4254a 100644
--- a/drivers/gpio/gpio-tegra186.c
+++ b/drivers/gpio/gpio-tegra186.c
@@ -741,13 +741,7 @@ static int tegra186_gpio_probe(struct platform_device *pdev)
offset += port->pins;
}

- platform_set_drvdata(pdev, gpio);
-
- err = devm_gpiochip_add_data(&pdev->dev, &gpio->gpio, gpio);
- if (err < 0)
- return err;
-
- return 0;
+ return devm_gpiochip_add_data(&pdev->dev, &gpio->gpio, gpio);
}

#define TEGRA186_MAIN_GPIO_PORT(_name, _bank, _port, _pins) \
--
2.31.1


2021-05-23 18:37:33

by Bartosz Golaszewski

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

On Sat, May 15, 2021 at 9:59 AM 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-tegra186.c | 8 +-------
> 1 file changed, 1 insertion(+), 7 deletions(-)
>
> diff --git a/drivers/gpio/gpio-tegra186.c b/drivers/gpio/gpio-tegra186.c
> index 10d3597e9ac2..f54ae9d4254a 100644
> --- a/drivers/gpio/gpio-tegra186.c
> +++ b/drivers/gpio/gpio-tegra186.c
> @@ -741,13 +741,7 @@ static int tegra186_gpio_probe(struct platform_device *pdev)
> offset += port->pins;
> }
>
> - platform_set_drvdata(pdev, gpio);
> -
> - err = devm_gpiochip_add_data(&pdev->dev, &gpio->gpio, gpio);
> - if (err < 0)
> - return err;
> -
> - return 0;
> + return devm_gpiochip_add_data(&pdev->dev, &gpio->gpio, gpio);
> }
>
> #define TEGRA186_MAIN_GPIO_PORT(_name, _bank, _port, _pins) \
> --
> 2.31.1
>

Normally I'd wait for Thierry's Ack but this cleanup is pretty
straightforward so I applied both patches.

Bart