blob: 8419fa45a979014f8e2328bb4d2ccbaa61f386eb [file] [log] [blame]
Sean Anderson785a0512022-06-25 13:12:18 -04001.\" SPDX-License-Identifier: GPL-2.0
2.\" Copyright (C) 2022 Sean Anderson <seanga2@gmail.com>
3.\" Copyright (C) 2013-20 Simon Glass <sjg@chromium.org>
4.\" Copyright (C) 2010 Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
5.\" Copyright (C) 2010 Wolfgang Denk <wd@denx.de>
6.TH MKIMAGE 1 2022-06-11 U-Boot
Sean Anderson7ec625f2022-06-25 13:12:09 -04007.
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +09008.SH NAME
Sean Andersone9927c22022-06-25 13:12:14 -04009mkimage \- generate images for U-Boot
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +090010.SH SYNOPSIS
Sean Andersona5685542022-06-25 13:12:08 -040011.SY mkimage
12.OP \-T type
13.BI \-l\~ image-file-name
14.YS
Sean Anderson7ec625f2022-06-25 13:12:09 -040015.
Sean Andersona5685542022-06-25 13:12:08 -040016.SY mkimage
17.RI [ option\~ .\|.\|.\&]
18.OP \-T type
19.I image-file-name
20.YS
Sean Anderson7ec625f2022-06-25 13:12:09 -040021.
Sean Andersona5685542022-06-25 13:12:08 -040022.SY mkimage
23.RI [ option\~ .\|.\|.\&]
24.BI \-f\~ image-tree-source-file\c
25.RB | auto
26.I image-file-name
27.YS
Sean Anderson7ec625f2022-06-25 13:12:09 -040028.
Sean Andersona5685542022-06-25 13:12:08 -040029.SY mkimage
30.RI [ option\~ .\|.\|.\&]
31.BI \-F\~ image-file-name
32.YS
Sean Anderson7ec625f2022-06-25 13:12:09 -040033.
Sean Anderson1bdf48622022-06-25 13:12:11 -040034.SH DESCRIPTION
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +090035The
36.B mkimage
Sean Anderson9cc40002022-06-25 13:12:15 -040037command is used to create images for use with the U-Boot boot loader. These
38images can contain the Linux kernel, device tree blob, root file system image,
39firmware images etc., either separate or combined.
Sean Anderson7ec625f2022-06-25 13:12:09 -040040.P
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +090041.B mkimage
Sean Anderson9cc40002022-06-25 13:12:15 -040042supports many image formats. Some of these formats may be used by embedded boot
43firmware to load U-Boot. Others may be used by U-Boot to load Linux (or some
44other kernel):
Sean Anderson7ec625f2022-06-25 13:12:09 -040045.P
Sean Anderson9cc40002022-06-25 13:12:15 -040046The legacy image format concatenates the individual parts (for example, kernel
47image, device tree blob and ramdisk image) and adds a 64 byte header containing
48information about the target architecture, operating system, image type,
49compression method, entry points, time stamp, checksums, etc.
Sean Anderson7ec625f2022-06-25 13:12:09 -040050.P
Horst Kronstorfer7aecfdd2011-12-21 04:31:23 +000051The new
Sean Anderson9cc40002022-06-25 13:12:15 -040052.I FIT
53(Flattened Image Tree) format allows for more flexibility in handling images of
54various types and also enhances integrity protection of images with stronger
55checksums. It also supports verified boot.
Sean Anderson7ec625f2022-06-25 13:12:09 -040056.
Sean Anderson1bdf48622022-06-25 13:12:11 -040057.SH OPTIONS
Sean Anderson7ec625f2022-06-25 13:12:09 -040058.
Sean Andersona4d0c742022-06-25 13:12:12 -040059.SS General options
Sean Anderson7ec625f2022-06-25 13:12:09 -040060.
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +090061.TP
Sean Andersona5e2b672022-06-25 13:12:13 -040062.B \-h
63Print a help message and exit.
64.
65.TP
66.B \-l
Sean Anderson9cc40002022-06-25 13:12:15 -040067.B mkimage
68lists the information contained in the header of an existing U-Boot image.
Sean Andersona5e2b672022-06-25 13:12:13 -040069.
70.TP
71.B \-s
72Don't copy in the image data. Depending on the image type, this may create
73just the header, everything but the image data, or nothing at all.
Sean Anderson7ec625f2022-06-25 13:12:09 -040074.
Pali Rohár11f29d42022-02-13 01:09:46 +010075.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -040076.BI \-T " image-type"
Sean Anderson9cc40002022-06-25 13:12:15 -040077Parse image file as
78.IR image-type .
79Pass
80.B list
81as
82.I image-type
83to see the list of supported image types. If this option is absent, then it
84defaults to
85.B kernel
86(legacy image). If this option is absent when
87.B \-l
88is passed, then
89.B mkimage
90will attempt to automatically detect the image type. Not all image types support
91automatic detection, so it may be necessary to pass
92.B \-T
93explicitly.
94.IP
95When creating a FIT image with
96.BR \-f ,
97the image type is always set to
98.BR flat_dt .
99In this case,
100.B \-T
101specifies the image node's \(oqtype\(cq property. If
102.B \-T
103is absent, then the \(oqtype\(cq property will default to
104.BR kernel .
Sean Anderson7ec625f2022-06-25 13:12:09 -0400105.
Sean Andersondeb26382022-04-08 16:08:39 -0400106.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400107.B \-q
Sean Andersona5e2b672022-06-25 13:12:13 -0400108Quiet. Don't print the image header.
109.
110.TP
111.B \-v
112Verbose. Print file names as they are added to the image.
113.
114.TP
115.B \-V
116Print version information and exit.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400117.
Sean Andersona4d0c742022-06-25 13:12:12 -0400118.SS General image-creation options
Sean Anderson7ec625f2022-06-25 13:12:09 -0400119.
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +0900120.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400121.BI \-A " architecture"
Sean Anderson9cc40002022-06-25 13:12:15 -0400122Set the architecture. Pass
123.B \-h
124as the architecture to see the list of supported architectures. If
125.B \-A
126is absent, it defaults to
127.BR ppc .
Sean Anderson7ec625f2022-06-25 13:12:09 -0400128.
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +0900129.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400130.BI \-O " os"
Sean Anderson9cc40002022-06-25 13:12:15 -0400131Set the operating system. The U-Boot
132.I bootm
133command changes boot method based on the OS type.
134Pass
135.B \-h
136as the
137.I os
138to see the list of supported OSs. If
139.B \-O
140is absent, it defaults to
141.BR linux .
Sean Anderson7ec625f2022-06-25 13:12:09 -0400142.
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +0900143.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400144.BI \-C " compression-type"
Sean Anderson9cc40002022-06-25 13:12:15 -0400145Set the compression type. The image data should have already been compressed
146using this compression type.
147.B mkimage
148will not automatically compress image data.
149Pass
150.B \-h
151as the
152.I compression-type
153to see the list of supported compression types. If
154.B \-C
155is absent, it defaults to
156.BR gzip .
Sean Anderson7ec625f2022-06-25 13:12:09 -0400157.
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +0900158.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400159.BI \-a " load-address"
Sean Anderson9cc40002022-06-25 13:12:15 -0400160Set the absolute address to load the image data to.
161.I load-address
162will be interpreted as a hexadecimal number.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400163.
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +0900164.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400165.BI \-e " entry-point"
Sean Anderson9cc40002022-06-25 13:12:15 -0400166Set the absolute address of the image entry point. The U-Boot
167.I bootm
168command will jump to this address after loading the image.
169.I entry-point
170will be interpreted as a hexadecimal number.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400171.
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +0900172.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400173.BI \-n " image-name"
Sean Anderson9cc40002022-06-25 13:12:15 -0400174Set the image name to
175.IR image-name .
Sean Anderson7ec625f2022-06-25 13:12:09 -0400176.
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +0900177.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400178.BI \-R " secondary-image-name"
Sean Andersondeb26382022-04-08 16:08:39 -0400179Some image types support a second image for additional data. For these types,
Sean Anderson9cc40002022-06-25 13:12:15 -0400180use
181.B \-R
182to specify this second image.
Sean Anderson5920e5c2022-05-16 16:11:07 -0400183.TS
184allbox;
185lb lbx
186l l.
187Image Type Secondary Image Description
188pblimage Additional RCW-style header, typically used for PBI commands.
189zynqimage, zynqmpimage T{
190Initialization parameters, one per line. Each parameter has the form
191.sp
192.ti 4
193.I address data
194.sp
195where
196.I address
197and
198.I data
199are hexadecimal integers. The boot ROM will write each
200.I data
201to
202.I address
203when loading the image. At most 256 parameters may be specified in this
204manner.
205T}
206.TE
Sean Anderson7ec625f2022-06-25 13:12:09 -0400207.
Sean Andersondeb26382022-04-08 16:08:39 -0400208.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400209.BI \-d " image-data-file"
Sean Anderson9cc40002022-06-25 13:12:15 -0400210Use image data from
211.IR image-data-file .
212If the
213.I image-type
214is
215.BR multi ,
216then multiple images may be specified, separated by colons:
217.RS
218.IP
219.IR image-data-file [\fB:\fP image-data-file .\|.\|.]
220.RE
Sean Anderson7ec625f2022-06-25 13:12:09 -0400221.
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +0900222.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400223.B \-x
Sean Anderson9cc40002022-06-25 13:12:15 -0400224Set the
225.I XIP
226(execute in place) flag. The U-Boot
227.I bootm
228command will not load the image data, and instead will assume it is already
229accessible at the load address (such as via memory-mapped flash).
Sean Anderson7ec625f2022-06-25 13:12:09 -0400230.
Sean Andersona4d0c742022-06-25 13:12:12 -0400231.SS Options for creating FIT images
Sean Anderson7ec625f2022-06-25 13:12:09 -0400232.
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +0900233.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400234.BI \-b " device-tree-file"
Andreas Bießmann7a439ca2016-05-01 03:01:27 +0200235Appends the device tree binary file (.dtb) to the FIT.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400236.
Simon Glassfb4cce02016-02-22 22:55:52 -0700237.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400238.BI \-c " comment"
Sean Anderson9cc40002022-06-25 13:12:15 -0400239Specifies a comment to be added when signing. This is typically a message which
240describes how the image was signed or some other useful information.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400241.
Simon Glass4f610422013-06-13 15:10:06 -0700242.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400243.BI \-D " dtc-options"
Sean Anderson9cc40002022-06-25 13:12:15 -0400244Provide additional options to the device tree compiler when creating the image.
245See
246.BR dtc (1)
247for documentation of possible options. If
248.B \-D
249is absent, it defaults to
250.BR "\-I dts \-O dtb \-p 500" .
Sean Anderson7ec625f2022-06-25 13:12:09 -0400251.
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +0900252.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400253.BI \-E
Simon Glass722ebc82016-02-22 22:55:53 -0700254After processing, move the image data outside the FIT and store a data offset
Sean Anderson9cc40002022-06-25 13:12:15 -0400255in the FIT. Images will be placed one after the other immediately after the FIT,
256with each one aligned to a 4-byte boundary. The existing \(oqdata\(cq property
257in each image will be replaced with \(oqdata-offset\(cq and \(oqdata-size\(cq
258properties. A \(oqdata-offset\(cq of 0 indicates that it starts in the first
259(4-byte-aligned) byte after the FIT.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400260.
Simon Glass722ebc82016-02-22 22:55:53 -0700261.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400262.BI \-B " alignment"
Sean Andersondeb26382022-04-08 16:08:39 -0400263The alignment, in hexadecimal, that external data will be aligned to. This
264option only has an effect when \-E is specified.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400265.
Sean Andersondeb26382022-04-08 16:08:39 -0400266.TP
Sean Andersona5e2b672022-06-25 13:12:13 -0400267.BI \-p " external-position"
Sean Anderson9cc40002022-06-25 13:12:15 -0400268Place external data at a static external position. Instead of writing a
269\(oqdata-offset\(cq property defining the offset from the end of the FIT,
270.B \-p
271will use \(oqdata-position\(cq as the absolute position from the base of the
272FIT. See
273.B \-E
274for details on using external data.
Sean Andersona5e2b672022-06-25 13:12:13 -0400275.
276.TP
Sean Anderson9cc40002022-06-25 13:12:15 -0400277\fB\-f \fIimage-tree-source-file\fR | \fBauto
Horst Kronstorfer7aecfdd2011-12-21 04:31:23 +0000278Image tree source file that describes the structure and contents of the
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +0900279FIT image.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400280.IP
Sean Anderson9cc40002022-06-25 13:12:15 -0400281In some simple cases, the image tree source can be generated automatically. To
282use this feature, pass
283.BR "\-f auto" .
284The
285.BR \-d ,
286.BR \-A ,
287.BR \-O ,
288.BR \-T ,
289.BR \-C ,
290.BR \-a ,
291and
292.B \-e
293options may be used to specify the image to include in the FIT and its
294attributes. No
295.I image-tree-source-file
296is required.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400297.
Simon Glass80e4df82013-06-13 15:10:03 -0700298.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400299.B \-F
Sean Anderson9cc40002022-06-25 13:12:15 -0400300Indicates that an existing FIT image should be modified. No dtc compilation will
301be performed and
302.B \-f
303should not be passed. This can be used to sign images with additional keys
304after initial image creation.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400305.
Simon Glass95d77b42013-06-13 15:10:05 -0700306.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400307.BI \-i " ramdisk-file"
Sean Anderson9cc40002022-06-25 13:12:15 -0400308Append a ramdisk or initramfs file to the image.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400309.
Tomeu Vizoso0f7c6cd2016-11-04 14:22:15 +0100310.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400311.BI \-k " key-directory"
Simon Glass80e4df82013-06-13 15:10:03 -0700312Specifies the directory containing keys to use for signing. This directory
Sean Anderson9cc40002022-06-25 13:12:15 -0400313should contain a private key file
314.IR name .key
315for use with signing, and a certificate
316.IR name .crt
317(containing the public key) for use with verification. The public key is only
318necessary when embedding it into another device tree using
319.BR \-K .
320.I name
321defaults to the value of the signature node's \(oqkey-name-hint\(cq property,
322but may be overridden using
323.BR \-g .
Sean Anderson7ec625f2022-06-25 13:12:09 -0400324.
Simon Glasse29495d2013-06-13 15:10:04 -0700325.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400326.BI \-G " key-file"
Sean Anderson5920e5c2022-05-16 16:11:07 -0400327Specifies the private key file to use when signing. This option may be used
328instead of \-k.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400329.
Sean Anderson5920e5c2022-05-16 16:11:07 -0400330.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400331.BI \-K " key-destination"
Simon Glasse29495d2013-06-13 15:10:04 -0700332Specifies a compiled device tree binary file (typically .dtb) to write
333public key information into. When a private key is used to sign an image,
334the corresponding public key is written into this file for for run-time
335verification. Typically the file here is the device tree binary used by
336CONFIG_OF_CONTROL in U-Boot.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400337.
Simon Glass399c7442013-06-13 15:10:07 -0700338.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400339.BI \-g " key-name-hint"
Sean Anderson9cc40002022-06-25 13:12:15 -0400340Overrides the signature node's \(oqkey-name-hint\(cq property. This is
341especially useful when signing an image with
342.BR "\-f auto" .
343This is the
344.I name
345part of the key. The directory part is set by
346.BR \-k .
347This option also indicates that the images included in the FIT should be signed.
348If this option is specified, then
349.B \-o
350must be specified as well.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400351.
Sean Anderson87b0af92022-05-16 16:11:08 -0400352.TP
Sean Anderson9cc40002022-06-25 13:12:15 -0400353.BI \-o " crypto" , checksum
Jan Kiszka5902a392022-01-14 10:21:19 +0100354Specifies the algorithm to be used for signing a FIT image. The default is
Sean Anderson9cc40002022-06-25 13:12:15 -0400355taken from the signature node's \(oqalgo\(cq property.
356The valid values for
357.I crypto
358are:
359.RS
360.IP
361.TS
362lb.
363rsa2048
364rsa3072
365rsa4096
366ecdsa256
367.TE
368.RE
369.IP
370The valid values for
371.I checksum
372are
373.RS
374.IP
375.TS
376lb.
377sha1
378sha256
379sha384
380sha512
381.TE
382.RE
Sean Anderson7ec625f2022-06-25 13:12:09 -0400383.
Jan Kiszka5902a392022-01-14 10:21:19 +0100384.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400385.B \-r
Simon Glass399c7442013-06-13 15:10:07 -0700386Specifies that keys used to sign the FIT are required. This means that they
387must be verified for the image to boot. Without this option, the verification
388will be optional (useful for testing but not for release).
Sean Anderson7ec625f2022-06-25 13:12:09 -0400389.
Simon Glass152b2462020-07-09 18:39:43 -0600390.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400391.BI \-N " engine"
Sean Anderson9cc40002022-06-25 13:12:15 -0400392The openssl engine to use when signing and verifying the image. For a complete
393list of available engines, refer to
Sean Andersondeb26382022-04-08 16:08:39 -0400394.BR engine (1).
Sean Anderson7ec625f2022-06-25 13:12:09 -0400395.
Sean Andersondeb26382022-04-08 16:08:39 -0400396.TP
Sean Anderson1bdf48622022-06-25 13:12:11 -0400397.B \-t
Simon Glass152b2462020-07-09 18:39:43 -0600398Update the timestamp in the FIT.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400399.IP
Sean Anderson9cc40002022-06-25 13:12:15 -0400400Normally the FIT timestamp is created the first time mkimage runs,
Simon Glass152b2462020-07-09 18:39:43 -0600401when converting the source .its to the binary .fit file. This corresponds to
Sean Anderson9cc40002022-06-25 13:12:15 -0400402using
403.BR -f .
404But if the original input to mkimage is a binary file (already compiled), then
405the timestamp is assumed to have been set previously.
Sean Anderson7ec625f2022-06-25 13:12:09 -0400406.
Sean Andersond0487182022-06-25 13:12:16 -0400407.SH BUGS
408Please report bugs to the
409.UR https://\:source\:.denx\:.de/\:u-boot/\:u-boot/\:issues
410U-Boot bug tracker
411.UE .
Horst Kronstorfer7aecfdd2011-12-21 04:31:23 +0000412.SH EXAMPLES
Sean Anderson3dc1ff02022-06-25 13:12:10 -0400413.\" Reduce the width of the tab stops to something reasonable
414.ta T 1i
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +0900415List image information:
Sean Anderson3dc1ff02022-06-25 13:12:10 -0400416.RS
417.P
418.EX
419\fBmkimage \-l uImage
420.EE
421.RE
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +0900422.P
423Create legacy image with compressed PowerPC Linux kernel:
Sean Anderson3dc1ff02022-06-25 13:12:10 -0400424.RS
425.P
426.EX
427\fBmkimage \-A powerpc \-O linux \-T kernel \-C gzip \\
428 \-a 0 \-e 0 \-n Linux \-d vmlinux.gz uImage
429.EE
430.RE
Nobuhiro Iwamatsucd153552010-06-16 10:38:24 +0900431.P
432Create FIT image with compressed PowerPC Linux kernel:
Sean Anderson3dc1ff02022-06-25 13:12:10 -0400433.RS
434.P
435.EX
436\fBmkimage \-f kernel.its kernel.itb
437.EE
438.RE
Simon Glasse29495d2013-06-13 15:10:04 -0700439.P
440Create FIT image with compressed kernel and sign it with keys in the
Sean Anderson3dc1ff02022-06-25 13:12:10 -0400441/public/signing\-keys directory. Add corresponding public keys into u\-boot.dtb,
Simon Glasse29495d2013-06-13 15:10:04 -0700442skipping those for which keys cannot be found. Also add a comment.
Sean Anderson3dc1ff02022-06-25 13:12:10 -0400443.RS
Simon Glass95d77b42013-06-13 15:10:05 -0700444.P
Sean Anderson3dc1ff02022-06-25 13:12:10 -0400445.EX
446\fBmkimage \-f kernel.its \-k /public/signing\-keys \-K u\-boot.dtb \\
447 \-c \(dqKernel 3.8 image for production devices\(dq kernel.itb
448.EE
449.RE
450.P
451Add public keys to u\-boot.dtb without needing a FIT to sign. This will also
Sean Anderson87b0af92022-05-16 16:11:08 -0400452create a FIT containing an images node with no data named unused.itb.
Sean Anderson3dc1ff02022-06-25 13:12:10 -0400453.RS
454.P
455.EX
456\fBmkimage \-f auto \-d /dev/null \-k /public/signing\-keys \-g dev \\
457 \-o sha256,rsa2048 \-K u\-boot.dtb unused.itb
458.EE
459.RE
Sean Anderson87b0af92022-05-16 16:11:08 -0400460.P
Simon Glass95d77b42013-06-13 15:10:05 -0700461Update an existing FIT image, signing it with additional keys.
Sean Anderson3dc1ff02022-06-25 13:12:10 -0400462Add corresponding public keys into u\-boot.dtb. This will resign all images
Simon Glass95d77b42013-06-13 15:10:05 -0700463with keys that are available in the new directory. Images that request signing
464with unavailable keys are skipped.
Sean Anderson3dc1ff02022-06-25 13:12:10 -0400465.RS
466.P
467.EX
468\fBmkimage \-F \-k /secret/signing\-keys \-K u\-boot.dtb \\
469 \-c \(dqKernel 3.8 image for production devices\(dq kernel.itb
470.EE
471.RE
Simon Glass8e35bb02016-02-22 22:55:51 -0700472.P
473Create a FIT image containing a kernel, using automatic mode. No .its file
474is required.
Sean Anderson3dc1ff02022-06-25 13:12:10 -0400475.RS
476.P
477.EX
478\fBmkimage \-f auto \-A arm \-O linux \-T kernel \-C none \-a 43e00000 \-e 0 \\
479 \-c \(dqKernel 4.4 image for production devices\(dq \-d vmlinuz kernel.itb
480.EE
481.RE
Simon Glassfb4cce02016-02-22 22:55:52 -0700482.P
483Create a FIT image containing a kernel and some device tree files, using
484automatic mode. No .its file is required.
Sean Anderson3dc1ff02022-06-25 13:12:10 -0400485.RS
486.P
487.EX
488\fBmkimage \-f auto \-A arm \-O linux \-T kernel \-C none \-a 43e00000 \-e 0 \\
489 \-c \(dqKernel 4.4 image for production devices\(dq \-d vmlinuz \\
490 \-b /path/to/rk3288\-firefly.dtb \-b /path/to/rk3288\-jerry.dtb kernel.itb
491.EE
492.RE
Sean Anderson87b0af92022-05-16 16:11:08 -0400493.P
494Create a FIT image containing a signed kernel, using automatic mode. No .its
495file is required.
Sean Anderson3dc1ff02022-06-25 13:12:10 -0400496.RS
497.P
498.EX
499\fBmkimage \-f auto \-A arm \-O linux \-T kernel \-C none \-a 43e00000 \-e 0 \\
500 \-d vmlinuz \-k /secret/signing\-keys \-g dev \-o sha256,rsa2048 kernel.itb
501.EE
502.RE
Sean Anderson7ec625f2022-06-25 13:12:09 -0400503.
Sean Anderson84bd5cd2022-06-25 13:12:17 -0400504.SH SEE ALSO
505.BR dtc (1),
506.BR dumpimage (1),
507.BR openssl (1),
508the\~
509.UR https://\:u-boot\:.readthedocs\:.io/\:en/\:latest/\:index.html
510U-Boot documentation
511.UE