Message ID | 20230727070051.17778-46-frank.li@vivo.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v3,01/62] mmc: sunxi: Convert to platform remove callback returning void | expand |
On 7/27/23 09:00, Yangtao Li 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. > > 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> > --- > drivers/mmc/host/sdhci-st.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/drivers/mmc/host/sdhci-st.c b/drivers/mmc/host/sdhci-st.c > index 6415916fbd91..d955b5f4b7e9 100644 > --- a/drivers/mmc/host/sdhci-st.c > +++ b/drivers/mmc/host/sdhci-st.c > @@ -434,7 +434,7 @@ static int sdhci_st_probe(struct platform_device *pdev) > return ret; > } > > -static int sdhci_st_remove(struct platform_device *pdev) > +static void sdhci_st_remove(struct platform_device *pdev) > { > struct sdhci_host *host = platform_get_drvdata(pdev); > struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); > @@ -446,8 +446,6 @@ static int sdhci_st_remove(struct platform_device *pdev) > clk_disable_unprepare(pdata->icnclk); > > reset_control_assert(rstc); > - > - return 0; > } > > #ifdef CONFIG_PM_SLEEP > @@ -510,7 +508,7 @@ MODULE_DEVICE_TABLE(of, st_sdhci_match); > > static struct platform_driver sdhci_st_driver = { > .probe = sdhci_st_probe, > - .remove = sdhci_st_remove, > + .remove_new = sdhci_st_remove, > .driver = { > .name = "sdhci-st", > .probe_type = PROBE_PREFER_ASYNCHRONOUS, Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com> Thanks Patrice
diff --git a/drivers/mmc/host/sdhci-st.c b/drivers/mmc/host/sdhci-st.c index 6415916fbd91..d955b5f4b7e9 100644 --- a/drivers/mmc/host/sdhci-st.c +++ b/drivers/mmc/host/sdhci-st.c @@ -434,7 +434,7 @@ static int sdhci_st_probe(struct platform_device *pdev) return ret; } -static int sdhci_st_remove(struct platform_device *pdev) +static void sdhci_st_remove(struct platform_device *pdev) { struct sdhci_host *host = platform_get_drvdata(pdev); struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); @@ -446,8 +446,6 @@ static int sdhci_st_remove(struct platform_device *pdev) clk_disable_unprepare(pdata->icnclk); reset_control_assert(rstc); - - return 0; } #ifdef CONFIG_PM_SLEEP @@ -510,7 +508,7 @@ MODULE_DEVICE_TABLE(of, st_sdhci_match); static struct platform_driver sdhci_st_driver = { .probe = sdhci_st_probe, - .remove = sdhci_st_remove, + .remove_new = sdhci_st_remove, .driver = { .name = "sdhci-st", .probe_type = PROBE_PREFER_ASYNCHRONOUS,