audk/ArmPkg/Library
Ard Biesheuvel dde2dd64f0 ArmPkg/ArmSmcPsciResetSystemLib: implement fallback for warm reboot
Implement ResetSystemLib's EnterS3WithImmediateWake() routine using
a jump back to the PEI entry point with interrupts and MMU+caches
disabled. This is only possible at boot time, when we are sure that
the current CPU is the only one up and running. Also, it depends on
the platform whether the PEI code is preserved in memory (it may be
copied to DRAM rather than execute in place), so also add a feature
PCD to selectively enable this feature.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
2018-06-15 18:18:37 +02:00
..
ArmArchTimerLib ArmPkg/ArmArchTimerLib: correct typos 2016-04-01 17:19:24 +02:00
ArmCacheMaintenanceLib ArmPkg/ArmLib: don't invalidate entire I-cache on range operation 2016-05-12 13:53:08 +02:00
ArmDisassemblerLib ArmPkg/ArmDisassemblerLib: fix check for MSR instruction 2018-06-07 09:09:07 +02:00
ArmExceptionLib ArmPkg/ArmExceptionLib: Add implementation of new API 2017-12-08 14:38:49 +08:00
ArmGenericTimerPhyCounterLib ArmPkg: add reenable hook to ArmGenericTimerCounterLib 2018-04-26 08:31:12 +02:00
ArmGenericTimerVirtCounterLib ArmPkg: add reenable hook to ArmGenericTimerCounterLib 2018-04-26 08:31:12 +02:00
ArmGicArchLib ArmPkg: cache detected revision in ArmGicArchLib 2015-07-28 20:45:10 +00:00
ArmGicArchSecLib ArmPkg: copy ArmGicArchLib to ArmGicArchSecLib 2015-07-28 20:44:58 +00:00
ArmHvcLib ArmPkg: move RVCT PLATFORM_FLAGS override into ArmHvcLib/ArmSmcLib 2017-11-16 16:02:23 +00:00
ArmLib ArmPkg/Library/ArmLib: add ArmWriteSctlr 2018-01-15 12:02:25 +00:00
ArmMmuLib ArmPkg/ArmMmuLib ARM: fix page size granularity in initial MMU setting 2017-12-20 20:57:03 +00:00
ArmMtlNullLib ArmPkg: MTL Library interface and Null library implementation 2018-04-23 12:12:23 +01:00
ArmPsciResetSystemLib Renamed ArmPlatformPkg/ArmVirtualizationPkg into ArmVirtPkg 2015-05-29 13:50:43 +00:00
ArmSmcLib ArmPkg: move RVCT PLATFORM_FLAGS override into ArmHvcLib/ArmSmcLib 2017-11-16 16:02:23 +00:00
ArmSmcLibNull ArmPkg/ArmSmcLibNull: move to generic C implementation 2016-08-11 12:29:31 +02:00
ArmSmcPsciResetSystemLib ArmPkg/ArmSmcPsciResetSystemLib: implement fallback for warm reboot 2018-06-15 18:18:37 +02:00
ArmSoftFloatLib ArmPkg/ArmSoftFloatLib: disable LTO build for GCC 2016-08-05 16:32:35 +02:00
ArmSvcLib ArmPkg/ArmSvcLib: Add ArmSvcLib implementation. 2017-10-06 22:35:41 +01:00
CompilerIntrinsicsLib ArmPkg/CompilerIntrinsicsLib: fix GCC8 warning for __aeabi_memcpy aliases 2018-06-11 11:41:36 +02:00
DebugAgentSymbolsBaseLib ArmPkg: Fix typos in comments 2016-10-19 16:31:22 +01:00
DebugPeCoffExtraActionLib ArmPkg: Rectify file modes 2016-01-30 12:25:59 +00:00
DefaultExceptionHandlerLib ArmPkg/DefaultExceptionHandlerLib: walk call stack unconditionally 2017-03-22 15:48:01 +00:00
GccLto ArmPkg: add prebuilt glue binaries for GCC5 LTO support 2016-08-02 10:53:57 +02:00
PeiServicesTablePointerLib ArmPkg/PeiServicesTablePointerLib: add missing MigratePeiServicesTablePointer() 2015-11-25 20:06:41 +00:00
PlatformBootManagerLib ArmPkg/PlatformBootManagerLib: call ProcessCapsules() only once 2018-06-15 18:18:35 +02:00
RvdPeCoffExtraActionLib ArmPkg/Semihostlib: Rename semi-hosting open option 2014-10-27 10:37:20 +00:00
SemiHostingDebugLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
SemiHostingSerialPortLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
SemihostLib ArmPkg/SemihostLib: switch to ASM_FUNC() asm macro 2016-08-11 12:40:52 +02:00