From e2422e38ce0ea69f6881ae159792b1f90471adc7 Mon Sep 17 00:00:00 2001 From: Lee Leahy Date: Sun, 24 Jul 2016 19:52:15 -0700 Subject: src/lib: Enable display of cbmem during romstage and postcar Enable the display of cbmem during romstage and postcar. Add a Kconfig value to prevent coreboot images from increasing in size when this feature is not in use. TEST=Build and run on Galileo Gen2 Change-Id: Ib70ad517ebf7d37a7f46ba503b4432c7c04d7ded Signed-off-by: Lee Leahy Reviewed-on: https://review.coreboot.org/15842 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin --- src/Kconfig | 6 ++++++ src/lib/imd_cbmem.c | 8 ++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/Kconfig b/src/Kconfig index 7c1415e62d..1cc0bfaea9 100644 --- a/src/Kconfig +++ b/src/Kconfig @@ -209,6 +209,12 @@ config NO_XIP_EARLY_STAGES config EARLY_CBMEM_INIT def_bool !LATE_CBMEM_INIT +config EARLY_CBMEM_LIST + bool + default n + help + Enable display of CBMEM during romstage and postcar. + config COLLECT_TIMESTAMPS bool "Create a table of timestamps collected during boot" default n diff --git a/src/lib/imd_cbmem.c b/src/lib/imd_cbmem.c index a0780719fe..3e3e2b0637 100644 --- a/src/lib/imd_cbmem.c +++ b/src/lib/imd_cbmem.c @@ -279,7 +279,8 @@ void cbmem_add_bootmem(void) bootmem_add_range(base, size, LB_MEM_TABLE); } -#if ENV_RAMSTAGE +#if ENV_RAMSTAGE || (IS_ENABLED(CONFIG_EARLY_CBMEM_LIST) \ + && (ENV_POSTCAR || ENV_ROMSTAGE)) /* * -fdata-sections doesn't work so well on read only strings. They all * get put in the same section even though those strings may never be @@ -288,8 +289,11 @@ void cbmem_add_bootmem(void) void cbmem_list(void) { static const struct imd_lookup lookup[] = { CBMEM_ID_TO_NAME_TABLE }; + struct imd *imd; + struct imd imd_backing; - imd_print_entries(cbmem_get_imd(), lookup, ARRAY_SIZE(lookup)); + imd = imd_init_backing_with_recover(&imd_backing); + imd_print_entries(imd, lookup, ARRAY_SIZE(lookup)); } #endif -- cgit v1.2.3