arm-trusted-firmware/docs
Raghu Krishnamurthy 7c2fe62f13 fix(bl31): allow use of EHF with S-EL2 SPMC
Currently, when SPMC at S-EL2 is used, we cannot use the RAS framework
to handle Group 0 interrupts. This is required on platforms where first
level of triaging needs to occur at EL3, before forwarding RAS handling
to a secure partition running atop an SPMC (hafnium).
The RAS framework depends on EHF and EHF registers for Group 0
interrupts to be trapped to EL3 when execution is both in secure world
and normal world. However, an FF-A compliant SPMC requires secure
interrupts to be trapped by the SPMC when execution is in S-EL0/S-EL1.
Consequently, the SPMC (hafnium) is incompatible with EHF, since it is
not re-entrant, and a Group 0 interrupt trapped to EL3 when execution is
in secure world, cannot be forwarded to an SP running atop SPMC.
This patch changes EHF to only register for Group 0 interrupts to be
trapped to EL3 when execution is in normal world and also makes it a
valid routing model to do so, when EL3_EXCEPTION_HANDLING is set (when
enabling the RAS framework).

Signed-off-by: Raghu Krishnamurthy <raghu.ncstate@gmail.com>
Change-Id: I72d4cf4d8ecc549a832d1c36055fbe95866747fe
2022-08-30 08:29:25 -07:00
..
_static/css docs(threat model): add TF-A threat model 2021-04-30 17:59:22 +02:00
about docs(maintainers): switch emails from Xilinx to AMD 2022-07-25 10:26:35 +02:00
components fix(doc): document missing RMM-EL3 runtime services 2022-07-21 12:36:45 +01:00
design fix(errata): workaround for Neoverse-V1 erratum 1618635 2022-08-05 15:56:30 -04:00
design_documents docs(el3-runtimes): context management refactor proposal 2022-02-24 08:04:48 +02:00
getting_started fix(bl31): allow use of EHF with S-EL2 SPMC 2022-08-30 08:29:25 -07:00
perf doc: Fix some broken links 2020-07-01 13:57:20 +02:00
plat docs(juno): fix broken link 2022-08-08 09:27:59 +02:00
process docs: fix mailing lists URLs 2022-04-21 10:26:23 +02:00
resources docs(rmmd): document EL3-RMM Interfaces 2022-07-05 10:41:18 +02:00
security_advisories docs(security): update security advisory for CVE-2022-23960 2022-06-16 17:04:09 -05:00
threat_model docs(threat-model): broaden the scope of threat #05 2022-05-31 08:41:31 +02:00
change-log.md fix(changelog): fix the broken link to commitlintrc.js 2022-06-07 12:06:18 +01:00
conf.py build(docs): add support for Markdown documentation 2021-11-17 16:04:36 +00:00
global_substitutions.txt fix(docs): fix FF-A substitution 2021-11-17 16:04:34 +00:00
glossary.rst feat(mpmm): add support for MPMM 2021-10-26 12:15:42 +01:00
index.rst docs(fwu): add firmware update documentation 2021-08-02 17:15:41 +01:00
license.rst refactor(dt-bindings): align irq bindings with kernel 2021-06-14 10:05:48 +02:00
Makefile doc: Treat Sphinx warnings as errors 2020-04-21 09:37:47 +00:00
requirements.in build(docs): add support for Markdown documentation 2021-11-17 16:04:36 +00:00
requirements.txt build(docs): add support for Markdown documentation 2021-11-17 16:04:36 +00:00