diff options
author | Liu, Zhiguang <Zhiguang.Liu@intel.com> | 2023-03-07 14:31:36 +0800 |
---|---|---|
committer | mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> | 2023-03-07 10:42:38 +0000 |
commit | aa1cd447b346e8cc8141df2fe2d321b032c08acb (patch) | |
tree | 1b3472e72042717c0de1cd21a44a7a4785352842 | |
parent | f335d91a3bfe47de702af564eb3661ab8906d1be (diff) | |
download | edk2-aa1cd447b346e8cc8141df2fe2d321b032c08acb.tar.gz |
UefiCpuPkg: Calculate DisplayFamily correctly
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4348
Per SDM:
DisplayFamily = Extended_Family_ID + Family_ID.
DisplayModelID = (Extended_Model_ID << 4) + Family_ID.
Correct the related code.
Cc: Eric Dong <eric.dong@intel.com>
Reviewed-by: Ray Ni <ray.ni@intel.com>
Cc: Rahul Kumar <rahul1.kumar@intel.com>
Acked-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
Cc: Mike Maslenkin <mike.maslenkin@gmail.com>
Signed-off-by: Zhiguang Liu <zhiguang.liu@intel.com>
-rw-r--r-- | UefiCpuPkg/Application/Cpuid/Cpuid.c | 6 | ||||
-rw-r--r-- | UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/UefiCpuPkg/Application/Cpuid/Cpuid.c b/UefiCpuPkg/Application/Cpuid/Cpuid.c index 372c6ef87d..172476a275 100644 --- a/UefiCpuPkg/Application/Cpuid/Cpuid.c +++ b/UefiCpuPkg/Application/Cpuid/Cpuid.c @@ -1,7 +1,7 @@ /** @file
UEFI Application to display CPUID leaf information.
- Copyright (c) 2016 - 2019, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2016 - 2023, Intel Corporation. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
@@ -217,12 +217,12 @@ CpuidVersionInfo ( DisplayFamily = Eax.Bits.FamilyId;
if (Eax.Bits.FamilyId == 0x0F) {
- DisplayFamily |= (Eax.Bits.ExtendedFamilyId << 4);
+ DisplayFamily += Eax.Bits.ExtendedFamilyId;
}
DisplayModel = Eax.Bits.Model;
if ((Eax.Bits.FamilyId == 0x06) || (Eax.Bits.FamilyId == 0x0f)) {
- DisplayModel |= (Eax.Bits.ExtendedModelId << 4);
+ DisplayModel += (Eax.Bits.ExtendedModelId << 4);
}
Print (L" Family = %x Model = %x Stepping = %x\n", DisplayFamily, DisplayModel, Eax.Bits.SteppingId);
diff --git a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c index a8e4f920fc..552fdab417 100644 --- a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c +++ b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c @@ -1,7 +1,7 @@ /** @file
CPU Features Initialize functions.
- Copyright (c) 2017 - 2021, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2017 - 2023, Intel Corporation. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
@@ -67,12 +67,12 @@ FillProcessorInfo ( DisplayedFamily = Eax.Bits.FamilyId;
if (Eax.Bits.FamilyId == 0x0F) {
- DisplayedFamily |= (Eax.Bits.ExtendedFamilyId << 4);
+ DisplayedFamily += Eax.Bits.ExtendedFamilyId;
}
DisplayedModel = Eax.Bits.Model;
if ((Eax.Bits.FamilyId == 0x06) || (Eax.Bits.FamilyId == 0x0f)) {
- DisplayedModel |= (Eax.Bits.ExtendedModelId << 4);
+ DisplayedModel += (Eax.Bits.ExtendedModelId << 4);
}
CpuInfo->DisplayFamily = DisplayedFamily;
|