On ARM systems, whether SMC or HVC instructions need to be used to issue monitor calls is typically dependent on the exception level, but there are also cases where EL1 might use SMC instructions, so there is no hard and fast rule. For ArmVirtQemu, this does depend strictly on the exception level, so set the default to HVC (for EL1 execution) and override it to SMC when booted at EL2. Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Leif Lindholm <quic_llindhol@quicinc.com> Cc: Sami Mujawar <sami.mujawar@arm.com> Cc: Gerd Hoffmann <kraxel@redhat.com> Committed-by: Ard Biesheuvel <ardb@kernel.org> Signed-off-by: Doug Flick [MSFT] <doug.edk2@gmail.com> Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
62 lines
1.5 KiB
INI
62 lines
1.5 KiB
INI
#/** @file
|
|
#
|
|
# Copyright (c) 2011-2015, ARM Limited. All rights reserved.
|
|
# Copyright (c) 2014-2020, Linaro Limited. All rights reserved.
|
|
#
|
|
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
#
|
|
#**/
|
|
|
|
[Defines]
|
|
INF_VERSION = 0x00010005
|
|
BASE_NAME = PlatformPeiLib
|
|
FILE_GUID = 59C11815-F8DA-4F49-B4FB-EC1E41ED1F06
|
|
MODULE_TYPE = BASE
|
|
VERSION_STRING = 1.0
|
|
LIBRARY_CLASS = PlatformPeiLib
|
|
|
|
[Sources]
|
|
PlatformPeiLib.c
|
|
|
|
[Packages]
|
|
ArmPkg/ArmPkg.dec
|
|
ArmVirtPkg/ArmVirtPkg.dec
|
|
EmbeddedPkg/EmbeddedPkg.dec
|
|
MdeModulePkg/MdeModulePkg.dec
|
|
MdePkg/MdePkg.dec
|
|
OvmfPkg/OvmfPkg.dec
|
|
SecurityPkg/SecurityPkg.dec
|
|
|
|
[FeaturePcd]
|
|
gArmVirtTokenSpaceGuid.PcdTpm2SupportEnabled
|
|
|
|
[LibraryClasses]
|
|
BaseMemoryLib
|
|
DebugLib
|
|
HobLib
|
|
FdtLib
|
|
FdtSerialPortAddressLib
|
|
PcdLib
|
|
PeiServicesLib
|
|
|
|
[FixedPcd]
|
|
gArmTokenSpaceGuid.PcdFvSize
|
|
gUefiOvmfPkgTokenSpaceGuid.PcdDeviceTreeAllocationPadding
|
|
|
|
[Pcd]
|
|
gArmTokenSpaceGuid.PcdFvBaseAddress
|
|
gArmTokenSpaceGuid.PcdMonitorConduitHvc
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpmBaseAddress ## SOMETIMES_PRODUCES
|
|
gUefiOvmfPkgTokenSpaceGuid.PcdDeviceTreeInitialBaseAddress
|
|
|
|
[Ppis]
|
|
gOvmfTpmDiscoveredPpiGuid ## SOMETIMES_PRODUCES
|
|
gPeiTpmInitializationDonePpiGuid ## SOMETIMES_PRODUCES
|
|
|
|
[Guids]
|
|
gEarlyPL011BaseAddressGuid
|
|
gFdtHobGuid
|
|
|
|
[Depex]
|
|
gEfiPeiMemoryDiscoveredPpiGuid
|