dm: mmc: Adjust mmc_switch_part() to use a struct mmc

Instead of looking up the MMC device by number, just pass it in. This makes
it possible to use this function with driver model.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass 2016-05-01 13:52:37 -06:00
parent 1598dfcb10
commit fdbb139f0c
1 changed files with 4 additions and 8 deletions

View File

@ -560,14 +560,10 @@ static int mmc_set_capacity(struct mmc *mmc, int part_num)
return 0; return 0;
} }
int mmc_switch_part(int dev_num, unsigned int part_num) static int mmc_switch_part(struct mmc *mmc, unsigned int part_num)
{ {
struct mmc *mmc = find_mmc_device(dev_num);
int ret; int ret;
if (!mmc)
return -1;
ret = mmc_switch(mmc, EXT_CSD_CMD_SET_NORMAL, EXT_CSD_PART_CONF, ret = mmc_switch(mmc, EXT_CSD_CMD_SET_NORMAL, EXT_CSD_PART_CONF,
(mmc->part_config & ~PART_ACCESS_MASK) (mmc->part_config & ~PART_ACCESS_MASK)
| (part_num & PART_ACCESS_MASK)); | (part_num & PART_ACCESS_MASK));
@ -578,7 +574,7 @@ int mmc_switch_part(int dev_num, unsigned int part_num)
*/ */
if ((ret == 0) || ((ret == -ENODEV) && (part_num == 0))) { if ((ret == 0) || ((ret == -ENODEV) && (part_num == 0))) {
ret = mmc_set_capacity(mmc, part_num); ret = mmc_set_capacity(mmc, part_num);
mmc->block_dev.hwpart = part_num; mmc_get_blk_desc(mmc)->hwpart = part_num;
} }
return ret; return ret;
@ -598,7 +594,7 @@ static int mmc_select_hwpartp(struct blk_desc *desc, int hwpart)
if (mmc->part_config == MMCPART_NOAVAILABLE) if (mmc->part_config == MMCPART_NOAVAILABLE)
return -EMEDIUMTYPE; return -EMEDIUMTYPE;
ret = mmc_switch_part(desc->devnum, hwpart); ret = mmc_switch_part(mmc, hwpart);
if (ret) if (ret)
return ret; return ret;
@ -619,7 +615,7 @@ int mmc_select_hwpart(int dev_num, int hwpart)
if (mmc->part_config == MMCPART_NOAVAILABLE) if (mmc->part_config == MMCPART_NOAVAILABLE)
return -EMEDIUMTYPE; return -EMEDIUMTYPE;
ret = mmc_switch_part(dev_num, hwpart); ret = mmc_switch_part(mmc, hwpart);
if (ret) if (ret)
return ret; return ret;