summaryrefslogtreecommitdiff
path: root/src/arch
diff options
context:
space:
mode:
authorPatrick Georgi <patrick.georgi@coresystems.de>2009-04-28 12:57:25 +0000
committerPatrick Georgi <patrick.georgi@coresystems.de>2009-04-28 12:57:25 +0000
commitbccaafc677c3b51c730baebf83073f8db166550d (patch)
treea80743e174441221bb7bc7f2d0aa9d3b7f9e0ca6 /src/arch
parentd107593691631ff1ae34fbb98d03d5085ed5b07a (diff)
add_mainboard_resources is necessary for some boards (eg. kontron), but
this generic code could be added to the caller of add_mainboard_resources (wrapped in HAVE_HIGH_TABLES, of course). That way, boards that really need it (for other things) can use this function, while others don't have to do anything to use HAVE_HIGH_TABLES. Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de> Acked-by: Stefan Reinauer <stepan@coresystems.de> Acked-by: Peter Stuge <peter@stuge.se> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4223 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/arch')
-rw-r--r--src/arch/i386/boot/coreboot_table.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/arch/i386/boot/coreboot_table.c b/src/arch/i386/boot/coreboot_table.c
index 88605cd0d1..b134e386e4 100644
--- a/src/arch/i386/boot/coreboot_table.c
+++ b/src/arch/i386/boot/coreboot_table.c
@@ -413,6 +413,10 @@ static struct lb_memory *build_lb_mem(struct lb_header *head)
return mem;
}
+#if HAVE_HIGH_TABLES == 1
+extern uint64_t high_tables_base, high_tables_size;
+#endif
+
unsigned long write_coreboot_table(
unsigned long low_table_start, unsigned long low_table_end,
unsigned long rom_table_start, unsigned long rom_table_end)
@@ -479,6 +483,12 @@ unsigned long write_coreboot_table(
lb_add_memory_range(mem, LB_MEM_TABLE,
rom_table_start, rom_table_end-rom_table_start);
+#if HAVE_HIGH_TABLES == 1
+ printk_debug("Adding high table area\n");
+ lb_add_memory_range(mem, LB_MEM_TABLE,
+ high_tables_base, high_tables_size);
+#endif
+
#if (HAVE_MAINBOARD_RESOURCES == 1)
add_mainboard_resources(mem);
#endif