Make BaseRngLib more generic by moving x86-specific functionality into 'Rand' and adding files under 'AArch64' to support the optional ARMv8.5 RNG instruction RNDR that is a part of FEAT_RNG. Signed-off-by: Rebecca Cran <rebecca@nuviainc.com> Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn> Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>
		
			
				
	
	
		
			52 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			INI
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			INI
		
	
	
	
	
	
| ## @file
 | |
| #  Instance of RNG (Random Number Generator) Library.
 | |
| #
 | |
| #  BaseRng Library that uses CPU RNG instructions (e.g. RdRand) to
 | |
| #  provide random numbers.
 | |
| #
 | |
| #  Copyright (c) 2021, NUVIA Inc. All rights reserved.<BR>
 | |
| #  Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
 | |
| #
 | |
| #  SPDX-License-Identifier: BSD-2-Clause-Patent
 | |
| #
 | |
| #
 | |
| ##
 | |
| 
 | |
| [Defines]
 | |
|   INF_VERSION                    = 0x00010005
 | |
|   BASE_NAME                      = BaseRngLib
 | |
|   MODULE_UNI_FILE                = BaseRngLib.uni
 | |
|   FILE_GUID                      = 626440D8-1971-41D9-9AB2-FB25F4AE79BC
 | |
|   MODULE_TYPE                    = BASE
 | |
|   VERSION_STRING                 = 1.0
 | |
|   LIBRARY_CLASS                  = RngLib
 | |
|   CONSTRUCTOR                    = BaseRngLibConstructor
 | |
| 
 | |
| #
 | |
| #  VALID_ARCHITECTURES           = IA32 X64 AARCH64
 | |
| #
 | |
| 
 | |
| [Sources]
 | |
|   BaseRng.c
 | |
|   BaseRngLibInternals.h
 | |
| 
 | |
| [Sources.Ia32, Sources.X64]
 | |
|   Rand/RdRand.c
 | |
| 
 | |
| [Sources.AARCH64]
 | |
|   AArch64/Rndr.c
 | |
|   AArch64/ArmRng.h
 | |
| 
 | |
|   AArch64/ArmReadIdIsar0.S   | GCC
 | |
|   AArch64/ArmRng.S           | GCC
 | |
| 
 | |
|   AArch64/ArmReadIdIsar0.asm | MSFT
 | |
|   AArch64/ArmRng.asm         | MSFT
 | |
| 
 | |
| [Packages]
 | |
|   MdePkg/MdePkg.dec
 | |
| 
 | |
| [LibraryClasses]
 | |
|   BaseLib
 | |
|   DebugLib
 |