From ed21313ac782d7a4591e0883b07baaf7f5f25986 Mon Sep 17 00:00:00 2001 From: Kun Qin Date: Fri, 19 Jun 2026 10:06:24 -0700 Subject: [PATCH] ArmPkg: MmCommunication: FFA run should use the returned ID As the FFA function now returns the target ID properly, instead of hardcoding the FFA_RUN target ID being the STMM, we use the parsed ID to issue the FFA_RUN. Signed-off-by: Kun Qin --- ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.c | 2 +- ArmPkg/Drivers/MmCommunicationPei/MmCommunicationPei.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.c b/ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.c index 50d0a35526..2acfc180ab 100644 --- a/ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.c +++ b/ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.c @@ -97,7 +97,7 @@ SendFfaMmCommunicate ( while (Status == EFI_INTERRUPT_PENDING) { // We are assuming vCPU0 of the StMM SP since it is UP. - Status = ArmFfaLibRun (mStMmPartId, 0x00, NULL); + Status = ArmFfaLibRun (GET_SOURCE_PARTITION_ID (CommunicateArgs.Header.x1), 0x00, &CommunicateArgs); } return Status; diff --git a/ArmPkg/Drivers/MmCommunicationPei/MmCommunicationPei.c b/ArmPkg/Drivers/MmCommunicationPei/MmCommunicationPei.c index 4fc0a45728..cb53dd5131 100644 --- a/ArmPkg/Drivers/MmCommunicationPei/MmCommunicationPei.c +++ b/ArmPkg/Drivers/MmCommunicationPei/MmCommunicationPei.c @@ -217,7 +217,7 @@ SendFfaMmCommunicate ( while (Status == EFI_INTERRUPT_PENDING) { // We are assuming vCPU0 of the StMM SP since it is UP. - Status = ArmFfaLibRun (mStMmPartId, 0x00, NULL); + Status = ArmFfaLibRun (GET_SOURCE_PARTITION_ID (CommunicateArgs.Header.x1), 0x00, &CommunicateArgs); } return Status;