On 18 May 2018 at 13:37, Grant Likely <grant.lik...@arm.com> wrote:
> On 18/05/2018 12:13, Andre Przywara wrote:
>>
>> Hi,
>>
>> On 18/05/18 12:04, Grant Likely wrote:
>>>
>>> I'm adding some EBBR text around the CPU state at boot and I've lost
>>> track of what is being done for multicore bringup. What is the current
>>> state-of-the-art for multicore boot protocol when PSCI isn't available?
>>
>>
>> It is my understanding that for arm64 PSCI is the only accepted SMP
>> bringup method. Now the first ARM64 hardware platform didn't have EL3,
>> but wanted to have KVM running, so there was this decision to allow this
>> *one* alternative method to enable this platform.
>> If I understand Will and Catalin correctly, there is a strong push for
>> *no* other methods being added to the kernel.
>>
>> So for ARM64 the answer should be: PSCI or spin table. Full stop.
>
>
> AFAIU, MP Boot (ACPI Parking Protocol?) and Spin table are two separate
> methods. Correct? So that would be three methods we've got in-kernel at the
> moment.
>

Indeed.

>> For ARM it's quite a different story, though. "New" platforms tend to
>> implement PSCI, but there are quite some platforms out there with their
>> own methods. Not sure we care about them?
>
>
> If EL3 is present, I think PSCI is the only interface EBBR should allow.
> Proprietary methods are the antithesis of what EBBR is intended to do.
>

ARMv8-A permits implementation without EL2 or EL3 IIUC, so from a spec
pov, it makes sense to mandate spin table or ACPI parking protocol for
that use case.

>> Actually, what is the purpose of the EBBR elaborating on SMP bringup in
>> the first place?
>
>
> Primary reason is because EBBR specifies PSCI when EL3 exists. I don't want
> EBBR to go into details, but rather to point at the relevant specs. The
> question is what to do when EL3 isn't present.
>
> "We don't care about those" is an acceptable answer.
>
> I'm also think it is appropriate to compare the scope of EBBR with SBBR. ie.
> An SBBR compliant platform should be by definition EBBR compliant (SBBR is
> more restrictive), but the converse is not true. However, to claim that
> requires allowing for Microsoft's MP Boot Protocol specified in SBBR; or
> explicitly carving out platforms that don't implement PSCI as being
> incompatible with EBBR.
>
> g.
>
>
>>
>> Cheers,
>> Andre.
>>
>>
>>> SBBR allows for the MP Boot Protocol; with the intend of phasing it out:
>>>
>>>
>>> https://acpica.org/sites/acpica/files/MP%20Startup%20for%20ARM%20platforms.doc
>>>
>>>
>>> The kernel documents the spin table method:
>>>
>>>
>>> https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/tree/Documentation/arm64/booting.txt
>>>
>>>
>>> What are the cool kids currently doing here?
>>>
>>> g.
>>> _______________________________________________
>>> Arm.ebbr-discuss mailing list
>>> arm.ebbr-disc...@arm.com
>
>
> _______________________________________________
> Arm.ebbr-discuss mailing list
> arm.ebbr-disc...@arm.com
_______________________________________________
boot-architecture mailing list
boot-architecture@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/boot-architecture

Reply via email to