Author: uwe Date: 2008-11-11 15:26:03 +0100 (Tue, 11 Nov 2008) New Revision: 3742
Modified: trunk/coreboot-v2/src/mainboard/asus/mew-vm/auto.c trunk/coreboot-v2/src/mainboard/msi/ms6178/auto.c trunk/coreboot-v2/src/mainboard/rca/rm4100/auto.c trunk/coreboot-v2/src/mainboard/thomson/ip1000/auto.c trunk/coreboot-v2/src/mainboard/via/epia-m/auto.c Log: 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 z4ziggy@gmail.com for tracking this bug down.
Signed-off-by: Uwe Hermann uwe@hermann-uwe.de Acked-by: Peter Stuge peter@stuge.se Acked-by: Stefan Reinauer stepan@coresystems.de
Modified: trunk/coreboot-v2/src/mainboard/asus/mew-vm/auto.c =================================================================== --- trunk/coreboot-v2/src/mainboard/asus/mew-vm/auto.c 2008-11-10 15:43:37 UTC (rev 3741) +++ trunk/coreboot-v2/src/mainboard/asus/mew-vm/auto.c 2008-11-11 14:26:03 UTC (rev 3742) @@ -66,12 +66,12 @@ 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);
Modified: trunk/coreboot-v2/src/mainboard/msi/ms6178/auto.c =================================================================== --- trunk/coreboot-v2/src/mainboard/msi/ms6178/auto.c 2008-11-10 15:43:37 UTC (rev 3741) +++ trunk/coreboot-v2/src/mainboard/msi/ms6178/auto.c 2008-11-11 14:26:03 UTC (rev 3742) @@ -53,8 +53,6 @@ if (bist == 0) early_mtrr_init();
- enable_smbus(); - /* FIXME */ outb(0x87, 0x2e); outb(0x87, 0x2e); @@ -64,6 +62,9 @@
uart_init(); console_init(); + + enable_smbus(); + report_bist_failure(bist); /* dump_spd_registers(&memctrl[0]); */ sdram_initialize(ARRAY_SIZE(memctrl), memctrl);
Modified: trunk/coreboot-v2/src/mainboard/rca/rm4100/auto.c =================================================================== --- trunk/coreboot-v2/src/mainboard/rca/rm4100/auto.c 2008-11-10 15:43:37 UTC (rev 3741) +++ trunk/coreboot-v2/src/mainboard/rca/rm4100/auto.c 2008-11-11 14:26:03 UTC (rev 3742) @@ -101,13 +101,13 @@ 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();
Modified: trunk/coreboot-v2/src/mainboard/thomson/ip1000/auto.c =================================================================== --- trunk/coreboot-v2/src/mainboard/thomson/ip1000/auto.c 2008-11-10 15:43:37 UTC (rev 3741) +++ trunk/coreboot-v2/src/mainboard/thomson/ip1000/auto.c 2008-11-11 14:26:03 UTC (rev 3742) @@ -101,13 +101,13 @@ 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();
Modified: trunk/coreboot-v2/src/mainboard/via/epia-m/auto.c =================================================================== --- trunk/coreboot-v2/src/mainboard/via/epia-m/auto.c 2008-11-10 15:43:37 UTC (rev 3741) +++ trunk/coreboot-v2/src/mainboard/via/epia-m/auto.c 2008-11-11 14:26:03 UTC (rev 3742) @@ -108,12 +108,12 @@ 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 */