xref: /rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst (revision 4384b5b93a05f80876fdc2296c65063daafc09d6)
140d553cfSPaul BeesleyArm CPU Specific Build Macros
240d553cfSPaul Beesley=============================
340d553cfSPaul Beesley
440d553cfSPaul BeesleyThis document describes the various build options present in the CPU specific
540d553cfSPaul Beesleyoperations framework to enable errata workarounds and to enable optimizations
640d553cfSPaul Beesleyfor a specific CPU on a platform.
740d553cfSPaul Beesley
840d553cfSPaul BeesleySecurity Vulnerability Workarounds
940d553cfSPaul Beesley----------------------------------
1040d553cfSPaul Beesley
1140d553cfSPaul BeesleyTF-A exports a series of build flags which control which security
1240d553cfSPaul Beesleyvulnerability workarounds should be applied at runtime.
1340d553cfSPaul Beesley
1440d553cfSPaul Beesley-  ``WORKAROUND_CVE_2017_5715``: Enables the security workaround for
1540d553cfSPaul Beesley   `CVE-2017-5715`_. This flag can be set to 0 by the platform if none
1640d553cfSPaul Beesley   of the PEs in the system need the workaround. Setting this flag to 0 provides
1740d553cfSPaul Beesley   no performance benefit for non-affected platforms, it just helps to comply
1840d553cfSPaul Beesley   with the recommendation in the spec regarding workaround discovery.
1940d553cfSPaul Beesley   Defaults to 1.
2040d553cfSPaul Beesley
2140d553cfSPaul Beesley-  ``WORKAROUND_CVE_2018_3639``: Enables the security workaround for
2240d553cfSPaul Beesley   `CVE-2018-3639`_. Defaults to 1. The TF-A project recommends to keep
2340d553cfSPaul Beesley   the default value of 1 even on platforms that are unaffected by
2440d553cfSPaul Beesley   CVE-2018-3639, in order to comply with the recommendation in the spec
2540d553cfSPaul Beesley   regarding workaround discovery.
2640d553cfSPaul Beesley
2740d553cfSPaul Beesley-  ``DYNAMIC_WORKAROUND_CVE_2018_3639``: Enables dynamic mitigation for
2840d553cfSPaul Beesley   `CVE-2018-3639`_. This build option should be set to 1 if the target
2940d553cfSPaul Beesley   platform contains at least 1 CPU that requires dynamic mitigation.
3040d553cfSPaul Beesley   Defaults to 0.
3140d553cfSPaul Beesley
321fe4a9d1SBipin Ravi-  ``WORKAROUND_CVE_2022_23960``: Enables mitigation for `CVE-2022-23960`_.
331fe4a9d1SBipin Ravi   This build option should be set to 1 if the target platform contains at
341fe4a9d1SBipin Ravi   least 1 CPU that requires this mitigation. Defaults to 1.
351fe4a9d1SBipin Ravi
36af65cbb9SSona Mathew-  ``WORKAROUND_CVE_2024_5660``: Enables mitigation for `CVE-2024-5660`.
37af65cbb9SSona Mathew   The fix is to disable hardware page aggregation by setting CPUECTLR_EL1[46]
38af65cbb9SSona Mathew   in EL3 FW. This build option should be set to 1 if the target platform contains
39af65cbb9SSona Mathew   at least 1 CPU that requires this mitigation. Defaults to 1.
40af65cbb9SSona Mathew
4123721794SArvind Ram Prakash-  ``WORKAROUND_CVE_2024_7881``: Enables mitigation for `CVE-2024-7881`.
4223721794SArvind Ram Prakash   This build option should be set to 1 if the target platform contains at
4323721794SArvind Ram Prakash   least 1 CPU that requires this mitigation. Defaults to 1.
4423721794SArvind Ram Prakash
4534760951SPaul Beesley.. _arm_cpu_macros_errata_workarounds:
4634760951SPaul Beesley
4740d553cfSPaul BeesleyCPU Errata Workarounds
4840d553cfSPaul Beesley----------------------
4940d553cfSPaul Beesley
5040d553cfSPaul BeesleyTF-A exports a series of build flags which control the errata workarounds that
5140d553cfSPaul Beesleyare applied to each CPU by the reset handler. The errata details can be found
5240d553cfSPaul Beesleyin the CPU specific errata documents published by Arm:
53854d199bSGovindraj RajaFor example: `Cortex-A72 MPCore Software Developers Errata Notice`_
5440d553cfSPaul Beesley
5540d553cfSPaul BeesleyThe errata workarounds are implemented for a particular revision or a set of
5640d553cfSPaul Beesleyprocessor revisions. This is checked by the reset handler at runtime. Each
5740d553cfSPaul Beesleyerrata workaround is identified by its ``ID`` as specified in the processor's
5840d553cfSPaul Beesleyerrata notice document. The format of the define used to enable/disable the
5940d553cfSPaul Beesleyerrata workaround is ``ERRATA_<Processor name>_<ID>``, where the ``Processor name``
6040d553cfSPaul Beesleyis for example ``A57`` for the ``Cortex_A57`` CPU.
6140d553cfSPaul Beesley
626a0e8e80SBoyan KaratotevRefer to :ref:`firmware_design_cpu_errata_implementation` for information on how to
6334760951SPaul Beesleywrite errata workaround functions.
6440d553cfSPaul Beesley
6540d553cfSPaul BeesleyAll workarounds are disabled by default. The platform is responsible for
6640d553cfSPaul Beesleyenabling these workarounds according to its requirement by defining the
6740d553cfSPaul Beesleyerrata workaround build flags in the platform specific makefile. In case
6840d553cfSPaul Beesleythese workarounds are enabled for the wrong CPU revision then the errata
6940d553cfSPaul Beesleyworkaround is not applied. In the DEBUG build, this is indicated by
7040d553cfSPaul Beesleyprinting a warning to the crash console.
7140d553cfSPaul Beesley
7240d553cfSPaul BeesleyIn the current implementation, a platform which has more than 1 variant
7340d553cfSPaul Beesleywith different revisions of a processor has no runtime mechanism available
7440d553cfSPaul Beesleyfor it to specify which errata workarounds should be enabled or not.
7540d553cfSPaul Beesley
7640d553cfSPaul BeesleyThe value of the build flags is 0 by default, that is, disabled. A value of 1
7740d553cfSPaul Beesleywill enable it.
7840d553cfSPaul Beesley
7940d553cfSPaul BeesleyFor Cortex-A9, the following errata build flags are defined :
8040d553cfSPaul Beesley
8140d553cfSPaul Beesley-  ``ERRATA_A9_794073``: This applies errata 794073 workaround to Cortex-A9
8240d553cfSPaul Beesley   CPU. This needs to be enabled for all revisions of the CPU.
8340d553cfSPaul Beesley
8440d553cfSPaul BeesleyFor Cortex-A15, the following errata build flags are defined :
8540d553cfSPaul Beesley
8640d553cfSPaul Beesley-  ``ERRATA_A15_816470``: This applies errata 816470 workaround to Cortex-A15
8740d553cfSPaul Beesley   CPU. This needs to be enabled only for revision >= r3p0 of the CPU.
8840d553cfSPaul Beesley
8940d553cfSPaul Beesley-  ``ERRATA_A15_827671``: This applies errata 827671 workaround to Cortex-A15
9040d553cfSPaul Beesley   CPU. This needs to be enabled only for revision >= r3p0 of the CPU.
9140d553cfSPaul Beesley
9240d553cfSPaul BeesleyFor Cortex-A17, the following errata build flags are defined :
9340d553cfSPaul Beesley
9440d553cfSPaul Beesley-  ``ERRATA_A17_852421``: This applies errata 852421 workaround to Cortex-A17
9540d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r1p2 of the CPU.
9640d553cfSPaul Beesley
9740d553cfSPaul Beesley-  ``ERRATA_A17_852423``: This applies errata 852423 workaround to Cortex-A17
9840d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r1p2 of the CPU.
9940d553cfSPaul Beesley
10040d553cfSPaul BeesleyFor Cortex-A35, the following errata build flags are defined :
10140d553cfSPaul Beesley
10240d553cfSPaul Beesley-  ``ERRATA_A35_855472``: This applies errata 855472 workaround to Cortex-A35
10340d553cfSPaul Beesley   CPUs. This needs to be enabled only for revision r0p0 of Cortex-A35.
10440d553cfSPaul Beesley
10540d553cfSPaul BeesleyFor Cortex-A53, the following errata build flags are defined :
10640d553cfSPaul Beesley
10740d553cfSPaul Beesley-  ``ERRATA_A53_819472``: This applies errata 819472 workaround to all
10840d553cfSPaul Beesley   CPUs. This needs to be enabled only for revision <= r0p1 of Cortex-A53.
10940d553cfSPaul Beesley
11040d553cfSPaul Beesley-  ``ERRATA_A53_824069``: This applies errata 824069 workaround to all
11140d553cfSPaul Beesley   CPUs. This needs to be enabled only for revision <= r0p2 of Cortex-A53.
11240d553cfSPaul Beesley
11340d553cfSPaul Beesley-  ``ERRATA_A53_826319``: This applies errata 826319 workaround to Cortex-A53
11440d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r0p2 of the CPU.
11540d553cfSPaul Beesley
11640d553cfSPaul Beesley-  ``ERRATA_A53_827319``: This applies errata 827319 workaround to all
11740d553cfSPaul Beesley   CPUs. This needs to be enabled only for revision <= r0p2 of Cortex-A53.
11840d553cfSPaul Beesley
11940d553cfSPaul Beesley-  ``ERRATA_A53_835769``: This applies erratum 835769 workaround at compile and
12040d553cfSPaul Beesley   link time to Cortex-A53 CPU. This needs to be enabled for some variants of
12140d553cfSPaul Beesley   revision <= r0p4. This workaround can lead the linker to create ``*.stub``
12240d553cfSPaul Beesley   sections.
12340d553cfSPaul Beesley
12440d553cfSPaul Beesley-  ``ERRATA_A53_836870``: This applies errata 836870 workaround to Cortex-A53
12540d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r0p3 of the CPU. From
126e37dfd3cSBoyan Karatotev   r0p4 and onwards, this errata is enabled by default in hardware. Identical to
127e37dfd3cSBoyan Karatotev   ``A53_DISABLE_NON_TEMPORAL_HINT``.
12840d553cfSPaul Beesley
12940d553cfSPaul Beesley-  ``ERRATA_A53_843419``: This applies erratum 843419 workaround at link time
13040d553cfSPaul Beesley   to Cortex-A53 CPU.  This needs to be enabled for some variants of revision
13140d553cfSPaul Beesley   <= r0p4. This workaround can lead the linker to emit ``*.stub`` sections
13240d553cfSPaul Beesley   which are 4kB aligned.
13340d553cfSPaul Beesley
13440d553cfSPaul Beesley-  ``ERRATA_A53_855873``: This applies errata 855873 workaround to Cortex-A53
13540d553cfSPaul Beesley   CPUs. Though the erratum is present in every revision of the CPU,
13640d553cfSPaul Beesley   this workaround is only applied to CPUs from r0p3 onwards, which feature
13740d553cfSPaul Beesley   a chicken bit in CPUACTLR_EL1 to enable a hardware workaround.
13840d553cfSPaul Beesley   Earlier revisions of the CPU have other errata which require the same
13940d553cfSPaul Beesley   workaround in software, so they should be covered anyway.
14040d553cfSPaul Beesley
141e008a29aSManish V Badarkhe-  ``ERRATA_A53_1530924``: This applies errata 1530924 workaround to all
142e008a29aSManish V Badarkhe   revisions of Cortex-A53 CPU.
143e008a29aSManish V Badarkhe
14440d553cfSPaul BeesleyFor Cortex-A55, the following errata build flags are defined :
14540d553cfSPaul Beesley
14640d553cfSPaul Beesley-  ``ERRATA_A55_768277``: This applies errata 768277 workaround to Cortex-A55
14740d553cfSPaul Beesley   CPU. This needs to be enabled only for revision r0p0 of the CPU.
14840d553cfSPaul Beesley
14940d553cfSPaul Beesley-  ``ERRATA_A55_778703``: This applies errata 778703 workaround to Cortex-A55
15040d553cfSPaul Beesley   CPU. This needs to be enabled only for revision r0p0 of the CPU.
15140d553cfSPaul Beesley
15240d553cfSPaul Beesley-  ``ERRATA_A55_798797``: This applies errata 798797 workaround to Cortex-A55
15340d553cfSPaul Beesley   CPU. This needs to be enabled only for revision r0p0 of the CPU.
15440d553cfSPaul Beesley
15540d553cfSPaul Beesley-  ``ERRATA_A55_846532``: This applies errata 846532 workaround to Cortex-A55
15640d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r0p1 of the CPU.
15740d553cfSPaul Beesley
15840d553cfSPaul Beesley-  ``ERRATA_A55_903758``: This applies errata 903758 workaround to Cortex-A55
15940d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r0p1 of the CPU.
16040d553cfSPaul Beesley
1619af07df0SAmbroise Vincent-  ``ERRATA_A55_1221012``: This applies errata 1221012 workaround to Cortex-A55
1629af07df0SAmbroise Vincent   CPU. This needs to be enabled only for revision <= r1p0 of the CPU.
1639af07df0SAmbroise Vincent
164e008a29aSManish V Badarkhe-  ``ERRATA_A55_1530923``: This applies errata 1530923 workaround to all
165e008a29aSManish V Badarkhe   revisions of Cortex-A55 CPU.
166e008a29aSManish V Badarkhe
16740d553cfSPaul BeesleyFor Cortex-A57, the following errata build flags are defined :
16840d553cfSPaul Beesley
16940d553cfSPaul Beesley-  ``ERRATA_A57_806969``: This applies errata 806969 workaround to Cortex-A57
17040d553cfSPaul Beesley   CPU. This needs to be enabled only for revision r0p0 of the CPU.
17140d553cfSPaul Beesley
17240d553cfSPaul Beesley-  ``ERRATA_A57_813419``: This applies errata 813419 workaround to Cortex-A57
17340d553cfSPaul Beesley   CPU. This needs to be enabled only for revision r0p0 of the CPU.
17440d553cfSPaul Beesley
17540d553cfSPaul Beesley-  ``ERRATA_A57_813420``: This applies errata 813420 workaround to Cortex-A57
17640d553cfSPaul Beesley   CPU. This needs to be enabled only for revision r0p0 of the CPU.
17740d553cfSPaul Beesley
17840d553cfSPaul Beesley-  ``ERRATA_A57_814670``: This applies errata 814670 workaround to Cortex-A57
17940d553cfSPaul Beesley   CPU. This needs to be enabled only for revision r0p0 of the CPU.
18040d553cfSPaul Beesley
18140d553cfSPaul Beesley-  ``ERRATA_A57_817169``: This applies errata 817169 workaround to Cortex-A57
18240d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r0p1 of the CPU.
18340d553cfSPaul Beesley
18440d553cfSPaul Beesley-  ``ERRATA_A57_826974``: This applies errata 826974 workaround to Cortex-A57
18540d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r1p1 of the CPU.
18640d553cfSPaul Beesley
18740d553cfSPaul Beesley-  ``ERRATA_A57_826977``: This applies errata 826977 workaround to Cortex-A57
18840d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r1p1 of the CPU.
18940d553cfSPaul Beesley
19040d553cfSPaul Beesley-  ``ERRATA_A57_828024``: This applies errata 828024 workaround to Cortex-A57
19140d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r1p1 of the CPU.
19240d553cfSPaul Beesley
19340d553cfSPaul Beesley-  ``ERRATA_A57_829520``: This applies errata 829520 workaround to Cortex-A57
19440d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r1p2 of the CPU.
19540d553cfSPaul Beesley
19640d553cfSPaul Beesley-  ``ERRATA_A57_833471``: This applies errata 833471 workaround to Cortex-A57
19740d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r1p2 of the CPU.
19840d553cfSPaul Beesley
19940d553cfSPaul Beesley-  ``ERRATA_A57_859972``: This applies errata 859972 workaround to Cortex-A57
20040d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r1p3 of the CPU.
20140d553cfSPaul Beesley
202e008a29aSManish V Badarkhe-  ``ERRATA_A57_1319537``: This applies errata 1319537 workaround to all
203e008a29aSManish V Badarkhe   revisions of Cortex-A57 CPU.
20440d553cfSPaul Beesley
20540d553cfSPaul BeesleyFor Cortex-A72, the following errata build flags are defined :
20640d553cfSPaul Beesley
20740d553cfSPaul Beesley-  ``ERRATA_A72_859971``: This applies errata 859971 workaround to Cortex-A72
20840d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r0p3 of the CPU.
20940d553cfSPaul Beesley
210e008a29aSManish V Badarkhe-  ``ERRATA_A72_1319367``: This applies errata 1319367 workaround to all
211e008a29aSManish V Badarkhe   revisions of Cortex-A72 CPU.
212e008a29aSManish V Badarkhe
21340d553cfSPaul BeesleyFor Cortex-A73, the following errata build flags are defined :
21440d553cfSPaul Beesley
21540d553cfSPaul Beesley-  ``ERRATA_A73_852427``: This applies errata 852427 workaround to Cortex-A73
21640d553cfSPaul Beesley   CPU. This needs to be enabled only for revision r0p0 of the CPU.
21740d553cfSPaul Beesley
21840d553cfSPaul Beesley-  ``ERRATA_A73_855423``: This applies errata 855423 workaround to Cortex-A73
21940d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r0p1 of the CPU.
22040d553cfSPaul Beesley
22140d553cfSPaul BeesleyFor Cortex-A75, the following errata build flags are defined :
22240d553cfSPaul Beesley
22340d553cfSPaul Beesley-  ``ERRATA_A75_764081``: This applies errata 764081 workaround to Cortex-A75
22440d553cfSPaul Beesley   CPU. This needs to be enabled only for revision r0p0 of the CPU.
22540d553cfSPaul Beesley
22640d553cfSPaul Beesley-  ``ERRATA_A75_790748``: This applies errata 790748 workaround to Cortex-A75
22740d553cfSPaul Beesley    CPU. This needs to be enabled only for revision r0p0 of the CPU.
22840d553cfSPaul Beesley
22940d553cfSPaul BeesleyFor Cortex-A76, the following errata build flags are defined :
23040d553cfSPaul Beesley
23140d553cfSPaul Beesley-  ``ERRATA_A76_1073348``: This applies errata 1073348 workaround to Cortex-A76
23240d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r1p0 of the CPU.
23340d553cfSPaul Beesley
23440d553cfSPaul Beesley-  ``ERRATA_A76_1130799``: This applies errata 1130799 workaround to Cortex-A76
23540d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r2p0 of the CPU.
23640d553cfSPaul Beesley
23740d553cfSPaul Beesley-  ``ERRATA_A76_1220197``: This applies errata 1220197 workaround to Cortex-A76
23840d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r2p0 of the CPU.
23940d553cfSPaul Beesley
24040d553cfSPaul Beesley-  ``ERRATA_A76_1257314``: This applies errata 1257314 workaround to Cortex-A76
24140d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r3p0 of the CPU.
24240d553cfSPaul Beesley
24340d553cfSPaul Beesley-  ``ERRATA_A76_1262606``: This applies errata 1262606 workaround to Cortex-A76
24440d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r3p0 of the CPU.
24540d553cfSPaul Beesley
24640d553cfSPaul Beesley-  ``ERRATA_A76_1262888``: This applies errata 1262888 workaround to Cortex-A76
24740d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r3p0 of the CPU.
24840d553cfSPaul Beesley
24940d553cfSPaul Beesley-  ``ERRATA_A76_1275112``: This applies errata 1275112 workaround to Cortex-A76
25040d553cfSPaul Beesley   CPU. This needs to be enabled only for revision <= r3p0 of the CPU.
25140d553cfSPaul Beesley
252d7b08e69Sjohpow01-  ``ERRATA_A76_1791580``: This applies errata 1791580 workaround to Cortex-A76
253d7b08e69Sjohpow01   CPU. This needs to be enabled only for revision <= r4p0 of the CPU.
254d7b08e69Sjohpow01
255e008a29aSManish V Badarkhe-  ``ERRATA_A76_1165522``: This applies errata 1165522 workaround to all
256e008a29aSManish V Badarkhe   revisions of Cortex-A76 CPU. This errata is fixed in r3p0 but due to
257e008a29aSManish V Badarkhe   limitation of errata framework this errata is applied to all revisions
258e008a29aSManish V Badarkhe   of Cortex-A76 CPU.
259e008a29aSManish V Badarkhe
26055ff05f3Sjohpow01-  ``ERRATA_A76_1868343``: This applies errata 1868343 workaround to Cortex-A76
26155ff05f3Sjohpow01   CPU. This needs to be enabled only for revision <= r4p0 of the CPU.
26255ff05f3Sjohpow01
2633f0d8369Sjohpow01-  ``ERRATA_A76_1946160``: This applies errata 1946160 workaround to Cortex-A76
2643f0d8369Sjohpow01   CPU. This needs to be enabled only for revisions r3p0 - r4p1 of the CPU.
2653f0d8369Sjohpow01
26649273098SBipin Ravi-  ``ERRATA_A76_2743102``: This applies errata 2743102 workaround to Cortex-A76
26749273098SBipin Ravi   CPU. This needs to be enabled for all revisions <= r4p1 of the CPU and is
26849273098SBipin Ravi   still open.
26949273098SBipin Ravi
27062bbfe82Sjohpow01For Cortex-A77, the following errata build flags are defined :
27162bbfe82Sjohpow01
272aa3efe3dSlaurenw-arm-  ``ERRATA_A77_1508412``: This applies errata 1508412 workaround to Cortex-A77
273aa3efe3dSlaurenw-arm   CPU. This needs to be enabled only for revision <= r1p0 of the CPU.
274aa3efe3dSlaurenw-arm
27535c75377Sjohpow01-  ``ERRATA_A77_1925769``: This applies errata 1925769 workaround to Cortex-A77
27635c75377Sjohpow01   CPU. This needs to be enabled only for revision <= r1p1 of the CPU.
27735c75377Sjohpow01
278a492edc4Slaurenw-arm-  ``ERRATA_A77_1946167``: This applies errata 1946167 workaround to Cortex-A77
279a492edc4Slaurenw-arm   CPU. This needs to be enabled only for revision <= r1p1 of the CPU.
280a492edc4Slaurenw-arm
2813f0bec7cSjohpow01-  ``ERRATA_A77_1791578``: This applies errata 1791578 workaround to Cortex-A77
2823f0bec7cSjohpow01   CPU. This needs to be enabled for r0p0, r1p0, and r1p1, it is still open.
2833f0bec7cSjohpow01
2847bf1a7aaSBipin Ravi-  ``ERRATA_A77_2356587``: This applies errata 2356587 workaround to Cortex-A77
2857bf1a7aaSBipin Ravi   CPU. This needs to be enabled for r0p0, r1p0, and r1p1, it is still open.
2867bf1a7aaSBipin Ravi
28708e2fdbdSBoyan Karatotev -  ``ERRATA_A77_1800714``: This applies errata 1800714 workaround to Cortex-A77
28808e2fdbdSBoyan Karatotev    CPU. This needs to be enabled for revisions <= r1p1 of the CPU.
28908e2fdbdSBoyan Karatotev
2904fdeaffeSBoyan Karatotev -  ``ERRATA_A77_2743100``: This applies errata 2743100 workaround to Cortex-A77
2914fdeaffeSBoyan Karatotev    CPU. This needs to be enabled for r0p0, r1p0, and r1p1, it is still open.
2924fdeaffeSBoyan Karatotev
2933f35709cSJimmy BrissonFor Cortex-A78, the following errata build flags are defined :
29483e95524SMadhukar Pappireddy
2953f35709cSJimmy Brisson-  ``ERRATA_A78_1688305``: This applies errata 1688305 workaround to Cortex-A78
2963f35709cSJimmy Brisson   CPU. This needs to be enabled only for revision r0p0 - r1p0 of the CPU.
29783e95524SMadhukar Pappireddy
298e26c59d2Sjohpow01-  ``ERRATA_A78_1941498``: This applies errata 1941498 workaround to Cortex-A78
299e26c59d2Sjohpow01   CPU. This needs to be enabled for revisions r0p0, r1p0, and r1p1 of the CPU.
300e26c59d2Sjohpow01
3013a2710dcSjohpow01-  ``ERRATA_A78_1951500``: This applies errata 1951500 workaround to Cortex-A78
3023a2710dcSjohpow01   CPU. This needs to be enabled for revisions r1p0 and r1p1, r0p0 has the same
3033a2710dcSjohpow01   issue but there is no workaround for that revision.
3043a2710dcSjohpow01
3051a691455Sjohpow01-  ``ERRATA_A78_1821534``: This applies errata 1821534 workaround to Cortex-A78
3061a691455Sjohpow01   CPU. This needs to be enabled for revisions r0p0 and r1p0.
3071a691455Sjohpow01
30800bee997Snayanpatel-arm-  ``ERRATA_A78_1952683``: This applies errata 1952683 workaround to Cortex-A78
30900bee997Snayanpatel-arm   CPU. This needs to be enabled for revision r0p0, it is fixed in r1p0.
31000bee997Snayanpatel-arm
3111ea9190cSjohpow01-  ``ERRATA_A78_2242635``: This applies errata 2242635 workaround to Cortex-A78
3121ea9190cSjohpow01   CPU. This needs to be enabled for revisions r1p0, r1p1, and r1p2. The issue
3131ea9190cSjohpow01   is present in r0p0 but there is no workaround. It is still open.
3141ea9190cSjohpow01
3155d796b3aSJohn Powell-  ``ERRATA_A78_2376745``: This applies errata 2376745 workaround to Cortex-A78
3165d796b3aSJohn Powell   CPU. This needs to be enabled for revisions r0p0, r1p0, r1p1, and r1p2, and
3175d796b3aSJohn Powell   it is still open.
3185d796b3aSJohn Powell
3193b577ed5SJohn Powell-  ``ERRATA_A78_2395406``: This applies errata 2395406 workaround to Cortex-A78
3203b577ed5SJohn Powell   CPU. This needs to be enabled for revisions r0p0, r1p0, r1p1, and r1p2, and
3213b577ed5SJohn Powell   it is still open.
3223b577ed5SJohn Powell
323ab062f05SSona Mathew- ``ERRATA_A78_2712571``: This applies erratum 2712571 workaround to Cortex-A78
324ab062f05SSona Mathew   CPU, this erratum affects system configurations that do not use an ARM
325ab062f05SSona Mathew   interconnect IP. This needs to be enabled for revisions r0p0, r1p0, r1p1
326ab062f05SSona Mathew   and r1p2 and it is still open.
327ab062f05SSona Mathew
328a63332c5SBipin Ravi-  ``ERRATA_A78_2742426``: This applies erratum 2742426 workaround to Cortex-A78
329a63332c5SBipin Ravi   CPU. This needs to be enabled for revisions r0p0, r1p0, r1p1 and r1p2 and
330a63332c5SBipin Ravi   it is still open.
331a63332c5SBipin Ravi
332b10afcceSBipin Ravi-  ``ERRATA_A78_2772019``: This applies errata 2772019 workaround to Cortex-A78
333b10afcceSBipin Ravi   CPU. This needs to be enabled for revisions r0p0, r1p0, r1p1, and r1p2, and
334b10afcceSBipin Ravi   it is still open.
335b10afcceSBipin Ravi
3367d1700c4SSona Mathew-  ``ERRATA_A78_2779479``: This applies erratum 2779479 workaround to Cortex-A78
3377d1700c4SSona Mathew   CPU. This needs to be enabled for revisions r0p0, r1p0, r1p1 and r1p2 and
3387d1700c4SSona Mathew   it is still open.
3397d1700c4SSona Mathew
3408913047aSVarun WadekarFor Cortex-A78AE, the following errata build flags are defined :
3418913047aSVarun Wadekar
34292e87084SVarun Wadekar- ``ERRATA_A78_AE_1941500`` : This applies errata 1941500 workaround to
34392e87084SVarun Wadekar   Cortex-A78AE CPU. This needs to be enabled for revisions r0p0 and r0p1.
34492e87084SVarun Wadekar   This erratum is still open.
34547d6f5ffSVarun Wadekar
34692e87084SVarun Wadekar- ``ERRATA_A78_AE_1951502`` : This applies errata 1951502 workaround to
34792e87084SVarun Wadekar  Cortex-A78AE CPU. This needs to be enabled for revisions r0p0 and r0p1. This
34892e87084SVarun Wadekar  erratum is still open.
34992e87084SVarun Wadekar
35092e87084SVarun Wadekar- ``ERRATA_A78_AE_2376748`` : This applies errata 2376748 workaround to
351c814619aSSona Mathew  Cortex-A78AE CPU. This needs to be enabled for revisions r0p0, r0p1 and r0p2.
352c814619aSSona Mathew  This erratum is still open.
3538913047aSVarun Wadekar
3543f4d81dfSVarun Wadekar- ``ERRATA_A78_AE_2395408`` : This applies errata 2395408 workaround to
3553f4d81dfSVarun Wadekar  Cortex-A78AE CPU. This needs to be enabled for revisions r0p0 and r0p1. This
3563f4d81dfSVarun Wadekar  erratum is still open.
3573f4d81dfSVarun Wadekar
358ab062f05SSona Mathew- ``ERRATA_A78_AE_2712574`` : This applies erratum 2712574 workaround to
359ab062f05SSona Mathew  Cortex-A78AE CPU. This erratum affects system configurations that do not use
360ab062f05SSona Mathew  an ARM interconnect IP. This needs to be enabled for revisions r0p0, r0p1 and
361ab062f05SSona Mathew  r0p2. This erratum is still open.
362ab062f05SSona Mathew
3638008babdSlaurenw-armFor Cortex-A78C, the following errata build flags are defined :
3648008babdSlaurenw-arm
365672eb21eSBipin Ravi- ``ERRATA_A78C_1827430`` : This applies errata 1827430 workaround to
366672eb21eSBipin Ravi  Cortex-A78C CPU. This needs to be enabled for revision r0p0. The erratum is
367672eb21eSBipin Ravi  fixed in r0p1.
368672eb21eSBipin Ravi
369b01a59ebSBipin Ravi- ``ERRATA_A78C_1827440`` : This applies errata 1827440 workaround to
370b01a59ebSBipin Ravi  Cortex-A78C CPU. This needs to be enabled for revision r0p0. The erratum is
371b01a59ebSBipin Ravi  fixed in r0p1.
372b01a59ebSBipin Ravi
3736979f47fSBipin Ravi- ``ERRATA_A78C_2242638`` : This applies errata 2242638 workaround to
3746979f47fSBipin Ravi  Cortex-A78C CPU. This needs to be enabled for revisions r0p1, r0p2 and
3756979f47fSBipin Ravi  it is still open.
3766979f47fSBipin Ravi
3775d3c1f58SAkram Ahmad- ``ERRATA_A78C_2376749`` : This applies errata 2376749 workaround to
3785d3c1f58SAkram Ahmad  Cortex-A78C CPU. This needs to be enabled for revisions r0p1 and r0p2. This
3795d3c1f58SAkram Ahmad  erratum is still open.
3805d3c1f58SAkram Ahmad
3814b6f0026SAkram Ahmad- ``ERRATA_A78C_2395411`` : This applies errata 2395411 workaround to
3824b6f0026SAkram Ahmad  Cortex-A78C CPU. This needs to be enabled for revisions r0p1 and r0p2. This
3834b6f0026SAkram Ahmad  erratum is still open.
3844b6f0026SAkram Ahmad
38568cac6a0SBipin Ravi- ``ERRATA_A78C_2683027`` : This applies errata 2683027 workaround to
38668cac6a0SBipin Ravi  Cortex-A78C CPU. This needs to be enabled for revisions r0p1 and r0p2. This
38768cac6a0SBipin Ravi  erratum is still open.
38868cac6a0SBipin Ravi
389ab062f05SSona Mathew- ``ERRATA_A78C_2712575`` : This applies erratum 2712575 workaround to
390ab062f05SSona Mathew  Cortex-A78C CPU, this erratum affects system configurations that do not use
391ab062f05SSona Mathew  an ARM interconnect IP. This needs to be enabled for revisions r0p1 and r0p2
392ab062f05SSona Mathew  and is still open.
393ab062f05SSona Mathew
39481d4094dSSona Mathew- ``ERRATA_A78C_2743232`` : This applies erratum 2743232 workaround to
39581d4094dSSona Mathew  Cortex-A78C CPU. This needs to be enabled for revisions r0p1 and r0p2.
39681d4094dSSona Mathew  This erratum is still open.
39781d4094dSSona Mathew
39800230e37SBipin Ravi- ``ERRATA_A78C_2772121`` : This applies errata 2772121 workaround to
39900230e37SBipin Ravi  Cortex-A78C CPU. This needs to be enabled for revisions r0p0, r0p1 and r0p2.
40000230e37SBipin Ravi  This erratum is still open.
40100230e37SBipin Ravi
40266bf3ba4SBipin Ravi- ``ERRATA_A78C_2779484`` : This applies errata 2779484 workaround to
40366bf3ba4SBipin Ravi  Cortex-A78C CPU. This needs to be enabled for revisions r0p1 and r0p2.
40466bf3ba4SBipin Ravi  This erratum is still open.
40566bf3ba4SBipin Ravi
4067b76c20dSOkash KhawajaFor Cortex-X1 CPU, the following errata build flags are defined:
4077b76c20dSOkash Khawaja
4087b76c20dSOkash Khawaja- ``ERRATA_X1_1821534`` : This applies errata 1821534 workaround to Cortex-X1
4097b76c20dSOkash Khawaja   CPU. This needs to be enabled only for revision <= r1p0 of the CPU.
4107b76c20dSOkash Khawaja
4117b76c20dSOkash Khawaja- ``ERRATA_X1_1688305`` : This applies errata 1688305 workaround to Cortex-X1
4127b76c20dSOkash Khawaja   CPU. This needs to be enabled only for revision <= r1p0 of the CPU.
4137b76c20dSOkash Khawaja
4147b76c20dSOkash Khawaja- ``ERRATA_X1_1827429`` : This applies errata 1827429 workaround to Cortex-X1
4157b76c20dSOkash Khawaja   CPU. This needs to be enabled only for revision <= r1p0 of the CPU.
4167b76c20dSOkash Khawaja
417a601afe1Slauwal01For Neoverse N1, the following errata build flags are defined :
418a601afe1Slauwal01
419a601afe1Slauwal01-  ``ERRATA_N1_1073348``: This applies errata 1073348 workaround to Neoverse-N1
420a601afe1Slauwal01   CPU. This needs to be enabled only for revision r0p0 and r1p0 of the CPU.
421a601afe1Slauwal01
422e34606f2Slauwal01-  ``ERRATA_N1_1130799``: This applies errata 1130799 workaround to Neoverse-N1
423e34606f2Slauwal01   CPU. This needs to be enabled only for revision <= r2p0 of the CPU.
424e34606f2Slauwal01
4252017ab24Slauwal01-  ``ERRATA_N1_1165347``: This applies errata 1165347 workaround to Neoverse-N1
4262017ab24Slauwal01   CPU. This needs to be enabled only for revision <= r2p0 of the CPU.
4272017ab24Slauwal01
428ef5fa7d4Slauwal01-  ``ERRATA_N1_1207823``: This applies errata 1207823 workaround to Neoverse-N1
429ef5fa7d4Slauwal01   CPU. This needs to be enabled only for revision <= r2p0 of the CPU.
430ef5fa7d4Slauwal01
4319eceb020Slauwal01-  ``ERRATA_N1_1220197``: This applies errata 1220197 workaround to Neoverse-N1
4329eceb020Slauwal01   CPU. This needs to be enabled only for revision <= r2p0 of the CPU.
4339eceb020Slauwal01
434335b3c79Slauwal01-  ``ERRATA_N1_1257314``: This applies errata 1257314 workaround to Neoverse-N1
435335b3c79Slauwal01   CPU. This needs to be enabled only for revision <= r3p0 of the CPU.
436335b3c79Slauwal01
437411f4959Slauwal01-  ``ERRATA_N1_1262606``: This applies errata 1262606 workaround to Neoverse-N1
438411f4959Slauwal01   CPU. This needs to be enabled only for revision <= r3p0 of the CPU.
439411f4959Slauwal01
44011c48370Slauwal01-  ``ERRATA_N1_1262888``: This applies errata 1262888 workaround to Neoverse-N1
44111c48370Slauwal01   CPU. This needs to be enabled only for revision <= r3p0 of the CPU.
44211c48370Slauwal01
4434d8801feSlauwal01-  ``ERRATA_N1_1275112``: This applies errata 1275112 workaround to Neoverse-N1
4444d8801feSlauwal01   CPU. This needs to be enabled only for revision <= r3p0 of the CPU.
4454d8801feSlauwal01
4465f5d0763SAndre Przywara-  ``ERRATA_N1_1315703``: This applies errata 1315703 workaround to Neoverse-N1
4475f5d0763SAndre Przywara   CPU. This needs to be enabled only for revision <= r3p0 of the CPU.
4485f5d0763SAndre Przywara
44980942622Slaurenw-arm-  ``ERRATA_N1_1542419``: This applies errata 1542419 workaround to Neoverse-N1
45080942622Slaurenw-arm   CPU. This needs to be enabled only for revisions r3p0 - r4p0 of the CPU.
45180942622Slaurenw-arm
45261f0ffc4Sjohpow01-  ``ERRATA_N1_1868343``: This applies errata 1868343 workaround to Neoverse-N1
45361f0ffc4Sjohpow01   CPU. This needs to be enabled only for revision <= r4p0 of the CPU.
45461f0ffc4Sjohpow01
455263ee781Sjohpow01-  ``ERRATA_N1_1946160``: This applies errata 1946160 workaround to Neoverse-N1
456263ee781Sjohpow01   CPU. This needs to be enabled for revisions r3p0, r3p1, r4p0, and r4p1, for
457263ee781Sjohpow01   revisions r0p0, r1p0, and r2p0 there is no workaround.
458263ee781Sjohpow01
4598ce40503SBipin Ravi-  ``ERRATA_N1_2743102``: This applies errata 2743102 workaround to Neoverse-N1
4608ce40503SBipin Ravi   CPU. This needs to be enabled for all revisions <= r4p1 of the CPU and is
4618ce40503SBipin Ravi   still open.
4628ce40503SBipin Ravi
46333e3e925Sjohpow01For Neoverse V1, the following errata build flags are defined :
46433e3e925Sjohpow01
46514a6fed5SJuan Pablo Conde-  ``ERRATA_V1_1618635``: This applies errata 1618635 workaround to Neoverse-V1
46614a6fed5SJuan Pablo Conde   CPU. This needs to be enabled for revision r0p0 of the CPU, it is fixed in
46714a6fed5SJuan Pablo Conde   r1p0.
46814a6fed5SJuan Pablo Conde
4694789cf66Slaurenw-arm-  ``ERRATA_V1_1774420``: This applies errata 1774420 workaround to Neoverse-V1
4704789cf66Slaurenw-arm   CPU. This needs to be enabled only for revisions r0p0 and r1p0, it is fixed
4714789cf66Slaurenw-arm   in r1p1.
4724789cf66Slaurenw-arm
47333e3e925Sjohpow01-  ``ERRATA_V1_1791573``: This applies errata 1791573 workaround to Neoverse-V1
47433e3e925Sjohpow01   CPU. This needs to be enabled only for revisions r0p0 and r1p0, it is fixed
47533e3e925Sjohpow01   in r1p1.
47633e3e925Sjohpow01
477143b1965Slaurenw-arm-  ``ERRATA_V1_1852267``: This applies errata 1852267 workaround to Neoverse-V1
478143b1965Slaurenw-arm   CPU. This needs to be enabled only for revisions r0p0 and r1p0, it is fixed
479143b1965Slaurenw-arm   in r1p1.
480143b1965Slaurenw-arm
481741dd04cSlaurenw-arm-  ``ERRATA_V1_1925756``: This applies errata 1925756 workaround to Neoverse-V1
482741dd04cSlaurenw-arm   CPU. This needs to be enabled for r0p0, r1p0, and r1p1, it is still open.
483741dd04cSlaurenw-arm
484182ce101Sjohpow01-  ``ERRATA_V1_1940577``: This applies errata 1940577 workaround to Neoverse-V1
485182ce101Sjohpow01   CPU. This needs to be enabled only for revision r1p0 and r1p1 of the
486182ce101Sjohpow01   CPU.
487182ce101Sjohpow01
4881a8804c3Sjohpow01-  ``ERRATA_V1_1966096``: This applies errata 1966096 workaround to Neoverse-V1
4891a8804c3Sjohpow01   CPU. This needs to be enabled for revisions r1p0 and r1p1 of the CPU, the
4901a8804c3Sjohpow01   issue is present in r0p0 as well but there is no workaround for that
4911a8804c3Sjohpow01   revision.  It is still open.
4921a8804c3Sjohpow01
493100d4029Sjohpow01-  ``ERRATA_V1_2139242``: This applies errata 2139242 workaround to Neoverse-V1
494100d4029Sjohpow01   CPU. This needs to be enabled for revisions r0p0, r1p0, and r1p1 of the
495100d4029Sjohpow01   CPU.  It is still open.
496100d4029Sjohpow01
4974c8fe6b1Sjohpow01-  ``ERRATA_V1_2216392``: This applies errata 2216392 workaround to Neoverse-V1
4984c8fe6b1Sjohpow01   CPU. This needs to be enabled for revisions r1p0 and r1p1 of the CPU, the
4994c8fe6b1Sjohpow01   issue is present in r0p0 as well but there is no workaround for that
5004c8fe6b1Sjohpow01   revision.  It is still open.
5014c8fe6b1Sjohpow01
50239eb5ddbSBipin Ravi-  ``ERRATA_V1_2294912``: This applies errata 2294912 workaround to Neoverse-V1
503ab2b56dfSSona Mathew   CPU. This needs to be enabled for revisions r0p0, r1p0, and r1p1 and r1p2 of
504ab2b56dfSSona Mathew   the CPU.
50557b73d55SBipin Ravi
50671ed9173SSona Mathew-  ``ERRATA_V1_2348377``: This applies errata 2348377 workaroud to Neoverse-V1
50771ed9173SSona Mathew   CPU. This needs to be enabled for revisions r0p0, r1p0 and r1p1 of the CPU.
50871ed9173SSona Mathew   It has been fixed in r1p2.
50971ed9173SSona Mathew
51057b73d55SBipin Ravi-  ``ERRATA_V1_2372203``: This applies errata 2372203 workaround to Neoverse-V1
51157b73d55SBipin Ravi   CPU. This needs to be enabled for revisions r0p0, r1p0 and r1p1 of the CPU.
51239eb5ddbSBipin Ravi   It is still open.
51339eb5ddbSBipin Ravi
514ab062f05SSona Mathew- ``ERRATA_V1_2701953``: This applies erratum 2701953 workaround to Neoverse-V1
515ab062f05SSona Mathew   CPU, this erratum affects system configurations that do not use an ARM
516ab062f05SSona Mathew   interconnect IP. This needs to be enabled for revisions r0p0, r1p0 and r1p1.
517ab062f05SSona Mathew   It has been fixed in r1p2.
518ab062f05SSona Mathew
51931747f05SBipin Ravi-  ``ERRATA_V1_2743093``: This applies errata 2743093 workaround to Neoverse-V1
52031747f05SBipin Ravi   CPU. This needs to be enabled for revisions r0p0, r1p0, r1p1 and r1p2 of the
52131747f05SBipin Ravi   CPU. It is still open.
52231747f05SBipin Ravi
523f1c3eae9SSona Mathew-  ``ERRATA_V1_2743233``: This applies erratum 2743233 workaround to Neoverse-V1
524f1c3eae9SSona Mathew   CPU. This needs to be enabled for revisions r0p0, r1p0, r1p1, and r1p2 of the
525f1c3eae9SSona Mathew   CPU. It is still open.
526f1c3eae9SSona Mathew
5272757da06SSona Mathew-  ``ERRATA_V1_2779461``: This applies erratum 2779461 workaround to Neoverse-V1
5282757da06SSona Mathew   CPU. This needs to be enabled for revisions r0p0, r1p0, r1p1, r1p2 of the
5292757da06SSona Mathew   CPU. It is still open.
5302757da06SSona Mathew
531ab062f05SSona MathewFor Neoverse V2, the following errata build flags are defined :
532ab062f05SSona Mathew
533c0f8ce53SBipin Ravi-  ``ERRATA_V2_2618597``: This applies errata 2618597 workaround to Neoverse-V2
534c0f8ce53SBipin Ravi   CPU. This needs to be enabled for revisions r0p0 and r0p1. It is fixed in
535c0f8ce53SBipin Ravi   r0p2.
536c0f8ce53SBipin Ravi
537912c4090SBipin Ravi-  ``ERRATA_V2_2662553``: This applies errata 2662553 workaround to Neoverse-V2
538912c4090SBipin Ravi   CPU. This needs to be enabled for revisions r0p0 and r0p1. It is fixed in
539912c4090SBipin Ravi   r0p2.
540912c4090SBipin Ravi
541ab062f05SSona Mathew-  ``ERRATA_V2_2719103``: This applies errata 2719103 workaround to Neoverse-V2
542ab062f05SSona Mathew   CPU, this affects system configurations that do not use and ARM interconnect
543ab062f05SSona Mathew   IP. This needs to be enabled for revisions r0p0 and r0p1. It has been fixed
544ab062f05SSona Mathew   in r0p2.
545ab062f05SSona Mathew
546b0114025SBipin Ravi-  ``ERRATA_V2_2719105``: This applies errata 2719105 workaround to Neoverse-V2
547b0114025SBipin Ravi   CPU. This needs to be enabled for revisions r0p0 and r0p1. It is fixed in
548b0114025SBipin Ravi   r0p2.
549b0114025SBipin Ravi
55058dd153cSBipin Ravi-  ``ERRATA_V2_2743011``: This applies errata 2743011 workaround to Neoverse-V2
55158dd153cSBipin Ravi   CPU. This needs to be enabled for revisions r0p0 and r0p1. It is fixed in
55258dd153cSBipin Ravi   r0p2.
55358dd153cSBipin Ravi
554ff342643SBipin Ravi-  ``ERRATA_V2_2779510``: This applies errata 2779510 workaround to Neoverse-V2
555ff342643SBipin Ravi   CPU. This needs to be enabled for revisions r0p0 and r0p1. It is fixed in
556ff342643SBipin Ravi   r0p2.
557ff342643SBipin Ravi
55840c81ed5SMoritz Fischer-  ``ERRATA_V2_2801372``: This applies errata 2801372 workaround to Neoverse-V2
55940c81ed5SMoritz Fischer   CPU, this affects all configurations. This needs to be enabled for revisions
56040c81ed5SMoritz Fischer   r0p0 and r0p1. It has been fixed in r0p2.
56140c81ed5SMoritz Fischer
56298ea7329SArvind Ram Prakash-  ``ERRATA_V2_3701771``: This applies errata 3701771 workaround to Neoverse-V2
56398ea7329SArvind Ram Prakash   CPU. This needs to be enabled for revisions r0p0, r0p1 and r0p2 and is
56498ea7329SArvind Ram Prakash   still open.
56598ea7329SArvind Ram Prakash
5667d947650SArvind Ram Prakash-  ``ERRATA_V2_3841324``: This applies errata 3841324 workaround to Neoverse-V2
5677d947650SArvind Ram Prakash   CPU. This needs to be enabled only for revisions r0p0 and r0p1 of
5687d947650SArvind Ram Prakash   the CPU. It is fixed in r0p2.
5697d947650SArvind Ram Prakash
570e25fc9dfSGovindraj RajaFor Neoverse V3, the following errata build flags are defined :
571e25fc9dfSGovindraj Raja
5725f32fd21SGovindraj Raja- ``ERRATA_V3_2970647``: This applies errata 2970647 workaround to Neoverse-V3
5735f32fd21SGovindraj Raja  CPU. This needs to be enabled for revision r0p0. It is fixed in r0p1.
5745f32fd21SGovindraj Raja
575e25fc9dfSGovindraj Raja- ``ERRATA_V3_3701767``: This applies errata 3701767 workaround to Neoverse-V3
576e25fc9dfSGovindraj Raja  CPU. This needs to be enabled for revisions r0p0, r0p1, r0p2 of the CPU and
577e25fc9dfSGovindraj Raja  is still open.
578e25fc9dfSGovindraj Raja
579fbcf54aeSnayanpatel-armFor Cortex-A710, the following errata build flags are defined :
580fbcf54aeSnayanpatel-arm
5814467348bSJohn Powell-  ``ERRATA_A710_1901946``: This applies errata 1901946 workaround to
5824467348bSJohn Powell   Cortex-A710 CPU. This needs to be enabled only for revision r1p0. It has
5834467348bSJohn Powell   been fixed in r2p0.
5844467348bSJohn Powell
585df067c0aSJohn Powell-  ``ERRATA_A710_1916945``: This applies errata 1916945 workaround to
586df067c0aSJohn Powell   Cortex-A710 CPU. This needs to be enabled only for revisions r0p0 and r1p0.
587df067c0aSJohn Powell   It has been fixed in r2p0.
588df067c0aSJohn Powell
589d91c4177SJohn Powell-  ``ERRATA_A710_1917258``: This applies errata 1917258 workaround to
590d91c4177SJohn Powell   Cortex-A710 CPU. This needs to be enabled only for revisions r0p0 and r1p0.
591d91c4177SJohn Powell   It has been fixed in r2p0.
592d91c4177SJohn Powell
593cb2702c4SJohn Powell-  ``ERRATA_A710_1927200``: This applies errata 1927200 workaround to
594cb2702c4SJohn Powell   Cortex-A710 CPU. This needs to be enabled only for revisions r0p0 and r1p0.
595cb2702c4SJohn Powell   It has been fixed in r2p0.
596cb2702c4SJohn Powell
597fbcf54aeSnayanpatel-arm-  ``ERRATA_A710_1987031``: This applies errata 1987031 workaround to
598fbcf54aeSnayanpatel-arm   Cortex-A710 CPU. This needs to be enabled only for revisions r0p0, r1p0 and
599fbcf54aeSnayanpatel-arm   r2p0 of the CPU. It is still open.
600fbcf54aeSnayanpatel-arm
601a64bcc2bSnayanpatel-arm-  ``ERRATA_A710_2081180``: This applies errata 2081180 workaround to
602a64bcc2bSnayanpatel-arm   Cortex-A710 CPU. This needs to be enabled only for revisions r0p0, r1p0 and
603a64bcc2bSnayanpatel-arm   r2p0 of the CPU. It is still open.
604a64bcc2bSnayanpatel-arm
605213afde9SBipin Ravi-  ``ERRATA_A710_2055002``: This applies errata 2055002 workaround to
606213afde9SBipin Ravi   Cortex-A710 CPU. This needs to be enabled for revisions r1p0, r2p0 of the CPU
607213afde9SBipin Ravi   and is still open.
608213afde9SBipin Ravi
609afc2ed63SBipin Ravi-  ``ERRATA_A710_2017096``: This applies errata 2017096 workaround to
610afc2ed63SBipin Ravi   Cortex-A710 CPU. This needs to be enabled for revisions r0p0, r1p0 and r2p0
611afc2ed63SBipin Ravi   of the CPU and is still open.
612afc2ed63SBipin Ravi
61395fe195dSnayanpatel-arm-  ``ERRATA_A710_2083908``: This applies errata 2083908 workaround to
61495fe195dSnayanpatel-arm   Cortex-A710 CPU. This needs to be enabled for revision r2p0 of the CPU and
61595fe195dSnayanpatel-arm   is still open.
61695fe195dSnayanpatel-arm
617cfe1a8f7SBipin Ravi-  ``ERRATA_A710_2267065``: This applies errata 2267065 workaround to
618cfe1a8f7SBipin Ravi   Cortex-A710 CPU. This needs to be enabled for revisions r0p0, r1p0 and r2p0
619cfe1a8f7SBipin Ravi   of the CPU and is fixed in r2p1.
620cfe1a8f7SBipin Ravi
6218a855bd2SBipin Ravi-  ``ERRATA_A710_2136059``: This applies errata 2136059 workaround to
6228a855bd2SBipin Ravi   Cortex-A710 CPU. This needs to be enabled for revisions r0p0, r1p0 and r2p0
6238a855bd2SBipin Ravi   of the CPU and is fixed in r2p1.
6248a855bd2SBipin Ravi
6253280e5e6SAkram Ahmad-  ``ERRATA_A710_2147715``: This applies errata 2147715 workaround to
6263280e5e6SAkram Ahmad   Cortex-A710 CPU. This needs to be enabled for revision r2p0 of the CPU
6273280e5e6SAkram Ahmad   and is fixed in r2p1.
6283280e5e6SAkram Ahmad
629b781fcf1SJayanth Dodderi Chidanand-  ``ERRATA_A710_2216384``: This applies errata 2216384 workaround to
630b781fcf1SJayanth Dodderi Chidanand   Cortex-A710 CPU. This needs to be enabled for revisions r0p0, r1p0 and r2p0
631b781fcf1SJayanth Dodderi Chidanand   of the CPU and is fixed in r2p1.
632b781fcf1SJayanth Dodderi Chidanand
633ef934cd1Sjohpow01-  ``ERRATA_A710_2282622``: This applies errata 2282622 workaround to
63489d85ad0SBipin Ravi   Cortex-A710 CPU. This needs to be enabled for revisions r0p0, r1p0, r2p0 and
63589d85ad0SBipin Ravi   r2p1 of the CPU and is still open.
636ef934cd1Sjohpow01
637888eafa0SBoyan Karatotev- ``ERRATA_A710_2291219``: This applies errata 2291219 workaround to
638888eafa0SBoyan Karatotev   Cortex-A710 CPU. This needs to be enabled for revisions r0p0, r1p0 and r2p0
639888eafa0SBoyan Karatotev   of the CPU and is fixed in r2p1.
640888eafa0SBoyan Karatotev
641af220ebbSjohpow01-  ``ERRATA_A710_2008768``: This applies errata 2008768 workaround to
642af220ebbSjohpow01   Cortex-A710 CPU. This needs to be enabled for revisions r0p0, r1p0 and r2p0
643af220ebbSjohpow01   of the CPU and is fixed in r2p1.
644af220ebbSjohpow01
6453220f05eSBipin Ravi-  ``ERRATA_A710_2371105``: This applies errata 2371105 workaround to
6463220f05eSBipin Ravi   Cortex-A710 CPU. This needs to be enabled for revisions r0p0, r1p0 and r2p0
6473220f05eSBipin Ravi   of the CPU and is fixed in r2p1.
6483220f05eSBipin Ravi
649ab062f05SSona Mathew-  ``ERRATA_A710_2701952``: This applies erratum 2701952 workaround to Cortex-A710
650ab062f05SSona Mathew   CPU, and applies to system configurations that do not use and ARM
651ab062f05SSona Mathew   interconnect IP. This needs to be enabled for r0p0, r1p0, r2p0 and r2p1 and
652ab062f05SSona Mathew   is still open.
653ab062f05SSona Mathew
654d7bc2cb4SBipin Ravi-  ``ERRATA_A710_2742423``: This applies errata 2742423 workaround to
655d7bc2cb4SBipin Ravi   Cortex-A710 CPU. This needs to be enabled for revisions r0p0, r1p0, r2p0 and
656d7bc2cb4SBipin Ravi   r2p1 of the CPU and is still open.
657d7bc2cb4SBipin Ravi
658b87b02cfSBipin Ravi-  ``ERRATA_A710_2768515``: This applies errata 2768515 workaround to
659b87b02cfSBipin Ravi   Cortex-A710 CPU. This needs to be enabled for revisions r0p0, r1p0, r2p0 and
660b87b02cfSBipin Ravi   r2p1 of the CPU and is still open.
661b87b02cfSBipin Ravi
662c9508d6aSSona Mathew-  ``ERRATA_A710_2778471``: This applies errata 2778471 workaround to Cortex-A710
663c9508d6aSSona Mathew   CPU. This needs to be enabled for revisions r0p0, r1p0, r2p0 and r2p1 of the
664c9508d6aSSona Mathew   CPU and is still open.
665c9508d6aSSona Mathew
666463b5b4aSGovindraj Raja- ``ERRATA_A710_3701772``: This applies errata 3701772 workaround to Cortex-A710
667463b5b4aSGovindraj Raja  CPU. This needs to be enabled for revisions r0p0, r1p0, r2p0, r2p1 of the
668463b5b4aSGovindraj Raja  CPU and is still open.
669463b5b4aSGovindraj Raja
67065e04f27SBipin RaviFor Neoverse N2, the following errata build flags are defined :
67165e04f27SBipin Ravi
6725819e23bSnayanpatel-arm-  ``ERRATA_N2_2002655``: This applies errata 2002655 workaround to Neoverse-N2
673d6d34b39SArvind Ram Prakash   CPU. This needs to be enabled for revision r0p0 of the CPU and is fixed in r0p1.
6745819e23bSnayanpatel-arm
67574bfe31fSBipin Ravi-  ``ERRATA_N2_2009478``: This applies errata 2009478 workaround to Neoverse-N2
67674bfe31fSBipin Ravi   CPU. This needs to be enabled for revision r0p0 of the CPU and is fixed in r0p1.
67774bfe31fSBipin Ravi
67865e04f27SBipin Ravi-  ``ERRATA_N2_2067956``: This applies errata 2067956 workaround to Neoverse-N2
679d6d34b39SArvind Ram Prakash   CPU. This needs to be enabled for revision r0p0 of the CPU and is fixed in r0p1.
68065e04f27SBipin Ravi
6814618b2bfSBipin Ravi-  ``ERRATA_N2_2025414``: This applies errata 2025414 workaround to Neoverse-N2
682d6d34b39SArvind Ram Prakash   CPU. This needs to be enabled for revision r0p0 of the CPU and is fixed in r0p1.
6834618b2bfSBipin Ravi
6847cfae932SBipin Ravi-  ``ERRATA_N2_2189731``: This applies errata 2189731 workaround to Neoverse-N2
685d6d34b39SArvind Ram Prakash   CPU. This needs to be enabled for revision r0p0 of the CPU and is fixed in r0p1.
6861cafb08dSBipin Ravi
6871cafb08dSBipin Ravi-  ``ERRATA_N2_2138956``: This applies errata 2138956 workaround to Neoverse-N2
688d6d34b39SArvind Ram Prakash   CPU. This needs to be enabled for revision r0p0 of the CPU and is fixed in r0p1.
6897cfae932SBipin Ravi
6905819e23bSnayanpatel-arm-  ``ERRATA_N2_2242415``: This applies errata 2242415 workaround to Neoverse-N2
691d6d34b39SArvind Ram Prakash   CPU. This needs to be enabled for revision r0p0 of the CPU and is fixed in r0p1.
6925819e23bSnayanpatel-arm
693c948185cSnayanpatel-arm-  ``ERRATA_N2_2138958``: This applies errata 2138958 workaround to Neoverse-N2
694d6d34b39SArvind Ram Prakash   CPU. This needs to be enabled for revision r0p0 of the CPU and is fixed in r0p1.
695c948185cSnayanpatel-arm
696603806d1Snayanpatel-arm-  ``ERRATA_N2_2242400``: This applies errata 2242400 workaround to Neoverse-N2
697d6d34b39SArvind Ram Prakash   CPU. This needs to be enabled for revision r0p0 of the CPU and is fixed in r0p1.
698603806d1Snayanpatel-arm
6990d2d9992Snayanpatel-arm-  ``ERRATA_N2_2280757``: This applies errata 2280757 workaround to Neoverse-N2
700d6d34b39SArvind Ram Prakash   CPU. This needs to be enabled for revision r0p0 of the CPU and is fixed in r0p1.
7010d2d9992Snayanpatel-arm
70243438ad1SBoyan Karatotev-  ``ERRATA_N2_2326639``: This applies errata 2326639 workaround to Neoverse-N2
70343438ad1SBoyan Karatotev   CPU. This needs to be enabled for revision r0p0 of the CPU, it is fixed in
70443438ad1SBoyan Karatotev   r0p1.
70543438ad1SBoyan Karatotev
70668085ad4SBipin Ravi-  ``ERRATA_N2_2340933``: This applies errata 2340933 workaround to Neoverse-N2
70768085ad4SBipin Ravi   CPU. This needs to be enabled for revision r0p0 of the CPU, it is fixed in
70868085ad4SBipin Ravi   r0p1.
70968085ad4SBipin Ravi
7106cb8be17SBipin Ravi-  ``ERRATA_N2_2346952``: This applies errata 2346952 workaround to Neoverse-N2
7116cb8be17SBipin Ravi   CPU. This needs to be enabled for revisions r0p0, r0p1 and r0p2 of the CPU,
7126cb8be17SBipin Ravi   it is fixed in r0p3.
7136cb8be17SBipin Ravi
714e6602d4bSAkram Ahmad-  ``ERRATA_N2_2376738``: This applies errata 2376738 workaround to Neoverse-N2
715d6d34b39SArvind Ram Prakash   CPU. This needs to be enabled for revision r0p0, r0p1, r0p2, r0p3 and is still open.
716e6602d4bSAkram Ahmad
717884d5156SDaniel Boulby-  ``ERRATA_N2_2388450``: This applies errata 2388450 workaround to Neoverse-N2
718884d5156SDaniel Boulby   CPU. This needs to be enabled for revision r0p0 of the CPU, it is fixed in
719884d5156SDaniel Boulby   r0p1.
720884d5156SDaniel Boulby
721eb44035cSArvind Ram Prakash-  ``ERRATA_N2_2743014``: This applies errata 2743014 workaround to Neoverse-N2
722eb44035cSArvind Ram Prakash   CPU. This needs to be enabled for revisions r0p0, r0p1 and r0p2. It is fixed
723eb44035cSArvind Ram Prakash   in r0p3.
724eb44035cSArvind Ram Prakash
7251ee7c823SBipin Ravi-  ``ERRATA_N2_2743089``: This applies errata 2743089 workaround to Neoverse-N2
7261ee7c823SBipin Ravi   CPU. This needs to be enabled for revisions r0p0, r0p1 and r0p2. It is fixed
7271ee7c823SBipin Ravi   in r0p3.
7281ee7c823SBipin Ravi
729ab062f05SSona Mathew- ``ERRATA_N2_2728475``: This applies erratum 2728475 workaround to Neoverse-N2
730ab062f05SSona Mathew   CPU, this erratum affects system configurations that do not use and ARM
731ab062f05SSona Mathew   interconnect IP. This needs to be enabled for revisions r0p0, r0p1 and r0p2.
732ab062f05SSona Mathew   It is fixed in r0p3.
733ab062f05SSona Mathew
73412d28067SArvind Ram Prakash-  ``ERRATA_N2_2779511``: This applies errata 2779511 workaround to Neoverse-N2
73512d28067SArvind Ram Prakash   CPU. This needs to be enabled for revisions r0p0, r0p1 and r0p2. It is fixed
73612d28067SArvind Ram Prakash   in r0p3.
73712d28067SArvind Ram Prakash
738adea6e52SGovindraj Raja-  ``ERRATA_N2_3701773``: This applies errata 3701773 workaround to Neoverse-N2
739adea6e52SGovindraj Raja   CPU. This needs to be enabled for revisions r0p0, r0p1, r0p2, r0p3 and is
740adea6e52SGovindraj Raja   still open.
741adea6e52SGovindraj Raja
742fded8392SGovindraj RajaFor Neoverse N3, the following errata build flags are defined :
743fded8392SGovindraj Raja
744fded8392SGovindraj Raja-  ``ERRATA_N3_3699563``: This applies errata 3699563 workaround to Neoverse-N3
745fded8392SGovindraj Raja   CPU. This needs to be enabled for revisions r0p0 and is still open.
746fded8392SGovindraj Raja
7471db6cd60Sjohpow01For Cortex-X2, the following errata build flags are defined :
7481db6cd60Sjohpow01
749ce64ea6eSJohn Powell-  ``ERRATA_X2_1901946``: This applies errata 1901946 workaround to Cortex-X2
750ce64ea6eSJohn Powell   CPU. This needs to be enabled only for r1p0, it is fixed in r2p0.
751ce64ea6eSJohn Powell
752ff879c52SJohn Powell-  ``ERRATA_X2_1916945``: This applies errata 1916945 workaround to Cortex-X2
753f753b4a9SJohn Powell   CPU. This needs to be enabled only for revisions r0p0 and r1p0 of the CPU, it
754f753b4a9SJohn Powell   is fixed in r2p0.
755ff879c52SJohn Powell
756ccee7fa8SJohn Powell-  ``ERRATA_X2_1917258``: This applies errata 1917258 workaround to Cortex-X2
757f753b4a9SJohn Powell   CPU. This needs to be enabled only for revisions r0p0 and r1p0 of the CPU, it
758f753b4a9SJohn Powell   is fixed in r2p0.
759ccee7fa8SJohn Powell
760e2365484SJohn Powell-  ``ERRATA_X2_1927200``: This applies errata 1927200 workaround to Cortex-X2
761f753b4a9SJohn Powell   CPU. This needs to be enabled only for revisions r0p0 and r1p0 of the CPU, it
762f753b4a9SJohn Powell   is fixed in r2p0.
763e2365484SJohn Powell
7642c0467afSJohn Powell-  ``ERRATA_X2_1934260``: This applies errata 1934260 workaround to Cortex-X2
765f753b4a9SJohn Powell   CPU. This needs to be enabled only for revision r1p0 of the CPU, it is fixed
766f753b4a9SJohn Powell   in r2p0.
7672c0467afSJohn Powell
76834ee76dbSjohpow01-  ``ERRATA_X2_2002765``: This applies errata 2002765 workaround to Cortex-X2
769f753b4a9SJohn Powell   CPU. This needs to be enabled only for revisions r0p0, r1p0 and r2p0 of the
770f753b4a9SJohn Powell   CPU, it is fixed in r2p1.
7711db6cd60Sjohpow01
772f9c6301dSBipin Ravi-  ``ERRATA_X2_2017096``: This applies errata 2017096 workaround to Cortex-X2
773f9c6301dSBipin Ravi   CPU. This needs to be enabled only for revisions r0p0, r1p0 and r2p0 of the
774f9c6301dSBipin Ravi   CPU, it is fixed in r2p1.
775e7ca4433SBipin Ravi
776f9c6301dSBipin Ravi-  ``ERRATA_X2_2081180``: This applies errata 2081180 workaround to Cortex-X2
777f9c6301dSBipin Ravi   CPU. This needs to be enabled only for revisions r0p0, r1p0 and r2p0 of the
778f9c6301dSBipin Ravi   CPU, it is fixed in r2p1.
779c060b533SBipin Ravi
780f753b4a9SJohn Powell-  ``ERRATA_X2_2083908``: This applies errata 2083908 workaround to Cortex-X2
781f753b4a9SJohn Powell   CPU. This needs to be enabled only for revision r2p0 of the CPU, it is fixed
782f753b4a9SJohn Powell   in r2p1.
783a8e4d5a5SJohn Powell
784f753b4a9SJohn Powell-  ``ERRATA_X2_2136059``: This applies errata 2136059 workaround to Cortex-X2
785f9c6301dSBipin Ravi   CPU. This needs to be enabled only for revisions r0p0, r1p0 and r2p0 of the
786f9c6301dSBipin Ravi   CPU, it is fixed in r2p1.
7874dff7594SBipin Ravi
788f9c6301dSBipin Ravi-  ``ERRATA_X2_2147715``: This applies errata 2147715 workaround to Cortex-X2
789f9c6301dSBipin Ravi   CPU. This needs to be enabled only for revision r2p0 of the CPU, it is fixed
790f9c6301dSBipin Ravi   in r2p1.
79163446c27SBipin Ravi
792f753b4a9SJohn Powell-  ``ERRATA_X2_2216384``: This applies errata 2216384 workaround to Cortex-X2
793f753b4a9SJohn Powell   CPU. This needs to be enabled only for revisions r0p0, r1p0 and r2p0 of the
794f753b4a9SJohn Powell   CPU, it is fixed in r2p1.
795f753b4a9SJohn Powell
79641b96976SJohn Powell-  ``ERRATA_X2_2267065``: This applies errata 2267065 workaround to Cortex-X2
79741b96976SJohn Powell   CPU. This needs to be enabled only for revisions r0p0, r1p0 and r2p0 of the
79841b96976SJohn Powell   CPU, it is fixed in r2p1.
79941b96976SJohn Powell
800f9c6301dSBipin Ravi-  ``ERRATA_X2_2282622``: This applies errata 2282622 workaround to Cortex-X2
801f9c6301dSBipin Ravi   CPU. This needs to be enabled for revisions r0p0, r1p0, r2p0 and r2p1 of the
802f9c6301dSBipin Ravi   CPU and is still open.
803bc0f84deSBipin Ravi
804989c798dSJohn Powell-  ``ERRATA_X2_2291219``: This applies errata 2291219 workaround to Cortex-X2
805989c798dSJohn Powell   CPU. This needs to be enabled only for revisions r0p0, r1p0 and r2p0 of the
806989c798dSJohn Powell   CPU, it is fixed in r2p1.
807989c798dSJohn Powell
808f9c6301dSBipin Ravi-  ``ERRATA_X2_2371105``: This applies errata 2371105 workaround to Cortex-X2
809f753b4a9SJohn Powell   CPU. This needs to be enabled only for revisions r0p0, r1p0 and r2p0 of the
810f753b4a9SJohn Powell   CPU, it is fixed in r2p1.
811f9c6301dSBipin Ravi
812f753b4a9SJohn Powell- ``ERRATA_X2_2701952``: This applies errata 2701952 workaround to Cortex-X2
813f753b4a9SJohn Powell   CPU and affects system configurations that do not use an Arm interconnect IP.
814ab062f05SSona Mathew   This needs to be enabled for revisions r0p0, r1p0, r2p0 and r2p1 and is
815ab062f05SSona Mathew   still open.
816ab062f05SSona Mathew
817fe06e118SBipin Ravi-  ``ERRATA_X2_2742423``: This applies errata 2742423 workaround to Cortex-X2
818fe06e118SBipin Ravi   CPU. This needs to be enabled for revisions r0p0, r1p0, r2p0 and r2p1 of the
819fe06e118SBipin Ravi   CPU and is still open.
820fe06e118SBipin Ravi
821f9c6301dSBipin Ravi-  ``ERRATA_X2_2768515``: This applies errata 2768515 workaround to Cortex-X2
822f9c6301dSBipin Ravi   CPU. This needs to be enabled for revisions r0p0, r1p0, r2p0 and r2p1 of the
823f9c6301dSBipin Ravi   CPU and is still open.
8241cfde822SBipin Ravi
825b01a93d7SSona Mathew-  ``ERRATA_X2_2778471``: This applies errata 2778471 workaround to Cortex-X2
826b01a93d7SSona Mathew   CPU. This needs to be enabled for revisions r0p0, r1p0, r2p0 and r2p1 of the
827f753b4a9SJohn Powell   CPU and is still open.
828b01a93d7SSona Mathew
829ae6c7c97SGovindraj Raja-  ``ERRATA_X2_3701772``: This applies errata 3701772 workaround to Cortex-X2
830ae6c7c97SGovindraj Raja   CPU. This needs to be enabled for revisions r0p0, r1p0, r2p0 and r2p1 of the
831f753b4a9SJohn Powell   CPU and is still open.
832ae6c7c97SGovindraj Raja
83379544126SBoyan KaratotevFor Cortex-X3, the following errata build flags are defined :
83479544126SBoyan Karatotev
835a65c5ba3SBipin Ravi- ``ERRATA_X3_2266875``: This applies errata 2266875 workaround to the Cortex-X3
836a65c5ba3SBipin Ravi  CPU. This needs to be enabled only for revisions r0p0 and r1p0 of the CPU, it
837a65c5ba3SBipin Ravi  is fixed in r1p1.
838a65c5ba3SBipin Ravi
8393f9df2c6SBipin Ravi- ``ERRATA_X3_2302506``: This applies errata 2302506 workaround to the Cortex-X3
8403f9df2c6SBipin Ravi  CPU. This needs to be enabled only for revisions r0p0, r1p0 and r1p1, it is
8413f9df2c6SBipin Ravi  fixed in r1p2.
8423f9df2c6SBipin Ravi
84379544126SBoyan Karatotev- ``ERRATA_X3_2313909``: This applies errata 2313909 workaround to
84479544126SBoyan Karatotev  Cortex-X3 CPU. This needs to be enabled only for revisions r0p0 and r1p0
84579544126SBoyan Karatotev  of the CPU, it is fixed in r1p1.
84679544126SBoyan Karatotev
8477f69a406SBipin Ravi- ``ERRATA_X3_2372204``: This applies errata 2372204 workaround to
8487f69a406SBipin Ravi  Cortex-X3 CPU. This needs to be enabled only for revisions r0p0 and r1p0
8497f69a406SBipin Ravi  of the CPU, it is fixed in r1p1.
8507f69a406SBipin Ravi
851c7e698cfSHarrison Mutai- ``ERRATA_X3_2615812``: This applies errata 2615812 workaround to Cortex-X3
852c7e698cfSHarrison Mutai  CPU. This needs to be enabled only for revisions r0p0, r1p0 and r1p1 of the
853f589a2a5SSona Mathew  CPU, it is fixed in r1p2.
854c7e698cfSHarrison Mutai
855c1aa3fa5SBipin Ravi- ``ERRATA_X3_2641945``: This applies errata 2641945 workaround to Cortex-X3
856c1aa3fa5SBipin Ravi  CPU. This needs to be enabled only for revisions r0p0 and r1p0 of the CPU.
857c1aa3fa5SBipin Ravi  It is fixed in r1p1.
858c1aa3fa5SBipin Ravi
859106c4283SSona Mathew- ``ERRATA_X3_2701951``: This applies erratum 2701951 workaround to Cortex-X3
860106c4283SSona Mathew  CPU and affects system configurations that do not use an ARM interconnect
861106c4283SSona Mathew  IP. This needs to be applied to revisions r0p0, r1p0 and r1p1. It is fixed
862106c4283SSona Mathew  in r1p2.
863106c4283SSona Mathew
8645b0e4438SSona Mathew- ``ERRATA_X3_2742421``: This applies errata 2742421 workaround to
8655b0e4438SSona Mathew  Cortex-X3 CPU. This needs to be enabled only for revisions r0p0, r1p0 and
8665b0e4438SSona Mathew  r1p1. It is fixed in r1p2.
8675b0e4438SSona Mathew
868f43e9f57SHarrison Mutai- ``ERRATA_X3_2743088``: This applies errata 2743088 workaround to Cortex-X3
869f43e9f57SHarrison Mutai  CPU. This needs to be enabled only for revisions r0p0, r1p0 and r1p1. It is
870f43e9f57SHarrison Mutai  fixed in r1p2.
871f43e9f57SHarrison Mutai
872355ce0a4SSona Mathew- ``ERRATA_X3_2779509``: This applies errata 2779509 workaround to Cortex-X3
873355ce0a4SSona Mathew  CPU. This needs to be enabled only for revisions r0p0, r1p0 and r1p1 of the
874355ce0a4SSona Mathew  CPU. It is fixed in r1p2.
875355ce0a4SSona Mathew
87642920aa7SArvind Ram Prakash- ``ERRATA_X3_3213672``: This applies errata 3213672 workaround to Cortex-X3
87742920aa7SArvind Ram Prakash  CPU. This needs to be enabled for revisions r0p0, r1p0, r1p1 and r1p2
87842920aa7SArvind Ram Prakash  of the CPU. It is still open.
87942920aa7SArvind Ram Prakash
880f828efe2SArvind Ram Prakash- ``ERRATA_X3_3692984``: This applies errata 3692984 workaround to Cortex-X3
881f828efe2SArvind Ram Prakash  CPU. This needs to be enabled for revisions r0p0, r1p0, r1p1 and r1p2
882f828efe2SArvind Ram Prakash  of the CPU. It is still open.
883f828efe2SArvind Ram Prakash
88477feb745SGovindraj Raja- ``ERRATA_X3_3701769``: This applies errata 3701769 workaround to Cortex-X3
88577feb745SGovindraj Raja  CPU. This needs to be enabled only for revisions r0p0, r1p0, r1p1 and r1p2
88677feb745SGovindraj Raja  of the CPU and it is still open.
88777feb745SGovindraj Raja
8886a464ee7SArvind Ram Prakash- ``ERRATA_X3_3827463``: This applies errata 3827463 workaround to Cortex-X3
8896a464ee7SArvind Ram Prakash  CPU. This needs to be enabled only for revisions r0p0, r1p0 and r1p1 of
8906a464ee7SArvind Ram Prakash  the CPU. It is fixed in r1p2.
8916a464ee7SArvind Ram Prakash
892cc41b56fSSona MathewFor Cortex-X4, the following errata build flags are defined :
893cc41b56fSSona Mathew
894cc41b56fSSona Mathew- ``ERRATA_X4_2701112``: This applies erratum 2701112 workaround to Cortex-X4
895cc41b56fSSona Mathew  CPU and affects system configurations that do not use an Arm interconnect IP.
896cc41b56fSSona Mathew  This needs to be enabled for revisions r0p0 and is fixed in r0p1.
897cc41b56fSSona Mathew  The workaround for this erratum is not implemented in EL3, but the flag can
898cc41b56fSSona Mathew  be enabled/disabled at the platform level. The flag is used when the errata ABI
899cc41b56fSSona Mathew  feature is enabled and can assist the Kernel in the process of
900cc41b56fSSona Mathew  mitigation of the erratum.
901cc41b56fSSona Mathew
9024a97ff51SArvind Ram Prakash- ``ERRATA_X4_2726228``: This applies erratum 2726228 workaround to Cortex-X4
9034a97ff51SArvind Ram Prakash  CPU. This needs to be enabled for revisions r0p0 and r0p1. It is fixed in
9044a97ff51SArvind Ram Prakash  r0p2.
9054a97ff51SArvind Ram Prakash
906c833ca66SBipin Ravi-  ``ERRATA_X4_2740089``: This applies errata 2740089 workaround to Cortex-X4
907c833ca66SBipin Ravi   CPU. This needs to be enabled for revisions r0p0 and r0p1. It is fixed
908c833ca66SBipin Ravi   in r0p2.
909c833ca66SBipin Ravi
91047312115SSona Mathew- ``ERRATA_X4_2763018``: This applies errata 2763018 workaround to Cortex-X4
91147312115SSona Mathew  CPU. This needs to be enabled for revisions r0p0 and r0p1. It is fixed in r0p2.
91247312115SSona Mathew
9131e4480bbSSona Mathew- ``ERRATA_X4_2816013``: This applies errata 2816013 workaround to Cortex-X4
9141e4480bbSSona Mathew  CPU. This needs to be enabled for revisions r0p0 and r0p1. It is fixed in r0p2.
9151e4480bbSSona Mathew
916609d08a8SArvind Ram Prakash- ``ERRATA_X4_2897503``: This applies errata 2897503 workaround to Cortex-X4
917609d08a8SArvind Ram Prakash  CPU. This needs to be enabled for revisions r0p0 and r0p1. It is fixed in r0p2.
918609d08a8SArvind Ram Prakash
919cc461661SArvind Ram Prakash- ``ERRATA_X4_2923985``: This applies errata 2923985 workaround to Cortex-X4
920cc461661SArvind Ram Prakash  CPU. This needs to be enabled for revisions r0p0 and r0p1. It is fixed in r0p2.
921cc461661SArvind Ram Prakash
92209c1edb8SGovindraj Raja- ``ERRATA_X4_2957258``: This applies errata 2957258 workaround to Cortex-X4
92309c1edb8SGovindraj Raja  CPU. This needs to be enabled for revisions r0p0 and r0p1. It is fixed in r0p2.
92409c1edb8SGovindraj Raja
925db7eb688SRyan Everett- ``ERRATA_X4_3076789``: This applies errata 3076789 workaround to Cortex-X4
926db7eb688SRyan Everett  CPU. This needs to be enabled for revisions r0p0 and r0p1. It is fixed in r0p2.
927db7eb688SRyan Everett
92858148b92SArvind Ram Prakash- ``ERRATA_X4_3133195``: This applies errata 3133195 workaround to Cortex-X4
92958148b92SArvind Ram Prakash  CPU. This needs to be enabled for revision r0p2. It is fixed in r0p3.
93058148b92SArvind Ram Prakash
93138401c53SGovindraj Raja- ``ERRATA_X4_3701758``: This applies errata 3701758 workaround to Cortex-X4
93238401c53SGovindraj Raja  CPU. This needs to be enabled for revisions r0p0, r0p1, r0p2 and r0p3.
93338401c53SGovindraj Raja  It is still open.
93438401c53SGovindraj Raja
9355a45f0fcSArvind Ram Prakash- ``ERRATA_X4_3887999``: This applies errata 3887999 workaround to Cortex-X4
9365a45f0fcSArvind Ram Prakash  CPU. This needs to be enabled for revision r0p0, r0p1, r0p2 and r0p3.
9375a45f0fcSArvind Ram Prakash  It is still open.
9385a45f0fcSArvind Ram Prakash
939511148efSGovindraj RajaFor Cortex-X925, the following errata build flags are defined :
940511148efSGovindraj Raja
94129bda258SGovindraj Raja- ``ERRATA_X925_2963999``: This applies errata 2963999 workaround to Cortex-X925
94229bda258SGovindraj Raja  CPU. This needs to be enabled for revision r0p0. It is fixed in r0p1.
94329bda258SGovindraj Raja
944511148efSGovindraj Raja- ``ERRATA_X925_3701747``: This applies errata 3701747 workaround to Cortex-X925
945511148efSGovindraj Raja  CPU. This needs to be enabled for revisions r0p0 and r0p1. It is still open.
946511148efSGovindraj Raja
94783435637Sjohpow01For Cortex-A510, the following errata build flags are defined :
94883435637Sjohpow01
949d64d4215SJohn Powell-  ``ERRATA_A510_2008766``: This applies errata 2008766 workaround to
950d64d4215SJohn Powell   Cortex-A510 CPU. This needs to be enabled for revisions r0p0, r0p1, r0p2,
951d64d4215SJohn Powell   r0p3, r1p0, r1p1, r1p2 and r1p3. It is still open.
952d64d4215SJohn Powell
953d5e2512cSjohpow01-  ``ERRATA_A510_2288014``: This applies errata 2288014 workaround to
954d5e2512cSjohpow01   Cortex-A510 CPU. This needs to be enabled only for revisions r0p0, r0p1,
955d5e2512cSjohpow01   r0p2, r0p3 and r1p0, it is fixed in r1p1.
956d5e2512cSjohpow01
957d48088acSjohpow01-  ``ERRATA_A510_2042739``: This applies errata 2042739 workaround to
958d48088acSjohpow01   Cortex-A510 CPU. This needs to be enabled only for revisions r0p0, r0p1 and
959d48088acSjohpow01   r0p2, it is fixed in r0p3.
960d48088acSjohpow01
961e72bbe47Sjohpow01-  ``ERRATA_A510_2041909``: This applies errata 2041909 workaround to
962e72bbe47Sjohpow01   Cortex-A510 CPU. This needs to be enabled only for revision r0p2 and is fixed
963e72bbe47Sjohpow01   in r0p3. The issue is also present in r0p0 and r0p1 but there is no
964e72bbe47Sjohpow01   workaround for those revisions.
965e72bbe47Sjohpow01
9666e86475dSSona Mathew-  ``ERRATA_A510_2080326``: This applies errata 2080326 workaround to
9676e86475dSSona Mathew   Cortex-A510 CPU. This needs to be enabled only for revision r0p2 and is
9686e86475dSSona Mathew   fixed in r0p3. This issue is also present in r0p0 and r0p1 but there is no
9696e86475dSSona Mathew   workaround for those revisions.
9706e86475dSSona Mathew
971124ff99fSJohn Powell-  ``ERRATA_A510_2169012``: This applies errata 2169012 workaround to
972124ff99fSJohn Powell   Cortex-A510 CPU. This needs to be enabled only for revisions r0p0, r0p1,
973124ff99fSJohn Powell   r0p2, r0p3 and r1p0, it is fixed in r1p1.
974124ff99fSJohn Powell
9754592f4eaSJohn Powell-  ``ERRATA_A510_2218134``: This applies errata 2218134 workaround to
9764592f4eaSJohn Powell   Cortex-A510 CPU. This needs to be enabled only for revision r1p0 and is fixed
9774592f4eaSJohn Powell   in r1p1.
9784592f4eaSJohn Powell
9797f304b02Sjohpow01-  ``ERRATA_A510_2250311``: This applies errata 2250311 workaround to
9807f304b02Sjohpow01   Cortex-A510 CPU. This needs to be enabled for revisions r0p0, r0p1, r0p2,
9817f304b02Sjohpow01   r0p3 and r1p0, it is fixed in r1p1. This workaround disables MPMM even if
9827f304b02Sjohpow01   ENABLE_MPMM=1.
9837f304b02Sjohpow01
984cc79018bSjohpow01-  ``ERRATA_A510_2218950``: This applies errata 2218950 workaround to
985cc79018bSjohpow01   Cortex-A510 CPU. This needs to be enabled for revisions r0p0, r0p1, r0p2,
986cc79018bSjohpow01   r0p3 and r1p0, it is fixed in r1p1.
987cc79018bSjohpow01
988c0959d2cSjohpow01-  ``ERRATA_A510_2172148``: This applies errata 2172148 workaround to
989c0959d2cSjohpow01   Cortex-A510 CPU. This needs to be enabled for revisions r0p0, r0p1, r0p2,
990c0959d2cSjohpow01   r0p3 and r1p0, it is fixed in r1p1.
991c0959d2cSjohpow01
99211d448c9SAkram Ahmad-  ``ERRATA_A510_2347730``: This applies errata 2347730 workaround to
99311d448c9SAkram Ahmad   Cortex-A510 CPU. This needs to be enabled for revisions r0p0, r0p1, r0p2,
99411d448c9SAkram Ahmad   r0p3, r1p0 and r1p1. It is fixed in r1p2.
99511d448c9SAkram Ahmad
996a67c1b1bSAkram Ahmad-  ``ERRATA_A510_2371937``: This applies errata 2371937 workaround to
997a67c1b1bSAkram Ahmad   Cortex-A510 CPU. This needs to applied for revisions r0p0, r0p1, r0p2,
998a67c1b1bSAkram Ahmad   r0p3, r1p0, r1p1, and is fixed in r1p2.
999a67c1b1bSAkram Ahmad
10004fb7090eSJohn Powell-  ``ERRATA_A510_2420992``: This applies errata 2420992 workaround to
10014fb7090eSJohn Powell   Cortex-A510 CPU. This needs to applied for revisions r1p0 and r1p1, and is
10024fb7090eSJohn Powell   fixed in r1p2.
10034fb7090eSJohn Powell
1004afb5d069SAkram Ahmad-  ``ERRATA_A510_2666669``: This applies errata 2666669 workaround to
1005afb5d069SAkram Ahmad   Cortex-A510 CPU. This needs to applied for revisions r0p0, r0p1, r0p2,
1006afb5d069SAkram Ahmad   r0p3, r1p0, r1p1. It is fixed in r1p2.
1007aea4ccf8SHarrison Mutai
1008aea4ccf8SHarrison Mutai-  ``ERRATA_A510_2684597``: This applies erratum 2684597 workaround to
1009aea4ccf8SHarrison Mutai   Cortex-A510 CPU. This needs to be applied to revision r0p0, r0p1, r0p2,
1010aea4ccf8SHarrison Mutai   r0p3, r1p0, r1p1 and r1p2. It is fixed in r1p3.
1011afb5d069SAkram Ahmad
1012f2bd3528SJohn Powell-  ``ERRATA_A510_2971420``: This applies erratum 2971420 workaround to
1013f2bd3528SJohn Powell   Cortex-A510 CPU. This needs to be applied to revisions r0p1, r0p2, r0p3,
1014f2bd3528SJohn Powell   r1p0, r1p1, r1p2 and r1p3 and is still open.
1015f2bd3528SJohn Powell
1016af1fa796SJohn Powell-  ``ERRATA_A510_3672349``: This applies erratum 3672349 workaround to
1017af1fa796SJohn Powell   Cortex-A510 CPU. This needs to be applied to revisions r0p1, r0p2, r0p3,
1018af1fa796SJohn Powell   r1p0, r1p1, r1p2 and r1p3 and is still open.
1019af1fa796SJohn Powell
1020ea884936SJohn Powell-  ``ERRATA_A510_3704847``: This applies erratum 3704847 workaround to
1021ea884936SJohn Powell   Cortex-A510 CPU. This needs to be applied to revisions r0p1, r0p2, r0p3,
1022ea884936SJohn Powell   r1p0, r1p1, r1p2 and r1p3 and is still open.
1023ea884936SJohn Powell
1024f03bfc30SSona MathewFor Cortex-A520, the following errata build flags are defined :
1025f03bfc30SSona Mathew
1026f03bfc30SSona Mathew-  ``ERRATA_A520_2630792``: This applies errata 2630792 workaround to
1027f03bfc30SSona Mathew   Cortex-A520 CPU. This needs to applied for revisions r0p0, r0p1 of the
1028f03bfc30SSona Mathew   CPU and is still open.
1029f03bfc30SSona Mathew
103034db3531SArvind Ram Prakash-  ``ERRATA_A520_2858100``: This applies errata 2858100 workaround to
103134db3531SArvind Ram Prakash   Cortex-A520 CPU. This needs to be enabled for revisions r0p0 and r0p1.
103234db3531SArvind Ram Prakash   It is still open.
103334db3531SArvind Ram Prakash
10344a97ff51SArvind Ram Prakash-  ``ERRATA_A520_2938996``: This applies errata 2938996 workaround to
10354a97ff51SArvind Ram Prakash   Cortex-A520 CPU. This needs to be enabled for revisions r0p0 and r0p1.
10364a97ff51SArvind Ram Prakash   It is fixed in r0p2.
10374a97ff51SArvind Ram Prakash
1038ab062f05SSona MathewFor Cortex-A715, the following errata build flags are defined :
1039ab062f05SSona Mathew
104053b3cd25SBipin Ravi-  ``ERRATA_A715_2331818``: This applies errata 2331818 workaround to
104153b3cd25SBipin Ravi   Cortex-A715 CPU. This needs to be enabled for revisions r0p0 and r1p0.
104253b3cd25SBipin Ravi   It is fixed in r1p1.
104353b3cd25SBipin Ravi
104433c665aeSHarrison Mutai- ``ERRATA_A715_2344187``: This applies errata 2344187 workaround to
104533c665aeSHarrison Mutai   Cortex-A715 CPU. This needs to be enabled for revisions r0p0 and r1p0. It is
104633c665aeSHarrison Mutai   fixed in r1p1.
104733c665aeSHarrison Mutai
10484fca3ee4SJohn Powell-  ``ERRATA_A715_2376701``: This applies errata 2376701 workaround to
10494fca3ee4SJohn Powell   Cortex-A715 CPU. This needs to be enabled for revisions r0p0 and r1p0. It is
10504fca3ee4SJohn Powell   fixed in r1p1.
10514fca3ee4SJohn Powell
1052d6e941e2SJohn Powell-  ``ERRATA_A715_2409570``: This applies errata 2409570 workaround to
1053d6e941e2SJohn Powell   Cortex-A715 CPU. This needs to be enabled only for revision r1p0.
1054d6e941e2SJohn Powell   It is fixed in r1p1. This errata also applies to r0p0 but that revision has a
1055d6e941e2SJohn Powell   different workaround, and since r0p0 is not used in production hardware it is
1056d6e941e2SJohn Powell   not implemented.
1057d6e941e2SJohn Powell
105815a04615SSona Mathew-  ``ERRATA_A715_2413290``: This applies errata 2413290 workaround to
105915a04615SSona Mathew   Cortex-A715 CPU. This needs to be enabled only for revision r1p0 and
106015a04615SSona Mathew   when SPE(Statistical profiling extension)=True. The errata is fixed
106115a04615SSona Mathew   in r1p1.
106215a04615SSona Mathew
10631f732471SBipin Ravi-  ``ERRATA_A715_2420947``: This applies errata 2420947 workaround to
10641f732471SBipin Ravi   Cortex-A715 CPU. This needs to be enabled only for revision r1p0.
10651f732471SBipin Ravi   It is fixed in r1p1.
10661f732471SBipin Ravi
1067262dc9f7SBipin Ravi-  ``ERRATA_A715_2429384``: This applies errata 2429384 workaround to
1068262dc9f7SBipin Ravi   Cortex-A715 CPU. This needs to be enabled for revision r1p0. There is no
1069262dc9f7SBipin Ravi   workaround for revision r0p0. It is fixed in r1p1.
1070262dc9f7SBipin Ravi
10716a6b2823SBipin Ravi-  ``ERRATA_A715_2561034``: This applies errata 2561034 workaround to
10726a6b2823SBipin Ravi   Cortex-A715 CPU. This needs to be enabled only for revision r1p0.
10736a6b2823SBipin Ravi   It is fixed in r1p1.
10746a6b2823SBipin Ravi
107510134e35SBipin Ravi-  ``ERRATA_A715_2728106``: This applies errata 2728106 workaround to
107610134e35SBipin Ravi   Cortex-A715 CPU. This needs to be enabled for revisions r0p0, r1p0
107710134e35SBipin Ravi   and r1p1. It is fixed in r1p2.
107810134e35SBipin Ravi
1079fcf2ab71SJohn Powell-  ``ERRATA_A715_2804830``: This applies errata 2804830 workaround to
1080fcf2ab71SJohn Powell   Cortex-A715 CPU. This needs to be enabled for revisions r0p0, r1p0,
1081fcf2ab71SJohn Powell   r1p1 and r1p2. It is fixed in r1p3.
1082fcf2ab71SJohn Powell
108326437afdSGovindraj Raja-  ``ERRATA_A715_3699560``: This applies errata 3699560 workaround to
108426437afdSGovindraj Raja   Cortex-A715 CPU. This needs to be enabled for revisions r0p0, r1p0,
1085fcf2ab71SJohn Powell   r1p2 and r1p3. It is still open.
108626437afdSGovindraj Raja
1087*5c5b9e3eSJohn Powell-  ``ERRATA_A715_3711916``: This applies errata 3711916 workaround to
1088*5c5b9e3eSJohn Powell   Cortex-A715 CPU. This needs to be enabled for revisions r0p0, r1p0,
1089*5c5b9e3eSJohn Powell   r1p1, r1p2 and r1p3. It is still open.
1090*5c5b9e3eSJohn Powell
10917385213eSBipin RaviFor Cortex-A720, the following errata build flags are defined :
10927385213eSBipin Ravi
1093217a79c4SJohn Powell-  ``ERRATA_A720_2729604``: This applies errata 2729604 workaround to
1094217a79c4SJohn Powell   Cortex-A720 CPU. This needs to be enabled for revisions r0p0 and r0p1.
1095217a79c4SJohn Powell   It is fixed in r0p2.
1096217a79c4SJohn Powell
1097b1bde25eSArvind Ram Prakash-  ``ERRATA_A720_2792132``: This applies errata 2792132 workaround to
1098b1bde25eSArvind Ram Prakash   Cortex-A720 CPU. This needs to be enabled for revisions r0p0 and r0p1.
1099b1bde25eSArvind Ram Prakash   It is fixed in r0p2.
1100b1bde25eSArvind Ram Prakash
110112140908SSona Mathew-  ``ERRATA_A720_2844092``: This applies errata 2844092 workaround to
110212140908SSona Mathew   Cortex-A720 CPU. This needs to be enabled for revisions r0p0 and r0p1.
110312140908SSona Mathew   It is fixed in r0p2.
110412140908SSona Mathew
1105152f4cfaSBipin Ravi-  ``ERRATA_A720_2926083``: This applies errata 2926083 workaround to
1106152f4cfaSBipin Ravi   Cortex-A720 CPU. This needs to be enabled for revisions r0p0 and r0p1.
1107152f4cfaSBipin Ravi   It is fixed in r0p2.
1108152f4cfaSBipin Ravi
11097385213eSBipin Ravi-  ``ERRATA_A720_2940794``: This applies errata 2940794 workaround to
11107385213eSBipin Ravi   Cortex-A720 CPU. This needs to be enabled for revisions r0p0 and r0p1.
11117385213eSBipin Ravi   It is fixed in r0p2.
1112ab062f05SSona Mathew
1113050c4a38SGovindraj Raja-  ``ERRATA_A720_3699561``: This applies errata 3699561 workaround to
1114050c4a38SGovindraj Raja   Cortex-A720 CPU. This needs to be enabled for revisions r0p0, r0p1
1115050c4a38SGovindraj Raja   and r0p2. It is still open.
1116050c4a38SGovindraj Raja
111787e69a8fSJohn Powell-  ``ERRATA_A720_3711910``: This applies errata 3711910 workaround to
111887e69a8fSJohn Powell   Cortex-A720 CPU. This needs to be enabled for revisions r0p0, r0p1
111987e69a8fSJohn Powell   and r0p2. It is still open.
112087e69a8fSJohn Powell
1121af5ae9a7SGovindraj RajaFor Cortex-A720_AE, the following errata build flags are defined :
1122af5ae9a7SGovindraj Raja
1123af5ae9a7SGovindraj Raja-  ``ERRATA_A720_AE_3699562``: This applies errata 3699562 workaround
1124845213edSGovindraj Raja   to Cortex-A720_AE CPU. This needs to be enabled for revisions r0p0.
1125af5ae9a7SGovindraj Raja   It is still open.
1126af5ae9a7SGovindraj Raja
1127d732300bSGovindraj RajaFor Cortex-A725, the following errata build flags are defined :
1128d732300bSGovindraj Raja
1129d732300bSGovindraj Raja-  ``ERRATA_A725_3699564``: This applies errata 3699564 workaround to
1130d732300bSGovindraj Raja   Cortex-A725 CPU. This needs to be enabled for revisions r0p0 and r0p1.
1131d732300bSGovindraj Raja   It is fixed in r0p2.
1132d732300bSGovindraj Raja
113340d553cfSPaul BeesleyDSU Errata Workarounds
113440d553cfSPaul Beesley----------------------
113540d553cfSPaul Beesley
113640d553cfSPaul BeesleySimilar to CPU errata, TF-A also implements workarounds for DSU (DynamIQ
113740d553cfSPaul BeesleyShared Unit) errata. The DSU errata details can be found in the respective Arm
113840d553cfSPaul Beesleydocumentation:
113940d553cfSPaul Beesley
114040d553cfSPaul Beesley- `Arm DSU Software Developers Errata Notice`_.
114140d553cfSPaul Beesley
114240d553cfSPaul BeesleyEach erratum is identified by an ``ID``, as defined in the DSU errata notice
114340d553cfSPaul Beesleydocument. Thus, the build flags which enable/disable the errata workarounds
114440d553cfSPaul Beesleyhave the format ``ERRATA_DSU_<ID>``. The implementation and application logic
114540d553cfSPaul Beesleyof DSU errata workarounds are similar to `CPU errata workarounds`_.
114640d553cfSPaul Beesley
114740d553cfSPaul BeesleyFor DSU errata, the following build flags are defined:
114840d553cfSPaul Beesley
114940d553cfSPaul Beesley-  ``ERRATA_DSU_798953``: This applies errata 798953 workaround for the
115040d553cfSPaul Beesley   affected DSU configurations. This errata applies only for those DSUs that
115140d553cfSPaul Beesley   revision is r0p0 (on r0p1 it is fixed). However, please note that this
115240d553cfSPaul Beesley   workaround results in increased DSU power consumption on idle.
115340d553cfSPaul Beesley
115440d553cfSPaul Beesley-  ``ERRATA_DSU_936184``: This applies errata 936184 workaround for the
115540d553cfSPaul Beesley   affected DSU configurations. This errata applies only for those DSUs that
115640d553cfSPaul Beesley   contain the ACP interface **and** the DSU revision is older than r2p0 (on
115740d553cfSPaul Beesley   r2p0 it is fixed). However, please note that this workaround results in
115840d553cfSPaul Beesley   increased DSU power consumption on idle.
115940d553cfSPaul Beesley
11607e3273e8SBipin Ravi-  ``ERRATA_DSU_2313941``: This applies errata 2313941 workaround for the
11617e3273e8SBipin Ravi   affected DSU configurations. This errata applies for those DSUs with
11627e3273e8SBipin Ravi   revisions r0p0, r1p0, r2p0, r2p1, r3p0, r3p1 and is still open. However,
11637e3273e8SBipin Ravi   please note that this workaround results in increased DSU power consumption
11647e3273e8SBipin Ravi   on idle.
11657e3273e8SBipin Ravi
1166efc945f1SArvind Ram Prakash-  ``ERRATA_DSU_2900952``: This applies errata 2900952 workaround for the
1167efc945f1SArvind Ram Prakash   affected DSU-120 configurations. This erratum applies to some r2p0
1168efc945f1SArvind Ram Prakash   implementations and is fixed in r2p1. The affected r2p0 implementations
1169efc945f1SArvind Ram Prakash   are determined by reading the IMP_CLUSTERREVIDR_EL1[1] register bit
1170efc945f1SArvind Ram Prakash   and making sure it's clear.
1171efc945f1SArvind Ram Prakash
117240d553cfSPaul BeesleyCPU Specific optimizations
117340d553cfSPaul Beesley--------------------------
117440d553cfSPaul Beesley
117540d553cfSPaul BeesleyThis section describes some of the optimizations allowed by the CPU micro
117640d553cfSPaul Beesleyarchitecture that can be enabled by the platform as desired.
117740d553cfSPaul Beesley
117840d553cfSPaul Beesley-  ``SKIP_A57_L1_FLUSH_PWR_DWN``: This flag enables an optimization in the
117940d553cfSPaul Beesley   Cortex-A57 cluster power down sequence by not flushing the Level 1 data
118040d553cfSPaul Beesley   cache. The L1 data cache and the L2 unified cache are inclusive. A flush
118140d553cfSPaul Beesley   of the L2 by set/way flushes any dirty lines from the L1 as well. This
118240d553cfSPaul Beesley   is a known safe deviation from the Cortex-A57 TRM defined power down
118340d553cfSPaul Beesley   sequence. Each Cortex-A57 based platform must make its own decision on
118440d553cfSPaul Beesley   whether to use the optimization.
118540d553cfSPaul Beesley
118640d553cfSPaul Beesley-  ``A53_DISABLE_NON_TEMPORAL_HINT``: This flag disables the cache non-temporal
118740d553cfSPaul Beesley   hint. The LDNP/STNP instructions as implemented on Cortex-A53 do not behave
118840d553cfSPaul Beesley   in a way most programmers expect, and will most probably result in a
118940d553cfSPaul Beesley   significant speed degradation to any code that employs them. The Armv8-A
119040d553cfSPaul Beesley   architecture (see Arm DDI 0487A.h, section D3.4.3) allows cores to ignore
119140d553cfSPaul Beesley   the non-temporal hint and treat LDNP/STNP as LDP/STP instead. Enabling this
119240d553cfSPaul Beesley   flag enforces this behaviour. This needs to be enabled only for revisions
119340d553cfSPaul Beesley   <= r0p3 of the CPU and is enabled by default.
119440d553cfSPaul Beesley
119540d553cfSPaul Beesley-  ``A57_DISABLE_NON_TEMPORAL_HINT``: This flag has the same behaviour as
119640d553cfSPaul Beesley   ``A53_DISABLE_NON_TEMPORAL_HINT`` but for Cortex-A57. This needs to be
119740d553cfSPaul Beesley   enabled only for revisions <= r1p2 of the CPU and is enabled by default,
119840d553cfSPaul Beesley   as recommended in section "4.7 Non-Temporal Loads/Stores" of the
119940d553cfSPaul Beesley   `Cortex-A57 Software Optimization Guide`_.
120040d553cfSPaul Beesley
1201cd0ea184SVarun Wadekar- ''A57_ENABLE_NON_CACHEABLE_LOAD_FWD'': This flag enables non-cacheable
1202cd0ea184SVarun Wadekar   streaming enhancement feature for Cortex-A57 CPUs. Platforms can set
1203cd0ea184SVarun Wadekar   this bit only if their memory system meets the requirement that cache
1204cd0ea184SVarun Wadekar   line fill requests from the Cortex-A57 processor are atomic. Each
1205cd0ea184SVarun Wadekar   Cortex-A57 based platform must make its own decision on whether to use
1206cd0ea184SVarun Wadekar   the optimization. This flag is disabled by default.
1207cd0ea184SVarun Wadekar
120825bbbd2dSJavier Almansa Sobrino-  ``NEOVERSE_Nx_EXTERNAL_LLC``: This flag indicates that an external last
1209f2d6b4eeSManish Pandey   level cache(LLC) is present in the system, and that the DataSource field
1210f2d6b4eeSManish Pandey   on the master CHI interface indicates when data is returned from the LLC.
1211f2d6b4eeSManish Pandey   This is used to control how the LL_CACHE* PMU events count.
121225bbbd2dSJavier Almansa Sobrino   Default value is 0 (Disabled).
1213f2d6b4eeSManish Pandey
121475384389SRohit Ner-  ``NEOVERSE_N2_PREFETCHER_DISABLE``: This flag disables the region prefetcher
121575384389SRohit Ner   on the Neoverse N2 core. This is used during performance analysis to get clean
121675384389SRohit Ner   and repeatable measurements of the cache by preventing speculative data fetches
121775384389SRohit Ner   from interfering with benchmark results.
121875384389SRohit Ner   Default value is 0 (Disabled).
121975384389SRohit Ner
1220e1b15b09SManish V BadarkheGIC Errata Workarounds
1221e1b15b09SManish V Badarkhe----------------------
1222e1b15b09SManish V Badarkhe-  ``GIC600_ERRATA_WA_2384374``: This flag applies part 2 of errata 2384374
1223e1b15b09SManish V Badarkhe   workaround for the affected GIC600 and GIC600-AE implementations. It applies
1224e1b15b09SManish V Badarkhe   to implementations of GIC600 and GIC600-AE with revisions less than or equal
1225e1b15b09SManish V Badarkhe   to r1p6 and r0p2 respectively. If the platform sets GICV3_SUPPORT_GIC600,
1226e1b15b09SManish V Badarkhe   then this flag is enabled; otherwise, it is 0 (Disabled).
1227e1b15b09SManish V Badarkhe
122840d553cfSPaul Beesley--------------
122940d553cfSPaul Beesley
123023721794SArvind Ram Prakash*Copyright (c) 2014-2025, Arm Limited and Contributors. All rights reserved.*
123140d553cfSPaul Beesley
123240d553cfSPaul Beesley.. _CVE-2017-5715: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-5715
123340d553cfSPaul Beesley.. _CVE-2018-3639: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-3639
12341fe4a9d1SBipin Ravi.. _CVE-2022-23960: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-23960
1235854d199bSGovindraj Raja.. _Cortex-A72 MPCore Software Developers Errata Notice: https://developer.arm.com/documentation/epm012079/latest
1236854d199bSGovindraj Raja.. _Cortex-A57 Software Optimization Guide: https://developer.arm.com/documentation/uan0015
1237854d199bSGovindraj Raja.. _Arm DSU Software Developers Errata Notice: https://developer.arm.com/documentation/SDEN854652
1238