[PATCH 00/20] binman: Enhance FIT support for firmware
Simon Glass
sjg at chromium.org
Sat Jul 20 12:49:30 CEST 2024
So far Binman's FIT support is designed for booting the OS. But FIT is
also used to hold firmware images.
One missing feature is the ability to produce the smaller FDTs used by
SPL builds.
This series adds this, running fdtgrep on each devicetree to create the
correct one for each model, for a particular boot phase. This allows,
for example, a particular SPL image + devicetree combination to be
selected during boot.
Simon Glass (20):
fixdep: Support VPL
binman: Correct an error in the FIT-template example
binman: Tidy up bintool docs
binman: Tidy up comment for Bintoolfdt_add_pubkey.run()
binman: Move problem-checking code into a function
binman: elf: Add more debugging to LookupAndWriteSymbols()
binman: Write the compressed output to a file
binman: Correct comment in blob_dtb GetFdtEtype()
binman: Mention expanded entries in u-boot-vpl
binman: Fix a comment typo in _DoReadFileDtb()
binman: Correct indentation in testSplPubkeyDtb
binman: Add a bintool for fdtgrep
binman: Remove dependency on pylibfdt for entry-docs
binman: Allow entry types to override FDT contents
binman: Add support for alternative FDTs
binman: fit: Allow providing FDT filenames in a directory
binman: fit: Write the compatible string to configuration
binman: fit: Allow running fdtgrep on devicetree blobs
Makefile: Provide VPL devicetree and padding to binman
Makefile: Pass OF_SPL_REMOVE_PROPS to binman
Makefile | 3 +
doc/develop/spl.rst | 2 +
scripts/basic/fixdep.c | 2 +
tools/binman/binman.rst | 4 +-
tools/binman/bintools.rst | 69 +++--
tools/binman/btool/fdt_add_pubkey.py | 4 +
tools/binman/btool/fdtgrep.py | 137 ++++++++++
tools/binman/control.py | 77 +++---
tools/binman/elf.py | 2 +-
tools/binman/entries.rst | 94 ++++++-
tools/binman/entry.py | 17 ++
tools/binman/etype/alternates_fdt.py | 132 ++++++++++
tools/binman/etype/blob_dtb.py | 8 +-
tools/binman/etype/fit.py | 93 ++++++-
tools/binman/etype/u_boot_spl_nodtb.py | 2 -
tools/binman/etype/u_boot_tpl_nodtb.py | 2 -
tools/binman/etype/u_boot_vpl.py | 3 +
tools/binman/etype/u_boot_vpl_nodtb.py | 4 +-
tools/binman/ftest.py | 255 +++++++++++++++++--
tools/binman/image.py | 24 ++
tools/binman/main.py | 2 +
tools/binman/test/328_alternates_fdt.dts | 28 ++
tools/binman/test/329_alternates_fdtgrep.dts | 29 +++
tools/binman/test/330_alternates_vpl.dts | 29 +++
tools/binman/test/331_alternates_spl.dts | 29 +++
tools/binman/test/332_alternates_inval.dts | 29 +++
tools/binman/test/333_fit_fdt_dir.dts | 58 +++++
tools/binman/test/334_fit_fdt_compat.dts | 60 +++++
tools/binman/test/335_fit_fdt_phase.dts | 61 +++++
tools/binman/test/alt_dts/model1.dts | 24 ++
tools/binman/test/alt_dts/model2.dts | 24 ++
31 files changed, 1208 insertions(+), 99 deletions(-)
create mode 100644 tools/binman/btool/fdtgrep.py
create mode 100644 tools/binman/etype/alternates_fdt.py
create mode 100644 tools/binman/test/328_alternates_fdt.dts
create mode 100644 tools/binman/test/329_alternates_fdtgrep.dts
create mode 100644 tools/binman/test/330_alternates_vpl.dts
create mode 100644 tools/binman/test/331_alternates_spl.dts
create mode 100644 tools/binman/test/332_alternates_inval.dts
create mode 100644 tools/binman/test/333_fit_fdt_dir.dts
create mode 100644 tools/binman/test/334_fit_fdt_compat.dts
create mode 100644 tools/binman/test/335_fit_fdt_phase.dts
create mode 100644 tools/binman/test/alt_dts/model1.dts
create mode 100644 tools/binman/test/alt_dts/model2.dts
--
2.34.1
More information about the U-Boot
mailing list