[PATCH v2 0/2] Disable 32-bit EL0 for Apple A10(X), T2
From: Nick Chan
Date: Mon Sep 09 2024 - 05:15:09 EST
Hi,
Apple's A10(X), T2 SoCs consists of pairs of performance and efficiency
cores. However, only one of the core types may be active at a given time,
and to software, it appears as logical cores that could switch between
P-mode and E-mode, depending on the p-state.
Unforunately, only the performance cores can execute 32-bit EL0. To
software, this results in logical cores that lose ability to execute
32-bit EL0 when the p-state is below a certain value.
Since these CPU cores only supported 16K pages, many AArch32
executables will not run anyways. This series disables 32-bit EL0 for
these SoCs.
Changes since v1:
- Drop #ifdef CONFIG_ARCH_APPLE, the code to disable NV1 on M2 does
not use it either.
- Added comment to explain why 32-bit EL0 have to be disabled.
v1: https://lore.kernel.org/asahi/20240906171449.324354-1-towinchenmi@xxxxxxxxx
Nick Chan
---
Nick Chan (2):
arm64: cputype: Add CPU types for A7-A11, T2 SoCs
arm64: cpufeature: Pretend that Apple A10 family does not support
32-bit EL0
arch/arm64/include/asm/cputype.h | 42 +++++++++++++++++++++++---------
arch/arm64/kernel/cpufeature.c | 27 ++++++++++++++++++++
2 files changed, 57 insertions(+), 12 deletions(-)
base-commit: 9aaeb87ce1e966169a57f53a02ba05b30880ffb8
--
2.46.0