On 3/27/26 6:52 PM, Tom Rini wrote:
On Wed, Mar 25, 2026 at 02:13:57AM +0100, Marek Vasut wrote:
way that it either can't be upstream, or wouldn't be handled externally.
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 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_V78M. The CPU_V78M cover both ARMv7-M and ARMv8-M cores.

My only feedback here is that I don't love "CPU_V78M" as a symbol name.
Since we don't support ARMv6-M does a CORTEX_M or similar name instead
sound OK? Or is there some other term that covers what is common to v7m
and v8m (and what we care about in U-Boot) without implying things in
other Cortex-M cores that we don't support?
CPU_V7M_V8M could be an alternative ?

Reply via email to