[coreboot-gerrit] New patch to review for coreboot: c2adedd libpayload: Make the region to scan for the cb tables configurable.

Stefan Reinauer (stefan.reinauer@coreboot.org) gerrit at coreboot.org
Wed Nov 20 02:22:34 CET 2013

Stefan Reinauer (stefan.reinauer at coreboot.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/4254


commit c2adeddfb3bd9b9e0740f923bd2c725b70d92c5e
Author: Gabe Black <gabeblack at google.com>
Date:   Wed Jun 19 04:54:38 2013 -0700

    libpayload: Make the region to scan for the cb tables configurable.
    The address range to scan for the coreboot tables varies from machine to
    machine based on the range memory occupies on the SOC being booted and on the
    amount of memory installed on the machine. To make libpayload work on
    different ARM systems with different needs, this change makes the region to
    scan configurable. In the future, we might want to come up with a more
    automatic mechanism like on x86, although there's less consistency on ARM as
    far as what ranges are even memory in the first place.
    Change-Id: Ib50efe25a6152171b0fbd0e324dbc5e89c527d6e
    Signed-off-by: Gabe Black <gabeblack at google.com>
    Reviewed-on: https://gerrit.chromium.org/gerrit/59242
    Reviewed-by: Gabe Black <gabeblack at chromium.org>
    Tested-by: Gabe Black <gabeblack at chromium.org>
    Commit-Queue: Gabe Black <gabeblack at chromium.org>
 payloads/libpayload/arch/armv7/Config.in  | 8 ++++++++
 payloads/libpayload/arch/armv7/coreboot.c | 3 ++-
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/payloads/libpayload/arch/armv7/Config.in b/payloads/libpayload/arch/armv7/Config.in
index 6c1bf44..79cd676 100644
--- a/payloads/libpayload/arch/armv7/Config.in
+++ b/payloads/libpayload/arch/armv7/Config.in
@@ -33,4 +33,12 @@ config ARCH_SPECIFIC_OPTIONS # dummy
 	def_bool y
+	hex "Base of the range to search for the coreboot tables"
+	hex "Size of the range to search for the coreboot tables"
+	default 0x4000000
diff --git a/payloads/libpayload/arch/armv7/coreboot.c b/payloads/libpayload/arch/armv7/coreboot.c
index b6178f7..bc9b47e 100644
--- a/payloads/libpayload/arch/armv7/coreboot.c
+++ b/payloads/libpayload/arch/armv7/coreboot.c
@@ -284,7 +284,8 @@ static int cb_parse_header(void *addr, int len, struct sysinfo_t *info)
 int get_coreboot_info(struct sysinfo_t *info)
-	int ret = cb_parse_header(phys_to_virt(0xbc000000), 0x4000000, info);
+	int ret = cb_parse_header(phys_to_virt(CONFIG_COREBOOT_INFO_RANGE_BASE),
 	return (ret == 1) ? 0 : -1;

More information about the coreboot-gerrit mailing list