From 3ee1668ab4fbf75b256ac8eef4273b1ea445c998 Mon Sep 17 00:00:00 2001 From: Kyösti Mälkki Date: Mon, 17 Feb 2014 19:37:52 +0200 Subject: uart8250: Fix and unify baudrate divisor calculation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Divisor is a function of requested baudrate, platform-specific reference clock and amount of oversampling done on the UART reference. Calculate this parameter with divisor rounded to nearest integer. When building without option_table or when there is no entry for baud_rate, CONFIG_TTYS0_BAUD is used for default baudrate. For OxPCIe use of 4 MHz for reference was arbitrary giving correct divisor for 115200 but somewhat inaccurate for lower baudrates. Actual hardware is 62500000 with 16 times oversampling. FIXME: Field for baudrate in lb_tables is still incorrect. Change-Id: I68539738469af780fadd3392263dd9b3d5964d2d Signed-off-by: Kyösti Mälkki Reviewed-on: http://review.coreboot.org/5229 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer --- src/arch/x86/lib/romcc_console.c | 1 + 1 file changed, 1 insertion(+) (limited to 'src/arch') diff --git a/src/arch/x86/lib/romcc_console.c b/src/arch/x86/lib/romcc_console.c index db84f9e642..c5e688258b 100644 --- a/src/arch/x86/lib/romcc_console.c +++ b/src/arch/x86/lib/romcc_console.c @@ -32,6 +32,7 @@ #endif #if CONFIG_CONSOLE_SERIAL8250 +#include "drivers/uart/util.c" #include "lib/uart8250.c" #endif #if CONFIG_CONSOLE_NE2K -- cgit v1.2.3