arm-trusted-firmware/bl31
Manish Pandey c72200357a fix(el3-runtime): replace CTX_ESR_EL3 with CTX_DOUBLE_FAULT_ESR
ESR_EL3 value is updated when an exception is taken to EL3 and its value
does not change until a new exception is taken to EL3. We need to save
ESR in context memory only when we expect nested exception in EL3.

The scenarios where we would expect nested EL3 execution are related
with FFH_SUPPORT, namely
  1.Handling pending async EAs at EL3 boundry
    - It uses CTX_SAVED_ESR_EL3 to preserve origins esr_el3
  2.Double fault handling
    - Introduce an explicit storage (CTX_DOUBLE_FAULT_ESR) for esr_el3
      to take care of DobuleFault.

As the ESR context has been removed, read the register directly instead
of its context value in RD platform.

Signed-off-by: Manish Pandey <manish.pandey2@arm.com>
Change-Id: I7720c5f03903f894a77413a235e3cc05c86f9c17
2025-02-28 11:48:37 +00:00
..
aarch64 fix(el3-runtime): replace CTX_ESR_EL3 with CTX_DOUBLE_FAULT_ESR 2025-02-28 11:48:37 +00:00
bl31.ld.S build(bl31): support separated memory for RW DATA 2024-11-05 17:24:41 +08:00
bl31.mk perf(mpmm): greatly simplify MPMM enablement 2025-02-25 08:50:45 +00:00
bl31_context_mgmt.c feat(rme): add context management changes for FEAT_RME 2021-10-05 18:41:35 +02:00
bl31_main.c perf(amu): greatly simplify AMU context management 2025-02-25 08:50:46 +00:00
bl31_traps.c docs: review Undefined Injection for 2.12 release 2024-11-14 18:30:02 +02:00
ehf.c fix(gic600): workaround for Part 1 of GIC600 erratum 2384374 2024-03-06 14:16:35 -06:00
interrupt_mgmt.c fix(misra): fix MISRA defects 2024-03-07 09:38:27 -06:00