u-boot/arch/arm/cpu/armv7
Andre Przywara 2564fce7ee sunxi: move Cortex SMPEN setting into start.S
According to their TRMs, Cortex ARMv7 CPUs with SMP support require the
ACTLR.SMPEN bit to be set as early as possible, before any cache or TLB
maintenance operations are done. As we do those things still in start.S,
we need to move the SMPEN bit setting there, too.

This introduces a new ARMv7 wide symbol and code to set bit 6 in ACTLR
very early in start.S, and moves sunxi boards over to use that instead
of the custom code we had in our board.c file (where it was called
technically too late).

In practice we got away with this so far, because at this point all the
other cores were still in reset, so any broadcasting would have been
ignored anyway. But it is architecturally cleaner to do it early, and
we move a core specific piece of code out of board.c.

This also gets rid of the ARM_CORTEX_CPU_IS_UP kludge I introduced a few
years back, and moves the respective logic into the new Kconfig entry.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2022-02-04 00:09:36 +00:00
..
bcm235xx common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
bcm281xx reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
bcmcygnus reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
bcmnsp reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
iproc-common arm: iproc: Add higher speed configurations 2021-07-06 14:07:36 -04:00
kona-common ARM: kona: fix clk_bsc_enable() type mismatch for LTO 2021-05-24 14:21:30 -04:00
ls102xa Finish conversion of CONFIG_SYS_CLK_FREQ to Kconfig 2021-12-27 16:20:18 -05:00
s5p-common doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
s5p4418 reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
stv0991 stv0991: remove specific CONFIG_STV0991 configs 2021-10-08 08:30:18 +02:00
sunxi common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
vf610 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
arch_timer.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
cache_v7.c arm: cp15: remove weak function arm_init_domains 2021-03-02 15:53:37 -05:00
cache_v7_asm.S SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
config.mk SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
cp15.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
cpu.c common: Move enable/disable_interrupts out of common.h 2019-12-02 18:25:01 -05:00
exception_level.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
Kconfig sunxi: move Cortex SMPEN setting into start.S 2022-02-04 00:09:36 +00:00
lowlevel_init.S SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
Makefile Convert CONFIG_SKIP_LOWLEVEL_INIT et al to Kconfig 2021-08-31 17:47:49 -04:00
mpu_v7r.c common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
nonsec_virt.S ARM: HYP/non-sec: migrate stack 2018-07-25 14:57:43 +02:00
psci-common.c WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
psci.S ARM: PSCI: initialize stack pointer on secondary CPUs 2018-07-23 10:53:12 +02:00
sctlr.S arm: armv7: allow unaligned memory access 2018-06-03 15:27:21 +02:00
smccc-call.S arm: Leave smccc calls in .text when efi_loader=n 2019-02-13 09:40:06 +01:00
start.S sunxi: move Cortex SMPEN setting into start.S 2022-02-04 00:09:36 +00:00
syslib.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
virt-dt.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
virt-v7.c common: Drop net.h from common header 2020-05-18 17:33:31 -04:00