summaryrefslogtreecommitdiff
path: root/arch/arm/mach-mx5
diff options
context:
space:
mode:
authorRob Herring <r.herring@freescale.com>2010-03-05 15:08:23 -0600
committerAlejandro Gonzalez <alex.gonzalez@digi.com>2010-05-25 10:57:50 +0200
commita18fe77713d49091f241acbaef25850a8575e18d (patch)
tree90893bb5cc4c7b2ff45ea6a1d2e5a03e4222aef2 /arch/arm/mach-mx5
parent5227d632fc5987e7240ca193aefae23e98672e57 (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.c6
-rw-r--r--arch/arm/mach-mx5/mx51_babbage.c6
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 = {