[U-Boot] [PATCH] arm64: spin-table: add more information in Kconfig help
Masahiro Yamada
yamada.masahiro at socionext.com
Thu Jan 19 13:07:53 CET 2017
This feature seems to be sometimes misunderstood. The intention is
[1] Bring the slaves into U-Boot proper image, not SPL (unless
you have a special reason).
[2] The operation must be done in a board (SoC) specific manner
since how to wake the slaves from the Boot ROM is SoC specific.
[3] The slaves must enter U-Boot proper after U-Boot relocates
itself because the "cpu-release-addr" property points to the
relocated memory area.
[2] is already explained in the help. We can make [1] even clearer
by mentioning "U-Boot proper" instead of "U-Boot". [3] is missing,
so I am adding it to the list.
Signed-off-by: Masahiro Yamada <yamada.masahiro at socionext.com>
---
arch/arm/cpu/armv8/Kconfig | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/arch/arm/cpu/armv8/Kconfig b/arch/arm/cpu/armv8/Kconfig
index 22dce88..7388eca 100644
--- a/arch/arm/cpu/armv8/Kconfig
+++ b/arch/arm/cpu/armv8/Kconfig
@@ -12,8 +12,11 @@ config ARMV8_SPIN_TABLE
To use this feature, you must do:
- Specify enable-method = "spin-table" in each CPU node in the
Device Tree you are using to boot the kernel
- - Let secondary CPUs in U-Boot (in a board specific manner)
- before the master CPU jumps to the kernel
+ - Bring secondary CPUs into U-Boot proper (in a board specific
+ manner) before the master CPU jumps to the kernel, but *after*
+ relocation. Otherwise, the master CPU will see a different copy
+ of the spin code, then the secondary CPUs will spin in the
+ unprotected memory area.
U-Boot automatically does:
- Set "cpu-release-addr" property of each CPU node
--
2.7.4
More information about the U-Boot
mailing list