From a8fa25138b6a1fd08a8e95ab5ecb2ed4e21ee898 Mon Sep 17 00:00:00 2001 From: "Ronald G. Minnich" Date: Wed, 18 Jul 2018 14:35:01 -0700 Subject: write_tables: return a pointer to the table The write_tables function was void. It is a bit more useful for loading payloads from the romstage if it returns a pointer to the table it creates. Change-Id: I6eeaf3e16bcbaf1e7ec3eada8026c466d2fb6f5a Signed-off-by: Ronald G. Minnich Reviewed-on: https://review.coreboot.org/27537 Reviewed-by: Philipp Deppenwiese Tested-by: build bot (Jenkins) --- src/include/boot/tables.h | 3 ++- src/lib/coreboot_table.c | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/include/boot/tables.h b/src/include/boot/tables.h index c2d7b48841..9e82e3f6c8 100644 --- a/src/include/boot/tables.h +++ b/src/include/boot/tables.h @@ -6,8 +6,9 @@ /* * Write architecture specific tables as well as the common * coreboot table. + * Returns a pointer to the table or NULL on error. */ -void write_tables(void); +void *write_tables(void); /* * Allow per-architecture table writes called from write_tables(). The diff --git a/src/lib/coreboot_table.c b/src/lib/coreboot_table.c index b894809542..8fc7b6f255 100644 --- a/src/lib/coreboot_table.c +++ b/src/lib/coreboot_table.c @@ -585,7 +585,7 @@ static uintptr_t write_coreboot_table(uintptr_t rom_table_end) return lb_table_fini(head); } -void write_tables(void) +void *write_tables(void) { uintptr_t cbtable_start; uintptr_t cbtable_end; @@ -596,7 +596,7 @@ void write_tables(void) if (!cbtable_start) { printk(BIOS_ERR, "Could not add CBMEM for coreboot table.\n"); - return; + return NULL; } /* Add architecture specific tables. */ @@ -615,4 +615,5 @@ void write_tables(void) /* Print CBMEM sections */ cbmem_list(); + return (void *)cbtable_start; } -- cgit v1.2.3