Attention is currently required from: Arthur Heymans. Hello Arthur Heymans,
I'd like you to do a code review. Please visit
https://review.coreboot.org/c/coreboot/+/63034
to review the following change.
Change subject: Docs/project_ideas: Make coreboot ARM BBR compliant ......................................................................
Docs/project_ideas: Make coreboot ARM BBR compliant
Change-Id: I0f5f1f0a613ed0ed3f8ecdf3c1330a0d78efe399 Signed-off-by: Arthur Heymans arthur@aheymans.xyz --- M Documentation/contributing/project_ideas.md 1 file changed, 31 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/34/63034/1
diff --git a/Documentation/contributing/project_ideas.md b/Documentation/contributing/project_ideas.md index 75c78ca..5d7b4496 100644 --- a/Documentation/contributing/project_ideas.md +++ b/Documentation/contributing/project_ideas.md @@ -228,3 +228,34 @@ ### Mentors * Patrick Rudolph patrick.rudolph@9elements.com * Christian Walter christian.walter@9elements.com + +## Make coreboot ARM (L)BBR compliant +The ARM [BBR](https://developer.arm.com/documentation/den0044/f/), Base Boot +Requirements is a firmware specification describing how ARM64 servers and +hyperscalers should load an operating system. The main purpose of this +specification is to boot Operating systems like Linux without +[devicetree](https://www.kernel.org/doc/html/latest/devicetree/usage-model.html) +but using SMBIOS, ACPI and UEFI runtime services. + +Currently coreboot has no support for SMBIOS or ACPI. +coreboot also does not support runtime services by design. +The mandated UEFI runtime services seem only useful to provide Linux both +SMBIOS & ACPI. + +So the scope of this project would be: +* Port the QEMU aarch64 sbsa-ref machine to coreboot +* Implement SMBIOS on ARM64 +* Implement ACPI on ARM64 +* Investigate how to provide minimal UEFI runtime services, e.g. in a payload + or better find an (upstreamable) way in Linux on how to pass ACPI & SMBIOS without + UEFI runtime services + +### Requirements +* Hardware knowledge: Nothing (target is emulated) +* coreboot knowledge: Know how tables are generated/injected and passed to + Payloads +* Linux knowledge: Being able to compile and debug it. Some knowledge on the + boot process is certainly helpful. + +### Mentors +* Arthur Heymans arthur.heymans@9elements.com