u-boot-brain/arch/arm/cpu
Michael Walle b27f48540e armv8: layerscape: fix spin-table support
Spin tables are broken with bootefi. This is because - in contrast to
the booti call chain - there is no call to smp_kick_all_cpus(). Due to
this missing call the secondary CPUs are never released from their "wait
for interrupt state", see secondary_boot_func() in lowlevel.S.

Originally, this "wait for interrupt" is there to make sure, the spin
table is cleared before the secondary cores read it for the first time.
But the boot flow for the layerscape architecture is different from
that. The CPUs are release from their BootROM _after_ U-Boot's
spin-table is cleared, see fsl_layerscape_wake_seconday_cores() in mp.c.
Thus, there is no need to wait for this interrupt and no need for
kicking all cores on cpu_release. An atomic 64bit write to the
spin-table and a "sev" is sufficient.

Signed-off-by: Michael Walle <michael@walle.cc>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-07-27 14:16:27 +05:30
..
arm11 common: Drop net.h from common header 2020-05-18 17:33:31 -04:00
arm720t rename symbol: CONFIG_TEGRA -> CONFIG_ARCH_TEGRA 2020-05-15 14:47:35 -04:00
arm920t common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
arm926ejs treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
arm946es common: Move enable/disable_interrupts out of common.h 2019-12-02 18:25:01 -05:00
arm1136 treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
arm1176 SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
armv7 treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
armv7m common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
armv8 armv8: layerscape: fix spin-table support 2020-07-27 14:16:27 +05:30
pxa common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
sa1100 common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
Makefile SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
u-boot-spl.lds spl: fix linker size check off-by-one errors 2019-05-05 08:48:50 -04:00
u-boot.lds ARM: Specify aligned address for secure section instead of using attributes 2018-09-07 09:11:42 -04:00