summaryrefslogtreecommitdiff
path: root/drivers/mmc
diff options
context:
space:
mode:
authorTony Lin <tony.lin@freescale.com>2012-02-02 13:59:05 +0800
committerTony Lin <tony.lin@freescale.com>2012-02-07 15:54:24 +0800
commit002b4604e15fb7754f17d43196d78cd82c8b166b (patch)
treef5ba4bff20480db04dd49cbed6314d3e21b3c611 /drivers/mmc
parent56ce1ac35cfb1e72250ec1c41dcf01691a29c89b (diff)
ENGR00173615-2 [mx6q mmc]remove software workaround for TO1.1 and later
the card interrupt status bit workaround and TC interrupt comes earlier than DMA interrupt workaround are not necessary for i.MX6Q TO1.1 and later Signed-off-by: Tony Lin <tony.lin@freescale.com>
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/host/sdhci-esdhc-imx.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c
index 5aec0bfe6fd6..3b180a035d41 100644
--- a/drivers/mmc/host/sdhci-esdhc-imx.c
+++ b/drivers/mmc/host/sdhci-esdhc-imx.c
@@ -102,9 +102,10 @@ static u32 esdhc_readl_le(struct sdhci_host *host, int reg)
val |= SDHCI_CARD_PRESENT;
}
- if (reg == SDHCI_INT_STATUS && cpu_is_mx6q()) {
+ if (reg == SDHCI_INT_STATUS && cpu_is_mx6q()
+ && mx6q_revision() == IMX_CHIP_REVISION_1_0) {
/*
- * on mx6q, there is low possibility that
+ * on mx6q TO1.0, there is low possibility that
* DATA END interrupt comes ealier than DMA
* END interrupt which is conflict with standard
* host controller spec. In this case, read the
@@ -157,10 +158,11 @@ static void esdhc_writel_le(struct sdhci_host *host, u32 val, int reg)
val &= ~(SDHCI_INT_CARD_REMOVE | \
SDHCI_INT_CARD_INSERT);
- if (!(val & SDHCI_INT_CARD_INT) && cpu_is_mx6q())
+ if (!(val & SDHCI_INT_CARD_INT) && cpu_is_mx6q()
+ && mx6q_revision() == IMX_CHIP_REVISION_1_0)
/*
* write 1 to clear card interrupt status bit
- * (only applied to mx6q)
+ * (only applied to mx6q TO1.0)
* uSDHC used for mx6q has such problem which is
* not consistant with standard host controller
* definition.