mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-16 17:44:19 +00:00
![]() manage_extensions_nonsecure() is problematic because it updates both context and in-place registers (unlike its secure/realm counterparts). The in-place register updates make it particularly tricky, as those never change for the lifetime of TF-A. However, they are only set when exiting to NS world. As such, all of TF-A's execution before that operates under a different context. This is inconsistent and could cause problems. This patch Introduce a real manage_extensions_nonsecure() which only operates on the context structure. It also introduces a cm_manage_extensions_el3() which only operates on register in-place that are not context switched. It is called in BL31's entrypoints so that all of TF-A executes with the same environment once all features have been converted. Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com> Change-Id: Ic579f86c41026d2054863ef44893e0ba4c591da9 |
||
---|---|---|
.. | ||
aarch32 | ||
aarch64 | ||
psci_common.c | ||
psci_lib.mk | ||
psci_main.c | ||
psci_mem_protect.c | ||
psci_off.c | ||
psci_on.c | ||
psci_private.h | ||
psci_setup.c | ||
psci_stat.c | ||
psci_suspend.c | ||
psci_system_off.c |