On 2/10/23 21:23, Stefan Roese wrote:
> All build targets using this driver already use DM_MMC. So let's depend
> this driver on this Kconfig symbol and remove the non-DM driver part.
> 
> Signed-off-by: Stefan Roese <s...@denx.de>
> Cc: Tom Rini <tr...@konsulko.com>
> Cc: Simon Glass <s...@chromium.org>
> Cc: Peng Fan <peng....@nxp.com>
> Cc: Jaehoon Chung <jh80.ch...@samsung.com>


Reviewed-by: Jaehoon Chung <jh80.ch...@samsung.com>

Best Regards,
Jaehoon Chung

> ---
>  drivers/mmc/Kconfig    |  1 +
>  drivers/mmc/mv_sdhci.c | 39 +++++++--------------------------------
>  2 files changed, 8 insertions(+), 32 deletions(-)
> 
> diff --git a/drivers/mmc/Kconfig b/drivers/mmc/Kconfig
> index 878f867c627b..3f5f61503fb6 100644
> --- a/drivers/mmc/Kconfig
> +++ b/drivers/mmc/Kconfig
> @@ -621,6 +621,7 @@ config MMC_SDHCI_MV
>       bool "SDHCI support on Marvell platform"
>       depends on ARCH_MVEBU
>       depends on MMC_SDHCI
> +     depends on DM_MMC
>       help
>         This selects the Secure Digital Host Controller Interface on
>         Marvell platform.
> diff --git a/drivers/mmc/mv_sdhci.c b/drivers/mmc/mv_sdhci.c
> index 42fa735f3160..dbdd671c88bc 100644
> --- a/drivers/mmc/mv_sdhci.c
> +++ b/drivers/mmc/mv_sdhci.c
> @@ -15,6 +15,13 @@
>  #define SDHCI_WINDOW_CTRL(win)               (0x4080 + ((win) << 4))
>  #define SDHCI_WINDOW_BASE(win)               (0x4084 + ((win) << 4))
>  
> +DECLARE_GLOBAL_DATA_PTR;
> +
> +struct mv_sdhci_plat {
> +     struct mmc_config cfg;
> +     struct mmc mmc;
> +};
> +
>  static void sdhci_mvebu_mbus_config(void __iomem *base)
>  {
>       const struct mbus_dram_target_info *dram;
> @@ -40,37 +47,6 @@ static void sdhci_mvebu_mbus_config(void __iomem *base)
>       }
>  }
>  
> -#ifndef CONFIG_DM_MMC
> -
> -int mv_sdh_init(unsigned long regbase, u32 max_clk, u32 min_clk, u32 quirks)
> -{
> -     struct sdhci_host *host = NULL;
> -     host = calloc(1, sizeof(*host));
> -     if (!host) {
> -             printf("sdh_host malloc fail!\n");
> -             return -ENOMEM;
> -     }
> -
> -     host->name = MVSDH_NAME;
> -     host->ioaddr = (void *)regbase;
> -     host->quirks = quirks;
> -     host->max_clk = max_clk;
> -
> -     /* Configure SDHCI MBUS mbus bridge windows */
> -     sdhci_mvebu_mbus_config((void __iomem *)regbase);
> -
> -     return add_sdhci(host, 0, min_clk);
> -}
> -
> -#else
> -
> -DECLARE_GLOBAL_DATA_PTR;
> -
> -struct mv_sdhci_plat {
> -     struct mmc_config cfg;
> -     struct mmc mmc;
> -};
> -
>  static int mv_sdhci_probe(struct udevice *dev)
>  {
>       struct mmc_uclass_priv *upriv = dev_get_uclass_priv(dev);
> @@ -123,4 +99,3 @@ U_BOOT_DRIVER(mv_sdhci_drv) = {
>       .priv_auto      = sizeof(struct sdhci_host),
>       .plat_auto      = sizeof(struct mv_sdhci_plat),
>  };
> -#endif /* CONFIG_DM_MMC */

Reply via email to