diff options
author | Li, Zhihao <zhihao.li@intel.com> | 2022-03-01 19:22:19 +0800 |
---|---|---|
committer | mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> | 2022-03-04 05:44:42 +0000 |
commit | 4a68176cb548902cad93e6ebb5957d0cac94d297 (patch) | |
tree | db78f666a4d37560383070c2726067ce30be0dd3 /UefiCpuPkg/Library/SmmCpuRendezvousLib/SmmCpuRendezvousLib.inf | |
parent | b83d0a6438f24ba3c6234d9b7593be6f2246ec1e (diff) | |
download | edk2-4a68176cb548902cad93e6ebb5957d0cac94d297.zip edk2-4a68176cb548902cad93e6ebb5957d0cac94d297.tar.gz edk2-4a68176cb548902cad93e6ebb5957d0cac94d297.tar.bz2 |
UefiCpuPkg: Extend SMM CPU Service with rendezvous support.
REF? https://bugzilla.tianocore.org/show_bug.cgi?id=3815
This patch define a new Protocol with the new services
SmmWaitForAllProcessor(), which can be used by SMI handler
to optionally wait for other APs to complete SMM rendezvous in
relaxed AP mode.
A new library SmmCpuRendezvousLib is provided to abstract the service
into library API to simple SMI handler code.
Cc: Eric Dong <eric.dong@intel.com>
Reviewed-by: Ray Ni <ray.ni@intel.com>
Cc: Rahul Kumar <rahul1.kumar@intel.com>
Cc: Siyuan Fu <siyuan.fu@intel.com>
Cc: Zhihao Li <zhihao.li@intel.com>
Signed-off-by: Zhihao Li <zhihao.li@intel.com>
Diffstat (limited to 'UefiCpuPkg/Library/SmmCpuRendezvousLib/SmmCpuRendezvousLib.inf')
-rw-r--r-- | UefiCpuPkg/Library/SmmCpuRendezvousLib/SmmCpuRendezvousLib.inf | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/UefiCpuPkg/Library/SmmCpuRendezvousLib/SmmCpuRendezvousLib.inf b/UefiCpuPkg/Library/SmmCpuRendezvousLib/SmmCpuRendezvousLib.inf new file mode 100644 index 0000000..52374bf --- /dev/null +++ b/UefiCpuPkg/Library/SmmCpuRendezvousLib/SmmCpuRendezvousLib.inf @@ -0,0 +1,35 @@ +## @file
+# SMM CPU Rendezvous service lib.
+#
+# This is SMM CPU rendezvous service lib that wait for all
+# APs to enter SMM mode.
+#
+# Copyright (c) 2022, Intel Corporation. All rights reserved.<BR>
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+##
+
+[Defines]
+ INF_VERSION = 0x00010005
+ BASE_NAME = SmmCpuRendezvousLib
+ FILE_GUID = 1509Bb36-9Ba4-438B-B195-Ac5914Db14E2
+ MODULE_TYPE = DXE_SMM_DRIVER
+ LIBRARY_CLASS = SmmCpuRendezvousLib|MM_STANDALONE DXE_SMM_DRIVER
+
+[Sources]
+ SmmCpuRendezvousLib.c
+
+[Packages]
+ MdePkg/MdePkg.dec
+ UefiCpuPkg/UefiCpuPkg.dec
+
+[LibraryClasses]
+ BaseLib
+ DebugLib
+ MmServicesTableLib
+
+[Pcd]
+ gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmApSyncTimeout ## CONSUMES
+
+[Protocols]
+ gEdkiiSmmCpuRendezvousProtocolGuid
|