Stefan Reinauer (stefan.reinauer@coreboot.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/4182
-gerrit
commit 05b364e0aa283d43f75df1933cdf8369fc1670a8 Author: Aaron Durbin adurbin@chromium.org Date: Wed May 22 15:28:20 2013 -0500
lynxpoint: fix mem corruption during ssdt2 gen
The ssdt2 generation code was calling acpigen_patch_len(). However, none of the entries had AML object lengths that needed patching. That resulted in the following message:
ASSERTION FAILED: file 'src/arch/x86/boot/acpigen.c', line 52
Additionally, this caused an errant write to a memory address whose value was in the variable ltop. This was the 0 address.
Change-Id: I44abf5a4e4225220575aee6b5c9bb6b0be093a28 Signed-off-by: Aaron Durbin adurbin@chromium.org Reviewed-on: https://gerrit.chromium.org/gerrit/56299 Reviewed-by: Duncan Laurie dlaurie@chromium.org Reviewed-by: Stefan Reinauer reinauer@google.com --- src/southbridge/intel/lynxpoint/acpi.c | 1 - 1 file changed, 1 deletion(-)
diff --git a/src/southbridge/intel/lynxpoint/acpi.c b/src/southbridge/intel/lynxpoint/acpi.c index ccf4323..b619e6e 100644 --- a/src/southbridge/intel/lynxpoint/acpi.c +++ b/src/southbridge/intel/lynxpoint/acpi.c @@ -88,7 +88,6 @@ void acpi_create_serialio_ssdt(acpi_header_t *ssdt) /* Fill the SSDT with an entry for each SerialIO device */ for (id = 0; id < 8; id++) len += acpi_create_serialio_ssdt_entry(id, gnvs); - acpigen_patch_len(len-1);
/* (Re)calculate length and checksum. */ current = (unsigned long)acpigen_get_current();