]> git.proxmox.com Git - mirror_edk2.git/blame - PrmPkg/PrmPkg.dec
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / PrmPkg / PrmPkg.dec
CommitLineData
d2998af2
MK
1## @file PrmPkg.dec\r
2# This package provides support for the Platform Runtime Mechanism (PRM).\r
3#\r
4# The following key elements of PRM are maintained in this package:\r
5#\r
6# 1. PRM interfaces - Comprised of interfaces shared with the operating system such as ACPI table structures\r
7# in addition to internal firmware interfaces such as protocols and library interfaces.\r
8#\r
9# 2. PRM generic drivers - EDK II drivers that implement generic functionality such that a platform can quickly\r
10# and reliably adopt PRM.\r
11#\r
12# 3. PRM module - An independently updatable PE/COFF binary that conforms to the unique requirements of a PRM module.\r
13# PRM modules expose functions for operating system invocation referred to as PRM handlers.\r
14#\r
15# 4. PRM handler - A function in a PRM module. The function is identified through PRM interfaces in the OS by a GUID.\r
16#\r
17# Copyright (c) Microsoft Corporation<BR>\r
18## SPDX-License-Identifier: BSD-2-Clause-Patent\r
19##\r
20\r
21[Defines]\r
22 DEC_SPECIFICATION = 0x00010005\r
23 PACKAGE_NAME = PrmPkg\r
24 PACKAGE_UNI_FILE = PrmPkg.uni\r
25 PACKAGE_GUID = 3D22F66E-9090-46CE-B260-1836070AFA5E\r
26 PACKAGE_VERSION = 0.1\r
27\r
28[Includes]\r
29 Include\r
30\r
31[Guids]\r
32 gPrmPkgTokenSpaceGuid = { 0x46f56acc, 0x600b, 0x450f, { 0xa5, 0x9c, 0x3a, 0x1a, 0x4a, 0xd4, 0x35, 0x3e }}\r
4348c72a 33 gPrmHiiGuid = { 0xee4cd885, 0xd104, 0x4056, { 0x84, 0xba, 0x46, 0x18, 0x82, 0xa7, 0x2a, 0x18 }}\r
d2998af2
MK
34\r
35[LibraryClasses]\r
36 ## @libraryclass Provides a general abstraction for PRM context buffer management\r
37 #\r
38 PrmContextBufferLib|Include/Library/PrmContextBufferLib.h\r
39\r
6b7dde7c
MK
40 ## @libraryclass Provides functionality to discover PRM modules installed by platform firmware\r
41 #\r
42 PrmModuleDiscoveryLib|Include/Library/PrmModuleDiscoveryLib.h\r
43\r
44 ## @libraryclass Provides additional PE/COFF functionality needed to support the Platform Runtime Mechanism (PRM) loader driver.\r
45 #\r
46 PrmPeCoffLib|Include/Library/PrmPeCoffLib.h\r
47\r
d2998af2
MK
48[Protocols]\r
49 ## PRM Configuration Protocol\r
50 #\r
51 gPrmConfigProtocolGuid = { 0x4e5b4fea, 0x936a, 0x45bc, { 0xac, 0x6a, 0x2f, 0x8f, 0x14, 0xa6, 0xc2, 0x9e }}\r
52\r
53[PcdsFixedAtBuild]\r
54 ## Flash base address of a PRM firmware volume\r
55 gPrmPkgTokenSpaceGuid.PcdFlashFvPrmBase|0x00000000|UINT32|0x00000001\r
56\r
57 ## Size in bytes of a PRM firmware volume\r
58 gPrmPkgTokenSpaceGuid.PcdFlashFvPrmSize|0x00000000|UINT32|0x00000002\r
4348c72a
MK
59\r
60 ## Print PRM handler execution time in PrmInfo\r
61 #\r
62 # Provides an option to disable usage of a timer library to record PRM handler\r
63 # execution time. In most cases, the platform should provide a valid TimerLib\r
64 # instance that can be used when the application is built with that package to\r
65 # report PRM handler execution time in the application. If such a TimerLib\r
66 # instance is not available, set this PCD to FALSE in the package DSC file.\r
67 gPrmPkgTokenSpaceGuid.PcdPrmInfoPrintHandlerExecutionTime|TRUE|BOOLEAN|0x00000003\r