You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
StandaloneMmPkg: Arm/StandaloneMmCoreEntryPoint Remove Check for SMC ID
Today, StandaloneMmCoreEntryPoint checks for an SMC EventId of
MM_COMMUNICATE or FF-A Direct and drops all other SMCs. However,
the TCG ACPI spec dictates that a different SMC ID, platform
defined, will be send to communicate with the TPM[1]. When a platform
is using StandaloneMM and the SPM_MM configuration, this check
causes this valid SMC to be dropped. This is an issue because TPM
calls cannot be routed, including TPM calls originating from the
OS.
This patch drops the check to allow StandaloneMmCoreEntryPoint to
route the calls to StandaloneMmCpu to decide whether it can handle
the SMC (which on platforms with this TPM configuration it can).
"This field provides the SMC/HVC call function ID that will
invoke the TPM start method.
Firmware SHALL implement the SMC call as an SMC32 or
SMC64 Fast Call, compliant with the SMC Calling convention
specification. The call takes no parameters, no
client ID, no Secure OS ID, and no Session ID. The call
SHALL return zero. The function ID SHALL be allocated from
a Service Call Range over which the platform vendor has
authority."
[1]: https://trustedcomputinggroup.org/wp-content/uploads/
TCG_ACPIGeneralSpecification_v1p3_r6_14april2021.pdf
Section 8.3.1
Signed-off-by: Oliver Smith-Denny <[email protected]>
0 commit comments