u-boot/doc/mkeficapsule.1
AKASHI Takahiro d9612f4426 tools: mkeficapsule: allow for specifying GUID explicitly
The existing options, "--fit" and "--raw," are only used to put a proper
GUID in a capsule header, where GUID identifies a particular FMP (Firmware
Management Protocol) driver which then would handle the firmware binary in
a capsule. In fact, mkeficapsule does the exact same job in creating
a capsule file whatever the firmware binary type is.

To prepare for the future extension, the command syntax will be a bit
modified to allow users to specify arbitrary GUID for their own FMP driver.
OLD:
   [--fit <image> | --raw <image>] <capsule file>
NEW:
   [--fit | --raw | --guid <guid-string>] <image> <capsule file>

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
2022-02-11 20:07:55 +01:00

112 lines
2.6 KiB
Groff

.\" SPDX-License-Identifier: GPL-2.0+
.\" Copyright (c) 2021, Linaro Limited
.\" written by AKASHI Takahiro <takahiro.akashi@linaro.org>
.TH MAEFICAPSULE 1 "May 2021"
.SH NAME
mkeficapsule \- Generate EFI capsule file for U-Boot
.SH SYNOPSIS
.B mkeficapsule
.RI [ options "] " image-blob " " capsule-file
.SH "DESCRIPTION"
.B mkeficapsule
command is used to create an EFI capsule file for use with the U-Boot
EFI capsule update.
A capsule file may contain various type of firmware blobs which
are to be applied to the system and must be placed in the specific
directory on the UEFI system partition.
An update will be automatically executed at next reboot.
Optionally, a capsule file can be signed with a given private key.
In this case, the update will be authenticated by verifying the signature
before applying.
.B mkeficapsule
takes any type of image files, including:
.TP
.I raw image
format is a single binary blob of any type of firmware.
.TP
.I FIT (Flattened Image Tree) image
format is the same as used in the new uImage format and allows for
multiple binary blobs in a single capsule file.
This type of image file can be generated by
.BR mkimage .
.PP
If you want to use other types than above two, you should explicitly
specify a guid for the FMP driver.
.SH "OPTIONS"
One of
.BR --fit ", " --raw " or " --guid
option must be specified.
.TP
.BR -f ", " --fit
Indicate that the blob is a FIT image file
.TP
.BR -r ", " --raw
Indicate that the blob is a raw image file
.TP
.BI "-g\fR,\fB --guid " guid-string
Specify guid for image blob type. The format is:
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
The first three elements are in little endian, while the rest
is in big endian.
.TP
.BI "-i\fR,\fB --index " index
Specify an image index
.TP
.BI "-I\fR,\fB --instance " instance
Specify a hardware instance
.TP
.BR -h ", " --help
Print a help message
.PP
With signing,
.BR --private-key ", " --certificate " and " --monotonic-count
are all mandatory.
.TP
.BI "-p\fR,\fB --private-key " private-key-file
Specify signer's private key file in PEM
.TP
.BI "-c\fR,\fB --certificate " certificate-file
Specify signer's certificate file in EFI certificate list format
.TP
.BI "-m\fR,\fB --monotonic-count " count
Specify a monotonic count which is set to be monotonically incremented
at every firmware update.
.TP
.B "-d\fR,\fB --dump_sig"
Dump signature data into *.p7 file
.PP
.SH FILES
.TP
.I /EFI/UpdateCapsule
The directory in which all capsule files be placed
.SH SEE ALSO
.BR mkimage (1)
.SH AUTHORS
Written by AKASHI Takahiro <takahiro.akashi@linaro.org>
.SH HOMEPAGE
http://www.denx.de/wiki/U-Boot/WebHome