[U-Boot] armv8: release slave cores from CPU_RELEASE_ADDR

Tom Rini trini at konsulko.com
Sun Jan 15 19:30:13 CET 2017


On Wed, Dec 28, 2016 at 01:38:35PM +0200, Oded Gabbay wrote:

> 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 at gmail.com>
> Cc: Simon Glass <sjg at chromium.org>
> Reviewed-by: Simon Glass <sjg at chromium.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170115/ffa72879/attachment.sig>


More information about the U-Boot mailing list