]> git.proxmox.com Git - mirror_edk2.git/commitdiff
ArmVExpressPkg: use PSCI for system reset at runtime
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Fri, 8 May 2015 12:06:09 +0000 (12:06 +0000)
committeroliviermartin <oliviermartin@Edk2>
Fri, 8 May 2015 12:06:09 +0000 (12:06 +0000)
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 <olivier.martin@arm.com>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17380 6f19259b-4bc3-4df7-8a09-765794883524

ArmPlatformPkg/ArmVExpressPkg/ArmVExpress.dsc.inc

index 8dd20ca0abc277c6090ee8f86c96511f883114d5..7a8bb8ecd0dd60fe4bcdc5ac368aede1e0e0a18c 100644 (file)
   ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf\r
   CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf\r
 \r
+  #\r
+  # PSCI support in EL3 may not be available if we are not running under a PSCI\r
+  # compliant secure firmware, but since the default VExpress EfiResetSystemLib\r
+  # cannot be supported at runtime (due to the fact that the syscfg MMIO registers\r
+  # cannot be runtime remapped), it is our best bet to get ResetSystem functionality\r
+  # on these platforms.\r
+  #\r
+  EfiResetSystemLib|ArmPkg/Library/ArmPsciResetSystemLib/ArmPsciResetSystemLib.inf\r
+\r
 [LibraryClasses.ARM, LibraryClasses.AARCH64]\r
   #\r
   # It is not possible to prevent the ARM compiler for generic intrinsic functions.\r