From: Stephen Warren <swar...@nvidia.com> The implementation of mmc_select_hwpart() was cribbed from do_mmcops(). Update do_mmcops() to call mmc_select_hwpart() to avoid duplication.
Signed-off-by: Stephen Warren <swar...@nvidia.com> --- common/cmd_mmc.c | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/common/cmd_mmc.c b/common/cmd_mmc.c index c1916c9b56a6..572aa895fa1c 100644 --- a/common/cmd_mmc.c +++ b/common/cmd_mmc.c @@ -193,7 +193,7 @@ static int do_mmcops(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) print_mmc_devices('\n'); return 0; } else if (strcmp(argv[1], "dev") == 0) { - int dev, part = -1; + int dev, part = -1, ret; struct mmc *mmc; if (argc == 2) @@ -219,20 +219,11 @@ static int do_mmcops(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) mmc_init(mmc); if (part != -1) { - int ret; - if (mmc->part_config == MMCPART_NOAVAILABLE) { - printf("Card doesn't support part_switch\n"); + ret = mmc_select_hwpart(dev, part); + printf("switch to partitions #%d, %s\n", + part, (!ret) ? "OK" : "ERROR"); + if (ret) return 1; - } - - if (part != mmc->part_num) { - ret = mmc_switch_part(dev, part); - if (!ret) - mmc->part_num = part; - - printf("switch to partitions #%d, %s\n", - part, (!ret) ? "OK" : "ERROR"); - } } curr_device = dev; if (mmc->part_config == MMCPART_NOAVAILABLE) -- 1.8.1.5 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot