dm: sandbox: Convert to use CONFIG_CMD_MMC_OPS
authorSimon Glass <sjg@chromium.org>
Mon, 13 Jun 2016 05:30:26 +0000 (23:30 -0600)
committerSimon Glass <sjg@chromium.org>
Mon, 11 Jul 2016 20:06:44 +0000 (14:06 -0600)
Update the sandbox MMC emulation to use driver model for MMC operations.

Signed-off-by: Simon Glass <sjg@chromium.org>
arch/Kconfig
configs/sandbox_defconfig
drivers/mmc/sandbox_mmc.c

index 566f04430890e212fcd16331d7fd51dbe0103d0c..c43787c63962af2c9b2d9d8ab381de2a67a8e2cb 100644 (file)
@@ -63,6 +63,7 @@ config SANDBOX
        select DM_I2C
        select DM_SPI
        select DM_GPIO
+       select DM_MMC
 
 config SH
        bool "SuperH architecture"
index 94253a65e4f9667edaa10dc283b6e763bffa5b07..6a1874afb49663b01a02fd8dddaab10c2d9d2161 100644 (file)
@@ -1,5 +1,4 @@
 CONFIG_SYS_MALLOC_F_LEN=0x2000
-CONFIG_BLK=y
 CONFIG_MMC=y
 CONFIG_PCI=y
 CONFIG_DEFAULT_DEVICE_TREE="sandbox"
@@ -71,6 +70,7 @@ CONFIG_DEVRES=y
 CONFIG_DEBUG_DEVRES=y
 CONFIG_ADC=y
 CONFIG_ADC_SANDBOX=y
+CONFIG_BLK=y
 CONFIG_CLK=y
 CONFIG_CPU=y
 CONFIG_DM_DEMO=y
@@ -101,7 +101,7 @@ CONFIG_CROS_EC_SPI=y
 CONFIG_PWRSEQ=y
 CONFIG_SPL_PWRSEQ=y
 CONFIG_SYSRESET=y
-CONFIG_DM_MMC=y
+CONFIG_DM_MMC_OPS=y
 CONFIG_SANDBOX_MMC=y
 CONFIG_SPI_FLASH_SANDBOX=y
 CONFIG_SPI_FLASH=y
index 7da059c43cd69650911572183b777d85fdb23612..5f1333b7480ce174763101b65e83fe6484d48326 100644 (file)
@@ -25,7 +25,7 @@ struct sandbox_mmc_plat {
  * This emulate an SD card version 2. Single-block reads result in zero data.
  * Multiple-block reads return a test string.
  */
-static int sandbox_mmc_send_cmd(struct mmc *mmc, struct mmc_cmd *cmd,
+static int sandbox_mmc_send_cmd(struct udevice *dev, struct mmc_cmd *cmd,
                                struct mmc_data *data)
 {
        switch (cmd->cmdidx) {
@@ -85,25 +85,20 @@ static int sandbox_mmc_send_cmd(struct mmc *mmc, struct mmc_cmd *cmd,
        return 0;
 }
 
-static void sandbox_mmc_set_ios(struct mmc *mmc)
-{
-}
-
-static int sandbox_mmc_init(struct mmc *mmc)
+static int sandbox_mmc_set_ios(struct udevice *dev)
 {
        return 0;
 }
 
-static int sandbox_mmc_getcd(struct mmc *mmc)
+static int sandbox_mmc_get_cd(struct udevice *dev)
 {
        return 1;
 }
 
-static const struct mmc_ops sandbox_mmc_ops = {
+static const struct dm_mmc_ops sandbox_mmc_ops = {
        .send_cmd = sandbox_mmc_send_cmd,
        .set_ios = sandbox_mmc_set_ios,
-       .init = sandbox_mmc_init,
-       .getcd = sandbox_mmc_getcd,
+       .get_cd = sandbox_mmc_get_cd,
 };
 
 int sandbox_mmc_probe(struct udevice *dev)
@@ -120,7 +115,6 @@ int sandbox_mmc_bind(struct udevice *dev)
        int ret;
 
        cfg->name = dev->name;
-       cfg->ops = &sandbox_mmc_ops;
        cfg->host_caps = MMC_MODE_HS_52MHz | MMC_MODE_HS | MMC_MODE_8BIT;
        cfg->voltages = MMC_VDD_165_195 | MMC_VDD_32_33 | MMC_VDD_33_34;
        cfg->f_min = 1000000;
@@ -150,6 +144,7 @@ U_BOOT_DRIVER(mmc_sandbox) = {
        .name           = "mmc_sandbox",
        .id             = UCLASS_MMC,
        .of_match       = sandbox_mmc_ids,
+       .ops            = &sandbox_mmc_ops,
        .bind           = sandbox_mmc_bind,
        .unbind         = sandbox_mmc_unbind,
        .probe          = sandbox_mmc_probe,