summaryrefslogtreecommitdiff
path: root/Kconfig
AgeCommit message (Collapse)Author
9 daysarm: relocate: Make data-only relocation mode non-user-configurableMarek Vasut
The data only relocation mode should be selected on per-SoC or per-core basis, make these options non-user-configurable. The SoC or cores which require this have to select this option using "default" keyword. Fixes: d9eee3d17882 ("arm: relocate: Introduce data-only relocation mode") Signed-off-by: Marek Vasut <[email protected]>
11 daysnet: Rework dependencies around NET/NET_LWIP and NETDEVICESTom Rini
Functionally, both networking stacks require DM_ETH. This is because they both also require some networking devices to be enabled. Express this more correctly by having both NET and NET_LWIP select NETDEVICES. In turn NETDEVICES no longer depends on NET or NET_LWIP as it's not prompted anymore. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Jerome Forissier <[email protected]>
2026-03-27arm: relocate: Introduce data-only relocation modeMarek Vasut
Introduce new mode of relocation which relocates only data, not code. This is mainly meant to relocate data to read-write portion of the RAM, while the code remains in read-only portion of the RAM from which it is allowed to execute. This split configuration is present on various secure cores. The result of the relocation is U-Boot running at its original address, data relocated to the end of DRAM, but with added read-write area offset. The U-Boot binary area is not reserved from the end of the DRAM in this relocation mode, because U-Boot itself is not relocated. Signed-off-by: Marek Vasut <[email protected]>
2026-03-14efi_loader: require at least 128 KiB of stack spaceHeinrich Schuchardt
The UEFI specification requires at least 128 KiB stack space. Consider this value as a prerequisite for CONFIG_EFI_LOADER. Mention the requirement in the CONFIG_STACK_SPACE description and decribe that the UEFI sub-system uses CONFIG_STACK_SPACE when defining the memory map. Reviewed-by: Ilias Apalodimas <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2026-02-14Replace TARGET namespace and cleanup properlyTien Fong Chee
TARGET namespace is for machines / boards / what-have-you that building U-Boot for. Simply replace from TARGET to ARCH make things more clear and proper for ALL SoCFPGA. Signed-off-by: Brian Sune <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]> # Conflicts: # drivers/ddr/altera/Makefile
2026-01-09x86: Increase SYS_MALLOC_F_LEN to 0x1000Tom Rini
A few x86 platforms use a SYS_MALLOC_F_LEN value of 0x1000 or higher. With the impending move to having DEVRES enabled by default, we will need a little more room here. Raise the default value. Reviewed-by: Bin Meng <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-12-24Kconfig: put TPL_OPTIMIZE_INLINING next to SPL_OPTIMIZE_INLININGQuentin Schulz
Right now LTO is in-between both when using menuconfig. Signed-off-by: Quentin Schulz <[email protected]> Reviewed-by: Anshul Dalal <[email protected]> Reviewed-by: Kory Maincent <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-10-13global: Make REMAKE_ELF depend on !COMPILE_TESTTom Rini
The REMAKE_ELF flag is something that should be selected by the platforms which need it, and not prompted for. Start by making this depend on !COMPILE_TEST. Signed-off-by: Tom Rini <[email protected]>
2025-10-08Kconfig: Make further use of testing for !COMPILE_TESTTom Rini
We have a large number of library symbols that should not be prompted for by the user really but rather selected by the platform (or SoC) as needed. To start with however, make these depend on !COMPILE_TEST. Signed-off-by: Tom Rini <[email protected]>
2025-08-04Kconfig: typo restictHeinrich Schuchardt
%s/restict/restrict/ SPL and TPL have separate options (plural). Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2025-07-11Kconfig: Test for !COMPILE_TEST in some locationsTom Rini
We have a few options that we cannot enable in a "allyesconfig" type build because we cannot use zero as a default value. - The logic around HAS_BOARD_SIZE_LIMIT assumes that if we have set this then we compare with it. Similarly, we need to set SPL_NO_BSS_LIMIT as the default there. - Both SYS_CUSTOM_LDSCRIPT and ENV_USE_DEFAULT_ENV_TEXT_FILE then prompt for a file name to use. - The SYS_I2C_SOFT driver is a legacy driver which requires a lot of configuration within the board config. file instead, so disable it. Signed-off-by: Tom Rini <[email protected]>
2025-07-11Kconfig: Add COMPILE_TEST optionTom Rini
Take the COMPILE_TEST option from the Linux Kernel v6.15 and since the wording there is OK for us too, use it verbatim. Also update the default for WERROR to be COMPILE_TEST which again matches the Linux Kernel. This is the first big step needed to allow for "allyesconfig" to be possible as it then lets us then disable things that aren't valid for a compile only test. Signed-off-by: Tom Rini <[email protected]>
2025-06-26Kconfig: Add default malloc size of K3 ARCHUdit Kumar
Many boards of K3 overwrites default malloc size, instead of doing at almost each board level, Add default size at Kconfig. Signed-off-by: Udit Kumar <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2025-04-15common: Add CONFIG_SKIP_RELOCATEJesse Taube
Add a check for CONFIG_SKIP_RELOCATE in reserve_uboot to skip the relocation of the U-Boot image. CONFIG_SKIP_RELOCATE skips relocation of U-Boot to the end of RAM allowing for systems that have extremely limited RAM to run U-Boot. Signed-off-by: Jesse Taube <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Caleb Connolly <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2025-04-01Kconfig: Fix "warning: style: quotes recommended" warningsTom Rini
We have three warnings about needing to use quotes around some strings in Kconfig files today. In two of these cases we can just add the missing strings. In the case of INTEL_PINCTRL_PADCFG_PADTOL the symbol is never referenced and should be dropped. Signed-off-by: Tom Rini <[email protected]>
2025-03-13Kconfig: Introduce CONFIG_WERRORPaul Barker
Add a new config option under "General setup" to enable the -Werror flag when building U-Boot. This is useful during development to help catch mistakes. This is based on a similar config option added to the Linux kernel by Linus in 2021 - see Linux commit 3fe617ccafd6 ("Enable '-Werror' by default for all kernel builds"). The modification of KBUILD_CFLAGS is done in Makefile.extrawarn, matching where it was moved in the kernel by Linux commit e88ca24319e4 ("kbuild: consolidate warning flags in scripts/Makefile.extrawarn"). Signed-off-by: Paul Barker <[email protected]>
2024-12-25Merge tag 'v2025.01-rc5' into nextTom Rini
Prepare v2025.01-rc5
2024-12-18Kconfig: Set STACK_SIZE to 16KB for STM32 MCUsPatrice Chotard
Since commit 6534d26ee9a5 ("lmb: do away with arch_lmb_reserve()"), STM32F746-disco hangs when loading device tree just before starting kernel: Retrieving file: /stm32f746-disco.dtb Kernel image @ 0xc0008000 [ 0x000000 - 0x19ae00 ] Flattened Device Tree blob at c0408000 Booting using the fdt blob at 0xc0408000 Working FDT set to c0408000 Loading Device Tree to c05f8000, end c05ff71c ... Adjust STACK_SIZE to 16KB for STM32 MCUs (F4/F7 and H7) boards to fix kernel boot process as some of these boards embeds a limited amount of memory. Fixes: 6534d26ee9a5 ("lmb: do away with arch_lmb_reserve()") Signed-off-by: Patrice Chotard <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2024-11-25Merge tag 'v2025.01-rc3' into nextTom Rini
Prepare v2025.01-rc3
2024-11-18Kconfig: describe NET, NO_NET, LWIP_DEBUG and LWIP_ASSERTJerome Forissier
Some Kconfig symbols introduced in commit 8cb330355bd5 ("net: introduce alternative implementation as net/lwip/") need a full description. The NET symbol needs one, too. Signed-off-by: Jerome Forissier <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-11-16global: Remove bi_sramstart/bi_sramsizeTom Rini
These fields are currently set on exactly two platforms today, and used by only one of them. Update pic32mzdask to use CFG_SYS_SRAM* in the one location it needs it and otherwise drop this field from the bd_info struct. Signed-off-by: Tom Rini <[email protected]>
2024-10-29Kconfig: Remove TARGET_TRICORDER referencesTom Rini
These were missed when removing the rest of the tricorder platform. Fixes: d137604c20a4 ("arm: Remove tricorder board") Signed-off-by: Tom Rini <[email protected]>
2024-10-25ARM: imx: soc: Move default TEXT_BASE for i.MX7Marek Vasut
Move i.MX7 TEXT_BASE/SPL_TEXT_BASE to Kconfig and common/spl/Kconfig which is the best practice. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Peng Fan <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2024-10-25ARM: imx: soc: Select default TEXT_BASE for i.MX6Marek Vasut
Select default U-Boot and SPL text base for the i.MX6 SoC. The U-Boot and SPL text base is picked as the one used by various i.MX6 boards. Update all the boards. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Peng Fan <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2024-10-16net: introduce alternative implementation as net/lwip/Jerome Forissier
Prepare the introduction of the lwIP (lightweight IP) TCP/IP stack by adding a new net/lwip/ directory and the NET_LWIP symbol. Network support is either NO_NET, NET (legacy stack) or NET_LWIP. Subsequent commits will introduce the lwIP code, re-work the NETDEVICE integration and port some of the NET commands and features to lwIP. SPL_NET cannot be enabled when NET_LWIP=y. SPL_NET pulls some symbols that are part of NET (such as arp_init(), arp_timeout_check(), arp_receive(), net_arp_wait_packet_ip()). lwIP support in SPL may be added later. Similarly, DFU_TFTP and FASTBOOT are not compatible with NET_LWIP because of dependencies on net_loop(), tftp_timeout_ms, tftp_timeout_count_max and other NET things. Let's add a dependency on !NET_LWIP for now. SANDBOX can select NET_LWIP but doing so will currently disable the eth dm tests as well as the wget tests which have strong dependencies on the NET code. Other adjustments to Kconfig files are made to fix "unmet direct dependencies detected" for USB_FUNCTION_SDP and CMD_FASTBOOT when the default networking stack is set to NET_LWIP ("default NET_LWIP" instead of "default NET" in Kconfig). The networking stack is now a choice between NO_NET, NET and NET_LWIP. Therefore '# CONFIG_NET is not set' should be 'CONFIG_NO_NET=y'. Adjust the defconfigs accordingly. Signed-off-by: Jerome Forissier <[email protected]> Acked-by: Ilias Apalodimas <[email protected]>
2024-10-03Merge patch series "arm: Initial support for Analog Devices SC5xx boards"Tom Rini
Oliver Gaskell <[email protected]> says: ADSP-SC5xx is a series of ARM-based DSPs. This comprises the armv7 based SC57x, SC58x and SC594 series, and the armv8 based SC598. This patch series includes configurations, init code, and minimal DTs to enable Analog Devices' evaluation boards for these SoCs to boot through SPL and into U-Boot Proper, as well as devicetree schemas for the added DTs. This patch series depends on ("arm: Add Analog Devices SC5xx Machine Type") (https://lists.denx.de/pipermail/u-boot/2024-April/552043.html)
2024-10-03arm: SC573-EZKIT initial supportOliver Gaskell
Adds support for Analog Devices' SC573-EZKIT board. Includes: - SoC specific configs in mach-sc5xx/Kconfig - Memory Map for SPL - Necessary board-specific init functions - Board-specific Kconfig and environment in board/adi/ - Memory configuration Co-developed-by: Greg Malysa <[email protected]> Signed-off-by: Greg Malysa <[email protected]> Co-developed-by: Nathan Barrett-Morrison <[email protected]> Signed-off-by: Nathan Barrett-Morrison <[email protected]> Signed-off-by: Oliver Gaskell <[email protected]>
2024-10-03arm: SC589-MINI initial supportOliver Gaskell
Adds support for Analog Devices' SC589-MINI board. Includes: - Board specific configs in mach-sc5xx/Kconfig - Board-specific Kconfig and environment in board/adi/ Signed-off-by: Oliver Gaskell <[email protected]>
2024-10-03arm: SC589-EZKIT initial supportOliver Gaskell
Adds support for Analog Devices' SC589-EZKIT board. Includes: - Board specific configs in mach-sc5xx/Kconfig - Board-specific Kconfig and environment in board/adi/ - Memory configuration Signed-off-by: Oliver Gaskell <[email protected]>
2024-10-03arm: SC584-EZKIT initial supportOliver Gaskell
Adds support for Analog Devices' SC584-EZKIT board. Includes: - SoC specific configs in mach-sc5xx/Kconfig - Memory Map for SPL - SPL config options in common/spl/Kconfig - Necessary board-specific init functions - Board-specific Kconfig and environment in board/adi/ - Memory configuration Co-developed-by: Greg Malysa <[email protected]> Signed-off-by: Greg Malysa <[email protected]> Co-developed-by: Trevor Woerner <[email protected]> Signed-off-by: Trevor Woerner <[email protected]> Co-developed-by: Nathan Barrett-Morrison <[email protected]> Signed-off-by: Nathan Barrett-Morrison <[email protected]> Signed-off-by: Oliver Gaskell <[email protected]>
2024-10-03arm: SC594-SOM-EZKIT initial supportOliver Gaskell
Adds support for Analog Devices' SC594-SOM-EZKIT board. Includes: - SoC specific configs in mach-sc5xx/Kconfig - Memory Map for SPL - SPL config options in common/spl/Kconfig - Necessary board-specific init functions - Board-specific Kconfig and environment in board/adi/ - Memory configuration Co-developed-by: Greg Malysa <[email protected]> Signed-off-by: Greg Malysa <[email protected]> Co-developed-by: Trevor Woerner <[email protected]> Signed-off-by: Trevor Woerner <[email protected]> Co-developed-by: Nathan Barrett-Morrison <[email protected]> Signed-off-by: Nathan Barrett-Morrison <[email protected]> Co-developed-by: Ian Roberts <[email protected]> Signed-off-by: Ian Roberts <[email protected]> Signed-off-by: Oliver Gaskell <[email protected]>
2024-10-03arm: SC598-SOM-EZKIT initial supportOliver Gaskell
Adds support for Analog Devices' SC598-SOM-EZKIT board. Includes: - CONFIG options common to all SC5xx SoCs - SoC specific configs in mach-sc5xx/Kconfig - SPL config options in common/spl/Kconfig - Memory Map for SPL - Necessary board-specific init functions - Board-specific Kconfig and environment in board/adi/ - Memory configuration Co-developed-by: Greg Malysa <[email protected]> Signed-off-by: Greg Malysa <[email protected]> Co-developed-by: Nathan Barrett-Morrison <[email protected]> Signed-off-by: Nathan Barrett-Morrison <[email protected]> Co-developed-by: Trevor Woerner <[email protected]> Signed-off-by: Trevor Woerner <[email protected]> Signed-off-by: Oliver Gaskell <[email protected]>
2024-08-27tools/scripts/Kconfig: Update references from kconfig-language.txt to rstHiago De Franco
The Linux kernel documentation has transitioned from using kconfig-language.txt to kconfig-language.rst. Therefore update all occurrences of kconfig-language.txt. Signed-off-by: Hiago De Franco <[email protected]>
2024-08-06omap3: Define DRAM banks number in Kconfig instead of defconfigsPaul Kocialkowski
The number of DRAM banks was defined to the same value in each OMAP3 board defconfig, which is expected and hardcoded in the code. Move the common definition to the Kconfig option declaration instead. Signed-off-by: Paul Kocialkowski <[email protected]> Reviewed-by: Tom Rini <[email protected]> Tested-by: Derald D. Woods <[email protected]>
2024-08-06omap3: Define maximum U-Boot size in Kconfig instead of defconfigsPaul Kocialkowski
The maximum U-Boot size was defined to the same value in each OMAP3 board defconfig. Move the common definition to the Kconfig option declaration instead. Signed-off-by: Paul Kocialkowski <[email protected]> Reviewed-by: Tom Rini <[email protected]> Tested-by: Derald D. Woods <[email protected]>
2024-08-06dra7xx: Define common init stack pointer address in KconfigPaul Kocialkowski
The init stack pointer was defined to the same value in each DRA7xx board defconfig. Move the common definition to the Kconfig option declaration instead. Signed-off-by: Paul Kocialkowski <[email protected]> Reviewed-by: Tom Rini <[email protected]> Tested-by: Derald D. Woods <[email protected]>
2024-08-06am43xx: Define common init stack pointer address in KconfigPaul Kocialkowski
The init stack pointer was defined to the same value in each AM43xx board defconfig. Move the common definition to the Kconfig option declaration instead. Signed-off-by: Paul Kocialkowski <[email protected]> Reviewed-by: Tom Rini <[email protected]> Tested-by: Derald D. Woods <[email protected]>
2024-08-06am33xx: Define common init stack pointer address in KconfigPaul Kocialkowski
The init stack pointer was defined to the same value in each AM33xx board defconfig. Move the common definition to the Kconfig option declaration instead. Signed-off-by: Paul Kocialkowski <[email protected]> Reviewed-by: Tom Rini <[email protected]> Tested-by: Derald D. Woods <[email protected]>
2024-08-06omap3: Define common init stack pointer address in KconfigPaul Kocialkowski
The init stack pointer was defined to the same value in each OMAP3 board defconfig. Move the common definition to the Kconfig option declaration instead. Signed-off-by: Paul Kocialkowski <[email protected]> Reviewed-by: Tom Rini <[email protected]> Tested-by: Derald D. Woods <[email protected]>
2024-04-10build: Revive and update LDR format supportGreg Malysa
LDR format files are used primarily by Analog Devices processors but may be of interest to other vendors. Previously support existed for this format as part of the U-Boot build, but it has been unmaintained and unused for a long time. In preparation for adding support for modern ADI processors that use LDR, modernize the LDR support: - Introduce CONFIG_LDR_CPU as the CPU string recognized by the LDR tool may not be the same as CONFIG_CPU - Add an SPL target that repackages u-boot-spl inside an LDR file An almost identical target for packaging u-boot into an LDR file already exists and did not need to be created. Co-developed-by: Nathan Barrett-Morrison <[email protected]> Signed-off-by: Nathan Barrett-Morrison <[email protected]> Signed-off-by: Ian Roberts <[email protected]> Signed-off-by: Greg Malysa <[email protected]>
2024-03-14rockchip: Use common bss and stack addresses on RK3308Jonas Karlman
Currently the following memory layout is typically used on RK3308: [ 0, 256K) - SPL binary [ 256K, 2M) - TF-A / reserved [ -X, 4M) - SPL pre-reloc stack (SPL_STACK) [ -8K, 4M) - pre-reloc malloc heap (SPL_SYS_MALLOC_F_LEN) [ 4M, +8K) - SPL bss (SPL_BSS_START_ADDR, SPL_BSS_MAX_SIZE) [ 6M, +X) - U-Boot proper binary (TEXT_BASE) [ -X, 8M) - U-Boot proper pre-reloc stack (CUSTOM_SYS_INIT_SP_ADDR) [ -8K, 8M) - pre-reloc malloc heap (SYS_MALLOC_F_LEN) [ -X, 12M) - SPL reloc stack (SPL_STACK_R_ADDR) [ 11M, 12M) - reloc malloc heap (SPL_STACK_R_MALLOC_SIMPLE_LEN) SPL can safely load U-Boot proper + FDT to [6M, 8M-8K) with this layout. Migrate to use common bss, stack and malloc heap size and addresses to remove this size limitation and extend the malloc heap size being used. Signed-off-by: Jonas Karlman <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2024-02-17ARM: renesas: Set R-Car Gen2 board size limit to 512 kiBMarek Vasut
The maximum size of u-boot.img on R-Car Gen2 is 0x80000 or 512 kiB, set the limit to avoid overflows as new functionality gets pulled in. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Paul Barker <[email protected]>
2023-11-17spl: fix TPL_SYS_MALLOC_F descriptionJohn Keeping
This config option enables the malloc() pool in TPL not the SPL. Fix the description to accurately reflect this. Fixes: fd8497dae54 (spl: Create proper symbols for enabling the malloc() pool) Signed-off-by: John Keeping <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-10-06doc: Clean up SYS_MALLOC_SIMPLESimon Glass
Move the useful help to Kconfig. Drop mention of CONFIG_SYS_MALLOC_SIMPLE since it doesn't exist. Correct a 'CONFIGSYS_MALLOC_F_LEN' typo Signed-off-by: Simon Glass <[email protected]>
2023-10-06spl: Use SYS_MALLOC_F instead of SYS_MALLOC_F_LENSimon Glass
Use the new SPL/TPL/VPL_SYS_MALLOC_F symbols to determine whether the malloc pool exists. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Sean Anderson <[email protected]>
2023-10-06spl: Create proper symbols for enabling the malloc() poolSimon Glass
For U-Boot proper we have CONFIG_SYS_MALLOC_F which indicates that a malloc() pool is available before relocation. For SPL we only have CONFIG_SPL_SYS_MALLOC_F_LEN which indicates the size of the pool. In various places we use CONFIG_SPL_SYS_MALLOC_F_LEN == 0 to indicate that there is no pool. This differing approach is confusing. Add a new CONFIG_SPL_SYS_MALLOC_F symbol for SPL (and similarly for TPL and VPL). Tidy up the Kconfig help for clarity. For now these symbols are not used. That is cleaned up in the following patches. Signed-off-by: Simon Glass <[email protected]>
2023-10-06spl: Use CONFIG_SPL... instead of CONFIG_..._SPL_...Simon Glass
We like to put the SPL first so it is clear that it relates to SPL. Rename various malloc-related options which have crept in, to stick to this convention. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Marcel Ziswiler <[email protected]> Reviewed-by: Martyn Welch <[email protected]> Reviewed-by: Svyatoslav Ryhel <[email protected]>
2023-10-02Merge branch 'next'Tom Rini
Signed-off-by: Tom Rini <[email protected]>
2023-09-30Convert CFG_SYS_UBOOT_START to KconfigJesse Taube
Commit 65cc0e2a65d2 ("global: Move remaining CONFIG_SYS_* to CFG_SYS_*") renamed CONFIG_SYS_UBOOT_START to CFG_SYS_UBOOT_START. Unfortunately, this meant that the value was no longer available to the Makefile. This caused imxrt to fail to boot. All the other boards that used this variable were unaffected because they were using the default value which is CONFIG_TEXT_BASE. This commit converts CFG_SYS_UBOOT_START to Kconfig and sets the default value to CONFIG_TEXT_BASE. Suggested-by: Marek Vasut <[email protected]> Suggested-by: Tom Rini <[email protected]> Signed-off-by: Jesse Taube <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-09-19Kconfig: Move TEXT_BASE et al under general setupSimon Glass
These don't relate to booting. Move them out of there and into the same place as the other related settings. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>