1 .. SPDX-License-Identifier: GPL-2.0+
3 Binman bintool Documentation
4 ============================
6 This file describes the bintools (binary tools) supported by binman. Bintools
7 are binman's name for external executables that it runs to generate or process
8 binaries. It is fairly easy to create new bintools. Just add a new file to the
9 'btool' directory. You can use existing bintools as examples.
13 Bintool: bootgen: Generate bootable fsbl image for zynq/zynqmp
14 --------------------------------------------------------------
16 This bintools supports running Xilinx "bootgen" in order
17 to generate a bootable, authenticated image form an SPL.
22 Bintool: bzip2: Compression/decompression using the bzip2 algorithm
23 -------------------------------------------------------------------
25 This bintool supports running `bzip2` to compress and decompress data, as
28 It is also possible to fetch the tool, which uses `apt` to install it.
30 Documentation is available via::
36 Bintool: cbfstool: Coreboot filesystem (CBFS) tool
37 --------------------------------------------------
39 This bintool supports creating new CBFS images and adding files to an
40 existing image, i.e. the features needed by binman.
42 It also supports fetching a binary cbfstool, since building it from source
45 Documentation about CBFS is at https://www.coreboot.org/CBFS
49 Bintool: cst: Image generation for U-Boot
50 -----------------------------------------
52 This bintool supports running `cst` with some basic parameters as
57 Bintool: fdt_add_pubkey: Add public key to control dtb (spl or u-boot proper)
58 -----------------------------------------------------------------------------
60 This bintool supports running `fdt_add_pubkey`.
62 Normally mkimage adds signature information to the control dtb. However
63 binman images are built independent from each other. Thus it is required
64 to add the public key separately from mkimage.
68 Bintool: fdtgrep: Handles the 'fdtgrep' tool
69 --------------------------------------------
71 This bintool supports running `fdtgrep` with parameters suitable for
72 producing SPL devicetrees from the main one.
76 Bintool: fiptool: Image generation for ARM Trusted Firmware
77 -----------------------------------------------------------
79 This bintool supports running `fiptool` with some basic parameters as
82 It also supports build fiptool from source.
84 fiptool provides a way to package firmware in an ARM Trusted Firmware
85 Firmware Image Package (ATF FIP) format. It is used with Trusted Firmware A,
88 See `TF-A FIP tool documentation`_ for more information.
90 .. _`TF-A FIP tool documentation`:
91 https://trustedfirmware-a.readthedocs.io/en/latest/getting_started/tools-build.html?highlight=fiptool#building-and-using-the-fip-tool
95 Bintool: futility: Handles the 'futility' tool
96 ----------------------------------------------
98 futility (flash utility) is a tool for working with Chromium OS flash
99 images. This Bintool implements just the features used by Binman, related to
100 GBB creation and firmware signing.
102 A binary version of the tool can be fetched.
104 See `Chromium OS vboot documentation`_ for more information.
106 .. _`Chromium OS vboot documentation`:
107 https://chromium.googlesource.com/chromiumos/platform/vboot/+/refs/heads/main/_vboot_reference/README
111 Bintool: gzip: Compression/decompression using the gzip algorithm
112 -----------------------------------------------------------------
114 This bintool supports running `gzip` to compress and decompress data, as
117 It is also possible to fetch the tool, which uses `apt` to install it.
119 Documentation is available via::
125 Bintool: ifwitool: Handles the 'ifwitool' tool
126 ----------------------------------------------
128 This bintool supports running `ifwitool` with some basic parameters as
129 neeed by binman. It includes creating a file from a FIT as well as adding,
130 replacing, deleting and extracting subparts.
132 The tool is built as part of U-Boot, but a binary version can be fetched if
135 ifwitool provides a way to package firmware in an Intel Firmware Image
136 (IFWI) file on some Intel SoCs, e.g. Apolo Lake.
140 Bintool: lz4: Compression/decompression using the LZ4 algorithm
141 ---------------------------------------------------------------
143 This bintool supports running `lz4` to compress and decompress data, as
146 It is also possible to fetch the tool, which uses `apt` to install it.
148 Documentation is available via::
154 Bintool: lzma_alone: Compression/decompression using the LZMA algorithm
155 -----------------------------------------------------------------------
157 This bintool supports running `lzma_alone` to compress and decompress data,
160 It is also possible to fetch the tool, which uses `apt` to install it.
162 Documentation is available via::
168 Bintool: lzop: Compression/decompression using the lzop algorithm
169 -----------------------------------------------------------------
171 This bintool supports running `lzop` to compress and decompress data, as
174 It is also possible to fetch the tool, which uses `apt` to install it.
176 Documentation is available via::
182 Bintool: mkeficapsule: Handles the 'mkeficapsule' tool
183 ------------------------------------------------------
185 This bintool is used for generating the EFI capsules. The
186 capsule generation parameters can either be specified through
187 commandline, or through a config file.
191 Bintool: mkimage: Image generation for U-Boot
192 ---------------------------------------------
194 This bintool supports running `mkimage` with some basic parameters as
197 Normally binman uses the mkimage built by U-Boot. But when run outside the
198 U-Boot build system, binman can use the version installed in your system.
199 Support is provided for fetching this on Debian-like systems, using apt.
203 Bintool: openssl: openssl tool
204 ------------------------------
206 This bintool supports creating new openssl certificates.
208 It also supports fetching a binary openssl
210 Documentation about openssl is at https://www.openssl.org/
214 Bintool: xz: Compression/decompression using the xz algorithm
215 -------------------------------------------------------------
217 This bintool supports running `xz` to compress and decompress data, as
220 It is also possible to fetch the tool, which uses `apt` to install it.
222 Documentation is available via::
228 Bintool: zstd: Compression/decompression using the zstd algorithm
229 -----------------------------------------------------------------
231 This bintool supports running `zstd` to compress and decompress data, as
234 It is also possible to fetch the tool, which uses `apt` to install it.
236 Documentation is available via::