[PATCH 45/89] i2c: npcm7xx: Convert to platform remove callback returning void
Tali Perry
tali.perry1 at gmail.com
Tue May 9 16:32:54 AEST 2023
Thanks!
Reviewed-by: Tali Perry <tali.perry at nuvoton.com>
On Mon, May 8, 2023 at 11:53 PM Uwe Kleine-König
<u.kleine-koenig at pengutronix.de> wrote:
>
> The .remove() callback for a platform driver returns an int which makes
> many driver authors wrongly assume it's possible to do error handling by
> returning an error code. However the value returned is (mostly) ignored
> and this typically results in resource leaks. To improve here there is a
> quest to make the remove callback return void. In the first step of this
> quest all drivers are converted to .remove_new() which already returns
> void.
>
> Trivially convert this driver from always returning zero in the remove
> callback to the void returning variant.
>
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig at pengutronix.de>
> ---
> drivers/i2c/busses/i2c-npcm7xx.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/i2c/busses/i2c-npcm7xx.c b/drivers/i2c/busses/i2c-npcm7xx.c
> index 38d5864d0cb5..53b65ffb6a64 100644
> --- a/drivers/i2c/busses/i2c-npcm7xx.c
> +++ b/drivers/i2c/busses/i2c-npcm7xx.c
> @@ -2361,7 +2361,7 @@ static int npcm_i2c_probe_bus(struct platform_device *pdev)
> return 0;
> }
>
> -static int npcm_i2c_remove_bus(struct platform_device *pdev)
> +static void npcm_i2c_remove_bus(struct platform_device *pdev)
> {
> unsigned long lock_flags;
> struct npcm_i2c *bus = platform_get_drvdata(pdev);
> @@ -2371,7 +2371,6 @@ static int npcm_i2c_remove_bus(struct platform_device *pdev)
> npcm_i2c_disable(bus);
> spin_unlock_irqrestore(&bus->lock, lock_flags);
> i2c_del_adapter(&bus->adap);
> - return 0;
> }
>
> static const struct of_device_id npcm_i2c_bus_of_table[] = {
> @@ -2383,7 +2382,7 @@ MODULE_DEVICE_TABLE(of, npcm_i2c_bus_of_table);
>
> static struct platform_driver npcm_i2c_bus_driver = {
> .probe = npcm_i2c_probe_bus,
> - .remove = npcm_i2c_remove_bus,
> + .remove_new = npcm_i2c_remove_bus,
> .driver = {
> .name = "nuvoton-i2c",
> .of_match_table = npcm_i2c_bus_of_table,
> --
> 2.39.2
>
More information about the openbmc
mailing list