diff options
author | James Morse <james.morse@arm.com> | 2024-10-30 16:03:12 +0000 |
---|---|---|
committer | Oliver Upton <oliver.upton@linux.dev> | 2024-10-31 18:09:38 +0000 |
commit | 23b33d1e168cfcc96666f025beb3bccfcb58403a (patch) | |
tree | d14a2a7cc12f3f54bcb419f93886c5e2317a6ad9 /arch/arm64/tools | |
parent | 83732ce6a056c4bb242d64fd25e1fc78f35e6a74 (diff) | |
download | lwn-23b33d1e168cfcc96666f025beb3bccfcb58403a.tar.gz lwn-23b33d1e168cfcc96666f025beb3bccfcb58403a.zip |
arm64: head.S: Initialise MPAM EL2 registers and disable traps
Add code to head.S's el2_setup to detect MPAM and disable any EL2 traps.
This register resets to an unknown value, setting it to the default
parititons/pmg before we enable the MMU is the best thing to do.
Kexec/kdump will depend on this if the previous kernel left the CPU
configured with a restrictive configuration.
If linux is booted at the highest implemented exception level el2_setup
will clear the enable bit, disabling MPAM.
This code can't be enabled until a subsequent patch adds the Kconfig
and cpufeature boiler plate.
Signed-off-by: James Morse <james.morse@arm.com>
Signed-off-by: Joey Gouly <joey.gouly@arm.com>
Reviewed-by: Gavin Shan <gshan@redhat.com>
Tested-by: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20241030160317.2528209-3-joey.gouly@arm.com
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
Diffstat (limited to 'arch/arm64/tools')
0 files changed, 0 insertions, 0 deletions