]> git.proxmox.com Git - mirror_edk2.git/blob - SecurityPkg/RandomNumberGenerator/RngDxe/RngDxe.inf
1985dfbb461921fe8bfd9216d8ad24301440d382
[mirror_edk2.git] / SecurityPkg / RandomNumberGenerator / RngDxe / RngDxe.inf
1 ## @file
2 # Produces the UEFI Random Number Generator protocol
3 #
4 # This module will leverage Intel Secure Key technology to produce the Random
5 # Number Generator protocol, which is used to provide high-quality random numbers
6 # for use in applications, or entropy for seeding other random number generators.
7 # Refer to http://software.intel.com/en-us/articles/intel-digital-random-number
8 # -generator-drng-software-implementation-guide/ for more information about Intel
9 # Secure Key technology.
10 #
11 # Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.<BR>
12 # (C) Copyright 2015 Hewlett Packard Enterprise Development LP<BR>
13 # Copyright (c) 2021 - 2022, Arm Limited. All rights reserved.<BR>
14 # SPDX-License-Identifier: BSD-2-Clause-Patent
15 #
16 ##
17
18 [Defines]
19 INF_VERSION = 0x00010005
20 BASE_NAME = RngDxe
21 FILE_GUID = B981A835-6EE8-4f4c-AE0B-210AA0BFBF01
22 MODULE_TYPE = DXE_DRIVER
23 VERSION_STRING = 1.0
24 ENTRY_POINT = RngDriverEntry
25 UNLOAD_IMAGE = RngDriverUnLoad
26 MODULE_UNI_FILE = RngDxe.uni
27
28 #
29 # The following information is for reference only and not required by the build tools.
30 #
31 # VALID_ARCHITECTURES = IA32 X64 AARCH64
32 #
33
34 [Sources.common]
35 RngDxe.c
36 RngDxeInternals.h
37
38 [Sources.IA32, Sources.X64]
39 Rand/RngDxe.c
40 Rand/RdRand.c
41 Rand/AesCore.c
42 Rand/AesCore.h
43
44 [Sources.AARCH64]
45 AArch64/RngDxe.c
46
47 [Packages]
48 MdePkg/MdePkg.dec
49 SecurityPkg/SecurityPkg.dec
50
51 [LibraryClasses]
52 UefiLib
53 UefiBootServicesTableLib
54 BaseLib
55 DebugLib
56 UefiDriverEntryPoint
57 TimerLib
58 RngLib
59
60 [Guids]
61 gEfiRngAlgorithmSp80090Hash256Guid ## SOMETIMES_PRODUCES ## GUID # Unique ID of the algorithm for RNG
62 gEfiRngAlgorithmSp80090Hmac256Guid ## SOMETIMES_PRODUCES ## GUID # Unique ID of the algorithm for RNG
63 gEfiRngAlgorithmSp80090Ctr256Guid ## SOMETIMES_PRODUCES ## GUID # Unique ID of the algorithm for RNG
64 gEfiRngAlgorithmX9313DesGuid ## SOMETIMES_PRODUCES ## GUID # Unique ID of the algorithm for RNG
65 gEfiRngAlgorithmX931AesGuid ## SOMETIMES_PRODUCES ## GUID # Unique ID of the algorithm for RNG
66 gEfiRngAlgorithmRaw ## SOMETIMES_PRODUCES ## GUID # Unique ID of the algorithm for RNG
67
68 [Protocols]
69 gEfiRngProtocolGuid ## PRODUCES
70
71 [Pcd]
72 gEfiSecurityPkgTokenSpaceGuid.PcdCpuRngSupportedAlgorithm ## CONSUMES
73
74 [Depex]
75 TRUE
76
77 [BuildOptions]
78 XCODE:*_*_*_CC_FLAGS = -mmmx -msse
79
80 [UserExtensions.TianoCore."ExtraFiles"]
81 RngDxeExtra.uni