arm64: Treat HCR_EL2.E2H as RES1 when ID_AA64MMFR4_EL1.E2H0 is negative
authorMarc Zyngier <maz@kernel.org>
Mon, 22 Jan 2024 18:13:41 +0000 (18:13 +0000)
committerOliver Upton <oliver.upton@linux.dev>
Thu, 8 Feb 2024 15:12:45 +0000 (15:12 +0000)
commit3944382fa6f22b54fd399632b1af92c28123979b
tree0d0251383afb60d40525ea818f847516ac64059f
parentda9af5071b25cb81682c3506c96516fe55186577
arm64: Treat HCR_EL2.E2H as RES1 when ID_AA64MMFR4_EL1.E2H0 is negative

For CPUs that have ID_AA64MMFR4_EL1.E2H0 as negative, it is important
to avoid the boot path that sets HCR_EL2.E2H=0. Fortunately, we
already have this path to cope with fruity CPUs.

Tweak init_el2 to look at ID_AA64MMFR4_EL1.E2H0 first.

Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20240122181344.258974-8-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
arch/arm64/kernel/head.S