summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaffaele Recalcati <lamiaposta71@gmail.com>2011-03-23 04:06:50 +0000
committerAndy Fleming <afleming@freescale.com>2011-04-13 07:09:04 -0500
commit8511cd84ab2749c8edf41d123f365a1d2353528e (patch)
tree02102c27f040a69107e7423e241b39df6d76fbcf
parent5db2fe3ad9bdf4f32d72dbf2d3e3042bcd137a52 (diff)
downloadu-boot-imx-8511cd84ab2749c8edf41d123f365a1d2353528e.zip
u-boot-imx-8511cd84ab2749c8edf41d123f365a1d2353528e.tar.gz
u-boot-imx-8511cd84ab2749c8edf41d123f365a1d2353528e.tar.bz2
MMC may wrongly regconize 2GB eMMC as high capacity
Hi Terry, > So I guess: > mmc_init calls mmc_send_op_cond  that set  high_capacity, > than it calls mmc_startup, that, with MMC_CMD_SEND_CSD  command, set > the capacity, using values in CSD register. > So I guess that mmc_change_freq should not recalculate high_capacity. > > It seems better, isn't it? > > Regards, > Raffaele > Finally I think that it is enough to apply the following patch in order to fix the issue. Regards, Raffaele Signed-off-by: Andy Fleming <afleming@freescale.com>
-rw-r--r--drivers/mmc/mmc.c3
1 files changed, 0 insertions, 3 deletions
diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
index 36f80fa..f27b7c7 100644
--- a/drivers/mmc/mmc.c
+++ b/drivers/mmc/mmc.c
@@ -553,9 +553,6 @@ int mmc_change_freq(struct mmc *mmc)
if (err)
return err;
- if (ext_csd[212] || ext_csd[213] || ext_csd[214] || ext_csd[215])
- mmc->high_capacity = 1;
-
cardtype = ext_csd[196] & 0xf;
err = mmc_switch(mmc, EXT_CSD_CMD_SET_NORMAL, EXT_CSD_HS_TIMING, 1);