u-boot/arch
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
..
arm OMAP4+: Force DDR in self-refresh after warm reset 2012-07-07 14:07:35 +02:00
avr32 avr32:board.c: fix compile warning 2012-06-04 09:21:34 +02:00
blackfin CONFIG_SYS_BAUDRATE_TABLE: Add <config_fallbacks.h>, place there 2012-06-20 20:26:16 +02:00
m68k net: move bootfile init into eth_initialize 2012-05-15 17:32:33 -05:00
microblaze net: move bootfile init into eth_initialize 2012-05-15 17:32:33 -05:00
mips MIPS: board.c: move extern declarations to u-boot-mips.h 2012-06-03 23:46:04 +02:00
nds32 net: move bootfile init into eth_initialize 2012-05-15 17:32:33 -05:00
nios2 net: punt bd->bi_ip_addr 2012-05-15 17:32:05 -05:00
openrisc net: punt bd->bi_ip_addr 2012-05-15 17:32:05 -05:00
powerpc MPC8xxx: Define cache ops for USB 2012-06-07 23:29:19 +02:00
sandbox net: punt bd->bi_ip_addr 2012-05-15 17:32:05 -05:00
sh sh: Add SH7269 device and RSK2+SH7269 board 2012-05-28 09:12:54 +09:00
sparc net: move bootfile init into eth_initialize 2012-05-15 17:32:33 -05:00
x86 net: move bootfile init into eth_initialize 2012-05-15 17:32:33 -05:00
.gitignore update include/asm/ gitignore after move 2010-05-07 00:17:30 +02:00