From: "Chris Jones" <christopher.jones@arm.com>
To: <devel@edk2.groups.io>
Cc: <Alexei.Fedorov@arm.com>, <Sami.Mujawar@arm.com>,
<Ben.Adderson@arm.com>, <Akanksha.Jain2@arm.com>,
<Matteo.Carlini@arm.com>, <nd@arm.com>
Subject: [PATCH v1] DynamicTablesPkg: Update FADT generator to ACPI 6.4
Date: Tue, 17 Aug 2021 14:50:58 +0100 [thread overview]
Message-ID: <20210817135058.28579-1-christopher.jones@arm.com> (raw)
Bugzilla: 3568 (https://bugzilla.tianocore.org/show_bug.cgi?id=3568)
Update the FADT generator to use Acpi64.h. As the FADT revision tracks
the ACPI revision this updates the minor revision value generated.
Mantis ID for change: https://mantis.uefi.org/mantis/view.php?id=2105
Signed-off-by: Chris Jones <christopher.jones@arm.com>
---
DynamicTablesPkg/Library/Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c | 104 ++++++++++----------
1 file changed, 52 insertions(+), 52 deletions(-)
diff --git a/DynamicTablesPkg/Library/Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c b/DynamicTablesPkg/Library/Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c
index b748c982b285a8f6c012c0e08fb95c9904f47730..b4ebd463da02ca37f22b73413b038471081f64e7 100644
--- a/DynamicTablesPkg/Library/Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c
+++ b/DynamicTablesPkg/Library/Acpi/Arm/AcpiFadtLibArm/FadtGenerator.c
@@ -1,11 +1,11 @@
/** @file
FADT Table Generator
- Copyright (c) 2017 - 2019, ARM Limited. All rights reserved.
+ Copyright (c) 2017 - 2021, ARM Limited. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
@par Reference(s):
- - ACPI 6.3 Specification, January 2019
+ - ACPI 6.4 Specification, January 2021
**/
@@ -32,8 +32,8 @@ Requirements:
/** This macro defines the FADT flag options for ARM Platforms.
*/
-#define FADT_FLAGS (EFI_ACPI_6_3_HW_REDUCED_ACPI | \
- EFI_ACPI_6_3_LOW_POWER_S0_IDLE_CAPABLE)
+#define FADT_FLAGS (EFI_ACPI_6_4_HW_REDUCED_ACPI | \
+ EFI_ACPI_6_4_LOW_POWER_S0_IDLE_CAPABLE)
/** This macro defines the valid mask for the FADT flag option
if HW_REDUCED_ACPI flag in the table is set.
@@ -42,47 +42,47 @@ Requirements:
22-31 (reserved).
Valid bits are:
- EFI_ACPI_6_3_WBINVD BIT0
- EFI_ACPI_6_3_PWR_BUTTON BIT4
- EFI_ACPI_6_3_SLP_BUTTON BIT5
- EFI_ACPI_6_3_FIX_RTC BIT6
- EFI_ACPI_6_3_DCK_CAP BIT9
- EFI_ACPI_6_3_RESET_REG_SUP BIT10
- EFI_ACPI_6_3_SEALED_CASE BIT11
- EFI_ACPI_6_3_HEADLESS BIT12
- EFI_ACPI_6_3_USE_PLATFORM_CLOCK BIT15
- EFI_ACPI_6_3_FORCE_APIC_CLUSTER_MODEL BIT18
- EFI_ACPI_6_3_FORCE_APIC_PHYSICAL_DESTINATION_MODE BIT19
- EFI_ACPI_6_3_HW_REDUCED_ACPI BIT20
- EFI_ACPI_6_3_LOW_POWER_S0_IDLE_CAPABLE BIT21
+ EFI_ACPI_6_4_WBINVD BIT0
+ EFI_ACPI_6_4_PWR_BUTTON BIT4
+ EFI_ACPI_6_4_SLP_BUTTON BIT5
+ EFI_ACPI_6_4_FIX_RTC BIT6
+ EFI_ACPI_6_4_DCK_CAP BIT9
+ EFI_ACPI_6_4_RESET_REG_SUP BIT10
+ EFI_ACPI_6_4_SEALED_CASE BIT11
+ EFI_ACPI_6_4_HEADLESS BIT12
+ EFI_ACPI_6_4_USE_PLATFORM_CLOCK BIT15
+ EFI_ACPI_6_4_FORCE_APIC_CLUSTER_MODEL BIT18
+ EFI_ACPI_6_4_FORCE_APIC_PHYSICAL_DESTINATION_MODE BIT19
+ EFI_ACPI_6_4_HW_REDUCED_ACPI BIT20
+ EFI_ACPI_6_4_LOW_POWER_S0_IDLE_CAPABLE BIT21
*/
#define VALID_HARDWARE_REDUCED_FLAG_MASK ( \
- EFI_ACPI_6_3_WBINVD | \
- EFI_ACPI_6_3_PWR_BUTTON | \
- EFI_ACPI_6_3_SLP_BUTTON | \
- EFI_ACPI_6_3_FIX_RTC | \
- EFI_ACPI_6_3_DCK_CAP | \
- EFI_ACPI_6_3_RESET_REG_SUP | \
- EFI_ACPI_6_3_SEALED_CASE | \
- EFI_ACPI_6_3_HEADLESS | \
- EFI_ACPI_6_3_USE_PLATFORM_CLOCK | \
- EFI_ACPI_6_3_FORCE_APIC_CLUSTER_MODEL | \
- EFI_ACPI_6_3_FORCE_APIC_PHYSICAL_DESTINATION_MODE | \
- EFI_ACPI_6_3_HW_REDUCED_ACPI | \
- EFI_ACPI_6_3_LOW_POWER_S0_IDLE_CAPABLE)
+ EFI_ACPI_6_4_WBINVD | \
+ EFI_ACPI_6_4_PWR_BUTTON | \
+ EFI_ACPI_6_4_SLP_BUTTON | \
+ EFI_ACPI_6_4_FIX_RTC | \
+ EFI_ACPI_6_4_DCK_CAP | \
+ EFI_ACPI_6_4_RESET_REG_SUP | \
+ EFI_ACPI_6_4_SEALED_CASE | \
+ EFI_ACPI_6_4_HEADLESS | \
+ EFI_ACPI_6_4_USE_PLATFORM_CLOCK | \
+ EFI_ACPI_6_4_FORCE_APIC_CLUSTER_MODEL | \
+ EFI_ACPI_6_4_FORCE_APIC_PHYSICAL_DESTINATION_MODE | \
+ EFI_ACPI_6_4_HW_REDUCED_ACPI | \
+ EFI_ACPI_6_4_LOW_POWER_S0_IDLE_CAPABLE)
#pragma pack(1)
-/** The AcpiFadt is a template EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE
+/** The AcpiFadt is a template EFI_ACPI_6_4_FIXED_ACPI_DESCRIPTION_TABLE
structure used for generating the FADT Table.
Note: fields marked with "{Template}" will be updated dynamically.
*/
STATIC
-EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE AcpiFadt = {
+EFI_ACPI_6_4_FIXED_ACPI_DESCRIPTION_TABLE AcpiFadt = {
ACPI_HEADER (
- EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE,
- EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE,
- EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE_REVISION
+ EFI_ACPI_6_4_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE,
+ EFI_ACPI_6_4_FIXED_ACPI_DESCRIPTION_TABLE,
+ EFI_ACPI_6_4_FIXED_ACPI_DESCRIPTION_TABLE_REVISION
),
// UINT32 FirmwareCtrl
0,
@@ -91,7 +91,7 @@ EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE AcpiFadt = {
// UINT8 Reserved0
EFI_ACPI_RESERVED_BYTE,
// UINT8 PreferredPmProfile
- EFI_ACPI_6_3_PM_PROFILE_UNSPECIFIED, // {Template}: Power Management Profile
+ EFI_ACPI_6_4_PM_PROFILE_UNSPECIFIED, // {Template}: Power Management Profile
// UINT16 SciInt
0,
// UINT32 SmiCmd
@@ -160,37 +160,37 @@ EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE AcpiFadt = {
0,
// UINT32 Flags
FADT_FLAGS,
- // EFI_ACPI_6_3_GENERIC_ADDRESS_STRUCTURE ResetReg
+ // EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE ResetReg
NULL_GAS,
// UINT8 ResetValue
0,
// UINT16 ArmBootArch
- EFI_ACPI_6_3_ARM_PSCI_COMPLIANT, // {Template}: ARM Boot Architecture Flags
+ EFI_ACPI_6_4_ARM_PSCI_COMPLIANT, // {Template}: ARM Boot Architecture Flags
// UINT8 MinorRevision
- EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE_MINOR_REVISION,
+ EFI_ACPI_6_4_FIXED_ACPI_DESCRIPTION_TABLE_MINOR_REVISION,
// UINT64 XFirmwareCtrl
0,
// UINT64 XDsdt
0,
- // EFI_ACPI_6_3_GENERIC_ADDRESS_STRUCTURE XPm1aEvtBlk
+ // EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE XPm1aEvtBlk
NULL_GAS,
- // EFI_ACPI_6_3_GENERIC_ADDRESS_STRUCTURE XPm1bEvtBlk
+ // EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE XPm1bEvtBlk
NULL_GAS,
- // EFI_ACPI_6_3_GENERIC_ADDRESS_STRUCTURE XPm1aCntBlk
+ // EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE XPm1aCntBlk
NULL_GAS,
- // EFI_ACPI_6_3_GENERIC_ADDRESS_STRUCTURE XPm1bCntBlk
+ // EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE XPm1bCntBlk
NULL_GAS,
- // EFI_ACPI_6_3_GENERIC_ADDRESS_STRUCTURE XPm2CntBlk
+ // EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE XPm2CntBlk
NULL_GAS,
- // EFI_ACPI_6_3_GENERIC_ADDRESS_STRUCTURE XPmTmrBlk
+ // EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE XPmTmrBlk
NULL_GAS,
- // EFI_ACPI_6_3_GENERIC_ADDRESS_STRUCTURE XGpe0Blk
+ // EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE XGpe0Blk
NULL_GAS,
- // EFI_ACPI_6_3_GENERIC_ADDRESS_STRUCTURE XGpe1Blk
+ // EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE XGpe1Blk
NULL_GAS,
- // EFI_ACPI_6_3_GENERIC_ADDRESS_STRUCTURE SleepControlReg
+ // EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE SleepControlReg
NULL_GAS,
- // EFI_ACPI_6_3_GENERIC_ADDRESS_STRUCTURE SleepStatusReg
+ // EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE SleepStatusReg
NULL_GAS,
// UINT64 HypervisorVendorIdentity
EFI_ACPI_RESERVED_QWORD // {Template}: Hypervisor Vendor ID
@@ -532,7 +532,7 @@ BuildFadtTable (
This,
(EFI_ACPI_DESCRIPTION_HEADER*)&AcpiFadt,
AcpiTableInfo,
- sizeof (EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE)
+ sizeof (EFI_ACPI_6_4_FIXED_ACPI_DESCRIPTION_TABLE)
);
if (EFI_ERROR (Status)) {
DEBUG ((
@@ -614,9 +614,9 @@ ACPI_TABLE_GENERATOR FadtGenerator = {
// Generator Description
L"ACPI.STD.FADT.GENERATOR",
// ACPI Table Signature
- EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE,
+ EFI_ACPI_6_4_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE,
// ACPI Table Revision supported by this Generator
- EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE_REVISION,
+ EFI_ACPI_6_4_FIXED_ACPI_DESCRIPTION_TABLE_REVISION,
// Minimum supported ACPI Table Revision
EFI_ACPI_6_2_FIXED_ACPI_DESCRIPTION_TABLE_REVISION,
// Creator ID
--
Guid("CE165669-3EF3-493F-B85D-6190EE5B9759")
next reply other threads:[~2021-08-17 13:51 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-17 13:50 Chris Jones [this message]
2021-08-18 14:23 ` [edk2-devel] [PATCH v1] DynamicTablesPkg: Update FADT generator to ACPI 6.4 Sami Mujawar
2021-10-05 15:30 ` Sami Mujawar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210817135058.28579-1-christopher.jones@arm.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox