Michael Kubacki edf1450f3e 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>
2025-02-06 20:29:15 +00:00

38 lines
731 B
INI

## @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