From 3b6c527322259d6ae7878411ca26ee6dd9374b3c Mon Sep 17 00:00:00 2001 From: Uwe Hermann Date: Tue, 11 Nov 2008 14:26:03 +0000 Subject: Always enable serial before SMBus (or as early as possible), as the SMBus enable may do printk()s which result in a 2 minute delay on some boards. Fix this on all boards which currently do smbus_enable() before enabling the serial console. Thanks to Elia Yehuda for tracking this bug down. Signed-off-by: Uwe Hermann Acked-by: Peter Stuge Acked-by: Stefan Reinauer git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3742 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- src/mainboard/asus/mew-vm/auto.c | 4 ++-- src/mainboard/msi/ms6178/auto.c | 5 +++-- src/mainboard/rca/rm4100/auto.c | 4 ++-- src/mainboard/thomson/ip1000/auto.c | 4 ++-- src/mainboard/via/epia-m/auto.c | 4 ++-- 5 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/mainboard/asus/mew-vm/auto.c b/src/mainboard/asus/mew-vm/auto.c index b0874e2069..78f9f48254 100644 --- a/src/mainboard/asus/mew-vm/auto.c +++ b/src/mainboard/asus/mew-vm/auto.c @@ -66,12 +66,12 @@ static void main(unsigned long bist) if (bist == 0) early_mtrr_init(); - enable_smbus(); - lpc47b272_enable_serial(SERIAL_DEV, TTYS0_BASE); uart_init(); console_init(); + enable_smbus(); + /* Halt if there was a built in self test failure. */ report_bist_failure(bist); diff --git a/src/mainboard/msi/ms6178/auto.c b/src/mainboard/msi/ms6178/auto.c index 0ae4e0a1b8..d92aa6b53b 100644 --- a/src/mainboard/msi/ms6178/auto.c +++ b/src/mainboard/msi/ms6178/auto.c @@ -53,8 +53,6 @@ static void main(unsigned long bist) if (bist == 0) early_mtrr_init(); - enable_smbus(); - /* FIXME */ outb(0x87, 0x2e); outb(0x87, 0x2e); @@ -64,6 +62,9 @@ static void main(unsigned long bist) uart_init(); console_init(); + + enable_smbus(); + report_bist_failure(bist); /* dump_spd_registers(&memctrl[0]); */ sdram_initialize(ARRAY_SIZE(memctrl), memctrl); diff --git a/src/mainboard/rca/rm4100/auto.c b/src/mainboard/rca/rm4100/auto.c index 14c50cb78c..833f5ba3fd 100644 --- a/src/mainboard/rca/rm4100/auto.c +++ b/src/mainboard/rca/rm4100/auto.c @@ -101,13 +101,13 @@ static void main(unsigned long bist) hard_reset(); } - enable_smbus(); - smscsuperio_enable_serial(SERIAL_DEV, TTYS0_BASE); mb_gpio_init(); uart_init(); console_init(); + enable_smbus(); + /* Prevent the TCO timer from rebooting us */ i82801xx_halt_tco_timer(); diff --git a/src/mainboard/thomson/ip1000/auto.c b/src/mainboard/thomson/ip1000/auto.c index 205d11b63e..8760f89d6f 100644 --- a/src/mainboard/thomson/ip1000/auto.c +++ b/src/mainboard/thomson/ip1000/auto.c @@ -101,13 +101,13 @@ static void main(unsigned long bist) hard_reset(); } - enable_smbus(); - smscsuperio_enable_serial(SERIAL_DEV, TTYS0_BASE); mb_gpio_init(); uart_init(); console_init(); + enable_smbus(); + /* Prevent the TCO timer from rebooting us */ i82801xx_halt_tco_timer(); diff --git a/src/mainboard/via/epia-m/auto.c b/src/mainboard/via/epia-m/auto.c index ac50b96373..04ef1a74e7 100644 --- a/src/mainboard/via/epia-m/auto.c +++ b/src/mainboard/via/epia-m/auto.c @@ -108,12 +108,12 @@ static void main(unsigned long bist) pci_write_config8(dev, 0x15, 0x1c); } - enable_smbus(); - enable_vt8235_serial(); uart_init(); console_init(); + enable_smbus(); + print_spew("In auto.c:main()\r\n"); /* Halt if there was a built in self test failure */ -- cgit v1.2.3