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
This commit is contained in:
Patrick Georgi 2009-04-28 12:57:25 +00:00
parent d107593691
commit bccaafc677
13 changed files with 13 additions and 107 deletions

View file

@ -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

View file

@ -17,23 +17,14 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include <console/console.h>
#include <device/device.h>
#include <device/pci.h>
#include <device/pci_ids.h>
#include <boot/tables.h>
#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));

View file

@ -25,19 +25,11 @@
#include <boot/tables.h>
#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);

View file

@ -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

View file

@ -17,22 +17,8 @@
*/
#include <device/device.h>
#include <console/console.h>
#include <boot/tables.h>
#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")
};

View file

@ -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
##

View file

@ -1,22 +1,6 @@
#include <device/device.h>
#include <console/console.h>
#include <boot/tables.h>
#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")
};

View file

@ -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
##

View file

@ -1,22 +1,6 @@
#include <device/device.h>
#include <console/console.h>
#include <boot/tables.h>
#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")
};

View file

@ -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
##

View file

@ -1,22 +1,6 @@
#include <device/device.h>
#include <console/console.h>
#include <boot/tables.h>
#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")
};

View file

@ -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
##

View file

@ -20,23 +20,8 @@
*/
#include <device/device.h>
#include <boot/tables.h>
#include <console/console.h>
#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")
};