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

mmc: sdhci-tegra: 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.

Cc: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Yangtao Li <frank.li@vivo.com>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Link: https://lore.kernel.org/r/20230727070051.17778-36-frank.li@vivo.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>

authored by

Yangtao Li and committed by
Ulf Hansson
8d9b1788 c618ba0f

+2 -4
+2 -4
drivers/mmc/host/sdhci-tegra.c
··· 1817 1817 return rc; 1818 1818 } 1819 1819 1820 - static int sdhci_tegra_remove(struct platform_device *pdev) 1820 + static void sdhci_tegra_remove(struct platform_device *pdev) 1821 1821 { 1822 1822 struct sdhci_host *host = platform_get_drvdata(pdev); 1823 1823 struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); ··· 1833 1833 1834 1834 clk_disable_unprepare(tegra_host->tmclk); 1835 1835 sdhci_pltfm_free(pdev); 1836 - 1837 - return 0; 1838 1836 } 1839 1837 1840 1838 static int __maybe_unused sdhci_tegra_runtime_suspend(struct device *dev) ··· 1930 1932 .pm = &sdhci_tegra_dev_pm_ops, 1931 1933 }, 1932 1934 .probe = sdhci_tegra_probe, 1933 - .remove = sdhci_tegra_remove, 1935 + .remove_new = sdhci_tegra_remove, 1934 1936 }; 1935 1937 1936 1938 module_platform_driver(sdhci_tegra_driver);