mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-16 09:34:18 +00:00
Merge "fix(cpus): check for SME presence in Gelas" into integration
This commit is contained in:
commit
f3751bd712
2 changed files with 10 additions and 2 deletions
|
@ -437,6 +437,7 @@
|
|||
|
||||
#define ID_AA64PFR1_EL1_SME_SHIFT U(24)
|
||||
#define ID_AA64PFR1_EL1_SME_MASK ULL(0xf)
|
||||
#define ID_AA64PFR1_EL1_SME_WIDTH U(4)
|
||||
#define ID_AA64PFR1_EL1_SME_NOT_SUPPORTED ULL(0x0)
|
||||
#define ID_AA64PFR1_EL1_SME_SUPPORTED ULL(0x1)
|
||||
#define ID_AA64PFR1_EL1_SME2_SUPPORTED ULL(0x2)
|
||||
|
|
|
@ -34,13 +34,20 @@ cpu_reset_func_end cortex_gelas
|
|||
* ----------------------------------------------------
|
||||
*/
|
||||
func cortex_gelas_core_pwr_dwn
|
||||
#if ENABLE_SME_FOR_NS
|
||||
/* ---------------------------------------------------
|
||||
* Disable SME
|
||||
* Disable SME if enabled and supported
|
||||
* ---------------------------------------------------
|
||||
*/
|
||||
mrs x0, ID_AA64PFR1_EL1
|
||||
ubfx x0, x0, #ID_AA64PFR1_EL1_SME_SHIFT, \
|
||||
#ID_AA64PFR1_EL1_SME_WIDTH
|
||||
cmp x0, #ID_AA64PFR1_EL1_SME_NOT_SUPPORTED
|
||||
b.eq 1f
|
||||
msr CORTEX_GELAS_SVCRSM, xzr
|
||||
msr CORTEX_GELAS_SVCRZA, xzr
|
||||
|
||||
1:
|
||||
#endif
|
||||
/* ---------------------------------------------------
|
||||
* Enable CPU power down bit in power control register
|
||||
* ---------------------------------------------------
|
||||
|
|
Loading…
Add table
Reference in a new issue