mirror of https://github.com/acidanthera/audk.git
Enhance to follow UEFI2.3 spec - the EFI_ACPI_TABLE_PROTOCOL will ensure that the checksum field is correct for both the RSDT/XSDT table and the table being installed through the AcpiTableBuffer parameter.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10655 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
3ea3ff88e3
commit
4196f91ec0
|
@ -330,7 +330,13 @@ InstallAcpiTable (
|
||||||
|
|
||||||
Length = ((EFI_ACPI_COMMON_HEADER *) AcpiTableBuffer)->Length;
|
Length = ((EFI_ACPI_COMMON_HEADER *) AcpiTableBuffer)->Length;
|
||||||
Checksum = CalculateCheckSum8 ((UINT8 *)AcpiTableBuffer, Length);
|
Checksum = CalculateCheckSum8 ((UINT8 *)AcpiTableBuffer, Length);
|
||||||
ASSERT (Checksum == 0);
|
if (Checksum != 0) {
|
||||||
|
AcpiPlatformChecksum (
|
||||||
|
(VOID *)AcpiTableBuffer,
|
||||||
|
(UINTN)Length,
|
||||||
|
OFFSET_OF (EFI_ACPI_DESCRIPTION_HEADER, Checksum)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Get the instance of the ACPI table protocol
|
// Get the instance of the ACPI table protocol
|
||||||
|
|
Loading…
Reference in New Issue