dm: mmc: Use the new select_hwpart() API
Avoid calling directly into the MMC code - use the new API call instead. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
0776167ec5
commit
69f45cd53b
|
@ -314,12 +314,14 @@ static int do_mmcrpmb(cmd_tbl_t *cmdtp, int flag,
|
||||||
}
|
}
|
||||||
/* Switch to the RPMB partition */
|
/* Switch to the RPMB partition */
|
||||||
original_part = mmc->block_dev.hwpart;
|
original_part = mmc->block_dev.hwpart;
|
||||||
if (mmc_select_hwpart(curr_device, MMC_PART_RPMB) != 0)
|
if (blk_select_hwpart_devnum(IF_TYPE_MMC, curr_device, MMC_PART_RPMB) !=
|
||||||
|
0)
|
||||||
return CMD_RET_FAILURE;
|
return CMD_RET_FAILURE;
|
||||||
ret = cp->cmd(cmdtp, flag, argc, argv);
|
ret = cp->cmd(cmdtp, flag, argc, argv);
|
||||||
|
|
||||||
/* Return to original partition */
|
/* Return to original partition */
|
||||||
if (mmc_select_hwpart(curr_device, original_part) != 0)
|
if (blk_select_hwpart_devnum(IF_TYPE_MMC, curr_device, original_part) !=
|
||||||
|
0)
|
||||||
return CMD_RET_FAILURE;
|
return CMD_RET_FAILURE;
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
@ -467,7 +469,7 @@ static int do_mmc_dev(cmd_tbl_t *cmdtp, int flag,
|
||||||
if (!mmc)
|
if (!mmc)
|
||||||
return CMD_RET_FAILURE;
|
return CMD_RET_FAILURE;
|
||||||
|
|
||||||
ret = mmc_select_hwpart(dev, part);
|
ret = blk_select_hwpart_devnum(IF_TYPE_MMC, dev, part);
|
||||||
printf("switch to partitions #%d, %s\n",
|
printf("switch to partitions #%d, %s\n",
|
||||||
part, (!ret) ? "OK" : "ERROR");
|
part, (!ret) ? "OK" : "ERROR");
|
||||||
if (ret)
|
if (ret)
|
||||||
|
|
|
@ -86,8 +86,8 @@ static int mmc_set_env_part(struct mmc *mmc)
|
||||||
dev = 0;
|
dev = 0;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
env_mmc_orig_hwpart = mmc->block_dev.hwpart;
|
env_mmc_orig_hwpart = mmc_get_blk_desc(mmc)->hwpart;
|
||||||
ret = mmc_select_hwpart(dev, part);
|
ret = blk_select_hwpart_devnum(IF_TYPE_MMC, dev, part);
|
||||||
if (ret)
|
if (ret)
|
||||||
puts("MMC partition switch failed\n");
|
puts("MMC partition switch failed\n");
|
||||||
|
|
||||||
|
@ -119,7 +119,7 @@ static void fini_mmc_for_env(struct mmc *mmc)
|
||||||
#ifdef CONFIG_SPL_BUILD
|
#ifdef CONFIG_SPL_BUILD
|
||||||
dev = 0;
|
dev = 0;
|
||||||
#endif
|
#endif
|
||||||
mmc_select_hwpart(dev, env_mmc_orig_hwpart);
|
blk_select_hwpart_devnum(IF_TYPE_MMC, dev, env_mmc_orig_hwpart);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -296,7 +296,7 @@ int spl_mmc_load_image(u32 boot_device)
|
||||||
if (part == 7)
|
if (part == 7)
|
||||||
part = 0;
|
part = 0;
|
||||||
|
|
||||||
err = mmc_switch_part(0, part);
|
err = blk_dselect_hwpart(mmc_get_blk_desc(mmc), part);
|
||||||
if (err) {
|
if (err) {
|
||||||
#ifdef CONFIG_SPL_LIBCOMMON_SUPPORT
|
#ifdef CONFIG_SPL_LIBCOMMON_SUPPORT
|
||||||
puts("spl: mmc partition switch failed\n");
|
puts("spl: mmc partition switch failed\n");
|
||||||
|
|
|
@ -50,8 +50,9 @@ static int mmc_block_op(enum dfu_op op, struct dfu_entity *dfu,
|
||||||
|
|
||||||
if (dfu->data.mmc.hw_partition >= 0) {
|
if (dfu->data.mmc.hw_partition >= 0) {
|
||||||
part_num_bkp = mmc->block_dev.hwpart;
|
part_num_bkp = mmc->block_dev.hwpart;
|
||||||
ret = mmc_select_hwpart(dfu->data.mmc.dev_num,
|
ret = blk_select_hwpart_devnum(IF_TYPE_MMC,
|
||||||
dfu->data.mmc.hw_partition);
|
dfu->data.mmc.dev_num,
|
||||||
|
dfu->data.mmc.hw_partition);
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
@ -75,12 +76,16 @@ static int mmc_block_op(enum dfu_op op, struct dfu_entity *dfu,
|
||||||
if (n != blk_count) {
|
if (n != blk_count) {
|
||||||
error("MMC operation failed");
|
error("MMC operation failed");
|
||||||
if (dfu->data.mmc.hw_partition >= 0)
|
if (dfu->data.mmc.hw_partition >= 0)
|
||||||
mmc_select_hwpart(dfu->data.mmc.dev_num, part_num_bkp);
|
blk_select_hwpart_devnum(IF_TYPE_MMC,
|
||||||
|
dfu->data.mmc.dev_num,
|
||||||
|
part_num_bkp);
|
||||||
return -EIO;
|
return -EIO;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (dfu->data.mmc.hw_partition >= 0) {
|
if (dfu->data.mmc.hw_partition >= 0) {
|
||||||
ret = mmc_select_hwpart(dfu->data.mmc.dev_num, part_num_bkp);
|
ret = blk_select_hwpart_devnum(IF_TYPE_MMC,
|
||||||
|
dfu->data.mmc.dev_num,
|
||||||
|
part_num_bkp);
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
|
@ -257,7 +257,7 @@ static ulong mmc_bread(struct blk_desc *block_dev, lbaint_t start,
|
||||||
if (!mmc)
|
if (!mmc)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
err = mmc_select_hwpart(dev_num, block_dev->hwpart);
|
err = blk_dselect_hwpart(block_dev, block_dev->hwpart);
|
||||||
if (err < 0)
|
if (err < 0)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
|
|
@ -78,7 +78,8 @@ unsigned long mmc_berase(struct blk_desc *block_dev, lbaint_t start,
|
||||||
if (!mmc)
|
if (!mmc)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
err = mmc_select_hwpart(dev_num, block_dev->hwpart);
|
err = blk_select_hwpart_devnum(IF_TYPE_MMC, dev_num,
|
||||||
|
block_dev->hwpart);
|
||||||
if (err < 0)
|
if (err < 0)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
|
@ -182,7 +183,7 @@ ulong mmc_bwrite(struct blk_desc *block_dev, lbaint_t start, lbaint_t blkcnt,
|
||||||
if (!mmc)
|
if (!mmc)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
err = mmc_select_hwpart(dev_num, block_dev->hwpart);
|
err = blk_select_hwpart_devnum(IF_TYPE_MMC, dev_num, block_dev->hwpart);
|
||||||
if (err < 0)
|
if (err < 0)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
|
|
@ -415,7 +415,6 @@ struct mmc *find_mmc_device(int dev_num);
|
||||||
int mmc_set_dev(int dev_num);
|
int mmc_set_dev(int dev_num);
|
||||||
void print_mmc_devices(char separator);
|
void print_mmc_devices(char separator);
|
||||||
int get_mmc_num(void);
|
int get_mmc_num(void);
|
||||||
int mmc_switch_part(int dev_num, unsigned int part_num);
|
|
||||||
int mmc_hwpart_config(struct mmc *mmc, const struct mmc_hwpart_conf *conf,
|
int mmc_hwpart_config(struct mmc *mmc, const struct mmc_hwpart_conf *conf,
|
||||||
enum mmc_hwpart_conf_mode mode);
|
enum mmc_hwpart_conf_mode mode);
|
||||||
int mmc_getcd(struct mmc *mmc);
|
int mmc_getcd(struct mmc *mmc);
|
||||||
|
|
Loading…
Reference in New Issue