]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
efi_loader: use CONFIG_STACK_SIZE in the UEFI sub-system
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Wed, 29 Jul 2020 10:37:35 +0000 (12:37 +0200)
committerHeinrich Schuchardt <xypron.glpk@gmx.de>
Sat, 1 Aug 2020 09:58:23 +0000 (11:58 +0200)
The Kconfig symbol CONFIG_STACK_SIZE is used both by ARM and Microblaze
with the same meaning. Move it to menu 'General setup' so that we can use
it for all architectures.

Use the value of CONFIG_STACK_SIZE instead of a hard coded 16 MiB value for
reserving memory in the UEFI sub-system.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Kconfig
arch/arm/Kconfig
arch/microblaze/Kconfig
lib/efi_loader/efi_memory.c

diff --git a/Kconfig b/Kconfig
index 4462432956af66ba88f0b8e17f56ee00560099d3..1c408b6bec4fdb484bc0adc7e1cbb7ba8ef89a43 100644 (file)
--- a/Kconfig
+++ b/Kconfig
@@ -369,6 +369,16 @@ config PLATFORM_ELFENTRY
        default "__start" if MIPS
        default "_start"
 
+config STACK_SIZE
+       hex "Define max stack size that can be used by U-Boot"
+       default 0x4000000 if ARCH_VERSAL || ARCH_ZYNQMP
+       default 0x200000 if MICROBLAZE
+       default 0x1000000
+       help
+         Define Max stack size that can be used by U-Boot. This value is used
+         by the UEFI sub-system. On some boards initrd_high is calculated as
+         base stack pointer minus this stack size.
+
 endmenu                # General setup
 
 menu "Boot images"
index 3e11ddfa9b7c9a49f81f4d794c04c1bc4f8bbb3c..d3ac8e1f477e1223cb8cda0c227eb4159667c169 100644 (file)
@@ -503,23 +503,6 @@ config TPL_USE_ARCH_MEMSET
          Such an implementation may be faster under some conditions
          but may increase the binary size.
 
-config SET_STACK_SIZE
-       bool "Enable an option to set max stack size that can be used"
-       default y if ARCH_VERSAL || ARCH_ZYNQMP || ARCH_ZYNQ
-       help
-         This will enable an option to set max stack size that can be
-         used by U-Boot.
-
-config STACK_SIZE
-       hex "Define max stack size that can be used by U-Boot"
-       depends on SET_STACK_SIZE
-       default 0x4000000 if ARCH_VERSAL || ARCH_ZYNQMP
-       default 0x1000000 if ARCH_ZYNQ
-       help
-         Define Max stack size that can be used by U-Boot so that the
-         initrd_high will be calculated as base stack pointer minus this
-         stack size.
-
 config ARM64_SUPPORT_AARCH32
        bool "ARM64 system support AArch32 execution state"
        depends on ARM64
index 2bd260e5d76e2d4b576767c7234ca478f8eb89af..ff6b3c7e3d6c7ec0a7fee8b97ae5f47917a85d4a 100644 (file)
@@ -20,14 +20,6 @@ config TARGET_MICROBLAZE_GENERIC
 
 endchoice
 
-config STACK_SIZE
-       hex "Define max stack size that can be used by u-boot"
-       default 0x200000
-       help
-         Defines Max stack size that can be used by u-boot so that the
-         initrd_high will be calculated as base stack pointer minus this
-         stack size.
-
 source "board/xilinx/microblaze-generic/Kconfig"
 
 endmenu
index 44b8a2e09f0a543ae112a131a797a4b14347ec74..7be756e370d3fad51293874dc44c2e5f754211c5 100644 (file)
@@ -762,7 +762,7 @@ static void add_u_boot_and_runtime(void)
        unsigned long runtime_start, runtime_end, runtime_pages;
        unsigned long runtime_mask = EFI_PAGE_MASK;
        unsigned long uboot_start, uboot_pages;
-       unsigned long uboot_stack_size = 16 * 1024 * 1024;
+       unsigned long uboot_stack_size = CONFIG_STACK_SIZE;
 
        /* Add U-Boot */
        uboot_start = ((uintptr_t)map_sysmem(gd->start_addr_sp, 0) -