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>
		
			
				
	
	
		
			31 lines
		
	
	
		
			639 B
		
	
	
	
		
			NASM
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			639 B
		
	
	
	
		
			NASM
		
	
	
	
	
	
| ;------------------------------------------------------------------------------
 | |
| ;
 | |
| ; ArmReadIdIsar0() for AArch64
 | |
| ;
 | |
| ; Copyright (c) 2021, NUVIA Inc. All rights reserved.<BR>
 | |
| ;
 | |
| ; SPDX-License-Identifier: BSD-2-Clause-Patent
 | |
| ;
 | |
| ;------------------------------------------------------------------------------
 | |
| 
 | |
|   EXPORT ArmReadIdIsar0
 | |
|   AREA BaseLib_LowLevel, CODE, READONLY
 | |
| 
 | |
| ;/**
 | |
| ;  Reads the ID_AA64ISAR0 Register.
 | |
| ;
 | |
| ; @return The contents of the ID_AA64ISAR0 register.
 | |
| ;
 | |
| ;**/
 | |
| ;UINT64
 | |
| ;EFIAPI
 | |
| ;ArmReadIdIsar0 (
 | |
| ;  VOID
 | |
| ;  );
 | |
| ;
 | |
| ArmReadIdIsar0
 | |
|   mrs  x0, id_aa64isar0_el1 // Read ID_AA64ISAR0 Register
 | |
|   ret
 | |
| 
 | |
|   END
 |