diff options
author | Kyösti Mälkki <kyosti.malkki@gmail.com> | 2017-03-02 13:52:54 +0200 |
---|---|---|
committer | Kyösti Mälkki <kyosti.malkki@gmail.com> | 2017-03-09 12:44:56 +0100 |
commit | 49b4a8932349e01ed65e2528e82ea0dfa25410e1 (patch) | |
tree | 917e8be870a7587046002893e0a2eb77fa72eefb | |
parent | 4f74c895929594598c323e026b27772f22d68eaa (diff) | |
download | coreboot-49b4a8932349e01ed65e2528e82ea0dfa25410e1.tar.xz |
AGESA: Fix loop condition for eventlog read
Do not evaluate AmdEventParams if AmdReadEventLog() fails.
Change-Id: I2b8afe827ffe6757e64c00ab005d3bb8cc577321
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/18611
Tested-by: build bot (Jenkins)
Reviewed-by: Marc Jones <marc@marcjonesconsulting.com>
Reviewed-by: Marshall Dawson <marshalldawson3rd@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <philippe.mathieu.daude@gmail.com>
-rw-r--r-- | src/northbridge/amd/agesa/eventlog.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/northbridge/amd/agesa/eventlog.c b/src/northbridge/amd/agesa/eventlog.c index 0a40672960..20944b2f10 100644 --- a/src/northbridge/amd/agesa/eventlog.c +++ b/src/northbridge/amd/agesa/eventlog.c @@ -707,6 +707,7 @@ static void interpret_agesa_eventlog(EVENT_PARAMS *event) static void amd_readeventlog(AMD_CONFIG_PARAMS *StdHeader) { + AGESA_STATUS status; EVENT_PARAMS AmdEventParams; memset(&AmdEventParams, 0, sizeof(EVENT_PARAMS)); @@ -717,8 +718,8 @@ static void amd_readeventlog(AMD_CONFIG_PARAMS *StdHeader) AmdEventParams.StdHeader.ImageBasePtr = 0; AmdEventParams.StdHeader.HeapStatus = StdHeader->HeapStatus; - AmdReadEventLog(&AmdEventParams); - while (AmdEventParams.EventClass != 0) { + status = AmdReadEventLog(&AmdEventParams); + while ((status == AGESA_SUCCESS) && (AmdEventParams.EventClass != 0)) { printk(BIOS_DEBUG,"\nEventLog: EventClass = %x, EventInfo = %x.\n", (unsigned int)AmdEventParams.EventClass, (unsigned int)AmdEventParams.EventInfo); @@ -728,7 +729,7 @@ static void amd_readeventlog(AMD_CONFIG_PARAMS *StdHeader) printk(BIOS_DEBUG," Param3 = %x, Param4 = %x.\n", (unsigned int)AmdEventParams.DataParam3, (unsigned int)AmdEventParams.DataParam4); - AmdReadEventLog(&AmdEventParams); + status = AmdReadEventLog(&AmdEventParams); } } |