]> git.proxmox.com Git - mirror_edk2.git/blob - UefiCpuPkg/UefiCpuPkg.dec
UefiCpuPkg: Add SecCore module and supporting library class and PCD
[mirror_edk2.git] / UefiCpuPkg / UefiCpuPkg.dec
1 ## @file UefiCpuPkg.dec
2 # This Package provides UEFI compatible CPU modules and libraries.
3 #
4 # Copyright (c) 2007 - 2015, Intel Corporation. All rights reserved.<BR>
5 #
6 # This program and the accompanying materials are licensed and made available under
7 # the terms and conditions of the BSD License which accompanies this distribution.
8 # The full text of the license may be found at
9 # http://opensource.org/licenses/bsd-license.php
10 #
11 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13 #
14 ##
15
16 [Defines]
17 DEC_SPECIFICATION = 0x00010005
18 PACKAGE_NAME = UefiCpuPkg
19 PACKAGE_UNI_FILE = UefiCpuPkg.uni
20 PACKAGE_GUID = 2171df9b-0d39-45aa-ac37-2de190010d23
21 PACKAGE_VERSION = 0.3
22
23 [Includes]
24 Include
25
26 [LibraryClasses]
27 ## @libraryclass Defines some routines that are generic for IA32 family CPU
28 ## to be UEFI specification compliant.
29 ##
30 UefiCpuLib|Include/Library/UefiCpuLib.h
31
32 [LibraryClasses.IA32, LibraryClasses.X64]
33 ## @libraryclass Provides functions to manage MTRR settings on IA32 and X64 CPUs.
34 ##
35 MtrrLib|Include/Library/MtrrLib.h
36
37 ## @libraryclass Provides functions to manage the Local APIC on IA32 and X64 CPUs.
38 ##
39 LocalApicLib|Include/Library/LocalApicLib.h
40
41 ## @libraryclass Provides platform specific initialization functions in the SEC phase.
42 ##
43 PlatformSecLib|Include/Library/PlatformSecLib.h
44
45
46 [Guids]
47 gUefiCpuPkgTokenSpaceGuid = { 0xac05bf33, 0x995a, 0x4ed4, { 0xaa, 0xb8, 0xef, 0x7a, 0xe8, 0xf, 0x5c, 0xb0 }}
48
49 #
50 # [Error.gUefiCpuPkgTokenSpaceGuid]
51 # 0x80000001 | Invalid value provided.
52 #
53
54 [PcdsFixedAtBuild, PcdsPatchableInModule]
55 ## This value is the CPU Local Apic base address, which aligns the address on a 4-KByte boundary.
56 # @Prompt Configure base address of CPU Local Apic
57 # @Expression 0x80000001 | (gUefiCpuPkgTokenSpaceGuid.PcdCpuLocalApicBaseAddress & 0xfff) == 0
58 gUefiCpuPkgTokenSpaceGuid.PcdCpuLocalApicBaseAddress|0xfee00000|UINT32|0x00000001
59 ## Specifies delay value in microseconds after sending out an INIT IPI.
60 # @Prompt Configure delay value after send an INIT IPI
61 gUefiCpuPkgTokenSpaceGuid.PcdCpuInitIpiDelayInMicroSeconds|10000|UINT32|0x30000002
62 ## Specifies max supported number of Logical Processors.
63 # @Prompt Configure max supported number of Logical Processorss
64 gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber|64|UINT32|0x00000002
65 ## This value specifies the Application Processor (AP) stack size, used for Mp Service, which must
66 ## aligns the address on a 4-KByte boundary.
67 # @Prompt Configure stack size for Application Processor (AP)
68 gUefiCpuPkgTokenSpaceGuid.PcdCpuApStackSize|0x8000|UINT32|0x00000003
69
70 ## Specifies stack size in the temporary RAM. 0 means half of TemporaryRamSize.
71 # @Prompt Stack size in the temporary RAM.
72 gUefiCpuPkgTokenSpaceGuid.PcdPeiTemporaryRamStackSize|0|UINT32|0x10001003
73
74 [PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]
75 ## Specifies timeout value in microseconds for the BSP to detect all APs for the first time.
76 # @Prompt Timeout for the BSP to detect all APs for the first time.
77 gUefiCpuPkgTokenSpaceGuid.PcdCpuApInitTimeOutInMicroSeconds|50000|UINT32|0x00000004
78 ## Specifies the base address of the first microcode Patch in the microcode Region.
79 # @Prompt Microcode Region base address.
80 gUefiCpuPkgTokenSpaceGuid.PcdCpuMicrocodePatchAddress|0x0|UINT64|0x00000005
81 ## Specifies the size of the microcode Region.
82 # @Prompt Microcode Region size.
83 gUefiCpuPkgTokenSpaceGuid.PcdCpuMicrocodePatchRegionSize|0x0|UINT64|0x00000006
84
85 [UserExtensions.TianoCore."ExtraFiles"]
86 UefiCpuPkgExtra.uni