> On Nov 28, 2014, at 11:10 , Diego Santa Cruz <diego.santac...@spinetix.com> > wrote: > > The mmc_startup() function uses the ext_csd data even if reading it > from the mmc device failed. This bug was introduced in commit > bc897b1d4d86597311430dbe7b3e6c807c8c53e5. We now bail out if > reading it fails, this should not be a problem as ext_csd was > introduced in MMC 4.0 and this code is conditional on MMC >= 4.0. > --- > drivers/mmc/mmc.c | 4 +++- > 1 files changed, 3 insertions(+), 1 deletions(-) > > diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c > index f545576..8f6cbd5 100644 > --- a/drivers/mmc/mmc.c > +++ b/drivers/mmc/mmc.c > @@ -972,7 +972,9 @@ static int mmc_startup(struct mmc *mmc) > if (!IS_SD(mmc) && (mmc->version >= MMC_VERSION_4)) { > /* check ext_csd version and capacity */ > err = mmc_send_ext_csd(mmc, ext_csd); > - if (!err && (ext_csd[EXT_CSD_REV] >= 2)) { > + if (err) > + return err;
Hum, good catch. > + if (ext_csd[EXT_CSD_REV] >= 2) { > /* > * According to the JEDEC Standard, the value of > * ext_csd's capacity is valid if the value is more > -- > 1.7.1 > _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot