]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
mmc: wmt-sdmmc: Use devm_mmc_alloc_host() helper
authorBinbin Zhou <zhoubinbin@loongson.cn>
Tue, 3 Jun 2025 12:28:04 +0000 (20:28 +0800)
committerUlf Hansson <ulf.hansson@linaro.org>
Tue, 24 Jun 2025 10:43:24 +0000 (12:43 +0200)
Use new function devm_mmc_alloc_host() to simplify the code.

Cc: Alexey Charkov <alchark@gmail.com>
Acked-by: Alexey Charkov <alchark@gmail.com>
Reviewed-by: Huacai Chen <chenhuacai@loongson.cn>
Signed-off-by: Binbin Zhou <zhoubinbin@loongson.cn>
Link: https://lore.kernel.org/r/81a288603ffc77b39678ef9f5bea7284670e6b60.1748933789.git.zhoubinbin@loongson.cn
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/wmt-sdmmc.c

index cdb36a9f9e38e01ed1d9a952153422c1bf4032a9..0d2929cfe39756b9dcaa299980d84a70566630fb 100644 (file)
@@ -774,7 +774,7 @@ static int wmt_mci_probe(struct platform_device *pdev)
                goto fail1;
        }
 
-       mmc = mmc_alloc_host(sizeof(struct wmt_mci_priv), &pdev->dev);
+       mmc = devm_mmc_alloc_host(&pdev->dev, sizeof(*priv));
        if (!mmc) {
                dev_err(&pdev->dev, "Failed to allocate mmc_host\n");
                ret = -ENOMEM;
@@ -808,7 +808,7 @@ static int wmt_mci_probe(struct platform_device *pdev)
        if (!priv->sdmmc_base) {
                dev_err(&pdev->dev, "Failed to map IO space\n");
                ret = -ENOMEM;
-               goto fail2;
+               goto fail1;
        }
 
        priv->irq_regular = regular_irq;
@@ -873,8 +873,6 @@ fail4:
        free_irq(regular_irq, priv);
 fail3:
        iounmap(priv->sdmmc_base);
-fail2:
-       mmc_free_host(mmc);
 fail1:
        return ret;
 }
@@ -910,8 +908,6 @@ static void wmt_mci_remove(struct platform_device *pdev)
        clk_disable_unprepare(priv->clk_sdmmc);
        clk_put(priv->clk_sdmmc);
 
-       mmc_free_host(mmc);
-
        dev_info(&pdev->dev, "WMT MCI device removed\n");
 }