Hi everyone, After 2 years of endless discussions and relentless effort, we officially landed the V0.9 (and V0.9.1) of *Universal Payload Specification (UPL)* yesterday!!!
V0.9 formally introduces using Device Trees as the standardized Payload Handoff Format to pass data from Platform Init (e.g. coreboot) to Payload (e.g. UEFI payload or LinuxBoot). This reduces the data handoff friction and proprietary handoff formats currently exist in each and every firmware project (e.g. HOB, coreboot table).
A brief historical background: Universal Payload started as a sub-project under Intel's Universal Scalable Firmware Initiative. Since its introduction, Intel has been actively seeking for the firmware community's input to help make it a reality, to help standardise a common architecture and interfaces between Platform Init and Payload. Later on, 9elements actively collaborated with Intel to work with all major firmware projects (coreboot, U-Boot, edk2, Linuxboot) with the support of all architecture (x86, Arm, RISC-V). We have been actively promoting and collecting feedback in every means we could (mailing lists, OSFC, OCP Global Summit, COSCUP). I could not find words to summarize the 2 years tireless efforts made by all the UPL contributors: with about *2-4 meetings per month since May 2022*; countless back and forth discussion and some compromises made in between to find common ground that fits all Firmware solutions and projects; some technical setbacks with failed POCs and then persistent testings on coding sites; new expectations and issues pop up now and there that setback the initial timeline again and again... I owe all of them my greatest gratitude for their hard work. I would like to specially thanks *Vincent Zimmer* from Intel for making this happen in the first place - early commitment from *ARM*, Intel/ edk2 / Slimbootloaders maintainers, *Chasel Chiu* and *Dong Guo*, *Maximilian Brune* and *Arther Heymans* from coreboot, *Dhaval Sharma* and *Aaron Durbin* from Rivos, and *Simon Glass* & *Ron Minnich* who are both great visionaries in the Open Firmware world. In short, this is truly the first ever community effort that brings all firmware communities to collaborate together, in the very common goal to make Open Source Firmware a better place for everyone.
For sure, this cannot and never will please everyone, and like all things there are always many issues in the first revision. Hence, I sincerely pledge to all of you, to help and contribute to this spec. This is an open invitation, as we follow the ethos of "*For Community, By Community*", the first open source spec that is owned by all the open firmware communities.
Please refer here for the latest spec: *universalpayload.github.io/spec http://universalpayload.github.io/spec*
Feel free to contribute here: *https://github.com/UniversalPayload/spec https://github.com/UniversalPayload/spec*
WIP coreboot patch:
*https://review.coreboot.org/c/coreboot/+/76591 https://review.coreboot.org/c/coreboot/+/76591*
Last but not least, I also wanted to specially thank 9elements Cyber Security for all the support since the very beginning that helps me to navigate through all the hurdles and issues for the past 2 years. Let's continue to work together for a better Open Source Firmware for everyone.
Thanks, Sheng
+U-Boot Mailing List +Tom Rini
On Fri, 12 Jul 2024 at 15:37, Lean Sheng Tan via coreboot coreboot@coreboot.org wrote:
Hi everyone, After 2 years of endless discussions and relentless effort, we officially landed the V0.9 (and V0.9.1) of Universal Payload Specification (UPL) yesterday!!!
V0.9 formally introduces using Device Trees as the standardized Payload Handoff Format to pass data from Platform Init (e.g. coreboot) to Payload (e.g. UEFI payload or LinuxBoot). This reduces the data handoff friction and proprietary handoff formats currently exist in each and every firmware project (e.g. HOB, coreboot table).
A brief historical background: Universal Payload started as a sub-project under Intel's Universal Scalable Firmware Initiative. Since its introduction, Intel has been actively seeking for the firmware community's input to help make it a reality, to help standardise a common architecture and interfaces between Platform Init and Payload. Later on, 9elements actively collaborated with Intel to work with all major firmware projects (coreboot, U-Boot, edk2, Linuxboot) with the support of all architecture (x86, Arm, RISC-V). We have been actively promoting and collecting feedback in every means we could (mailing lists, OSFC, OCP Global Summit, COSCUP). I could not find words to summarize the 2 years tireless efforts made by all the UPL contributors: with about 2-4 meetings per month since May 2022; countless back and forth discussion and some compromises made in between to find common ground that fits all Firmware solutions and projects; some technical setbacks with failed POCs and then persistent testings on coding sites; new expectations and issues pop up now and there that setback the initial timeline again and again... I owe all of them my greatest gratitude for their hard work. I would like to specially thanks Vincent Zimmer from Intel for making this happen in the first place - early commitment from ARM, Intel/ edk2 / Slimbootloaders maintainers, Chasel Chiu and Dong Guo, Maximilian Brune and Arther Heymans from coreboot, Dhaval Sharma and Aaron Durbin from Rivos, and Simon Glass & Ron Minnich who are both great visionaries in the Open Firmware world. In short, this is truly the first ever community effort that brings all firmware communities to collaborate together, in the very common goal to make Open Source Firmware a better place for everyone.
For sure, this cannot and never will please everyone, and like all things there are always many issues in the first revision. Hence, I sincerely pledge to all of you, to help and contribute to this spec. This is an open invitation, as we follow the ethos of "For Community, By Community", the first open source spec that is owned by all the open firmware communities.
Please refer here for the latest spec: universalpayload.github.io/spec
Feel free to contribute here: https://github.com/UniversalPayload/spec
WIP coreboot patch: https://review.coreboot.org/c/coreboot/+/76591
Last but not least, I also wanted to specially thank 9elements Cyber Security for all the support since the very beginning that helps me to navigate through all the hurdles and issues for the past 2 years. Let's continue to work together for a better Open Source Firmware for everyone.
Thanks, Sheng _______________________________________________ coreboot mailing list -- coreboot@coreboot.org To unsubscribe send an email to coreboot-leave@coreboot.org