Samer:
Thanks for your information. I agree this change. Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
Thanks
Liming
> -----邮件原件-----
> 发件人: Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com>
> 发送时间: 2021年10月8日 9:45
> 收件人: devel@edk2.groups.io; gaoliming@byosoft.com.cn; Christopher
> Jones <Christopher.Jones@arm.com>
> 抄送: 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>; Samer El-Haj-Mahmoud
> <Samer.El-Haj-Mahmoud@arm.com>
> 主题: RE: [edk2-devel] [PATCH v1 1/1] MdePkg: Fix ACPI memory
> aggregator/device type mismatch
>
> 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")
> > >
> > >
> > >
> > >
> > >
> >
> >
> >
> >
> >
> >
> >