u-boot-brain/board/freescale/mx53loco
Fabio Estevam aee0013e53 mx53loco: Fix boot hang during reboot stress test
Currently by running the following test:

=> setenv bootcmd reset
=> save
=> reset

, we observe a hang after approximately 20-30 minutes of stress reboot test.

Investigation of this issue revealed that when a single DDR chip select is used,
the hang does not happen. It only happens when the two chip selects are active.

MX53 reference manual states at "28.6.2 Memory ZQ calibration sequence":

"The controller must keep the memory lines quiet (except for CK) for the ZQ
calibration time as defined in the Jedec (512 cycles for ZQCL after reset, 256
for other ZQCL and 64 for ZQCS)."

According to the SDE_0 and SDE_1 bit descriptions from register ESDCTL_ESDCTL:

"Writing 1 to SDE0 or SDE1 will initiate power up delays as JEDEC defines.
Power up delays are a function of the configured memory type (DDR2/DDR3/LPDDR2)"

So make sure to activate one chip select at time (CS0 first and then CS1 later),
so that the required JEDEC delay is respected for each chip select.

With this change applied the board has gone through three days of reboot stress
test without any hang.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Stefano Babic <sbabic@denx.de>
2015-02-10 12:48:50 +01:00
..
imximage.cfg mx53loco: Fix boot hang during reboot stress test 2015-02-10 12:48:50 +01:00
Kconfig kconfig: arm: introduce symbol for ARM CPUs 2014-10-29 09:02:09 -04:00
MAINTAINERS Add board MAINTAINERS files 2014-07-30 08:48:06 -04:00
Makefile board: arm: convert makefiles to Kbuild style 2013-11-01 11:42:12 -04:00
mx53loco_video.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
mx53loco.c mx53loco: Fix error handling in board_mmc_init() 2014-11-20 10:30:20 +01:00