summaryrefslogtreecommitdiff
path: root/UefiCpuPkg/UefiCpuPkg.dec
blob: 202e71990ffbc19038b078a692061ef73fe24deb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
## @file  UefiCpuPkg.dec
# This Package provides UEFI compatible CPU modules and libraries.
#
# Copyright (c) 2007 - 2015, Intel Corporation. All rights reserved.<BR>
#
# This program and the accompanying materials are licensed and made available under
# the terms and conditions of the BSD License which accompanies this distribution.
# The full text of the license may be found at
# http://opensource.org/licenses/bsd-license.php
#
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#
##

[Defines]
  DEC_SPECIFICATION              = 0x00010005
  PACKAGE_NAME                   = UefiCpuPkg
  PACKAGE_UNI_FILE               = UefiCpuPkg.uni
  PACKAGE_GUID                   = 2171df9b-0d39-45aa-ac37-2de190010d23
  PACKAGE_VERSION                = 0.3

[Includes]
  Include

[LibraryClasses]
  ##  @libraryclass  Defines some routines that are generic for IA32 family CPU
  ##                 to be UEFI specification compliant.
  ##
  UefiCpuLib|Include/Library/UefiCpuLib.h

[LibraryClasses.IA32, LibraryClasses.X64]
  ##  @libraryclass  Provides functions to manage MTRR settings on IA32 and X64 CPUs.
  ##
  MtrrLib|Include/Library/MtrrLib.h

  ##  @libraryclass  Provides functions to manage the Local APIC on IA32 and X64 CPUs.
  ##
  LocalApicLib|Include/Library/LocalApicLib.h
  
[Guids]
  gUefiCpuPkgTokenSpaceGuid      = { 0xac05bf33, 0x995a, 0x4ed4, { 0xaa, 0xb8, 0xef, 0x7a, 0xe8, 0xf, 0x5c, 0xb0 }}

#
# [Error.gUefiCpuPkgTokenSpaceGuid]
#   0x80000001 | Invalid value provided.
#

[PcdsFixedAtBuild, PcdsPatchableInModule]
  ## This value is the CPU Local Apic base address, which aligns the address on a 4-KByte boundary.
  # @Prompt Configure base address of CPU Local Apic
  # @Expression  0x80000001 | (gUefiCpuPkgTokenSpaceGuid.PcdCpuLocalApicBaseAddress & 0xfff) == 0
  gUefiCpuPkgTokenSpaceGuid.PcdCpuLocalApicBaseAddress|0xfee00000|UINT32|0x00000001
  ## Specifies delay value in microseconds after sending out an INIT IPI.
  # @Prompt Configure delay value after send an INIT IPI
  gUefiCpuPkgTokenSpaceGuid.PcdCpuInitIpiDelayInMicroSeconds|10000|UINT32|0x30000002
  ## Specifies max supported number of Logical Processors.
  # @Prompt Configure max supported number of Logical Processorss
  gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber|64|UINT32|0x00000002
  ## This value specifies the Application Processor (AP) stack size, used for Mp Service, which must
  ## aligns the address on a 4-KByte boundary.
  # @Prompt Configure stack size for Application Processor (AP)
  gUefiCpuPkgTokenSpaceGuid.PcdCpuApStackSize|0x8000|UINT32|0x00000003

[PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]
  ## Specifies timeout value in microseconds for the BSP to detect all APs for the first time.
  # @Prompt Timeout for the BSP to detect all APs for the first time.
  gUefiCpuPkgTokenSpaceGuid.PcdCpuApInitTimeOutInMicroSeconds|50000|UINT32|0x00000004
  ## Specifies the base address of the first microcode Patch in the microcode Region.
  # @Prompt Microcode Region base address.
  gUefiCpuPkgTokenSpaceGuid.PcdCpuMicrocodePatchAddress|0x0|UINT64|0x00000005
  ## Specifies the size of the microcode Region.
  # @Prompt Microcode Region size.
  gUefiCpuPkgTokenSpaceGuid.PcdCpuMicrocodePatchRegionSize|0x0|UINT64|0x00000006

[UserExtensions.TianoCore."ExtraFiles"]
  UefiCpuPkgExtra.uni