summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2011-12-19 15:56:34 -0800
committerGerrit <chrome-bot@google.com>2011-12-21 13:16:27 -0800
commit61f70f722da1cee00f7f705844b7ae7bbae5feec (patch)
tree481be24e3ba4dcd7f0a91f92f571840f2e3f6626 /arch
parent416b0a008f27eb6ff99fa6824532b131b783e32d (diff)
arm: Implement CONFIG_DELAY_CONSOLE
Delay serial console calls and do them later, to support the CONFIG_DELAY_CONSOLE option. BUG=chromium-os:22938 TEST=build and boot on Kaen Change-Id: Ie15a887843a8b5f29fce055f7a2e17b7fc1e614f Reviewed-on: https://gerrit.chromium.org/gerrit/13209 Reviewed-by: Che-Liang Chiou <clchiou@chromium.org> Reviewed-by: Tom Wai-Hong Tam <waihong@chromium.org> Tested-by: Simon Glass <sjg@chromium.org> Commit-Ready: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/lib/board.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/arm/lib/board.c b/arch/arm/lib/board.c
index 7f8daf7f8f..10ef2c8128 100644
--- a/arch/arm/lib/board.c
+++ b/arch/arm/lib/board.c
@@ -263,8 +263,10 @@ init_fnc_t *init_sequence[] = {
get_clocks,
#endif
env_init, /* initialize environment */
+#ifndef CONFIG_DELAY_CONSOLE
init_baudrate, /* initialze baudrate settings */
serial_init, /* serial communications setup */
+#endif
console_init_f, /* stage 1 init of console */
display_banner, /* say that we are here */
#if defined(CONFIG_DISPLAY_CPUINFO)
@@ -534,6 +536,13 @@ void board_init_r (gd_t *id, ulong dest_addr)
debug ("monitor flash len: %08lX\n", monitor_flash_len);
board_init(); /* Setup chipselects */
+ /* Do the delayed console init here, after board init is complete */
+#ifdef CONFIG_DELAY_CONSOLE
+ init_baudrate();
+ serial_init();
+ console_ready();
+#endif
+
#ifdef CONFIG_SERIAL_MULTI
serial_initialize();
#endif