This fixes an issue reported by Ryan Harkin where 32-bit ARM platforms without PSCI compliant firmware cannot be rebooted or powered off successfully at boot time.
This is caused by a change which aimed to prevent system register accesses at runtime. These registers are not virtually remapped, so their availability is not guaranteed in that case. However, since the reboot/poweroff driver now uses PSCI unconditionally, these non-PSCI platforms break. This series addresses this regression by introducing a new system register access library which switches into a non-functional mode at runtime, and wiring it up for 32-bit VExpress platforms. Ard Biesheuvel (3): ArmPlatformPkg/ArmVExpressPkg: add ArmPlatformSysConfigLib for runtime ArmVExpressPkg: use ArmVExpressSysConfigRuntimeLib by default ArmVExpressPkg: use PSCI for system reset only on AARCH64 platforms ArmPlatformPkg/ArmVExpressPkg/ArmVExpress.dsc.inc | 3 ++- ArmPlatformPkg/ArmVExpressPkg/Library/{ArmVExpressSysConfigLib/ArmVExpressSysConfig.c => ArmVExpressSysConfigRuntimeLib/ArmVExpressSysConfigRuntimeLib.c} | 10 ++++++++++ ArmPlatformPkg/ArmVExpressPkg/Library/{ArmVExpressSysConfigLib/ArmVExpressSysConfigLib.inf => ArmVExpressSysConfigRuntimeLib/ArmVExpressSysConfigRuntimeLib.inf} | 12 +++++++----- 3 files changed, 19 insertions(+), 6 deletions(-) copy ArmPlatformPkg/ArmVExpressPkg/Library/{ArmVExpressSysConfigLib/ArmVExpressSysConfig.c => ArmVExpressSysConfigRuntimeLib/ArmVExpressSysConfigRuntimeLib.c} (93%) copy ArmPlatformPkg/ArmVExpressPkg/Library/{ArmVExpressSysConfigLib/ArmVExpressSysConfigLib.inf => ArmVExpressSysConfigRuntimeLib/ArmVExpressSysConfigRuntimeLib.inf} (65%) -- 1.9.1 ------------------------------------------------------------------------------ Don't Limit Your Business. Reach for the Cloud. GigeNET's Cloud Solutions provide you with the tools and support that you need to offload your IT needs and focus on growing your business. Configured For All Businesses. Start Your Cloud Today. https://www.gigenetcloud.com/ _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel