123b5877cSLinus Walleijif ARM64 223b5877cSLinus Walleij 323b5877cSLinus Walleijconfig ARMV8_MULTIENTRY 4a187559eSBin Meng boolean "Enable multiple CPUs to enter into U-Boot" 523b5877cSLinus Walleij 6*6b6024eaSMasahiro Yamadaconfig ARMV8_SPIN_TABLE 7*6b6024eaSMasahiro Yamada bool "Support spin-table enable method" 8*6b6024eaSMasahiro Yamada depends on ARMV8_MULTIENTRY && OF_LIBFDT 9*6b6024eaSMasahiro Yamada help 10*6b6024eaSMasahiro Yamada Say Y here to support "spin-table" enable method for booting Linux. 11*6b6024eaSMasahiro Yamada 12*6b6024eaSMasahiro Yamada To use this feature, you must do: 13*6b6024eaSMasahiro Yamada - Specify enable-method = "spin-table" in each CPU node in the 14*6b6024eaSMasahiro Yamada Device Tree you are using to boot the kernel 15*6b6024eaSMasahiro Yamada - Let secondary CPUs in U-Boot (in a board specific manner) 16*6b6024eaSMasahiro Yamada before the master CPU jumps to the kernel 17*6b6024eaSMasahiro Yamada 18*6b6024eaSMasahiro Yamada U-Boot automatically does: 19*6b6024eaSMasahiro Yamada - Set "cpu-release-addr" property of each CPU node 20*6b6024eaSMasahiro Yamada (overwrites it if already exists). 21*6b6024eaSMasahiro Yamada - Reserve the code for the spin-table and the release address 22*6b6024eaSMasahiro Yamada via a /memreserve/ region in the Device Tree. 23*6b6024eaSMasahiro Yamada 2423b5877cSLinus Walleijendif 25