From 2b3ea9334f46a457ab4f22f2cfe67bc3e5916c1b Mon Sep 17 00:00:00 2001 From: Abdul Lateef Attar Date: Mon, 27 Jan 2025 10:27:23 +0000 Subject: DynamicTablesPkg: Adds X64 support to SRAT table generator Adds X64 support to the SRAT table generator library. Adds EX64ObjLocalApicX2ApicAffinity CM object to get platform configuration information. Update the parser with newly added CM object. Cc: Sami Mujawar Cc: Pierre Gondois Signed-off-by: Abdul Lateef Attar --- DynamicTablesPkg/Library/Acpi/Common/AcpiSratLib/SratGenerator.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'DynamicTablesPkg/Library/Acpi/Common/AcpiSratLib/SratGenerator.c') diff --git a/DynamicTablesPkg/Library/Acpi/Common/AcpiSratLib/SratGenerator.c b/DynamicTablesPkg/Library/Acpi/Common/AcpiSratLib/SratGenerator.c index fd83a92dda..95c439986f 100644 --- a/DynamicTablesPkg/Library/Acpi/Common/AcpiSratLib/SratGenerator.c +++ b/DynamicTablesPkg/Library/Acpi/Common/AcpiSratLib/SratGenerator.c @@ -2,6 +2,8 @@ SRAT Table Generator Copyright (c) 2019 - 2020, Arm Limited. All rights reserved. + Copyright (C) 2025 Advanced Micro Devices, Inc. All rights reserved. + SPDX-License-Identifier: BSD-2-Clause-Patent @par Reference(s): @@ -140,9 +142,9 @@ AddMemoryAffinity ( MemAff->ProximityDomain = MemAffInfo->ProximityDomain; MemAff->Reserved1 = EFI_ACPI_RESERVED_WORD; MemAff->AddressBaseLow = (UINT32)(MemAffInfo->BaseAddress & MAX_UINT32); - MemAff->AddressBaseHigh = (UINT32)(MemAffInfo->BaseAddress >> 32); + MemAff->AddressBaseHigh = (UINT32)RShiftU64 (MemAffInfo->BaseAddress, 32); MemAff->LengthLow = (UINT32)(MemAffInfo->Length & MAX_UINT32); - MemAff->LengthHigh = (UINT32)(MemAffInfo->Length >> 32); + MemAff->LengthHigh = (UINT32)RShiftU64 (MemAffInfo->Length, 32); MemAff->Reserved2 = EFI_ACPI_RESERVED_DWORD; MemAff->Flags = MemAffInfo->Flags; MemAff->Reserved3 = EFI_ACPI_RESERVED_QWORD; -- cgit