From bccaafc677c3b51c730baebf83073f8db166550d Mon Sep 17 00:00:00 2001 From: Patrick Georgi Date: Tue, 28 Apr 2009 12:57:25 +0000 Subject: 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 Acked-by: Stefan Reinauer Acked-by: Peter Stuge git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4223 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- src/arch/i386/boot/coreboot_table.c | 10 ++++++++++ src/mainboard/asus/m2v-mx_se/mainboard.c | 9 --------- src/mainboard/kontron/986lcd-m/mainboard.c | 8 -------- src/mainboard/supermicro/h8dme/Options.lb | 2 -- src/mainboard/supermicro/h8dme/mainboard.c | 14 -------------- src/mainboard/tyan/s2891/Options.lb | 4 +--- src/mainboard/tyan/s2891/mainboard.c | 16 ---------------- src/mainboard/tyan/s2892/Options.lb | 4 +--- src/mainboard/tyan/s2892/mainboard.c | 16 ---------------- src/mainboard/tyan/s2895/Options.lb | 4 +--- src/mainboard/tyan/s2895/mainboard.c | 16 ---------------- src/mainboard/via/vt8454c/Options.lb | 2 -- src/mainboard/via/vt8454c/mainboard.c | 15 --------------- 13 files changed, 13 insertions(+), 107 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 diff --git a/src/mainboard/asus/m2v-mx_se/mainboard.c b/src/mainboard/asus/m2v-mx_se/mainboard.c index ce3b66c4b8..f6bf656e50 100644 --- a/src/mainboard/asus/m2v-mx_se/mainboard.c +++ b/src/mainboard/asus/m2v-mx_se/mainboard.c @@ -17,23 +17,14 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -#include #include #include #include #include #include "chip.h" -/* in arch/i386/boot/tables.c */ -extern uint64_t high_tables_base, high_tables_size; - int add_mainboard_resources(struct lb_memory *mem) { -#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_ACPI_RESUME == 1 lb_add_memory_range(mem, LB_MEM_RESERVED, _RAMBASE, ((CONFIG_LB_MEM_TOPK<<10) - _RAMBASE)); diff --git a/src/mainboard/kontron/986lcd-m/mainboard.c b/src/mainboard/kontron/986lcd-m/mainboard.c index cec477318f..99d01a1b6b 100644 --- a/src/mainboard/kontron/986lcd-m/mainboard.c +++ b/src/mainboard/kontron/986lcd-m/mainboard.c @@ -25,19 +25,11 @@ #include #include "chip.h" -/* in arch/i386/boot/tables.c */ -extern uint64_t high_tables_base, high_tables_size; - /* in northbridge/intel/i945/northbridge.c */ extern uint64_t uma_memory_base, uma_memory_size; int add_mainboard_resources(struct lb_memory *mem) { -#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 printk_debug("Adding UMA memory area\n"); lb_add_memory_range(mem, LB_MEM_RESERVED, uma_memory_base, uma_memory_size); diff --git a/src/mainboard/supermicro/h8dme/Options.lb b/src/mainboard/supermicro/h8dme/Options.lb index ed39913e4b..46183f9396 100644 --- a/src/mainboard/supermicro/h8dme/Options.lb +++ b/src/mainboard/supermicro/h8dme/Options.lb @@ -56,7 +56,6 @@ uses XIP_ROM_BASE uses STACK_SIZE uses HEAP_SIZE uses USE_OPTION_TABLE -uses HAVE_MAINBOARD_RESOURCES uses HAVE_HIGH_TABLES uses HAVE_LOW_TABLES uses CONFIG_MULTIBOOT @@ -129,7 +128,6 @@ uses CONFIG_USE_PRINTK_IN_CAR #default ROM_SIZE=524288 default ROM_SIZE=0x100000 -default HAVE_MAINBOARD_RESOURCES = 1 default HAVE_HIGH_TABLES = 1 default HAVE_LOW_TABLES = 0 default CONFIG_MULTIBOOT=0 diff --git a/src/mainboard/supermicro/h8dme/mainboard.c b/src/mainboard/supermicro/h8dme/mainboard.c index 719593dda1..6b78f5b896 100644 --- a/src/mainboard/supermicro/h8dme/mainboard.c +++ b/src/mainboard/supermicro/h8dme/mainboard.c @@ -17,22 +17,8 @@ */ #include -#include -#include #include "chip.h" -/* in arch/i386/boot/tables.c */ -extern uint64_t high_tables_base, high_tables_size; - -int add_mainboard_resources(struct lb_memory *mem) -{ -#if HAVE_HIGH_TABLES == 1 - lb_add_memory_range(mem, LB_MEM_TABLE, - high_tables_base, high_tables_size); -#endif - return 0; -} - struct chip_operations mainboard_ops = { CHIP_NAME("Supermicro H8DME Mainboard") }; diff --git a/src/mainboard/tyan/s2891/Options.lb b/src/mainboard/tyan/s2891/Options.lb index b0250fc850..12f3c42256 100644 --- a/src/mainboard/tyan/s2891/Options.lb +++ b/src/mainboard/tyan/s2891/Options.lb @@ -33,7 +33,6 @@ uses LB_CKS_RANGE_END uses LB_CKS_LOC uses HAVE_ACPI_TABLES uses HAVE_ACPI_RESUME -uses HAVE_MAINBOARD_RESOURCES uses HAVE_HIGH_TABLES uses HAVE_LOW_TABLES uses CONFIG_MULTIBOOT @@ -130,8 +129,7 @@ default HAVE_MP_TABLE=1 ## default HAVE_ACPI_TABLES=1 default HAVE_LOW_TABLES=1 -default HAVE_MAINBOARD_RESOURCES=1 -default HAVE_HIGH_TABLES=0 +default HAVE_HIGH_TABLES=1 default CONFIG_MULTIBOOT=0 ## diff --git a/src/mainboard/tyan/s2891/mainboard.c b/src/mainboard/tyan/s2891/mainboard.c index cb6aea15cc..c529c0a5a4 100644 --- a/src/mainboard/tyan/s2891/mainboard.c +++ b/src/mainboard/tyan/s2891/mainboard.c @@ -1,22 +1,6 @@ #include -#include -#include #include "chip.h" -/* in arch/i386/boot/tables.c */ -extern uint64_t high_tables_base, high_tables_size; - -int add_mainboard_resources(struct lb_memory *mem) -{ -#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 - return 0; -} - - struct chip_operations mainboard_ops = { CHIP_NAME("Tyan S2891 Mainboard") }; diff --git a/src/mainboard/tyan/s2892/Options.lb b/src/mainboard/tyan/s2892/Options.lb index e50806f57e..5cf2ad8c3f 100644 --- a/src/mainboard/tyan/s2892/Options.lb +++ b/src/mainboard/tyan/s2892/Options.lb @@ -33,7 +33,6 @@ uses LB_CKS_RANGE_END uses LB_CKS_LOC uses HAVE_ACPI_TABLES uses HAVE_ACPI_RESUME -uses HAVE_MAINBOARD_RESOURCES uses HAVE_HIGH_TABLES uses HAVE_LOW_TABLES uses CONFIG_MULTIBOOT @@ -124,8 +123,7 @@ default HAVE_MP_TABLE=1 ## default HAVE_ACPI_TABLES=1 default HAVE_LOW_TABLES=1 -default HAVE_MAINBOARD_RESOURCES=1 -default HAVE_HIGH_TABLES=0 +default HAVE_HIGH_TABLES=1 default CONFIG_MULTIBOOT=0 ## diff --git a/src/mainboard/tyan/s2892/mainboard.c b/src/mainboard/tyan/s2892/mainboard.c index eba339f480..299f8360d2 100644 --- a/src/mainboard/tyan/s2892/mainboard.c +++ b/src/mainboard/tyan/s2892/mainboard.c @@ -1,22 +1,6 @@ #include -#include -#include #include "chip.h" -/* in arch/i386/boot/tables.c */ -extern uint64_t high_tables_base, high_tables_size; - -int add_mainboard_resources(struct lb_memory *mem) -{ -#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 - return 0; -} - - struct chip_operations mainboard_ops = { CHIP_NAME("Tyan S2892 Mainboard") }; diff --git a/src/mainboard/tyan/s2895/Options.lb b/src/mainboard/tyan/s2895/Options.lb index df0b2ea3b5..da6aa5bde2 100644 --- a/src/mainboard/tyan/s2895/Options.lb +++ b/src/mainboard/tyan/s2895/Options.lb @@ -36,7 +36,6 @@ uses LB_CKS_RANGE_END uses LB_CKS_LOC uses HAVE_ACPI_TABLES uses HAVE_ACPI_RESUME -uses HAVE_MAINBOARD_RESOURCES uses HAVE_HIGH_TABLES uses HAVE_LOW_TABLES uses CONFIG_MULTIBOOT @@ -137,8 +136,7 @@ default HAVE_MP_TABLE=1 ## default HAVE_ACPI_TABLES=1 default HAVE_LOW_TABLES=1 -default HAVE_MAINBOARD_RESOURCES=1 -default HAVE_HIGH_TABLES=0 +default HAVE_HIGH_TABLES=1 default CONFIG_MULTIBOOT=0 ## diff --git a/src/mainboard/tyan/s2895/mainboard.c b/src/mainboard/tyan/s2895/mainboard.c index 08be91f9f1..f152eae943 100644 --- a/src/mainboard/tyan/s2895/mainboard.c +++ b/src/mainboard/tyan/s2895/mainboard.c @@ -1,22 +1,6 @@ #include -#include -#include #include "chip.h" -/* in arch/i386/boot/tables.c */ -extern uint64_t high_tables_base, high_tables_size; - -int add_mainboard_resources(struct lb_memory *mem) -{ -#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 - return 0; -} - - struct chip_operations mainboard_ops = { CHIP_NAME("Tyan S2895 Mainboard") }; diff --git a/src/mainboard/via/vt8454c/Options.lb b/src/mainboard/via/vt8454c/Options.lb index a8dfd0b6a6..befd8a6e32 100644 --- a/src/mainboard/via/vt8454c/Options.lb +++ b/src/mainboard/via/vt8454c/Options.lb @@ -27,7 +27,6 @@ uses HAVE_OPTION_TABLE uses USE_OPTION_TABLE uses HAVE_LOW_TABLES uses HAVE_HIGH_TABLES -uses HAVE_MAINBOARD_RESOURCES uses USE_FALLBACK_IMAGE uses HAVE_FALLBACK_BOOT @@ -147,7 +146,6 @@ default HAVE_OPTION_TABLE=1 ## default HAVE_LOW_TABLES=1 default HAVE_HIGH_TABLES=1 -default HAVE_MAINBOARD_RESOURCES=1 ## diff --git a/src/mainboard/via/vt8454c/mainboard.c b/src/mainboard/via/vt8454c/mainboard.c index 359fa30c4c..e931ccdafb 100644 --- a/src/mainboard/via/vt8454c/mainboard.c +++ b/src/mainboard/via/vt8454c/mainboard.c @@ -20,23 +20,8 @@ */ #include -#include -#include #include "chip.h" -/* in arch/i386/boot/tables.c */ -extern uint64_t high_tables_base, high_tables_size; - -int add_mainboard_resources(struct lb_memory *mem) -{ -#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 - return 0; -} - struct chip_operations mainboard_ops = { CHIP_NAME("VIA VT8454c Mainboard") }; -- cgit v1.2.3