From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by mx.groups.io with SMTP id smtpd.web12.9417.1631719201119203552 for ; Wed, 15 Sep 2021 08:20:01 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@linux.microsoft.com header.s=default header.b=b+grO1iq; spf=pass (domain: linux.microsoft.com, ip: 13.77.154.182, mailfrom: mikuback@linux.microsoft.com) Received: from [10.0.0.19] (c-73-27-179-174.hsd1.fl.comcast.net [73.27.179.174]) by linux.microsoft.com (Postfix) with ESMTPSA id 7308420B6C51; Wed, 15 Sep 2021 08:19:59 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com 7308420B6C51 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1631719200; bh=YZt5OkFA5ncZjHsYy9tTOaqByBG9idryExaY4PTBabY=; h=Subject:To:Cc:References:From:Date:In-Reply-To:From; b=b+grO1iqd2t5iEmUzlKP1N999TQDGfSM/4rufSDcoLtdICMMS/+uqAAyEhr1T7/M8 Yy6Hvpm/9DmbQMPd5F64L1qqZSQ8kbDuriQy+cOou5hOySEks3keqrmFzlx090okVU hfyIn//GCI2F7X973XuJYOTejG1wLXeMYGmjo/IQ= Subject: Re: [edk2-platforms][PATCH v1 1/1] MinPlatformPkg/AcpiTables: Update structures for ACPI 6.3 To: "Desimone, Nathaniel L" , "devel@edk2.groups.io" , Michael D Kinney , "Ni, Ray" Cc: "Chiu, Chasel" , Liming Gao , "Dong, Eric" , "Maddy, Daniel" , Michael Kubacki References: <20210806195356.372-1-mikuback@linux.microsoft.com> From: "Michael Kubacki" Message-ID: Date: Wed, 15 Sep 2021 11:19:58 -0400 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Well that's a large number of conflicts. I find it unprofessional that I have been waiting over a month for a MinPlatformPkg maintainer to review and merge my patch while the patches that were merged and cause conflicts were not reviewed by or merged by a MinPlatformPkg maintainer: https://github.com/tianocore/edk2-platforms/commit/f4e12862f7e5b190fc5cd3828999573995db2b4e https://github.com/tianocore/edk2-platforms/commit/353f3ed966abc267c4e77b46a3b5ab82a0a86488 Delays are one thing but the process should be followed consistently. I'll send a rebased patch soon. Thanks, Michael On 9/14/2021 10:08 PM, Desimone, Nathaniel L wrote: > Hi Michael, > > I attempted to merge this patch, however the contents no longer apply. There was a refactor done to AcpiPlatform.c to eliminate the MAX_CPU_NUM macro: > > https://github.com/tianocore/edk2-platforms/commit/353f3ed966abc267c4e77b46a3b5ab82a0a86488#diff-ae3eb6d7a13316e69709faeb1e624bc2f87ede0dba5148dc198d109e1190e0bb > > After this refactor, there are several merge conflicts in this patch. Could you please rebase to latest master branch and re-send the patch? > > Thanks, > Nate > > -----Original Message----- > From: mikuback@linux.microsoft.com > Sent: Friday, August 6, 2021 12:54 PM > To: devel@edk2.groups.io > Cc: Chiu, Chasel ; Desimone, Nathaniel L ; Liming Gao ; Dong, Eric ; Maddy, Daniel ; Michael Kubacki > Subject: [edk2-platforms][PATCH v1 1/1] MinPlatformPkg/AcpiTables: Update structures for ACPI 6.3 > > From: Daniel Maddy > > REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3535 > > Updates ACPI table structures in MinPlatformPkg for ACPI 6.3. > > Cc: Chasel Chiu > Cc: Nate DeSimone > Cc: Liming Gao > Cc: Eric Dong > Cc: Daniel Maddy > Co-authored-by: Michael Kubacki > Signed-off-by: Michael Kubacki > --- > Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c | 203 ++++++++++---------- > Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Facs/Facs.c | 11 +- > Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Fadt/Fadt.c | 74 ++++--- > 3 files changed, 150 insertions(+), 138 deletions(-) > > diff --git a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c > index 2b51c34ef2fd..5e3c4c0672f9 100644 > --- a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c > +++ b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c > @@ -2,6 +2,7 @@ > ACPI Platform Driver > > Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved.
> +Copyright (c) Microsoft Corporation.
> SPDX-License-Identifier: BSD-2-Clause-Patent > > **/ > @@ -13,7 +14,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #pragma pack(1) > > typedef struct { > - UINT32 AcpiProcessorId; > + UINT32 AcpiProcessorUid; > UINT32 ApicId; > UINT32 Flags; > UINT32 SwProcApicId; > @@ -27,9 +28,9 @@ typedef struct { > // Define Union of IO APIC & Local APIC structure; // typedef union { > - EFI_ACPI_4_0_PROCESSOR_LOCAL_APIC_STRUCTURE AcpiLocalApic; > - EFI_ACPI_4_0_IO_APIC_STRUCTURE AcpiIoApic; > - EFI_ACPI_4_0_PROCESSOR_LOCAL_X2APIC_STRUCTURE AcpiLocalx2Apic; > + EFI_ACPI_6_3_PROCESSOR_LOCAL_APIC_STRUCTURE AcpiLocalApic; > + EFI_ACPI_6_3_IO_APIC_STRUCTURE AcpiIoApic; > + EFI_ACPI_6_3_PROCESSOR_LOCAL_X2APIC_STRUCTURE AcpiLocalx2Apic; > struct { > UINT8 Type; > UINT8 Length; > @@ -38,9 +39,9 @@ typedef union { > > #pragma pack() > > -extern EFI_ACPI_5_0_FIRMWARE_ACPI_CONTROL_STRUCTURE Facs; -extern EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE Fadt; -extern EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_HEADER Hpet; > +extern EFI_ACPI_6_3_FIRMWARE_ACPI_CONTROL_STRUCTURE Facs; > +extern EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE Fadt; > +extern EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_HEADER Hpet; > extern EFI_ACPI_WSMT_TABLE Wsmt; > > VOID *mLocalTable[] = { > @@ -217,7 +218,7 @@ DebugDisplayReOrderTable( > DEBUG ((EFI_D_ERROR, "Index AcpiProcId ApicId Flags SwApicId Skt\n")); > for (Index=0; Index DEBUG ((EFI_D_ERROR, " %02d 0x%02X 0x%02X %d 0x%02X %d\n", > - Index, mCpuApicIdOrderTable[Index].AcpiProcessorId, > + Index, > + mCpuApicIdOrderTable[Index].AcpiProcessorUid, > mCpuApicIdOrderTable[Index].ApicId, > mCpuApicIdOrderTable[Index].Flags, > mCpuApicIdOrderTable[Index].SwProcApicId, > @@ -232,31 +233,31 @@ AppendCpuMapTableEntry ( > ) > { > EFI_STATUS Status; > - EFI_ACPI_4_0_PROCESSOR_LOCAL_APIC_STRUCTURE *LocalApicPtr; > - EFI_ACPI_4_0_PROCESSOR_LOCAL_X2APIC_STRUCTURE *LocalX2ApicPtr; > + EFI_ACPI_6_3_PROCESSOR_LOCAL_APIC_STRUCTURE *LocalApicPtr; > + EFI_ACPI_6_3_PROCESSOR_LOCAL_X2APIC_STRUCTURE *LocalX2ApicPtr; > UINT8 Type; > > Status = EFI_SUCCESS; > Type = ((ACPI_APIC_STRUCTURE_PTR *)ApicPtr)->AcpiApicCommon.Type; > - LocalApicPtr = (EFI_ACPI_4_0_PROCESSOR_LOCAL_APIC_STRUCTURE *)(&((ACPI_APIC_STRUCTURE_PTR *)ApicPtr)->AcpiLocalApic); > - LocalX2ApicPtr = (EFI_ACPI_4_0_PROCESSOR_LOCAL_X2APIC_STRUCTURE *)(&((ACPI_APIC_STRUCTURE_PTR *)ApicPtr)->AcpiLocalx2Apic); > + LocalApicPtr = (EFI_ACPI_6_3_PROCESSOR_LOCAL_APIC_STRUCTURE > + *)(&((ACPI_APIC_STRUCTURE_PTR *)ApicPtr)->AcpiLocalApic); > + LocalX2ApicPtr = (EFI_ACPI_6_3_PROCESSOR_LOCAL_X2APIC_STRUCTURE > + *)(&((ACPI_APIC_STRUCTURE_PTR *)ApicPtr)->AcpiLocalx2Apic); > > - if(Type == EFI_ACPI_4_0_PROCESSOR_LOCAL_APIC) { > + if(Type == EFI_ACPI_6_3_PROCESSOR_LOCAL_APIC) { > if(!mX2ApicEnabled) { > - LocalApicPtr->Flags = (UINT8)mCpuApicIdOrderTable[LocalApicCounter].Flags; > - LocalApicPtr->ApicId = (UINT8)mCpuApicIdOrderTable[LocalApicCounter].ApicId; > - LocalApicPtr->AcpiProcessorId = (UINT8)mCpuApicIdOrderTable[LocalApicCounter].AcpiProcessorId; > + LocalApicPtr->Flags = (UINT8)mCpuApicIdOrderTable[LocalApicCounter].Flags; > + LocalApicPtr->ApicId = (UINT8)mCpuApicIdOrderTable[LocalApicCounter].ApicId; > + LocalApicPtr->AcpiProcessorUid = > + (UINT8)mCpuApicIdOrderTable[LocalApicCounter].AcpiProcessorUid; > } else { > - LocalApicPtr->Flags = 0; > - LocalApicPtr->ApicId = 0xFF; > - LocalApicPtr->AcpiProcessorId = (UINT8)0xFF; > + LocalApicPtr->Flags = 0; > + LocalApicPtr->ApicId = 0xFF; > + LocalApicPtr->AcpiProcessorUid = (UINT8)0xFF; > Status = EFI_UNSUPPORTED; > } > - } else if(Type == EFI_ACPI_4_0_PROCESSOR_LOCAL_X2APIC) { > + } else if(Type == EFI_ACPI_6_3_PROCESSOR_LOCAL_X2APIC) { > if(mX2ApicEnabled) { > LocalX2ApicPtr->Flags = (UINT8)mCpuApicIdOrderTable[LocalApicCounter].Flags; > LocalX2ApicPtr->X2ApicId = mCpuApicIdOrderTable[LocalApicCounter].ApicId; > - LocalX2ApicPtr->AcpiProcessorUid = mCpuApicIdOrderTable[LocalApicCounter].AcpiProcessorId; > + LocalX2ApicPtr->AcpiProcessorUid = > + mCpuApicIdOrderTable[LocalApicCounter].AcpiProcessorUid; > } else { > LocalX2ApicPtr->Flags = 0; > LocalX2ApicPtr->X2ApicId = (UINT32)-1; > @@ -311,8 +312,8 @@ SortCpuLocalApicInTable ( > CpuIdMapPtr->ApicId = (UINT32)ProcessorInfoBuffer.ProcessorId; > CpuIdMapPtr->Flags = ((ProcessorInfoBuffer.StatusFlag & PROCESSOR_ENABLED_BIT) != 0); > CpuIdMapPtr->SocketNum = (UINT32)ProcessorInfoBuffer.Location.Package; > - CpuIdMapPtr->AcpiProcessorId = (CpuIdMapPtr->SocketNum * FixedPcdGet32(PcdMaxCpuCoreCount) * FixedPcdGet32(PcdMaxCpuThreadCount)) + GetIndexFromApicId(CpuIdMapPtr->ApicId); //CpuIdMapPtr->ApicId; > - CpuIdMapPtr->SwProcApicId = ((UINT32)(ProcessorInfoBuffer.Location.Package << mNumOfBitShift) + (((UINT32)ProcessorInfoBuffer.ProcessorId) & CoreThreadMask)); > + CpuIdMapPtr->AcpiProcessorUid = (CpuIdMapPtr->SocketNum * FixedPcdGet32(PcdMaxCpuCoreCount) * FixedPcdGet32(PcdMaxCpuThreadCount)) + GetIndexFromApicId(CpuIdMapPtr->ApicId); //CpuIdMapPtr->ApicId; > + CpuIdMapPtr->SwProcApicId = ((UINT32)(ProcessorInfoBuffer.Location.Package << mNumOfBitShift) + (((UINT32)ProcessorInfoBuffer.ProcessorId) & CoreThreadMask)); > if(mX2ApicEnabled) { //if X2Apic, re-order the socket # so it starts from base 0 and contiguous > //may not necessory!!!!! > } > @@ -321,18 +322,18 @@ SortCpuLocalApicInTable ( > if (CpuIdMapPtr->Flags == 1) { > > if(mForceX2ApicId) { > - CpuIdMapPtr->SocketNum &= 0x7; > - CpuIdMapPtr->AcpiProcessorId &= 0xFF; //keep lower 8bit due to use Proc obj in dsdt > - CpuIdMapPtr->SwProcApicId &= 0xFF; > + CpuIdMapPtr->SocketNum &= 0x7; > + CpuIdMapPtr->AcpiProcessorUid &= 0xFF; //keep lower 8bit due to use Proc obj in dsdt > + CpuIdMapPtr->SwProcApicId &= 0xFF; > } > } > } else { //not enabled > - CpuIdMapPtr = (EFI_CPU_ID_ORDER_MAP *)&mCpuApicIdOrderTable[Index]; > - CpuIdMapPtr->ApicId = (UINT32)-1; > - CpuIdMapPtr->Flags = 0; > - CpuIdMapPtr->AcpiProcessorId = (UINT32)-1; > - CpuIdMapPtr->SwProcApicId = (UINT32)-1; > - CpuIdMapPtr->SocketNum = (UINT32)-1; > + CpuIdMapPtr = (EFI_CPU_ID_ORDER_MAP *)&mCpuApicIdOrderTable[Index]; > + CpuIdMapPtr->ApicId = (UINT32)-1; > + CpuIdMapPtr->Flags = 0; > + CpuIdMapPtr->AcpiProcessorUid = (UINT32)-1; > + CpuIdMapPtr->SwProcApicId = (UINT32)-1; > + CpuIdMapPtr->SocketNum = (UINT32)-1; > } //end if PROC ENABLE > } //end for CurrentProcessor > > @@ -366,9 +367,9 @@ SortCpuLocalApicInTable ( > mCpuApicIdOrderTable[Index].SwProcApicId = mCpuApicIdOrderTable[0].SwProcApicId; > mCpuApicIdOrderTable[0].SwProcApicId = TempVal; > //swap AcpiProcId > - TempVal = mCpuApicIdOrderTable[Index].AcpiProcessorId; > - mCpuApicIdOrderTable[Index].AcpiProcessorId = mCpuApicIdOrderTable[0].AcpiProcessorId; > - mCpuApicIdOrderTable[0].AcpiProcessorId = TempVal; > + TempVal = mCpuApicIdOrderTable[Index].AcpiProcessorUid; > + mCpuApicIdOrderTable[Index].AcpiProcessorUid = mCpuApicIdOrderTable[0].AcpiProcessorUid; > + mCpuApicIdOrderTable[0].AcpiProcessorUid = TempVal; > > } > > @@ -377,23 +378,23 @@ SortCpuLocalApicInTable ( > > if(mCpuApicIdOrderTable[CurrProcessor].Flags == 0) { > //make sure disabled entry has ProcId set to FFs > - mCpuApicIdOrderTable[CurrProcessor].ApicId = (UINT32)-1; > - mCpuApicIdOrderTable[CurrProcessor].AcpiProcessorId = (UINT32)-1; > - mCpuApicIdOrderTable[CurrProcessor].SwProcApicId = (UINT32)-1; > + mCpuApicIdOrderTable[CurrProcessor].ApicId = (UINT32)-1; > + mCpuApicIdOrderTable[CurrProcessor].AcpiProcessorUid = (UINT32)-1; > + mCpuApicIdOrderTable[CurrProcessor].SwProcApicId = (UINT32)-1; > > for(Index = CurrProcessor+1; Index < MAX_CPU_NUM; Index++) { > if(mCpuApicIdOrderTable[Index].Flags == 1) { > //move enabled entry up > - mCpuApicIdOrderTable[CurrProcessor].Flags = 1; > - mCpuApicIdOrderTable[CurrProcessor].ApicId = mCpuApicIdOrderTable[Index].ApicId; > - mCpuApicIdOrderTable[CurrProcessor].AcpiProcessorId = mCpuApicIdOrderTable[Index].AcpiProcessorId; > - mCpuApicIdOrderTable[CurrProcessor].SwProcApicId = mCpuApicIdOrderTable[Index].SwProcApicId; > - mCpuApicIdOrderTable[CurrProcessor].SocketNum = mCpuApicIdOrderTable[Index].SocketNum; > + mCpuApicIdOrderTable[CurrProcessor].Flags = 1; > + mCpuApicIdOrderTable[CurrProcessor].ApicId = mCpuApicIdOrderTable[Index].ApicId; > + mCpuApicIdOrderTable[CurrProcessor].AcpiProcessorUid = mCpuApicIdOrderTable[Index].AcpiProcessorUid; > + mCpuApicIdOrderTable[CurrProcessor].SwProcApicId = mCpuApicIdOrderTable[Index].SwProcApicId; > + mCpuApicIdOrderTable[CurrProcessor].SocketNum = mCpuApicIdOrderTable[Index].SocketNum; > //disable moved entry > - mCpuApicIdOrderTable[Index].Flags = 0; > - mCpuApicIdOrderTable[Index].ApicId = (UINT32)-1; > - mCpuApicIdOrderTable[Index].AcpiProcessorId = (UINT32)-1; > - mCpuApicIdOrderTable[Index].SwProcApicId = (UINT32)-1; > + mCpuApicIdOrderTable[Index].Flags = 0; > + mCpuApicIdOrderTable[Index].ApicId = (UINT32)-1; > + mCpuApicIdOrderTable[Index].AcpiProcessorUid = (UINT32)-1; > + mCpuApicIdOrderTable[Index].SwProcApicId = (UINT32)-1; > break; > } > } > @@ -422,17 +423,17 @@ typedef struct { > } STRUCTURE_HEADER; > > STRUCTURE_HEADER mMadtStructureTable[] = { > - {EFI_ACPI_4_0_PROCESSOR_LOCAL_APIC, sizeof (EFI_ACPI_4_0_PROCESSOR_LOCAL_APIC_STRUCTURE)}, > - {EFI_ACPI_4_0_IO_APIC, sizeof (EFI_ACPI_4_0_IO_APIC_STRUCTURE)}, > - {EFI_ACPI_4_0_INTERRUPT_SOURCE_OVERRIDE, sizeof (EFI_ACPI_4_0_INTERRUPT_SOURCE_OVERRIDE_STRUCTURE)}, > - {EFI_ACPI_4_0_NON_MASKABLE_INTERRUPT_SOURCE, sizeof (EFI_ACPI_4_0_NON_MASKABLE_INTERRUPT_SOURCE_STRUCTURE)}, > - {EFI_ACPI_4_0_LOCAL_APIC_NMI, sizeof (EFI_ACPI_4_0_LOCAL_APIC_NMI_STRUCTURE)}, > - {EFI_ACPI_4_0_LOCAL_APIC_ADDRESS_OVERRIDE, sizeof (EFI_ACPI_4_0_LOCAL_APIC_ADDRESS_OVERRIDE_STRUCTURE)}, > - {EFI_ACPI_4_0_IO_SAPIC, sizeof (EFI_ACPI_4_0_IO_SAPIC_STRUCTURE)}, > - {EFI_ACPI_4_0_LOCAL_SAPIC, sizeof (EFI_ACPI_4_0_PROCESSOR_LOCAL_SAPIC_STRUCTURE)}, > - {EFI_ACPI_4_0_PLATFORM_INTERRUPT_SOURCES, sizeof (EFI_ACPI_4_0_PLATFORM_INTERRUPT_SOURCES_STRUCTURE)}, > - {EFI_ACPI_4_0_PROCESSOR_LOCAL_X2APIC, sizeof (EFI_ACPI_4_0_PROCESSOR_LOCAL_X2APIC_STRUCTURE)}, > - {EFI_ACPI_4_0_LOCAL_X2APIC_NMI, sizeof (EFI_ACPI_4_0_LOCAL_X2APIC_NMI_STRUCTURE)} > + {EFI_ACPI_6_3_PROCESSOR_LOCAL_APIC, sizeof (EFI_ACPI_6_3_PROCESSOR_LOCAL_APIC_STRUCTURE)}, > + {EFI_ACPI_6_3_IO_APIC, sizeof (EFI_ACPI_6_3_IO_APIC_STRUCTURE)}, > + {EFI_ACPI_6_3_INTERRUPT_SOURCE_OVERRIDE, sizeof (EFI_ACPI_6_3_INTERRUPT_SOURCE_OVERRIDE_STRUCTURE)}, > + {EFI_ACPI_6_3_NON_MASKABLE_INTERRUPT_SOURCE, sizeof (EFI_ACPI_6_3_NON_MASKABLE_INTERRUPT_SOURCE_STRUCTURE)}, > + {EFI_ACPI_6_3_LOCAL_APIC_NMI, sizeof (EFI_ACPI_6_3_LOCAL_APIC_NMI_STRUCTURE)}, > + {EFI_ACPI_6_3_LOCAL_APIC_ADDRESS_OVERRIDE, sizeof (EFI_ACPI_6_3_LOCAL_APIC_ADDRESS_OVERRIDE_STRUCTURE)}, > + {EFI_ACPI_6_3_IO_SAPIC, sizeof (EFI_ACPI_6_3_IO_SAPIC_STRUCTURE)}, > + {EFI_ACPI_6_3_LOCAL_SAPIC, sizeof (EFI_ACPI_6_3_PROCESSOR_LOCAL_SAPIC_STRUCTURE)}, > + {EFI_ACPI_6_3_PLATFORM_INTERRUPT_SOURCES, sizeof (EFI_ACPI_6_3_PLATFORM_INTERRUPT_SOURCES_STRUCTURE)}, > + {EFI_ACPI_6_3_PROCESSOR_LOCAL_X2APIC, sizeof (EFI_ACPI_6_3_PROCESSOR_LOCAL_X2APIC_STRUCTURE)}, > + {EFI_ACPI_6_3_LOCAL_X2APIC_NMI, sizeof (EFI_ACPI_6_3_LOCAL_X2APIC_NMI_STRUCTURE)} > }; > > /** > @@ -591,7 +592,7 @@ InitializeHeader ( > **/ > EFI_STATUS > InitializeMadtHeader ( > - IN OUT EFI_ACPI_4_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER *MadtHeader > + IN OUT EFI_ACPI_6_3_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER > + *MadtHeader > ) > { > EFI_STATUS Status; > @@ -603,8 +604,8 @@ InitializeMadtHeader ( > > Status = InitializeHeader ( > &MadtHeader->Header, > - EFI_ACPI_4_0_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE, > - EFI_ACPI_4_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION, > + EFI_ACPI_6_3_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE, > + EFI_ACPI_6_3_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION, > 0 > ); > if (EFI_ERROR (Status)) { > @@ -612,7 +613,7 @@ InitializeMadtHeader ( > } > > MadtHeader->LocalApicAddress = PcdGet32(PcdLocalApicAddress); > - MadtHeader->Flags = EFI_ACPI_4_0_PCAT_COMPAT; > + MadtHeader->Flags = EFI_ACPI_6_3_PCAT_COMPAT; > > return EFI_SUCCESS; > } > @@ -649,7 +650,7 @@ CopyStructure ( > // > // Initialize the number of table entries and the table based on the table header passed in. > // > - if (Header->Signature == EFI_ACPI_4_0_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE) { > + if (Header->Signature == > + EFI_ACPI_6_3_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE) { > TableNumEntries = sizeof (mMadtStructureTable) / sizeof (STRUCTURE_HEADER); > StructureTable = mMadtStructureTable; > } else { > @@ -759,7 +760,7 @@ BuildAcpiTable ( > return EFI_INVALID_PARAMETER; > } > > - if (AcpiHeader->Signature != EFI_ACPI_4_0_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE) { > + if (AcpiHeader->Signature != > + EFI_ACPI_6_3_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE) { > DEBUG (( > DEBUG_ERROR, > "MADT header signature is expected, actually 0x%08x\n", @@ -850,15 +851,15 @@ InstallMadtFromScratch ( { > EFI_STATUS Status; > UINTN Index; > - EFI_ACPI_4_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER *NewMadtTable; > + EFI_ACPI_6_3_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER *NewMadtTable; > UINTN TableHandle; > - EFI_ACPI_4_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER MadtTableHeader; > - EFI_ACPI_4_0_PROCESSOR_LOCAL_APIC_STRUCTURE ProcLocalApicStruct; > - EFI_ACPI_4_0_IO_APIC_STRUCTURE IoApicStruct; > - EFI_ACPI_4_0_INTERRUPT_SOURCE_OVERRIDE_STRUCTURE IntSrcOverrideStruct; > - EFI_ACPI_4_0_LOCAL_APIC_NMI_STRUCTURE LocalApciNmiStruct; > - EFI_ACPI_4_0_PROCESSOR_LOCAL_X2APIC_STRUCTURE ProcLocalX2ApicStruct; > - EFI_ACPI_4_0_LOCAL_X2APIC_NMI_STRUCTURE LocalX2ApicNmiStruct; > + EFI_ACPI_6_3_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER MadtTableHeader; > + EFI_ACPI_6_3_PROCESSOR_LOCAL_APIC_STRUCTURE ProcLocalApicStruct; > + EFI_ACPI_6_3_IO_APIC_STRUCTURE IoApicStruct; > + EFI_ACPI_6_3_INTERRUPT_SOURCE_OVERRIDE_STRUCTURE IntSrcOverrideStruct; > + EFI_ACPI_6_3_LOCAL_APIC_NMI_STRUCTURE LocalApciNmiStruct; > + EFI_ACPI_6_3_PROCESSOR_LOCAL_X2APIC_STRUCTURE ProcLocalX2ApicStruct; > + EFI_ACPI_6_3_LOCAL_X2APIC_NMI_STRUCTURE LocalX2ApicNmiStruct; > STRUCTURE_HEADER **MadtStructs; > UINTN MaxMadtStructCount; > UINTN MadtStructsIndex; > @@ -915,11 +916,11 @@ InstallMadtFromScratch ( > // > // Build Processor Local APIC Structures and Processor Local X2APIC Structures > // > - ProcLocalApicStruct.Type = EFI_ACPI_4_0_PROCESSOR_LOCAL_APIC; > - ProcLocalApicStruct.Length = sizeof (EFI_ACPI_4_0_PROCESSOR_LOCAL_APIC_STRUCTURE); > + ProcLocalApicStruct.Type = EFI_ACPI_6_3_PROCESSOR_LOCAL_APIC; > + ProcLocalApicStruct.Length = sizeof > + (EFI_ACPI_6_3_PROCESSOR_LOCAL_APIC_STRUCTURE); > > - ProcLocalX2ApicStruct.Type = EFI_ACPI_4_0_PROCESSOR_LOCAL_X2APIC; > - ProcLocalX2ApicStruct.Length = sizeof (EFI_ACPI_4_0_PROCESSOR_LOCAL_X2APIC_STRUCTURE); > + ProcLocalX2ApicStruct.Type = EFI_ACPI_6_3_PROCESSOR_LOCAL_X2APIC; > + ProcLocalX2ApicStruct.Length = sizeof > + (EFI_ACPI_6_3_PROCESSOR_LOCAL_X2APIC_STRUCTURE); > ProcLocalX2ApicStruct.Reserved[0] = 0; > ProcLocalX2ApicStruct.Reserved[1] = 0; > > @@ -930,9 +931,9 @@ InstallMadtFromScratch ( > // use a processor local x2APIC structure. > // > if (!mX2ApicEnabled && mCpuApicIdOrderTable[Index].ApicId < MAX_UINT8) { > - ProcLocalApicStruct.Flags = (UINT8) mCpuApicIdOrderTable[Index].Flags; > - ProcLocalApicStruct.ApicId = (UINT8) mCpuApicIdOrderTable[Index].ApicId; > - ProcLocalApicStruct.AcpiProcessorId = (UINT8) mCpuApicIdOrderTable[Index].AcpiProcessorId; > + ProcLocalApicStruct.Flags = (UINT8) mCpuApicIdOrderTable[Index].Flags; > + ProcLocalApicStruct.ApicId = (UINT8) mCpuApicIdOrderTable[Index].ApicId; > + ProcLocalApicStruct.AcpiProcessorUid = (UINT8) > + mCpuApicIdOrderTable[Index].AcpiProcessorUid; > > ASSERT (MadtStructsIndex < MaxMadtStructCount); > Status = CopyStructure ( > @@ -943,7 +944,7 @@ InstallMadtFromScratch ( > } else if (mCpuApicIdOrderTable[Index].ApicId != 0xFFFFFFFF) { > ProcLocalX2ApicStruct.Flags = (UINT8) mCpuApicIdOrderTable[Index].Flags; > ProcLocalX2ApicStruct.X2ApicId = mCpuApicIdOrderTable[Index].ApicId; > - ProcLocalX2ApicStruct.AcpiProcessorUid = mCpuApicIdOrderTable[Index].AcpiProcessorId; > + ProcLocalX2ApicStruct.AcpiProcessorUid = > + mCpuApicIdOrderTable[Index].AcpiProcessorUid; > > ASSERT (MadtStructsIndex < MaxMadtStructCount); > Status = CopyStructure ( > @@ -961,8 +962,8 @@ InstallMadtFromScratch ( > // > // Build I/O APIC Structures > // > - IoApicStruct.Type = EFI_ACPI_4_0_IO_APIC; > - IoApicStruct.Length = sizeof (EFI_ACPI_4_0_IO_APIC_STRUCTURE); > + IoApicStruct.Type = EFI_ACPI_6_3_IO_APIC; IoApicStruct.Length = > + sizeof (EFI_ACPI_6_3_IO_APIC_STRUCTURE); > IoApicStruct.Reserved = 0; > > PcIoApicEnable = PcdGet32(PcdPcIoApicEnable); @@ -1008,8 +1009,8 @@ InstallMadtFromScratch ( > // > // Build Interrupt Source Override Structures > // > - IntSrcOverrideStruct.Type = EFI_ACPI_4_0_INTERRUPT_SOURCE_OVERRIDE; > - IntSrcOverrideStruct.Length = sizeof (EFI_ACPI_4_0_INTERRUPT_SOURCE_OVERRIDE_STRUCTURE); > + IntSrcOverrideStruct.Type = EFI_ACPI_6_3_INTERRUPT_SOURCE_OVERRIDE; > + IntSrcOverrideStruct.Length = sizeof > + (EFI_ACPI_6_3_INTERRUPT_SOURCE_OVERRIDE_STRUCTURE); > > // > // IRQ0=>IRQ2 Interrupt Source Override Structure @@ -1052,11 +1053,11 @@ InstallMadtFromScratch ( > // > // Build Local APIC NMI Structures > // > - LocalApciNmiStruct.Type = EFI_ACPI_4_0_LOCAL_APIC_NMI; > - LocalApciNmiStruct.Length = sizeof (EFI_ACPI_4_0_LOCAL_APIC_NMI_STRUCTURE); > - LocalApciNmiStruct.AcpiProcessorId = 0xFF; // Applies to all processors > - LocalApciNmiStruct.Flags = 0x0005; // Flags - Edge-tiggered, Active High > - LocalApciNmiStruct.LocalApicLint = 0x1; > + LocalApciNmiStruct.Type = EFI_ACPI_6_3_LOCAL_APIC_NMI; > + LocalApciNmiStruct.Length = sizeof (EFI_ACPI_6_3_LOCAL_APIC_NMI_STRUCTURE); > + LocalApciNmiStruct.AcpiProcessorUid = 0xFF; // Applies to all processors > + LocalApciNmiStruct.Flags = 0x0005; // Flags - Edge-tiggered, Active High > + LocalApciNmiStruct.LocalApicLint = 0x1; > > ASSERT (MadtStructsIndex < MaxMadtStructCount); > Status = CopyStructure ( > @@ -1073,8 +1074,8 @@ InstallMadtFromScratch ( > // Build Local x2APIC NMI Structure > // > if (mX2ApicEnabled) { > - LocalX2ApicNmiStruct.Type = EFI_ACPI_4_0_LOCAL_X2APIC_NMI; > - LocalX2ApicNmiStruct.Length = sizeof (EFI_ACPI_4_0_LOCAL_X2APIC_NMI_STRUCTURE); > + LocalX2ApicNmiStruct.Type = EFI_ACPI_6_3_LOCAL_X2APIC_NMI; > + LocalX2ApicNmiStruct.Length = sizeof > + (EFI_ACPI_6_3_LOCAL_X2APIC_NMI_STRUCTURE); > LocalX2ApicNmiStruct.Flags = 0x000D; // Flags - Level-tiggered, Active High > LocalX2ApicNmiStruct.AcpiProcessorUid = 0xFFFFFFFF; // Applies to all processors > LocalX2ApicNmiStruct.LocalX2ApicLint = 0x01; @@ -1099,7 +1100,7 @@ InstallMadtFromScratch ( > // > Status = BuildAcpiTable ( > (EFI_ACPI_DESCRIPTION_HEADER *) &MadtTableHeader, > - sizeof (EFI_ACPI_4_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER), > + sizeof (EFI_ACPI_6_3_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER), > MadtStructs, > MadtStructsIndex, > (UINT8 **)&NewMadtTable > @@ -1222,7 +1223,7 @@ PlatformUpdateTables ( > EFI_ACPI_DESCRIPTION_HEADER *TableHeader; > UINT8 *TempOemId; > UINT64 TempOemTableId; > - EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE *FadtHeader; > + EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE *FadtHeader; > EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_HEADER *HpetTable; > UINT32 HpetBaseAddress; > EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_BLOCK_ID HpetBlockId; > @@ -1279,12 +1280,12 @@ PlatformUpdateTables ( > // > switch (Table->Signature) { > > - case EFI_ACPI_4_0_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE: > + case EFI_ACPI_6_3_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE: > ASSERT(FALSE); > break; > > - case EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE: > - FadtHeader = (EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE *) Table; > + case EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE: > + FadtHeader = (EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE *) Table; > > FadtHeader->PreferredPmProfile = PcdGet8 (PcdFadtPreferredPmProfile); > FadtHeader->IaPcBootArch = PcdGet16 (PcdFadtIaPcBootArch); > @@ -1329,7 +1330,7 @@ PlatformUpdateTables ( > DEBUG(( EFI_D_ERROR, " Flags 0x%x\n", FadtHeader->Flags )); > break; > > - case EFI_ACPI_3_0_HIGH_PRECISION_EVENT_TIMER_TABLE_SIGNATURE: > + case EFI_ACPI_6_3_HIGH_PRECISION_EVENT_TIMER_TABLE_SIGNATURE: > HpetTable = (EFI_ACPI_HIGH_PRECISION_EVENT_TIMER_TABLE_HEADER *)Table; > HpetBaseAddress = PcdGet32 (PcdHpetBaseAddress); > HpetTable->BaseAddressLower32Bit.Address = HpetBaseAddress; @@ -1381,8 +1382,8 @@ IsHardwareChange ( > UINTN HWChangeSize; > UINT32 PciId; > UINTN Handle; > - EFI_ACPI_2_0_FIRMWARE_ACPI_CONTROL_STRUCTURE *FacsPtr; > - EFI_ACPI_3_0_FIXED_ACPI_DESCRIPTION_TABLE *pFADT; > + EFI_ACPI_6_3_FIRMWARE_ACPI_CONTROL_STRUCTURE *FacsPtr; > + EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE *pFADT; > > HandleCount = 0; > HandleBuffer = NULL; > @@ -1428,7 +1429,7 @@ IsHardwareChange ( > // > Handle = 0; > Status = LocateAcpiTableBySignature ( > - EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE, > + EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE, > (EFI_ACPI_DESCRIPTION_HEADER **) &pFADT, > &Handle > ); > @@ -1450,7 +1451,7 @@ IsHardwareChange ( > // > // Set HardwareSignature value based on CRC value. > // > - FacsPtr = (EFI_ACPI_2_0_FIRMWARE_ACPI_CONTROL_STRUCTURE *)(UINTN)pFADT->FirmwareCtrl; > + FacsPtr = (EFI_ACPI_6_3_FIRMWARE_ACPI_CONTROL_STRUCTURE > + *)(UINTN)pFADT->FirmwareCtrl; > FacsPtr->HardwareSignature = CRC; > FreePool( HWChange ); > } > diff --git a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Facs/Facs.c b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Facs/Facs.c > index cde6e478c6b9..8700c44e633d 100644 > --- a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Facs/Facs.c > +++ b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Facs/Facs.c > @@ -1,9 +1,10 @@ > /** @file > - This file contains a structure definition for the ACPI 5.0 Firmware ACPI > + This file contains a structure definition for the ACPI 6.3 Firmware > + ACPI > Control Structure (FACS). The contents of this file should only be modified > for bug fixes, no porting is required. > > Copyright (c) 2017, Intel Corporation. All rights reserved.
> +Copyright (c) Microsoft Corporation.
> SPDX-License-Identifier: BSD-2-Clause-Patent > > **/ > @@ -35,9 +36,9 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // Please modify all values in Facs.h only. > // > > -EFI_ACPI_5_0_FIRMWARE_ACPI_CONTROL_STRUCTURE Facs = { > - EFI_ACPI_5_0_FIRMWARE_ACPI_CONTROL_STRUCTURE_SIGNATURE, > - sizeof (EFI_ACPI_5_0_FIRMWARE_ACPI_CONTROL_STRUCTURE), > +EFI_ACPI_6_3_FIRMWARE_ACPI_CONTROL_STRUCTURE Facs = { > + EFI_ACPI_6_3_FIRMWARE_ACPI_CONTROL_STRUCTURE_SIGNATURE, > + sizeof (EFI_ACPI_6_3_FIRMWARE_ACPI_CONTROL_STRUCTURE), > > // > // Hardware Signature will be updated at runtime @@ -48,7 +49,7 @@ EFI_ACPI_5_0_FIRMWARE_ACPI_CONTROL_STRUCTURE Facs = { > EFI_ACPI_GLOBAL_LOCK, > EFI_ACPI_FIRMWARE_CONTROL_STRUCTURE_FLAGS, > EFI_ACPI_X_FIRMWARE_WAKING_VECTOR, > - EFI_ACPI_5_0_FIRMWARE_ACPI_CONTROL_STRUCTURE_VERSION, > + EFI_ACPI_6_3_FIRMWARE_ACPI_CONTROL_STRUCTURE_VERSION, > { > EFI_ACPI_RESERVED_BYTE, > EFI_ACPI_RESERVED_BYTE, > diff --git a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Fadt/Fadt.c b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Fadt/Fadt.c > index 6efb38cda40d..38e767856de7 100644 > --- a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Fadt/Fadt.c > +++ b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/Fadt/Fadt.c > @@ -1,9 +1,10 @@ > /** @file > - This file contains a structure definition for the ACPI 5.0 Fixed ACPI > + This file contains a structure definition for the ACPI 6.3 Fixed ACPI > Description Table (FADT). The contents of this file should only be modified > for bug fixes, no porting is required. > > Copyright (c) 2017, Intel Corporation. All rights reserved.
> +Copyright (c) Microsoft Corporation.
> SPDX-License-Identifier: BSD-2-Clause-Patent > > **/ > @@ -47,6 +48,12 @@ SPDX-License-Identifier: BSD-2-Clause-Patent > > #define EFI_ACPI_IAPC_BOOT_ARCH 0 // To be fixed > > +// > +// ARM Boot Architecture Flags > +// > + > +#define EFI_ACPI_ARM_BOOT_ARCH 0 // To be fixed > + > // > // Fixed Feature Flags > // > @@ -55,7 +62,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // // PM1A Event Register Block Generic Address Information // -#define EFI_ACPI_PM1A_EVT_BLK_ADDRESS_SPACE_ID EFI_ACPI_2_0_SYSTEM_IO > +#define EFI_ACPI_PM1A_EVT_BLK_ADDRESS_SPACE_ID EFI_ACPI_6_3_SYSTEM_IO > #define EFI_ACPI_PM1A_EVT_BLK_BIT_WIDTH 0x20 > #define EFI_ACPI_PM1A_EVT_BLK_BIT_OFFSET 0x00 > #define EFI_ACPI_PM1A_EVT_BLK_ADDRESS 0 // To be fixed > @@ -63,7 +70,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // // PM1B Event Register Block Generic Address Information // -#define EFI_ACPI_PM1B_EVT_BLK_ADDRESS_SPACE_ID EFI_ACPI_2_0_SYSTEM_IO > +#define EFI_ACPI_PM1B_EVT_BLK_ADDRESS_SPACE_ID EFI_ACPI_6_3_SYSTEM_IO > #define EFI_ACPI_PM1B_EVT_BLK_BIT_WIDTH 0x00 > #define EFI_ACPI_PM1B_EVT_BLK_BIT_OFFSET 0x00 > #define EFI_ACPI_PM1B_EVT_BLK_ADDRESS 0 // To be fixed > @@ -71,7 +78,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // // PM1A Control Register Block Generic Address Information // -#define EFI_ACPI_PM1A_CNT_BLK_ADDRESS_SPACE_ID EFI_ACPI_2_0_SYSTEM_IO > +#define EFI_ACPI_PM1A_CNT_BLK_ADDRESS_SPACE_ID EFI_ACPI_6_3_SYSTEM_IO > #define EFI_ACPI_PM1A_CNT_BLK_BIT_WIDTH 0x10 > #define EFI_ACPI_PM1A_CNT_BLK_BIT_OFFSET 0x00 > #define EFI_ACPI_PM1A_CNT_BLK_ADDRESS 0 // To be fixed > @@ -79,7 +86,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // // PM1B Control Register Block Generic Address Information // -#define EFI_ACPI_PM1B_CNT_BLK_ADDRESS_SPACE_ID EFI_ACPI_2_0_SYSTEM_IO > +#define EFI_ACPI_PM1B_CNT_BLK_ADDRESS_SPACE_ID EFI_ACPI_6_3_SYSTEM_IO > #define EFI_ACPI_PM1B_CNT_BLK_BIT_WIDTH 0x00 > #define EFI_ACPI_PM1B_CNT_BLK_BIT_OFFSET 0x00 > #define EFI_ACPI_PM1B_CNT_BLK_ADDRESS 0 // To be fixed > @@ -87,7 +94,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // // PM2 Control Register Block Generic Address Information // -#define EFI_ACPI_PM2_CNT_BLK_ADDRESS_SPACE_ID EFI_ACPI_2_0_SYSTEM_IO > +#define EFI_ACPI_PM2_CNT_BLK_ADDRESS_SPACE_ID EFI_ACPI_6_3_SYSTEM_IO > #define EFI_ACPI_PM2_CNT_BLK_BIT_WIDTH 0x08 > #define EFI_ACPI_PM2_CNT_BLK_BIT_OFFSET 0x00 > #define EFI_ACPI_PM2_CNT_BLK_ADDRESS 0 // To be fixed > @@ -96,7 +103,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // Power Management Timer Control Register Block Generic Address // Information // -#define EFI_ACPI_PM_TMR_BLK_ADDRESS_SPACE_ID EFI_ACPI_2_0_SYSTEM_IO > +#define EFI_ACPI_PM_TMR_BLK_ADDRESS_SPACE_ID EFI_ACPI_6_3_SYSTEM_IO > #define EFI_ACPI_PM_TMR_BLK_BIT_WIDTH 0x20 > #define EFI_ACPI_PM_TMR_BLK_BIT_OFFSET 0x00 > #define EFI_ACPI_PM_TMR_BLK_ADDRESS 0 // To be fixed > @@ -105,7 +112,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // General Purpose Event 0 Register Block Generic Address // Information // -#define EFI_ACPI_GPE0_BLK_ADDRESS_SPACE_ID EFI_ACPI_2_0_SYSTEM_IO > +#define EFI_ACPI_GPE0_BLK_ADDRESS_SPACE_ID EFI_ACPI_6_3_SYSTEM_IO > #define EFI_ACPI_GPE0_BLK_BIT_WIDTH 0 // size of R_PCH_ACPI_GPE0_STS_127_96 + R_PCH_ACPI_GPE0_EN_127_96 > #define EFI_ACPI_GPE0_BLK_BIT_OFFSET 0x00 > #define EFI_ACPI_GPE0_BLK_ADDRESS 0 // To be fixed > @@ -114,14 +121,14 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // General Purpose Event 1 Register Block Generic Address // Information // -#define EFI_ACPI_GPE1_BLK_ADDRESS_SPACE_ID EFI_ACPI_2_0_SYSTEM_IO > +#define EFI_ACPI_GPE1_BLK_ADDRESS_SPACE_ID EFI_ACPI_6_3_SYSTEM_IO > #define EFI_ACPI_GPE1_BLK_BIT_WIDTH 0x0 > #define EFI_ACPI_GPE1_BLK_BIT_OFFSET 0x0 > #define EFI_ACPI_GPE1_BLK_ADDRESS 0 // To be fixed > // > // Reset Register Generic Address Information // -#define EFI_ACPI_RESET_REG_ADDRESS_SPACE_ID EFI_ACPI_2_0_SYSTEM_IO > +#define EFI_ACPI_RESET_REG_ADDRESS_SPACE_ID EFI_ACPI_6_3_SYSTEM_IO > #define EFI_ACPI_RESET_REG_BIT_WIDTH 0x08 > #define EFI_ACPI_RESET_REG_BIT_OFFSET 0x00 > #define EFI_ACPI_RESET_REG_ADDRESS 0x00000CF9 > @@ -162,11 +169,11 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // Please modify all values in Fadt.h only. > // > > -EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE Fadt = { > +EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE Fadt = { > { > - EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE, > - sizeof (EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE), > - EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE_REVISION, > + EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE, > + sizeof (EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE), > + EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE_REVISION, > > // > // Checksum will be updated at runtime @@ -187,9 +194,9 @@ EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE Fadt = { > // > // These addresses will be updated at runtime > // > - 0x00000000, > 0x00000000, > - > + 0x00000000, > + > EFI_ACPI_RESERVED_BYTE, > EFI_ACPI_PREFERRED_PM_PROFILE, > EFI_ACPI_SCI_INT, > @@ -198,7 +205,7 @@ EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE Fadt = { > EFI_ACPI_ACPI_DISABLE, > EFI_ACPI_S4_BIOS_REQ, > EFI_ACPI_PSTATE_CNT, > - > + > EFI_ACPI_PM1A_EVT_BLK_ADDRESS, > EFI_ACPI_PM1B_EVT_BLK_ADDRESS, > EFI_ACPI_PM1A_CNT_BLK_ADDRESS, > @@ -240,15 +247,13 @@ EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE Fadt = { > EFI_ACPI_RESET_REG_ADDRESS_SPACE_ID, > EFI_ACPI_RESET_REG_BIT_WIDTH, > EFI_ACPI_RESET_REG_BIT_OFFSET, > - EFI_ACPI_5_0_BYTE, > + EFI_ACPI_6_3_BYTE, > EFI_ACPI_RESET_REG_ADDRESS > }, > EFI_ACPI_RESET_VALUE, > - { > - EFI_ACPI_RESERVED_BYTE, > - EFI_ACPI_RESERVED_BYTE, > - EFI_ACPI_RESERVED_BYTE > - }, > + > + EFI_ACPI_ARM_BOOT_ARCH, > + EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE_MINOR_REVISION, > > // > // These addresses will be updated at runtime @@ -263,7 +268,7 @@ EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE Fadt = { > EFI_ACPI_PM1A_EVT_BLK_ADDRESS_SPACE_ID, > EFI_ACPI_PM1A_EVT_BLK_BIT_WIDTH, > EFI_ACPI_PM1A_EVT_BLK_BIT_OFFSET, > - EFI_ACPI_5_0_WORD, > + EFI_ACPI_6_3_WORD, > EFI_ACPI_PM1A_EVT_BLK_ADDRESS > }, > { > @@ -273,7 +278,7 @@ EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE Fadt = { > EFI_ACPI_PM1B_EVT_BLK_ADDRESS_SPACE_ID, > EFI_ACPI_PM1B_EVT_BLK_BIT_WIDTH, > EFI_ACPI_PM1B_EVT_BLK_BIT_OFFSET, > - EFI_ACPI_5_0_WORD, > + EFI_ACPI_6_3_WORD, > EFI_ACPI_PM1B_EVT_BLK_ADDRESS > }, > { > @@ -283,7 +288,7 @@ EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE Fadt = { > EFI_ACPI_PM1A_CNT_BLK_ADDRESS_SPACE_ID, > EFI_ACPI_PM1A_CNT_BLK_BIT_WIDTH, > EFI_ACPI_PM1A_CNT_BLK_BIT_OFFSET, > - EFI_ACPI_5_0_WORD, > + EFI_ACPI_6_3_WORD, > EFI_ACPI_PM1A_CNT_BLK_ADDRESS > }, > { > @@ -293,7 +298,7 @@ EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE Fadt = { > EFI_ACPI_PM1B_CNT_BLK_ADDRESS_SPACE_ID, > EFI_ACPI_PM1B_CNT_BLK_BIT_WIDTH, > EFI_ACPI_PM1B_CNT_BLK_BIT_OFFSET, > - EFI_ACPI_5_0_WORD, > + EFI_ACPI_6_3_WORD, > EFI_ACPI_PM1B_CNT_BLK_ADDRESS > }, > { > @@ -303,7 +308,7 @@ EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE Fadt = { > EFI_ACPI_PM2_CNT_BLK_ADDRESS_SPACE_ID, > EFI_ACPI_PM2_CNT_BLK_BIT_WIDTH, > EFI_ACPI_PM2_CNT_BLK_BIT_OFFSET, > - EFI_ACPI_5_0_BYTE, > + EFI_ACPI_6_3_BYTE, > EFI_ACPI_PM2_CNT_BLK_ADDRESS > }, > { > @@ -313,7 +318,7 @@ EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE Fadt = { > EFI_ACPI_PM_TMR_BLK_ADDRESS_SPACE_ID, > EFI_ACPI_PM_TMR_BLK_BIT_WIDTH, > EFI_ACPI_PM_TMR_BLK_BIT_OFFSET, > - EFI_ACPI_5_0_DWORD, > + EFI_ACPI_6_3_DWORD, > EFI_ACPI_PM_TMR_BLK_ADDRESS > }, > { > @@ -323,7 +328,7 @@ EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE Fadt = { > EFI_ACPI_GPE0_BLK_ADDRESS_SPACE_ID, > EFI_ACPI_GPE0_BLK_BIT_WIDTH, > EFI_ACPI_GPE0_BLK_BIT_OFFSET, > - EFI_ACPI_5_0_BYTE, > + EFI_ACPI_6_3_BYTE, > EFI_ACPI_GPE0_BLK_ADDRESS > }, > { > @@ -333,7 +338,7 @@ EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE Fadt = { > EFI_ACPI_GPE1_BLK_ADDRESS_SPACE_ID, > EFI_ACPI_GPE1_BLK_BIT_WIDTH, > EFI_ACPI_GPE1_BLK_BIT_OFFSET, > - EFI_ACPI_5_0_BYTE, > + EFI_ACPI_6_3_BYTE, > EFI_ACPI_GPE1_BLK_ADDRESS > }, > { > @@ -355,5 +360,10 @@ EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE Fadt = { > 0, > 0, > 0 > - } > + }, > + > + // > + // Hypervisor Vendor Identity > + // > + 0x0000000000000000, > }; > -- > 2.28.0.windows.1 >