summaryrefslogtreecommitdiff
path: root/drivers/mmc/host
diff options
context:
space:
mode:
authorHaibo Chen <haibo.chen@freescale.com>2015-10-29 17:21:37 +0800
committerOctavian Purdila <octavian.purdila@nxp.com>2017-02-23 14:21:42 +0200
commit31995b5eaa99d05ebd096a2a99796591fd247a45 (patch)
tree08791bbe3494c619f257938ba4b73360ba0b9fbf /drivers/mmc/host
parent91d8700f001ad77ec739feac00457381e78ef340 (diff)
MLK-11789 mmc: sdhci: Add 1ms delay in eMMC tuning procedure
On 4.1 kernel, some eMMC on i.MX7D-SDB board can't pass HS400 tuning, the same eMMC can pass HS400 tuning on 3.14 kernel. The difference is that 4.1 kernel does not have 1ms delay for eMMC during the tuning procedure. The root cause still not find, add back the 1ms delay first. Signed-off-by: Haibo Chen <haibo.chen@freescale.com>
Diffstat (limited to 'drivers/mmc/host')
-rw-r--r--drivers/mmc/host/sdhci.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
index 9288fdd07a0c..72c858672ea3 100644
--- a/drivers/mmc/host/sdhci.c
+++ b/drivers/mmc/host/sdhci.c
@@ -2120,9 +2120,8 @@ static int sdhci_execute_tuning(struct mmc_host *mmc, u32 opcode)
ctrl = sdhci_readw(host, SDHCI_HOST_CONTROL2);
- /* eMMC spec does not require a delay between tuning cycles */
- if (opcode == MMC_SEND_TUNING_BLOCK)
- mdelay(1);
+ /* Add 1ms delay for SD and eMMC */
+ mdelay(1);
} while (ctrl & SDHCI_CTRL_EXEC_TUNING);
/*