Zeus: apply the MSR SSBS instruction

Zeus supports the SSBS mechanism and also the new MSR instruction to
immediately apply the mitigation. Hence, the new instruction is utilised
in the Zeus-specific reset function.

Change-Id: I962747c28afe85a15207a0eba4146f9a115b27e7
Signed-off-by: John Tsichritzis <john.tsichritzis@arm.com>
This commit is contained in:
John Tsichritzis 2019-08-13 10:28:25 +01:00
parent 5dbdf8e4ea
commit 07f979bcc7
1 changed files with 11 additions and 1 deletions

View File

@ -46,6 +46,16 @@ func neoverse_zeus_errata_report
endfunc neoverse_zeus_errata_report
#endif
func neoverse_zeus_reset_func
mov x19, x30
/* Disable speculative loads */
msr SSBS, xzr
isb
ret x19
endfunc neoverse_zeus_reset_func
/* ---------------------------------------------
* This function provides Neoverse-Zeus specific
* register information for crash reporting.
@ -66,5 +76,5 @@ func neoverse_zeus_cpu_reg_dump
endfunc neoverse_zeus_cpu_reg_dump
declare_cpu_ops neoverse_zeus, NEOVERSE_ZEUS_MIDR, \
CPU_NO_RESET_FUNC, \
neoverse_zeus_reset_func, \
neoverse_zeus_core_pwr_dwn