summaryrefslogtreecommitdiff
path: root/src/include/console
diff options
context:
space:
mode:
authorKyösti Mälkki <kyosti.malkki@gmail.com>2014-12-21 08:55:47 +0200
committerKyösti Mälkki <kyosti.malkki@gmail.com>2015-01-27 22:44:17 +0100
commit8659e4072e19130099ac4a81b204d594a6d3fb7d (patch)
tree0f2dca86b701833e6be89f794ae39ac9c5dee501 /src/include/console
parent4d10750d1341f9831547e69d66b57ad512cfd6fb (diff)
CBMEM console: Fix and enhance pre-RAM support
Use the value of CONSOLE_PRERAM_BUFFER_SIZE to determine if we can do CBMEM console in bootblock and romstage. Kconfig forces it to zero if _BASE is unset or we cannot do CAR migration on x86. Add CBMEM console to bootblock, except for x86. Only one of bootblock and romstage clears the pre-RAM buffer. To start with empty console log on S3 wakeup, ramstage now clears previous contents of CBMEM buffer if there was no pre-RAM buffer. Unify Kconfig variable naming. TODO: ARM configurations do not define PRERAM_BUFFER_BASE values. Change-Id: I70d82da629529dbfd7bc9491223abd703cbc0115 Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: http://review.coreboot.org/7862 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin <adurbin@google.com>
Diffstat (limited to 'src/include/console')
-rw-r--r--src/include/console/cbmem_console.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/include/console/cbmem_console.h b/src/include/console/cbmem_console.h
index 36d132c892..81bc10fe64 100644
--- a/src/include/console/cbmem_console.h
+++ b/src/include/console/cbmem_console.h
@@ -32,7 +32,8 @@ static inline void cbmemc_reinit(void) {}
#endif
#define __CBMEM_CONSOLE_ENABLE__ CONFIG_CONSOLE_CBMEM && \
- ((ENV_ROMSTAGE && !CONFIG_BROKEN_CAR_MIGRATE) || ENV_RAMSTAGE)
+ (ENV_RAMSTAGE || (CONFIG_CONSOLE_PRERAM_BUFFER_SIZE && \
+ ((ENV_BOOTBLOCK && CONFIG_BOOTBLOCK_CONSOLE) || ENV_ROMSTAGE)))
#if __CBMEM_CONSOLE_ENABLE__
static inline void __cbmemc_init(void) { cbmemc_init(); }