Prepare v2024.04-rc1
[pandora-u-boot.git] / doc / mkeficapsule.1
1 .\" SPDX-License-Identifier: GPL-2.0+
2 .\" Copyright (c) 2021, Linaro Limited
3 .\"             written by AKASHI Takahiro <takahiro.akashi@linaro.org>
4 .TH MAEFICAPSULE 1 "May 2021"
5
6 .SH NAME
7 mkeficapsule \- Generate EFI capsule file for U-Boot
8
9 .SH SYNOPSIS
10 .B mkeficapsule
11 .RI [ options ] " " [ image-blob ] " " capsule-file
12
13 .SH "DESCRIPTION"
14 The
15 .B mkeficapsule
16 command is used to create an EFI capsule file to be used by U-Boot for firmware
17 updates.
18 A capsule file may contain various types of firmware blobs which are to be
19 applied to the system.
20 If a capsule file is placed in the /EFI/CapusuleUpdate directory of the EFI
21 system partition, U-Boot will try to execute the update at the next reboot.
22
23 Optionally, a capsule file can be signed with a given private key.
24 In this case, the update will be authenticated by verifying the signature
25 before applying.
26
27 Additionally, an empty capsule file can be generated to indicate the acceptance
28 or rejection of firmware images by a governing component like an operating
29 system.
30 Empty capsules do not require an image-blob input file.
31
32 .B mkeficapsule
33 takes any type of image files when generating non empty capsules, including:
34 .TP
35 .I raw image
36 format is a single binary blob of any type of firmware.
37
38 .TP
39 .I FIT (Flattened Image Tree) image
40 format is the same as used in the new uImage format and allows for
41 multiple binary blobs in a single capsule file.
42 This type of image file can be generated by
43 .BR mkimage .
44
45 .SH "OPTIONS"
46
47 .TP
48 .BI "-g\fR,\fB --guid " guid-string
49 Specify guid for image blob type. The format is:
50     xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
51
52 The first three elements are in little endian, while the rest
53 is in big endian. The option must be specified for all non empty and
54 image acceptance capsules
55
56 .TP
57 .BI "-i\fR,\fB --index " index
58 Specify an image index
59
60 .TP
61 .BI "-I\fR,\fB --instance " instance
62 Specify a hardware instance
63
64 .PP
65 FMP Payload Header is inserted right before the payload if
66 .BR --fw-version
67 is specified
68
69
70 .TP
71 .BI "-v\fR,\fB --fw-version " firmware-version
72 Specify a firmware version, 0 if omitted
73
74 .PP
75 For generation of firmware accept empty capsule
76 .BR --guid
77 is mandatory
78 .TP
79 .BI "-A\fR,\fB --fw-accept "
80 Generate a firmware acceptance empty capsule
81
82 .TP
83 .BI "-R\fR,\fB --fw-revert "
84 Generate a firmware revert empty capsule
85
86 .TP
87 .BI "-o\fR,\fB --capoemflag "
88 Capsule OEM flag, value between 0x0000 to 0xffff
89
90 .TP
91 .BR -h ", " --help
92 Print a help message
93
94 .PP
95 With signing,
96 .BR --private-key ", " --certificate " and " --monotonic-count
97 are all mandatory.
98
99 .TP
100 .BI "-p\fR,\fB --private-key " private-key-file
101 Specify signer's private key file in PEM
102
103 .TP
104 .BI "-c\fR,\fB --certificate " certificate-file
105 Specify signer's certificate file in EFI certificate list format
106
107 .TP
108 .BI "-m\fR,\fB --monotonic-count " count
109 Specify a monotonic count which is set to be monotonically incremented
110 at every firmware update.
111
112 .TP
113 .B "-d\fR,\fB --dump_sig"
114 Dump signature data into *.p7 file
115
116 .PP
117 .SH FILES
118 .TP
119 .I /EFI/UpdateCapsule
120 The directory in which all capsule files be placed
121
122 .SH SEE ALSO
123 .BR mkimage (1)
124
125 .SH AUTHORS
126 Written by AKASHI Takahiro <takahiro.akashi@linaro.org>
127
128 .SH HOMEPAGE
129 http://www.denx.de/wiki/U-Boot/WebHome