77ca061efdc081cdd2117c8aa2a60441b931d3f0
[platform/kernel/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 .B mkeficapsule
15 command is used to create an EFI capsule file for use with the U-Boot
16 EFI capsule update.
17 A capsule file may contain various type of firmware blobs which
18 are to be applied to the system and must be placed in the specific
19 directory on the UEFI system partition.
20 An update will be automatically executed at next reboot.
21
22 Optionally, a capsule file can be signed with a given private key.
23 In this case, the update will be authenticated by verifying the signature
24 before applying.
25
26 Additionally, an empty capsule file can be generated for acceptance or
27 rejection of firmware images by a governing component like an Operating
28 System. The empty capsules do not require an image-blob input file.
29
30
31 .B mkeficapsule
32 takes any type of image files when generating non empty capsules, including:
33 .TP
34 .I raw image
35 format is a single binary blob of any type of firmware.
36
37 .TP
38 .I FIT (Flattened Image Tree) image
39 format is the same as used in the new uImage format and allows for
40 multiple binary blobs in a single capsule file.
41 This type of image file can be generated by
42 .BR mkimage .
43
44 .SH "OPTIONS"
45
46 .TP
47 .BI "-g\fR,\fB --guid " guid-string
48 Specify guid for image blob type. The format is:
49     xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
50
51 The first three elements are in little endian, while the rest
52 is in big endian. The option must be specified for all non empty and
53 image acceptance capsules
54
55 .TP
56 .BI "-i\fR,\fB --index " index
57 Specify an image index
58
59 .TP
60 .BI "-I\fR,\fB --instance " instance
61 Specify a hardware instance
62
63 .PP
64 For generation of firmware accept empty capsule
65 .BR --guid
66 is mandatory
67 .TP
68 .BI "-A\fR,\fB --fw-accept "
69 Generate a firmware acceptance empty capsule
70
71 .TP
72 .BI "-R\fR,\fB --fw-revert "
73 Generate a firmware revert empty capsule
74
75 .TP
76 .BR -h ", " --help
77 Print a help message
78
79 .PP
80 With signing,
81 .BR --private-key ", " --certificate " and " --monotonic-count
82 are all mandatory.
83
84 .TP
85 .BI "-p\fR,\fB --private-key " private-key-file
86 Specify signer's private key file in PEM
87
88 .TP
89 .BI "-c\fR,\fB --certificate " certificate-file
90 Specify signer's certificate file in EFI certificate list format
91
92 .TP
93 .BI "-m\fR,\fB --monotonic-count " count
94 Specify a monotonic count which is set to be monotonically incremented
95 at every firmware update.
96
97 .TP
98 .B "-d\fR,\fB --dump_sig"
99 Dump signature data into *.p7 file
100
101 .PP
102 .SH FILES
103 .TP
104 .I /EFI/UpdateCapsule
105 The directory in which all capsule files be placed
106
107 .SH SEE ALSO
108 .BR mkimage (1)
109
110 .SH AUTHORS
111 Written by AKASHI Takahiro <takahiro.akashi@linaro.org>
112
113 .SH HOMEPAGE
114 http://www.denx.de/wiki/U-Boot/WebHome