I think we should do the same patch to v2. I'll post it if this is ack'ed.
--
Marc Jones
Senior Firmware Engineer
(970) 226-9684 Office
mailto:Marc.Jones@amd.com
http://www.amd.com/embeddedprocessors
If there is a problem loading VSA we should stop here instead of failing in PCI scan later.
Signed-off-by: Marc Jones
marc.jones@amd.com
Index: coreboot-v3/northbridge/amd/geodelx/vsmsetup.c
===================================================================
--- coreboot-v3.orig/northbridge/amd/geodelx/vsmsetup.c 2008-02-01 17:06:34.000000000 -0700
+++ coreboot-v3/northbridge/amd/geodelx/vsmsetup.c 2008-02-01 16:25:07.000000000 -0700
@@ -183,13 +183,11 @@
init_archive(&archive);
if (find_file(&archive, "blob/vsa", &file)){
- printk(BIOS_ERR, "NO VSA found!\n");
- return;
+ die("FATAL: NO VSA found!\n");
}
if (process_file(&file, (void *)VSA2_BUFFER)) {
- printk(BIOS_ERR, "Processing /blob/vsa failed\n");
- return;
+ die("FATAL: Processing /blob/vsa failed\n");
}
buf = (unsigned char *)VSA2_BUFFER;
@@ -202,8 +200,7 @@
don't bother. */
if ((buf[0x20] != 0xb0) || (buf[0x21] != 0x10) ||
(buf[0x22] != 0xe6) || (buf[0x23] != 0x80)) {
- printk(BIOS_ERR, "do_vsmbios: no vsainit.bin signature, skipping!\n");
- return;
+ die("FATAL: no vsainit.bin signature, skipping!\n");
}
/* ecx gets smm, edx gets sysm */
@@ -218,7 +215,6 @@
if (VSA_vrRead(SIGNATURE) == VSA2_SIGNATURE)
printk(BIOS_DEBUG, "do_vsmbios: VSA2 VR signature verified\n");
else
- printk(BIOS_ERR,
- "do_vsmbios: VSA2 VR signature not valid, install failed!\n");
+ die("FATAL: VSA2 VR signature not valid, install failed!\n");
}