[coreboot-gerrit] New patch to review for coreboot: e6fdebc northbridge/amd/agesa/agesawrapper_call.h: Decode status codes

Edward O'Callaghan (eocallaghan@alterapraxis.com) gerrit at coreboot.org
Tue Jul 29 18:25:42 CEST 2014


Edward O'Callaghan (eocallaghan at alterapraxis.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/6402

-gerrit

commit e6fdebc0e7d091dc32d9f2416a69ecced24183bc
Author: Edward O'Callaghan <eocallaghan at alterapraxis.com>
Date:   Wed Jul 30 02:19:25 2014 +1000

    northbridge/amd/agesa/agesawrapper_call.h: Decode status codes
    
    Decode obscure AGESA status codes into their respective string forms.
    
    Change-Id: Iccf175ef62e5005af6ebbfb1bd0acec8aedc2eaa
    Signed-off-by: Edward O'Callaghan <eocallaghan at alterapraxis.com>
---
 src/northbridge/amd/agesa/agesawrapper_call.h | 26 +++++++++++++++++++++++++-
 1 file changed, 25 insertions(+), 1 deletion(-)

diff --git a/src/northbridge/amd/agesa/agesawrapper_call.h b/src/northbridge/amd/agesa/agesawrapper_call.h
index e654b8a..0acbeee 100644
--- a/src/northbridge/amd/agesa/agesawrapper_call.h
+++ b/src/northbridge/amd/agesa/agesawrapper_call.h
@@ -22,12 +22,36 @@
 #include <console/console.h>
 #include "AGESA.h"
 
+/*
+ * Possible AGESA_STATUS values:
+ *
+ * 0x0 = AGESA_SUCCESS
+ * 0x1 = AGESA_UNSUPPORTED
+ * 0x2 = AGESA_BOUNDS_CHK
+ * 0x3 = AGESA_ALERT
+ * 0x4 = AGESA_WARNING
+ * 0x5 = AGESA_ERROR
+ * 0x6 = AGESA_CRITICAL
+ * 0x7 = AGESA_FATAL
+ */
+static const char * decodeAGESA_STATUS(AGESA_STATUS sret)
+{
+	const char* statusStrings[] = { "AGESA_SUCCESS", "AGESA_UNSUPPORTED",
+					"AGESA_BOUNDS_CHK", "AGESA_ALERT",
+					"AGESA_WARNING", "AGESA_ERROR",
+					"AGESA_CRITICAL", "AGESA_FATAL"
+					};
+	if (sret > 7) return "unknown"; /* Non-AGESA error code */
+	return statusStrings[sret];
+}
+
 static inline u32 do_agesawrapper(AGESA_STATUS (*func)(void), const char *name)
 {
 	AGESA_STATUS ret;
 	printk(BIOS_DEBUG, "agesawrapper_%s() entry\n", name);
 	ret = func();
-	printk(BIOS_DEBUG, "agesawrapper_%s() AGESA_STATUS = %x\n", name, ret);
+	printk(BIOS_DEBUG, "agesawrapper_%s() returned %s\n",
+			name, decodeAGESA_STATUS(ret));
 	return (u32)ret;
 }
 



More information about the coreboot-gerrit mailing list