[PATCH v2 0/6] initialize SCTRL2_ELx
From: Yeoreum Yun
Date: Mon Aug 11 2025 - 12:42:52 EST
This series introduces initial support for the SCTLR2_ELx registers in Linux.
The feature is optional starting from ARMv8.8/ARMv9.3,
and becomes mandatory from ARMv8.9/ARMv9.4.
Currently, Linux has no strict need to modify SCTLR2_ELx—
at least assuming that firmware initializes
these registers to reasonable defaults.
However, several upcoming architectural features will require configuring
control bits in these registers.
Notable examples include FEAT_PAuth_LR and FEAT_CPA2.
Patch History
==============
from v1 to v2:
- rebase to v6.17-rc1
- https://lore.kernel.org/all/20250804121724.3681531-1-yeoreum.yun@xxxxxxx/
Yeoreum Yun (6):
arm64: make SCTLR2_EL1 accessible
arm64: initialise SCTLR2_ELx register at boot time
arm64: save/restore SCTLR2_EL1 when cpu_suspend()/resume()
arm64: init SCTLR2_EL1 at cpu_soft_restart()
arm64: make the per-task SCTLR2_EL1
KVM: arm64: initialise SCTLR2_EL1 at __kvm_host_psci_cpu_entry()
arch/arm64/include/asm/el2_setup.h | 14 +++++++++++++-
arch/arm64/include/asm/processor.h | 5 +++++
arch/arm64/include/asm/suspend.h | 2 +-
arch/arm64/include/asm/sysreg.h | 22 ++++++++++++++++++++++
arch/arm64/kernel/cpu-reset.S | 6 ++++++
arch/arm64/kernel/head.S | 5 ++++-
arch/arm64/kernel/process.c | 9 +++++++++
arch/arm64/kvm/hyp/nvhe/psci-relay.c | 3 +++
arch/arm64/mm/proc.S | 26 ++++++++++++++++++--------
9 files changed, 81 insertions(+), 11 deletions(-)
base-commit: 8f5ae30d69d7543eee0d70083daf4de8fe15d585
--
LEVI:{C3F47F37-75D8-414A-A8BA-3980EC8A46D7}