arm-trusted-firmware/lib/cpus/aarch64
Boyan Karatotev b62673c645 refactor(cpus): register DSU errata with the errata framework's wrappers
The existing DSU errata workarounds hijack the errata framework's inner
workings to register with it. However, that is undesirable as any change
to the framework may end up missing these workarounds. So convert the
checks and workarounds to macros and have them included with the
standard wrappers.

The only problem with this is the is_scu_present_in_dsu weak function.
Fortunately, it is only needed for 2 of the errata and only on 3 cores.
So drop it, assuming the default behaviour and have the callers handle
the exception.

Change-Id: Iefa36325804ea093e938f867b9a6f49a6984b8ae
Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
2025-02-20 17:28:17 +00:00
..
a64fx.S refactor(cpus): remove cpu specific errata funcs 2024-07-26 11:19:52 +01:00
aem_generic.S refactor(cpus): remove cpu specific errata funcs 2024-07-26 11:19:52 +01:00
cortex_a35.S refactor(cpus): remove cpu specific errata funcs 2024-07-26 11:19:52 +01:00
cortex_a53.S refactor(cpus): remove cpu specific errata funcs 2024-07-26 11:19:52 +01:00
cortex_a55.S refactor(cpus): register DSU errata with the errata framework's wrappers 2025-02-20 17:28:17 +00:00
cortex_a57.S fix(cpus): declare reset errata correctly 2025-02-20 09:24:45 +00:00
cortex_a65.S refactor(cpus): register DSU errata with the errata framework's wrappers 2025-02-20 17:28:17 +00:00
cortex_a65ae.S refactor(cpus): register DSU errata with the errata framework's wrappers 2025-02-20 17:28:17 +00:00
cortex_a72.S refactor(cpus): remove cpu specific errata funcs 2024-07-26 11:19:52 +01:00
cortex_a73.S refactor(cpus): remove cpu specific errata funcs 2024-07-26 11:19:52 +01:00
cortex_a75.S refactor(cpus): register DSU errata with the errata framework's wrappers 2025-02-20 17:28:17 +00:00
cortex_a75_pubsub.c chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
cortex_a76.S refactor(cpus): register DSU errata with the errata framework's wrappers 2025-02-20 17:28:17 +00:00
cortex_a76ae.S refactor(cpus): remove cpu specific errata funcs 2024-07-26 11:19:52 +01:00
cortex_a77.S fix(cpus): workaround for CVE-2024-5660 for Cortex-A77 2024-12-17 10:28:09 -06:00
cortex_a78.S fix(cpus): workaround for CVE-2024-5660 for Cortex-A78 2024-12-17 10:28:09 -06:00
cortex_a78_ae.S fix(cpus): workaround for CVE-2024-5660 for Cortex-A78_AE 2024-12-17 10:28:09 -06:00
cortex_a78c.S fix(cpus): workaround for CVE-2024-5660 for Cortex-A78C 2024-12-17 10:28:09 -06:00
cortex_a510.S refactor(cpus): register DSU errata with the errata framework's wrappers 2025-02-20 17:28:17 +00:00
cortex_a520.S refactor(cpus): convert checker functions to standard helpers 2025-02-20 09:24:46 +00:00
cortex_a710.S refactor(cpus): register DSU errata with the errata framework's wrappers 2025-02-20 17:28:17 +00:00
cortex_a715.S fix(cpus): workaround for Cortex-A715 erratum 3699560 2025-02-03 10:14:33 -06:00
cortex_a720.S fix(cpus): workaround for Cortex-A720 erratum 3699561 2025-02-03 13:57:26 -06:00
cortex_a720_ae.S fix(cpus): workaround for Cortex-A720-AE erratum 3699562 2025-02-03 13:57:50 -06:00
cortex_a725.S fix(cpus): workaround for Cortex-A725 erratum 3699564 2025-02-03 13:57:50 -06:00
cortex_alto.S fix(cpus): avoid SME related loss of context on powerdown 2025-02-03 14:29:47 +00:00
cortex_arcadia.S feat(cpus): add support for arcadia cpu 2024-10-17 09:34:03 -05:00
cortex_gelas.S fix(cpus): clear CPUPWRCTLR_EL1.CORE_PWRDN_EN_BIT on reset 2025-02-05 14:18:49 +00:00
cortex_x1.S fix(cpus): workaround for CVE-2024-5660 for Cortex-X1 2024-12-17 10:28:09 -06:00
cortex_x2.S refactor(cpus): register DSU errata with the errata framework's wrappers 2025-02-20 17:28:17 +00:00
cortex_x3.S fix(cpus): declare reset errata correctly 2025-02-20 09:24:45 +00:00
cortex_x4.S refactor(cpus): convert checker functions to standard helpers 2025-02-20 09:24:46 +00:00
cortex_x925.S fix(cpus): workaround for Cortex-X925 erratum 2963999 2025-02-12 09:25:06 -06:00
cpu_helpers.S fix(security): apply SMCCC_ARCH_WORKAROUND_4 to affected cpus 2025-01-30 16:45:35 -06:00
cpuamu.c Sanitise includes across codebase 2019-01-04 10:43:17 +00:00
cpuamu_helpers.S chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
denver.S refactor(cpus): remove cpu specific errata funcs 2024-07-26 11:19:52 +01:00
generic.S refactor(cpus): remove cpu specific errata funcs 2024-07-26 11:19:52 +01:00
neoverse_e1.S refactor(cpus): register DSU errata with the errata framework's wrappers 2025-02-20 17:28:17 +00:00
neoverse_n1.S refactor(cpus): register DSU errata with the errata framework's wrappers 2025-02-20 17:28:17 +00:00
neoverse_n1_pubsub.c chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
neoverse_n2.S refactor(cpus): register DSU errata with the errata framework's wrappers 2025-02-20 17:28:17 +00:00
neoverse_n3.S fix(cpus): workaround for Neoverse-N3 erratum 3699563 2025-02-03 13:57:50 -06:00
neoverse_v1.S fix(cpus): declare reset errata correctly 2025-02-20 09:24:45 +00:00
neoverse_v2.S fix(security): apply SMCCC_ARCH_WORKAROUND_4 to affected cpus 2025-01-30 16:45:35 -06:00
neoverse_v3.S fix(cpus): workaround for Neoverse-V3 erratum 2970647 2025-02-12 09:25:06 -06:00
nevis.S refactor(cpus): remove cpu specific errata funcs 2024-07-26 11:19:52 +01:00
qemu_max.S refactor(cpus): remove cpu specific errata funcs 2024-07-26 11:19:52 +01:00
rainier.S refactor(cpus): remove cpu specific errata funcs 2024-07-26 11:19:52 +01:00
travis.S fix(cpus): clear CPUPWRCTLR_EL1.CORE_PWRDN_EN_BIT on reset 2025-02-05 14:18:49 +00:00
wa_cve_2017_5715_bpiall.S chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
wa_cve_2017_5715_mmu.S chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
wa_cve_2022_23960_bhb.S chore: update to use Arm word across TF-A 2023-08-08 15:12:30 +01:00
wa_cve_2022_23960_bhb_vector.S fix(security): workaround for CVE-2022-23960 2022-03-10 23:57:14 -06:00