diff options
| author | Marek Vasut <[email protected]> | 2026-03-30 01:14:12 +0200 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 2026-04-13 17:34:02 -0600 |
| commit | b0d731d9563cd6fb8bd6c8304065e550d97a22c7 (patch) | |
| tree | ce81b22ed3d94a49ecb21125a24b1bddca49b91e /arch/arm/include | |
| parent | c8afe949d3dd5b2a2adb0e4f476372f2df8512de (diff) | |
arm: Add ARMv8-M aarch32 support
Add configuration for ARMv8-M aarch32 core, which are currently
Cortex-M23/M33 cores. These cores are treated similar to ARMv7-M
cores, except the code has to be compiled with matching compiler
-march=armv8-m.main flag . These cores have no MMU, they have MPU,
which is currently not configured.
Unlike ARMv7-M, these cores have 512 interrupt vectors. While the
SYS_ARM_ARCH should be set to 8, it is set to 7 because all of the
initialization code is built from arch/arm/cpu/armv7m and not armv8.
Furthermore, CONFIG_ARM64 must be disabled, although DTs for devices
using these cores do come from arch/arm64/boot/dts.
To avoid excess duplication in Makefiles, introduce one new Kconfig
symbol, CPU_V7M_V8M. The CPU_V7M_V8M cover both ARMv7-M and ARMv8-M
cores.
Signed-off-by: Marek Vasut <[email protected]>
Acked-by: Udit Kumar <[email protected]>
Diffstat (limited to 'arch/arm/include')
| -rw-r--r-- | arch/arm/include/asm/armv7_mpu.h | 2 | ||||
| -rw-r--r-- | arch/arm/include/asm/unified.h | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/arch/arm/include/asm/armv7_mpu.h b/arch/arm/include/asm/armv7_mpu.h index 16b9d0d1aeb..4a6524290d3 100644 --- a/arch/arm/include/asm/armv7_mpu.h +++ b/arch/arm/include/asm/armv7_mpu.h @@ -11,7 +11,7 @@ #include <linux/bitops.h> #endif -#ifdef CONFIG_CPU_V7M +#ifdef CONFIG_CPU_V7M_V8M #define AP_SHIFT 24 #define XN_SHIFT 28 #define TEX_SHIFT 19 diff --git a/arch/arm/include/asm/unified.h b/arch/arm/include/asm/unified.h index 2fae54ebd89..53715db4207 100644 --- a/arch/arm/include/asm/unified.h +++ b/arch/arm/include/asm/unified.h @@ -12,7 +12,7 @@ .syntax unified #endif -#ifdef CONFIG_CPU_V7M +#ifdef CONFIG_CPU_V7M_V8M #define AR_CLASS(x...) #define M_CLASS(x...) x #else |
