
Hi Andre,
2016-06-19 19:33 GMT+09:00 André Przywara andre.przywara@arm.com:
Hi,
On 19/06/16 09:57, Masahiro Yamada wrote:
2016-06-18 18:40 GMT+09:00 Linus Walleij linus.walleij@linaro.org:
On Fri, Jun 17, 2016 at 2:51 PM, Masahiro Yamada yamada.masahiro@socionext.com wrote:
There are two enable methods supported by ARM64 Linux; psci and spin-table. The latter is simpler and easier to use for quick SoC bring-up.
So, I used the spin-table for my first ARMv8 SoC porting, but I found its support in U-Boot was poor. It is true there exists a code fragment for the spin code in arch/arm/cpu/armv8/start.S, but I see some problems:
Is part of the motivation for this approach to boot an ARMv8 system without using the ARM Trusted Firmware?
Yours, Linus Walleij
Yes, exactly.
It would be the best choice to switch over to PSCI with ATF in a long run, but, I decided to use spin-table for the initial SoC bring-up because of tight schedule.
So if you don't have an ATF port ready, why not use U-Boot's PSCI implementation meanwhile? I think there are efforts underway to make PSCI enablement for random new boards a walk in the park (by making the PSCI support as generic as possible, CCing Chen-Yu for this).
So, you mean U-Boot can serve PSCI for ARMv8 SoCs without ATF, right? (and efforts underway for further improvement)
I know PSCI support is available for ARMv7 (arch/arm/cpu/armv7/psci.S), but I could not find PSCI implementation in arch/arm/cpu/armv8/ directory in the mainline U-Boot.
I checked Chen-Yu's patches on Patchwork, but I think they are mostly for improvement of ARMv7 PSCI support.
If I am missing something, could you point me to the reference, please?
IIRC the spin-table boot method was just introduced to cope with cores that don't have EL3 and thus cannot provide PSCI services the normal way (and that don't want to or cannot sacrifice EL2 for that). So I am a bit wary of proliferating this SMP method.
Proliferating?
Many of ARM 32bit SoCs have vendor-specific SMP methods. On the other hand, ARM64 only has two methods; psci and spin-table.
Is this a problem?
Wouldn't it be better to help making U-Boot's PSCI stack as easy to use as possible? I don't see technical reasons that adding PSCI support for a board should be harder or more involved than adding spin-table support
- in the end you need to tell it about the SMP pen, maybe providing (or
faking?) reset and shutdown for 0.2 compliance.
Right.
My motivation is to bring up Linux quickly before ATF becomes ready.
From your statement, I felt
efforts for the ARMv8 PSCI implementation in U-Boot are underway. If so, I am definitely interested in it.