Patchwork vsa through Kconfig

login
register
about
Submitter Stefan Reinauer
Date 2010-04-20 16:29:41
Message ID <4BCDD675.7090404@coresystems.de>
Download mbox | patch
Permalink /patch/1246/
State Accepted
Headers show

Comments

Stefan Reinauer - 2010-04-20 16:29:41

Peter Stuge - 2010-04-20 16:46:59
Stefan Reinauer wrote:
> Make VSA code selectable in Kconfig
> 
> Signed-off-by: Stefan Reinauer <stepan@coresystems.de>

Acked-by: Peter Stuge <peter@stuge.se>

Patch

Index: src/cpu/amd/model_gx2/Kconfig
===================================================================
--- src/cpu/amd/model_gx2/Kconfig	(revision 5464)
+++ src/cpu/amd/model_gx2/Kconfig	(working copy)
@@ -30,3 +30,21 @@ 
 	default 0x01000
 	depends on CPU_AMD_GX2
 
+config GEODE_VSA
+	bool "Add a VSA image"
+	depends on CPU_AMD_GX2
+	help
+	  Select this option if you have an AMD Geode GX2 vsa that you would
+	  like to add to your ROM.
+
+	  You will be able to specify the location and file name of the
+	  image later.
+
+config VSA_FILE
+	string "AMD Geode GX2 VSA path and filename"
+	depends on GEODE_VSA && CPU_AMD_GX2
+	default "gpl_vsa_gx_102.bin"
+	help
+	  The path and filename of the file to use as VSA.
+
+
Index: src/cpu/amd/model_lx/Kconfig
===================================================================
--- src/cpu/amd/model_lx/Kconfig	(revision 5464)
+++ src/cpu/amd/model_lx/Kconfig	(working copy)
@@ -11,3 +11,21 @@ 
 	default 0x8000
 	depends on CPU_AMD_LX
 
+config GEODE_VSA
+	bool "Add a VSA image"
+	depends on CPU_AMD_LX
+	help
+	  Select this option if you have an AMD Geode LX vsa that you would
+	  like to add to your ROM.
+
+	  You will be able to specify the location and file name of the
+	  image later.
+
+config VSA_FILE
+	string "AMD Geode LX VSA path and filename"
+	depends on GEODE_VSA && CPU_AMD_LX
+	default "gpl_vsa_lx_102.bin"
+	help
+	  The path and filename of the file to use as VSA.
+
+
Index: src/arch/i386/Makefile.inc
===================================================================
--- src/arch/i386/Makefile.inc	(revision 5464)
+++ src/arch/i386/Makefile.inc	(working copy)
@@ -25,6 +25,9 @@ 
 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)
+endif
 
 $(obj)/coreboot.rom: $(obj)/coreboot.pre $(obj)/coreboot_ram $(CBFSTOOL) $(call strip_quotes,$(COREBOOT_ROM_DEPENDENCIES))
 	@printf "    CBFS       $(subst $(obj)/,,$(@))\n"
@@ -52,6 +55,12 @@ 
 	@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
+	$(LD) -e 0x60020 --section-start .data=0x60000 $(obj)/vsa.o -o $(obj)/vsa.elf
+	$(CBFSTOOL) $@.tmp add-stage $(obj)/vsa.elf vsa
+endif
 	mv $@.tmp $@
 	@printf "    CBFSPRINT  $(subst $(obj)/,,$(@))\n\n"
 	$(CBFSTOOL) $@ print