diff options
author | 2024-10-21 19:14:34 +0100 | |
---|---|---|
committer | 2024-10-23 11:57:46 +0100 | |
commit | 358dd4a9bdac63a0a8fb13773bfce6f599e25433 (patch) | |
tree | 3dd5229752b305be2d2718bf55bf68081ef7cc01 /scripts/lib/kdoc/kdoc_parser.py | |
parent | arm64: head: Drop SWAPPER_TABLE_SHIFT (diff) | |
download | linux-rng-358dd4a9bdac63a0a8fb13773bfce6f599e25433.tar.xz linux-rng-358dd4a9bdac63a0a8fb13773bfce6f599e25433.zip |
arm64: Add command-line override for ID_AA64MMFR0_EL1.ECV
It appears that relatively popular hardware out there implements
the CNTPOFF_EL2 variant of FEAT_ECV, advertises it via ID_AA64MMFR0_EL1,
but cannot be bothered to set SCR_EL3.ECVEn to 1.
You would probably think that "this is fine, EL3 will take the
trap on access to CNTPOFF_EL2 and flip the ECVEn bit", as that's
what a semi-decent firmware implementation would do.
But no. None of that. This particular implementation takes the trap,
considers its purpose in life, decides that it has none, and *RESETS*
the system.
Yes, x1e001de, I'm talking about you.
In order to allow this machine to be promoted slightly above the
level of a glorified door-stop, add a new "id_aa64mmfr0.ecv" override.
allowing the kernel to pretend this option was never there.
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20241021181434.1052974-1-maz@kernel.org
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'scripts/lib/kdoc/kdoc_parser.py')
0 files changed, 0 insertions, 0 deletions