blob: 04b1ed0e4eb3dac379b3afd556698c3630ed34ff [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.
#
# 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]
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
OvmfPkg/OvmfPkg.dec
UefiCpuPkg/UefiCpuPkg.dec
[LibraryClasses]
BaseLib
DebugLib
IoLib
MemoryAllocationLib
PcdLib
PciLib
QemuFwCfgLib
QemuFwCfgS3Lib
UefiBootServicesTableLib
UefiDriverEntryPoint
[Protocols]
gEfiS3SaveStateProtocolGuid ## SOMETIMES_CONSUMES
gEfiSmmControl2ProtocolGuid ## PRODUCES
[Pcd]
gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmApSyncTimeout ## SOMETIMES_PRODUCES
gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmSyncMode ## SOMETIMES_PRODUCES
[FeaturePcd]
gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire
[Depex]
TRUE