[RFC PATCH 0/9] Universal Payload initial series

Simon Glass sjg at chromium.org
Thu Aug 31 01:29:14 CEST 2023


Universal Payload (UPL) is an upcoming Industry Standard for firmware
components. UPL is designed to improve interoperability within the
firmware industry, allowing mixing and matching of projects with less
friction and fewer project-specific implementations. UPL is
cross-platform, supporting ARM, x86 and RISC-V initially.

This series provides some initial support for this, for comment only.


Simon Glass (9):
  upl: Add support for reading a upl handoff
  upl: Add support for writing a upl handoff
  upl: Add basic tests
  upl: Add a command
  upl: Add support for Universal Payload in SPL
  spl: Plumb in the Universal Payload handoff
  Plumb in universal payload to the init process
  sandbox_vpl: Enable Universal Payload
  upl: Add initial documentation

 boot/Kconfig                      |  72 +++-
 boot/Makefile                     |   4 +
 boot/upl_common.c                 |  51 +++
 boot/upl_common.h                 |  24 ++
 boot/upl_read.c                   | 607 +++++++++++++++++++++++++++++
 boot/upl_write.c                  | 623 ++++++++++++++++++++++++++++++
 cmd/Kconfig                       |   7 +
 cmd/Makefile                      |   1 +
 cmd/upl.c                         |  99 +++++
 common/board_f.c                  |  22 ++
 common/board_r.c                  |   2 +
 common/spl/Makefile               |   2 +
 common/spl/spl.c                  |   6 +
 common/spl/spl_fit.c              |  22 ++
 common/spl/spl_upl.c              | 153 ++++++++
 configs/sandbox_defconfig         |   6 +-
 configs/sandbox_vpl_defconfig     |   4 +
 doc/usage/cmd/upl.rst             | 149 +++++++
 doc/usage/index.rst               |   2 +
 doc/usage/upl.rst                 |  27 ++
 include/asm-generic/global_data.h |  15 +
 include/spl.h                     |  11 +
 include/upl.h                     | 361 +++++++++++++++++
 test/boot/Makefile                |   2 +
 test/boot/upl.c                   | 457 ++++++++++++++++++++++
 test/py/tests/test_upl.py         |  25 ++
 26 files changed, 2750 insertions(+), 4 deletions(-)
 create mode 100644 boot/upl_common.c
 create mode 100644 boot/upl_common.h
 create mode 100644 boot/upl_read.c
 create mode 100644 boot/upl_write.c
 create mode 100644 cmd/upl.c
 create mode 100644 common/spl/spl_upl.c
 create mode 100644 doc/usage/cmd/upl.rst
 create mode 100644 doc/usage/upl.rst
 create mode 100644 include/upl.h
 create mode 100644 test/boot/upl.c
 create mode 100644 test/py/tests/test_upl.py

-- 
2.42.0.rc2.253.gd59a3bf2b4-goog



More information about the U-Boot mailing list