oops, sorry for the last commit. This commit changes the code to distinguish

between having VSA functionality in the code, and adding a VSA image to the
ROM.

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5473 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
Stefan Reinauer 2010-04-21 20:55:38 +00:00 committed by Stefan Reinauer
parent 6c705110f6
commit f94a97be72
6 changed files with 26 additions and 16 deletions

View File

@ -25,8 +25,8 @@ endif
ifeq ($(CONFIG_AP_CODE_IN_CAR),y)
COREBOOT_ROM_DEPENDENCIES+=$(obj)/coreboot_ap
endif
ifeq ($(CONFIG_GEODE_VSA),y)
COREBOOT_ROM_DEPENDENCIES+=$(CONFIG_VSA_FILE)
ifeq ($(CONFIG_GEODE_VSA_FILE),y)
COREBOOT_ROM_DEPENDENCIES+=$(CONFIG_VSA_FILENAME)
endif
$(obj)/coreboot.rom: $(obj)/coreboot.pre $(obj)/coreboot_ram $(CBFSTOOL) $(call strip_quotes,$(COREBOOT_ROM_DEPENDENCIES))
@ -55,9 +55,9 @@ ifeq ($(CONFIG_BOOTSPLASH),y)
@printf " BOOTSPLASH $(CONFIG_FALLBACK_BOOTSPLASH_FILE)\n"
$(CBFSTOOL) $@.tmp add $(CONFIG_FALLBACK_BOOTSPLASH_FILE) bootsplash.jpg bootsplash
endif
ifeq ($(CONFIG_GEODE_VSA),y)
@printf " VSA $(CONFIG_VSA_FILE)\n"
$(OBJCOPY) --set-start 0x20 --adjust-vma 0x60000 -I binary -O elf32-i386 -B i386 $(CONFIG_VSA_FILE) $(obj)/vsa.o
ifeq ($(CONFIG_GEODE_VSA_FILE),y)
@printf " VSA $(CONFIG_VSA_FILENAME)\n"
$(OBJCOPY) --set-start 0x20 --adjust-vma 0x60000 -I binary -O elf32-i386 -B i386 $(CONFIG_VSA_FILENAME) $(obj)/vsa.o
$(LD) -e 0x60020 --section-start .data=0x60000 $(obj)/vsa.o -o $(obj)/vsa.elf
$(CBFSTOOL) $@.tmp add-stage $(obj)/vsa.elf vsa
endif

View File

@ -31,6 +31,12 @@ config DCACHE_RAM_SIZE
depends on CPU_AMD_GX2
config GEODE_VSA
bool
default y
depends on CPU_AMD_GX2
select PCI_OPTION_ROM_RUN_REALMODE
config GEODE_VSA_FILE
bool "Add a VSA image"
depends on CPU_AMD_GX2
help
@ -40,9 +46,9 @@ config GEODE_VSA
You will be able to specify the location and file name of the
image later.
config VSA_FILE
config VSA_FILENAME
string "AMD Geode GX2 VSA path and filename"
depends on GEODE_VSA && CPU_AMD_GX2
depends on GEODE_VSA_FILE && CPU_AMD_GX2
default "gpl_vsa_gx_102.bin"
help
The path and filename of the file to use as VSA.

View File

@ -12,6 +12,12 @@ config DCACHE_RAM_SIZE
depends on CPU_AMD_LX
config GEODE_VSA
bool
default y
depends on CPU_AMD_LX
select PCI_OPTION_ROM_RUN_REALMODE
config GEODE_VSA_FILE
bool "Add a VSA image"
depends on CPU_AMD_LX
help
@ -21,9 +27,9 @@ config GEODE_VSA
You will be able to specify the location and file name of the
image later.
config VSA_FILE
config VSA_FILENAME
string "AMD Geode LX VSA path and filename"
depends on GEODE_VSA && CPU_AMD_LX
depends on GEODE_VSA_FILE && CPU_AMD_LX
default "gpl_vsa_lx_102.bin"
help
The path and filename of the file to use as VSA.

View File

@ -37,7 +37,6 @@ void x86_exception(struct eregs *info);
extern unsigned char __idt_handler, __idt_handler_size;
extern unsigned char __realmode_code, __realmode_code_size;
extern unsigned char __run_optionrom, __run_interrupt;
extern unsigned char __run_vsa;
void (*run_optionrom)(u32 devfn) __attribute__((regparm(0))) = (void *)&__run_optionrom;
void (*vga_enable_console)(void) __attribute__((regparm(0))) = (void *)&__run_interrupt;
@ -167,11 +166,12 @@ void run_bios(struct device *dev, unsigned long addr)
#include <cpu/amd/vr.h>
#include <cbfs.h>
extern unsigned char __run_vsa;
void (*run_vsa)(u32 smm, u32 sysmem) __attribute__((regparm(0))) = (void *)&__run_vsa;
#define VSA2_BUFFER 0x60000
#define VSA2_ENTRY_POINT 0x60020
void (*run_vsa)(u32 smm, u32 sysmem) __attribute__((regparm(0))) = (void *)&__run_vsa;
// TODO move to a header file.
void do_vsmbios(void);

View File

@ -19,6 +19,5 @@
config NORTHBRIDGE_AMD_GX2
bool
# for VSM:
select PCI_OPTION_ROM_RUN_REALMODE
select GEODE_VSA

View File

@ -1,8 +1,7 @@
config NORTHBRIDGE_AMD_LX
bool
select HAVE_HIGH_TABLES
# for VSM:
select PCI_OPTION_ROM_RUN_REALMODE
select GEODE_VSA
config VIDEO_MB
int