summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/arch/arm/tables.c5
-rw-r--r--src/arch/arm64/tables.c5
-rw-r--r--src/arch/mips/tables.c5
-rw-r--r--src/arch/power8/tables.c5
-rw-r--r--src/arch/riscv/tables.c5
-rw-r--r--src/arch/x86/tables.c5
-rw-r--r--src/include/bootmem.h3
-rw-r--r--src/lib/bootmem.c2
8 files changed, 35 insertions, 0 deletions
diff --git a/src/arch/arm/tables.c b/src/arch/arm/tables.c
index eb08e6e842..20891e8d67 100644
--- a/src/arch/arm/tables.c
+++ b/src/arch/arm/tables.c
@@ -17,12 +17,17 @@
#include <console/console.h>
#include <cpu/cpu.h>
+#include <bootmem.h>
#include <boot/tables.h>
#include <boot/coreboot_tables.h>
#include <string.h>
#include <cbmem.h>
#include <lib.h>
+void bootmem_arch_add_ranges(void)
+{
+}
+
#define MAX_COREBOOT_TABLE_SIZE CONFIG_COREBOOT_TABLE_SIZE
void write_tables(void)
diff --git a/src/arch/arm64/tables.c b/src/arch/arm64/tables.c
index eb08e6e842..20891e8d67 100644
--- a/src/arch/arm64/tables.c
+++ b/src/arch/arm64/tables.c
@@ -17,12 +17,17 @@
#include <console/console.h>
#include <cpu/cpu.h>
+#include <bootmem.h>
#include <boot/tables.h>
#include <boot/coreboot_tables.h>
#include <string.h>
#include <cbmem.h>
#include <lib.h>
+void bootmem_arch_add_ranges(void)
+{
+}
+
#define MAX_COREBOOT_TABLE_SIZE CONFIG_COREBOOT_TABLE_SIZE
void write_tables(void)
diff --git a/src/arch/mips/tables.c b/src/arch/mips/tables.c
index a3d9939707..d54b8d6e20 100644
--- a/src/arch/mips/tables.c
+++ b/src/arch/mips/tables.c
@@ -18,12 +18,17 @@
#include <console/console.h>
#include <cpu/cpu.h>
+#include <bootmem.h>
#include <boot/tables.h>
#include <boot/coreboot_tables.h>
#include <string.h>
#include <cbmem.h>
#include <lib.h>
+void bootmem_arch_add_ranges(void)
+{
+}
+
#define MAX_COREBOOT_TABLE_SIZE CONFIG_COREBOOT_TABLE_SIZE
void write_tables(void)
diff --git a/src/arch/power8/tables.c b/src/arch/power8/tables.c
index 02d1c163e1..17e678a999 100644
--- a/src/arch/power8/tables.c
+++ b/src/arch/power8/tables.c
@@ -17,12 +17,17 @@
#include <console/console.h>
#include <cpu/cpu.h>
+#include <bootmem.h>
#include <boot/tables.h>
#include <boot/coreboot_tables.h>
#include <string.h>
#include <cbmem.h>
#include <lib.h>
+void bootmem_arch_add_ranges(void)
+{
+}
+
#define MAX_COREBOOT_TABLE_SIZE CONFIG_COREBOOT_TABLE_SIZE
void write_tables(void)
diff --git a/src/arch/riscv/tables.c b/src/arch/riscv/tables.c
index eb08e6e842..20891e8d67 100644
--- a/src/arch/riscv/tables.c
+++ b/src/arch/riscv/tables.c
@@ -17,12 +17,17 @@
#include <console/console.h>
#include <cpu/cpu.h>
+#include <bootmem.h>
#include <boot/tables.h>
#include <boot/coreboot_tables.h>
#include <string.h>
#include <cbmem.h>
#include <lib.h>
+void bootmem_arch_add_ranges(void)
+{
+}
+
#define MAX_COREBOOT_TABLE_SIZE CONFIG_COREBOOT_TABLE_SIZE
void write_tables(void)
diff --git a/src/arch/x86/tables.c b/src/arch/x86/tables.c
index b36078d2e1..4fba509a96 100644
--- a/src/arch/x86/tables.c
+++ b/src/arch/x86/tables.c
@@ -17,6 +17,7 @@
#include <console/console.h>
#include <cpu/cpu.h>
+#include <bootmem.h>
#include <boot/tables.h>
#include <boot/coreboot_tables.h>
#include <arch/pirq_routing.h>
@@ -180,6 +181,10 @@ static unsigned long write_smbios_table(unsigned long rom_table_end)
return rom_table_end;
}
+void bootmem_arch_add_ranges(void)
+{
+}
+
void write_tables(void)
{
unsigned long low_table_start, low_table_end;
diff --git a/src/include/bootmem.h b/src/include/bootmem.h
index 0665058d14..10c8d51b77 100644
--- a/src/include/bootmem.h
+++ b/src/include/bootmem.h
@@ -26,6 +26,9 @@
*/
void bootmem_init(void);
+/* Architecture hook to add bootmem areas the architecture controls. */
+void bootmem_arch_add_ranges(void);
+
/* Add a range of a given type to the bootmem address space. */
void bootmem_add_range(uint64_t start, uint64_t size, uint32_t type);
diff --git a/src/lib/bootmem.c b/src/lib/bootmem.c
index 29cbec63e9..ea02a16ddc 100644
--- a/src/lib/bootmem.c
+++ b/src/lib/bootmem.c
@@ -39,6 +39,8 @@ void bootmem_init(void)
/* Add memory used by CBMEM. */
cbmem_add_bootmem();
+
+ bootmem_arch_add_ranges();
}
void bootmem_add_range(uint64_t start, uint64_t size, uint32_t type)