summaryrefslogtreecommitdiff
path: root/drivers/mmc
diff options
context:
space:
mode:
authorRyan QIAN <b32804@freescale.com>2012-07-24 12:33:40 +0800
committerTerry Lv <r65388@freescale.com>2012-07-25 13:11:40 +0800
commit4bd49edd9a394aadffb25b317ca9a56d829e845c (patch)
treebb958af2d618a3dcdd2e9c3986d0e1d2f83f1394 /drivers/mmc
parentf1c9af6e602c5d34767113cb4d2f1970584a7fd1 (diff)
ENGR00217936-02 mmc: esdhc: fix unknown controller version for usdhc
- Add cpu_is_mx6dq, cpu_is_mx6dl to strengthen the condition. Note: mx6sl has no such issue because it's fixed by IC, in other word, mx6sl aligns with sdhc specification. Signed-off-by: Ryan QIAN <b32804@freescale.com>
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/host/sdhci-esdhc-imx.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c
index 11111855bb8b..3f809a6c87f3 100644
--- a/drivers/mmc/host/sdhci-esdhc-imx.c
+++ b/drivers/mmc/host/sdhci-esdhc-imx.c
@@ -364,8 +364,9 @@ static u16 esdhc_readw_le(struct sdhci_host *host, int reg)
case SDHCI_HOST_VERSION:
reg ^= 2;
val = readl(host->ioaddr + reg);
- if (((val & SDHCI_SPEC_VER_MASK) >> SDHCI_SPEC_VER_SHIFT)
- == SDHCI_FSL_SVN_300) {
+ if ((cpu_is_mx6q() || cpu_is_mx6dl()) &&
+ ((val & SDHCI_SPEC_VER_MASK) >> SDHCI_SPEC_VER_SHIFT)
+ == SDHCI_FSL_SVN_300) {
val &= ~SDHCI_SPEC_VER_MASK;
val |= SDHCI_SPEC_300;
}