]> git.sur5r.net Git - u-boot/blobdiff - common/env_mmc.c
Merge branch 'master' of git://www.denx.de/git/u-boot-imx
[u-boot] / common / env_mmc.c
index bdb452e58c598731c9edc8e93d5e37f19e280919..a5d14d448c8f56fff3afcc64d405ab4486fbe031 100644 (file)
@@ -82,12 +82,8 @@ static int mmc_set_env_part(struct mmc *mmc)
        int dev = mmc_get_env_dev();
        int ret = 0;
 
-#ifdef CONFIG_SPL_BUILD
-       dev = 0;
-#endif
-
-       env_mmc_orig_hwpart = mmc->block_dev.hwpart;
-       ret = mmc_select_hwpart(dev, part);
+       env_mmc_orig_hwpart = mmc_get_blk_desc(mmc)->hwpart;
+       ret = blk_select_hwpart_devnum(IF_TYPE_MMC, dev, part);
        if (ret)
                puts("MMC partition switch failed\n");
 
@@ -116,10 +112,7 @@ static void fini_mmc_for_env(struct mmc *mmc)
 #ifdef CONFIG_SYS_MMC_ENV_PART
        int dev = mmc_get_env_dev();
 
-#ifdef CONFIG_SPL_BUILD
-       dev = 0;
-#endif
-       mmc_select_hwpart(dev, env_mmc_orig_hwpart);
+       blk_select_hwpart_devnum(IF_TYPE_MMC, dev, env_mmc_orig_hwpart);
 #endif
 }
 
@@ -128,12 +121,12 @@ static inline int write_env(struct mmc *mmc, unsigned long size,
                            unsigned long offset, const void *buffer)
 {
        uint blk_start, blk_cnt, n;
+       struct blk_desc *desc = mmc_get_blk_desc(mmc);
 
        blk_start       = ALIGN(offset, mmc->write_bl_len) / mmc->write_bl_len;
        blk_cnt         = ALIGN(size, mmc->write_bl_len) / mmc->write_bl_len;
 
-       n = mmc->block_dev.block_write(&mmc->block_dev, blk_start,
-                                       blk_cnt, (u_char *)buffer);
+       n = blk_dwrite(desc, blk_start, blk_cnt, (u_char *)buffer);
 
        return (n == blk_cnt) ? 0 : -1;
 }
@@ -197,12 +190,12 @@ static inline int read_env(struct mmc *mmc, unsigned long size,
                           unsigned long offset, const void *buffer)
 {
        uint blk_start, blk_cnt, n;
+       struct blk_desc *desc = mmc_get_blk_desc(mmc);
 
        blk_start       = ALIGN(offset, mmc->read_bl_len) / mmc->read_bl_len;
        blk_cnt         = ALIGN(size, mmc->read_bl_len) / mmc->read_bl_len;
 
-       n = mmc->block_dev.block_read(&mmc->block_dev, blk_start, blk_cnt,
-                                     (uchar *)buffer);
+       n = blk_dread(desc, blk_start, blk_cnt, (uchar *)buffer);
 
        return (n == blk_cnt) ? 0 : -1;
 }
@@ -223,10 +216,6 @@ void env_relocate_spec(void)
        ALLOC_CACHE_ALIGN_BUFFER(env_t, tmp_env1, 1);
        ALLOC_CACHE_ALIGN_BUFFER(env_t, tmp_env2, 1);
 
-#ifdef CONFIG_SPL_BUILD
-       dev = 0;
-#endif
-
        mmc = find_mmc_device(dev);
 
        errmsg = init_mmc_for_env(mmc);
@@ -306,10 +295,6 @@ void env_relocate_spec(void)
        int dev = mmc_get_env_dev();
        const char *errmsg;
 
-#ifdef CONFIG_SPL_BUILD
-       dev = 0;
-#endif
-
        mmc = find_mmc_device(dev);
 
        errmsg = init_mmc_for_env(mmc);