Skip to content
Snippets Groups Projects
Commit e750cfaa authored by York Sun's avatar York Sun Committed by Andy Fleming
Browse files

powerpc/mpc8xxx: Enable entering DDR debugging by key press


Using environmental variable "ddr_interactive" to activate interactive DDR
debugging seomtiems is not enough. For example, after updating SPD with a
valid but wrong image, u-boot won't come up due to wrong DDR configuration.
By enabling key press method, we can enter debug mode to have a chance to
boot without using other tools to recover the board.

CONFIG_FSL_DDR_INTERACTIVE needs to be defined in header file. To enter the
debug mode by key press, press key 'd' shortly after reset, like one would
do to abort auto booting. It is fixed to lower case 'd' at this moment.

Signed-off-by: default avatarYork Sun <yorksun@freescale.com>
Signed-off-by: default avatarAndy Fleming <afleming@freescale.com>
parent b38181fa
No related branches found
No related tags found
No related merge requests found
......@@ -532,9 +532,11 @@ phys_size_t fsl_ddr_sdram(void)
/* Compute it once normally. */
#ifdef CONFIG_FSL_DDR_INTERACTIVE
if (getenv("ddr_interactive"))
if (getenv("ddr_interactive")) {
total_memory = fsl_ddr_interactive(&info);
else
} else if (tstc() && (getc() == 'd')) { /* we got a key press of 'd' */
total_memory = fsl_ddr_interactive(&info);
} else
#endif
total_memory = fsl_ddr_compute(&info, STEP_GET_SPD, 0);
......
......@@ -268,6 +268,13 @@ be activated by saving an environment variable "ddr_interactive". The value
doesn't matter. Once activated, U-boot prompts "FSL DDR>" before enabling DDR
controller. The available commands can be seen by typing "help".
Another way to enter debug mode without using environment variable is to send
a key press during boot, like one would do to abort auto boot. To save booting
time, no additioal delay is added so the window to send the key press is very
short. For example, user can send the key press using reset command followed by
hitting enter key twice. In case of power on reset, user can keep hitting any
key while applying the power.
The example flow of using interactive debugging is
type command "compute" to calculate the parameters from the default
type command "print" with arguments to show SPD, options, registers
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment