summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorYe.Li <B37916@freescale.com>2015-12-14 17:07:46 +0800
committerYe Li <ye.li@nxp.com>2016-03-25 11:16:12 +0800
commit279e0bee725c32f23b63620c455052552cf7adaa (patch)
treeba824e45ece4732dc58208ee1a2fb03ee0ea5e38 /drivers
parenta40194292aebf63ffcce49f2f5c8eea341f93b92 (diff)
downloadu-boot-imx-279e0bee725c32f23b63620c455052552cf7adaa.zip
u-boot-imx-279e0bee725c32f23b63620c455052552cf7adaa.tar.gz
u-boot-imx-279e0bee725c32f23b63620c455052552cf7adaa.tar.bz2
MLK-12001 MMC:USDHC: Clear DLL_CTRL delay line settings at driver init
Clear DLL_CTRL delay line settings at USDHC initialization to eliminate the pre-settings from boot rom. U-boot should re-init the USDHC not reply on the value set by boot from. On MX6DL, the ROM has set the default delay line(DLLCTRL) to 0x1000021, when eMMC works on DDR mode in kernel, it will possibly cause data CRC errors. Even u-boot always use eMMC in SDR mode, for safety sake, it is better to clear it too. Signed-off-by: Ye.Li <B37916@freescale.com> (cherry picked from commit f355f117a6d735b0c3cba79f1cb24829cf8cae25)
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mmc/fsl_esdhc.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c
index 73d9a02..475e6dd 100644
--- a/drivers/mmc/fsl_esdhc.c
+++ b/drivers/mmc/fsl_esdhc.c
@@ -608,6 +608,9 @@ static int esdhc_init(struct mmc *mmc)
/* Put VEND_SPEC to default value */
esdhc_write32(&regs->vendorspec, VENDORSPEC_INIT);
+
+ /* Disable DLL_CTRL delay line */
+ esdhc_write32(&regs->dllctrl, 0x0);
#endif
#ifndef ARCH_MXC