From f6ada1c30755f3de22942996bfcf6490a9b7b6e4 Mon Sep 17 00:00:00 2001 From: Aaron Durbin Date: Wed, 10 Feb 2016 10:52:47 -0600 Subject: [PATCH] lib/coreboot_table: add function to allow arch code to add records Add lb_arch_add_records() to allow the architecture code to generically hook into the coreboot table generation. BUG=chrome-os-partner:50214 BRANCH=glados TEST=With all subsequent patches confirmed lb_arch_add_records() is called when a strong symbol is provided. Change-Id: I7c69c0ff0801392bbcf5aef586a48388b624afd4 Signed-off-by: Aaron Durbin Reviewed-on: https://review.coreboot.org/13669 Tested-by: build bot (Jenkins) Reviewed-by: Furquan Shaikh Reviewed-by: Andrey Petrov --- src/arch/arm/tables.c | 4 ++++ src/arch/arm64/tables.c | 4 ++++ src/arch/mips/tables.c | 4 ++++ src/arch/riscv/tables.c | 4 ++++ src/arch/x86/cpu.c | 5 +++++ src/include/boot/coreboot_tables.h | 3 +++ src/lib/coreboot_table.c | 3 +++ 7 files changed, 27 insertions(+) diff --git a/src/arch/arm/tables.c b/src/arch/arm/tables.c index 8a4faa17ea..f2d0c86db9 100644 --- a/src/arch/arm/tables.c +++ b/src/arch/arm/tables.c @@ -54,3 +54,7 @@ void write_tables(void) /* Print CBMEM sections */ cbmem_list(); } + +void lb_arch_add_records(struct lb_header *header) +{ +} diff --git a/src/arch/arm64/tables.c b/src/arch/arm64/tables.c index 8a4faa17ea..f2d0c86db9 100644 --- a/src/arch/arm64/tables.c +++ b/src/arch/arm64/tables.c @@ -54,3 +54,7 @@ void write_tables(void) /* Print CBMEM sections */ cbmem_list(); } + +void lb_arch_add_records(struct lb_header *header) +{ +} diff --git a/src/arch/mips/tables.c b/src/arch/mips/tables.c index e2e137c1bc..717b7fdfc0 100644 --- a/src/arch/mips/tables.c +++ b/src/arch/mips/tables.c @@ -55,3 +55,7 @@ void write_tables(void) /* Print CBMEM sections */ cbmem_list(); } + +void lb_arch_add_records(struct lb_header *header) +{ +} diff --git a/src/arch/riscv/tables.c b/src/arch/riscv/tables.c index c73f428725..ca0dd306af 100644 --- a/src/arch/riscv/tables.c +++ b/src/arch/riscv/tables.c @@ -62,3 +62,7 @@ void write_tables(void) { wtf_write_tables(); } + +void lb_arch_add_records(struct lb_header *header) +{ +} diff --git a/src/arch/x86/cpu.c b/src/arch/x86/cpu.c index d46e591ddd..5afae8b486 100644 --- a/src/arch/x86/cpu.c +++ b/src/arch/x86/cpu.c @@ -11,6 +11,7 @@ * GNU General Public License for more details. */ +#include #include #include #include @@ -287,3 +288,7 @@ void cpu_initialize(unsigned int index) return; } + +void lb_arch_add_records(struct lb_header *header) +{ +} diff --git a/src/include/boot/coreboot_tables.h b/src/include/boot/coreboot_tables.h index ff942f1be1..34183a0d08 100644 --- a/src/include/boot/coreboot_tables.h +++ b/src/include/boot/coreboot_tables.h @@ -22,6 +22,9 @@ void lb_board(struct lb_header *header); /* Define this in soc or fsp driver to add specific table entries. */ void lb_framebuffer(struct lb_header *header); +/* Allow arch to add records. */ +void lb_arch_add_records(struct lb_header *header); + /* * Function to retrieve MAC address(es) from the VPD and store them in the * coreboot table. diff --git a/src/lib/coreboot_table.c b/src/lib/coreboot_table.c index 86f22c9689..0cfb8ace8a 100644 --- a/src/lib/coreboot_table.c +++ b/src/lib/coreboot_table.c @@ -540,6 +540,9 @@ unsigned long write_coreboot_table( lb_boot_media_params(head); + /* Add architecture records. */ + lb_arch_add_records(head); + /* Add all cbmem entries into the coreboot tables. */ cbmem_add_records_to_cbtable(head);