Browse Source

fix(cpus): update the rev-var for Cortex-A78AE

Update the revision and variant information in the
cortex_a78_ae.s and errata ABI file for erratum ID - 2376748
based on the latest SDEN.

SDEN documentation:
https://developer.arm.com/documentation/SDEN-1707912/latest

Change-Id: I082aac41adf717b0d5d59046a8933a3f5a3de94f
Signed-off-by: Sona Mathew <sonarebecca.mathew@arm.com>
pull/1993/merge
Sona Mathew 1 year ago
parent
commit
c814619a36
  1. 14
      docs/design/cpu-specific-build-macros.rst
  2. 2
      lib/cpus/aarch64/cortex_a78_ae.S
  3. 2
      lib/cpus/cpu-ops.mk
  4. 2
      services/std_svc/errata_abi/errata_abi_main.c

14
docs/design/cpu-specific-build-macros.rst

@ -335,26 +335,26 @@ For Cortex-A78, the following errata build flags are defined :
CPU. This needs to be enabled for revisions r0p0, r1p0, r1p1 and r1p2 and CPU. This needs to be enabled for revisions r0p0, r1p0, r1p1 and r1p2 and
it is still open. it is still open.
For Cortex-A78 AE, the following errata build flags are defined : For Cortex-A78AE, the following errata build flags are defined :
- ``ERRATA_A78_AE_1941500`` : This applies errata 1941500 workaround to - ``ERRATA_A78_AE_1941500`` : This applies errata 1941500 workaround to
Cortex-A78 AE CPU. This needs to be enabled for revisions r0p0 and r0p1. Cortex-A78AE CPU. This needs to be enabled for revisions r0p0 and r0p1.
This erratum is still open. This erratum is still open.
- ``ERRATA_A78_AE_1951502`` : This applies errata 1951502 workaround to - ``ERRATA_A78_AE_1951502`` : This applies errata 1951502 workaround to
Cortex-A78 AE CPU. This needs to be enabled for revisions r0p0 and r0p1. This Cortex-A78AE CPU. This needs to be enabled for revisions r0p0 and r0p1. This
erratum is still open. erratum is still open.
- ``ERRATA_A78_AE_2376748`` : This applies errata 2376748 workaround to - ``ERRATA_A78_AE_2376748`` : This applies errata 2376748 workaround to
Cortex-A78 AE CPU. This needs to be enabled for revisions r0p0 and r0p1. This Cortex-A78AE CPU. This needs to be enabled for revisions r0p0, r0p1 and r0p2.
erratum is still open. This erratum is still open.
- ``ERRATA_A78_AE_2395408`` : This applies errata 2395408 workaround to - ``ERRATA_A78_AE_2395408`` : This applies errata 2395408 workaround to
Cortex-A78 AE CPU. This needs to be enabled for revisions r0p0 and r0p1. This Cortex-A78AE CPU. This needs to be enabled for revisions r0p0 and r0p1. This
erratum is still open. erratum is still open.
- ``ERRATA_A78_AE_2712574`` : This applies erratum 2712574 workaround to - ``ERRATA_A78_AE_2712574`` : This applies erratum 2712574 workaround to
Cortex-A78 AE CPU. This erratum affects system configurations that do not use Cortex-A78AE CPU. This erratum affects system configurations that do not use
an ARM interconnect IP. This needs to be enabled for revisions r0p0, r0p1 and an ARM interconnect IP. This needs to be enabled for revisions r0p0, r0p1 and
r0p2. This erratum is still open. r0p2. This erratum is still open.

2
lib/cpus/aarch64/cortex_a78_ae.S

@ -70,7 +70,7 @@ workaround_reset_start cortex_a78_ae, ERRATUM(2376748), ERRATA_A78_AE_2376748
sysreg_bit_set CORTEX_A78_AE_ACTLR2_EL1, CORTEX_A78_AE_ACTLR2_EL1_BIT_0 sysreg_bit_set CORTEX_A78_AE_ACTLR2_EL1, CORTEX_A78_AE_ACTLR2_EL1_BIT_0
workaround_reset_end cortex_a78_ae, ERRATUM(2376748) workaround_reset_end cortex_a78_ae, ERRATUM(2376748)
check_erratum_ls cortex_a78_ae, ERRATUM(2376748), CPU_REV(0, 1) check_erratum_ls cortex_a78_ae, ERRATUM(2376748), CPU_REV(0, 2)
workaround_reset_start cortex_a78_ae, ERRATUM(2395408), ERRATA_A78_AE_2395408 workaround_reset_start cortex_a78_ae, ERRATUM(2395408), ERRATA_A78_AE_2395408
/* -------------------------------------------------------- /* --------------------------------------------------------

2
lib/cpus/cpu-ops.mk

@ -352,7 +352,7 @@ CPU_FLAG_LIST += ERRATA_A78_AE_1941500
CPU_FLAG_LIST += ERRATA_A78_AE_1951502 CPU_FLAG_LIST += ERRATA_A78_AE_1951502
# Flag to apply erratum 2376748 workaround during reset. This erratum applies # Flag to apply erratum 2376748 workaround during reset. This erratum applies
# to revisions r0p0 and r0p1 of the A78 AE cpu. It is still open. # to revisions r0p0, r0p1 and r0p2 of the A78 AE cpu. It is still open.
CPU_FLAG_LIST += ERRATA_A78_AE_2376748 CPU_FLAG_LIST += ERRATA_A78_AE_2376748
# Flag to apply erratum 2395408 workaround during reset. This erratum applies # Flag to apply erratum 2395408 workaround during reset. This erratum applies

2
services/std_svc/errata_abi/errata_abi_main.c

@ -218,7 +218,7 @@ struct em_cpu_list cpu_list[] = {
.cpu_errata_list = { .cpu_errata_list = {
[0] = {1941500, 0x00, 0x01, ERRATA_A78_AE_1941500}, [0] = {1941500, 0x00, 0x01, ERRATA_A78_AE_1941500},
[1] = {1951502, 0x00, 0x01, ERRATA_A78_AE_1951502}, [1] = {1951502, 0x00, 0x01, ERRATA_A78_AE_1951502},
[2] = {2376748, 0x00, 0x01, ERRATA_A78_AE_2376748}, [2] = {2376748, 0x00, 0x02, ERRATA_A78_AE_2376748},
[3] = {2395408, 0x00, 0x01, ERRATA_A78_AE_2395408}, [3] = {2395408, 0x00, 0x01, ERRATA_A78_AE_2395408},
[4] = {2712574, 0x00, 0x02, ERRATA_A78_AE_2712574, \ [4] = {2712574, 0x00, 0x02, ERRATA_A78_AE_2712574, \
ERRATA_NON_ARM_INTERCONNECT}, ERRATA_NON_ARM_INTERCONNECT},

Loading…
Cancel
Save