blob: d20198cab71061a1523480366086c4c92307ac2e [file] [log] [blame]
## @file
# A DXE_RUNTIME_DRIVER providing synchronous SMI activations via the
# EFI_SMM_CONTROL2_PROTOCOL.
#
# We expect the PEI phase to have covered the following:
# - ensure that the underlying QEMU machine type be Q35
# (responsible: OvmfPkg/SmmAccess/SmmAccessPei.inf)
# - ensure that the ACPI PM IO space be configured
# (responsible: OvmfPkg/PlatformPei/PlatformPei.inf)
#
# Our own entry point is responsible for confirming the SMI feature and for
# configuring it.
#
# Copyright (C) 2013, 2015, Red Hat, Inc.
# Copyright (c) 2024, Intel Corporation. All rights reserved.
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
##
[Defines]
INF_VERSION = 0x00010005
BASE_NAME = SmmControl2Dxe
FILE_GUID = 1206F7CA-A475-4624-A83E-E6FC9BB38E49
MODULE_TYPE = DXE_RUNTIME_DRIVER
VERSION_STRING = 1.0
PI_SPECIFICATION_VERSION = 0x00010400
ENTRY_POINT = SmmControl2DxeEntryPoint
#
# The following information is for reference only and not required by the build tools.
#
# VALID_ARCHITECTURES = IA32 X64
#
[Sources]
SmiFeatures.h
SmiFeatures.c
SmmControl2Dxe.c
[Packages]
MdePkg/MdePkg.dec
MdeModulePkg/MdeModulePkg.dec
OvmfPkg/OvmfPkg.dec
UefiCpuPkg/UefiCpuPkg.dec
[LibraryClasses]
BaseLib
DebugLib
IoLib
MemEncryptSevLib
MemoryAllocationLib
PcdLib
PciLib
QemuFwCfgLib
QemuFwCfgS3Lib
UefiBootServicesTableLib
UefiDriverEntryPoint
[Protocols]
gEfiS3SaveStateProtocolGuid ## SOMETIMES_CONSUMES
gEfiSmmControl2ProtocolGuid ## PRODUCES
[Pcd]
gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmApSyncTimeout ## SOMETIMES_PRODUCES
gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmApSyncTimeout2 ## SOMETIMES_PRODUCES
gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmSyncMode ## SOMETIMES_PRODUCES
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiS3Enable
[FeaturePcd]
gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire
[Depex]
TRUE