On Thu, Oct 21, 2010 at 11:20:28PM +0200, Eric Bénard wrote: > only these CPU's errata list this bug. So, it was not directly tested? > > Signed-off-by: Eric Bénard <eric@xxxxxxxxxx> > --- > drivers/mmc/host/sdhci-esdhc-imx.c | 10 +++++++--- > 1 files changed, 7 insertions(+), 3 deletions(-) > > diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c > index 11e1ae1..4d67f58 100644 > --- a/drivers/mmc/host/sdhci-esdhc-imx.c > +++ b/drivers/mmc/host/sdhci-esdhc-imx.c > @@ -136,6 +136,12 @@ static int esdhc_pltfm_init(struct sdhci_host *host, struct sdhci_pltfm_data *pd > host->quirks |= SDHCI_QUIRK_BROKEN_TIMEOUT_VAL; > } > > + /* fix errata ENGcm07207 which is present on i.MX25 and i.MX35 */ > + if (cpu_is_mx25() || cpu_is_mx35()) { > + dev_info(mmc_dev(host->mmc), "using ENGcm07207 workaround\n"); Same here, no printout please (or do you see a reason for it?) > + host->quirks |= SDHCI_QUIRK_NO_MULTIBLOCK; > + } > + > return 0; > } > > @@ -162,10 +168,8 @@ static struct sdhci_ops sdhci_esdhc_ops = { > }; > > struct sdhci_pltfm_data sdhci_esdhc_imx_pdata = { > - .quirks = ESDHC_DEFAULT_QUIRKS | SDHCI_QUIRK_NO_MULTIBLOCK > - | SDHCI_QUIRK_BROKEN_ADMA, > + .quirks = ESDHC_DEFAULT_QUIRKS | SDHCI_QUIRK_BROKEN_ADMA, > /* ADMA has issues. Might be fixable */ > - /* NO_MULTIBLOCK might be MX35 only (Errata: ENGcm07207) */ > .ops = &sdhci_esdhc_ops, > .init = esdhc_pltfm_init, > .exit = esdhc_pltfm_exit, Other than that, looks good. Thanks. -- Pengutronix e.K. | Wolfram Sang | Industrial Linux Solutions | http://www.pengutronix.de/ |
Attachment:
signature.asc
Description: Digital signature