mxs: Boost the memory power supply
authorMarek Vasut <marex@denx.de>
Mon, 21 Jan 2013 14:57:03 +0000 (14:57 +0000)
committerStefano Babic <sbabic@denx.de>
Mon, 28 Jan 2013 05:40:38 +0000 (06:40 +0100)
The memory power supply on MX23 didn't pump out enough juice into
the DRAM chip, thus caused occasional memory corruption. Fix this.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Otavio Salvador <otavio@ossystems.com.br>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Acked-by: Otavio Salvador <otavio@ossystems.com.br>
arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c
board/olimex/mx23_olinuxino/spl_boot.c

index 5944dd2813bc290c25ee687bd052821a5cab0fc2..836e6361f2cfd0a0509e3a9b43c9d22ae9136c30 100644 (file)
@@ -230,7 +230,7 @@ static void mx23_mem_setup_vddmem(void)
        struct mxs_power_regs *power_regs =
                (struct mxs_power_regs *)MXS_POWER_BASE;
 
-       writel((0x10 << POWER_VDDMEMCTRL_TRG_OFFSET) |
+       writel((0x12 << POWER_VDDMEMCTRL_TRG_OFFSET) |
                POWER_VDDMEMCTRL_ENABLE_ILIMIT |
                POWER_VDDMEMCTRL_ENABLE_LINREG |
                POWER_VDDMEMCTRL_PULLDOWN_ACTIVE,
@@ -238,7 +238,7 @@ static void mx23_mem_setup_vddmem(void)
 
        early_delay(10000);
 
-       writel((0x10 << POWER_VDDMEMCTRL_TRG_OFFSET) |
+       writel((0x12 << POWER_VDDMEMCTRL_TRG_OFFSET) |
                POWER_VDDMEMCTRL_ENABLE_LINREG,
                &power_regs->hw_power_vddmemctrl);
 }
index aaebe6c041c6b4dddde0d177aa3e6905373a0ff4..6cf669fa47a26be6426c08e1f93040f93ff7d3d4 100644 (file)
@@ -29,7 +29,7 @@
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/sys_proto.h>
 
-#define        MUX_CONFIG_EMI  (MXS_PAD_3V3 | MXS_PAD_12MA | MXS_PAD_NOPULL)
+#define        MUX_CONFIG_EMI  (MXS_PAD_3V3 | MXS_PAD_16MA | MXS_PAD_PULLUP)
 
 const iomux_cfg_t iomux_setup[] = {
        /* DUART */