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