From 7b99da9b6df5cc17da3dc8d7400b0b4e673daf68 Mon Sep 17 00:00:00 2001 From: Ard Biesheuvel Date: Fri, 8 May 2015 12:06:09 +0000 Subject: ArmVExpressPkg: use PSCI for system reset at runtime Since the default EfiResetSystemLib for VExpress cannot be used at runtime (due to the fact that its MMIO registers need to be owned by the OS and so cannot be runtime remapped), instead use PSCI calls into EL3 at runtime. Contributed-under: TianoCore Contribution Agreement 1.0 Reviewed-by: Olivier Martin Signed-off-by: Ard Biesheuvel git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17380 6f19259b-4bc3-4df7-8a09-765794883524 --- ArmPlatformPkg/ArmVExpressPkg/ArmVExpress.dsc.inc | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'ArmPlatformPkg/ArmVExpressPkg') diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress.dsc.inc b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress.dsc.inc index 8dd20ca0ab..7a8bb8ecd0 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress.dsc.inc +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress.dsc.inc @@ -215,6 +215,15 @@ ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf + # + # PSCI support in EL3 may not be available if we are not running under a PSCI + # compliant secure firmware, but since the default VExpress EfiResetSystemLib + # cannot be supported at runtime (due to the fact that the syscfg MMIO registers + # cannot be runtime remapped), it is our best bet to get ResetSystem functionality + # on these platforms. + # + EfiResetSystemLib|ArmPkg/Library/ArmPsciResetSystemLib/ArmPsciResetSystemLib.inf + [LibraryClasses.ARM, LibraryClasses.AARCH64] # # It is not possible to prevent the ARM compiler for generic intrinsic functions. -- cgit v1.2.3