From: Jeff Fan Date: Tue, 7 Mar 2017 07:54:23 +0000 (+0800) Subject: UefiCpuPkg/UefiCpuPkg.dec: Add a set of CPU features PCDs X-Git-Tag: edk2-stable201903~4355 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=7eee4e1e3c184aa4831832ad73c45feecbcf3116;hp=f4c982bf095307fc598cf07f7b157831030b77f1 UefiCpuPkg/UefiCpuPkg.dec: Add a set of CPU features PCDs PcdCpuFeaturesSupport supports PcdsFixedAtBuild/PcdsPatchableInModule types and used to add/remove CPU feature from firmware during build time. PcdCpuFeaturesUserConfiguration supports all PCD types and used to configurate CPU features by platforms. PcdCpuFeaturesCapability supports PcdsDynamic PCD and used to indicate the CPU features capability on processors. PcdCpuFeaturesSetting supports PcdsDynamic PCD and used to indicate the current CPU features setting on processors. Cc: Feng Tian Cc: Michael Kinney Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan Reviewed-by: Feng Tian --- diff --git a/UefiCpuPkg/UefiCpuPkg.dec b/UefiCpuPkg/UefiCpuPkg.dec index c37b4d5f89..c4b43e2300 100644 --- a/UefiCpuPkg/UefiCpuPkg.dec +++ b/UefiCpuPkg/UefiCpuPkg.dec @@ -1,7 +1,7 @@ ## @file UefiCpuPkg.dec # This Package provides UEFI compatible CPU modules and libraries. # -# Copyright (c) 2007 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2007 - 2017, Intel Corporation. All rights reserved.
# # This program and the accompanying materials are licensed and made available under # the terms and conditions of the BSD License which accompanies this distribution. @@ -181,6 +181,10 @@ # @Prompt MSEG size. gUefiCpuPkgTokenSpaceGuid.PcdCpuMsegSize|0x200000|UINT32|0x32132112 + ## Specifies the supported CPU features bit in array + # @Prompt Supported CPU features + gUefiCpuPkgTokenSpaceGuid.PcdCpuFeaturesSupport|{0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}|VOID*|0x00000016 + [PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx] ## Specifies max supported number of Logical Processors. # @Prompt Configure max supported number of Logical Processors @@ -226,6 +230,10 @@ # @Prompt SMM CPU Synchronization Method. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmSyncMode|0x00|UINT8|0x60000014 + ## Specifies user's desired settings for enabling/disabling processor features. + # @Prompt User settings for enabling/disabling processor features. + gUefiCpuPkgTokenSpaceGuid.PcdCpuFeaturesUserConfiguration|{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}|VOID*|0x00000017 + [PcdsDynamic, PcdsDynamicEx] ## Contains the pointer to a CPU S3 data buffer of structure ACPI_CPU_DATA. # @Prompt The pointer to a CPU S3 data buffer. @@ -237,5 +245,15 @@ # @ValidList 0x80000001 | 0 gUefiCpuPkgTokenSpaceGuid.PcdCpuHotPlugDataAddress|0x0|UINT64|0x60000011 + ## Indicates processor feature capabilities, each bit corresponding to a specific feature. + # @Prompt Processor feature capabilities. + # @ValidList 0x80000001 | 0 + gUefiCpuPkgTokenSpaceGuid.PcdCpuFeaturesCapability|{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}|VOID*|0x00000018 + + ## Specifies actual settings for processor features, each bit corresponding to a specific feature. + # @Prompt Actual processor feature settings. + # @ValidList 0x80000001 | 0 + gUefiCpuPkgTokenSpaceGuid.PcdCpuFeaturesSetting|{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}|VOID*|0x00000019 + [UserExtensions.TianoCore."ExtraFiles"] UefiCpuPkgExtra.uni