summaryrefslogtreecommitdiffstats
path: root/StandaloneMmPkg/StandaloneMmPkg.dec
blob: 5ac57c1013c5b335b4ca700e70cd2198e5f2e1a7 (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
## @file
# This package is a platform package that provide platform module/library
# required by Standalone MM platform.
#
# Copyright (c) 2016-2021, Arm Ltd. All rights reserved.<BR>
# Copyright (c) 2024, Intel Corporation. All rights reserved.<BR>
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
#

[Defines]
  DEC_SPECIFICATION              = 0x0001001A
  PACKAGE_NAME                   = StandaloneMmPkg
  PACKAGE_GUID                   = 2AE82968-7769-4A85-A5BC-A0954CE54A5C
  PACKAGE_VERSION                = 1.0

[Includes]
  Include

[LibraryClasses]

  ##  @libraryclass  Defines a set of helper methods.
  FvLib|Include/Library/FvLib.h

  ##  @libraryclass  Defines a set of interfaces for the MM core entrypoint.
  StandaloneMmCoreEntryPoint|Include/Library/StandaloneMmCoreEntryPoint.h

  ##  @libraryclass  Defines a set of interfaces that provides services for
  ##                 MM Memory Operation.
  MemLib|Include/Library/StandaloneMmMemLib.h

[LibraryClasses.X64.PEIM]
  MmPlatformHobProducerLib|Include/Library/MmPlatformHobProducerLib.h

[LibraryClasses.AArch64, LibraryClasses.ARM]
  ##  @libraryclass  Defines a set of interfaces for the MM core entrypoint for
  ##                 AArch64 and ARM.
  StandaloneMmCoreEntryPoint|Include/Library/Arm/StandaloneMmCoreEntryPoint.h

[Guids]
  gStandaloneMmPkgTokenSpaceGuid           = { 0x18fe7632, 0xf5c8, 0x4e63, { 0x8d, 0xe8, 0x17, 0xa5, 0x5c, 0x59, 0x13, 0xbd }}
  gMpInformationHobGuid                    = { 0xba33f15d, 0x4000, 0x45c1, { 0x8e, 0x88, 0xf9, 0x16, 0x92, 0xd4, 0x57, 0xe3 }}
  gMmFvDispatchGuid                        = { 0xb65694cc, 0x09e3, 0x4c3b, { 0xb5, 0xcd, 0x05, 0xf4, 0x4d, 0x3c, 0xdb, 0xff }}

  ## Include/Guid/MmramMemoryReserve.h
  gEfiMmPeiMmramMemoryReserveGuid          = { 0x0703f912, 0xbf8d, 0x4e2a, { 0xbe, 0x07, 0xab, 0x27, 0x25, 0x25, 0xc5, 0x92 }}

  gEfiStandaloneMmNonSecureBufferGuid      = { 0xf00497e3, 0xbfa2, 0x41a1, { 0x9d, 0x29, 0x54, 0xc2, 0xe9, 0x37, 0x21, 0xc5 }}
  gEfiMmCpuDriverEpDescriptorGuid          = { 0x6ecbd5a1, 0xc0f8, 0x4702, { 0x83, 0x01, 0x4f, 0xc2, 0xc5, 0x47, 0x0a, 0x51 }}

  gEventMmDispatchGuid                     = { 0x7e6efffa, 0x69b4, 0x4c1b, { 0xa4, 0xc7, 0xaf, 0xf9, 0xc9, 0x24, 0x4f, 0xee }}

[PcdsFixedAtBuild, PcdsPatchableInModule]
  ## Maximum permitted encapsulation levels of sections in a firmware volume,
  #  in the MM phase. Minimum value is 1. Sections nested more deeply are rejected.
  # @Prompt Maximum permitted FwVol section nesting depth (exclusive) in MM.
  gStandaloneMmPkgTokenSpaceGuid.PcdFwVolMmMaxEncapsulationDepth|0x10|UINT32|0x00000001

[PcdsFeatureFlag]
  ## Indicates if restart MM Dispatcher once MM Entry Point is registered.<BR><BR>
  #   TRUE  - Restart MM Dispatcher once MM Entry Point is registered.<BR>
  #   FALSE - Do not restart MM Dispatcher once MM Entry Point is registered.<BR>
  # @Prompt Restart MM Dispatcher once MM Entry Point is registered.
  gStandaloneMmPkgTokenSpaceGuid.PcdRestartMmDispatcherOnceMmEntryRegistered|FALSE|BOOLEAN|0x00000002

[PcdsFeatureFlag.X64]
  ## Indicates if restart MM Dispatcher once MM Entry Point is registered.<BR><BR>
  #   TRUE  - Restart MM Dispatcher once MM Entry Point is registered.<BR>
  #   FALSE - Do not restart MM Dispatcher once MM Entry Point is registered.<BR>
  # @Prompt Restart MM Dispatcher once MM Entry Point is registered.
  gStandaloneMmPkgTokenSpaceGuid.PcdRestartMmDispatcherOnceMmEntryRegistered|TRUE|BOOLEAN|0x00000002