public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Samer El-Haj-Mahmoud" <samer.el-haj-mahmoud@arm.com>
To: "devel@edk2.groups.io" <devel@edk2.groups.io>,
	"gaoliming@byosoft.com.cn" <gaoliming@byosoft.com.cn>,
	Christopher Jones <Christopher.Jones@arm.com>
Cc: "michael.d.kinney@intel.com" <michael.d.kinney@intel.com>,
	"zhiguang.liu@intel.com" <zhiguang.liu@intel.com>,
	Sami Mujawar <Sami.Mujawar@arm.com>,
	Ben Adderson <Ben.Adderson@arm.com>,
	Akanksha Jain <Akanksha.Jain2@arm.com>,
	Matteo Carlini <Matteo.Carlini@arm.com>, nd <nd@arm.com>,
	Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com>
Subject: Re: [edk2-devel] [PATCH v1 1/1] MdePkg: Fix ACPI memory aggregator/device type mismatch
Date: Fri, 8 Oct 2021 01:45:29 +0000	[thread overview]
Message-ID: <AM5PR0801MB171567913859B30342B30E7B90B29@AM5PR0801MB1715.eurprd08.prod.outlook.com> (raw)
In-Reply-To: <005e01d7bbe3$70b63a80$5222af80$@byosoft.com.cn>

We did investigate this in the BZ, and the conclusion was it is safer to update the code to match the spec. The only OS implementation we have seen so far is in Linux, and it uses the spec defined values (although for limited usage). See https://bugzilla.tianocore.org/show_bug.cgi?id=3579




> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of
> gaoliming via groups.io
> Sent: Thursday, October 7, 2021 9:26 PM
> To: devel@edk2.groups.io; Christopher Jones
> <Christopher.Jones@arm.com>
> Cc: michael.d.kinney@intel.com; zhiguang.liu@intel.com; Sami Mujawar
> <Sami.Mujawar@arm.com>; Ben Adderson <Ben.Adderson@arm.com>;
> Akanksha Jain <Akanksha.Jain2@arm.com>; Matteo Carlini
> <Matteo.Carlini@arm.com>; nd <nd@arm.com>
> Subject: 回复: [edk2-devel] [PATCH v1 1/1] MdePkg: Fix ACPI memory
> aggregator/device type mismatch
> 
> Jones:
>   Do you know what impact will be introduced by this change?
> 
> Thanks
> Liming
> > -----邮件原件-----
> > 发件人: devel@edk2.groups.io <devel@edk2.groups.io> 代表 Chris Jones
> > 发送时间: 2021年10月6日 18:12
> > 收件人: devel@edk2.groups.io
> > 抄送: michael.d.kinney@intel.com; gaoliming@byosoft.com.cn;
> > zhiguang.liu@intel.com; Sami.Mujawar@arm.com;
> Ben.Adderson@arm.com;
> > Akanksha.Jain2@arm.com; Matteo.Carlini@arm.com; nd@arm.com
> > 主题: [edk2-devel] [PATCH v1 1/1] MdePkg: Fix ACPI memory
> > aggregator/device type mismatch
> >
> > Bugzilla: 3578 (https://bugzilla.tianocore.org/show_bug.cgi?id=3579)
> >
> > Since the Common Memory Device (formerly Memory Aggregator Device)
> > was
> > introduced in ACPI 5.0, the edk2 type values have not matched the
> > values defined in the ACPI specification.
> >
> > Fix this discrepancy by aligning the code to match the specification.
> >
> > Signed-off-by: Chris Jones <christopher.jones@arm.com>
> > ---
> >  MdePkg/Include/IndustryStandard/Acpi50.h | 6 +++---
> >  MdePkg/Include/IndustryStandard/Acpi51.h | 6 +++---
> >  MdePkg/Include/IndustryStandard/Acpi60.h | 6 +++---
> >  MdePkg/Include/IndustryStandard/Acpi61.h | 6 +++---
> >  MdePkg/Include/IndustryStandard/Acpi62.h | 6 +++---
> >  MdePkg/Include/IndustryStandard/Acpi63.h | 6 +++---
> >  MdePkg/Include/IndustryStandard/Acpi64.h | 6 +++---
> >  7 files changed, 21 insertions(+), 21 deletions(-)
> >
> > diff --git a/MdePkg/Include/IndustryStandard/Acpi50.h
> > b/MdePkg/Include/IndustryStandard/Acpi50.h
> > index
> > 31a47e6a2c4276d5b1ad7b834af84844090b64c5..83d787c7650cf649fe3d2e1
> > 2e7983bae86a2a114 100644
> > --- a/MdePkg/Include/IndustryStandard/Acpi50.h
> > +++ b/MdePkg/Include/IndustryStandard/Acpi50.h
> > @@ -996,9 +996,9 @@ typedef struct {
> >  ///
> >  /// Memory Aggregator Device Type
> >  ///
> > -#define
> > EFI_ACPI_5_0_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_SOCKET
> > 0x1
> > -#define
> >
> EFI_ACPI_5_0_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_MEMORY_C
> > ONTROLLER 0x2
> > -#define
> > EFI_ACPI_5_0_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_DIMM
> > 0x3
> > +#define
> > EFI_ACPI_5_0_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_SOCKET
> > 0x0
> > +#define
> >
> EFI_ACPI_5_0_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_MEMORY_C
> > ONTROLLER 0x1
> > +#define
> > EFI_ACPI_5_0_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_DIMM
> > 0x2
> >
> >  ///
> >  /// Socket Memory Aggregator Device Structure.
> > diff --git a/MdePkg/Include/IndustryStandard/Acpi51.h
> > b/MdePkg/Include/IndustryStandard/Acpi51.h
> > index
> > fc28ffa18fc6a22e52fda88fade6ad80b2817cc3..5fbf7c99f1f7d6ca9109f198bd
> > 3f25f12bd47961 100644
> > --- a/MdePkg/Include/IndustryStandard/Acpi51.h
> > +++ b/MdePkg/Include/IndustryStandard/Acpi51.h
> > @@ -951,9 +951,9 @@ typedef struct {
> >  ///
> >  /// Memory Aggregator Device Type
> >  ///
> > -#define
> > EFI_ACPI_5_1_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_SOCKET
> > 0x1
> > -#define
> >
> EFI_ACPI_5_1_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_MEMORY_C
> > ONTROLLER 0x2
> > -#define
> > EFI_ACPI_5_1_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_DIMM
> > 0x3
> > +#define
> > EFI_ACPI_5_1_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_SOCKET
> > 0x0
> > +#define
> >
> EFI_ACPI_5_1_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_MEMORY_C
> > ONTROLLER 0x1
> > +#define
> > EFI_ACPI_5_1_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_DIMM
> > 0x2
> >
> >  ///
> >  /// Socket Memory Aggregator Device Structure.
> > diff --git a/MdePkg/Include/IndustryStandard/Acpi60.h
> > b/MdePkg/Include/IndustryStandard/Acpi60.h
> > index
> > 5dcd73b6f1ec4bccc7fdae7d56c2963ab58764f9..eba4248e1d5733d21973f0d
> > ac2286e02238a0aae 100644
> > --- a/MdePkg/Include/IndustryStandard/Acpi60.h
> > +++ b/MdePkg/Include/IndustryStandard/Acpi60.h
> > @@ -966,9 +966,9 @@ typedef struct {
> >  ///
> >  /// Memory Aggregator Device Type
> >  ///
> > -#define
> > EFI_ACPI_6_0_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_SOCKET
> > 0x1
> > -#define
> >
> EFI_ACPI_6_0_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_MEMORY_C
> > ONTROLLER 0x2
> > -#define
> > EFI_ACPI_6_0_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_DIMM
> > 0x3
> > +#define
> > EFI_ACPI_6_0_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_SOCKET
> > 0x0
> > +#define
> >
> EFI_ACPI_6_0_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_MEMORY_C
> > ONTROLLER 0x1
> > +#define
> > EFI_ACPI_6_0_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_DIMM
> > 0x2
> >
> >  ///
> >  /// Socket Memory Aggregator Device Structure.
> > diff --git a/MdePkg/Include/IndustryStandard/Acpi61.h
> > b/MdePkg/Include/IndustryStandard/Acpi61.h
> > index
> > 8626833a794dfb4a6f19d459d5214c6caefdbbee..7a776020baa8f3ee7b6f05fe
> > e336225ab6589ce0 100644
> > --- a/MdePkg/Include/IndustryStandard/Acpi61.h
> > +++ b/MdePkg/Include/IndustryStandard/Acpi61.h
> > @@ -966,9 +966,9 @@ typedef struct {
> >  ///
> >  /// Memory Aggregator Device Type
> >  ///
> > -#define
> > EFI_ACPI_6_1_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_SOCKET
> > 0x1
> > -#define
> >
> EFI_ACPI_6_1_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_MEMORY_C
> > ONTROLLER 0x2
> > -#define
> > EFI_ACPI_6_1_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_DIMM
> > 0x3
> > +#define
> > EFI_ACPI_6_1_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_SOCKET
> > 0x0
> > +#define
> >
> EFI_ACPI_6_1_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_MEMORY_C
> > ONTROLLER 0x1
> > +#define
> > EFI_ACPI_6_1_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_DIMM
> > 0x2
> >
> >  ///
> >  /// Socket Memory Aggregator Device Structure.
> > diff --git a/MdePkg/Include/IndustryStandard/Acpi62.h
> > b/MdePkg/Include/IndustryStandard/Acpi62.h
> > index
> > 1b2704e98e3703a4405075247432ec842e45021b..33a0a0f21959df8b64803e
> > 972ab19f0c0ab1619e 100644
> > --- a/MdePkg/Include/IndustryStandard/Acpi62.h
> > +++ b/MdePkg/Include/IndustryStandard/Acpi62.h
> > @@ -1078,9 +1078,9 @@ typedef struct {
> >  ///
> >  /// Memory Aggregator Device Type
> >  ///
> > -#define
> > EFI_ACPI_6_2_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_SOCKET
> > 0x1
> > -#define
> >
> EFI_ACPI_6_2_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_MEMORY_C
> > ONTROLLER 0x2
> > -#define
> > EFI_ACPI_6_2_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_DIMM
> > 0x3
> > +#define
> > EFI_ACPI_6_2_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_SOCKET
> > 0x0
> > +#define
> >
> EFI_ACPI_6_2_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_MEMORY_C
> > ONTROLLER 0x1
> > +#define
> > EFI_ACPI_6_2_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_DIMM
> > 0x2
> >
> >  ///
> >  /// Socket Memory Aggregator Device Structure.
> > diff --git a/MdePkg/Include/IndustryStandard/Acpi63.h
> > b/MdePkg/Include/IndustryStandard/Acpi63.h
> > index
> > b281b30155e90eba5169dc39bde9a3379e3b7005..3b1426af27ea4ebada1a1
> > 2e99ce958bb288ad931 100644
> > --- a/MdePkg/Include/IndustryStandard/Acpi63.h
> > +++ b/MdePkg/Include/IndustryStandard/Acpi63.h
> > @@ -1040,9 +1040,9 @@ typedef struct {
> >  ///
> >  /// Memory Aggregator Device Type
> >  ///
> > -#define
> > EFI_ACPI_6_3_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_SOCKET
> > 0x1
> > -#define
> >
> EFI_ACPI_6_3_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_MEMORY_C
> > ONTROLLER 0x2
> > -#define
> > EFI_ACPI_6_3_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_DIMM
> > 0x3
> > +#define
> > EFI_ACPI_6_3_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_SOCKET
> > 0x0
> > +#define
> >
> EFI_ACPI_6_3_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_MEMORY_C
> > ONTROLLER 0x1
> > +#define
> > EFI_ACPI_6_3_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_DIMM
> > 0x2
> >
> >  ///
> >  /// Socket Memory Aggregator Device Structure.
> > diff --git a/MdePkg/Include/IndustryStandard/Acpi64.h
> > b/MdePkg/Include/IndustryStandard/Acpi64.h
> > index
> > 3a91302f8c0e71d4951d27aac35322073219c836..8346d83f1249045497b602
> > 907b94fbb2b495cd56 100644
> > --- a/MdePkg/Include/IndustryStandard/Acpi64.h
> > +++ b/MdePkg/Include/IndustryStandard/Acpi64.h
> > @@ -1075,9 +1075,9 @@ typedef struct {
> >  ///
> >  /// Memory Device Type.
> >  ///
> > -#define EFI_ACPI_6_4_PMTT_MEMORY_DEVICE_TYPE_SOCKET
> > 0x1
> > -#define
> > EFI_ACPI_6_4_PMTT_MEMORY_DEVICE_TYPE_MEMORY_CONTROLLER
> > 0x2
> > -#define EFI_ACPI_6_4_PMTT_MEMORY_DEVICE_TYPE_DIMM
> > 0x3
> > +#define EFI_ACPI_6_4_PMTT_MEMORY_DEVICE_TYPE_SOCKET
> > 0x0
> > +#define
> > EFI_ACPI_6_4_PMTT_MEMORY_DEVICE_TYPE_MEMORY_CONTROLLER
> > 0x1
> > +#define EFI_ACPI_6_4_PMTT_MEMORY_DEVICE_TYPE_DIMM
> > 0x2
> >  #define
> > EFI_ACPI_6_4_PMTT_MEMORY_DEVICE_TYPE_VENDOR_SPECIFIC_TYPE
> > 0xFF
> >
> >  ///
> > --
> > Guid("CE165669-3EF3-493F-B85D-6190EE5B9759")
> >
> >
> >
> >
> >
> 
> 
> 
> 
> 
> 
> 


  reply	other threads:[~2021-10-08  1:45 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-06 10:11 [PATCH v1 1/1] MdePkg: Fix ACPI memory aggregator/device type mismatch Chris Jones
2021-10-08  1:25 ` 回复: [edk2-devel] " gaoliming
2021-10-08  1:45   ` Samer El-Haj-Mahmoud [this message]
2021-10-08  2:09     ` gaoliming
2021-11-08 11:12       ` Chris Jones
2021-11-09  1:13         ` 回复: " gaoliming

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=AM5PR0801MB171567913859B30342B30E7B90B29@AM5PR0801MB1715.eurprd08.prod.outlook.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