arm-trusted-firmware/include/lib/cpus/aarch64
Boyan Karatotev 43438ad1ad fix(cpus): workaround for Neoverse-N2 erratum 2326639
Neoverse-N2 erratum 2326639 is a Cat B erratum that applies to revision
r0p0 and is fixed in r0p1. The workaround is to set CPUACTLR2_EL1[36] to
1 before the power down sequence that sets CORE_PWRDN_EN. This allows
the cpu to retry the power down and prevents the deadlock. TF-A never
clears this bit even if it wakes up from the wfi in the sequence since
it is not expected to do anything but retry to power down after and the
bit is cleared on reset.

SDEN can be found here:
https://developer.arm.com/documentation/SDEN1982442/latest/

Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
Change-Id: I9a325c5b9b498798e5efd5c79a4a6d5bed97c619
2022-10-27 13:46:52 +01:00
..
a64fx.h feat(cpus): add a64fx cpu to tf-a 2022-07-07 07:17:25 +09:00
aem_generic.h cpus: Add casts to all definitions in CPU headers 2019-02-11 13:34:57 +00:00
cortex_a35.h Cortex-A35: Implement workaround for errata 855472 2019-04-17 13:46:43 +01:00
cortex_a53.h feat(cpu/cortex_a53): add L1PCTL macro definiton for CPUACTLR_EL1 2022-01-13 18:00:46 +08:00
cortex_a55.h Cortex-A55: workarounds for errata 1221012 2019-05-28 14:19:04 +01:00
cortex_a57.h cpus: higher performance non-cacheable load forwarding 2020-02-20 09:25:45 -08:00
cortex_a65.h Introducing support for Cortex-A65 2019-10-02 18:12:28 +02:00
cortex_a65ae.h Introducing support for Cortex-A65AE 2019-10-03 15:38:31 +02:00
cortex_a72.h fix(security): workaround for CVE-2022-23960 for Cortex-A57, Cortex-A72 2022-03-16 16:35:07 -05:00
cortex_a73.h Replace deprecated __ASSEMBLY__ macro with __ASSEMBLER__ 2019-10-11 14:12:24 +02:00
cortex_a75.h Replace __ASSEMBLY__ with compiler-builtin __ASSEMBLER__ 2019-08-01 13:14:12 -07:00
cortex_a76.h fix(security): loop workaround for CVE-2022-23960 for Cortex-A76 2022-03-11 00:48:03 -06:00
cortex_a76ae.h fix(security): workaround for CVE-2022-23960 for A76AE, A78AE, A78C 2022-03-21 08:57:09 -05:00
cortex_a77.h revert(cpus): "Revert workaround for A77 erratum 1800714" 2022-10-11 09:34:05 +01:00
cortex_a78.h fix(errata): workaround for Cortex A78 AE erratum 2395408 2022-03-24 10:55:48 +00:00
cortex_a78_ae.h fix(errata): workaround for Cortex A78 AE erratum 2395408 2022-03-24 10:55:48 +00:00
cortex_a78c.h fix(cpus): workaround for Cortex-A78C erratum 2376749 2022-09-08 13:25:42 +02:00
cortex_a510.h fix(cpus): workaround for Cortex-A510 erratum 2666669 2022-10-13 16:19:50 -05:00
cortex_a710.h fix(cpus): workaround for Cortex-A710 2216384 2022-09-06 22:43:04 +01:00
cortex_hayes.h feat(cpu): add support for Hayes CPU 2021-09-30 19:30:39 +02:00
cortex_hunter.h fix(security): workaround for CVE-2022-23960 2022-05-11 19:05:48 +02:00
cortex_hunter_elp_arm.h feat(cpu): add library support for Hunter ELP 2022-10-07 12:44:04 +01:00
cortex_makalu.h fix(security): workaround for CVE-2022-23960 2022-05-11 19:05:48 +02:00
cortex_x1.h fix(security): workaround for CVE-2022-23960 for Cortex-X1 2022-05-11 15:24:37 +02:00
cortex_x2.h fix(errata): workaround for Cortex-X2 erratum 2371105 2022-07-21 14:26:59 -05:00
cortex_x3.h chore: rename Makalu ELP to Cortex-X3 2022-10-27 09:41:00 +01:00
cpu_macros.S fix(security): apply SMCCC_ARCH_WORKAROUND_3 to A73/A75/A72/A57 2022-03-18 01:01:34 +02:00
cpuamu.h Replace __ASSEMBLY__ with compiler-builtin __ASSEMBLER__ 2019-08-01 13:14:12 -07:00
denver.h lib: cpus: denver: add MIDR PN9 variant 2020-08-31 10:43:44 -07:00
dsu_def.h fix(errata): workaround for DSU-110 erratum 2313941 2022-05-11 19:05:36 +02:00
generic.h arm_fpga: Add support for unknown MPIDs 2020-09-25 15:45:50 +01:00
neoverse_e1.h Fix wrong MIDR_EL1 value for Neoverse E1 2019-03-15 15:40:27 +00:00
neoverse_n1.h fix(security): workaround for CVE-2022-23960 2022-03-10 23:57:14 -06:00
neoverse_n2.h fix(cpus): workaround for Neoverse-N2 erratum 2326639 2022-10-27 13:46:52 +01:00
neoverse_n_common.h Add support for Neoverse-N2 CPUs. 2020-11-30 19:12:56 +00:00
neoverse_poseidon.h fix(security): workaround for CVE-2022-23960 2022-05-11 19:05:48 +02:00
neoverse_v1.h fix(errata): workaround for Neoverse-V1 erratum 1618635 2022-08-05 15:56:30 -04:00
neoverse_v2.h refactor(cpu): use the updated IP name for Demeter CPU 2022-10-03 15:31:40 +05:30
qemu_max.h Add support for QEMU "max" CPU 2021-04-13 12:31:40 +01:00
rainier.h lib/cpus: update MIDR value for rainier cpu 2020-10-09 10:43:13 +00:00