mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-19 19:14:28 +00:00
refactor(cpus): reorder Neoverse V1 errata by ascending order
Signed-off-by: Arvind Ram Prakash <arvind.ramprakash@arm.com> Change-Id: I1c531fe166218804e4fc9ebbdeda2bfebdd69081
This commit is contained in:
parent
708d0abdcd
commit
b0b712ba76
1 changed files with 29 additions and 29 deletions
|
@ -305,6 +305,35 @@ func check_errata_1966096
|
||||||
b cpu_rev_var_range
|
b cpu_rev_var_range
|
||||||
endfunc check_errata_1966096
|
endfunc check_errata_1966096
|
||||||
|
|
||||||
|
/* --------------------------------------------------
|
||||||
|
* Errata Workaround for Neoverse V1 Errata #2108267.
|
||||||
|
* This applies to revisions r0p0, r1p0, and r1p1, it
|
||||||
|
* is still open.
|
||||||
|
* x0: variant[4:7] and revision[0:3] of current cpu.
|
||||||
|
* Shall clobber: x0-x1, x17
|
||||||
|
* --------------------------------------------------
|
||||||
|
*/
|
||||||
|
func errata_neoverse_v1_2108267_wa
|
||||||
|
/* Check workaround compatibility. */
|
||||||
|
mov x17, x30
|
||||||
|
bl check_errata_2108267
|
||||||
|
cbz x0, 1f
|
||||||
|
|
||||||
|
/* Apply the workaround. */
|
||||||
|
mrs x1, NEOVERSE_V1_CPUECTLR_EL1
|
||||||
|
mov x0, #NEOVERSE_V1_CPUECTLR_EL1_PF_MODE_CNSRV
|
||||||
|
bfi x1, x0, #CPUECTLR_EL1_PF_MODE_LSB, #CPUECTLR_EL1_PF_MODE_WIDTH
|
||||||
|
msr NEOVERSE_V1_CPUECTLR_EL1, x1
|
||||||
|
1:
|
||||||
|
ret x17
|
||||||
|
endfunc errata_neoverse_v1_2108267_wa
|
||||||
|
|
||||||
|
func check_errata_2108267
|
||||||
|
/* Applies to r0p0, r1p0, r1p1 */
|
||||||
|
mov x1, #0x11
|
||||||
|
b cpu_rev_var_ls
|
||||||
|
endfunc check_errata_2108267
|
||||||
|
|
||||||
/* --------------------------------------------------
|
/* --------------------------------------------------
|
||||||
* Errata Workaround for Neoverse V1 Errata #2139242.
|
* Errata Workaround for Neoverse V1 Errata #2139242.
|
||||||
* This applies to revisions r0p0, r1p0, and r1p1, it
|
* This applies to revisions r0p0, r1p0, and r1p1, it
|
||||||
|
@ -340,35 +369,6 @@ func check_errata_2139242
|
||||||
b cpu_rev_var_ls
|
b cpu_rev_var_ls
|
||||||
endfunc check_errata_2139242
|
endfunc check_errata_2139242
|
||||||
|
|
||||||
/* --------------------------------------------------
|
|
||||||
* Errata Workaround for Neoverse V1 Errata #2108267.
|
|
||||||
* This applies to revisions r0p0, r1p0, and r1p1, it
|
|
||||||
* is still open.
|
|
||||||
* x0: variant[4:7] and revision[0:3] of current cpu.
|
|
||||||
* Shall clobber: x0-x1, x17
|
|
||||||
* --------------------------------------------------
|
|
||||||
*/
|
|
||||||
func errata_neoverse_v1_2108267_wa
|
|
||||||
/* Check workaround compatibility. */
|
|
||||||
mov x17, x30
|
|
||||||
bl check_errata_2108267
|
|
||||||
cbz x0, 1f
|
|
||||||
|
|
||||||
/* Apply the workaround. */
|
|
||||||
mrs x1, NEOVERSE_V1_CPUECTLR_EL1
|
|
||||||
mov x0, #NEOVERSE_V1_CPUECTLR_EL1_PF_MODE_CNSRV
|
|
||||||
bfi x1, x0, #CPUECTLR_EL1_PF_MODE_LSB, #CPUECTLR_EL1_PF_MODE_WIDTH
|
|
||||||
msr NEOVERSE_V1_CPUECTLR_EL1, x1
|
|
||||||
1:
|
|
||||||
ret x17
|
|
||||||
endfunc errata_neoverse_v1_2108267_wa
|
|
||||||
|
|
||||||
func check_errata_2108267
|
|
||||||
/* Applies to r0p0, r1p0, r1p1 */
|
|
||||||
mov x1, #0x11
|
|
||||||
b cpu_rev_var_ls
|
|
||||||
endfunc check_errata_2108267
|
|
||||||
|
|
||||||
/* --------------------------------------------------
|
/* --------------------------------------------------
|
||||||
* Errata Workaround for Neoverse V1 Errata #2216392.
|
* Errata Workaround for Neoverse V1 Errata #2216392.
|
||||||
* This applies to revisions r1p0 and r1p1 and is
|
* This applies to revisions r1p0 and r1p1 and is
|
||||||
|
|
Loading…
Add table
Reference in a new issue