diff options
author | Rob Herring <r.herring@freescale.com> | 2010-03-05 15:08:23 -0600 |
---|---|---|
committer | Alejandro Gonzalez <alex.gonzalez@digi.com> | 2010-05-25 10:57:50 +0200 |
commit | a18fe77713d49091f241acbaef25850a8575e18d (patch) | |
tree | 90893bb5cc4c7b2ff45ea6a1d2e5a03e4222aef2 /arch/arm/mach-mx5 | |
parent | 5227d632fc5987e7240ca193aefae23e98672e57 (diff) |
ENGR00121365 mxcuart: rework early uart console
Rework early uart to pass in uart base and clock ptr from board.
Now early console for ttymxc is always enabled and mxcuart console
is not needed.
Add fix work-around u-boot illegal uart setup. uboot sets fifo
trigger levels to reserved values which breaks early uart console.
Use TXFE instead of TRDY.
Signed-off-by: Rob Herring <r.herring@freescale.com>
Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
Diffstat (limited to 'arch/arm/mach-mx5')
-rw-r--r-- | arch/arm/mach-mx5/mx51_3stack.c | 6 | ||||
-rw-r--r-- | arch/arm/mach-mx5/mx51_babbage.c | 6 |
2 files changed, 10 insertions, 2 deletions
diff --git a/arch/arm/mach-mx5/mx51_3stack.c b/arch/arm/mach-mx5/mx51_3stack.c index 3de776161a47..d91a9644003a 100644 --- a/arch/arm/mach-mx5/mx51_3stack.c +++ b/arch/arm/mach-mx5/mx51_3stack.c @@ -883,7 +883,6 @@ static void __init mxc_board_init(void) mxc_cpu_common_init(); mxc_register_gpios(); mx51_3stack_io_init(); - early_console_setup(saved_command_line); mxc_register_device(&mxc_wdt_device, NULL); mxc_register_device(&mxcspi1_device, &mxcspi1_data); @@ -963,6 +962,8 @@ static void __init mxc_board_init(void) static void __init mx51_3stack_timer_init(void) { + struct clk *uart_clk; + /* Change the CPU voltages for TO2*/ if (cpu_is_mx51_rev(CHIP_REV_2_0) <= 1) { cpu_wp_auto[0].cpu_voltage = 1175000; @@ -971,6 +972,9 @@ static void __init mx51_3stack_timer_init(void) } mx51_clocks_init(32768, 24000000, 22579200, 24576000); + + uart_clk = clk_get(NULL, "uart_clk.0"); + early_console_setup(UART1_BASE_ADDR, uart_clk); } static struct sys_timer mxc_timer = { diff --git a/arch/arm/mach-mx5/mx51_babbage.c b/arch/arm/mach-mx5/mx51_babbage.c index 6c0d46f323de..4ebe93e0b62a 100644 --- a/arch/arm/mach-mx5/mx51_babbage.c +++ b/arch/arm/mach-mx5/mx51_babbage.c @@ -889,7 +889,6 @@ static void __init mxc_board_init(void) mxc_cpu_common_init(); mxc_register_gpios(); mx51_babbage_io_init(); - early_console_setup(saved_command_line); mxc_register_device(&mxc_wdt_device, NULL); mxc_register_device(&mxcspi1_device, &mxcspi1_data); @@ -959,6 +958,8 @@ static void __init mxc_board_init(void) static void __init mx51_babbage_timer_init(void) { + struct clk *uart_clk; + /* Change the CPU voltages for TO2*/ if (cpu_is_mx51_rev(CHIP_REV_2_0) <= 1) { cpu_wp_auto[0].cpu_voltage = 1175000; @@ -967,6 +968,9 @@ static void __init mx51_babbage_timer_init(void) } mx51_clocks_init(32768, 24000000, 22579200, 24576000); + + uart_clk = clk_get(NULL, "uart_clk.0"); + early_console_setup(UART1_BASE_ADDR, uart_clk); } static struct sys_timer mxc_timer = { |