aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mmc/host/sdhci-esdhc-imx.c
diff options
context:
space:
mode:
authorEric Bénard <eric@eukrea.com>2010-10-22 19:57:22 -0400
committerChris Ball <cjb@laptop.org>2010-11-07 17:52:27 -0500
commit16a790bcce87740d219b7227eaa4df72804097ea (patch)
tree3500ab9756a15b8337f5b1cfd3549a4db6d14bd6 /drivers/mmc/host/sdhci-esdhc-imx.c
parent37865fe91582582a6f6c00652f6a2b1ff71f8a78 (diff)
mmc: sdhci-esdhc-imx: enable QUIRK_NO_MULTIBLOCK only for i.MX25 and i.MX35
Only these CPUs list the bug in their errata. Signed-off-by: Eric Bénard <eric@eukrea.com> Acked-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'drivers/mmc/host/sdhci-esdhc-imx.c')
-rw-r--r--drivers/mmc/host/sdhci-esdhc-imx.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c
index 28e63ef58d0..9b82910b9db 100644
--- a/drivers/mmc/host/sdhci-esdhc-imx.c
+++ b/drivers/mmc/host/sdhci-esdhc-imx.c
@@ -116,6 +116,10 @@ static int esdhc_pltfm_init(struct sdhci_host *host, struct sdhci_pltfm_data *pd
116 if (cpu_is_mx35() || cpu_is_mx51()) 116 if (cpu_is_mx35() || cpu_is_mx51())
117 host->quirks |= SDHCI_QUIRK_BROKEN_TIMEOUT_VAL; 117 host->quirks |= SDHCI_QUIRK_BROKEN_TIMEOUT_VAL;
118 118
119 /* Fix errata ENGcm07207 which is present on i.MX25 and i.MX35 */
120 if (cpu_is_mx25() || cpu_is_mx35())
121 host->quirks |= SDHCI_QUIRK_NO_MULTIBLOCK;
122
119 return 0; 123 return 0;
120} 124}
121 125
@@ -137,10 +141,8 @@ static struct sdhci_ops sdhci_esdhc_ops = {
137}; 141};
138 142
139struct sdhci_pltfm_data sdhci_esdhc_imx_pdata = { 143struct sdhci_pltfm_data sdhci_esdhc_imx_pdata = {
140 .quirks = ESDHC_DEFAULT_QUIRKS | SDHCI_QUIRK_NO_MULTIBLOCK 144 .quirks = ESDHC_DEFAULT_QUIRKS | SDHCI_QUIRK_BROKEN_ADMA,
141 | SDHCI_QUIRK_BROKEN_ADMA,
142 /* ADMA has issues. Might be fixable */ 145 /* ADMA has issues. Might be fixable */
143 /* NO_MULTIBLOCK might be MX35 only (Errata: ENGcm07207) */
144 .ops = &sdhci_esdhc_ops, 146 .ops = &sdhci_esdhc_ops,
145 .init = esdhc_pltfm_init, 147 .init = esdhc_pltfm_init,
146 .exit = esdhc_pltfm_exit, 148 .exit = esdhc_pltfm_exit,