arm-trusted-firmware/include/lib
Boyan Karatotev 0a580b5128 perf(cm): drop ZCR_EL3 saving and some ISBs and replace them with root context
SVE and SME aren't enabled symmetrically for all worlds, but EL3 needs
to context switch them nonetheless. Previously, this had to happen by
writing the enable bits just before reading/writing the relevant
context. But since the introduction of root context, this need not be
the case. We can have these enables always be present for EL3 and save
on some work (and ISBs!) on every context switch.

We can also hoist ZCR_EL3 to a never changing register, as we set its
value to be identical for every world, which happens to be the one we
want for EL3 too.

Change-Id: I3d950e72049a298008205ba32f230d5a5c02f8b0
Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
2025-02-25 08:52:06 +00:00
..
bl_aux_params chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
cpus perf(mpmm): greatly simplify MPMM enablement 2025-02-25 08:50:45 +00:00
dice feat(dice): add typedefs from the Open DICE repo 2024-03-06 15:44:55 +01:00
el3_runtime perf(cm): drop ZCR_EL3 saving and some ISBs and replace them with root context 2025-02-25 08:52:06 +00:00
extensions perf(cm): drop ZCR_EL3 saving and some ISBs and replace them with root context 2025-02-25 08:52:06 +00:00
fconf perf(amu): greatly simplify AMU context management 2025-02-25 08:50:46 +00:00
gpt_rme feat(gpt): statically allocate bitlocks array 2025-02-11 15:10:49 +00:00
hob feat(lib): introduce Hob creation library 2024-12-06 13:26:31 +00:00
libc fix(libc): remove __Nonnull type specifier 2025-02-16 23:05:07 +00:00
libfdt chore(libfdt): update header files to v1.7.0 tag 2023-11-06 21:13:22 +00:00
pmf fix(smc): correctly find pmf version 2024-05-08 20:36:04 -05:00
psa feat(psa): add interface with RSE for retrieving entropy 2025-02-04 10:26:02 +00:00
psci chore(docs): drop the "wfi" from pwr_domain_pwr_down_wfi 2025-02-03 14:29:47 +00:00
xlat_mpu chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
xlat_tables fix(xlat): correct attribute retrieval in a RME enabled system 2024-07-22 14:14:33 +02:00
zlib chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
bakery_lock.h chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
bootmarker_capture.h feat(fvp): capture timestamps in bl stages 2023-09-07 23:38:43 +02:00
cassert.h chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
coreboot.h chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
debugfs.h fix(smc): correctly find pmf version 2024-05-08 20:36:04 -05:00
mmio.h chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
object_pool.h chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
optee_utils.h chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
runtime_instr.h chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
semihosting.h chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
smccc.h feat(smccc): add vendor specific el3 id 2024-05-06 09:42:11 -05:00
spinlock.h feat(locks): add bitlock 2024-04-15 12:14:16 +01:00
transfer_list.h feat(handoff): transfer entry ID for TPM event log 2025-01-06 07:18:39 -08:00
utils.h chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
utils_def.h refactor(lib): rename GENMASK parameters 2024-06-26 20:54:47 +03:00