Merge tag 'efi-2020-07-rc6' of https://gitlab.denx.de/u-boot/custodians/u-boot-efi
[oweals/u-boot.git] / Kconfig
diff --git a/Kconfig b/Kconfig
index 66b059f749a7eeb2dfbd2f6413477b4298444a11..8f3fba085a71b075966769d07d84e47a70cb9016 100644 (file)
--- a/Kconfig
+++ b/Kconfig
@@ -3,11 +3,7 @@
 # see the file Documentation/kbuild/kconfig-language.txt in the
 # Linux kernel source tree.
 #
-mainmenu "U-Boot $UBOOTVERSION Configuration"
-
-config UBOOTVERSION
-       string
-       option env="UBOOTVERSION"
+mainmenu "U-Boot $(UBOOTVERSION) Configuration"
 
 # Allow defaults in arch-specific code to override any given here
 source "arch/Kconfig"
@@ -88,6 +84,7 @@ config DISTRO_DEFAULTS
        select CMD_PART if PARTITIONS
        select CMD_PING if CMD_NET
        select CMD_PXE if NET
+       select CMD_SYSBOOT
        select ENV_VARS_UBOOT_CONFIG
        select HUSH_PARSER
        select SUPPORT_RAW_INITRD
@@ -114,6 +111,7 @@ config ENV_VARS_UBOOT_CONFIG
 
 config NR_DRAM_BANKS
        int "Number of DRAM banks"
+       default 1 if ARCH_SUNXI || ARCH_OWL
        default 4
        help
          This defines the number of DRAM banks.
@@ -146,7 +144,9 @@ config SYS_MALLOC_F_LEN
        default 0x1000 if AM33XX
        default 0x2800 if SANDBOX
        default 0x2000 if (ARCH_IMX8 || ARCH_IMX8M || ARCH_MX7 || \
-                          ARCH_MX7ULP || ARCH_MX6 || ARCH_MX5)
+                          ARCH_MX7ULP || ARCH_MX6 || ARCH_MX5 || \
+                          ARCH_LS1012A || ARCH_LS1021A || ARCH_LS1043A || \
+                          ARCH_LS1046A || ARCH_QEMU)
        default 0x400
        help
          Before relocation, memory is very limited on many platforms. Still,
@@ -209,6 +209,20 @@ if EXPERT
          When disabling this, please check if malloc calls, maybe
          should be replaced by calloc - if one expects zeroed memory.
 
+config SYS_MALLOC_DEFAULT_TO_INIT
+       bool "Default malloc to init while reserving the memory for it"
+       default n
+       help
+         It may happen that one needs to move the dynamic allocation
+         from one to another memory range, eg. when moving the malloc
+         from the limited static to a potentially large dynamic (DDR)
+         memory.
+
+         If so then on top of setting the updated memory aside one
+         needs to bring the malloc init.
+
+         If such a scenario is sought choose yes.
+
 config TOOLS_DEBUG
        bool "Enable debug information for tools"
        help
@@ -233,7 +247,7 @@ config BUILD_ROM
          This option allows to build a ROM version of U-Boot.
          The build process generally requires several binary blobs
          which are not shipped in the U-Boot source tree.
-         Please, see doc/README.x86 for details.
+         Please, see doc/arch/x86.rst for details.
 
 config SPL_IMAGE
        string "SPL image used in the combined SPL+U-Boot image"
@@ -252,9 +266,9 @@ config BUILD_TARGET
        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.itb" if SPL_LOAD_FIT && (ARCH_ROCKCHIP || \
+                               ARCH_SUNXI || RISCV || ARCH_ZYNQMP)
+       default "u-boot.kwb" if ARCH_KIRKWOOD
        default "u-boot-with-spl.bin" if ARCH_AT91 && SPL_NAND_SUPPORT
        default "u-boot-with-spl.imx" if ARCH_MX6 && SPL
        help
@@ -281,6 +295,25 @@ config SYS_LDSCRIPT
          Path within the source tree to the linker script to use for the
          main U-Boot binary.
 
+config ERR_PTR_OFFSET
+       hex
+       default 0x0
+       help
+         Some U-Boot pointers have redundant information, so we can use a
+         scheme where we can return either an error code or a pointer with the
+         same return value. The default implementation just casts the pointer
+         to a number, however, this may fail on platforms where the end of the
+         address range is used for valid pointers (e.g. 0xffffff00 is a valid
+         heap pointer in socfpga SPL).
+         For such platforms, this value provides an upper range of those error
+         pointer values - up to 'MAX_ERRNO' bytes below this value must be
+         unused/invalid addresses.
+
+config PLATFORM_ELFENTRY
+       string
+       default "__start" if MIPS
+       default "_start"
+
 endmenu                # General setup
 
 menu "Boot images"
@@ -337,6 +370,8 @@ config FIT_SIGNATURE
        depends on DM
        select HASH
        select RSA
+       select RSA_VERIFY
+       select IMAGE_SIGN_INFO
        help
          This option enables signature verification of FIT uImages,
          using a hash signed and verified using RSA. If
@@ -368,6 +403,14 @@ config FIT_ENABLE_RSASSA_PSS_SUPPORT
          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
+       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"
        help
@@ -417,6 +460,8 @@ config SPL_FIT_SIGNATURE
        depends on SPL_DM
        select SPL_FIT
        select SPL_RSA
+       select SPL_RSA_VERIFY
+       select SPL_IMAGE_SIGN_INFO
 
 config SPL_LOAD_FIT
        bool "Enable SPL loading U-Boot as a FIT (basic fitImage features)"
@@ -429,6 +474,24 @@ config SPL_LOAD_FIT
          particular it can handle selecting from multiple device tree
          and passing the correct one to U-Boot.
 
+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)"
        select SPL_FIT
@@ -467,6 +530,7 @@ config SPL_FIT_GENERATOR
        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/arm/mach-zynqmp/mkimage_fit_atf.sh" if SPL_LOAD_FIT && ARCH_ZYNQMP
        default "arch/riscv/lib/mkimage_fit_opensbi.sh" if SPL_LOAD_FIT && RISCV
        help
          Specifies a (platform specific) script file to generate the FIT
@@ -530,9 +594,14 @@ config SYS_EXTRA_OPTIONS
          configuration to Kconfig. Since this option will be removed sometime,
          new boards should not use this option.
 
-config SYS_TEXT_BASE
+config HAVE_SYS_TEXT_BASE
+       bool
        depends on !NIOS2 && !XTENSA
        depends on !EFI_APP
+       default y
+
+config SYS_TEXT_BASE
+       depends on HAVE_SYS_TEXT_BASE
        default 0x80800000 if ARCH_OMAP2PLUS || ARCH_K3
        default 0x4a000000 if ARCH_SUNXI && !MACH_SUN9I && !MACH_SUN8I_V3S
        default 0x2a000000 if ARCH_SUNXI && MACH_SUN9I
@@ -541,8 +610,6 @@ config SYS_TEXT_BASE
        help
          The address in memory that U-Boot will be running from, initially.
 
-
-
 config SYS_CLK_FREQ
        depends on ARC || ARCH_SUNXI || MPC83xx
        int "CPU clock frequency"