console: Add Kconfig to dump pre-bootblock cbmem contents
Pre-bootblock stages (i.e., VBOOT_STARTS_BEFORE_BOOTBLOCK) might not have the ability to log to the UART, so their console messages are inaccessible until the boot processes gets into the payload or OS. This makes it difficult to debug verstage. This feature will dump the pre-bootblock CBMEM console immediately after the bootblock console is initialized. I chose to do this in console_init instead of bootblock_soc_init because I wanted to have the pre-bootblock contents dumped before the coreboot bootblock starting message is printed. BUG=b:213828947 TEST=Boot guybrush with PSP verstage and verify verstage logs are dumped to the UART. Signed-off-by: Raul E Rangel <rrangel@chromium.org> Change-Id: I363c93ef3ee6c5c303a6a68f88a622e2aa62594c Reviewed-on: https://review.coreboot.org/c/coreboot/+/61012 Reviewed-by: Karthik Ramasubramanian <kramasub@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
bf993110b3
commit
80a7f4e7b6
|
@ -255,6 +255,14 @@ config CONSOLE_CBMEM_DUMP_TO_UART
|
|||
serial output in case serial console is disabled and the device
|
||||
resets itself while trying to boot the payload.
|
||||
|
||||
config CONSOLE_CBMEM_PRINT_PRE_BOOTBLOCK_CONTENTS
|
||||
bool
|
||||
help
|
||||
Pre-bootblock stages (i.e., VBOOT_STARTS_BEFORE_BOOTBLOCK) might not
|
||||
have the ability to log to the UART, so their console messages are
|
||||
inaccessible until the boot processes gets into the payload or OS.
|
||||
This feature will dump the pre-bootblock CBMEM console immediately
|
||||
after the bootblock console is initialized.
|
||||
endif
|
||||
|
||||
config CONSOLE_SPI_FLASH
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
|
||||
#include <commonlib/helpers.h>
|
||||
#include <console/cbmem_console.h>
|
||||
#include <console/console.h>
|
||||
#include <console/uart.h>
|
||||
#include <console/streams.h>
|
||||
|
@ -59,6 +60,9 @@ void console_init(void)
|
|||
|
||||
console_inited = 1;
|
||||
|
||||
if (ENV_BOOTBLOCK && CONFIG(CONSOLE_CBMEM_PRINT_PRE_BOOTBLOCK_CONTENTS))
|
||||
cbmem_dump_console();
|
||||
|
||||
printk(BIOS_NOTICE, "\n\ncoreboot-%s%s %s " ENV_STRING " starting (log level: %i)...\n",
|
||||
coreboot_version, coreboot_extra_version, coreboot_build,
|
||||
get_log_level());
|
||||
|
|
Loading…
Reference in New Issue