Yes. I will create PR for this patch. Thanks Liming 发件人: Christopher Jones 发送时间: 2021年11月8日 19:12 收件人: gaoliming ; Samer El-Haj-Mahmoud ; devel@edk2.groups.io 抄送: michael.d.kinney@intel.com; zhiguang.liu@intel.com; Sami Mujawar ; Ben Adderson ; Akanksha Jain ; Matteo Carlini ; nd 主题: Re: [edk2-devel] [PATCH v1 1/1] MdePkg: Fix ACPI memory aggregator/device type mismatch Hi, It looks like this patch has received the relevant approvals and is ready for merge. Could this patch please be merged in time for the edk2-stable202111 release. Thanks, Chris _____ From: gaoliming > Sent: Friday, October 8, 2021 3:09 AM To: Samer El-Haj-Mahmoud >; devel@edk2.groups.io >; Christopher Jones > Cc: michael.d.kinney@intel.com >; zhiguang. liu@intel.com >; Sami Mujawar >; Ben Adderson >; Akanksha Jain >; Matteo Carlini >; nd > Subject: 回复: [edk2-devel] [PATCH v1 1/1] MdePkg: Fix ACPI memory aggregator/device type mismatch Samer: Thanks for your information. I agree this change. Reviewed-by: Liming Gao > Thanks Liming > -----邮件原件----- > 发件人: Samer El-Haj-Mahmoud > > 发送时间: 2021年10月8日 9:45 > 收件人: devel@edk2.groups.io ; gaoliming@byosoft.com.cn ; Christopher > Jones > > 抄送: michael.d.kinney@intel.com ; zhiguang.liu@intel.com ; Sami Mujawar > >; Ben Adderson >; > Akanksha Jain >; Matteo Carlini > >; nd >; Samer El-Haj-Mahmoud > > > 主题: 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 > On Behalf Of > > gaoliming via groups.io > > Sent: Thursday, October 7, 2021 9:26 PM > > To: devel@edk2.groups.io ; Christopher Jones > > > > > Cc: michael.d.kinney@intel.com ; zhiguang.liu@intel.com ; Sami Mujawar > > >; Ben Adderson >; > > Akanksha Jain >; Matteo Carlini > > >; nd > > > 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 > 代表 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 > > > --- > > > 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") > > > > > > > > > > > > > > > > > > > > > > > > > > > > >