u-boot/arch/arm/mach-sunxi
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
..
dram_timings WS cleanup: remove SPACE(s) followed by TAB 2021-09-30 09:08:16 -04:00
board.c sunxi: move Cortex SMPEN setting into start.S 2022-02-04 00:09:36 +00:00
clock_sun4i.c sunxi: Clean up inclusions of asm/arch/gpio.h 2021-10-11 10:46:44 +01:00
clock_sun6i.c common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
clock_sun8i_a83t.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
clock_sun9i.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
clock_sun50i_h6.c sunxi: clock: H6/H616: Fix PLL clock factor encodings 2021-07-10 01:22:09 +01:00
clock.c sunxi: Clean up inclusions of asm/arch/gpio.h 2021-10-11 10:46:44 +01:00
cpu_info.c sunxi: Add support for H616 SoC 2021-01-25 21:52:01 +00:00
dram_helpers.c common: Move get_ticks() function out of common.h 2019-12-02 18:23:13 -05:00
dram_sun4i.c WS cleanup: remove SPACE(s) followed by TAB 2021-09-30 09:08:16 -04:00
dram_sun6i.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
dram_sun8i_a23.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
dram_sun8i_a33.c WS cleanup: remove SPACE(s) followed by TAB 2021-09-30 09:08:16 -04:00
dram_sun8i_a83t.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
dram_sun9i.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
dram_sun50i_h6.c sunxi: clock: H6/H616: Fix PLL clock factor encodings 2021-07-10 01:22:09 +01:00
dram_sun50i_h616.c sunxi: Fix H616 DRAM read calibration for dual rank 2022-01-30 01:25:00 +00:00
dram_sunxi_dw.c sunxi: enable dual rank memory on R40 2021-04-16 01:12:58 +01:00
gtbus_sun9i.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
Kconfig sunxi: move Cortex SMPEN setting into start.S 2022-02-04 00:09:36 +00:00
Makefile i2c: Add a DM_I2C driver for the sun8i RSB controller 2021-10-12 10:19:18 +01:00
pinmux.c sunxi: gpio: Fix up pointer arithmetic 2022-01-30 01:25:00 +00:00
pmic_bus.c sunxi: pmic_bus: Use the DM PMIC interface when possible 2021-10-12 10:48:37 +01:00
prcm.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
rmr_switch.S sunxi: Introduce common symbol for H6 like SoCs 2021-01-25 21:52:00 +00:00
spl_spi_sunxi.c SPL: Add struct spl_boot_device parameter into spl_parse_board_header() 2022-01-20 11:35:29 +01:00