From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
To: Leif Lindholm <leif.lindholm@linaro.org>
Cc: Chandni Cherukuri <chandni.cherukuri@arm.com>,
"edk2-devel@lists.01.org" <edk2-devel@lists.01.org>
Subject: Re: [PATCH edk2-platforms] sgi575/acpi: Use ACPI 6.2 specification
Date: Thu, 30 Aug 2018 15:03:16 +0200 [thread overview]
Message-ID: <CAKv+Gu_7bLHPbb2QvwPqZsDQXf=BW9jSAiYKev-0sLAfLK=MLg@mail.gmail.com> (raw)
In-Reply-To: <20180830112315.xem25mevpahywvof@bivouac.eciton.net>
On 30 August 2018 at 13:23, Leif Lindholm <leif.lindholm@linaro.org> wrote:
> On Wed, Aug 29, 2018 at 04:14:16PM +0530, Chandni Cherukuri wrote:
>> Switched from using ACPI 6.1 to 6.2 specification for
>> SGI575 since SBBR 1.1 requires ACPI 6.2 tables or later.
>
> Just to clarify - this has no impact at all on the actual generated
> tables, right?
>
> We really should have a better way of dealing with this.
> (But we don't, at the moment.)
>
I don't see the point of these changes. The whole point of ACPI's
forward compatibility guarantees is that a ACPI 6.1 system
automatically complies with ACPI 6.2, and so these changes are not
necessary for compliance with SBBR 1.1 either.
>> Contributed-under: TianoCore Contribution Agreement 1.1
>> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
>> Cc: Leif Lindholm <leif.lindholm@linaro.org>
>> Signed-off-by: Chandni Cherukuri <chandni.cherukuri@arm.com>
>> ---
>> Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dbg2.aslc | 8 ++--
>> Platform/ARM/SgiPkg/AcpiTables/Sgi575/Gtdt.aslc | 48 ++++++++++----------
>> Platform/ARM/SgiPkg/AcpiTables/Sgi575/Mcfg.aslc | 4 +-
>> Platform/ARM/SgiPkg/AcpiTables/Sgi575/Spcr.aslc | 6 +--
>> 4 files changed, 33 insertions(+), 33 deletions(-)
>>
>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dbg2.aslc b/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dbg2.aslc
>> index ed671f3..0183685 100644
>> --- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dbg2.aslc
>> +++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dbg2.aslc
>> @@ -15,7 +15,7 @@
>>
>> #include "SgiAcpiHeader.h"
>> #include <Library/AcpiLib.h>
>> -#include <IndustryStandard/Acpi61.h>
>> +#include <IndustryStandard/Acpi62.h>
>> #include <IndustryStandard/DebugPort2Table.h>
>>
>> #define SGI_DBG2_NUM_DEBUG_PORTS 1
>> @@ -29,7 +29,7 @@
>>
>> typedef struct {
>> EFI_ACPI_DBG2_DEBUG_DEVICE_INFORMATION_STRUCT Dbg2Device;
>> - EFI_ACPI_6_1_GENERIC_ADDRESS_STRUCTURE BaseAddressRegister;
>> + EFI_ACPI_6_2_GENERIC_ADDRESS_STRUCTURE BaseAddressRegister;
>> UINT32 AddressSize;
>> UINT8 NameSpaceString[SGI_DBG2_NS_STR_LENGTH];
>> } DBG2_DEBUG_DEVICE_INFORMATION;
>> @@ -56,7 +56,7 @@ typedef struct {
>> OFFSET_OF (DBG2_DEBUG_DEVICE_INFORMATION, BaseAddressRegister), /* UINT16 BaseAddressRegister Offset */ \
>> OFFSET_OF (DBG2_DEBUG_DEVICE_INFORMATION, AddressSize) /* UINT16 AddressSize Offset */ \
>> }, \
>> - ARM_GAS32 (UartBase), /* EFI_ACPI_6_1_GENERIC_ADDRESS_STRUCTURE BaseAddressRegister */ \
>> + ARM_GAS32 (UartBase), /* EFI_ACPI_6_2_GENERIC_ADDRESS_STRUCTURE BaseAddressRegister */ \
>> UartAddrLen, /* UINT32 AddressSize */ \
>> UartNameStr /* UINT8 NameSpaceString[MAX_DBG2_NAME_LEN] */ \
>> }
>> @@ -64,7 +64,7 @@ typedef struct {
>> STATIC DBG2_TABLE Dbg2 = {
>> {
>> ARM_ACPI_HEADER (
>> - EFI_ACPI_6_1_DEBUG_PORT_2_TABLE_SIGNATURE,
>> + EFI_ACPI_6_2_DEBUG_PORT_2_TABLE_SIGNATURE,
>> DBG2_TABLE,
>> EFI_ACPI_DBG2_DEBUG_DEVICE_INFORMATION_STRUCT_REVISION
>> ),
>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Gtdt.aslc b/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Gtdt.aslc
>> index 46d811e..39e3f02 100644
>> --- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Gtdt.aslc
>> +++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Gtdt.aslc
>> @@ -16,7 +16,7 @@
>> #include "SgiAcpiHeader.h"
>> #include <Library/AcpiLib.h>
>> #include <Library/PcdLib.h>
>> -#include <IndustryStandard/Acpi61.h>
>> +#include <IndustryStandard/Acpi62.h>
>>
>> #define SGI_PLATFORM_WATCHDOG_COUNT 2
>> #define SGI_PLATFORM_TIMER_COUNT (SGI_PLATFORM_WATCHDOG_COUNT + 1)
>> @@ -24,7 +24,7 @@
>>
>> #define SYSTEM_TIMER_BASE_ADDRESS 0xFFFFFFFFFFFFFFFF
>> #define GTDT_GLOBAL_FLAGS 0
>> -#define GTDT_GTIMER_FLAGS EFI_ACPI_6_1_GTDT_TIMER_FLAG_TIMER_INTERRUPT_POLARITY
>> +#define GTDT_GTIMER_FLAGS EFI_ACPI_6_2_GTDT_TIMER_FLAG_TIMER_INTERRUPT_POLARITY
>>
>> #define SGI_GT_BLOCK_CTL_BASE 0x2A810000
>> #define SGI_GT_BLOCK_FRAME1_CTL_BASE 0x2A820000
>> @@ -36,18 +36,18 @@
>> #define SGI_GT_BLOCK_FRAME0_GSIV 0x5C
>>
>> #define SGI_GTX_TIMER_FLAGS 0
>> -#define GTX_TIMER_SECURE EFI_ACPI_6_1_GTDT_GT_BLOCK_COMMON_FLAG_SECURE_TIMER
>> +#define GTX_TIMER_SECURE EFI_ACPI_6_2_GTDT_GT_BLOCK_COMMON_FLAG_SECURE_TIMER
>> #define GTX_TIMER_NON_SECURE 0
>> -#define GTX_TIMER_SAVE_CONTEXT EFI_ACPI_6_1_GTDT_GT_BLOCK_COMMON_FLAG_ALWAYS_ON_CAPABILITY
>> +#define GTX_TIMER_SAVE_CONTEXT EFI_ACPI_6_2_GTDT_GT_BLOCK_COMMON_FLAG_ALWAYS_ON_CAPABILITY
>> #define SGI_GTX_COMMON_FLAGS_S (GTX_TIMER_SAVE_CONTEXT | GTX_TIMER_SECURE)
>> #define SGI_GTX_COMMON_FLAGS_NS (GTX_TIMER_SAVE_CONTEXT | GTX_TIMER_NON_SECURE)
>>
>> -#define EFI_ACPI_6_1_SBSA_GENERIC_WATCHDOG_STRUCTURE_INIT( \
>> +#define EFI_ACPI_6_2_SBSA_GENERIC_WATCHDOG_STRUCTURE_INIT( \
>> RefreshFramePhysicalAddress, ControlFramePhysicalAddress, \
>> WatchdogTimerGSIV, WatchdogTimerFlags) \
>> { \
>> - EFI_ACPI_6_1_GTDT_SBSA_GENERIC_WATCHDOG, \
>> - sizeof (EFI_ACPI_6_1_GTDT_SBSA_GENERIC_WATCHDOG_STRUCTURE), \
>> + EFI_ACPI_6_2_GTDT_SBSA_GENERIC_WATCHDOG, \
>> + sizeof (EFI_ACPI_6_2_GTDT_SBSA_GENERIC_WATCHDOG_STRUCTURE), \
>> EFI_ACPI_RESERVED_WORD, \
>> RefreshFramePhysicalAddress, \
>> ControlFramePhysicalAddress, \
>> @@ -58,20 +58,20 @@
>> #pragma pack (1)
>>
>> typedef struct {
>> - EFI_ACPI_6_1_GENERIC_TIMER_DESCRIPTION_TABLE Gtdt;
>> - EFI_ACPI_6_1_GTDT_GT_BLOCK_STRUCTURE GtBlock;
>> - EFI_ACPI_6_1_GTDT_GT_BLOCK_TIMER_STRUCTURE Frames[SGI_TIMER_FRAMES_COUNT];
>> - EFI_ACPI_6_1_GTDT_SBSA_GENERIC_WATCHDOG_STRUCTURE Watchdogs[SGI_PLATFORM_WATCHDOG_COUNT];
>> -} EFI_ACPI_6_1_GENERIC_TIMER_DESCRIPTION_TABLES;
>> + EFI_ACPI_6_2_GENERIC_TIMER_DESCRIPTION_TABLE Gtdt;
>> + EFI_ACPI_6_2_GTDT_GT_BLOCK_STRUCTURE GtBlock;
>> + EFI_ACPI_6_2_GTDT_GT_BLOCK_TIMER_STRUCTURE Frames[SGI_TIMER_FRAMES_COUNT];
>> + EFI_ACPI_6_2_GTDT_SBSA_GENERIC_WATCHDOG_STRUCTURE Watchdogs[SGI_PLATFORM_WATCHDOG_COUNT];
>> +} EFI_ACPI_6_2_GENERIC_TIMER_DESCRIPTION_TABLES;
>>
>> #pragma pack ()
>>
>> -STATIC EFI_ACPI_6_1_GENERIC_TIMER_DESCRIPTION_TABLES Gtdt = {
>> +STATIC EFI_ACPI_6_2_GENERIC_TIMER_DESCRIPTION_TABLES Gtdt = {
>> {
>> ARM_ACPI_HEADER (
>> - EFI_ACPI_6_1_GENERIC_TIMER_DESCRIPTION_TABLE_SIGNATURE,
>> - EFI_ACPI_6_1_GENERIC_TIMER_DESCRIPTION_TABLES,
>> - EFI_ACPI_6_1_GENERIC_TIMER_DESCRIPTION_TABLE_REVISION
>> + EFI_ACPI_6_2_GENERIC_TIMER_DESCRIPTION_TABLE_SIGNATURE,
>> + EFI_ACPI_6_2_GENERIC_TIMER_DESCRIPTION_TABLES,
>> + EFI_ACPI_6_2_GENERIC_TIMER_DESCRIPTION_TABLE_REVISION
>> ),
>> SYSTEM_TIMER_BASE_ADDRESS, // UINT64 PhysicalAddress
>> 0, // UINT32 Reserved
>> @@ -85,17 +85,17 @@ STATIC EFI_ACPI_6_1_GENERIC_TIMER_DESCRIPTION_TABLES Gtdt = {
>> GTDT_GTIMER_FLAGS, // UINT32 NonSecurePL2TimerFlags
>> 0xFFFFFFFFFFFFFFFF, // UINT64 CntReadBasePhysicalAddress
>> SGI_PLATFORM_TIMER_COUNT, // UINT32 PlatformTimerCount
>> - sizeof (EFI_ACPI_6_1_GENERIC_TIMER_DESCRIPTION_TABLE) // UINT32 PlatfromTimerOffset
>> + sizeof (EFI_ACPI_6_2_GENERIC_TIMER_DESCRIPTION_TABLE) // UINT32 PlatfromTimerOffset
>> },
>> {
>> - EFI_ACPI_6_1_GTDT_GT_BLOCK, // UINT8 Type
>> - sizeof(EFI_ACPI_6_1_GTDT_GT_BLOCK_STRUCTURE) + // UINT16 Length
>> - sizeof(EFI_ACPI_6_1_GTDT_GT_BLOCK_TIMER_STRUCTURE) *
>> + EFI_ACPI_6_2_GTDT_GT_BLOCK, // UINT8 Type
>> + sizeof(EFI_ACPI_6_2_GTDT_GT_BLOCK_STRUCTURE) + // UINT16 Length
>> + sizeof(EFI_ACPI_6_2_GTDT_GT_BLOCK_TIMER_STRUCTURE) *
>> SGI_TIMER_FRAMES_COUNT,
>> EFI_ACPI_RESERVED_BYTE, // UINT8 Reserved
>> SGI_GT_BLOCK_CTL_BASE, // UINT64 CntCtlBase
>> SGI_TIMER_FRAMES_COUNT, // UINT32 GTBlockTimerCount
>> - sizeof (EFI_ACPI_6_1_GTDT_GT_BLOCK_STRUCTURE) // UINT32 GTBlockTimerOffset
>> + sizeof (EFI_ACPI_6_2_GTDT_GT_BLOCK_STRUCTURE) // UINT32 GTBlockTimerOffset
>> },
>> {
>> {
>> @@ -130,17 +130,17 @@ STATIC EFI_ACPI_6_1_GENERIC_TIMER_DESCRIPTION_TABLES Gtdt = {
>> }
>> },
>> {
>> - EFI_ACPI_6_1_SBSA_GENERIC_WATCHDOG_STRUCTURE_INIT (
>> + EFI_ACPI_6_2_SBSA_GENERIC_WATCHDOG_STRUCTURE_INIT (
>> FixedPcdGet32 (PcdGenericWatchdogRefreshBase),
>> FixedPcdGet32 (PcdGenericWatchdogControlBase),
>> 93,
>> 0
>> ),
>> - EFI_ACPI_6_1_SBSA_GENERIC_WATCHDOG_STRUCTURE_INIT (
>> + EFI_ACPI_6_2_SBSA_GENERIC_WATCHDOG_STRUCTURE_INIT (
>> FixedPcdGet32 (PcdGenericWatchdogRefreshBase),
>> FixedPcdGet32 (PcdGenericWatchdogControlBase),
>> 94,
>> - EFI_ACPI_6_1_GTDT_SBSA_GENERIC_WATCHDOG_FLAG_SECURE_TIMER
>> + EFI_ACPI_6_2_GTDT_SBSA_GENERIC_WATCHDOG_FLAG_SECURE_TIMER
>> )
>> }
>> };
>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Mcfg.aslc b/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Mcfg.aslc
>> index 4a487a3..03093c0 100644
>> --- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Mcfg.aslc
>> +++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Mcfg.aslc
>> @@ -13,7 +13,7 @@
>> *
>> **/
>>
>> -#include <IndustryStandard/Acpi61.h>
>> +#include <IndustryStandard/Acpi62.h>
>> #include <IndustryStandard/MemoryMappedConfigurationSpaceAccessTable.h>
>> #include <Library/PcdLib.h>
>> #include "SgiAcpiHeader.h"
>> @@ -34,7 +34,7 @@ typedef struct
>> EFI_ACPI_PCI_MEMORY_MAPPED_CONFIGURATION_SPACE_ACCESS_DESCRIPTION_TABLE Mcfg = {
>> {
>> ARM_ACPI_HEADER (
>> - EFI_ACPI_6_0_PCI_EXPRESS_MEMORY_MAPPED_CONFIGURATION_SPACE_BASE_ADDRESS_DESCRIPTION_TABLE_SIGNATURE,
>> + EFI_ACPI_6_2_PCI_EXPRESS_MEMORY_MAPPED_CONFIGURATION_SPACE_BASE_ADDRESS_DESCRIPTION_TABLE_SIGNATURE,
>> EFI_ACPI_PCI_MEMORY_MAPPED_CONFIGURATION_SPACE_ACCESS_DESCRIPTION_TABLE,
>> EFI_ACPI_MEMORY_MAPPED_CONFIGURATION_SPACE_ACCESS_TABLE_REVISION
>> ),
>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Spcr.aslc b/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Spcr.aslc
>> index 5265225..36cc5f3 100644
>> --- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Spcr.aslc
>> +++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Spcr.aslc
>> @@ -15,12 +15,12 @@
>>
>> #include "SgiAcpiHeader.h"
>> #include <Library/AcpiLib.h>
>> -#include <IndustryStandard/Acpi61.h>
>> +#include <IndustryStandard/Acpi62.h>
>> #include <IndustryStandard/SerialPortConsoleRedirectionTable.h>
>>
>> STATIC EFI_ACPI_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE Spcr = {
>> ARM_ACPI_HEADER (
>> - EFI_ACPI_6_1_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE_SIGNATURE,
>> + EFI_ACPI_6_2_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE_SIGNATURE,
>> EFI_ACPI_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE,
>> EFI_ACPI_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE_REVISION
>> ),
>> @@ -32,7 +32,7 @@ STATIC EFI_ACPI_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE Spcr = {
>> EFI_ACPI_RESERVED_BYTE,
>> EFI_ACPI_RESERVED_BYTE
>> },
>> - // EFI_ACPI_6_1_GENERIC_ADDRESS_STRUCTURE BaseAddress;
>> + // EFI_ACPI_6_2_GENERIC_ADDRESS_STRUCTURE BaseAddress;
>> ARM_GAS32 (0x7FF80000),
>> // UINT8 InterruptType;
>> EFI_ACPI_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE_INTERRUPT_TYPE_GIC,
>> --
>> 2.7.4
>>
next prev parent reply other threads:[~2018-08-30 13:03 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-08-29 10:44 [PATCH edk2-platforms] sgi575/acpi: Use ACPI 6.2 specification Chandni Cherukuri
2018-08-30 11:23 ` Leif Lindholm
2018-08-30 13:03 ` Ard Biesheuvel [this message]
2018-08-31 4:27 ` chandni cherukuri
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='CAKv+Gu_7bLHPbb2QvwPqZsDQXf=BW9jSAiYKev-0sLAfLK=MLg@mail.gmail.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