u-boot/arch/arm/cpu/armv7/omap-common
Lokesh Vutla 38f25b125e OMAP4+: Force DDR in self-refresh after warm reset
Errata ID:i727

Description: The refresh rate is programmed in the EMIF_SDRAM_REF_CTRL[15:0]
REG_REFRESH_RATE parameter taking into account frequency of the device.
When a warm reset is applied on the system, the OMAP processor restarts
with another OPP and so frequency is not the same. Due to this frequency
change, the refresh rate will be too low and could result in an unexpected
behavior on the memory side.

Workaround:
The workaround is to force self-refresh when coming back from the warm reset
with the following sequence:
• Set EMIF_PWR_MGMT_CTRL[10:8] REG_LP_MODE to 0x2
• Set EMIF_PWR_MGMT_CTRL[7:4] REG_SR_TIM to 0x0
• Do a dummy read (loads automatically new value of sr_tim)
This will reduce the risk of memory content corruption, but memory content
can't be guaranteed after a warm reset.

This errata is impacted on
OMAP4430: 1.0, 2.0, 2.1, 2.2, 2.3
OMAP4460: 1.0, 1.1
OMAP4470: 1.0
OMAP5430: 1.0

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: R Sricharan <r.sricharan@ti.com>
Signed-off-by: Senthilvadivu Guruswamy <svadivu@ti.com>
2012-07-07 14:07:35 +02:00
..
boot-common.c ARM:AM33XX: Add SPL support for AM335X EVM 2012-01-16 08:40:12 +01:00
clocks-common.c OMAP5: DPLL core lock for OMAP5432 2012-07-07 14:07:24 +02:00
config.mk Reduce build times 2011-11-03 20:44:58 +01:00
emif-common.c OMAP4+: Force DDR in self-refresh after warm reset 2012-07-07 14:07:35 +02:00
gpio.c gpio: Replace ARM gpio.h with the common API in include/asm-generic 2012-01-09 20:10:32 -06:00
hwinit-common.c OMAP4+: Force DDR in self-refresh after warm reset 2012-07-07 14:07:35 +02:00
lowlevel_init.S armv7: add appropriate headers for assembly functions 2012-05-15 08:31:26 +02:00
Makefile OMAP3+: Introduce generic logic for OMAP voltage controller 2012-05-15 08:31:22 +02:00
mem-common.c omap4: make omap4 code common for future reuse 2011-11-15 22:25:50 +01:00
reset.c ARM: OMAP3+: Detect reset type 2012-07-07 14:07:34 +02:00
spl.c arm: omap5: correct boot device mode7 for eMMC 2012-05-15 08:31:25 +02:00
spl_mmc.c arm: omap5: correct boot device mode7 for eMMC 2012-05-15 08:31:25 +02:00
spl_nand.c CMD: Fix CONFIG_CMD_SAVEBP_WRITE_SIZE -> CONFIG_CMD_SPL_WRITE_SIZE 2012-04-19 22:01:13 +02:00
spl_ymodem.c SPL: Add YMODEM over UART load support 2012-03-26 23:09:25 +02:00
timer.c Timer: Remove reset_timer_masked() 2011-07-26 14:54:15 +02:00
u-boot-spl.lds omap: add basic SPL support 2011-08-03 12:49:20 +02:00
utils.c omap4: calculate EMIF register values 2011-08-03 12:49:19 +02:00
vc.c OMAP3+: Introduce generic logic for OMAP voltage controller 2012-05-15 08:31:22 +02:00