[coreboot] r130 - in buildrom-devel: config/platforms packages/geodevsa

svn at coreboot.org svn at coreboot.org
Fri Feb 22 22:53:59 CET 2008


Author: jcrouse
Date: 2008-02-22 22:53:59 +0100 (Fri, 22 Feb 2008)
New Revision: 130

Added:
   buildrom-devel/packages/geodevsa/openvsa.inc
Modified:
   buildrom-devel/config/platforms/Config.in
   buildrom-devel/packages/geodevsa/geodevsa.mk
Log:
[BUILDROM] Add openVSA

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

Signed-off-by: Jordan Crouse <jordan.crouse at amd.com>
Acked-by: Ward Vandewege: <ward at gnu.org>


Modified: buildrom-devel/config/platforms/Config.in
===================================================================
--- buildrom-devel/config/platforms/Config.in	2008-02-22 21:52:09 UTC (rev 129)
+++ buildrom-devel/config/platforms/Config.in	2008-02-22 21:53:59 UTC (rev 130)
@@ -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

Modified: buildrom-devel/packages/geodevsa/geodevsa.mk
===================================================================
--- buildrom-devel/packages/geodevsa/geodevsa.mk	2008-02-22 21:52:09 UTC (rev 129)
+++ buildrom-devel/packages/geodevsa/geodevsa.mk	2008-02-22 21:53:59 UTC (rev 130)
@@ -12,8 +12,18 @@
 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) $@ \
 	> /dev/null 2>&1
@@ -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

Added: buildrom-devel/packages/geodevsa/openvsa.inc
===================================================================
--- buildrom-devel/packages/geodevsa/openvsa.inc	                        (rev 0)
+++ buildrom-devel/packages/geodevsa/openvsa.inc	2008-02-22 21:53:59 UTC (rev 130)
@@ -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)
+





More information about the coreboot mailing list