Add OpenVSA as an option for Geode platform rather the AMD 
or "classic" VSA. 

Signed-off-by: Jordan Crouse <[EMAIL PROTECTED]>
Index: buildrom-devel/packages/geodevsa/geodevsa.mk
===================================================================
--- buildrom-devel.orig/packages/geodevsa/geodevsa.mk   2008-02-20 
16:10:05.000000000 -0700
+++ buildrom-devel/packages/geodevsa/geodevsa.mk        2008-02-20 
16:12:15.000000000 -0700
@@ -12,7 +12,17 @@
 VSA_BUILD_TARGET = $(GEODE_UNCOMPRESSED_VSA)
 endif
 
+VSA_CLEAN_TARGET=
+VSA_DISTCLEAN_TARGET=
+
+ifeq ($(CONFIG_VSA_LEGACY),y)
 include $(PACKAGE_DIR)/geodevsa/amdvsa.inc
+else
+include $(PACKAGE_DIR)/geodevsa/openvsa.inc
+
+VSA_CLEAN_TARGET=openvsa-clean
+VSA_DISTCLEAN_TARGET=openvsa-distclean
+endif
 
 $(GEODE_COMPRESSED_VSA): $(GEODE_UNCOMPRESSED_VSA)
        @ $(STAGING_DIR)/bin/nrv2b e $(GEODE_UNCOMPRESSED_VSA) $@ \
@@ -25,9 +35,9 @@
 
 geodevsa: $(VSA_BUILD_TARGET)
 
-geodevsa-clean:
+geodevsa-clean: $(VSA_CLEAN_TARGET)
        @ rm -f $(GEODE_UNCOMPRESSED_VSA) $(GEODE_COMPRESSED_VSA)
        @ rm -f $(GEODE_PADDED_VSA)
 
-geodevsa-distclean:
+geodevsa-distclean: $(VSA_DISTCLEAN_TARGET)
        @ rm -rf $(OUTPUT_DIR)/vsa
Index: buildrom-devel/packages/geodevsa/openvsa.inc
===================================================================
--- /dev/null   1970-01-01 00:00:00.000000000 +0000
+++ buildrom-devel/packages/geodevsa/openvsa.inc        2008-02-20 
16:12:15.000000000 -0700
@@ -0,0 +1,53 @@
+# Build target for openVSA - included from geodevsa.mk
+
+OPENVSA_URL=svn://openbios.org/openvsa/trunk/openvsa
+OPENVSA_TAG=6
+
+OPENVSA_DIR=$(BUILD_DIR)/openvsa
+OPENVSA_SRC_DIR=$(OPENVSA_DIR)/svn
+OPENVSA_STAMP_DIR=$(OPENVSA_DIR)/stamps
+OPENVSA_LOG_DIR=$(OPENVSA_DIR)/logs
+OPENVSA_TARBALL=openvsa-svn-$(OPENVSA_TAG).tar.gz
+
+ifeq ($(CONFIG_VERBOSE),y)
+OPENVSA_BUILD_LOG=/dev/stdout
+OPENVSA_FETCH_LOG=/dev/stdout
+else
+OPENVSA_BUILD_LOG=$(OPENVSA_LOG_DIR)/build.log
+OPENVSA_FETCH_LOG=$(OPENVSA_LOG_DIR)/fetch.log
+endif
+
+$(SOURCE_DIR)/$(OPENVSA_TARBALL):
+       @ mkdir -p $(SOURCE_DIR)/openvsa
+       @ mkdir -p $(OPENVSA_LOG_DIR)
+       @ echo "Fetching openvsa..."
+       @ $(BIN_DIR)/fetchsvn.sh $(OPENVSA_URL) $(SOURCE_DIR)/openvsa \
+       $(OPENVSA_TAG) $@ > $(OPENVSA_FETCH_LOG) 2>&1
+
+$(OPENVSA_STAMP_DIR)/.unpacked: $(SOURCE_DIR)/$(OPENVSA_TARBALL)
+       @ mkdir -p $(OPENVSA_DIR)
+       @ tar -C $(OPENVSA_DIR) -zxf $(SOURCE_DIR)/$(OPENVSA_TARBALL)
+       @ mkdir -p $(OPENVSA_STAMP_DIR)
+       @ touch $@
+
+$(OPENVSA_SRC_DIR)/vsa_lx.bin: $(OPENVSA_STAMP_DIR)/.unpacked
+       @ mkdir -p $(OPENVSA_LOG_DIR)
+       @ echo "Building openvsa..."
+       @(unset LDFLAGS; $(MAKE) -C $(OPENVSA_SRC_DIR) \
+       > $(OPENVSA_BUILD_LOG) 2>&1)
+
+$(GEODE_UNCOMPRESSED_VSA): $(OPENVSA_SRC_DIR)/vsa_lx.bin
+       @ mkdir -p $(shell dirname $(GEODE_UNCOMPRESSED_VSA))
+       @ cp $< $@
+
+openvsa: $(OPENVSA_SRC_DIR)/vsa_lx.bin
+
+openvsa-clean:
+       @ if [ -d $(OPENVSA_SRC_DIR) ]; then \
+       echo "Cleaning openvsa..."; \
+       $(MAKE) -C $(OPENVSA_SRC_DIR) clean > /dev/null 2>&1; \
+       fi
+
+openvsa-distclean:
+       @ rm -rf $(OPENVSA_DIR)
+
Index: buildrom-devel/config/platforms/Config.in
===================================================================
--- buildrom-devel.orig/config/platforms/Config.in      2008-02-20 
16:11:52.000000000 -0700
+++ buildrom-devel/config/platforms/Config.in   2008-02-20 16:12:34.000000000 
-0700
@@ -125,6 +125,23 @@
        select PLATFORM_SUPPORT_64BIT
 endchoice
 
+choice
+       prompt "Geode VSA SMM handler"
+       depends PLATFORM_GEODE
+       default VSA_LEGACY
+       help
+         Select the SMM handler source to use with Geode platforms
+
+config VSA_LEGACY
+       bool "Legacy VSA binary from AMD"
+
+config VSA_OPENVSA
+       bool "OpenVSA"
+       depends EXPERIMENTAL
+
+endchoice
+
+
 config BUILD_QEMU
        bool "Build QEMU with patches for LinuxBIOS"
        depends PLATFORM_QEMU-X86

-- 
Jordan Crouse
Systems Software Development Engineer 
Advanced Micro Devices, Inc.



-- 
coreboot mailing list
[email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to