[U-Boot] [PATCH v2 00/23] spl: Add features for passing info from SPL to U-Boot proper

Simon Glass sjg at chromium.org
Tue Oct 2 11:22:30 UTC 2018


At present we have no standard way of passing information from SPL to
U-Boot. Such information may be the size of DRAM banks or some information
about the reset state of the machine,for example.

This series first adds a bloblist, which allows a list of 'blobs' to be
created, each with a tag so that subsystems can store data and retrieve it
later. Then it adds the SPL 'handoff' information, which uses bloblist.

Various minor sandbox enhancements are provided to make this easier, or to
support testing.

Changes in v2:
- Fix several typos
- Add back a blank line, and put one in the new function too
- Drop the wildcard in the .lds file as it is not needed

Simon Glass (23):
  log: Correct definition of log_msg_ret()
  spl: Add support for logging in SPL and TPL
  Add core support for a bloblist to convey data from SPL
  spl: Set up the bloblist in SPL
  bloblist: Locate bloblist in U-Boot
  test: Add a simple test for bloblist
  Add bloblist documentation
  spl: Support hash, input, pch, pci, rtc, tpm in SPL
  spl: Add a define for SPL_TPL_PROMPT
  spl: Make SPL_DISABLE_BANNER_PRINT a positive option
  spl: Add a comment to spl_set_bd()
  spl: Print a message if we are unable to load an image
  sandbox: Add a memory map to the sandbox README
  test/py: Add a way to pass flags to sandbox
  sandbox: Add an option to display of-platdata in SPL
  sandbox: Drop the deprecated 'sb' command
  sandbox: Add a new 'sb' command
  sandbox: Allow puts() output before global_data is set up
  sandbox: Refactor code to create os_jump_to_file()
  sandbox: Use malloc() and free() from os layer
  sandbox: Filter arguments when starting U-Boot
  sandbox: Boot in U-Boot through the standard call
  spl: Add support for passing handoff info to U-Boot proper

 arch/Kconfig                       |   1 +
 arch/powerpc/include/asm/spl.h     |   3 -
 arch/sandbox/cpu/eth-raw-os.c      |   9 +-
 arch/sandbox/cpu/os.c              | 115 +++++++++-----
 arch/sandbox/cpu/spl.c             |  31 +++-
 arch/sandbox/cpu/start.c           |  19 +++
 arch/sandbox/cpu/u-boot-spl.lds    |   2 +-
 arch/sandbox/include/asm/handoff.h |  18 +++
 arch/sandbox/include/asm/state.h   |   8 +
 board/sandbox/README.sandbox       |  14 +-
 cmd/Makefile                       |   1 +
 cmd/host.c                         |   5 -
 cmd/sb.c                           |  65 ++++++++
 common/Kconfig                     |  84 +++++++++-
 common/Makefile                    |   5 +-
 common/bloblist.c                  | 239 +++++++++++++++++++++++++++++
 common/board_f.c                   |  49 ++++++
 common/console.c                   |   7 +
 common/init/Makefile               |   1 +
 common/init/handoff.c              |  47 ++++++
 common/spl/Kconfig                 |  95 +++++++++++-
 common/spl/spl.c                   | 142 +++++++++++++----
 configs/sandbox_spl_defconfig      |   1 +
 doc/README.bloblist                |  82 ++++++++++
 doc/README.trace                   |   2 +-
 drivers/Makefile                   |  11 +-
 include/asm-generic/global_data.h  |   7 +
 include/bloblist.h                 | 195 +++++++++++++++++++++++
 include/handoff.h                  |  36 +++++
 include/log.h                      |  10 +-
 include/spl.h                      |  41 +++++
 include/test/suites.h              |   1 +
 test/Makefile                      |   1 +
 test/bloblist.c                    | 187 ++++++++++++++++++++++
 test/cmd_ut.c                      |   3 +
 test/dm/sf.c                       |   2 +-
 test/py/tests/test_fit.py          |  12 +-
 test/py/tests/test_handoff.py      |  14 ++
 test/py/tests/test_ofplatdata.py   |  31 +++-
 test/py/tests/test_vboot.py        |   2 +-
 test/py/u_boot_console_base.py     |   2 +-
 test/py/u_boot_console_sandbox.py  |  18 +++
 test/run                           |   2 +-
 43 files changed, 1510 insertions(+), 110 deletions(-)
 create mode 100644 arch/sandbox/include/asm/handoff.h
 create mode 100644 cmd/sb.c
 create mode 100644 common/bloblist.c
 create mode 100644 common/init/handoff.c
 create mode 100644 doc/README.bloblist
 create mode 100644 include/bloblist.h
 create mode 100644 include/handoff.h
 create mode 100644 test/bloblist.c
 create mode 100644 test/py/tests/test_handoff.py

-- 
2.19.0.605.g01d371f741-goog



More information about the U-Boot mailing list