Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ASoC: ux500: mop500: 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: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Takashi Iwai <tiwai@suse.de>
Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com>
Link: https://lore.kernel.org/r/20230315150745.67084-168-u.kleine-koenig@pengutronix.de
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Uwe Kleine-König and committed by
Mark Brown
d2b6d5b8 048d6589

+2 -4
+2 -4
sound/soc/ux500/mop500.c
··· 134 134 return ret; 135 135 } 136 136 137 - static int mop500_remove(struct platform_device *pdev) 137 + static void mop500_remove(struct platform_device *pdev) 138 138 { 139 139 struct snd_soc_card *card = platform_get_drvdata(pdev); 140 140 ··· 143 143 snd_soc_unregister_card(card); 144 144 mop500_ab8500_remove(card); 145 145 mop500_of_node_put(); 146 - 147 - return 0; 148 146 } 149 147 150 148 static const struct of_device_id snd_soc_mop500_match[] = { ··· 157 159 .of_match_table = snd_soc_mop500_match, 158 160 }, 159 161 .probe = mop500_probe, 160 - .remove = mop500_remove, 162 + .remove_new = mop500_remove, 161 163 }; 162 164 163 165 module_platform_driver(snd_soc_mop500_driver);