diff mbox

[U-Boot,v4,7/8] zynq: Move SPL console init out of board_init_f()

Message ID 1445259003-15896-8-git-send-email-sjg@chromium.org
State Accepted
Delegated to: Tom Rini
Headers show

Commit Message

Simon Glass Oct. 19, 2015, 12:50 p.m. UTC
We should not init the console this early since it precludes using driver
model for the UART, since it is not set up at the start of board_init_f().
See the README for more information. The debug UART does not have this
restriction. If we want to do early init with the console on it can be done
in spl_board_init().

Move the preloader_console_init() call from board_init_f() to board_init_r().

Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Tested-by: Michal Simek <michal.simek@xilinx.com>
---

Changes in v4:
- Update commit message to address Albert's comments

Changes in v3:
- Rebase to master

Changes in v2: None

 arch/arm/mach-zynq/spl.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Tom Rini Oct. 24, 2015, 9:16 p.m. UTC | #1
On Mon, Oct 19, 2015 at 06:50:02AM -0600, Simon Glass wrote:

> We should not init the console this early since it precludes using driver
> model for the UART, since it is not set up at the start of board_init_f().
> See the README for more information. The debug UART does not have this
> restriction. If we want to do early init with the console on it can be done
> in spl_board_init().
> 
> Move the preloader_console_init() call from board_init_f() to board_init_r().
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> Tested-by: Masahiro Yamada <yamada.masahiro@socionext.com>
> Tested-by: Michal Simek <michal.simek@xilinx.com>

Applied to u-boot/master, thanks!
diff mbox

Patch

diff --git a/arch/arm/mach-zynq/spl.c b/arch/arm/mach-zynq/spl.c
index e7df6d3..7bdac3b 100644
--- a/arch/arm/mach-zynq/spl.c
+++ b/arch/arm/mach-zynq/spl.c
@@ -20,7 +20,6 @@  void board_init_f(ulong dummy)
 	/* Clear the BSS. */
 	memset(__bss_start, 0, __bss_end - __bss_start);
 
-	preloader_console_init();
 	arch_cpu_init();
 	board_init_r(NULL, 0);
 }
@@ -28,6 +27,7 @@  void board_init_f(ulong dummy)
 #ifdef CONFIG_SPL_BOARD_INIT
 void spl_board_init(void)
 {
+	preloader_console_init();
 	board_init();
 }
 #endif