summaryrefslogtreecommitdiffstats
path: root/arch/arm64
diff options
context:
space:
mode:
authorWill Deacon <will@kernel.org>2021-07-30 13:24:41 +0200
committerPeter Zijlstra <peterz@infradead.org>2021-08-20 12:33:07 +0200
commitead7de462ae56b2d2e56fb5a414f6e916dddc4c9 (patch)
tree6bd5c5cf36d56e92a9e81a30bfb49ec4ef37f621 /arch/arm64
parentarm64: Advertise CPUs capable of running 32-bit applications in sysfs (diff)
downloadlinux-ead7de462ae56b2d2e56fb5a414f6e916dddc4c9.tar.xz
linux-ead7de462ae56b2d2e56fb5a414f6e916dddc4c9.zip
arm64: Hook up cmdline parameter to allow mismatched 32-bit EL0
Allow systems with mismatched 32-bit support at EL0 to run 32-bit applications based on a new kernel parameter. Signed-off-by: Will Deacon <will@kernel.org> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Catalin Marinas <catalin.marinas@arm.com> Link: https://lore.kernel.org/r/20210730112443.23245-15-will@kernel.org
Diffstat (limited to 'arch/arm64')
-rw-r--r--arch/arm64/kernel/cpufeature.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm64/kernel/cpufeature.c b/arch/arm64/kernel/cpufeature.c
index 0a9bc7eff26e..77b2149c26b8 100644
--- a/arch/arm64/kernel/cpufeature.c
+++ b/arch/arm64/kernel/cpufeature.c
@@ -1322,6 +1322,13 @@ const struct cpumask *system_32bit_el0_cpumask(void)
return cpu_possible_mask;
}
+static int __init parse_32bit_el0_param(char *str)
+{
+ allow_mismatched_32bit_el0 = true;
+ return 0;
+}
+early_param("allow_mismatched_32bit_el0", parse_32bit_el0_param);
+
static ssize_t aarch32_el0_show(struct device *dev,
struct device_attribute *attr, char *buf)
{