Skip to content

Commit 7242265

Browse files
Uwe Kleine-Königbroonie
authored andcommitted
ASoC: uniphier: Make uniphier_aio_remove() return 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. uniphier_aio_remove() returned zero unconditionally. Make it return void instead and convert all users to struct platform_device::remove_new(). Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Link: https://lore.kernel.org/r/20231013221945.1489203-16-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
1 parent d0cc676 commit 7242265

4 files changed

Lines changed: 4 additions & 6 deletions

File tree

sound/soc/uniphier/aio-cpu.c

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -822,14 +822,12 @@ int uniphier_aio_probe(struct platform_device *pdev)
822822
}
823823
EXPORT_SYMBOL_GPL(uniphier_aio_probe);
824824

825-
int uniphier_aio_remove(struct platform_device *pdev)
825+
void uniphier_aio_remove(struct platform_device *pdev)
826826
{
827827
struct uniphier_aio_chip *chip = platform_get_drvdata(pdev);
828828

829829
reset_control_assert(chip->rst);
830830
clk_disable_unprepare(chip->clk);
831-
832-
return 0;
833831
}
834832
EXPORT_SYMBOL_GPL(uniphier_aio_remove);
835833

sound/soc/uniphier/aio-ld11.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -347,7 +347,7 @@ static struct platform_driver uniphier_aio_driver = {
347347
.of_match_table = of_match_ptr(uniphier_aio_of_match),
348348
},
349349
.probe = uniphier_aio_probe,
350-
.remove = uniphier_aio_remove,
350+
.remove_new = uniphier_aio_remove,
351351
};
352352
module_platform_driver(uniphier_aio_driver);
353353

sound/soc/uniphier/aio-pxs2.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -256,7 +256,7 @@ static struct platform_driver uniphier_aio_driver = {
256256
.of_match_table = of_match_ptr(uniphier_aio_of_match),
257257
},
258258
.probe = uniphier_aio_probe,
259-
.remove = uniphier_aio_remove,
259+
.remove_new = uniphier_aio_remove,
260260
};
261261
module_platform_driver(uniphier_aio_driver);
262262

sound/soc/uniphier/aio.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -307,7 +307,7 @@ int uniphier_aiodma_soc_register_platform(struct platform_device *pdev);
307307
extern const struct snd_compress_ops uniphier_aio_compress_ops;
308308

309309
int uniphier_aio_probe(struct platform_device *pdev);
310-
int uniphier_aio_remove(struct platform_device *pdev);
310+
void uniphier_aio_remove(struct platform_device *pdev);
311311
extern const struct snd_soc_dai_ops uniphier_aio_i2s_ld11_ops;
312312
extern const struct snd_soc_dai_ops uniphier_aio_i2s_pxs2_ops;
313313
extern const struct snd_soc_dai_ops uniphier_aio_spdif_ld11_ops;

0 commit comments

Comments
 (0)