--
Marc Jones
Senior Firmware Engineer
(970) 226-9684 Office
mailto:Marc.Jones@amd.com
http://www.amd.com/embeddedprocessors
Update buildrom to pull latest interrupt free VSA from the AMD website, nrv2b compress it, pad to 36K it, and append to Geode coreboot images.
Signed-off-by: Jordan Crouse
jordan.crouse@amd.com
Signed-off-by: Marc Jones
marc.jones@amd.com
Index: buildrom/packages/coreboot-v2/geode.inc
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ buildrom/packages/coreboot-v2/geode.inc 2008-02-06 15:39:42.000000000 -0700
@@ -0,0 +1,19 @@
+VSA_URL=
http://www.amd.com/files/connectivitysolutions/geode/geode_lx/
+VSA_URL=
http://forsteri/~marcj/
+VSA_BIN=amd_vsa_lx_1.01.bin
+
+CBV2_VSA=lx_vsa.36k.bin
+CBV2_VSA_SIZE=36864
+
+$(SOURCE_DIR)/$(VSA_BIN):
+ @ echo "Fetching the VSA code..."
+ wget -P $(SOURCE_DIR) $(VSA_URL)/$(VSA_BIN).gz -O $@.gz
+ gunzip $@.gz
+
+$(SOURCE_DIR)/$(CBV2_VSA).nrv: nrv2b $(SOURCE_DIR)/$(VSA_BIN)
+ @ $(STAGING_DIR)/bin/nrv2b e $(SOURCE_DIR)/$(VSA_BIN) $@
+
+$(SOURCE_DIR)/$(CBV2_VSA): $(SOURCE_DIR)/$(CBV2_VSA).nrv
+ cp $< $@
+ @ (size=`stat -c %s $<`; count=`expr $(CBV2_VSA_SIZE) - $$size`; \
+ dd if=/dev/zero bs=1 count=$$count >> $@)
Index: buildrom/packages/coreboot-v2/norwich.mk
===================================================================
--- buildrom.orig/packages/coreboot-v2/norwich.mk 2008-02-06 15:38:56.000000000 -0700
+++ buildrom/packages/coreboot-v2/norwich.mk 2008-02-06 16:10:08.000000000 -0700
@@ -1,10 +1,14 @@
# This is the Generic coreboot target
ifeq ($(CONFIG_PLATFORM),y)
+ifeq ($(CONFIG_CB_USE_BUILD),y)
+$(warning Building from local $(CONFIG_CB_BUILDDIR))
+else
ifeq ($(CBV2_TAG),)
$(error You need to specify a version to pull in your platform config)
else
-$(warning You specified $(CBV2_TAG) a version to pull in your platform config)
+$(warning You specified svn revision $(CBV2_TAG) for your platform config)
+endif
endif
endif
@@ -12,15 +16,11 @@
CBV2_URL=svn://coreboot.org/repos/trunk/coreboot-v2
CBV2_TARBALL=coreboot-svn-$(CBV2_TAG).tar.gz
CBV2_PAYLOAD_TARGET=$(CBV2_BUILD_DIR)/payload.$(CBV2_PAYLOAD_FILE_EXT)
-VSA_URL=
http://www.amd.com/files/connectivitysolutions/geode/geode_lx/
-CBV2_VSA=lx_vsa.36k.bin
TARGET_ROM = $(COREBOOT_VENDOR)-$(COREBOOT_BOARD).rom
include $(PACKAGE_DIR)/coreboot-v2/coreboot.inc
-$(SOURCE_DIR)/$(CBV2_VSA):
- @ echo "Fetching the VSA code..."
- wget -P $(SOURCE_DIR) $(VSA_URL)/$(CBV2_VSA).gz -O $@
+include $(PACKAGE_DIR)/coreboot-v2/geode.inc
$(SOURCE_DIR)/$(CBV2_TARBALL):
@ echo "Fetching the coreboot rev $(CBV2_TAG) code..."
Index: buildrom/packages/utils/nrv2b.mk
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ buildrom/packages/utils/nrv2b.mk 2008-02-06 15:39:42.000000000 -0700
@@ -0,0 +1,46 @@
+NRV2B_URL=svn://coreboot.org/repos/trunk/coreboot-v2/util/nrv2b
+NRV2B_TAG=3086
+
+NRV2B_DIR=$(BUILD_DIR)/nrv2b
+NRV2B_SRC_DIR=$(NRV2B_DIR)/svn
+NRV2B_STAMP_DIR=$(NRV2B_DIR)/stamps
+NRV2B_LOG_DIR=$(NRV2B_DIR)/logs
+NRV2B_TARBALL=nrv2b-svn-$(NRV2B_TAG).tar.gz
+
+ifeq ($(CONFIG_VERBOSE),y)
+NRV2B_BUILD_LOG=/dev/stdout
+NRV2B_FETCH_LOG=/dev/stdout
+else
+NRV2B_BUILD_LOG=$(NRV2B_LOG_DIR)/build.log
+NRV2B_FETCH_LOG=$(NRV2B_LOG_DIR)/fetch.log
+endif
+
+$(SOURCE_DIR)/$(NRV2B_TARBALL):
+ mkdir -p $(SOURCE_DIR)/nrv2b
+ @ $(BIN_DIR)/fetchsvn.sh $(NRV2B_URL) $(SOURCE_DIR)/nrv2b \
+ $(NRV2B_TAG) $@ > $(NRV2B_FETCH_LOG) 2>&1
+
+$(NRV2B_STAMP_DIR)/.unpacked: $(SOURCE_DIR)/$(NRV2B_TARBALL)
+ @ tar -C $(NRV2B_DIR) -zxf $(SOURCE_DIR)/$(NRV2B_TARBALL)
+
+$(NRV2B_SRC_DIR)/nrv2b: $(NRV2B_STAMP_DIR)/.unpacked
+ @ (unset CFLAGS; unset LDFLAGS; \
+ $(MAKE) -C $(NRV2B_SRC_DIR) \
+ > $(NRV2B_BUILD_LOG) 2>&1)
+
+$(STAGING_DIR)/bin/nrv2b: $(NRV2B_SRC_DIR)/nrv2b
+ mkdir -p $(STAGING_DIR)/bin
+ cp $< $@
+
+$(NRV2B_STAMP_DIR) $(NRV2B_LOG_DIR):
+ @ mkdir -p $@
+
+nrv2b: $(NRV2B_STAMP_DIR) $(NRV2B_LOG_DIR) $(STAGING_DIR)/bin/nrv2b
+
+nrv2b-clean:
+ @ echo "Cleaning nrv2b..."
+ @ $(MAKE) -c $(NRV2B_SRC_DIR) clean > /dev/null 2>&1
+
+nrv2b-distclean:
+ @ rm -r $(NRV2B_DIR)
+
Index: buildrom/packages/coreboot-v2/alix1c.mk
===================================================================
--- buildrom.orig/packages/coreboot-v2/alix1c.mk 2008-02-07 16:06:16.000000000 -0700
+++ buildrom/packages/coreboot-v2/alix1c.mk 2008-02-07 16:07:08.000000000 -0700
@@ -10,15 +10,11 @@
CBV2_URL=svn://coreboot.org/repos/trunk/coreboot-v2
CBV2_TARBALL=coreboot-svn-$(CBV2_TAG).tar.gz
CBV2_PAYLOAD_TARGET=$(CBV2_BUILD_DIR)/payload.$(CBV2_PAYLOAD_FILE_EXT)
-VSA_URL=
http://www.amd.com/files/connectivitysolutions/geode/geode_lx/
-CBV2_VSA=lx_vsa.36k.bin
TARGET_ROM = $(COREBOOT_VENDOR)-$(COREBOOT_BOARD).rom
include $(PACKAGE_DIR)/coreboot-v2/coreboot.inc
-$(SOURCE_DIR)/$(CBV2_VSA):
- @ echo "Fetching the VSA code..."
- wget -P $(SOURCE_DIR) $(VSA_URL)/$(CBV2_VSA).gz -O $@
+include $(PACKAGE_DIR)/coreboot-v2/geode.inc
$(SOURCE_DIR)/$(CBV2_TARBALL):
@ echo "Fetching the coreboot code..."
Index: buildrom/packages/coreboot-v2/msm800sev.mk
===================================================================
--- buildrom.orig/packages/coreboot-v2/msm800sev.mk 2008-02-07 16:07:52.000000000 -0700
+++ buildrom/packages/coreboot-v2/msm800sev.mk 2008-02-07 16:08:19.000000000 -0700
@@ -10,15 +10,11 @@
CBV2_URL=svn://coreboot.org/repos/trunk/coreboot-v2
CBV2_TARBALL=coreboot-svn-$(CBV2_TAG).tar.gz
CBV2_PAYLOAD_TARGET=$(CBV2_BUILD_DIR)/payload.$(CBV2_PAYLOAD_FILE_EXT)
-VSA_URL=
http://www.amd.com/files/connectivitysolutions/geode/geode_lx/
-CBV2_VSA=lx_vsa.36k.bin
TARGET_ROM = $(COREBOOT_VENDOR)-$(COREBOOT_BOARD).rom
include $(PACKAGE_DIR)/coreboot-v2/coreboot.inc
-$(SOURCE_DIR)/$(CBV2_VSA):
- @ echo "Fetching the VSA code..."
- wget -P $(SOURCE_DIR) $(VSA_URL)/$(CBV2_VSA).gz -O $@
+include $(PACKAGE_DIR)/coreboot-v2/geode.inc
$(SOURCE_DIR)/$(CBV2_TARBALL):
@ echo "Fetching the coreboot code..."