From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web12.3333.1655955641542174399 for ; Wed, 22 Jun 2022 20:40:41 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=TTsH7Oye; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: miki.shindo@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1655955641; x=1687491641; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=RZu6aEsdwah29X6kEY5NtqGDHs0wfOmGqef3ExqQ8Lw=; b=TTsH7OyeBKkWiM4Y4DRJ12vZWE+HpoWFWhjgglHqg6D/QkFZKiz14eeJ zo7ksT4Hc952VUm39wk0ykuYTt2xiRTEsWh+0nquI0zct7XpgtnZCMqs2 G3APgCwvV9K/bD9VCb1sMV69/crQEpyB+55INdugKmiUpHbP7Zm98FOMj w9UO726x7cseAX51z2G54/ADTFkTHkg3TL4nSFsz+P+LLBirXQAkMtxuv Jp3acDkw0QtEQ/ooDNYqf2Hd5xMJIEd5+kAzFpAzm+j1P1sCl0zNg9X2P x1+W8cjPRCIc80jN+zmXuXqS617EFTWdZOLSpknSOwpYXR5xT76OerfI7 A==; X-IronPort-AV: E=McAfee;i="6400,9594,10386"; a="281342530" X-IronPort-AV: E=Sophos;i="5.92,215,1650956400"; d="scan'208";a="281342530" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Jun 2022 20:40:40 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.92,215,1650956400"; d="scan'208";a="765142762" Received: from mshindo-desk2.amr.corp.intel.com ([10.53.88.126]) by orsmga005.jf.intel.com with ESMTP; 22 Jun 2022 20:40:39 -0700 From: "Miki Shindo" To: devel@edk2.groups.io Cc: Michael D Kinney , Liming Gao , Zhiguang Liu , Ray Ni Subject: [edk2:PATCH v3] MdePkg/Acpi62: Add type 7 NFIT Platform Capabilities Structure support Date: Wed, 22 Jun 2022 20:40:17 -0700 Message-Id: <20220623034017.7365-1-miki.shindo@intel.com> X-Mailer: git-send-email 2.27.0.windows.1 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3915 This commit adds a definition type 7 Platform Capabilities Structure and the struct definition for NFIT Table Structure Types. The type has been added since ACPI Specification Version 6.2A. Signed-off-by: Miki Shindo Cc: Michael D Kinney Cc: Liming Gao Cc: Zhiguang Liu Cc: Ray Ni --- MdePkg/Include/IndustryStandard/Acpi62.h | 13 +++++++++++++ MdePkg/Include/IndustryStandard/Acpi63.h | 13 +++++++++++++ MdePkg/Include/IndustryStandard/Acpi64.h | 13 +++++++++++++ 3 files changed, 39 insertions(+) diff --git a/MdePkg/Include/IndustryStandard/Acpi62.h b/MdePkg/Include/Indu= stryStandard/Acpi62.h index 313db63044..836e986ee5 100644 --- a/MdePkg/Include/IndustryStandard/Acpi62.h +++ b/MdePkg/Include/IndustryStandard/Acpi62.h @@ -1486,6 +1486,7 @@ typedef struct { #define EFI_ACPI_6_2_NFIT_NVDIMM_CONTROL_REGION_STRUCTURE_TYPE = 4=0D #define EFI_ACPI_6_2_NFIT_NVDIMM_BLOCK_DATA_WINDOW_REGION_STRUCTURE_TYPE = 5=0D #define EFI_ACPI_6_2_NFIT_FLUSH_HINT_ADDRESS_STRUCTURE_TYPE = 6=0D +#define EFI_ACPI_6_2_NFIT_PLATFORM_CAPABILITIES_STRUCTURE_TYPE = 7=0D =0D //=0D // Definition for NFIT Structure Header=0D @@ -1638,6 +1639,18 @@ typedef struct { // UINT64 FlushHintAddress[NumberOf= FlushHintAddresses];=0D } EFI_ACPI_6_2_NFIT_FLUSH_HINT_ADDRESS_STRUCTURE;=0D =0D +//=0D +// Definition for Platform Capabilities Structure=0D +//=0D +typedef struct {=0D + UINT16 Type;=0D + UINT16 Length;=0D + UINT8 HighestValidCapability;=0D + UINT8 Reserved_5[3];=0D + UINT32 Capabilities;=0D + UINT8 Reserved_12[4];=0D +} EFI_ACPI_6_2_NFIT_PLATFORM_CAPABILITIES_STRUCTURE;=0D +=0D ///=0D /// Secure DEVices Table (SDEV)=0D ///=0D diff --git a/MdePkg/Include/IndustryStandard/Acpi63.h b/MdePkg/Include/Indu= stryStandard/Acpi63.h index b1e9d5db5b..15a30d8808 100644 --- a/MdePkg/Include/IndustryStandard/Acpi63.h +++ b/MdePkg/Include/IndustryStandard/Acpi63.h @@ -1450,6 +1450,7 @@ typedef struct { #define EFI_ACPI_6_3_NFIT_NVDIMM_CONTROL_REGION_STRUCTURE_TYPE = 4=0D #define EFI_ACPI_6_3_NFIT_NVDIMM_BLOCK_DATA_WINDOW_REGION_STRUCTURE_TYPE = 5=0D #define EFI_ACPI_6_3_NFIT_FLUSH_HINT_ADDRESS_STRUCTURE_TYPE = 6=0D +#define EFI_ACPI_6_3_NFIT_PLATFORM_CAPABILITIES_STRUCTURE_TYPE = 7=0D =0D //=0D // Definition for NFIT Structure Header=0D @@ -1602,6 +1603,18 @@ typedef struct { // UINT64 FlushHintAddress[NumberOf= FlushHintAddresses];=0D } EFI_ACPI_6_3_NFIT_FLUSH_HINT_ADDRESS_STRUCTURE;=0D =0D +//=0D +// Definition for Platform Capabilities Structure=0D +//=0D +typedef struct {=0D + UINT16 Type;=0D + UINT16 Length;=0D + UINT8 HighestValidCapability;=0D + UINT8 Reserved_5[3];=0D + UINT32 Capabilities;=0D + UINT8 Reserved_12[4];=0D +} EFI_ACPI_6_3_NFIT_PLATFORM_CAPABILITIES_STRUCTURE;=0D +=0D ///=0D /// Secure DEVices Table (SDEV)=0D ///=0D diff --git a/MdePkg/Include/IndustryStandard/Acpi64.h b/MdePkg/Include/Indu= stryStandard/Acpi64.h index 232697f228..c1d8b14c44 100644 --- a/MdePkg/Include/IndustryStandard/Acpi64.h +++ b/MdePkg/Include/IndustryStandard/Acpi64.h @@ -1493,6 +1493,7 @@ typedef struct { #define EFI_ACPI_6_4_NFIT_NVDIMM_CONTROL_REGION_STRUCTURE_TYPE = 4=0D #define EFI_ACPI_6_4_NFIT_NVDIMM_BLOCK_DATA_WINDOW_REGION_STRUCTURE_TYPE = 5=0D #define EFI_ACPI_6_4_NFIT_FLUSH_HINT_ADDRESS_STRUCTURE_TYPE = 6=0D +#define EFI_ACPI_6_4_NFIT_PLATFORM_CAPABILITIES_STRUCTURE_TYPE = 7=0D =0D //=0D // Definition for NFIT Structure Header=0D @@ -1651,6 +1652,18 @@ typedef struct { // UINT64 FlushHintAddress[NumberOf= FlushHintAddresses];=0D } EFI_ACPI_6_4_NFIT_FLUSH_HINT_ADDRESS_STRUCTURE;=0D =0D +//=0D +// Definition for Platform Capabilities Structure=0D +//=0D +typedef struct {=0D + UINT16 Type;=0D + UINT16 Length;=0D + UINT8 HighestValidCapability;=0D + UINT8 Reserved_5[3];=0D + UINT32 Capabilities;=0D + UINT8 Reserved_12[4];=0D +} EFI_ACPI_6_4_NFIT_PLATFORM_CAPABILITIES_STRUCTURE;=0D +=0D ///=0D /// Secure DEVices Table (SDEV)=0D ///=0D --=20 2.27.0.windows.1