arm-trusted-firmware/docs
Manish V Badarkhe 45aecff003 Implement workaround for AT speculative behaviour
During context switching from higher EL (EL2 or higher)
to lower EL can cause incorrect translation in TLB due to
speculative execution of AT instruction using out-of-context
translation regime.

Workaround is implemented as below during EL's (EL1 or EL2)
"context_restore" operation:
1. Disable page table walk using SCTLR.M and TCR.EPD0 & EPD1
   bits for EL1 or EL2 (stage1 and stage2 disabled)
2. Save all system registers except TCR and SCTLR (for EL1 and EL2)
3. Do memory barrier operation (isb) to ensure all
   system register writes are done.
4. Restore TCR and SCTLR registers (for EL1 and EL2)

Errata details are available for various CPUs as below:
Cortex-A76: 1165522
Cortex-A72: 1319367
Cortex-A57: 1319537
Cortex-A55: 1530923
Cortex-A53: 1530924

More details can be found in mail-chain:
https://lists.trustedfirmware.org/pipermail/tf-a/2020-April/000445.html

Currently, Workaround is implemented as build option which is default
disabled.

Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: If8545e61f782cb0c2dda7ffbaf50681c825bd2f0
2020-05-14 13:08:54 +00:00
..
about doc: Reorganize maintainers.rst file 2020-05-13 09:05:06 +02:00
components doc: Add binding document for fconf. 2020-04-30 09:40:23 +01:00
design doc: Fixup some SMCCC links 2020-04-17 14:06:54 +02:00
design_documents CMake buildsystem design document 2020-03-11 15:06:09 +01:00
getting_started Implement workaround for AT speculative behaviour 2020-05-14 13:08:54 +00:00
perf Update docs with PMU security information 2020-02-12 13:08:20 +00:00
plat docs: Fixes and updates for the v2.3 release 2020-04-15 17:50:43 -05:00
process doc: Update various process documents 2020-05-13 09:05:05 +02:00
resources doc: Update fconf uml diagrams 2020-04-01 16:40:16 +02:00
security_advisories docs: Update SMCCC doc, other changes for release 2020-04-16 10:03:39 -05:00
Makefile doc: Treat Sphinx warnings as errors 2020-04-21 09:37:47 +00:00
change-log-upcoming.rst docs: Updating Change log for v2.3 Release 2020-04-16 10:23:21 -05:00
change-log.rst docs: Updating Change log for v2.3 Release 2020-04-16 10:23:21 -05:00
conf.py doc: Remove version and release variables from conf.py 2019-10-17 13:46:38 +00:00
global_substitutions.txt fconf: Add documentation 2020-02-07 13:51:32 +00:00
glossary.rst fconf: Add documentation 2020-02-07 13:51:32 +00:00
index.rst docs: Update SMCCC doc, other changes for release 2020-04-16 10:03:39 -05:00
license.rst doc: Convert internal links to RST format 2019-10-08 15:58:03 +00:00
requirements.txt doc: Generate PlantUML diagrams automatically 2019-07-12 14:15:25 +01:00