u-boot-brain/common/spl
Oded Gabbay 8c36e99f21 armv8: release slave cores from CPU_RELEASE_ADDR
When using ARMv8 with ARMV8_SPIN_TABLE=y, we want the slave cores to
wait on spin_table_cpu_release_addr, until the Linux kernel will "wake" them
by writing to that location. The address of spin_table_cpu_release_addr is
transferred to the kernel using the device tree that is updated by
spin_table_update_dt().

However, if we also use SPL, then the slave cores are stuck at
CPU_RELEASE_ADDR instead and as a result, never wake up.

This patch releases the slave cores by writing spl_image->entry_point to
CPU_RELEASE_ADDR location before the end of the SPL code
(at jump_to_image_no_args()).

That way, the slave cores will start to execute the u-boot and will get to
the spin-table code and wait on the correct address
(spin_table_cpu_release_addr).

Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
Cc: Simon Glass <sjg@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
2017-01-14 16:47:10 -05:00
..
Kconfig spl: move RAM boot support in separate file 2017-01-14 16:46:26 -05:00
Makefile spl: move RAM boot support in separate file 2017-01-14 16:46:26 -05:00
spl_dfu.c spl: dfu: adding dfu support functions for SPL-DFU 2016-09-27 23:30:19 +02:00
spl_ext.c ext4: Allow reading files with non-zero offset, clamp read len 2016-11-21 14:07:27 -05:00
spl_fat.c spl: Update spl_load_simple_fit() to take an spl_image param 2016-10-06 15:08:54 -04:00
spl_fit.c spl: Update spl_load_simple_fit() to take an spl_image param 2016-10-06 15:08:54 -04:00
spl_mmc.c SPL: make struct spl_image 64-bit safe 2017-01-04 16:37:41 +01:00
spl_nand.c spl: Add a name to the SPL load-image methods 2016-12-09 08:40:13 -05:00
spl_net.c spl: Add a name to the SPL load-image methods 2016-12-09 08:40:13 -05:00
spl_nor.c spl: Add a name to the SPL load-image methods 2016-12-09 08:40:13 -05:00
spl_onenand.c spl: Add a name to the SPL load-image methods 2016-12-09 08:40:13 -05:00
spl_ram.c spl: move RAM boot support in separate file 2017-01-14 16:46:26 -05:00
spl_sata.c spl: Add a name to the SPL load-image methods 2016-12-09 08:40:13 -05:00
spl_spi.c spl: Add a name to the SPL load-image methods 2016-12-09 08:40:13 -05:00
spl_ubi.c spl: Add a name to the SPL load-image methods 2016-12-09 08:40:13 -05:00
spl_usb.c spl: Add a name to the SPL load-image methods 2016-12-09 08:40:13 -05:00
spl_ymodem.c spl: Add a name to the SPL load-image methods 2016-12-09 08:40:13 -05:00
spl.c armv8: release slave cores from CPU_RELEASE_ADDR 2017-01-14 16:47:10 -05:00