* [PATCH v2 00/35] mmc: Cleanup sdhci_pltfm_free()/sdhci_free_host() usage
@ 2025-05-29 12:56 Binbin Zhou
2025-05-29 12:57 ` [PATCH v2 01/35] mmc: sdhci: Use devm_mmc_alloc_host() helper Binbin Zhou
2025-05-29 13:00 ` [PATCH v2 18/35] mmc: sdhci-of-aspeed: Drop the use of sdhci_pltfm_free() Binbin Zhou
0 siblings, 2 replies; 3+ messages in thread
From: Binbin Zhou @ 2025-05-29 12:56 UTC (permalink / raw)
To: Binbin Zhou, Huacai Chen, Ulf Hansson, Adrian Hunter
Cc: Huacai Chen, linux-mmc, Andrew Jeffery, Taichi Sugaya,
Takao Orito, Ben Dooks, Jaehoon Chung, Florian Fainelli, Ray Jui,
Scott Branden, Kamal Dasu, Al Cooper, Haibo Chen, Shawn Guo,
Sascha Hauer, Fabio Estevam, imx, Avi Fishman, Tomer Maimon,
Tali Perry, Patrick Venture, Nancy Yuen, Benjamin Fair, openbmc,
Michal Simek, Joel Stanley, linux-aspeed, Aubin Constans,
Eugen Hristev, Nicolas Ferre, Alexandre Belloni, Claudiu Beznea,
Yixun Lan, linux-riscv, spacemit, Jacky Huang, Shan-Chun Hung,
Steen Hegelund, Daniel Machon, Vignesh Raghavendra,
Patrice Chotard, Thierry Reding, Jonathan Hunter, linux-tegra,
Hu Ziji, Binbin Zhou
Hi all:
After the first part of the cleanup[1], there are sdhci related
drivers that need further cleanup.
This patchset is the second part of the cleanup series, and since sdhci has
sdhci_alloc_host() as the general interface, our main job is to clean up
sdhci_pltfm_free() and sdhci_free_host().
[1]:https://lore.kernel.org/all/cover.1747877175.git.zhoubinbin@loongson.cn/
Thanks.
-----
V2:
- Collect Reviewed-by and Acked-by tags.
Patch-01:
- Set sdhci_free_host() to empty, rather than dropping it.
Patch-07:
- Set sdhci_pltfm_free() to empty, rather than dropping it.
Patch-22:
- As requested by Yixun, keep the goto scheme.
Patch-35:
- New patch;
- Since all calls have been cleaned up, sdhci_pltfm_free()/sdhci_free_host()
are now dropped directly;
Link to V1:
https://lore.kernel.org/all/cover.1747792905.git.zhoubinbin@loongson.cn/
Binbin Zhou (35):
mmc: sdhci: Use devm_mmc_alloc_host() helper
mmc: sdhci-acpi: Drop the use of sdhci_free_host()
mmc: sdhci-milbeaut: Drop the use of sdhci_free_host()
mmc: sdhci-pci: Drop the use of sdhci_free_host()
mmc: sdhci-s3c: Drop the use of sdhci_free_host()
mmc: sdhci-spear: Drop the use of sdhci_free_host()
mmc: sdhci-pltfm: Drop the use of sdhci_pltfm_free()
mmc: sdhci-bcm-kona: Drop the use of sdhci_pltfm_free()
mmc: sdhci-brcmstb: Drop the use of sdhci_pltfm_free()
mmc: sdhci-cadence: Drop the use of sdhci_pltfm_free()
mmc: sdhci-dove: Drop the use of sdhci_pltfm_free()
mmc: sdhci-esdhc-imx: Drop the use of sdhci_pltfm_free()
mmc: sdhci-esdhc-mcf: Drop the use of sdhci_pltfm_free()
mmc: sdhci-iproc: Drop the use of sdhci_pltfm_free()
mmc: sdhci-msm: Drop the use of sdhci_pltfm_free()
mmc: sdhci-npcm: Drop the use of sdhci_pltfm_free()
mmc: sdhci-of-arasan: Drop the use of sdhci_pltfm_free()
mmc: sdhci-of-aspeed: Drop the use of sdhci_pltfm_free()
mmc: sdhci-of-at91: Drop the use of sdhci_pltfm_free()
mmc: sdhci-of-dwcmshc: Drop the use of sdhci_pltfm_free()
mmc: sdhci-of-esdhc: Drop the use of sdhci_pltfm_free()
mmc: sdhci-of-k1: Drop the use of sdhci_pltfm_free()
mmc: sdhci-of-ma35d1: Drop the use of sdhci_pltfm_free()
mmc: sdhci-of-sparx5: Drop the use of sdhci_pltfm_free()
mmc: sdhci-omap: Drop the use of sdhci_pltfm_free()
mmc: sdhci-pic32: Drop the use of sdhci_pltfm_free()
mmc: sdhci-pxav2: Drop the use of sdhci_pltfm_free()
mmc: sdhci-pxav3: Drop the use of sdhci_pltfm_free()
mmc: sdhci-sprd: Drop the use of sdhci_pltfm_free()
mmc: sdhci-st: Drop the use of sdhci_pltfm_free()
mmc: sdhci-tegra: Drop the use of sdhci_pltfm_free()
mmc: sdhci-xenon: Drop the use of sdhci_pltfm_free()
mmc: sdhci_am654: Drop the use of sdhci_pltfm_free()
mmc: sdhci_f_sdh30: Drop the use of sdhci_pltfm_free()
mmc: sdhci: Drop sdhci_free_host()/sdhci_pltfm_free() definitions
drivers/mmc/host/sdhci-acpi.c | 3 ---
drivers/mmc/host/sdhci-bcm-kona.c | 2 --
drivers/mmc/host/sdhci-brcmstb.c | 1 -
drivers/mmc/host/sdhci-cadence.c | 21 ++++++------------
drivers/mmc/host/sdhci-dove.c | 12 ++---------
drivers/mmc/host/sdhci-esdhc-imx.c | 3 ---
drivers/mmc/host/sdhci-esdhc-mcf.c | 25 ++++++----------------
drivers/mmc/host/sdhci-iproc.c | 18 ++++------------
drivers/mmc/host/sdhci-milbeaut.c | 19 ++++++-----------
drivers/mmc/host/sdhci-msm.c | 11 ++++------
drivers/mmc/host/sdhci-npcm.c | 15 +++----------
drivers/mmc/host/sdhci-of-arasan.c | 26 +++++++----------------
drivers/mmc/host/sdhci-of-aspeed.c | 10 ++-------
drivers/mmc/host/sdhci-of-at91.c | 23 +++++++-------------
drivers/mmc/host/sdhci-of-dwcmshc.c | 14 +++++-------
drivers/mmc/host/sdhci-of-esdhc.c | 11 ++--------
drivers/mmc/host/sdhci-of-k1.c | 1 -
drivers/mmc/host/sdhci-of-ma35d1.c | 23 +++++++-------------
drivers/mmc/host/sdhci-of-sparx5.c | 24 +++++++--------------
drivers/mmc/host/sdhci-omap.c | 21 ++++++------------
drivers/mmc/host/sdhci-pci-core.c | 9 ++------
drivers/mmc/host/sdhci-pic32.c | 9 +++-----
drivers/mmc/host/sdhci-pltfm.c | 16 +-------------
drivers/mmc/host/sdhci-pltfm.h | 1 -
drivers/mmc/host/sdhci-pxav2.c | 26 ++++++-----------------
drivers/mmc/host/sdhci-pxav3.c | 7 +-----
drivers/mmc/host/sdhci-s3c.c | 16 ++++----------
drivers/mmc/host/sdhci-spear.c | 11 ++++------
drivers/mmc/host/sdhci-sprd.c | 33 +++++++++--------------------
drivers/mmc/host/sdhci-st.c | 6 ++----
drivers/mmc/host/sdhci-tegra.c | 9 +++-----
drivers/mmc/host/sdhci-xenon.c | 9 ++------
drivers/mmc/host/sdhci.c | 9 +-------
drivers/mmc/host/sdhci.h | 1 -
drivers/mmc/host/sdhci_am654.c | 20 ++++++-----------
drivers/mmc/host/sdhci_f_sdh30.c | 13 ++++--------
36 files changed, 129 insertions(+), 349 deletions(-)
base-commit: d2c6acff6386f43ed307822454b970c831c48f1b
--
2.47.1
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH v2 01/35] mmc: sdhci: Use devm_mmc_alloc_host() helper
2025-05-29 12:56 [PATCH v2 00/35] mmc: Cleanup sdhci_pltfm_free()/sdhci_free_host() usage Binbin Zhou
@ 2025-05-29 12:57 ` Binbin Zhou
2025-05-29 13:00 ` [PATCH v2 18/35] mmc: sdhci-of-aspeed: Drop the use of sdhci_pltfm_free() Binbin Zhou
1 sibling, 0 replies; 3+ messages in thread
From: Binbin Zhou @ 2025-05-29 12:57 UTC (permalink / raw)
To: Binbin Zhou, Huacai Chen, Ulf Hansson, Adrian Hunter
Cc: Huacai Chen, linux-mmc, Andrew Jeffery, Taichi Sugaya,
Takao Orito, Ben Dooks, Jaehoon Chung, Florian Fainelli, Ray Jui,
Scott Branden, Kamal Dasu, Al Cooper, Haibo Chen, Shawn Guo,
Sascha Hauer, Fabio Estevam, imx, Avi Fishman, Tomer Maimon,
Tali Perry, Patrick Venture, Nancy Yuen, Benjamin Fair, openbmc,
Michal Simek, Joel Stanley, linux-aspeed, Aubin Constans,
Eugen Hristev, Nicolas Ferre, Alexandre Belloni, Claudiu Beznea,
Yixun Lan, linux-riscv, spacemit, Jacky Huang, Shan-Chun Hung,
Steen Hegelund, Daniel Machon, Vignesh Raghavendra,
Patrice Chotard, Thierry Reding, Jonathan Hunter, linux-tegra,
Hu Ziji, Binbin Zhou
Use new function devm_mmc_alloc_host() to simplify the code.
Although sdhci_free_host() is no longer needed, to avoid drivers that still
use this function from failing to compile, sdhci_free_host() is temporarily
set to empty. Finally, it will be removed when there are no more callers.
Signed-off-by: Binbin Zhou <zhoubinbin@loongson.cn>
---
drivers/mmc/host/sdhci.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
index 32fa0b2bb912..ee5a5ae4db31 100644
--- a/drivers/mmc/host/sdhci.c
+++ b/drivers/mmc/host/sdhci.c
@@ -4076,7 +4076,7 @@ struct sdhci_host *sdhci_alloc_host(struct device *dev,
WARN_ON(dev == NULL);
- mmc = mmc_alloc_host(sizeof(struct sdhci_host) + priv_size, dev);
+ mmc = devm_mmc_alloc_host(dev, sizeof(struct sdhci_host) + priv_size);
if (!mmc)
return ERR_PTR(-ENOMEM);
@@ -5002,7 +5002,6 @@ EXPORT_SYMBOL_GPL(sdhci_remove_host);
void sdhci_free_host(struct sdhci_host *host)
{
- mmc_free_host(host->mmc);
}
EXPORT_SYMBOL_GPL(sdhci_free_host);
--
2.47.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH v2 18/35] mmc: sdhci-of-aspeed: Drop the use of sdhci_pltfm_free()
2025-05-29 12:56 [PATCH v2 00/35] mmc: Cleanup sdhci_pltfm_free()/sdhci_free_host() usage Binbin Zhou
2025-05-29 12:57 ` [PATCH v2 01/35] mmc: sdhci: Use devm_mmc_alloc_host() helper Binbin Zhou
@ 2025-05-29 13:00 ` Binbin Zhou
1 sibling, 0 replies; 3+ messages in thread
From: Binbin Zhou @ 2025-05-29 13:00 UTC (permalink / raw)
To: Binbin Zhou, Huacai Chen, Ulf Hansson, Adrian Hunter
Cc: Huacai Chen, linux-mmc, Andrew Jeffery, Binbin Zhou, Joel Stanley,
linux-aspeed, openbmc
Since the devm_mmc_alloc_host() helper is already in use,
sdhci_pltfm_free() is no longer needed.
Cc: Andrew Jeffery <andrew@codeconstruct.com.au>
Cc: Joel Stanley <joel@jms.id.au>
Cc: linux-aspeed@lists.ozlabs.org
Cc: openbmc@lists.ozlabs.org
Signed-off-by: Binbin Zhou <zhoubinbin@loongson.cn>
---
drivers/mmc/host/sdhci-of-aspeed.c | 10 ++--------
1 file changed, 2 insertions(+), 8 deletions(-)
diff --git a/drivers/mmc/host/sdhci-of-aspeed.c b/drivers/mmc/host/sdhci-of-aspeed.c
index d6de010551b9..ca97b01996b1 100644
--- a/drivers/mmc/host/sdhci-of-aspeed.c
+++ b/drivers/mmc/host/sdhci-of-aspeed.c
@@ -425,10 +425,8 @@ static int aspeed_sdhci_probe(struct platform_device *pdev)
return PTR_ERR(pltfm_host->clk);
ret = clk_prepare_enable(pltfm_host->clk);
- if (ret) {
- dev_err(&pdev->dev, "Unable to enable SDIO clock\n");
- goto err_pltfm_free;
- }
+ if (ret)
+ return dev_err_probe(&pdev->dev, ret, "Unable to enable SDIO clock\n");
ret = mmc_of_parse(host->mmc);
if (ret)
@@ -445,8 +443,6 @@ static int aspeed_sdhci_probe(struct platform_device *pdev)
err_sdhci_add:
clk_disable_unprepare(pltfm_host->clk);
-err_pltfm_free:
- sdhci_pltfm_free(pdev);
return ret;
}
@@ -461,8 +457,6 @@ static void aspeed_sdhci_remove(struct platform_device *pdev)
sdhci_remove_host(host, 0);
clk_disable_unprepare(pltfm_host->clk);
-
- sdhci_pltfm_free(pdev);
}
static const struct aspeed_sdhci_pdata ast2400_sdhci_pdata = {
--
2.47.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-05-30 4:06 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-29 12:56 [PATCH v2 00/35] mmc: Cleanup sdhci_pltfm_free()/sdhci_free_host() usage Binbin Zhou
2025-05-29 12:57 ` [PATCH v2 01/35] mmc: sdhci: Use devm_mmc_alloc_host() helper Binbin Zhou
2025-05-29 13:00 ` [PATCH v2 18/35] mmc: sdhci-of-aspeed: Drop the use of sdhci_pltfm_free() Binbin Zhou
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).