Kyösti Mälkki (kyosti.malkki@gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/3858
-gerrit
commit e0dded284d5b04cd2fa712ed60798788461be41e Author: Kyösti Mälkki kyosti.malkki@gmail.com Date: Tue Aug 13 21:51:53 2013 +0300
usbdebug: Do not support logging from SMM
Letting SMI handler touch EHCI controller is an excellent source of USB problems. Remove usbdebug entirely from SMM.
It may be possible to make usbdebug console work from SMM after hard work and coordination with payloads and even OS drivers. But we are not there.
Change-Id: Id50586758ee06e8d76e682dc6f64f756ab5b79f5 Signed-off-by: Kyösti Mälkki kyosti.malkki@gmail.com --- src/cpu/x86/smm/smiutil.c | 6 ------ src/lib/Makefile.inc | 1 - src/southbridge/amd/sb600/Makefile.inc | 1 - src/southbridge/amd/sb700/Makefile.inc | 1 - src/southbridge/amd/sb800/Makefile.inc | 1 - src/southbridge/nvidia/ck804/Makefile.inc | 1 - src/southbridge/nvidia/mcp55/Makefile.inc | 1 - src/southbridge/sis/sis966/Makefile.inc | 1 - 8 files changed, 13 deletions(-)
diff --git a/src/cpu/x86/smm/smiutil.c b/src/cpu/x86/smm/smiutil.c index c13b452..13ee12e 100644 --- a/src/cpu/x86/smm/smiutil.c +++ b/src/cpu/x86/smm/smiutil.c @@ -31,9 +31,6 @@ static u32 serial8250mem_base_address = 0;
void console_tx_flush(void) { -#if CONFIG_USBDEBUG - usbdebug_tx_flush(0); -#endif }
void console_tx_byte(unsigned char byte) @@ -48,9 +45,6 @@ void console_tx_byte(unsigned char byte) #if CONFIG_CONSOLE_SERIAL8250 uart8250_tx_byte(CONFIG_TTYS0_BASE, byte); #endif -#if CONFIG_USBDEBUG - usbdebug_tx_byte(0, byte); -#endif #if CONFIG_CONSOLE_NE2K ne2k_append_data(&byte, 1, CONFIG_CONSOLE_NE2K_IO_PORT); #endif diff --git a/src/lib/Makefile.inc b/src/lib/Makefile.inc index c421038..b378e83 100644 --- a/src/lib/Makefile.inc +++ b/src/lib/Makefile.inc @@ -128,7 +128,6 @@ endif smm-y += cbfs.c memcmp.c smm-$(CONFIG_CONSOLE_SERIAL8250) += uart8250.c smm-$(CONFIG_CONSOLE_SERIAL8250MEM) += uart8250mem.c -smm-$(CONFIG_USBDEBUG) += usbdebug.c smm-y += gcc.c
$(obj)/lib/version.ramstage.o : $(obj)/build.h diff --git a/src/southbridge/amd/sb600/Makefile.inc b/src/southbridge/amd/sb600/Makefile.inc index 57ef4de..d0df57c 100644 --- a/src/southbridge/amd/sb600/Makefile.inc +++ b/src/southbridge/amd/sb600/Makefile.inc @@ -10,4 +10,3 @@ ramstage-y += pci.c ramstage-y += reset.c romstage-$(CONFIG_USBDEBUG) += enable_usbdebug.c ramstage-$(CONFIG_USBDEBUG) += enable_usbdebug.c -smm-$(CONFIG_USBDEBUG) += enable_usbdebug.c diff --git a/src/southbridge/amd/sb700/Makefile.inc b/src/southbridge/amd/sb700/Makefile.inc index 6f699f0..b457e4a 100644 --- a/src/southbridge/amd/sb700/Makefile.inc +++ b/src/southbridge/amd/sb700/Makefile.inc @@ -12,7 +12,6 @@ romstage-y += reset.c ramstage-y += reset.c romstage-$(CONFIG_USBDEBUG) += enable_usbdebug.c ramstage-$(CONFIG_USBDEBUG) += enable_usbdebug.c -smm-$(CONFIG_USBDEBUG) += enable_usbdebug.c
romstage-y += early_setup.c romstage-y += smbus.c diff --git a/src/southbridge/amd/sb800/Makefile.inc b/src/southbridge/amd/sb800/Makefile.inc index 3e7bf11..1253b39 100644 --- a/src/southbridge/amd/sb800/Makefile.inc +++ b/src/southbridge/amd/sb800/Makefile.inc @@ -11,4 +11,3 @@ ramstage-$(CONFIG_GENERATE_ACPI_TABLES) += fadt.c ramstage-y += reset.c romstage-$(CONFIG_USBDEBUG) += enable_usbdebug.c ramstage-$(CONFIG_USBDEBUG) += enable_usbdebug.c -smm-$(CONFIG_USBDEBUG) += enable_usbdebug.c diff --git a/src/southbridge/nvidia/ck804/Makefile.inc b/src/southbridge/nvidia/ck804/Makefile.inc index bfafa23..0e57f20 100644 --- a/src/southbridge/nvidia/ck804/Makefile.inc +++ b/src/southbridge/nvidia/ck804/Makefile.inc @@ -17,7 +17,6 @@ ramstage-$(CONFIG_GENERATE_ACPI_TABLES) += fadt.c
romstage-$(CONFIG_USBDEBUG) += enable_usbdebug.c ramstage-$(CONFIG_USBDEBUG) += enable_usbdebug.c -smm-$(CONFIG_USBDEBUG) += enable_usbdebug.c romstage-y += early_smbus.c
chipset_bootblock_inc += $(src)/southbridge/nvidia/ck804/romstrap.inc diff --git a/src/southbridge/nvidia/mcp55/Makefile.inc b/src/southbridge/nvidia/mcp55/Makefile.inc index b20804a..e11fc78 100644 --- a/src/southbridge/nvidia/mcp55/Makefile.inc +++ b/src/southbridge/nvidia/mcp55/Makefile.inc @@ -17,7 +17,6 @@ ramstage-y += reset.c
romstage-$(CONFIG_USBDEBUG) += enable_usbdebug.c ramstage-$(CONFIG_USBDEBUG) += enable_usbdebug.c -smm-$(CONFIG_USBDEBUG) += enable_usbdebug.c
chipset_bootblock_inc += $(src)/southbridge/nvidia/mcp55/romstrap.inc chipset_bootblock_lds += $(src)/southbridge/nvidia/mcp55/romstrap.lds diff --git a/src/southbridge/sis/sis966/Makefile.inc b/src/southbridge/sis/sis966/Makefile.inc index b25aa9e..1555973 100644 --- a/src/southbridge/sis/sis966/Makefile.inc +++ b/src/southbridge/sis/sis966/Makefile.inc @@ -12,7 +12,6 @@ ramstage-y += reset.c
romstage-$(CONFIG_USBDEBUG) += enable_usbdebug.c ramstage-$(CONFIG_USBDEBUG) += enable_usbdebug.c -smm-$(CONFIG_USBDEBUG) += enable_usbdebug.c
chipset_bootblock_inc += $(src)/southbridge/sis/sis966/romstrap.inc chipset_bootblock_lds += $(src)/southbridge/sis/sis966/romstrap.lds