This option cannot be enabled. It is used as dependency
for broken and incomplete features.
+config DEPRECATED
+ bool
+ help
+ This option cannot be enabled. It it used as a dependency for
+ code that relies on deprecated features that will be removed and
+ the conversion deadline has passed.
+
config LOCALVERSION
string "Local version - append to U-Boot release"
help
This option is enabled by default for U-Boot.
+config CC_COVERAGE
+ bool "Enable code coverage analysis"
+ depends on SANDBOX
+ help
+ Enabling this option will pass "--coverage" to gcc to compile
+ and link code instrumented for coverage analysis.
+
config DISTRO_DEFAULTS
bool "Select defaults suitable for booting general purpose Linux distributions"
- default y if ARCH_SUNXI || TEGRA
- default y if ARCH_LS2080A
- default y if ARCH_MESON
- default y if ARCH_ROCKCHIP
- default n
- imply USE_BOOTCOMMAND
- select CMD_BOOTZ if ARM && !ARM64
+ select AUTO_COMPLETE
+ select CMDLINE_EDITING
select CMD_BOOTI if ARM64
+ select CMD_BOOTZ if ARM && !ARM64
select CMD_DHCP if CMD_NET
- select CMD_PING if CMD_NET
- select CMD_PXE if NET && CMD_NET
+ select CMD_ENV_EXISTS
select CMD_EXT2
select CMD_EXT4
select CMD_FAT
select CMD_FS_GENERIC
- imply CMD_MII if NET
select CMD_PART if PARTITIONS
+ select CMD_PING if CMD_NET
+ select CMD_PXE if NET
+ select ENV_VARS_UBOOT_CONFIG
select HUSH_PARSER
- select BOOTP_BOOTPATH if NET && CMD_NET
- select BOOTP_DNS if NET && CMD_NET
- select BOOTP_GATEWAY if NET && CMD_NET
- select BOOTP_HOSTNAME if NET && CMD_NET
- select BOOTP_PXE if NET && CMD_NET
- select BOOTP_SUBNETMASK if NET && CMD_NET
- select CMDLINE_EDITING
- select AUTO_COMPLETE
- select SYS_LONGHELP
select SUPPORT_RAW_INITRD
- select ENV_VARS_UBOOT_CONFIG
+ select SYS_LONGHELP
+ imply CMD_MII if NET
+ imply USB_STORAGE
+ imply USE_BOOTCOMMAND
help
Select this to enable various options and commands which are suitable
for building u-boot for booting general purpose Linux distributions.
- CONFIG_SYS_VENDOR
- CONFIG_SYS_SOC
+config NR_DRAM_BANKS
+ int "Number of DRAM banks"
+ default 4
+ help
+ This defines the number of DRAM banks.
+
config SYS_BOOT_GET_CMDLINE
bool "Enable kernel command line setup"
help
config SYS_MALLOC_F
bool "Enable malloc() pool before relocation"
default y if DM
+
help
Before relocation, memory is very limited on many platforms. Still,
we can provide a small malloc() pool if needed. Driver model in
config SYS_MALLOC_F_LEN
hex "Size of malloc() pool before relocation"
depends on SYS_MALLOC_F
+ default 0x1000 if AM33XX
+ default 0x2800 if SANDBOX
+ default 0x2000 if (ARCH_IMX8 || ARCH_IMX8M || ARCH_MX7 || \
+ ARCH_MX7ULP || ARCH_MX6 || ARCH_MX5)
default 0x400
help
Before relocation, memory is very limited on many platforms. Still,
particular needs this to operate, so that it can allocate the
initial serial device and any others that are needed.
+config SYS_MALLOC_LEN
+ hex "Define memory for Dynamic allocation"
+ depends on ARCH_ZYNQ || ARCH_VERSAL || ARCH_STM32MP || ARCH_ROCKCHIP
+ default 0x2000000 if ARCH_ROCKCHIP
+ help
+ This defines memory to be allocated for Dynamic allocation
+ TODO: Use for other architectures
+
config SPL_SYS_MALLOC_F_LEN
- hex "Size of malloc() pool in SPL before relocation"
- depends on SYS_MALLOC_F
- default SYS_MALLOC_F_LEN
- help
- Before relocation, memory is very limited on many platforms. Still,
- we can provide a small malloc() pool if needed. Driver model in
- particular needs this to operate, so that it can allocate the
- initial serial device and any others that are needed.
+ hex "Size of malloc() pool in SPL before relocation"
+ depends on SYS_MALLOC_F && SPL
+ default 0x2800 if RCAR_GEN3
+ default SYS_MALLOC_F_LEN
+ help
+ Before relocation, memory is very limited on many platforms. Still,
+ we can provide a small malloc() pool if needed. Driver model in
+ particular needs this to operate, so that it can allocate the
+ initial serial device and any others that are needed.
config TPL_SYS_MALLOC_F_LEN
- hex "Size of malloc() pool in TPL before relocation"
- depends on SYS_MALLOC_F
- default SYS_MALLOC_F_LEN
- help
- Before relocation, memory is very limited on many platforms. Still,
- we can provide a small malloc() pool if needed. Driver model in
- particular needs this to operate, so that it can allocate the
- initial serial device and any others that are needed.
+ hex "Size of malloc() pool in TPL before relocation"
+ depends on SYS_MALLOC_F && TPL
+ default SYS_MALLOC_F_LEN
+ help
+ Before relocation, memory is very limited on many platforms. Still,
+ we can provide a small malloc() pool if needed. Driver model in
+ particular needs this to operate, so that it can allocate the
+ initial serial device and any others that are needed.
menuconfig EXPERT
bool "Configure standard U-Boot features (expert users)"
help
Say Y here to support 64bit physical memory address.
This can be used not only for 64bit SoCs, but also for
- large physical address extention on 32bit SoCs.
+ large physical address extension on 32bit SoCs.
config BUILD_ROM
bool "Build U-Boot as BIOS replacement"
which are not shipped in the U-Boot source tree.
Please, see doc/README.x86 for details.
+config SPL_IMAGE
+ string "SPL image used in the combined SPL+U-Boot image"
+ default "spl/boot.bin" if ARCH_AT91 && SPL_NAND_SUPPORT
+ default "spl/u-boot-spl.bin"
+ depends on SPL
+ help
+ Select the SPL build target that shall be generated by the SPL
+ build process (default spl/u-boot-spl.bin). This image will be
+ used to generate a combined image with SPL and main U-Boot
+ proper as one single image.
+
+config BUILD_TARGET
+ string "Build target special images"
+ default "u-boot-with-spl.sfp" if TARGET_SOCFPGA_ARRIA10
+ default "u-boot-with-spl.sfp" if TARGET_SOCFPGA_GEN5
+ default "u-boot-spl.kwb" if ARCH_MVEBU && SPL
+ default "u-boot-elf.srec" if RCAR_GEN3
+ default "u-boot.itb" if SPL_LOAD_FIT && (ROCKCHIP_RK3399 || \
+ ARCH_SUNXI || RISCV)
+ default "u-boot.kwb" if KIRKWOOD
+ default "u-boot-with-spl.bin" if ARCH_AT91 && SPL_NAND_SUPPORT
+ default "u-boot-with-spl.imx" if ARCH_MX6 && SPL
+ help
+ Some SoCs need special image types (e.g. U-Boot binary
+ with a special header) as build targets. By defining
+ CONFIG_BUILD_TARGET in the SoC / board header, this
+ special image will be automatically built upon calling
+ make / buildman.
+
+config SYS_CUSTOM_LDSCRIPT
+ bool "Use a custom location for the U-Boot linker script"
+ help
+ Normally when linking U-Boot we will look in the board directory,
+ the CPU directory and finally the "cpu" directory of the architecture
+ for the ile "u-boot.lds" and use that as our linker. However, in
+ some cases we need to provide a different linker script. To do so,
+ enable this option and then provide the location under
+ CONFIG_SYS_LDSCRIPT.
+
+config SYS_LDSCRIPT
+ depends on SYS_CUSTOM_LDSCRIPT
+ string "Custom ldscript location"
+ help
+ Path within the source tree to the linker script to use for the
+ main U-Boot binary.
+
endmenu # General setup
menu "Boot images"
if FIT
+config FIT_EXTERNAL_OFFSET
+ hex "FIT external data offset"
+ 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_ENABLE_SHA256_SUPPORT
bool "Support SHA256 checksum of FIT image contents"
- select SHA256
default y
+ select SHA256
help
Enable this to support SHA256 checksum of FIT image contents. A
SHA256 checksum is a 256-bit (32-byte) hash value used to check that
config FIT_SIGNATURE
bool "Enable signature verification of FIT uImages"
depends on DM
+ select HASH
select RSA
help
This option enables signature verification of FIT uImages,
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_IMAGE_FORMAT_LEGACY.
+ 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_ENABLE_RSASSA_PSS_SUPPORT
+ bool "Support rsassa-pss signature scheme of FIT image contents"
+ depends on FIT_SIGNATURE
+ default n
+ help
+ Enable this to support the pss padding algorithm as described
+ in the rfc8017 (https://tools.ietf.org/html/rfc8017).
config FIT_VERBOSE
bool "Show verbose messages when FIT images fail"
depends on SPL
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_SIGNATURE
bool "Enable signature verification of FIT firmware within SPL"
depends on SPL_DM
select SPL_RSA
config SPL_LOAD_FIT
- bool "Enable SPL loading U-Boot as a FIT"
+ bool "Enable SPL loading U-Boot as a FIT (basic fitImage features)"
+ 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_LOAD_FIT_FULL
+ bool "Enable SPL loading U-Boot as a FIT (full fitImage features)"
select SPL_FIT
help
Normally with the SPL framework a legacy image is generated as part
string ".its file generator script for U-Boot FIT image"
depends on SPL_FIT
default "board/sunxi/mksunxi_fit_atf.sh" if SPL_LOAD_FIT && ARCH_SUNXI
+ default "arch/arm/mach-rockchip/make_fit_atf.py" if SPL_LOAD_FIT && ARCH_ROCKCHIP
+ default "arch/riscv/lib/mkimage_fit_opensbi.sh" if SPL_LOAD_FIT && RISCV
help
Specifies a (platform specific) script file to generate the FIT
source file used to build the U-Boot FIT image file. This gets
endif # FIT
+config LEGACY_IMAGE_FORMAT
+ bool "Enable support for the legacy image format"
+ default y if !FIT_SIGNATURE
+ 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 OF_BOARD_SETUP
bool "Set up board-specific details in device tree before boot"
depends on OF_LIBFDT
config SYS_TEXT_BASE
depends on !NIOS2 && !XTENSA
depends on !EFI_APP
- default 0x80800000 if ARCH_OMAP2PLUS
+ default 0x80800000 if ARCH_OMAP2PLUS || ARCH_K3
default 0x4a000000 if ARCH_SUNXI && !MACH_SUN9I && !MACH_SUN8I_V3S
default 0x2a000000 if ARCH_SUNXI && MACH_SUN9I
default 0x42e00000 if ARCH_SUNXI && MACH_SUN8I_V3S
config SYS_CLK_FREQ
- depends on ARC || ARCH_SUNXI
+ depends on ARC || ARCH_SUNXI || MPC83xx
int "CPU clock frequency"
help
TODO: Move CONFIG_SYS_CLK_FREQ for all the architecture