summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Vasut <marex@denx.de>2014-04-28 03:38:40 +0200
committerStefano Babic <sbabic@denx.de>2014-09-29 09:02:16 +0200
commitbe0ecdbed5efc7833275701ebdb1ff8ef7ffd4c0 (patch)
treed0de40a86d17fa43e9d4f74658110e0cf534c4eb
parentdd24b57bb78422eba6780f0b6cc4c0b049a82371 (diff)
downloadu-boot-imx-be0ecdbed5efc7833275701ebdb1ff8ef7ffd4c0.zip
u-boot-imx-be0ecdbed5efc7833275701ebdb1ff8ef7ffd4c0.tar.gz
u-boot-imx-be0ecdbed5efc7833275701ebdb1ff8ef7ffd4c0.tar.bz2
arm: mxs: Wait when disabling VDDMEM current limiter
According to i.MX23 datasheet Table 32-17, we must wait for the supply to settle before disabling the current limiter. Indeed, not waiting a little here causes the system to crash at times. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Stefano Babic <sbabic@denx.de>
-rw-r--r--arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c b/arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c
index 3baf4dd..de8841a 100644
--- a/arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c
+++ b/arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c
@@ -240,9 +240,14 @@ static void mx23_mem_setup_vddmem(void)
struct mxs_power_regs *power_regs =
(struct mxs_power_regs *)MXS_POWER_BASE;
+ /* We must wait before and after disabling the current limiter! */
+ early_delay(10000);
+
clrbits_le32(&power_regs->hw_power_vddmemctrl,
POWER_VDDMEMCTRL_ENABLE_ILIMIT);
+ early_delay(10000);
+
}
static void mx23_mem_init(void)