diff options
author | Michael Kubacki <michael.kubacki@microsoft.com> | 2020-06-12 14:24:46 -0700 |
---|---|---|
committer | mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> | 2022-04-05 00:42:38 +0000 |
commit | 6b7dde7cdd1649e59e228535a29aa8d80761a1ba (patch) | |
tree | 56f62b4a9d24cb67700cbf73b4176957b35dc122 /PrmPkg/Library/DxePrmModuleDiscoveryLib/PrmModuleDiscovery.h | |
parent | d10b8dc5d84edf6cad7809e2a3301e713bc79d61 (diff) | |
download | edk2-6b7dde7cdd1649e59e228535a29aa8d80761a1ba.tar.gz |
PrmPkg: Refactor some PrmLoaderDxe functionality into libraries
This change breaks out two sets of responsibilities in
PrmLoaderDxe into libraries:
* PE/COFF functions -> PrmPeCoffLib
* PRM module discovery functions -> PrmModuleDiscoveryLib
This is core infrastructure code for PRM functionality that needs
to be directly reused and tested in other places. At this time,
the primary motivating factor is to use this code in two other
locations:
1.) Link the functionality into unit testing modules
2.) Link the functionality into a PRM UEFI application
Cc: Andrew Fish <afish@apple.com>
Cc: Kang Gao <kang.gao@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Michael Kubacki <michael.kubacki@microsoft.com>
Cc: Leif Lindholm <leif@nuviainc.com>
Cc: Benjamin You <benjamin.you@intel.com>
Cc: Liu Yun <yun.y.liu@intel.com>
Cc: Ankit Sinha <ankit.sinha@intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
Acked-by: Michael D Kinney <michael.d.kinney@intel.com>
Acked-by: Liming Gao <gaoliming@byosoft.com.cn>
Acked-by: Leif Lindholm <quic_llindhol@quicinc.com>
Reviewed-by: Ankit Sinha <ankit.sinha@intel.com>
Diffstat (limited to 'PrmPkg/Library/DxePrmModuleDiscoveryLib/PrmModuleDiscovery.h')
-rw-r--r-- | PrmPkg/Library/DxePrmModuleDiscoveryLib/PrmModuleDiscovery.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/PrmPkg/Library/DxePrmModuleDiscoveryLib/PrmModuleDiscovery.h b/PrmPkg/Library/DxePrmModuleDiscoveryLib/PrmModuleDiscovery.h new file mode 100644 index 0000000000..79058d1531 --- /dev/null +++ b/PrmPkg/Library/DxePrmModuleDiscoveryLib/PrmModuleDiscovery.h @@ -0,0 +1,27 @@ +/** @file
+
+ Definitions internally used for Platform Runtime Mechanism (PRM) module discovery.
+
+ Copyright (c) Microsoft Corporation
+ SPDX-License-Identifier: BSD-2-Clause-Patent
+
+**/
+
+#ifndef PRM_MODULE_DISCOVERY_H_
+#define PRM_MODULE_DISCOVERY_H_
+
+#include <PrmModuleImageContext.h>
+
+#define PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY_SIGNATURE SIGNATURE_32('P','R','M','E')
+
+#pragma pack(push, 1)
+
+typedef struct {
+ UINTN Signature;
+ LIST_ENTRY Link;
+ PRM_MODULE_IMAGE_CONTEXT Context;
+} PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY;
+
+#pragma pack(pop)
+
+#endif
|