1597 lines
		
	
	
		
			56 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			1597 lines
		
	
	
		
			56 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| menu "Boot options"
 | |
| 
 | |
| menu "Boot images"
 | |
| 
 | |
| config ANDROID_BOOT_IMAGE
 | |
| 	bool "Enable support for Android Boot Images"
 | |
| 	default y if FASTBOOT
 | |
| 	help
 | |
| 	  This enables support for booting images which use the Android
 | |
| 	  image format header.
 | |
| 
 | |
| config FIT
 | |
| 	bool "Support Flattened Image Tree"
 | |
| 	select HASH
 | |
| 	select MD5
 | |
| 	select SHA1
 | |
| 	imply SHA256
 | |
| 	help
 | |
| 	  This option allows you to boot the new uImage structure,
 | |
| 	  Flattened Image Tree.  FIT is formally a FDT, which can include
 | |
| 	  images of various types (kernel, FDT blob, ramdisk, etc.)
 | |
| 	  in a single blob.  To boot this new uImage structure,
 | |
| 	  pass the address of the blob to the "bootm" command.
 | |
| 	  FIT is very flexible, supporting compression, multiple images,
 | |
| 	  multiple configurations, verification through hashing and also
 | |
| 	  verified boot (secure boot using RSA).
 | |
| 
 | |
| config TIMESTAMP
 | |
| 	bool "Show image date and time when displaying image information"
 | |
| 	default y if CMD_DATE
 | |
| 	help
 | |
| 	  When CONFIG_TIMESTAMP is selected, the timestamp (date and time) of
 | |
| 	  an image is printed by image commands like bootm or iminfo. This
 | |
| 	  is shown as 'Timestamp: xxx' and 'Created: xxx'. If this option is
 | |
| 	  enabled, then U-Boot requires FITs to have a timestamp. If a FIT is
 | |
| 	  loaded that does not, the message 'Wrong FIT format: no timestamp'
 | |
| 	  is shown.
 | |
| 
 | |
| config FIT_EXTERNAL_OFFSET
 | |
| 	hex "FIT external data offset"
 | |
| 	depends on FIT
 | |
| 	default 0x0
 | |
| 	help
 | |
| 	  This specifies a data offset in fit image.
 | |
| 	  The offset is from data payload offset to the beginning of
 | |
| 	  fit image header. When specifies a offset, specific data
 | |
| 	  could be put in the hole between data payload and fit image
 | |
| 	  header, such as CSF data on i.MX platform.
 | |
| 
 | |
| config FIT_FULL_CHECK
 | |
| 	bool "Do a full check of the FIT before using it"
 | |
| 	depends on FIT
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enable this do a full check of the FIT to make sure it is valid. This
 | |
| 	  helps to protect against carefully crafted FITs which take advantage
 | |
| 	  of bugs or omissions in the code. This includes a bad structure,
 | |
| 	  multiple root nodes and the like.
 | |
| 
 | |
| config FIT_SIGNATURE
 | |
| 	bool "Enable signature verification of FIT uImages"
 | |
| 	depends on DM && FIT
 | |
| 	select HASH
 | |
| 	imply RSA
 | |
| 	imply RSA_VERIFY
 | |
| 	select IMAGE_SIGN_INFO
 | |
| 	select FIT_FULL_CHECK
 | |
| 	help
 | |
| 	  This option enables signature verification of FIT uImages,
 | |
| 	  using a hash signed and verified using RSA. If
 | |
| 	  CONFIG_SHA_PROG_HW_ACCEL is defined, i.e support for progressive
 | |
| 	  hashing is available using hardware, then the RSA library will use
 | |
| 	  it. See doc/uImage.FIT/signature.txt for more details.
 | |
| 
 | |
| 	  WARNING: When relying on signed FIT images with a required signature
 | |
| 	  check the legacy image format is disabled by default, so that
 | |
| 	  unsigned images cannot be loaded. If a board needs the legacy image
 | |
| 	  format support in this case, enable it using
 | |
| 	  CONFIG_LEGACY_IMAGE_FORMAT.
 | |
| 
 | |
| config FIT_SIGNATURE_MAX_SIZE
 | |
| 	hex "Max size of signed FIT structures"
 | |
| 	depends on FIT_SIGNATURE
 | |
| 	default 0x10000000
 | |
| 	help
 | |
| 	  This option sets a max size in bytes for verified FIT uImages.
 | |
| 	  A sane value of 256MB protects corrupted DTB structures from overlapping
 | |
| 	  device memory. Assure this size does not extend past expected storage
 | |
| 	  space.
 | |
| 
 | |
| config FIT_RSASSA_PSS
 | |
| 	bool "Support rsassa-pss signature scheme of FIT image contents"
 | |
| 	depends on FIT_SIGNATURE
 | |
| 	help
 | |
| 	  Enable this to support the pss padding algorithm as described
 | |
| 	  in the rfc8017 (https://tools.ietf.org/html/rfc8017).
 | |
| 
 | |
| config FIT_CIPHER
 | |
| 	bool "Enable ciphering data in a FIT uImages"
 | |
| 	depends on DM && FIT
 | |
| 	select AES
 | |
| 	help
 | |
| 	  Enable the feature of data ciphering/unciphering in the tool mkimage
 | |
| 	  and in the u-boot support of the FIT image.
 | |
| 
 | |
| config FIT_VERBOSE
 | |
| 	bool "Show verbose messages when FIT images fail"
 | |
| 	depends on FIT
 | |
| 	help
 | |
| 	  Generally a system will have valid FIT images so debug messages
 | |
| 	  are a waste of code space. If you are debugging your images then
 | |
| 	  you can enable this option to get more verbose information about
 | |
| 	  failures.
 | |
| 
 | |
| config FIT_BEST_MATCH
 | |
| 	bool "Select the best match for the kernel device tree"
 | |
| 	depends on FIT
 | |
| 	help
 | |
| 	  When no configuration is explicitly selected, default to the
 | |
| 	  one whose fdt's compatibility field best matches that of
 | |
| 	  U-Boot itself. A match is considered "best" if it matches the
 | |
| 	  most specific compatibility entry of U-Boot's fdt's root node.
 | |
| 	  The order of entries in the configuration's fdt is ignored.
 | |
| 
 | |
| config FIT_IMAGE_POST_PROCESS
 | |
| 	bool "Enable post-processing of FIT artifacts after loading by U-Boot"
 | |
| 	depends on FIT
 | |
| 	depends on TI_SECURE_DEVICE || SOCFPGA_SECURE_VAB_AUTH
 | |
| 	default y if TI_SECURE_DEVICE
 | |
| 	help
 | |
| 	  Allows doing any sort of manipulation to blobs after they got extracted
 | |
| 	  from FIT images like stripping off headers or modifying the size of the
 | |
| 	  blob, verification, authentication, decryption etc. in a platform or
 | |
| 	  board specific way. In order to use this feature a platform or board-
 | |
| 	  specific implementation of board_fit_image_post_process() must be
 | |
| 	  provided. Also, anything done during this post-processing step would
 | |
| 	  need to be comprehended in how the images were prepared before being
 | |
| 	  injected into the FIT creation (i.e. the blobs would have been pre-
 | |
| 	  processed before being added to the FIT image).
 | |
| 
 | |
| config FIT_PRINT
 | |
|         bool "Support FIT printing"
 | |
| 	depends on FIT
 | |
|         default y
 | |
|         help
 | |
|           Support printing the content of the fitImage in a verbose manner.
 | |
| 
 | |
| config SPL_FIT
 | |
| 	bool "Support Flattened Image Tree within SPL"
 | |
| 	depends on SPL && FIT
 | |
| 	select SPL_HASH
 | |
| 	select SPL_OF_LIBFDT
 | |
| 
 | |
| config SPL_FIT_PRINT
 | |
| 	bool "Support FIT printing within SPL"
 | |
| 	depends on SPL_FIT
 | |
| 	help
 | |
| 	  Support printing the content of the fitImage in a verbose manner in SPL.
 | |
| 
 | |
| config SPL_FIT_FULL_CHECK
 | |
| 	bool "Do a full check of the FIT before using it"
 | |
| 	depends on SPL_FIT
 | |
| 	help
 | |
| 	  Enable this do a full check of the FIT to make sure it is valid. This
 | |
| 	  helps to protect against carefully crafted FITs which take advantage
 | |
| 	  of bugs or omissions in the code. This includes a bad structure,
 | |
| 	  multiple root nodes and the like.
 | |
| 
 | |
| config SPL_FIT_SIGNATURE
 | |
| 	bool "Enable signature verification of FIT firmware within SPL"
 | |
| 	depends on SPL_DM
 | |
| 	depends on SPL_LOAD_FIT || SPL_LOAD_FIT_FULL
 | |
| 	select FIT_SIGNATURE
 | |
| 	select SPL_FIT
 | |
| 	select SPL_CRYPTO
 | |
| 	select SPL_HASH
 | |
| 	imply SPL_RSA
 | |
| 	imply SPL_RSA_VERIFY
 | |
| 	select SPL_IMAGE_SIGN_INFO
 | |
| 	select SPL_FIT_FULL_CHECK
 | |
| 
 | |
| config SPL_FIT_SIGNATURE_MAX_SIZE
 | |
| 	hex "Max size of signed FIT structures in SPL"
 | |
| 	depends on SPL_FIT_SIGNATURE
 | |
| 	default 0x10000000
 | |
| 	help
 | |
| 	  This option sets a max size in bytes for verified FIT uImages.
 | |
| 	  A sane value of 256MB protects corrupted DTB structures from overlapping
 | |
| 	  device memory. Assure this size does not extend past expected storage
 | |
| 	  space.
 | |
| 
 | |
| config SPL_FIT_RSASSA_PSS
 | |
| 	bool "Support rsassa-pss signature scheme of FIT image contents in SPL"
 | |
| 	depends on SPL_FIT_SIGNATURE
 | |
| 	help
 | |
| 	  Enable this to support the pss padding algorithm as described
 | |
| 	  in the rfc8017 (https://tools.ietf.org/html/rfc8017) in SPL.
 | |
| 
 | |
| config SPL_LOAD_FIT
 | |
| 	bool "Enable SPL loading U-Boot as a FIT (basic fitImage features)"
 | |
| 	depends on SPL && FIT
 | |
| 	select SPL_FIT
 | |
| 	help
 | |
| 	  Normally with the SPL framework a legacy image is generated as part
 | |
| 	  of the build. This contains U-Boot along with information as to
 | |
| 	  where it should be loaded. This option instead enables generation
 | |
| 	  of a FIT (Flat Image Tree) which provides more flexibility. In
 | |
| 	  particular it can handle selecting from multiple device tree
 | |
| 	  and passing the correct one to U-Boot.
 | |
| 
 | |
| 	  This path has the following limitations:
 | |
| 
 | |
| 	  1. "loadables" images, other than FDTs, which do not have a "load"
 | |
| 	     property will not be loaded. This limitation also applies to FPGA
 | |
| 	     images with the correct "compatible" string.
 | |
| 	  2. For FPGA images, the supported "compatible" list is in the
 | |
| 	     doc/uImage.FIT/source_file_format.txt.
 | |
| 	  3. FDTs are only loaded for images with an "os" property of "u-boot".
 | |
| 	     "linux" images are also supported with Falcon boot mode.
 | |
| 
 | |
| config SPL_LOAD_FIT_ADDRESS
 | |
| 	hex "load address of fit image"
 | |
| 	depends on SPL_LOAD_FIT || SPL_RAM_SUPPORT || TPL_RAM_SUPPORT
 | |
| 	default 0x0
 | |
| 	help
 | |
| 	  Specify the load address of the fit image that will be loaded
 | |
| 	  by SPL.
 | |
| 
 | |
| config SPL_LOAD_FIT_APPLY_OVERLAY
 | |
| 	bool "Enable SPL applying DT overlays from FIT"
 | |
| 	depends on SPL_LOAD_FIT
 | |
| 	select OF_LIBFDT_OVERLAY
 | |
| 	help
 | |
| 	  The device tree is loaded from the FIT image. Allow the SPL is to
 | |
| 	  also load device-tree overlays from the FIT image an apply them
 | |
| 	  over the device tree.
 | |
| 
 | |
| config SPL_LOAD_FIT_APPLY_OVERLAY_BUF_SZ
 | |
| 	depends on SPL_LOAD_FIT_APPLY_OVERLAY
 | |
| 	default 0x10000
 | |
| 	hex "size of temporary buffer used to load the overlays"
 | |
| 	help
 | |
| 	  The size of the area where the overlays will be loaded and
 | |
| 	  uncompress. Must be at least as large as biggest overlay
 | |
| 	  (uncompressed)
 | |
| 
 | |
| config SPL_LOAD_FIT_FULL
 | |
| 	bool "Enable SPL loading U-Boot as a FIT (full fitImage features)"
 | |
| 	depends on FIT
 | |
| 	select SPL_FIT
 | |
| 	help
 | |
| 	  Normally with the SPL framework a legacy image is generated as part
 | |
| 	  of the build. This contains U-Boot along with information as to
 | |
| 	  where it should be loaded. This option instead enables generation
 | |
| 	  of a FIT (Flat Image Tree) which provides more flexibility. In
 | |
| 	  particular it can handle selecting from multiple device tree
 | |
| 	  and passing the correct one to U-Boot.
 | |
| 
 | |
| config SPL_FIT_IMAGE_POST_PROCESS
 | |
| 	bool "Enable post-processing of FIT artifacts after loading by the SPL"
 | |
| 	depends on SPL_LOAD_FIT
 | |
| 	default y if TI_SECURE_DEVICE
 | |
| 	help
 | |
| 	  Allows doing any sort of manipulation to blobs after they got extracted
 | |
| 	  from the U-Boot FIT image like stripping off headers or modifying the
 | |
| 	  size of the blob, verification, authentication, decryption etc. in a
 | |
| 	  platform or board specific way. In order to use this feature a platform
 | |
| 	  or board-specific implementation of board_fit_image_post_process() must
 | |
| 	  be provided. Also, anything done during this post-processing step would
 | |
| 	  need to be comprehended in how the images were prepared before being
 | |
| 	  injected into the FIT creation (i.e. the blobs would have been pre-
 | |
| 	  processed before being added to the FIT image).
 | |
| 
 | |
| config SPL_FIT_SOURCE
 | |
| 	string ".its source file for U-Boot FIT image"
 | |
| 	depends on SPL_FIT
 | |
| 	help
 | |
| 	  Specifies a (platform specific) FIT source file to generate the
 | |
| 	  U-Boot FIT image. This could specify further image to load and/or
 | |
| 	  execute.
 | |
| 
 | |
| config USE_SPL_FIT_GENERATOR
 | |
| 	bool "Use a script to generate the .its script"
 | |
| 	depends on SPL_FIT
 | |
| 	default y if SPL_FIT && ARCH_ZYNQMP
 | |
| 
 | |
| config SPL_FIT_GENERATOR
 | |
| 	string ".its file generator script for U-Boot FIT image"
 | |
| 	depends on USE_SPL_FIT_GENERATOR
 | |
| 	default "arch/arm/mach-zynqmp/mkimage_fit_atf.sh" if SPL_LOAD_FIT && ARCH_ZYNQMP
 | |
| 	help
 | |
| 	  Specifies a (platform specific) script file to generate the FIT
 | |
| 	  source file used to build the U-Boot FIT image file. This gets
 | |
| 	  passed a list of supported device tree file stub names to
 | |
| 	  include in the generated image.
 | |
| 
 | |
| if VPL
 | |
| 
 | |
| config VPL_FIT
 | |
| 	bool "Support Flattened Image Tree within VPL"
 | |
| 	depends on VPL
 | |
| 	default y
 | |
| 	select VPL_HASH
 | |
| 	select VPL_OF_LIBFDT
 | |
| 
 | |
| config VPL_FIT_PRINT
 | |
| 	bool "Support FIT printing within VPL"
 | |
| 	depends on VPL_FIT
 | |
| 	default y
 | |
| 	help
 | |
| 	  Support printing the content of the fitImage in a verbose manner in VPL.
 | |
| 
 | |
| config VPL_FIT_FULL_CHECK
 | |
| 	bool "Do a full check of the FIT before using it"
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enable this do a full check of the FIT to make sure it is valid. This
 | |
| 	  helps to protect against carefully crafted FITs which take advantage
 | |
| 	  of bugs or omissions in the code. This includes a bad structure,
 | |
| 	  multiple root nodes and the like.
 | |
| 
 | |
| config VPL_FIT_SIGNATURE
 | |
| 	bool "Enable signature verification of FIT firmware within VPL"
 | |
| 	depends on VPL_DM
 | |
| 	default y
 | |
| 	select FIT_SIGNATURE
 | |
| 	select VPL_FIT
 | |
| 	select VPL_CRYPTO
 | |
| 	select VPL_HASH
 | |
| 	imply VPL_RSA
 | |
| 	imply VPL_RSA_VERIFY
 | |
| 	select VPL_IMAGE_SIGN_INFO
 | |
| 	select VPL_FIT_FULL_CHECK
 | |
| 
 | |
| config VPL_FIT_SIGNATURE_MAX_SIZE
 | |
| 	hex "Max size of signed FIT structures in VPL"
 | |
| 	depends on VPL_FIT_SIGNATURE
 | |
| 	default 0x10000000
 | |
| 	help
 | |
| 	  This option sets a max size in bytes for verified FIT uImages.
 | |
| 	  A sane value of 256MB protects corrupted DTB structures from overlapping
 | |
| 	  device memory. Assure this size does not extend past expected storage
 | |
| 	  space.
 | |
| 
 | |
| endif # VPL
 | |
| 
 | |
| config PXE_UTILS
 | |
| 	bool
 | |
| 	select MENU
 | |
| 	help
 | |
| 	  Utilities for parsing PXE file formats.
 | |
| 
 | |
| config BOOT_DEFAULTS
 | |
| 	bool  # Common defaults for standard boot and distroboot
 | |
| 	imply USE_BOOTCOMMAND
 | |
| 	select CMD_ENV_EXISTS
 | |
| 	select CMD_EXT2
 | |
| 	select CMD_EXT4
 | |
| 	select CMD_FAT
 | |
| 	select CMD_FS_GENERIC
 | |
| 	select CMD_PART if PARTITIONS
 | |
| 	select CMD_DHCP if CMD_NET
 | |
| 	select CMD_PING if CMD_NET
 | |
| 	select CMD_PXE if CMD_NET
 | |
| 	select SUPPORT_RAW_INITRD
 | |
| 	select ENV_VARS_UBOOT_CONFIG
 | |
| 	select CMD_BOOTI if ARM64
 | |
| 	select CMD_BOOTZ if ARM && !ARM64
 | |
| 	imply CMD_MII if NET
 | |
| 	imply USB_STORAGE
 | |
| 	imply EFI_PARTITION
 | |
| 	imply ISO_PARTITION
 | |
| 	help
 | |
| 	  These are not required but are commonly needed to support a good
 | |
| 	  selection of booting methods. Enable this to improve the capability
 | |
| 	  of U-Boot to boot various images. Currently much functionality is
 | |
| 	  tied to enabling the command that exercises it.
 | |
| 
 | |
| config BOOTSTD
 | |
| 	bool "Standard boot support"
 | |
| 	default y
 | |
| 	depends on DM && OF_CONTROL && BLK
 | |
| 	help
 | |
| 	  U-Boot supports a standard way of locating something to boot,
 | |
| 	  typically an Operating System such as Linux, provided by a distro such
 | |
| 	  as Arch Linux or Debian. Enable this to support iterating through
 | |
| 	  available bootdevs and using bootmeths to find bootflows suitable for
 | |
| 	  booting.
 | |
| 
 | |
| 	  Standard boot is not a standard way of booting, just a framework
 | |
| 	  within U-Boot for supporting all the different ways that exist.
 | |
| 
 | |
| 	  Terminology:
 | |
| 
 | |
| 	    - bootdev - a device which can hold a distro (e.g. MMC)
 | |
| 	    - bootmeth - a method to scan a bootdev to find bootflows (owned by
 | |
| 	        U-Boot)
 | |
| 	    - bootflow - a description of how to boot (owned by the distro)
 | |
| 
 | |
| config BOOTSTD_FULL
 | |
| 	bool "Enhanced features for standard boot"
 | |
| 	default y if SANDBOX
 | |
| 	help
 | |
| 	  This enables various useful features for standard boot, which are not
 | |
| 	  essential for operation:
 | |
| 
 | |
| 	  - bootdev, bootmeth commands
 | |
| 	  - extra features in the bootflow command
 | |
| 	  - support for selecting the ordering of bootmeths ("bootmeth order")
 | |
| 	  - support for selecting the ordering of bootdevs using the devicetree
 | |
| 	    as well as the "boot_targets" environment variable
 | |
| 
 | |
| config SPL_BOOTSTD
 | |
| 	bool "Standard boot support in VPL"
 | |
| 	depends on SPL && SPL_DM && SPL_OF_CONTROL && SPL_BLK
 | |
| 	default y if VPL
 | |
| 	help
 | |
| 	  This enables standard boot in SPL. This is neeeded so that VBE
 | |
| 	  (Verified Boot for Embedded) can be used, since it depends on standard
 | |
| 	  boot. It is enabled by default since the main purpose of VPL is to
 | |
| 	  handle the firmware part of VBE.
 | |
| 
 | |
| config VPL_BOOTSTD
 | |
| 	bool "Standard boot support in VPL"
 | |
| 	depends on VPL && VPL_DM && VPL_OF_CONTROL && VPL_BLK
 | |
| 	default y
 | |
| 	help
 | |
| 	  This enables standard boot in SPL. This is neeeded so that VBE
 | |
| 	  (Verified Boot for Embedded) can be used, since it depends on standard
 | |
| 	  boot. It is enabled by default since the main purpose of VPL is to
 | |
| 	  handle the firmware part of VBE.
 | |
| 
 | |
| if BOOTSTD
 | |
| 
 | |
| config BOOTSTD_DEFAULTS
 | |
| 	bool "Select some common defaults for standard boot"
 | |
| 	depends on BOOTSTD
 | |
| 	imply USE_BOOTCOMMAND
 | |
| 	select BOOT_DEFAULTS
 | |
| 	help
 | |
| 	  These are not required but are commonly needed to support a good
 | |
| 	  selection of booting methods. Enable this to improve the capability
 | |
| 	  of U-Boot to boot various images.
 | |
| 
 | |
| config BOOTSTD_BOOTCOMMAND
 | |
| 	bool "Use bootstd to boot"
 | |
| 	default y if !DISTRO_DEFAULTS
 | |
| 	help
 | |
| 	  Enable this to select a default boot-command suitable for booting
 | |
| 	  with standard boot. This can be overridden by the board if needed,
 | |
| 	  but the default command should be enough for most boards which use
 | |
| 	  standard boot.
 | |
| 
 | |
| 	  For now this is only selected if distro boot is NOT used, since
 | |
| 	  standard boot does not support all of the features of distro boot
 | |
| 	  yet.
 | |
| 
 | |
| config BOOTMETH_GLOBAL
 | |
| 	bool
 | |
| 	help
 | |
| 	  Add support for global bootmeths. This feature is used by VBE and
 | |
| 	  EFI bootmgr, since they take full control over which bootdevs are
 | |
| 	  selected to boot.
 | |
| 
 | |
| config BOOTMETH_DISTRO
 | |
| 	bool "Bootdev support for distro boot"
 | |
| 	select PXE_UTILS
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enables support for distro boot using bootdevs. This makes the
 | |
| 	  bootdevs look for a 'extlinux/extlinux.conf' on each filesystem
 | |
| 	  they scan.
 | |
| 
 | |
| 	  This provides a way to try out standard boot on an existing boot flow.
 | |
| 
 | |
| config BOOTMETH_DISTRO_PXE
 | |
| 	bool "Bootdev support for distro boot over network"
 | |
| 	depends on CMD_PXE && CMD_NET && DM_ETH
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enables support for distro boot using bootdevs. This makes the
 | |
| 	  bootdevs look for a 'extlinux/extlinux.conf' on the tftp server.
 | |
| 
 | |
| 	  This provides a way to try out standard boot on an existing boot flow.
 | |
| 
 | |
| config BOOTMETH_EFILOADER
 | |
| 	bool "Bootdev support for EFI boot"
 | |
| 	depends on CMD_BOOTEFI
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enables support for EFI boot using bootdevs. This makes the
 | |
| 	  bootdevs look for a 'boot<arch>.efi' on each filesystem
 | |
| 	  they scan. The resulting file is booted after enabling U-Boot's
 | |
| 	  EFI loader support.
 | |
| 
 | |
| 	  The <arch> depends on the architecture of the board:
 | |
| 
 | |
| 	     aa64      - aarch64 (ARM 64-bit)
 | |
| 	     arm       - ARM 32-bit
 | |
| 	     ia32      - x86 32-bit
 | |
| 	     x64       - x86 64-bit
 | |
| 	     riscv32   - RISC-V 32-bit
 | |
| 	     riscv64   - RISC-V 64-bit
 | |
| 
 | |
| 	  This provides a way to try out standard boot on an existing boot flow.
 | |
| 
 | |
| config BOOTMETH_VBE
 | |
| 	bool "Bootdev support for Verified Boot for Embedded"
 | |
| 	depends on FIT
 | |
| 	default y
 | |
| 	select BOOTMETH_GLOBAL
 | |
| 	select EVENT
 | |
| 	help
 | |
| 	  Enables support for VBE boot. This is a standard boot method which
 | |
| 	  supports selection of various firmware components, seleciton of an OS to
 | |
| 	  boot as well as updating these using fwupd.
 | |
| 
 | |
| config SPL_BOOTMETH_VBE
 | |
| 	bool "Bootdev support for Verified Boot for Embedded (SPL)"
 | |
| 	depends on SPL && FIT
 | |
| 	select EVENT
 | |
| 	default y if VPL
 | |
| 	help
 | |
| 	  Enables support for VBE boot. This is a standard boot method which
 | |
| 	  supports selection of various firmware components, seleciton of an OS to
 | |
| 	  boot as well as updating these using fwupd.
 | |
| 
 | |
| config VPL_BOOTMETH_VBE
 | |
| 	bool "Bootdev support for Verified Boot for Embedded (VPL)"
 | |
| 	depends on VPL && FIT
 | |
| 	select EVENT
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enables support for VBE boot. This is a standard boot method which
 | |
| 	  supports selection of various firmware components, seleciton of an OS to
 | |
| 	  boot as well as updating these using fwupd.
 | |
| 
 | |
| if BOOTMETH_VBE
 | |
| 
 | |
| config BOOTMETH_VBE_SIMPLE
 | |
| 	bool "Bootdev support for VBE 'simple' method"
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enables support for VBE 'simple' boot. This allows updating a single
 | |
| 	  firmware image in boot media such as MMC. It does not support any sort
 | |
| 	  of rollback, recovery or A/B boot.
 | |
| 
 | |
| config BOOTMETH_VBE_SIMPLE_OS
 | |
| 	bool "Bootdev support for VBE 'simple' method OS phase"
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enables support for the OS parts of VBE 'simple' boot. This includes
 | |
| 	  fixing up the device tree with the required VBE information, ready
 | |
| 	  for booting into the OS. This option is only enabled for U-Boot
 | |
| 	  proper, since it is the phase where device tree fixups happen.
 | |
| 
 | |
| config SPL_BOOTMETH_VBE_SIMPLE
 | |
| 	bool "Bootdev support for VBE 'simple' method (SPL)"
 | |
| 	depends on SPL
 | |
| 	default y if VPL
 | |
| 	help
 | |
| 	  Enables support for VBE 'simple' boot. This allows updating a single
 | |
| 	  firmware image in boot media such as MMC. It does not support any sort
 | |
| 	  of rollback, recovery or A/B boot.
 | |
| 
 | |
| config VPL_BOOTMETH_VBE_SIMPLE
 | |
| 	bool "Bootdev support for VBE 'simple' method (VPL)"
 | |
| 	depends on VPL
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enables support for VBE 'simple' boot. This allows updating a single
 | |
| 	  firmware image in boot media such as MMC. It does not support any sort
 | |
| 	  of rollback, recovery or A/B boot.
 | |
| 
 | |
| config SPL_BOOTMETH_VBE_SIMPLE_FW
 | |
| 	bool "Bootdev support for VBE 'simple' method firmware phase (SPL)"
 | |
| 	depends on VPL
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enables support for the firmware parts of VBE 'simple' boot. This
 | |
| 	  includes an SPL loader which locates the correct U-Boot to boot into.
 | |
| 	  This option should really only be enabled for VPL, since it is the
 | |
| 	  phase where the SPL + U-Boot decision should be made. But for now,
 | |
| 	  SPL does its own FIT-configuration selection.
 | |
| 
 | |
| config VPL_BOOTMETH_VBE_SIMPLE_FW
 | |
| 	bool "Bootdev support for VBE 'simple' method firmware phase (VPL)"
 | |
| 	depends on VPL
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enables support for the firmware parts of VBE 'simple' boot. This
 | |
| 	  includes an SPL loader which locates the correct SPL to boot into.
 | |
| 	  This option enabled for VPL, since it is the phase where the SPL
 | |
| 	  decision is made.
 | |
| 
 | |
| endif # BOOTMETH_VBE
 | |
| 
 | |
| config EXPO
 | |
| 	bool "Support for expos - groups of scenes displaying a UI"
 | |
| 	depends on VIDEO
 | |
| 	default y if BOOTMETH_VBE
 | |
| 	help
 | |
| 	  An expo is a way of presenting and collecting information from the
 | |
| 	  user. It consists of a collection of 'scenes' of which only one is
 | |
| 	  presented at a time. An expo is typically used to show a boot menu
 | |
| 	  and allow settings to be changed.
 | |
| 
 | |
| 	  The expo can be presented in graphics form using a vidconsole, or in
 | |
| 	  text form on a serial console.
 | |
| 
 | |
| config BOOTMETH_SANDBOX
 | |
| 	def_bool y
 | |
| 	depends on SANDBOX
 | |
| 	help
 | |
| 	  This is a sandbox bootmeth driver used for testing. It always returns
 | |
| 	  -ENOTSUPP when attempting to boot.
 | |
| 
 | |
| config BOOTMETH_SCRIPT
 | |
| 	bool "Bootdev support for U-Boot scripts"
 | |
| 	default y if BOOTSTD_FULL
 | |
| 	help
 | |
| 	  Enables support for booting a distro via a U-Boot script. This makes
 | |
| 	  the bootdevs look for a 'boot/boot.scr' file which can be used to
 | |
| 	  boot the distro.
 | |
| 
 | |
| 	  This provides a way to try out standard boot on an existing boot flow.
 | |
| 	  It is not enabled by default to save space.
 | |
| 
 | |
| endif
 | |
| 
 | |
| config LEGACY_IMAGE_FORMAT
 | |
| 	bool "Enable support for the legacy image format"
 | |
| 	default y if !FIT_SIGNATURE && !TI_SECURE_DEVICE
 | |
| 	help
 | |
| 	  This option enables the legacy image format. It is enabled by
 | |
| 	  default for backward compatibility, unless FIT_SIGNATURE is
 | |
| 	  set where it is disabled so that unsigned images cannot be
 | |
| 	  loaded. If a board needs the legacy image format support in this
 | |
| 	  case, enable it here.
 | |
| 
 | |
| config SUPPORT_RAW_INITRD
 | |
| 	bool "Enable raw initrd images"
 | |
| 	help
 | |
| 	  Note, defining the SUPPORT_RAW_INITRD allows user to supply
 | |
| 	  kernel with raw initrd images. The syntax is slightly different, the
 | |
| 	  address of the initrd must be augmented by it's size, in the following
 | |
| 	  format: "<initrd address>:<initrd size>".
 | |
| 
 | |
| config OF_BOARD_SETUP
 | |
| 	bool "Set up board-specific details in device tree before boot"
 | |
| 	depends on OF_LIBFDT
 | |
| 	help
 | |
| 	  This causes U-Boot to call ft_board_setup() before booting into
 | |
| 	  the Operating System. This function can set up various
 | |
| 	  board-specific information in the device tree for use by the OS.
 | |
| 	  The device tree is then passed to the OS.
 | |
| 
 | |
| config OF_SYSTEM_SETUP
 | |
| 	bool "Set up system-specific details in device tree before boot"
 | |
| 	depends on OF_LIBFDT
 | |
| 	help
 | |
| 	  This causes U-Boot to call ft_system_setup() before booting into
 | |
| 	  the Operating System. This function can set up various
 | |
| 	  system-specific information in the device tree for use by the OS.
 | |
| 	  The device tree is then passed to the OS.
 | |
| 
 | |
| config OF_STDOUT_VIA_ALIAS
 | |
| 	bool "Update the device-tree stdout alias from U-Boot"
 | |
| 	depends on OF_LIBFDT
 | |
| 	help
 | |
| 	  This uses U-Boot's serial alias from the aliases node to update
 | |
| 	  the device tree passed to the OS. The "linux,stdout-path" property
 | |
| 	  in the chosen node is set to point to the correct serial node.
 | |
| 	  This option currently references CONFIG_CONS_INDEX, which is
 | |
| 	  incorrect when used with device tree as this option does not
 | |
| 	  exist / should not be used.
 | |
| 
 | |
| config HAVE_TEXT_BASE
 | |
| 	bool
 | |
| 	depends on !NIOS2 && !XTENSA
 | |
| 	depends on !EFI_APP
 | |
| 	default y
 | |
| 
 | |
| config TEXT_BASE
 | |
| 	depends on HAVE_TEXT_BASE
 | |
| 	default 0x0 if POSITION_INDEPENDENT
 | |
| 	default 0x80800000 if ARCH_OMAP2PLUS || ARCH_K3
 | |
| 	default 0x81700000 if MACH_SUNIV
 | |
| 	default 0x2a000000 if MACH_SUN9I
 | |
| 	default 0x4a000000 if SUNXI_MINIMUM_DRAM_MB >= 256
 | |
| 	default 0x42e00000 if SUNXI_MINIMUM_DRAM_MB >= 64
 | |
| 	hex "Text Base"
 | |
| 	help
 | |
| 	  The address in memory that U-Boot will be running from, initially.
 | |
| 
 | |
| config HAVE_SYS_MONITOR_BASE
 | |
| 	bool
 | |
| 	depends on ARC || MIPS || M68K || NIOS2 || PPC || XTENSA || X86 \
 | |
| 		|| ENV_IS_IN_FLASH || MTD_NOR_FLASH
 | |
| 	depends on !EFI_APP
 | |
| 	default y
 | |
| 
 | |
| config SYS_MONITOR_BASE
 | |
| 	depends on HAVE_SYS_MONITOR_BASE
 | |
| 	hex "Physical start address of boot monitor code"
 | |
| 	default TEXT_BASE
 | |
| 	help
 | |
| 	  The physical start address of boot monitor code (which is the same as
 | |
| 	  CONFIG_TEXT_BASE when linking) and the same as CFG_SYS_FLASH_BASE
 | |
| 	  when booting from flash.
 | |
| 
 | |
| config SPL_SYS_MONITOR_BASE
 | |
| 	depends on MPC85xx && SPL && HAVE_SYS_MONITOR_BASE
 | |
| 	hex "Physical start address of SPL monitor code"
 | |
| 	default SPL_TEXT_BASE
 | |
| 
 | |
| config TPL_SYS_MONITOR_BASE
 | |
| 	depends on MPC85xx && TPL && HAVE_SYS_MONITOR_BASE
 | |
| 	hex "Physical start address of TPL monitor code"
 | |
| 
 | |
| config DYNAMIC_SYS_CLK_FREQ
 | |
| 	bool "Determine CPU clock frequency at run-time"
 | |
| 	help
 | |
| 	  Implement a get_board_sys_clk function that will determine the CPU
 | |
| 	  clock frequency at run time, rather than define it statically.
 | |
| 
 | |
| config SYS_CLK_FREQ
 | |
| 	depends on !DYNAMIC_SYS_CLK_FREQ
 | |
| 	int "CPU clock frequency"
 | |
| 	default 125000000 if ARCH_LS1012A
 | |
| 	default 100000000 if ARCH_P2020 || ARCH_T1024 || ARCH_T1042 || \
 | |
| 			     ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3
 | |
| 	default 66666666 if ARCH_P1010 || ARCH_P1020 || ARCH_T4240
 | |
| 	default 66660000 if ARCH_T2080
 | |
| 	default 33333333 if RCAR_GEN3
 | |
| 	default 24000000 if ARCH_EXYNOS
 | |
| 	default 20000000 if RCAR_GEN2
 | |
| 	default 0
 | |
| 	help
 | |
| 	  A static value for the CPU frequency.  Note that if not required
 | |
| 	  for a given SoC, this can be left at 0.
 | |
| 
 | |
| config ARCH_FIXUP_FDT_MEMORY
 | |
| 	bool "Enable arch_fixup_memory_banks() call"
 | |
| 	default y
 | |
| 	help
 | |
| 	  Enable FDT memory map syncup before OS boot. This feature can be
 | |
| 	  used for booting OS with different memory setup where the part of
 | |
| 	  the memory location should be used for different purpose.
 | |
| 
 | |
| config CHROMEOS
 | |
| 	bool "Support booting Chrome OS"
 | |
| 	help
 | |
| 	  Chrome OS requires U-Boot to set up a table indicating the boot mode
 | |
| 	  (e.g. Developer mode) and a few other things. Enable this if you are
 | |
| 	  booting on a Chromebook to avoid getting an error about an invalid
 | |
| 	  firmware ID.
 | |
| 
 | |
| config CHROMEOS_VBOOT
 | |
| 	bool "Support Chrome OS verified boot"
 | |
| 	help
 | |
| 	  This is intended to enable the full Chrome OS verified boot support
 | |
| 	  in U-Boot. It is not actually implemented in the U-Boot source code
 | |
| 	  at present, so this option is always set to 'n'. It allows
 | |
| 	  distinguishing between booting Chrome OS in a basic way (developer
 | |
| 	  mode) and a full boot.
 | |
| 
 | |
| config SYS_RAMBOOT
 | |
| 	bool
 | |
| 
 | |
| config RAMBOOT_PBL
 | |
| 	bool "Freescale PBL(pre-boot loader) image format support"
 | |
| 	select SYS_RAMBOOT if PPC
 | |
| 	help
 | |
| 	  Some SoCs use PBL to load RCW and/or pre-initialization instructions.
 | |
| 	  For more details refer to doc/README.pblimage
 | |
| 
 | |
| choice
 | |
| 	prompt "Freescale PBL (or predecessor) load location"
 | |
| 	depends on RAMBOOT_PBL || ((TARGET_P1010RDB_PA || TARGET_P1010RDB_PB \
 | |
| 		|| TARGET_P1020RDB_PC || TARGET_P1020RDB_PD || TARGET_P2020RDB) \
 | |
| 		&& !CMD_NAND)
 | |
| 
 | |
| config SDCARD
 | |
| 	bool "Freescale PBL (or similar) is found on SD card"
 | |
| 
 | |
| config SPIFLASH
 | |
| 	bool "Freescale PBL (or similar) is found on SPI flash"
 | |
| 
 | |
| config NO_PBL
 | |
| 	bool "Freescale PBL (or similar) is not used in this case"
 | |
| 
 | |
| endchoice
 | |
| 
 | |
| config FSL_FIXED_MMC_LOCATION
 | |
| 	bool "PBL MMC is at a fixed location"
 | |
| 	depends on SDCARD && !RAMBOOT_PBL
 | |
| 
 | |
| config ESDHC_HC_BLK_ADDR
 | |
| 	def_bool y
 | |
| 	depends on FSL_FIXED_MMC_LOCATION && (ARCH_BSC9131 || ARCH_BSC9132 || ARCH_P1010)
 | |
| 	help
 | |
| 	  In High Capacity SD Cards (> 2 GBytes), the 32-bit source address and
 | |
| 	  code length of these soc specify the memory address in block address
 | |
| 	  format. Block length is fixed to 512 bytes as per the SD High
 | |
| 	  Capacity specification.
 | |
| 
 | |
| config SYS_FSL_PBL_PBI
 | |
| 	string "PBI(pre-boot instructions) commands for the PBL image"
 | |
| 	depends on RAMBOOT_PBL
 | |
| 	help
 | |
| 	  PBI commands can be used to configure SoC before it starts the execution.
 | |
| 	  Please refer doc/README.pblimage for more details.
 | |
| 
 | |
| config SYS_FSL_PBL_RCW
 | |
| 	string "Aadditional RCW (Power on reset configuration) for the PBL image"
 | |
| 	depends on RAMBOOT_PBL
 | |
| 	help
 | |
| 	  Enables addition of RCW (Power on reset configuration) in built image.
 | |
| 	  Please refer doc/README.pblimage for more details.
 | |
| 
 | |
| config SYS_BOOT_RAMDISK_HIGH
 | |
| 	depends on CMD_BOOTM || CMD_BOOTI || CMD_BOOTZ
 | |
| 	depends on !(NIOS2 || SANDBOX || SH || XTENSA)
 | |
| 	def_bool y
 | |
| 	select LMB
 | |
| 	help
 | |
| 	  Enable initrd_high functionality.  If defined then the initrd_high
 | |
| 	  feature is enabled and the boot* ramdisk subcommand is enabled.
 | |
| 
 | |
| endmenu		# Boot images
 | |
| 
 | |
| config DISTRO_DEFAULTS
 | |
| 	bool "Select defaults suitable for booting general purpose Linux distributions"
 | |
| 	select BOOT_DEFAULTS
 | |
| 	select AUTO_COMPLETE
 | |
| 	select CMDLINE_EDITING
 | |
| 	select CMD_SYSBOOT
 | |
| 	select HUSH_PARSER
 | |
| 	select SYS_LONGHELP
 | |
| 	help
 | |
| 	  Select this to enable various options and commands which are suitable
 | |
| 	  for building u-boot for booting general purpose Linux distributions.
 | |
| 
 | |
| menu "Boot timing"
 | |
| 
 | |
| config BOOTSTAGE
 | |
| 	bool "Boot timing and reporting"
 | |
| 	help
 | |
| 	  Enable recording of boot time while booting. To use it, insert
 | |
| 	  calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
 | |
| 	  bootstage.h. Only a single entry is recorded for each ID. You can
 | |
| 	  give the entry a name with bootstage_mark_name(). You can also
 | |
| 	  record elapsed time in a particular stage using bootstage_start()
 | |
| 	  before starting and bootstage_accum() when finished. Bootstage will
 | |
| 	  add up all the accumulated time and report it.
 | |
| 
 | |
| 	  Normally, IDs are defined in bootstage.h but a small number of
 | |
| 	  additional 'user' IDs can be used by passing BOOTSTAGE_ID_ALLOC
 | |
| 	  as the ID.
 | |
| 
 | |
| 	  Calls to show_boot_progress() will also result in log entries but
 | |
| 	  these will not have names.
 | |
| 
 | |
| config SPL_BOOTSTAGE
 | |
| 	bool "Boot timing and reported in SPL"
 | |
| 	depends on BOOTSTAGE && SPL
 | |
| 	help
 | |
| 	  Enable recording of boot time in SPL. To make this visible to U-Boot
 | |
| 	  proper, enable BOOTSTAGE_STASH as well. This will stash the timing
 | |
| 	  information when SPL finishes and load it when U-Boot proper starts
 | |
| 	  up.
 | |
| 
 | |
| config TPL_BOOTSTAGE
 | |
| 	bool "Boot timing and reported in TPL"
 | |
| 	depends on BOOTSTAGE && TPL
 | |
| 	help
 | |
| 	  Enable recording of boot time in SPL. To make this visible to U-Boot
 | |
| 	  proper, enable BOOTSTAGE_STASH as well. This will stash the timing
 | |
| 	  information when TPL finishes and load it when U-Boot proper starts
 | |
| 	  up.
 | |
| 
 | |
| config BOOTSTAGE_REPORT
 | |
| 	bool "Display a detailed boot timing report before booting the OS"
 | |
| 	depends on BOOTSTAGE
 | |
| 	help
 | |
| 	  Enable output of a boot time report just before the OS is booted.
 | |
| 	  This shows how long it took U-Boot to go through each stage of the
 | |
| 	  boot process. The report looks something like this:
 | |
| 
 | |
| 		Timer summary in microseconds:
 | |
| 		       Mark    Elapsed  Stage
 | |
| 			  0          0  reset
 | |
| 		  3,575,678  3,575,678  board_init_f start
 | |
| 		  3,575,695         17  arch_cpu_init A9
 | |
| 		  3,575,777         82  arch_cpu_init done
 | |
| 		  3,659,598     83,821  board_init_r start
 | |
| 		  3,910,375    250,777  main_loop
 | |
| 		 29,916,167 26,005,792  bootm_start
 | |
| 		 30,361,327    445,160  start_kernel
 | |
| 
 | |
| config BOOTSTAGE_RECORD_COUNT
 | |
| 	int "Number of boot stage records to store"
 | |
| 	depends on BOOTSTAGE
 | |
| 	default 30
 | |
| 	help
 | |
| 	  This is the size of the bootstage record list and is the maximum
 | |
| 	  number of bootstage records that can be recorded.
 | |
| 
 | |
| config SPL_BOOTSTAGE_RECORD_COUNT
 | |
| 	int "Number of boot stage records to store for SPL"
 | |
| 	depends on SPL_BOOTSTAGE
 | |
| 	default 5
 | |
| 	help
 | |
| 	  This is the size of the bootstage record list and is the maximum
 | |
| 	  number of bootstage records that can be recorded.
 | |
| 
 | |
| config TPL_BOOTSTAGE_RECORD_COUNT
 | |
| 	int "Number of boot stage records to store for TPL"
 | |
| 	depends on TPL_BOOTSTAGE
 | |
| 	default 5
 | |
| 	help
 | |
| 	  This is the size of the bootstage record list and is the maximum
 | |
| 	  number of bootstage records that can be recorded.
 | |
| 
 | |
| config BOOTSTAGE_FDT
 | |
| 	bool "Store boot timing information in the OS device tree"
 | |
| 	depends on BOOTSTAGE
 | |
| 	help
 | |
| 	  Stash the bootstage information in the FDT. A root 'bootstage'
 | |
| 	  node is created with each bootstage id as a child. Each child
 | |
| 	  has a 'name' property and either 'mark' containing the
 | |
| 	  mark time in microseconds, or 'accum' containing the
 | |
| 	  accumulated time for that bootstage id in microseconds.
 | |
| 	  For example:
 | |
| 
 | |
| 		bootstage {
 | |
| 			154 {
 | |
| 				name = "board_init_f";
 | |
| 				mark = <3575678>;
 | |
| 			};
 | |
| 			170 {
 | |
| 				name = "lcd";
 | |
| 				accum = <33482>;
 | |
| 			};
 | |
| 		};
 | |
| 
 | |
| 	  Code in the Linux kernel can find this in /proc/devicetree.
 | |
| 
 | |
| config BOOTSTAGE_STASH
 | |
| 	bool "Stash the boot timing information in memory before booting OS"
 | |
| 	depends on BOOTSTAGE
 | |
| 	help
 | |
| 	  Some OSes do not support device tree. Bootstage can instead write
 | |
| 	  the boot timing information in a binary format at a given address.
 | |
| 	  This happens through a call to bootstage_stash(), typically in
 | |
| 	  the CPU's cleanup_before_linux() function. You can use the
 | |
| 	  'bootstage stash' and 'bootstage unstash' commands to do this on
 | |
| 	  the command line.
 | |
| 
 | |
| config BOOTSTAGE_STASH_ADDR
 | |
| 	hex "Address to stash boot timing information"
 | |
| 	default 0
 | |
| 	help
 | |
| 	  Provide an address which will not be overwritten by the OS when it
 | |
| 	  starts, so that it can read this information when ready.
 | |
| 
 | |
| config BOOTSTAGE_STASH_SIZE
 | |
| 	hex "Size of boot timing stash region"
 | |
| 	default 0x1000
 | |
| 	help
 | |
| 	  This should be large enough to hold the bootstage stash. A value of
 | |
| 	  4096 (4KiB) is normally plenty.
 | |
| 
 | |
| config SHOW_BOOT_PROGRESS
 | |
| 	bool "Show boot progress in a board-specific manner"
 | |
| 	help
 | |
| 	  Defining this option allows to add some board-specific code (calling
 | |
| 	  a user-provided function show_boot_progress(int) that enables you to
 | |
| 	  show the system's boot progress on some display (for example, some
 | |
| 	  LEDs) on your board. At the moment, the following checkpoints are
 | |
| 	  implemented:
 | |
| 
 | |
| 	  Legacy uImage format:
 | |
| 
 | |
| 	  Arg	Where			When
 | |
| 	    1	common/cmd_bootm.c	before attempting to boot an image
 | |
| 	   -1	common/cmd_bootm.c	Image header has bad	 magic number
 | |
| 	    2	common/cmd_bootm.c	Image header has correct magic number
 | |
| 	   -2	common/cmd_bootm.c	Image header has bad	 checksum
 | |
| 	    3	common/cmd_bootm.c	Image header has correct checksum
 | |
| 	   -3	common/cmd_bootm.c	Image data   has bad	 checksum
 | |
| 	    4	common/cmd_bootm.c	Image data   has correct checksum
 | |
| 	   -4	common/cmd_bootm.c	Image is for unsupported architecture
 | |
| 	    5	common/cmd_bootm.c	Architecture check OK
 | |
| 	   -5	common/cmd_bootm.c	Wrong Image Type (not kernel, multi)
 | |
| 	    6	common/cmd_bootm.c	Image Type check OK
 | |
| 	   -6	common/cmd_bootm.c	gunzip uncompression error
 | |
| 	   -7	common/cmd_bootm.c	Unimplemented compression type
 | |
| 	    7	common/cmd_bootm.c	Uncompression OK
 | |
| 	    8	common/cmd_bootm.c	No uncompress/copy overwrite error
 | |
| 	   -9	common/cmd_bootm.c	Unsupported OS (not Linux, BSD, VxWorks, QNX)
 | |
| 
 | |
| 	    9	common/image.c		Start initial ramdisk verification
 | |
| 	  -10	common/image.c		Ramdisk header has bad	   magic number
 | |
| 	  -11	common/image.c		Ramdisk header has bad	   checksum
 | |
| 	   10	common/image.c		Ramdisk header is OK
 | |
| 	  -12	common/image.c		Ramdisk data   has bad	   checksum
 | |
| 	   11	common/image.c		Ramdisk data   has correct checksum
 | |
| 	   12	common/image.c		Ramdisk verification complete, start loading
 | |
| 	  -13	common/image.c		Wrong Image Type (not PPC Linux ramdisk)
 | |
| 	   13	common/image.c		Start multifile image verification
 | |
| 	   14	common/image.c		No initial ramdisk, no multifile, continue.
 | |
| 
 | |
| 	   15	arch/<arch>/lib/bootm.c All preparation done, transferring control to OS
 | |
| 
 | |
| 	  -30	arch/powerpc/lib/board.c	Fatal error, hang the system
 | |
| 	  -31	post/post.c		POST test failed, detected by post_output_backlog()
 | |
| 	  -32	post/post.c		POST test failed, detected by post_run_single()
 | |
| 
 | |
| 	   34	common/cmd_doc.c	before loading a Image from a DOC device
 | |
| 	  -35	common/cmd_doc.c	Bad usage of "doc" command
 | |
| 	   35	common/cmd_doc.c	correct usage of "doc" command
 | |
| 	  -36	common/cmd_doc.c	No boot device
 | |
| 	   36	common/cmd_doc.c	correct boot device
 | |
| 	  -37	common/cmd_doc.c	Unknown Chip ID on boot device
 | |
| 	   37	common/cmd_doc.c	correct chip ID found, device available
 | |
| 	  -38	common/cmd_doc.c	Read Error on boot device
 | |
| 	   38	common/cmd_doc.c	reading Image header from DOC device OK
 | |
| 	  -39	common/cmd_doc.c	Image header has bad magic number
 | |
| 	   39	common/cmd_doc.c	Image header has correct magic number
 | |
| 	  -40	common/cmd_doc.c	Error reading Image from DOC device
 | |
| 	   40	common/cmd_doc.c	Image header has correct magic number
 | |
| 	   41	common/cmd_ide.c	before loading a Image from a IDE device
 | |
| 	  -42	common/cmd_ide.c	Bad usage of "ide" command
 | |
| 	   42	common/cmd_ide.c	correct usage of "ide" command
 | |
| 	  -43	common/cmd_ide.c	No boot device
 | |
| 	   43	common/cmd_ide.c	boot device found
 | |
| 	  -44	common/cmd_ide.c	Device not available
 | |
| 	   44	common/cmd_ide.c	Device available
 | |
| 	  -45	common/cmd_ide.c	wrong partition selected
 | |
| 	   45	common/cmd_ide.c	partition selected
 | |
| 	  -46	common/cmd_ide.c	Unknown partition table
 | |
| 	   46	common/cmd_ide.c	valid partition table found
 | |
| 	  -47	common/cmd_ide.c	Invalid partition type
 | |
| 	   47	common/cmd_ide.c	correct partition type
 | |
| 	  -48	common/cmd_ide.c	Error reading Image Header on boot device
 | |
| 	   48	common/cmd_ide.c	reading Image Header from IDE device OK
 | |
| 	  -49	common/cmd_ide.c	Image header has bad magic number
 | |
| 	   49	common/cmd_ide.c	Image header has correct magic number
 | |
| 	  -50	common/cmd_ide.c	Image header has bad	 checksum
 | |
| 	   50	common/cmd_ide.c	Image header has correct checksum
 | |
| 	  -51	common/cmd_ide.c	Error reading Image from IDE device
 | |
| 	   51	common/cmd_ide.c	reading Image from IDE device OK
 | |
| 	   52	common/cmd_nand.c	before loading a Image from a NAND device
 | |
| 	  -53	common/cmd_nand.c	Bad usage of "nand" command
 | |
| 	   53	common/cmd_nand.c	correct usage of "nand" command
 | |
| 	  -54	common/cmd_nand.c	No boot device
 | |
| 	   54	common/cmd_nand.c	boot device found
 | |
| 	  -55	common/cmd_nand.c	Unknown Chip ID on boot device
 | |
| 	   55	common/cmd_nand.c	correct chip ID found, device available
 | |
| 	  -56	common/cmd_nand.c	Error reading Image Header on boot device
 | |
| 	   56	common/cmd_nand.c	reading Image Header from NAND device OK
 | |
| 	  -57	common/cmd_nand.c	Image header has bad magic number
 | |
| 	   57	common/cmd_nand.c	Image header has correct magic number
 | |
| 	  -58	common/cmd_nand.c	Error reading Image from NAND device
 | |
| 	   58	common/cmd_nand.c	reading Image from NAND device OK
 | |
| 
 | |
| 	  -60	common/env_common.c	Environment has a bad CRC, using default
 | |
| 
 | |
| 	   64	net/eth.c		starting with Ethernet configuration.
 | |
| 	  -64	net/eth.c		no Ethernet found.
 | |
| 	   65	net/eth.c		Ethernet found.
 | |
| 
 | |
| 	  -80	common/cmd_net.c	usage wrong
 | |
| 	   80	common/cmd_net.c	before calling net_loop()
 | |
| 	  -81	common/cmd_net.c	some error in net_loop() occurred
 | |
| 	   81	common/cmd_net.c	net_loop() back without error
 | |
| 	  -82	common/cmd_net.c	size == 0 (File with size 0 loaded)
 | |
| 	   82	common/cmd_net.c	trying automatic boot
 | |
| 	   83	common/cmd_net.c	running "source" command
 | |
| 	  -83	common/cmd_net.c	some error in automatic boot or "source" command
 | |
| 	   84	common/cmd_net.c	end without errors
 | |
| 
 | |
| 	  FIT uImage format:
 | |
| 
 | |
| 	  Arg	Where			When
 | |
| 	  100	common/cmd_bootm.c	Kernel FIT Image has correct format
 | |
| 	  -100	common/cmd_bootm.c	Kernel FIT Image has incorrect format
 | |
| 	  101	common/cmd_bootm.c	No Kernel subimage unit name, using configuration
 | |
| 	  -101	common/cmd_bootm.c	Can't get configuration for kernel subimage
 | |
| 	  102	common/cmd_bootm.c	Kernel unit name specified
 | |
| 	  -103	common/cmd_bootm.c	Can't get kernel subimage node offset
 | |
| 	  103	common/cmd_bootm.c	Found configuration node
 | |
| 	  104	common/cmd_bootm.c	Got kernel subimage node offset
 | |
| 	  -104	common/cmd_bootm.c	Kernel subimage hash verification failed
 | |
| 	  105	common/cmd_bootm.c	Kernel subimage hash verification OK
 | |
| 	  -105	common/cmd_bootm.c	Kernel subimage is for unsupported architecture
 | |
| 	  106	common/cmd_bootm.c	Architecture check OK
 | |
| 	  -106	common/cmd_bootm.c	Kernel subimage has wrong type
 | |
| 	  107	common/cmd_bootm.c	Kernel subimage type OK
 | |
| 	  -107	common/cmd_bootm.c	Can't get kernel subimage data/size
 | |
| 	  108	common/cmd_bootm.c	Got kernel subimage data/size
 | |
| 	  -108	common/cmd_bootm.c	Wrong image type (not legacy, FIT)
 | |
| 	  -109	common/cmd_bootm.c	Can't get kernel subimage type
 | |
| 	  -110	common/cmd_bootm.c	Can't get kernel subimage comp
 | |
| 	  -111	common/cmd_bootm.c	Can't get kernel subimage os
 | |
| 	  -112	common/cmd_bootm.c	Can't get kernel subimage load address
 | |
| 	  -113	common/cmd_bootm.c	Image uncompress/copy overwrite error
 | |
| 
 | |
| 	  120	common/image.c		Start initial ramdisk verification
 | |
| 	  -120	common/image.c		Ramdisk FIT image has incorrect format
 | |
| 	  121	common/image.c		Ramdisk FIT image has correct format
 | |
| 	  122	common/image.c		No ramdisk subimage unit name, using configuration
 | |
| 	  -122	common/image.c		Can't get configuration for ramdisk subimage
 | |
| 	  123	common/image.c		Ramdisk unit name specified
 | |
| 	  -124	common/image.c		Can't get ramdisk subimage node offset
 | |
| 	  125	common/image.c		Got ramdisk subimage node offset
 | |
| 	  -125	common/image.c		Ramdisk subimage hash verification failed
 | |
| 	  126	common/image.c		Ramdisk subimage hash verification OK
 | |
| 	  -126	common/image.c		Ramdisk subimage for unsupported architecture
 | |
| 	  127	common/image.c		Architecture check OK
 | |
| 	  -127	common/image.c		Can't get ramdisk subimage data/size
 | |
| 	  128	common/image.c		Got ramdisk subimage data/size
 | |
| 	  129	common/image.c		Can't get ramdisk load address
 | |
| 	  -129	common/image.c		Got ramdisk load address
 | |
| 
 | |
| 	  -130	common/cmd_doc.c	Incorrect FIT image format
 | |
| 	  131	common/cmd_doc.c	FIT image format OK
 | |
| 
 | |
| 	  -140	common/cmd_ide.c	Incorrect FIT image format
 | |
| 	  141	common/cmd_ide.c	FIT image format OK
 | |
| 
 | |
| 	  -150	common/cmd_nand.c	Incorrect FIT image format
 | |
| 	  151	common/cmd_nand.c	FIT image format OK
 | |
| 
 | |
| config SPL_SHOW_BOOT_PROGRESS
 | |
| 	bool "Show boot progress in a board-specific manner in SPL"
 | |
| 	depends on SPL
 | |
| 	help
 | |
| 	  Defining this option allows to add some board-specific code (calling
 | |
| 	  a user-provided function show_boot_progress(int) that enables you to
 | |
| 	  show the system's boot progress on some display (for example, some
 | |
| 	  LEDs) on your board. For details see SHOW_BOOT_PROGRESS.
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| menu "Boot media"
 | |
| 
 | |
| config NOR_BOOT
 | |
| 	bool "Support for booting from NOR flash"
 | |
| 	depends on NOR
 | |
| 	help
 | |
| 	  Enabling this will make a U-Boot binary that is capable of being
 | |
| 	  booted via NOR.  In this case we will enable certain pinmux early
 | |
| 	  as the ROM only partially sets up pinmux.  We also default to using
 | |
| 	  NOR for environment.
 | |
| 
 | |
| config NAND_BOOT
 | |
| 	bool "Support for booting from NAND flash"
 | |
| 	imply MTD_RAW_NAND
 | |
| 	help
 | |
| 	  Enabling this will make a U-Boot binary that is capable of being
 | |
| 	  booted via NAND flash. This is not a must, some SoCs need this,
 | |
| 	  some not.
 | |
| 
 | |
| config ONENAND_BOOT
 | |
| 	bool "Support for booting from ONENAND"
 | |
| 	imply MTD_RAW_NAND
 | |
| 	help
 | |
| 	  Enabling this will make a U-Boot binary that is capable of being
 | |
| 	  booted via ONENAND. This is not a must, some SoCs need this,
 | |
| 	  some not.
 | |
| 
 | |
| config QSPI_BOOT
 | |
| 	bool "Support for booting from QSPI flash"
 | |
| 	help
 | |
| 	  Enabling this will make a U-Boot binary that is capable of being
 | |
| 	  booted via QSPI flash. This is not a must, some SoCs need this,
 | |
| 	  some not.
 | |
| 
 | |
| config SATA_BOOT
 | |
| 	bool "Support for booting from SATA"
 | |
| 	help
 | |
| 	  Enabling this will make a U-Boot binary that is capable of being
 | |
| 	  booted via SATA. This is not a must, some SoCs need this,
 | |
| 	  some not.
 | |
| 
 | |
| config SD_BOOT
 | |
| 	bool "Support for booting from SD/EMMC"
 | |
| 	help
 | |
| 	  Enabling this will make a U-Boot binary that is capable of being
 | |
| 	  booted via SD/EMMC. This is not a must, some SoCs need this,
 | |
| 	  some not.
 | |
| 
 | |
| config SD_BOOT_QSPI
 | |
| 	bool "Support for booting from SD/EMMC and enable QSPI"
 | |
| 	help
 | |
| 	  Enabling this will make a U-Boot binary that is capable of being
 | |
| 	  booted via SD/EMMC while enabling QSPI on the platform as well. This
 | |
| 	  is not a must, some SoCs need this, some not.
 | |
| 
 | |
| config SPI_BOOT
 | |
| 	bool "Support for booting from SPI flash"
 | |
| 	help
 | |
| 	  Enabling this will make a U-Boot binary that is capable of being
 | |
| 	  booted via SPI flash. This is not a must, some SoCs need this,
 | |
| 	  some not.
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| menu "Autoboot options"
 | |
| 
 | |
| config AUTOBOOT
 | |
| 	bool "Autoboot"
 | |
| 	default y
 | |
| 	help
 | |
| 	  This enables the autoboot.  See doc/README.autoboot for detail.
 | |
| 
 | |
| config BOOTDELAY
 | |
| 	int "delay in seconds before automatically booting"
 | |
| 	default 2
 | |
| 	depends on AUTOBOOT
 | |
| 	help
 | |
| 	  Delay before automatically running bootcmd;
 | |
| 	  set to 0 to autoboot with no delay, but you can stop it by key input.
 | |
| 	  set to -1 to disable autoboot.
 | |
| 	  set to -2 to autoboot with no delay and not check for abort
 | |
| 
 | |
| 	  If this value is >= 0 then it is also used for the default delay
 | |
| 	  before starting the default entry in bootmenu. If it is < 0 then
 | |
| 	  a default value of 10s is used.
 | |
| 
 | |
| 	  See doc/README.autoboot for details.
 | |
| 
 | |
| config AUTOBOOT_KEYED
 | |
| 	bool "Stop autobooting via specific input key / string"
 | |
| 	help
 | |
| 	  This option enables stopping (aborting) of the automatic
 | |
| 	  boot feature only by issuing a specific input key or
 | |
| 	  string. If not enabled, any input key will abort the
 | |
| 	  U-Boot automatic booting process and bring the device
 | |
| 	  to the U-Boot prompt for user input.
 | |
| 
 | |
| config AUTOBOOT_FLUSH_STDIN
 | |
| 	bool "Enable flushing stdin before starting to read the password"
 | |
| 	depends on AUTOBOOT_KEYED && !SANDBOX
 | |
| 	help
 | |
| 	  When this option is enabled stdin buffer will be flushed before
 | |
| 	  starting to read the password.
 | |
| 	  This can't be enabled for the sandbox as flushing stdin would
 | |
| 	  break the autoboot unit tests.
 | |
| 
 | |
| config AUTOBOOT_PROMPT
 | |
| 	string "Autoboot stop prompt"
 | |
| 	depends on AUTOBOOT_KEYED
 | |
| 	default "Autoboot in %d seconds\\n"
 | |
| 	help
 | |
| 	  This string is displayed before the boot delay selected by
 | |
| 	  CONFIG_BOOTDELAY starts. If it is not defined	there is no
 | |
| 	  output indicating that autoboot is in progress.
 | |
| 
 | |
| 	  Note that this define is used as the (only) argument to a
 | |
| 	  printf() call, so it may contain '%' format specifications,
 | |
| 	  provided that it also includes, sepearated by commas exactly
 | |
| 	  like in a printf statement, the required arguments. It is
 | |
| 	  the responsibility of the user to select only such arguments
 | |
| 	  that are valid in the given context.
 | |
| 
 | |
| config AUTOBOOT_ENCRYPTION
 | |
| 	bool "Enable encryption in autoboot stopping"
 | |
| 	depends on AUTOBOOT_KEYED
 | |
| 	help
 | |
| 	  This option allows a string to be entered into U-Boot to stop the
 | |
| 	  autoboot.
 | |
| 	  The behavior depends whether CONFIG_CRYPT_PW from lib is enabled
 | |
| 	  or not.
 | |
| 	  In case CONFIG_CRYPT_PW is enabled, the string will be forwarded
 | |
| 	  to the crypt-based functionality and be compared against the
 | |
| 	  string in the environment variable 'bootstopkeycrypt'.
 | |
| 	  In case CONFIG_CRYPT_PW is disabled the string itself is hashed
 | |
| 	  and compared against the hash in the environment variable
 | |
| 	  'bootstopkeysha256'.
 | |
| 	  If it matches in either case then boot stops and
 | |
| 	  a command-line prompt is presented.
 | |
| 	  This provides a way to ship a secure production device which can also
 | |
| 	  be accessed at the U-Boot command line.
 | |
| 
 | |
| config AUTOBOOT_SHA256_FALLBACK
 | |
| 	bool "Allow fallback from crypt-hashed password to sha256"
 | |
| 	depends on AUTOBOOT_ENCRYPTION && CRYPT_PW
 | |
| 	help
 | |
| 	  This option adds support to fall back from crypt-hashed
 | |
| 	  passwords to checking a SHA256 hashed password in case the
 | |
| 	  'bootstopusesha256' environment variable is set to 'true'.
 | |
| 
 | |
| config AUTOBOOT_DELAY_STR
 | |
| 	string "Delay autobooting via specific input key / string"
 | |
| 	depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
 | |
| 	help
 | |
| 	  This option delays the automatic boot feature by issuing
 | |
| 	  a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR
 | |
| 	  or the environment variable "bootdelaykey" is specified
 | |
| 	  and this string is received from console input before
 | |
| 	  autoboot starts booting, U-Boot gives a command prompt. The
 | |
| 	  U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is
 | |
| 	  used, otherwise it never times out.
 | |
| 
 | |
| config AUTOBOOT_STOP_STR
 | |
| 	string "Stop autobooting via specific input key / string"
 | |
| 	depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
 | |
| 	help
 | |
| 	  This option enables stopping (aborting) of the automatic
 | |
| 	  boot feature only by issuing a specific input key or
 | |
| 	  string. If CONFIG_AUTOBOOT_STOP_STR or the environment
 | |
| 	  variable "bootstopkey" is specified and this string is
 | |
| 	  received from console input before autoboot starts booting,
 | |
| 	  U-Boot gives a command prompt. The U-Boot prompt never
 | |
| 	  times out, even if CONFIG_BOOT_RETRY_TIME is used.
 | |
| 
 | |
| config AUTOBOOT_KEYED_CTRLC
 | |
| 	bool "Enable Ctrl-C autoboot interruption"
 | |
| 	depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
 | |
| 	help
 | |
| 	  This option allows for the boot sequence to be interrupted
 | |
| 	  by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey".
 | |
| 	  Setting this variable	provides an escape sequence from the
 | |
| 	  limited "password" strings.
 | |
| 
 | |
| config AUTOBOOT_NEVER_TIMEOUT
 | |
| 	bool "Make the password entry never time-out"
 | |
| 	depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION && CRYPT_PW
 | |
| 	help
 | |
| 	  This option removes the timeout from the password entry
 | |
| 	  when the user first presses the <Enter> key before entering
 | |
| 	  any other character.
 | |
| 
 | |
| config AUTOBOOT_STOP_STR_ENABLE
 | |
| 	bool "Enable fixed string to stop autobooting"
 | |
| 	depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
 | |
| 	help
 | |
| 	  This option enables the feature to add a fixed stop
 | |
| 	  string that is defined at compile time.
 | |
| 	  In every case it will be tried to load the stop
 | |
| 	  string from the environment.
 | |
| 	  In case this is enabled and there is no stop string
 | |
| 	  in the environment, this will be used as default value.
 | |
| 
 | |
| config AUTOBOOT_STOP_STR_CRYPT
 | |
| 	string "Stop autobooting via crypt-hashed password"
 | |
| 	depends on AUTOBOOT_STOP_STR_ENABLE && CRYPT_PW
 | |
| 	help
 | |
| 	  This option adds the feature to only stop the autobooting,
 | |
| 	  and therefore boot into the U-Boot prompt, when the input
 | |
| 	  string / password matches a values that is hashed via
 | |
| 	  one of the supported crypt-style password hashing options
 | |
| 	  and saved in the environment variable "bootstopkeycrypt".
 | |
| 
 | |
| config AUTOBOOT_STOP_STR_SHA256
 | |
| 	string "Stop autobooting via SHA256 hashed password"
 | |
| 	depends on AUTOBOOT_STOP_STR_ENABLE
 | |
| 	help
 | |
| 	  This option adds the feature to only stop the autobooting,
 | |
| 	  and therefore boot into the U-Boot prompt, when the input
 | |
| 	  string / password matches a values that is encypted via
 | |
| 	  a SHA256 hash and saved in the environment variable
 | |
| 	  "bootstopkeysha256". If the value in that variable
 | |
| 	  includes a ":", the portion prior to the ":" will be treated
 | |
| 	  as a salt value.
 | |
| 
 | |
| config AUTOBOOT_USE_MENUKEY
 | |
| 	bool "Allow a specify key to run a menu from the environment"
 | |
| 	depends on !AUTOBOOT_KEYED
 | |
| 	help
 | |
| 	  If a specific key is pressed to stop autoboot, then the commands in
 | |
| 	  the environment variable 'menucmd' are executed before boot starts.
 | |
| 
 | |
| config AUTOBOOT_MENUKEY
 | |
| 	int "ASCII value of boot key to show a menu"
 | |
| 	default 0
 | |
| 	depends on AUTOBOOT_USE_MENUKEY
 | |
| 	help
 | |
| 	  If this key is pressed to stop autoboot, then the commands in the
 | |
| 	  environment variable 'menucmd' will be executed before boot starts.
 | |
| 	  For example, 33 means "!" in ASCII, so pressing ! at boot would take
 | |
| 	  this action.
 | |
| 
 | |
| config AUTOBOOT_MENU_SHOW
 | |
| 	bool "Show a menu on boot"
 | |
| 	depends on CMD_BOOTMENU
 | |
| 	help
 | |
| 	  This enables the boot menu, controlled by environment variables
 | |
| 	  defined by the board. The menu starts after running the 'preboot'
 | |
| 	  environmnent variable (if enabled) and before handling the boot delay.
 | |
| 	  See README.bootmenu for more details.
 | |
| 
 | |
| config BOOTMENU_DISABLE_UBOOT_CONSOLE
 | |
| 	bool "Disallow bootmenu to enter the U-Boot console"
 | |
| 	depends on AUTOBOOT_MENU_SHOW
 | |
| 	help
 | |
| 	  If this option is enabled, user can not enter the U-Boot console from
 | |
| 	  bootmenu. It increases the system security.
 | |
| 
 | |
| config BOOT_RETRY
 | |
| 	bool "Boot retry feature"
 | |
| 	help
 | |
| 	  Allow for having the U-Boot command prompt time out and attempt
 | |
| 	  to boot again.  If the environment variable "bootretry" is found then
 | |
| 	  its value is used, otherwise the retry timeout is
 | |
| 	  CONFIG_BOOT_RETRY_TIME.  CONFIG_BOOT_RETRY_MIN is optional and
 | |
| 	  defaults to CONFIG_BOOT_RETRY_TIME. All times are in seconds.
 | |
| 
 | |
| config BOOT_RETRY_TIME
 | |
| 	int "Timeout in seconds before attempting to boot again"
 | |
| 	depends on BOOT_RETRY
 | |
| 	help
 | |
| 	  Time in seconds before the U-Boot prompt will timeout and boot will
 | |
| 	  be attempted again.
 | |
| 
 | |
| config BOOT_RETRY_MIN
 | |
| 	int "Minimum timeout in seconds for 'bootretry'"
 | |
| 	depends on BOOT_RETRY
 | |
| 	default BOOT_RETRY_TIME
 | |
| 	help
 | |
| 	  The minimum time in seconds that "bootretry" can be set to.
 | |
| 
 | |
| config RESET_TO_RETRY
 | |
| 	bool "Reset the board to retry autoboot"
 | |
| 	depends on BOOT_RETRY
 | |
| 	help
 | |
| 	  After the countdown timed out, the board will be reset to restart
 | |
| 	  again.
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| menu "Image support"
 | |
| 
 | |
| config IMAGE_PRE_LOAD
 | |
| 	bool "Image pre-load support"
 | |
| 	help
 | |
| 	  Enable an image pre-load stage in the SPL.
 | |
| 	  This pre-load stage allows to do some manipulation
 | |
| 	  or check (for example signature check) on an image
 | |
| 	  before launching it.
 | |
| 
 | |
| config SPL_IMAGE_PRE_LOAD
 | |
| 	bool "Image pre-load support within SPL"
 | |
| 	depends on SPL && IMAGE_PRE_LOAD
 | |
| 	help
 | |
| 	  Enable an image pre-load stage in the SPL.
 | |
| 	  This pre-load stage allows to do some manipulation
 | |
| 	  or check (for example signature check) on an image
 | |
| 	  before launching it.
 | |
| 
 | |
| config IMAGE_PRE_LOAD_SIG
 | |
| 	bool "Image pre-load signature support"
 | |
| 	depends on IMAGE_PRE_LOAD
 | |
| 	select FIT_SIGNATURE
 | |
| 	select RSA
 | |
| 	select RSA_VERIFY_WITH_PKEY
 | |
| 	help
 | |
| 	  Enable signature check support in the pre-load stage.
 | |
| 	  For this feature a very simple header is added before
 | |
| 	  the image with few fields:
 | |
| 	  - a magic
 | |
| 	  - the image size
 | |
| 	  - the signature
 | |
| 	  All other information (header size, type of signature,
 | |
| 	  ...) are provided in the node /image/pre-load/sig of
 | |
| 	  u-boot.
 | |
| 
 | |
| config SPL_IMAGE_PRE_LOAD_SIG
 | |
| 	bool "Image pre-load signature support witin SPL"
 | |
| 	depends on SPL_IMAGE_PRE_LOAD && IMAGE_PRE_LOAD_SIG
 | |
| 	select SPL_FIT_SIGNATURE
 | |
| 	select SPL_RSA
 | |
| 	select SPL_RSA_VERIFY_WITH_PKEY
 | |
| 	help
 | |
| 	  Enable signature check support in the pre-load stage in the SPL.
 | |
| 	  For this feature a very simple header is added before
 | |
| 	  the image with few fields:
 | |
| 	  - a magic
 | |
| 	  - the image size
 | |
| 	  - the signature
 | |
| 	  All other information (header size, type of signature,
 | |
| 	  ...) are provided in the node /image/pre-load/sig of
 | |
| 	  u-boot.
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| config USE_BOOTARGS
 | |
| 	bool "Enable boot arguments"
 | |
| 	help
 | |
| 	  Provide boot arguments to bootm command. Boot arguments are specified
 | |
| 	  in CONFIG_BOOTARGS option. Enable this option to be able to specify
 | |
| 	  CONFIG_BOOTARGS string. If this option is disabled, CONFIG_BOOTARGS
 | |
| 	  will be undefined and won't take any space in U-Boot image.
 | |
| 
 | |
| config BOOTARGS
 | |
| 	string "Boot arguments"
 | |
| 	depends on USE_BOOTARGS && !USE_DEFAULT_ENV_FILE
 | |
| 	help
 | |
| 	  This can be used to pass arguments to the bootm command. The value of
 | |
| 	  CONFIG_BOOTARGS goes into the environment value "bootargs". Note that
 | |
| 	  this value will also override the "chosen" node in FDT blob.
 | |
| 
 | |
| config BOOTARGS_SUBST
 | |
| 	bool "Support substituting strings in boot arguments"
 | |
| 	help
 | |
| 	  This allows substituting string values in the boot arguments. These
 | |
| 	  are applied after the commandline has been built.
 | |
| 
 | |
| 	  One use for this is to insert the root-disk UUID into the command
 | |
| 	  line where bootargs contains "root=${uuid}"
 | |
| 
 | |
| 		setenv bootargs "console= root=${uuid}"
 | |
| 		# Set the 'uuid' environment variable
 | |
| 		part uuid mmc 2:2 uuid
 | |
| 
 | |
| 		# Command-line substitution will put the real uuid into the
 | |
| 		# kernel command line
 | |
| 		bootm
 | |
| 
 | |
| config USE_BOOTCOMMAND
 | |
| 	bool "Enable a default value for bootcmd"
 | |
| 	help
 | |
| 	  Provide a default value for the bootcmd entry in the environment.  If
 | |
| 	  autoboot is enabled this is what will be run automatically.  Enable
 | |
| 	  this option to be able to specify CONFIG_BOOTCOMMAND as a string.  If
 | |
| 	  this option is disabled, CONFIG_BOOTCOMMAND will be undefined and
 | |
| 	  won't take any space in U-Boot image.
 | |
| 
 | |
| config BOOTCOMMAND
 | |
| 	string "bootcmd value"
 | |
| 	depends on USE_BOOTCOMMAND && !USE_DEFAULT_ENV_FILE
 | |
| 	default "bootflow scan -lb" if BOOTSTD_BOOTCOMMAND && CMD_BOOTFLOW_FULL
 | |
| 	default "bootflow scan" if BOOTSTD_BOOTCOMMAND && !CMD_BOOTFLOW_FULL
 | |
| 	default "run distro_bootcmd" if !BOOTSTD_BOOTCOMMAND && DISTRO_DEFAULTS
 | |
| 	help
 | |
| 	  This is the string of commands that will be used as bootcmd and if
 | |
| 	  AUTOBOOT is set, automatically run.
 | |
| 
 | |
| config USE_PREBOOT
 | |
| 	bool "Enable preboot"
 | |
| 	help
 | |
| 	  When this option is enabled, the existence of the environment
 | |
| 	  variable "preboot" will be checked immediately before starting the
 | |
| 	  CONFIG_BOOTDELAY countdown and/or running the auto-boot command resp.
 | |
| 	  entering interactive mode.
 | |
| 
 | |
| 	  This feature is especially useful when "preboot" is automatically
 | |
| 	  generated or modified. For example, the boot code can modify the
 | |
| 	  "preboot" when a user holds down a certain combination of keys.
 | |
| 
 | |
| config PREBOOT
 | |
| 	string "preboot default value"
 | |
| 	depends on USE_PREBOOT && !USE_DEFAULT_ENV_FILE
 | |
| 	default "usb start" if USB_KEYBOARD
 | |
| 	default ""
 | |
| 	help
 | |
| 	  This is the default of "preboot" environment variable.
 | |
| 
 | |
| config PREBOOT_DEFINED
 | |
| 	bool
 | |
| 	default y if PREBOOT != ""
 | |
| 
 | |
| config DEFAULT_FDT_FILE
 | |
| 	string "Default fdt file"
 | |
| 	help
 | |
| 	  This option is used to set the default fdt file to boot OS.
 | |
| 
 | |
| config SAVE_PREV_BL_FDT_ADDR
 | |
| 	depends on ARM
 | |
| 	bool "Saves fdt address, passed by the previous bootloader, to env var"
 | |
| 	help
 | |
| 	  When u-boot is used as a chain-loaded bootloader (replacing OS kernel),
 | |
| 	  enable this option to save fdt address, passed by the
 | |
| 	  previous bootloader for future use.
 | |
| 	  Address is saved to `prevbl_fdt_addr` environment variable.
 | |
| 
 | |
| 	  If no fdt was provided by previous bootloader, no env variables
 | |
| 	  will be created.
 | |
| 
 | |
| config SAVE_PREV_BL_INITRAMFS_START_ADDR
 | |
| 	depends on ARM
 | |
| 	bool "Saves initramfs address, passed by the previous bootloader, to env var"
 | |
| 	help
 | |
| 	  When u-boot is used as a chain-loaded bootloader(replacing OS kernel),
 | |
| 	  enable this option to save initramfs address, passed by the
 | |
| 	  previous bootloader for future use.
 | |
| 	  Address is saved to `prevbl_initrd_start_addr` environment variable.
 | |
| 
 | |
| 	  If no initramfs was provided by previous bootloader, no env variables
 | |
| 	  will be created.
 | |
| 
 | |
| endmenu		# Booting
 |