Files
system76-edk2/UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf
Dun Tan bc19f50c70 UefiCpuPkg/S3Resume2Pei: prepare MpService2Ppi in S3Resume
Prepare MpService2Ppi in S3Resume when PEI and SMM env run
in the same execution mode. Then smm s3 code can use Mp
Service to wakeup AP instead of only sending InitSipiSipi.

Signed-off-by: Dun Tan <dun.tan@intel.com>
Cc: Eric Dong <eric.dong@intel.com>
Reviewed-by: Ray Ni <ray.ni@intel.com>
Cc: Rahul Kumar <rahul1.kumar@intel.com>
2023-09-08 06:19:34 +00:00

103 lines
3.1 KiB
INI

## @file
# S3 Resume Module installs EFI_PEI_S3_RESUME2_PPI.
#
# This module works with StandAloneBootScriptExecutor to S3 resume to OS.
# This module will excute the boot script saved during last boot and after that,
# control is passed to OS waking up handler.
#
# Copyright (c) 2010 - 2023, Intel Corporation. All rights reserved.<BR>
# Copyright (c) 2017, AMD Incorporated. All rights reserved.<BR>
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
##
[Defines]
INF_VERSION = 0x00010005
BASE_NAME = S3Resume2Pei
MODULE_UNI_FILE = S3Resume2Pei.uni
FILE_GUID = 89E549B0-7CFE-449d-9BA3-10D8B2312D71
MODULE_TYPE = PEIM
VERSION_STRING = 1.0
ENTRY_POINT = PeimS3ResumeEntryPoint
#
# The following information is for reference only and not required by the build tools.
#
# VALID_ARCHITECTURES = IA32 X64
#
#
# This module is not always workable in IA32 and X64 mode. It has below result:
# when it works with SMM mode:
# ===============================
# SMM:used SMM:unused
# PEI:IA32 works works
# PEI:X64 fails works
# ===============================
#
[Sources]
S3Resume.c
[Sources.IA32]
Ia32/AsmFuncs.nasm
[Sources.X64]
X64/AsmFuncs.nasm
[Packages]
MdePkg/MdePkg.dec
MdeModulePkg/MdeModulePkg.dec
UefiCpuPkg/UefiCpuPkg.dec
[LibraryClasses]
PeiServicesTablePointerLib
PerformanceLib
HobLib
PeiServicesLib
PeimEntryPoint
BaseLib
DebugLib
PcdLib
IoLib
BaseMemoryLib
MemoryAllocationLib
DebugAgentLib
LocalApicLib
ReportStatusCodeLib
LockBoxLib
[Guids]
gEfiBootScriptExecutorVariableGuid ## SOMETIMES_CONSUMES ## UNDEFINED # LockBox
gEfiBootScriptExecutorContextGuid ## SOMETIMES_CONSUMES ## UNDEFINED # LockBox
## SOMETIMES_CONSUMES ## HOB
## SOMETIMES_CONSUMES ## UNDEFINED # LockBox
gEfiAcpiVariableGuid
gEfiAcpiS3ContextGuid ## SOMETIMES_CONSUMES ## UNDEFINED # LockBox
gEdkiiEndOfS3ResumeGuid ## SOMETIMES_CONSUMES ## UNDEFINED # Used to do smm communication
## SOMETIMES_PRODUCES ## UNDEFINED # Install PPI
## SOMETIMES_CONSUMES ## UNDEFINED # Used to do smm communication
gEdkiiS3SmmInitDoneGuid
[Ppis]
gEfiPeiS3Resume2PpiGuid ## PRODUCES
gPeiSmmAccessPpiGuid ## SOMETIMES_CONSUMES
gPeiPostScriptTablePpiGuid ## SOMETIMES_PRODUCES
gEfiEndOfPeiSignalPpiGuid ## SOMETIMES_PRODUCES
gEfiPeiSmmCommunicationPpiGuid ## SOMETIMES_CONSUMES
gEdkiiPeiMpServices2PpiGuid ## SOMETIMES_CONSUMES
[FeaturePcd]
gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode ## CONSUMES
[Pcd]
gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable ## SOMETIMES_CONSUMES
gEfiMdeModulePkgTokenSpaceGuid.PcdPteMemoryEncryptionAddressOrMask ## CONSUMES
[Depex]
TRUE
[UserExtensions.TianoCore."ExtraFiles"]
S3Resume2PeiExtra.uni