[U-Boot] [PATCH 00/31] binman: Expand support for SPL and TPL

Simon Glass sjg at chromium.org
Fri Sep 14 10:57:05 UTC 2018


At present binman only has basic support for SPL and very little for TPL.
This series expands that a bit.

Included are:
- Update SPL and TPL device trees with image offset, etc.
- Improvements to the Fdt class to allow it to automatically sync DT
    changes back to the file from the Python Prop and Node objects,
    without requiring the caller to do the actual DT operation
- New entry types for list of files
- Compression of blob entries (just LZ4 for now)
- Hashing entries and sections, allowing for run-time checks
- Entries which can automatically expand to fill available space
- ELF images
- Various minor fixes and improvements


Simon Glass (31):
  fdt: Add Python support for adding/removing nodes
  binman: Move 'special properties' docs to README.entries
  binman: Allow 'fill' entry to have a size of 0
  binman: Generate an error when text is not provided
  binman: Add x86 support for starting TPL
  binman: Tidy up the vblock entry
  binman: Support building a selection of images
  dtoc: Allow syncing of the device tree back to a file
  dtoc: Fixed endianness in Prop.GetEmpty()
  dtoc: Support adding new nodes
  dtoc: Add methods for adding and updating properties
  dtoc: Add a way to create an Fdt object from a data block
  binman: Add an entry method for getting the default filename
  binman: Move state information into a new module
  binman: Move state logic into the state module
  binman: Centralise device-tree updates within binman
  binman: Obtain the list of device trees from the config
  binman: Allow control of whether a fake DT is used
  binman: Support updating all device tree files
  patman: Detect missing tools and report them
  binman: Support compressed entries
  binman: Allow zero-size sections
  binman: Support adding files
  binman: Support expanding entries
  binman: Mention section attributes in docs
  binman: Support hashing entries
  binman: Support x86 microcode in TPL
  binman: Record the parent section of each section
  binman: Correct fmap output on x86
  binman: Support ELF files for U-Boot and SPL
  binman: Allow writing a map file when something goes wrong

 scripts/dtc/pylibfdt/libfdt.i_shipped         |  34 +-
 tools/binman/README                           |  49 ++-
 tools/binman/README.entries                   | 103 ++++-
 tools/binman/bsection.py                      |  69 ++-
 tools/binman/cmdline.py                       |   4 +
 tools/binman/control.py                       |  96 ++---
 tools/binman/entry.py                         |  92 +++-
 tools/binman/entry_test.py                    |  16 +
 tools/binman/etype/_testing.py                |   7 +-
 tools/binman/etype/blob.py                    |  49 ++-
 tools/binman/etype/blob_dtb.py                |  33 ++
 tools/binman/etype/files.py                   |  57 +++
 tools/binman/etype/fill.py                    |   2 +-
 tools/binman/etype/fmap.py                    |  11 +-
 tools/binman/etype/section.py                 |  14 +-
 tools/binman/etype/text.py                    |   3 +
 tools/binman/etype/u_boot_dtb.py              |   9 +-
 tools/binman/etype/u_boot_dtb_with_ucode.py   |  27 +-
 tools/binman/etype/u_boot_elf.py              |  39 ++
 tools/binman/etype/u_boot_spl_dtb.py          |   6 +-
 tools/binman/etype/u_boot_spl_elf.py          |  24 ++
 .../binman/etype/u_boot_spl_with_ucode_ptr.py |   2 +
 tools/binman/etype/u_boot_tpl_dtb.py          |   6 +-
 .../binman/etype/u_boot_tpl_dtb_with_ucode.py |  25 ++
 .../binman/etype/u_boot_tpl_with_ucode_ptr.py |  27 ++
 tools/binman/etype/u_boot_ucode.py            |  26 +-
 tools/binman/etype/u_boot_with_ucode_ptr.py   |  24 +-
 tools/binman/etype/vblock.py                  |  11 +-
 tools/binman/etype/x86_start16_tpl.py         |  30 ++
 tools/binman/fmap_util.py                     |   6 +-
 tools/binman/ftest.py                         | 395 +++++++++++++++++-
 tools/binman/image.py                         |  30 +-
 tools/binman/state.py                         | 253 +++++++++++
 tools/binman/test/80_fill_empty.dts           |  15 +
 tools/binman/test/81_x86-start16-tpl.dts      |  14 +
 tools/binman/test/82_fdt_update_all.dts       |  18 +
 tools/binman/test/83_compress.dts             |  11 +
 tools/binman/test/84_files.dts                |  11 +
 tools/binman/test/85_files_compress.dts       |  11 +
 tools/binman/test/86_files_none.dts           |  12 +
 tools/binman/test/87_files_no_pattern.dts     |  11 +
 tools/binman/test/88_expand_size.dts          |  43 ++
 tools/binman/test/89_expand_size_bad.dts      |  14 +
 tools/binman/test/90_hash.dts                 |  12 +
 tools/binman/test/91_hash_no_algo.dts         |  11 +
 tools/binman/test/92_hash_bad_algo.dts        |  12 +
 tools/binman/test/93_x86_tpl_ucode.dts        |  29 ++
 tools/binman/test/94_fmap_x86.dts             |  20 +
 tools/binman/test/95_fmap_x86_section.dts     |  22 +
 tools/binman/test/96_elf.dts                  |  14 +
 tools/binman/test/97_elf_strip.dts            |  15 +
 tools/binman/test/99_hash_section.dts         |  18 +
 tools/binman/test/files/1.dat                 |   1 +
 tools/binman/test/files/2.dat                 |   1 +
 .../binman/test/files/ignored_dir.dat/ignore  |   0
 tools/binman/test/files/not-this-one          |   1 +
 tools/dtoc/fdt.py                             | 197 ++++++++-
 tools/dtoc/test_fdt.py                        |  67 ++-
 tools/patman/tools.py                         |  47 ++-
 59 files changed, 2034 insertions(+), 172 deletions(-)
 create mode 100644 tools/binman/etype/blob_dtb.py
 create mode 100644 tools/binman/etype/files.py
 create mode 100644 tools/binman/etype/u_boot_elf.py
 create mode 100644 tools/binman/etype/u_boot_spl_elf.py
 create mode 100644 tools/binman/etype/u_boot_tpl_dtb_with_ucode.py
 create mode 100644 tools/binman/etype/u_boot_tpl_with_ucode_ptr.py
 create mode 100644 tools/binman/etype/x86_start16_tpl.py
 create mode 100644 tools/binman/state.py
 create mode 100644 tools/binman/test/80_fill_empty.dts
 create mode 100644 tools/binman/test/81_x86-start16-tpl.dts
 create mode 100644 tools/binman/test/82_fdt_update_all.dts
 create mode 100644 tools/binman/test/83_compress.dts
 create mode 100644 tools/binman/test/84_files.dts
 create mode 100644 tools/binman/test/85_files_compress.dts
 create mode 100644 tools/binman/test/86_files_none.dts
 create mode 100644 tools/binman/test/87_files_no_pattern.dts
 create mode 100644 tools/binman/test/88_expand_size.dts
 create mode 100644 tools/binman/test/89_expand_size_bad.dts
 create mode 100644 tools/binman/test/90_hash.dts
 create mode 100644 tools/binman/test/91_hash_no_algo.dts
 create mode 100644 tools/binman/test/92_hash_bad_algo.dts
 create mode 100644 tools/binman/test/93_x86_tpl_ucode.dts
 create mode 100644 tools/binman/test/94_fmap_x86.dts
 create mode 100644 tools/binman/test/95_fmap_x86_section.dts
 create mode 100644 tools/binman/test/96_elf.dts
 create mode 100644 tools/binman/test/97_elf_strip.dts
 create mode 100644 tools/binman/test/99_hash_section.dts
 create mode 100644 tools/binman/test/files/1.dat
 create mode 100644 tools/binman/test/files/2.dat
 create mode 100644 tools/binman/test/files/ignored_dir.dat/ignore
 create mode 100644 tools/binman/test/files/not-this-one

-- 
2.19.0.397.gdd90340f6a-goog



More information about the U-Boot mailing list