summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>2023-03-15 16:06:22 +0100
committerMark Brown <broonie@kernel.org>2023-03-20 13:08:21 +0000
commit4e894b2ec67c5c11cf9aa3d7c758102f02a3d08a (patch)
tree9ae53a8715bc032618cf26a5217d37f72084337b
parent029a00ae9718571520f18ebdfb9ac5a633205d16 (diff)
downloadlinux-4e894b2ec67c5c11cf9aa3d7c758102f02a3d08a.tar.gz
ASoC: img: img-spdif-out: Convert to platform remove callback returning void
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@pengutronix.de> Acked-by: Takashi Iwai <tiwai@suse.de> Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20230315150745.67084-91-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--sound/soc/img/img-spdif-out.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/sound/soc/img/img-spdif-out.c b/sound/soc/img/img-spdif-out.c
index 983761d3fa7e..b13e128e50d6 100644
--- a/sound/soc/img/img-spdif-out.c
+++ b/sound/soc/img/img-spdif-out.c
@@ -402,13 +402,11 @@ err_pm_disable:
return ret;
}
-static int img_spdif_out_dev_remove(struct platform_device *pdev)
+static void img_spdif_out_dev_remove(struct platform_device *pdev)
{
pm_runtime_disable(&pdev->dev);
if (!pm_runtime_status_suspended(&pdev->dev))
img_spdif_out_runtime_suspend(&pdev->dev);
-
- return 0;
}
#ifdef CONFIG_PM_SLEEP
@@ -470,7 +468,7 @@ static struct platform_driver img_spdif_out_driver = {
.pm = &img_spdif_out_pm_ops
},
.probe = img_spdif_out_probe,
- .remove = img_spdif_out_dev_remove
+ .remove_new = img_spdif_out_dev_remove
};
module_platform_driver(img_spdif_out_driver);