]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - drivers/mmc/meson_gx_mmc.c
Merge git://git.denx.de/u-boot-mmc
[people/ms/u-boot.git] / drivers / mmc / meson_gx_mmc.c
index 8e28ab70f5ed816540b6b32af11ca8bd3988a44a..a2cd5d3a446b6c9b82523a93b4ff29bb07257893 100644 (file)
@@ -5,12 +5,12 @@
  */
 
 #include <common.h>
+#include <dm.h>
 #include <fdtdec.h>
 #include <malloc.h>
 #include <mmc.h>
 #include <asm/io.h>
 #include <asm/arch/sd_emmc.h>
-#include <dm/device.h>
 #include <linux/log2.h>
 
 static inline void *get_regbase(const struct mmc *mmc)
@@ -221,7 +221,7 @@ static int meson_mmc_ofdata_to_platdata(struct udevice *dev)
        struct meson_mmc_platdata *pdata = dev_get_platdata(dev);
        fdt_addr_t addr;
 
-       addr = dev_get_addr(dev);
+       addr = devfdt_get_addr(dev);
        if (addr == FDT_ADDR_T_NONE)
                return -EINVAL;
 
@@ -244,13 +244,13 @@ static int meson_mmc_probe(struct udevice *dev)
                        MMC_MODE_HS_52MHz | MMC_MODE_HS;
        cfg->f_min = DIV_ROUND_UP(SD_EMMC_CLKSRC_24M, CLK_MAX_DIV);
        cfg->f_max = 100000000; /* 100 MHz */
-       cfg->b_max = 256; /* max 256 blocks */
+       cfg->b_max = 511; /* max 512 - 1 blocks */
        cfg->name = dev->name;
 
        mmc->priv = pdata;
        upriv->mmc = mmc;
 
-       mmc_set_clock(mmc, cfg->f_min);
+       mmc_set_clock(mmc, cfg->f_min, false);
 
        /* reset all status bits */
        meson_write(mmc, STATUS_MASK, MESON_SD_EMMC_STATUS);