5 config ANDROID_BOOT_IMAGE
6 bool "Enable support for Android Boot Images"
9 This enables support for booting images which use the Android
13 bool "Support Flattened Image Tree"
17 This option allows you to boot the new uImage structure,
18 Flattened Image Tree. FIT is formally a FDT, which can include
19 images of various types (kernel, FDT blob, ramdisk, etc.)
20 in a single blob. To boot this new uImage structure,
21 pass the address of the blob to the "bootm" command.
22 FIT is very flexible, supporting compression, multiple images,
23 multiple configurations, verification through hashing and also
24 verified boot (secure boot using RSA).
28 config FIT_EXTERNAL_OFFSET
29 hex "FIT external data offset"
32 This specifies a data offset in fit image.
33 The offset is from data payload offset to the beginning of
34 fit image header. When specifies a offset, specific data
35 could be put in the hole between data payload and fit image
36 header, such as CSF data on i.MX platform.
38 config FIT_ENABLE_SHA256_SUPPORT
39 bool "Support SHA256 checksum of FIT image contents"
43 Enable this to support SHA256 checksum of FIT image contents. A
44 SHA256 checksum is a 256-bit (32-byte) hash value used to check that
45 the image contents have not been corrupted.
47 config FIT_ENABLE_SHA384_SUPPORT
48 bool "Support SHA384 checksum of FIT image contents"
52 Enable this to support SHA384 checksum of FIT image contents. A
53 SHA384 checksum is a 384-bit (48-byte) hash value used to check that
54 the image contents have not been corrupted. Use this for the highest
57 config FIT_ENABLE_SHA512_SUPPORT
58 bool "Support SHA512 checksum of FIT image contents"
62 Enable this to support SHA512 checksum of FIT image contents. A
63 SHA512 checksum is a 512-bit (64-byte) hash value used to check that
64 the image contents have not been corrupted.
67 bool "Do a full check of the FIT before using it"
70 Enable this do a full check of the FIT to make sure it is valid. This
71 helps to protect against carefully crafted FITs which take advantage
72 of bugs or omissions in the code. This includes a bad structure,
73 multiple root nodes and the like.
76 bool "Enable signature verification of FIT uImages"
81 select IMAGE_SIGN_INFO
84 This option enables signature verification of FIT uImages,
85 using a hash signed and verified using RSA. If
86 CONFIG_SHA_PROG_HW_ACCEL is defined, i.e support for progressive
87 hashing is available using hardware, then the RSA library will use
88 it. See doc/uImage.FIT/signature.txt for more details.
90 WARNING: When relying on signed FIT images with a required signature
91 check the legacy image format is disabled by default, so that
92 unsigned images cannot be loaded. If a board needs the legacy image
93 format support in this case, enable it using
94 CONFIG_LEGACY_IMAGE_FORMAT.
96 config FIT_SIGNATURE_MAX_SIZE
97 hex "Max size of signed FIT structures"
98 depends on FIT_SIGNATURE
101 This option sets a max size in bytes for verified FIT uImages.
102 A sane value of 256MB protects corrupted DTB structures from overlapping
103 device memory. Assure this size does not extend past expected storage
106 config FIT_ENABLE_RSASSA_PSS_SUPPORT
107 bool "Support rsassa-pss signature scheme of FIT image contents"
108 depends on FIT_SIGNATURE
111 Enable this to support the pss padding algorithm as described
112 in the rfc8017 (https://tools.ietf.org/html/rfc8017).
115 bool "Enable ciphering data in a FIT uImages"
119 Enable the feature of data ciphering/unciphering in the tool mkimage
120 and in the u-boot support of the FIT image.
123 bool "Show verbose messages when FIT images fail"
125 Generally a system will have valid FIT images so debug messages
126 are a waste of code space. If you are debugging your images then
127 you can enable this option to get more verbose information about
130 config FIT_BEST_MATCH
131 bool "Select the best match for the kernel device tree"
133 When no configuration is explicitly selected, default to the
134 one whose fdt's compatibility field best matches that of
135 U-Boot itself. A match is considered "best" if it matches the
136 most specific compatibility entry of U-Boot's fdt's root node.
137 The order of entries in the configuration's fdt is ignored.
139 config FIT_IMAGE_POST_PROCESS
140 bool "Enable post-processing of FIT artifacts after loading by U-Boot"
141 depends on TI_SECURE_DEVICE
143 Allows doing any sort of manipulation to blobs after they got extracted
144 from FIT images like stripping off headers or modifying the size of the
145 blob, verification, authentication, decryption etc. in a platform or
146 board specific way. In order to use this feature a platform or board-
147 specific implementation of board_fit_image_post_process() must be
148 provided. Also, anything done during this post-processing step would
149 need to be comprehended in how the images were prepared before being
150 injected into the FIT creation (i.e. the blobs would have been pre-
151 processed before being added to the FIT image).
154 bool "Support FIT printing"
157 Support printing the content of the fitImage in a verbose manner.
162 bool "Support Flattened Image Tree within SPL"
167 bool "Support FIT printing within SPL"
170 Support printing the content of the fitImage in a verbose manner in SPL.
172 config SPL_FIT_FULL_CHECK
173 bool "Do a full check of the FIT before using it"
175 Enable this do a full check of the FIT to make sure it is valid. This
176 helps to protect against carefully crafted FITs which take advantage
177 of bugs or omissions in the code. This includes a bad structure,
178 multiple root nodes and the like.
181 config SPL_FIT_SIGNATURE
182 bool "Enable signature verification of FIT firmware within SPL"
185 select SPL_CRYPTO_SUPPORT
186 select SPL_HASH_SUPPORT
188 select SPL_RSA_VERIFY
189 select SPL_IMAGE_SIGN_INFO
190 select SPL_FIT_FULL_CHECK
193 bool "Enable SPL loading U-Boot as a FIT (basic fitImage features)"
196 Normally with the SPL framework a legacy image is generated as part
197 of the build. This contains U-Boot along with information as to
198 where it should be loaded. This option instead enables generation
199 of a FIT (Flat Image Tree) which provides more flexibility. In
200 particular it can handle selecting from multiple device tree
201 and passing the correct one to U-Boot.
203 config SPL_LOAD_FIT_ADDRESS
204 hex "load address of fit image"
205 depends on SPL_LOAD_FIT
208 Specify the load address of the fit image that will be loaded
211 config SPL_LOAD_FIT_APPLY_OVERLAY
212 bool "Enable SPL applying DT overlays from FIT"
213 depends on SPL_LOAD_FIT
214 select OF_LIBFDT_OVERLAY
216 The device tree is loaded from the FIT image. Allow the SPL is to
217 also load device-tree overlays from the FIT image an apply them
218 over the device tree.
220 config SPL_LOAD_FIT_APPLY_OVERLAY_BUF_SZ
221 depends on SPL_LOAD_FIT_APPLY_OVERLAY
223 hex "size of temporary buffer used to load the overlays"
225 The size of the area where the overlays will be loaded and
226 uncompress. Must be at least as large as biggest overlay
229 config SPL_LOAD_FIT_FULL
230 bool "Enable SPL loading U-Boot as a FIT (full fitImage features)"
233 Normally with the SPL framework a legacy image is generated as part
234 of the build. This contains U-Boot along with information as to
235 where it should be loaded. This option instead enables generation
236 of a FIT (Flat Image Tree) which provides more flexibility. In
237 particular it can handle selecting from multiple device tree
238 and passing the correct one to U-Boot.
240 config SPL_FIT_IMAGE_POST_PROCESS
241 bool "Enable post-processing of FIT artifacts after loading by the SPL"
242 depends on SPL_LOAD_FIT
244 Allows doing any sort of manipulation to blobs after they got extracted
245 from the U-Boot FIT image like stripping off headers or modifying the
246 size of the blob, verification, authentication, decryption etc. in a
247 platform or board specific way. In order to use this feature a platform
248 or board-specific implementation of board_fit_image_post_process() must
249 be provided. Also, anything done during this post-processing step would
250 need to be comprehended in how the images were prepared before being
251 injected into the FIT creation (i.e. the blobs would have been pre-
252 processed before being added to the FIT image).
254 config SPL_FIT_SOURCE
255 string ".its source file for U-Boot FIT image"
258 Specifies a (platform specific) FIT source file to generate the
259 U-Boot FIT image. This could specify further image to load and/or
262 config USE_SPL_FIT_GENERATOR
263 bool "Use a script to generate the .its script"
264 default y if SPL_FIT && !ARCH_SUNXI
266 config SPL_FIT_GENERATOR
267 string ".its file generator script for U-Boot FIT image"
268 depends on USE_SPL_FIT_GENERATOR
269 default "arch/arm/mach-rockchip/make_fit_atf.py" if SPL_LOAD_FIT && ARCH_ROCKCHIP
270 default "arch/arm/mach-zynqmp/mkimage_fit_atf.sh" if SPL_LOAD_FIT && ARCH_ZYNQMP
271 default "arch/riscv/lib/mkimage_fit_opensbi.sh" if SPL_LOAD_FIT && RISCV
273 Specifies a (platform specific) script file to generate the FIT
274 source file used to build the U-Boot FIT image file. This gets
275 passed a list of supported device tree file stub names to
276 include in the generated image.
282 config LEGACY_IMAGE_FORMAT
283 bool "Enable support for the legacy image format"
284 default y if !FIT_SIGNATURE
286 This option enables the legacy image format. It is enabled by
287 default for backward compatibility, unless FIT_SIGNATURE is
288 set where it is disabled so that unsigned images cannot be
289 loaded. If a board needs the legacy image format support in this
290 case, enable it here.
292 config SUPPORT_RAW_INITRD
293 bool "Enable raw initrd images"
295 Note, defining the SUPPORT_RAW_INITRD allows user to supply
296 kernel with raw initrd images. The syntax is slightly different, the
297 address of the initrd must be augmented by it's size, in the following
298 format: "<initrd address>:<initrd size>".
300 config OF_BOARD_SETUP
301 bool "Set up board-specific details in device tree before boot"
304 This causes U-Boot to call ft_board_setup() before booting into
305 the Operating System. This function can set up various
306 board-specific information in the device tree for use by the OS.
307 The device tree is then passed to the OS.
309 config OF_SYSTEM_SETUP
310 bool "Set up system-specific details in device tree before boot"
313 This causes U-Boot to call ft_system_setup() before booting into
314 the Operating System. This function can set up various
315 system-specific information in the device tree for use by the OS.
316 The device tree is then passed to the OS.
318 config OF_STDOUT_VIA_ALIAS
319 bool "Update the device-tree stdout alias from U-Boot"
322 This uses U-Boot's serial alias from the aliases node to update
323 the device tree passed to the OS. The "linux,stdout-path" property
324 in the chosen node is set to point to the correct serial node.
325 This option currently references CONFIG_CONS_INDEX, which is
326 incorrect when used with device tree as this option does not
327 exist / should not be used.
329 config SYS_EXTRA_OPTIONS
330 string "Extra Options (DEPRECATED)"
332 The old configuration infrastructure (= mkconfig + boards.cfg)
333 provided the extra options field. If you have something like
334 "HAS_BAR,BAZ=64", the optional options
336 #define CONFIG_BAZ 64
337 will be defined in include/config.h.
338 This option was prepared for the smooth migration from the old
339 configuration to Kconfig. Since this option will be removed sometime,
340 new boards should not use this option.
342 config HAVE_SYS_TEXT_BASE
344 depends on !NIOS2 && !XTENSA
349 depends on HAVE_SYS_TEXT_BASE
350 default 0x80800000 if ARCH_OMAP2PLUS || ARCH_K3
351 default 0x4a000000 if ARCH_SUNXI && !MACH_SUN9I && !MACH_SUN8I_V3S
352 default 0x2a000000 if ARCH_SUNXI && MACH_SUN9I
353 default 0x42e00000 if ARCH_SUNXI && MACH_SUN8I_V3S
356 The address in memory that U-Boot will be running from, initially.
359 depends on ARC || ARCH_SUNXI || MPC83xx
360 int "CPU clock frequency"
362 TODO: Move CONFIG_SYS_CLK_FREQ for all the architecture
364 config ARCH_FIXUP_FDT_MEMORY
365 bool "Enable arch_fixup_memory_banks() call"
368 Enable FDT memory map syncup before OS boot. This feature can be
369 used for booting OS with different memory setup where the part of
370 the memory location should be used for different purpose.
373 bool "Support booting Chrome OS"
375 Chrome OS requires U-Boot to set up a table indicating the boot mode
376 (e.g. Developer mode) and a few other things. Enable this if you are
377 booting on a Chromebook to avoid getting an error about an invalid
380 config CHROMEOS_VBOOT
381 bool "Support Chrome OS verified boot"
383 This is intended to enable the full Chrome OS verified boot support
384 in U-Boot. It is not actually implemented in the U-Boot source code
385 at present, so this option is always set to 'n'. It allows
386 distinguishing between booting Chrome OS in a basic way (developer
387 mode) and a full boot.
389 endmenu # Boot images
394 bool "Boot timing and reporting"
396 Enable recording of boot time while booting. To use it, insert
397 calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
398 bootstage.h. Only a single entry is recorded for each ID. You can
399 give the entry a name with bootstage_mark_name(). You can also
400 record elapsed time in a particular stage using bootstage_start()
401 before starting and bootstage_accum() when finished. Bootstage will
402 add up all the accumulated time and report it.
404 Normally, IDs are defined in bootstage.h but a small number of
405 additional 'user' IDs can be used by passing BOOTSTAGE_ID_ALLOC
408 Calls to show_boot_progress() will also result in log entries but
409 these will not have names.
412 bool "Boot timing and reported in SPL"
415 Enable recording of boot time in SPL. To make this visible to U-Boot
416 proper, enable BOOTSTAGE_STASH as well. This will stash the timing
417 information when SPL finishes and load it when U-Boot proper starts
421 bool "Boot timing and reported in TPL"
424 Enable recording of boot time in SPL. To make this visible to U-Boot
425 proper, enable BOOTSTAGE_STASH as well. This will stash the timing
426 information when TPL finishes and load it when U-Boot proper starts
429 config BOOTSTAGE_REPORT
430 bool "Display a detailed boot timing report before booting the OS"
433 Enable output of a boot time report just before the OS is booted.
434 This shows how long it took U-Boot to go through each stage of the
435 boot process. The report looks something like this:
437 Timer summary in microseconds:
440 3,575,678 3,575,678 board_init_f start
441 3,575,695 17 arch_cpu_init A9
442 3,575,777 82 arch_cpu_init done
443 3,659,598 83,821 board_init_r start
444 3,910,375 250,777 main_loop
445 29,916,167 26,005,792 bootm_start
446 30,361,327 445,160 start_kernel
448 config BOOTSTAGE_RECORD_COUNT
449 int "Number of boot stage records to store"
452 This is the size of the bootstage record list and is the maximum
453 number of bootstage records that can be recorded.
455 config SPL_BOOTSTAGE_RECORD_COUNT
456 int "Number of boot stage records to store for SPL"
459 This is the size of the bootstage record list and is the maximum
460 number of bootstage records that can be recorded.
462 config TPL_BOOTSTAGE_RECORD_COUNT
463 int "Number of boot stage records to store for TPL"
466 This is the size of the bootstage record list and is the maximum
467 number of bootstage records that can be recorded.
470 bool "Store boot timing information in the OS device tree"
473 Stash the bootstage information in the FDT. A root 'bootstage'
474 node is created with each bootstage id as a child. Each child
475 has a 'name' property and either 'mark' containing the
476 mark time in microseconds, or 'accum' containing the
477 accumulated time for that bootstage id in microseconds.
482 name = "board_init_f";
491 Code in the Linux kernel can find this in /proc/devicetree.
493 config BOOTSTAGE_STASH
494 bool "Stash the boot timing information in memory before booting OS"
497 Some OSes do not support device tree. Bootstage can instead write
498 the boot timing information in a binary format at a given address.
499 This happens through a call to bootstage_stash(), typically in
500 the CPU's cleanup_before_linux() function. You can use the
501 'bootstage stash' and 'bootstage unstash' commands to do this on
504 config BOOTSTAGE_STASH_ADDR
505 hex "Address to stash boot timing information"
508 Provide an address which will not be overwritten by the OS when it
509 starts, so that it can read this information when ready.
511 config BOOTSTAGE_STASH_SIZE
512 hex "Size of boot timing stash region"
515 This should be large enough to hold the bootstage stash. A value of
516 4096 (4KiB) is normally plenty.
518 config SHOW_BOOT_PROGRESS
519 bool "Show boot progress in a board-specific manner"
521 Defining this option allows to add some board-specific code (calling
522 a user-provided function show_boot_progress(int) that enables you to
523 show the system's boot progress on some display (for example, some
524 LEDs) on your board. At the moment, the following checkpoints are
527 Legacy uImage format:
530 1 common/cmd_bootm.c before attempting to boot an image
531 -1 common/cmd_bootm.c Image header has bad magic number
532 2 common/cmd_bootm.c Image header has correct magic number
533 -2 common/cmd_bootm.c Image header has bad checksum
534 3 common/cmd_bootm.c Image header has correct checksum
535 -3 common/cmd_bootm.c Image data has bad checksum
536 4 common/cmd_bootm.c Image data has correct checksum
537 -4 common/cmd_bootm.c Image is for unsupported architecture
538 5 common/cmd_bootm.c Architecture check OK
539 -5 common/cmd_bootm.c Wrong Image Type (not kernel, multi)
540 6 common/cmd_bootm.c Image Type check OK
541 -6 common/cmd_bootm.c gunzip uncompression error
542 -7 common/cmd_bootm.c Unimplemented compression type
543 7 common/cmd_bootm.c Uncompression OK
544 8 common/cmd_bootm.c No uncompress/copy overwrite error
545 -9 common/cmd_bootm.c Unsupported OS (not Linux, BSD, VxWorks, QNX)
547 9 common/image.c Start initial ramdisk verification
548 -10 common/image.c Ramdisk header has bad magic number
549 -11 common/image.c Ramdisk header has bad checksum
550 10 common/image.c Ramdisk header is OK
551 -12 common/image.c Ramdisk data has bad checksum
552 11 common/image.c Ramdisk data has correct checksum
553 12 common/image.c Ramdisk verification complete, start loading
554 -13 common/image.c Wrong Image Type (not PPC Linux ramdisk)
555 13 common/image.c Start multifile image verification
556 14 common/image.c No initial ramdisk, no multifile, continue.
558 15 arch/<arch>/lib/bootm.c All preparation done, transferring control to OS
560 -30 arch/powerpc/lib/board.c Fatal error, hang the system
561 -31 post/post.c POST test failed, detected by post_output_backlog()
562 -32 post/post.c POST test failed, detected by post_run_single()
564 34 common/cmd_doc.c before loading a Image from a DOC device
565 -35 common/cmd_doc.c Bad usage of "doc" command
566 35 common/cmd_doc.c correct usage of "doc" command
567 -36 common/cmd_doc.c No boot device
568 36 common/cmd_doc.c correct boot device
569 -37 common/cmd_doc.c Unknown Chip ID on boot device
570 37 common/cmd_doc.c correct chip ID found, device available
571 -38 common/cmd_doc.c Read Error on boot device
572 38 common/cmd_doc.c reading Image header from DOC device OK
573 -39 common/cmd_doc.c Image header has bad magic number
574 39 common/cmd_doc.c Image header has correct magic number
575 -40 common/cmd_doc.c Error reading Image from DOC device
576 40 common/cmd_doc.c Image header has correct magic number
577 41 common/cmd_ide.c before loading a Image from a IDE device
578 -42 common/cmd_ide.c Bad usage of "ide" command
579 42 common/cmd_ide.c correct usage of "ide" command
580 -43 common/cmd_ide.c No boot device
581 43 common/cmd_ide.c boot device found
582 -44 common/cmd_ide.c Device not available
583 44 common/cmd_ide.c Device available
584 -45 common/cmd_ide.c wrong partition selected
585 45 common/cmd_ide.c partition selected
586 -46 common/cmd_ide.c Unknown partition table
587 46 common/cmd_ide.c valid partition table found
588 -47 common/cmd_ide.c Invalid partition type
589 47 common/cmd_ide.c correct partition type
590 -48 common/cmd_ide.c Error reading Image Header on boot device
591 48 common/cmd_ide.c reading Image Header from IDE device OK
592 -49 common/cmd_ide.c Image header has bad magic number
593 49 common/cmd_ide.c Image header has correct magic number
594 -50 common/cmd_ide.c Image header has bad checksum
595 50 common/cmd_ide.c Image header has correct checksum
596 -51 common/cmd_ide.c Error reading Image from IDE device
597 51 common/cmd_ide.c reading Image from IDE device OK
598 52 common/cmd_nand.c before loading a Image from a NAND device
599 -53 common/cmd_nand.c Bad usage of "nand" command
600 53 common/cmd_nand.c correct usage of "nand" command
601 -54 common/cmd_nand.c No boot device
602 54 common/cmd_nand.c boot device found
603 -55 common/cmd_nand.c Unknown Chip ID on boot device
604 55 common/cmd_nand.c correct chip ID found, device available
605 -56 common/cmd_nand.c Error reading Image Header on boot device
606 56 common/cmd_nand.c reading Image Header from NAND device OK
607 -57 common/cmd_nand.c Image header has bad magic number
608 57 common/cmd_nand.c Image header has correct magic number
609 -58 common/cmd_nand.c Error reading Image from NAND device
610 58 common/cmd_nand.c reading Image from NAND device OK
612 -60 common/env_common.c Environment has a bad CRC, using default
614 64 net/eth.c starting with Ethernet configuration.
615 -64 net/eth.c no Ethernet found.
616 65 net/eth.c Ethernet found.
618 -80 common/cmd_net.c usage wrong
619 80 common/cmd_net.c before calling net_loop()
620 -81 common/cmd_net.c some error in net_loop() occurred
621 81 common/cmd_net.c net_loop() back without error
622 -82 common/cmd_net.c size == 0 (File with size 0 loaded)
623 82 common/cmd_net.c trying automatic boot
624 83 common/cmd_net.c running "source" command
625 -83 common/cmd_net.c some error in automatic boot or "source" command
626 84 common/cmd_net.c end without errors
631 100 common/cmd_bootm.c Kernel FIT Image has correct format
632 -100 common/cmd_bootm.c Kernel FIT Image has incorrect format
633 101 common/cmd_bootm.c No Kernel subimage unit name, using configuration
634 -101 common/cmd_bootm.c Can't get configuration for kernel subimage
635 102 common/cmd_bootm.c Kernel unit name specified
636 -103 common/cmd_bootm.c Can't get kernel subimage node offset
637 103 common/cmd_bootm.c Found configuration node
638 104 common/cmd_bootm.c Got kernel subimage node offset
639 -104 common/cmd_bootm.c Kernel subimage hash verification failed
640 105 common/cmd_bootm.c Kernel subimage hash verification OK
641 -105 common/cmd_bootm.c Kernel subimage is for unsupported architecture
642 106 common/cmd_bootm.c Architecture check OK
643 -106 common/cmd_bootm.c Kernel subimage has wrong type
644 107 common/cmd_bootm.c Kernel subimage type OK
645 -107 common/cmd_bootm.c Can't get kernel subimage data/size
646 108 common/cmd_bootm.c Got kernel subimage data/size
647 -108 common/cmd_bootm.c Wrong image type (not legacy, FIT)
648 -109 common/cmd_bootm.c Can't get kernel subimage type
649 -110 common/cmd_bootm.c Can't get kernel subimage comp
650 -111 common/cmd_bootm.c Can't get kernel subimage os
651 -112 common/cmd_bootm.c Can't get kernel subimage load address
652 -113 common/cmd_bootm.c Image uncompress/copy overwrite error
654 120 common/image.c Start initial ramdisk verification
655 -120 common/image.c Ramdisk FIT image has incorrect format
656 121 common/image.c Ramdisk FIT image has correct format
657 122 common/image.c No ramdisk subimage unit name, using configuration
658 -122 common/image.c Can't get configuration for ramdisk subimage
659 123 common/image.c Ramdisk unit name specified
660 -124 common/image.c Can't get ramdisk subimage node offset
661 125 common/image.c Got ramdisk subimage node offset
662 -125 common/image.c Ramdisk subimage hash verification failed
663 126 common/image.c Ramdisk subimage hash verification OK
664 -126 common/image.c Ramdisk subimage for unsupported architecture
665 127 common/image.c Architecture check OK
666 -127 common/image.c Can't get ramdisk subimage data/size
667 128 common/image.c Got ramdisk subimage data/size
668 129 common/image.c Can't get ramdisk load address
669 -129 common/image.c Got ramdisk load address
671 -130 common/cmd_doc.c Incorrect FIT image format
672 131 common/cmd_doc.c FIT image format OK
674 -140 common/cmd_ide.c Incorrect FIT image format
675 141 common/cmd_ide.c FIT image format OK
677 -150 common/cmd_nand.c Incorrect FIT image format
678 151 common/cmd_nand.c FIT image format OK
685 bool "Support for booting from NOR flash"
688 Enabling this will make a U-Boot binary that is capable of being
689 booted via NOR. In this case we will enable certain pinmux early
690 as the ROM only partially sets up pinmux. We also default to using
694 bool "Support for booting from NAND flash"
698 Enabling this will make a U-Boot binary that is capable of being
699 booted via NAND flash. This is not a must, some SoCs need this,
703 bool "Support for booting from ONENAND"
707 Enabling this will make a U-Boot binary that is capable of being
708 booted via ONENAND. This is not a must, some SoCs need this,
712 bool "Support for booting from QSPI flash"
715 Enabling this will make a U-Boot binary that is capable of being
716 booted via QSPI flash. This is not a must, some SoCs need this,
720 bool "Support for booting from SATA"
723 Enabling this will make a U-Boot binary that is capable of being
724 booted via SATA. This is not a must, some SoCs need this,
728 bool "Support for booting from SD/EMMC"
731 Enabling this will make a U-Boot binary that is capable of being
732 booted via SD/EMMC. This is not a must, some SoCs need this,
736 bool "Support for booting from SPI flash"
739 Enabling this will make a U-Boot binary that is capable of being
740 booted via SPI flash. This is not a must, some SoCs need this,
745 menu "Autoboot options"
751 This enables the autoboot. See doc/README.autoboot for detail.
754 int "delay in seconds before automatically booting"
758 Delay before automatically running bootcmd;
759 set to 0 to autoboot with no delay, but you can stop it by key input.
760 set to -1 to disable autoboot.
761 set to -2 to autoboot with no delay and not check for abort
763 If this value is >= 0 then it is also used for the default delay
764 before starting the default entry in bootmenu. If it is < 0 then
765 a default value of 10s is used.
767 See doc/README.autoboot for details.
769 config AUTOBOOT_KEYED
770 bool "Stop autobooting via specific input key / string"
773 This option enables stopping (aborting) of the automatic
774 boot feature only by issuing a specific input key or
775 string. If not enabled, any input key will abort the
776 U-Boot automatic booting process and bring the device
777 to the U-Boot prompt for user input.
779 config AUTOBOOT_PROMPT
780 string "Autoboot stop prompt"
781 depends on AUTOBOOT_KEYED
782 default "Autoboot in %d seconds\\n"
784 This string is displayed before the boot delay selected by
785 CONFIG_BOOTDELAY starts. If it is not defined there is no
786 output indicating that autoboot is in progress.
788 Note that this define is used as the (only) argument to a
789 printf() call, so it may contain '%' format specifications,
790 provided that it also includes, sepearated by commas exactly
791 like in a printf statement, the required arguments. It is
792 the responsibility of the user to select only such arguments
793 that are valid in the given context.
795 config AUTOBOOT_ENCRYPTION
796 bool "Enable encryption in autoboot stopping"
797 depends on AUTOBOOT_KEYED
799 This option allows a string to be entered into U-Boot to stop the
800 autoboot. The string itself is hashed and compared against the hash
801 in the environment variable 'bootstopkeysha256'. If it matches then
802 boot stops and a command-line prompt is presented.
804 This provides a way to ship a secure production device which can also
805 be accessed at the U-Boot command line.
807 config AUTOBOOT_DELAY_STR
808 string "Delay autobooting via specific input key / string"
809 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
811 This option delays the automatic boot feature by issuing
812 a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR
813 or the environment variable "bootdelaykey" is specified
814 and this string is received from console input before
815 autoboot starts booting, U-Boot gives a command prompt. The
816 U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is
817 used, otherwise it never times out.
819 config AUTOBOOT_STOP_STR
820 string "Stop autobooting via specific input key / string"
821 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
823 This option enables stopping (aborting) of the automatic
824 boot feature only by issuing a specific input key or
825 string. If CONFIG_AUTOBOOT_STOP_STR or the environment
826 variable "bootstopkey" is specified and this string is
827 received from console input before autoboot starts booting,
828 U-Boot gives a command prompt. The U-Boot prompt never
829 times out, even if CONFIG_BOOT_RETRY_TIME is used.
831 config AUTOBOOT_KEYED_CTRLC
832 bool "Enable Ctrl-C autoboot interruption"
833 depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
836 This option allows for the boot sequence to be interrupted
837 by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey".
838 Setting this variable provides an escape sequence from the
839 limited "password" strings.
841 config AUTOBOOT_STOP_STR_SHA256
842 string "Stop autobooting via SHA256 encrypted password"
843 depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
845 This option adds the feature to only stop the autobooting,
846 and therefore boot into the U-Boot prompt, when the input
847 string / password matches a values that is encypted via
848 a SHA256 hash and saved in the environment variable
849 "bootstopkeysha256". If the value in that variable
850 includes a ":", the portion prior to the ":" will be treated
853 config AUTOBOOT_USE_MENUKEY
854 bool "Allow a specify key to run a menu from the environment"
855 depends on !AUTOBOOT_KEYED
857 If a specific key is pressed to stop autoboot, then the commands in
858 the environment variable 'menucmd' are executed before boot starts.
860 config AUTOBOOT_MENUKEY
861 int "ASCII value of boot key to show a menu"
863 depends on AUTOBOOT_USE_MENUKEY
865 If this key is pressed to stop autoboot, then the commands in the
866 environment variable 'menucmd' will be executed before boot starts.
867 For example, 33 means "!" in ASCII, so pressing ! at boot would take
870 config AUTOBOOT_MENU_SHOW
871 bool "Show a menu on boot"
872 depends on CMD_BOOTMENU
874 This enables the boot menu, controlled by environment variables
875 defined by the board. The menu starts after running the 'preboot'
876 environmnent variable (if enabled) and before handling the boot delay.
877 See README.bootmenu for more details.
882 bool "Enable boot arguments"
884 Provide boot arguments to bootm command. Boot arguments are specified
885 in CONFIG_BOOTARGS option. Enable this option to be able to specify
886 CONFIG_BOOTARGS string. If this option is disabled, CONFIG_BOOTARGS
887 will be undefined and won't take any space in U-Boot image.
890 string "Boot arguments"
891 depends on USE_BOOTARGS && !USE_DEFAULT_ENV_FILE
893 This can be used to pass arguments to the bootm command. The value of
894 CONFIG_BOOTARGS goes into the environment value "bootargs". Note that
895 this value will also override the "chosen" node in FDT blob.
897 config BOOTARGS_SUBST
898 bool "Support substituting strings in boot arguments"
900 This allows substituting string values in the boot arguments. These
901 are applied after the commandline has been built.
903 One use for this is to insert the root-disk UUID into the command
904 line where bootargs contains "root=${uuid}"
906 setenv bootargs "console= root=${uuid}"
907 # Set the 'uuid' environment variable
908 part uuid mmc 2:2 uuid
910 # Command-line substitution will put the real uuid into the
911 # kernel command line
914 config USE_BOOTCOMMAND
915 bool "Enable a default value for bootcmd"
917 Provide a default value for the bootcmd entry in the environment. If
918 autoboot is enabled this is what will be run automatically. Enable
919 this option to be able to specify CONFIG_BOOTCOMMAND as a string. If
920 this option is disabled, CONFIG_BOOTCOMMAND will be undefined and
921 won't take any space in U-Boot image.
924 string "bootcmd value"
925 depends on USE_BOOTCOMMAND && !USE_DEFAULT_ENV_FILE
926 default "run distro_bootcmd" if DISTRO_DEFAULTS
928 This is the string of commands that will be used as bootcmd and if
929 AUTOBOOT is set, automatically run.
932 bool "Enable preboot"
934 When this option is enabled, the existence of the environment
935 variable "preboot" will be checked immediately before starting the
936 CONFIG_BOOTDELAY countdown and/or running the auto-boot command resp.
937 entering interactive mode.
939 This feature is especially useful when "preboot" is automatically
940 generated or modified. For example, the boot code can modify the
941 "preboot" when a user holds down a certain combination of keys.
944 string "preboot default value"
945 depends on USE_PREBOOT && !USE_DEFAULT_ENV_FILE
946 default "usb start" if USB_KEYBOARD
949 This is the default of "preboot" environment variable.
951 config DEFAULT_FDT_FILE
952 string "Default fdt file"
954 This option is used to set the default fdt file to boot OS.