summaryrefslogtreecommitdiffstats
path: root/SecurityPkg/RandomNumberGenerator/RngPei/RngPei.inf
diff options
context:
space:
mode:
authorMichael Kubacki <michael.kubacki@microsoft.com>2024-06-04 23:09:33 -0400
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2025-02-06 20:29:15 +0000
commitedf1450f3e3958bf5585f7847453d1eae635d0aa (patch)
treecfe3ea409807744b32c28bd60b5844f89738a0fb /SecurityPkg/RandomNumberGenerator/RngPei/RngPei.inf
parentbcab6996a011fc96124e2831a9461b70ef0c36f3 (diff)
downloadedk2-edf1450f3e3958bf5585f7847453d1eae635d0aa.tar.gz
SecurityPkg: Add RngPei
REF:https://github.com/tianocore/edk2/issues/10529 The `RngPei` PEIM can be used if RNG should be provided over a dynamic binary interface to other PEIMs on a platform. Tested with: - SecurityPkg CI - Verify RNG linked with RngLib is executed as expected - Verify random numbers are generated successfully with a valid RngLib Integration instructions: Use the `RngPei` module if a platform needs to produce `gEfiRngPpiGuid`. The platform should usually link a different `RngLib` instance to `RngPei` than other PEIMs that may use the RNG PPI produced since `RngPei` is responsible for producing the PPI. For example, a `RngLib` instance that uses the rdrand instruction may be linked against `RngPei` and a `RngLib` instance that uses the RNG PPI may be linked against other PEIMs. Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
Diffstat (limited to 'SecurityPkg/RandomNumberGenerator/RngPei/RngPei.inf')
-rw-r--r--SecurityPkg/RandomNumberGenerator/RngPei/RngPei.inf37
1 files changed, 37 insertions, 0 deletions
diff --git a/SecurityPkg/RandomNumberGenerator/RngPei/RngPei.inf b/SecurityPkg/RandomNumberGenerator/RngPei/RngPei.inf
new file mode 100644
index 0000000000..135ef96be8
--- /dev/null
+++ b/SecurityPkg/RandomNumberGenerator/RngPei/RngPei.inf
@@ -0,0 +1,37 @@
+## @file
+# Produces the Random Number Generator (RNG) PPI.
+#
+# Copyright (c) Microsoft Corporation.
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+##
+
+[Defines]
+ INF_VERSION = 0x00010005
+ BASE_NAME = RngPei
+ MODULE_UNI_FILE = RngPei.uni
+ FILE_GUID = D9B35295-D8BB-463E-B7EC-1FD05E5687C1
+ MODULE_TYPE = PEIM
+ VERSION_STRING = 1.0
+ ENTRY_POINT = RngPeiEntryPoint
+
+[Sources]
+ RngPei.c
+
+[Packages]
+ MdePkg/MdePkg.dec
+ MdeModulePkg/MdeModulePkg.dec
+ SecurityPkg/SecurityPkg.dec
+
+[LibraryClasses]
+ BaseLib
+ BaseMemoryLib
+ DebugLib
+ PeimEntryPoint
+ PeiServicesLib
+ RngLib
+
+[Ppis]
+ gEfiRngPpiGuid ## PRODUCES
+
+[Depex]
+ TRUE