summaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)Author
7 daysPrepare v2026.07-rc2v2026.07-rc2Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2026-04-27Prepare v2026.07-rc1v2026.07-rc1Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2026-04-27Merge patch series "net: migrate NO_NET out of the networking stack choice"Tom Rini
Quentin Schulz <foss+uboot@0leil.net> says: This migrates the net options away from the main Kconfig to net/Kconfig, rename the current NET option to NET_LEGACY to really highlight what it is and hopefully encourage more people to use lwIP, add a new NET menuconfig (but keep NO_NET as an alias to NET=n for now) which then allows us to replace all the "if legacy_stack || lwip_stack" checks with "if net_support" which is easier to read and maintain. The only doubt I have is wrt SYS_RX_ETH_BUFFER which seems to be needed for now even when no network is configured? Likely due to include/net-common.h with PKTBUFSRX? No change in behavior is intended. Only change in defconfig including other defconfigs where NO_NET=y or NET is not set, in which case NO_NET is not set or NET=y should be set in the top defconfig. Similar change required for config fragments. See commit log in patch adding NET menuconfig for details. This was tested based on 70fd0c3bb7c2 ("x86: there is no CONFIG_UBOOT_ROMSIZE_KB_12288"), from within the GitLab CI container trini/u-boot-gitlab-ci-runner:noble-20251013-23Jan2026 and set up similarly as in "build all platforms in a single job" GitLab CI job. #!/usr/bin/env bash set -o pipefail set -eux ARGS="-BvelPEWM --reproducible-builds --step 0" ./tools/buildman/buildman -o ${O} --force-build $ARGS -CE $* ./tools/buildman/buildman -o ${O} $ARGS -Ssd $* O=../build/u-boot/ ../u-boot.sh -b master^..b4/net-kconfig |& tee ../log.txt I can't really decipher the log.txt, but there's no line starting with + which would be an error according to tools/buildman/builder.py help text. Additionally, because I started the script with set -e set and because buildman has an exit code != 0 when it fails to build a board, and I have the summary printed (which is the second buildman call), I believe it means all builds passed. The summary is the following: aarch64: (for 537/537 boards) all +0.0 rodata +0.0 uniphier_v8 : all +1 rodata +1 u-boot: add: 0/0, grow: 1/0 bytes: 1/0 (1) function old new delta data_gz 10640 10641 +1 arm: (for 733/733 boards) all -0.0 rodata -0.0 uniphier_v7 : all -1 rodata -1 u-boot: add: 0/0, grow: 0/-1 bytes: 0/-1 (-1) function old new delta data_gz 11919 11918 -1 opos6uldev : all -3 rodata -3 u-boot: add: 0/0, grow: 0/-1 bytes: 0/-3 (-3) function old new delta data_gz 18778 18775 -3 uniphier_ld4_sld8: all -3 rodata -3 u-boot: add: 0/0, grow: 0/-1 bytes: 0/-3 (-3) function old new delta data_gz 11276 11273 -3 stemmy : all -20 rodata -20 u-boot: add: 0/0, grow: 0/-1 bytes: 0/-20 (-20) function old new delta data_gz 15783 15763 -20 As far as I could tell this data_gz is an automatically generated array when CONFIG_CMD_CONFIG is enabled. It is the compressed .config stored in binary form. Because I'm changing the name of symbols, replacing a menu with a menuconfig, additional text makes it to .config and the "# Networking" section in .config disappears. Here is the diff for the 5 defconfigs listed above, generated with: for f in build/*-m; do diff --unified=0 $f/.config $(dirname $f)/$(basename -a -s '-m' $f)/.config done (-m is the build directory for master, and without the suffix, it's the top commit of this series) """ --- build/opos6uldev-m/.config 2026-04-20 10:53:49.804528526 +0200 +++ build/opos6uldev/.config 2026-04-20 11:03:37.430242767 +0200 @@ -970,4 +969,0 @@ - -# -# Networking -# @@ -975,0 +972 @@ +CONFIG_NET_LEGACY=y --- build/stemmy-m/.config 2026-04-20 11:01:33.653698123 +0200 +++ build/stemmy/.config 2026-04-20 11:04:53.452577311 +0200 @@ -733,4 +732,0 @@ - -# -# Networking -# @@ -738,2 +733,0 @@ -# CONFIG_NET is not set -# CONFIG_NET_LWIP is not set --- build/uniphier_ld4_sld8-m/.config 2026-04-20 11:00:41.605469071 +0200 +++ build/uniphier_ld4_sld8/.config 2026-04-20 11:04:22.226439899 +0200 @@ -997,4 +996,0 @@ - -# -# Networking -# @@ -1002,0 +999 @@ +CONFIG_NET_LEGACY=y --- build/uniphier_v7-m/.config 2026-04-20 10:53:04.019307319 +0200 +++ build/uniphier_v7/.config 2026-04-20 11:03:01.688085486 +0200 @@ -1004,4 +1003,0 @@ - -# -# Networking -# @@ -1009,0 +1006 @@ +CONFIG_NET_LEGACY=y --- build/uniphier_v8-m/.config 2026-04-20 10:43:05.614441175 +0200 +++ build/uniphier_v8/.config 2026-04-20 10:41:03.214852130 +0200 @@ -875,4 +874,0 @@ - -# -# Networking -# @@ -880,0 +877 @@ +CONFIG_NET_LEGACY=y """ This is fine: - Networking menu doesn't exist anymore so "#\n# Networking\n#\n" won't be in .config anymore. - opos6uldev, uniphier_ld4_sld8, uniphier_v7 and uniphier_v8 all have (old) CONFIG_NET enabled, (new) CONFIG_NET will still be set but CONFIG_NET_LEGACY also needs to be defined now to reflect the stack choice (even if default), - stemmy has CONFIG_NO_NET set, which means CONFIG_NET and CONFIG_NET_LWIP are not reachable anymore hence why they don't need to be part of .config, GitLab CI was run on this series (well, not exactly, but it's only changes to the git logs that were made): https://source.denx.de/u-boot/contributors/qschulz/u-boot/-/pipelines/29849 It passes. Link: https://lore.kernel.org/r/20260420-net-kconfig-v1-0-9900002d8e72@cherry.de
2026-04-27simplify NET_LEGACY || NET_LWIP condition with NET conditionQuentin Schulz
Since the move to make NET a menuconfig and NO_NET a synonym of NET=n, when NET is enabled, NET_LEGACY || NET_LWIP is necessarily true, so let's simplify the various checks across the codebase. SPL_NET_LWIP doesn't exist but SPL_NET_LEGACY is an alias for SPL_NET so the proper symbol is still defined in SPL whenever needed. Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Peter Robinson <pbrobinson@gmail.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2026-04-27rename NET to NET_LEGACYQuentin Schulz
Highlight that NET really is the legacy networking stack by renaming the option to NET_LEGACY. This requires us to add an SPL_NET_LEGACY alias to SPL_NET as otherwise CONFIG_IS_ENABLED(NET_LEGACY) will not work for SPL. The "depends on !NET_LWIP" for SPL_NET clearly highlights that it is using the legacy networking app so this seems fine to do. This also has the benefit of removing potential confusion on NET being a specific networking stack instead of "any" network stack. Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Peter Robinson <pbrobinson@gmail.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2026-04-24Makefile: fix host CPP pollution in cmd_gen_envpLevi Shafter
Commit 2956a84ba701 ("Makefile: don't use CFLAGS for environment text file") switched cmd_gen_envp to use $(cpp_flags) so that KCPPFLAGS would be honored when preprocessing the environment text file. However, cpp_flags also includes $(PLATFORM_CPPFLAGS), which carries architecture-specific flags such as -march=armv8-a+crc set by arch/arm/Makefile for CONFIG_ARM64_CRC32=y targets. These flags are appropriate for cross-compiled object files but cause the host CPP invocation to fail on x86 build machines: cc1: error: bad value ('armv8-a+crc') for '-march=' switch KBUILD_CPPFLAGS already accumulates the user-supplied KCPPFLAGS via "KBUILD_CPPFLAGS += $(KCPPFLAGS)", providing the behaviour 2956a84 intended without pulling in target architecture flags. Use it directly. Fixes: 2956a84ba701 ("Makefile: don't use CFLAGS for environment text file") Signed-off-by: Levi Shafter <levi.shafter@elder-tomes.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2026-04-13arm: Add ARMv8-M aarch32 supportMarek Vasut
Add configuration for ARMv8-M aarch32 core, which are currently Cortex-M23/M33 cores. These cores are treated similar to ARMv7-M cores, except the code has to be compiled with matching compiler -march=armv8-m.main flag . These cores have no MMU, they have MPU, which is currently not configured. Unlike ARMv7-M, these cores have 512 interrupt vectors. While the SYS_ARM_ARCH should be set to 8, it is set to 7 because all of the initialization code is built from arch/arm/cpu/armv7m and not armv8. Furthermore, CONFIG_ARM64 must be disabled, although DTs for devices using these cores do come from arch/arm64/boot/dts. To avoid excess duplication in Makefiles, introduce one new Kconfig symbol, CPU_V7M_V8M. The CPU_V7M_V8M cover both ARMv7-M and ARMv8-M cores. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Acked-by: Udit Kumar <u-kumar1@ti.com>
2026-04-06Merge branch 'next'Tom Rini
2026-04-06Prepare v2026.04v2026.04Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2026-03-27doc: Use sys.path.append for pytests being foundTom Rini
Rather than having our "docs" build tagets modify PTYHONPATH, have doc/conf.py append the required paths at runtime instead. This will ensure that our builds from readthedocs will also find all of the required files. Signed-off-by: Tom Rini <trini@konsulko.com>
2026-03-23Prepare v2026.04-rc5v2026.04-rc5Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2026-03-16kbuild: strip sub_make_done from test-script environmentSimon Glass
The exported sub_make_done variable leaks into the environment of all child processes. When make targets like tcheck spawn independent make-invocations with O=, those child-makes inherit sub_make_done=1, skip the KBUILD_OUTPUT setup and try to build in the source tree. A global 'unexport sub_make_done' cannot be used because the build system itself re-invokes the top-level Makefile for syncconfig (via '$(MAKE) -f $(srctree)/Makefile syncconfig'). Without sub_make_done, that child make re-enters the KBUILD_OUTPUT block and recomputes abs_objtree. With a relative O= path this resolves to a nested directory (e.g. build/build/) where .config does not exist. Instead, use 'env -u sub_make_done' in the test-target recipes so only the test scripts see a clean environment. This allows their child make invocations to process O= correctly without affecting internal kbuild recursion. This is not strictly a bugfix, but compare with: commit 27529f1cb02d ("kbuild: skip parsing pre sub-make code for recursion") Signed-off-by: Simon Glass <sjg@chromium.org>
2026-03-13spl: Remake SPL elf from binMichal Simek
On Xilinx MB-V there is a need to use ELF file for SPL which is placed in BRAM (Block RAM) because tools for placing code to bitstream requires to use ELF. That's why introduce SPL_REMAKE_ELF similar to REMAKE_ELF option as was originally done by commit f4dc714aaa2d ("arm64: Turn u-boot.bin back into an ELF file after relocate-rela"). There is already generic and simple linker script (arch/u-boot-elf.lds) which can be also used without any modification. Signed-off-by: Michal Simek <michal.simek@amd.com>
2026-03-09Makefile: fix duplicate dtbs recipeDavid Lechner
Convert a duplicate dtbs recipe into a dependency in the main Makefile. Another recipe is already defined on line 2369, so we are getting spurious warnings like: Makefile:2369: warning: overriding recipe for target 'dtbs' Makefile:1425: warning: ignoring old recipe for target 'dtbs' The removed recipe was a no-op anyway so can be safely removed. Signed-off-by: David Lechner <dlechner@baylibre.com>
2026-03-09Merge tag 'v2026.04-rc4' into nextTom Rini
Prepare v2026.04-rc4
2026-03-09Prepare v2026.04-rc4v2026.04-rc4Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2026-03-04Revert "kbuild: unexport sub_make_done to fix child make invocations"Tom Rini
This unfortunately introduces failure to build in other cases: $ make ARCH=riscv CROSS_COMPILE=riscv64-unknown-linux-gnu- O=build \ microchip_mpfs_generic_defconfig GEN Makefile # # configuration written to .config # $ make ARCH=riscv CROSS_COMPILE=riscv64-unknown-linux-gnu- O=build HOSTCC scripts/basic/fixdep GEN Makefile HOSTCC scripts/kconfig/conf.o YACC scripts/kconfig/zconf.tab.[ch] LEX scripts/kconfig/zconf.lex.c HOSTCC scripts/kconfig/zconf.tab.o HOSTLD scripts/kconfig/conf scripts/kconfig/conf --syncconfig Kconfig *** *** Configuration file ".config" not found! *** *** Please run some configurator (e.g. "make oldconfig" or *** "make menuconfig" or "make xconfig"). *** make[4]: *** [/stuff/u-boot/scripts/kconfig/Makefile:75: syncconfig] Error 1 make[3]: *** [/stuff/u-boot/Makefile:702: syncconfig] Error 2 make[2]: *** [../Makefile:189: __sub-make] Error 2 make[1]: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'. Stop. make: *** [Makefile:189: __sub-make] Error 2 This reverts commit 4284306d22c5b6d64ecd62b462551d9d313c8104. Reported-by: Conor Dooley <conor@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com>
2026-03-03kbuild: unexport sub_make_done to fix child make invocationsSimon Glass
The exported sub_make_done variable leaks into the environment of all child processes. When make targets like tcheck spawn independent make invocations with O=, those child makes inherit sub_make_done=1, skip the KBUILD_OUTPUT setup and try to build in the source tree. There is a workaround that resets sub_make_done to 0 for specific test targets, but this isn't great since it has tolist every target that spawns independent make invocations. Instead, unexport sub_make_done once we are in the final make invocation. The direct sub-make already has the value in its environment from the export, and no further propagation is needed. This also allows the per-target workaround to be removed. Fixes: 27529f1cb02d ("kbuild: skip parsing pre sub-make code for recursion") Signed-off-by: Simon Glass <simon.glass@canonical.com>
2026-02-23Merge tag 'v2026.04-rc3' into nextTom Rini
Prepare v2026.04-rc3
2026-02-23Prepare v2026.04-rc3v2026.04-rc3Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2026-02-10Merge patch series "env: Provide another work-around for unquoting fdtfile"Tom Rini
This series from Vagrant Cascadian <vagrant@debian.org> provides a way for plain text environments to avoid having extraneous quotes in how they use CONFIG_DEFAULT_FDT_FILE. Link: https://lore.kernel.org/r/20260130040424.472735-1-vagrant@debian.org
2026-02-10env: Provide another work-around for unquoting fdtfileVagrant Cascadian
Some boards use CONFIG_DEFAULT_FDT_FILE to specify the value of fdtfile, althugh the quotes get embedded in the value. Provide DEFAULT_FDT_FILE with the quotes stripped. This is a similar work-around to the one provided in commit d085e692c98d0d7b57cc577ed9befda159cd4a40 for CONFIG_DEFAULT_DEVICE_TREE. Signed-off-by: Vagrant Cascadian <vagrant@debian.org> Reviewed-by: Tom Rini <trini@konsulko.com>
2026-02-09Prepare v2026.04-rc2v2026.04-rc2Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2026-01-26Prepare v2026.04-rc1v2026.04-rc1Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2026-01-20Makefile: Have binary_size_check report only first match of _image_binary_endTom Rini
If we have ASSERT macros that validate the position of _image_binary_end, our awk expression will report a string that causes the rest of our check to fail with garbage values. Have it exit after the first match to fix this. Signed-off-by: Tom Rini <trini@konsulko.com>
2026-01-05Merge branch 'next'Tom Rini
2026-01-05Prepare v2026.01v2026.01Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2026-01-02kbuild: Bump the build system to 6.1Sughosh Ganu
Our last sync with the kernel was 5.1. We are so out of sync now, that tracking the patches and backporting them one by one makes little sense and it's going to take ages. This is an attempt to sync up Makefiles to 6.1. Unfortunately due to sheer amount of patches this is not easy to review, but that's what we decided during a community call for the bump to 5.1, so we are following the same guidelines here. Signed-off-by: Sughosh Ganu <sughosh.ganu@linaro.org> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>a #rebased on -next
2026-01-02Makefile: repair CONFIG_CC_OPTIMIZE_FOR_DEBUG supportHeinrich Schuchardt
Since commit 5f520875bdf0 ("kbuild: Bump the build system to 5.1") CONFIG_CC_OPTIMIZE_FOR_DEBUG has no effect on the non-host code. This patch reestablishes the prior logic to add -Og -Wno-maybe-uninitialized to KBUILD_CFLAGS. Fixes: 5f520875bdf0 ("kbuild: Bump the build system to 5.1") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2025-12-29Makefile: Make flash.bin target available on i.MX9Marek Vasut
The current implementation of flash.bin generation with CONFIG_SPL_LOAD_IMX_CONTAINER=y requires build of u-boot.cnt which is i.MX8 specific. Reinstate the i.MX8 check to avoid this dependency for i.MX9 . Fill in flash.bin target for i.MX9 into imx specific Makefile. Fixes: c3587197c0c9 ("Makefile: Make flash.bin target available for all platforms") Signed-off-by: Marek Vasut <marex@nabladev.com>
2025-12-22Prepare v2026.01-rc5v2026.01-rc5Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2025-12-08Prepare v2026.01-rc4v2026.01-rc4Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2025-12-03arm64: renesas: Add Renesas R-Car Gen5 infrastructureHai Pham
Add initial changes to support Renesas R-Car Gen5 SoC. Introduce Kconfig entries, architecture headers and PRR IDs for Renesas R-Car Gen5 and R-Car X5H R8A78000 SoC. Add Makefile change to produce u-boot-elf.srec with correct offset for installation tooling. Update MAINTAINERS entry to cover both r8a77nnn and r8a78nnn . Signed-off-by: Hai Pham <hai.pham.ud@renesas.com> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2025-11-24Prepare v2026.01-rc3v2026.01-rc3Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2025-11-18Merge patch series "Fixes for Clang builds for AArch64, improve ↵Tom Rini
CROSS_COMPILE handling" Dmitrii Sharshakov <d3dx12.xx@gmail.com> says: Initially fix the inconsistency reported in reply to the previous series and also make sure AArch64 images can be built with latest Clang versions by guarding AArch32-specific options behind extra config checks. Tested qemu_arm_defconfig and qemu_arm64_defconfig with Clang 21, mainline (to be 22) ce7f9f9c and also Clang 18 (for AArch64 only, as I have not managed to build an AArch32 image with clang-18). Link: https://lore.kernel.org/r/20251108-clang-cross-fixes-v1-0-ea6c4282844a@gmail.com
2025-11-18build: fix prefix for Clang when CROSS_COMPILE is an absolute pathDmitrii Sharshakov
Clang cross-compilation worked when cross binutils were available in PATH. However, when binutils are not in the PATH clang failed to discover the assembler, falling back to host one. Make --prefix always absolute, Clang supports this and will search for e.g. $(prefix)-as for assembler. This makes sure user does not have to add cross binutils to PATH for Clang build. Fixes build for these examples (with qemu_arm(64)_defconfig): make CC=clang-21 CROSS_COMPILE=/.../bin/arm-none-eabi- make CC=clang-20 CROSS_COMPILE=/.../bin/aarch64-linux-gnu- Also validated for the case when provided with cross toolchain on PATH: PATH=/.../bin:$PATH make CC=clang-21 CROSS_COMPILE=arm-none-eabi- -j20 This patch does not affect GCC builds, and they have _not_ been validated against regressions. Reported-by: Tom Rini <trini@konsulko.com> Closes: https://lore.kernel.org/u-boot/20251106221355.GZ6688@bill-the-cat/ Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-11-12usb: musb: drop musb legacy driversPeter Robinson
The last of the users of the legacy musb drivers have been migrated so now remove the old musb stack, all users should now be using the new musb stack if they need this functionality. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> [trini: Remove a Makefile reference that was missed in v1] Signed-off-by: Tom Rini <trini@konsulko.com>
2025-11-10Prepare v2026.01-rc2v2026.01-rc2Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2025-11-06arm: k3-binman: add tifalcon.bin for falcon modeAnshul Dalal
This patch adds creation of tifalcon.bin for the AM62a, 62p and 62x. The contents are the same as the existing tispl.bin but A53's SPL and the FDT have been removed as they are not needed in R5 falcon mode. This reduces boot time since the payload size is smaller compared to the regular tispl.bin. tispl.bin = TFA + TEE + TIFS-STUB + A53 SPL + FDT tifalcon.bin = TFA + TEE + TIFS-STUB Signed-off-by: Anshul Dalal <anshuld@ti.com>
2025-11-06build: fix building u-boot.lds with Clang as a cross-compilerDmitrii Sharshakov
Make sure to pass Clang flags to the KBUILD_CPPFLAGS as well, as this variable is used for flags during compiling for target Skipping this leads to Clang being invoked with args for target, but without target indication, thus defaulting to host arch: LDS u-boot.lds clang: error: ... '-mabi=' for target 'x86_64-suse-linux' clang: error: ... '-mno-thumb' for target 'x86_64-suse-linux' clang: error: ... '-mno-unaligned-access' for target 'x86_64-suse-linux' clang: error: ... '-ffixed-r9' for target 'x86_64-suse-linux' clang: error: ... '-mno-movt' for target 'x86_64-suse-linux' make: *** [Makefile:2345: u-boot.lds] Fehler 1 Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-10-27Prepare v2026.01-rc1v2026.01-rc1Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2025-10-24makefile: Fix recursive makesIlias Apalodimas
Since the Kbuild bump to 5.1 and specifically commit af1a9935708a ("kbuild: make -r/-R effective in top Makefile for old Make versions") the recursion rules have changed. 'make O=/output/dir/' as well as './test/py/test.py --bd sandbox --build' is working fine but anything that recursively called the makefile was failing e.g 'make tests', 'make qcheck' etc, which calls a bash script that ends up calling the makefile again. The reason is that the internal 'sub_make_done' variable of the makefile was set after the first pass and the output dir was never evaluated properly. Reset the variable value if we are executing any of these tests. Fixes: af1a9935708a ("kbuild: make -r/-R effective in top Makefile for old Make versions") Reported-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Test-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2025-10-06Prepare v2025.10v2025.10Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2025-09-23Prepare v2025.10-rc5v2025.10-rc5Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2025-09-17imx95_evk: Restore support for i.MX95 A0 siliconAlice Guo
This patch is used to restore support for i.MX95 A0 silicon. To avoid duplicating defconfig, imx95.config is added and can be shared between imx95_a0_19x19_evk_defconfig and imx95_19x19_evk_defconfig. container.cfg and imximage.cfg are used to created .cfgout files that are be passed to mkimage with -n to build flash.bin. Now they have been deleted and replaced by adding their content to properties of node which type is nxp-imx9image under binman node. Fixes: 9936724aa9b ("imx95_evk: Add i.MX95 B0 support") Signed-off-by: Alice Guo <alice.guo@nxp.com> Tested-By: Tim Harvey <tharvey@gateworks.com> # imx95-19x19-evk (rA0)
2025-09-08Prepare v2025.10-rc4v2025.10-rc4Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2025-08-25Prepare v2025.10-rc3v2025.10-rc3Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2025-08-11Prepare v2025.10-rc2v2025.10-rc2Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2025-08-04Makefile: Remove expansion of undefined variablePhilip Molloy
The U-Boot environment was previously stored in the boot loader stream using ldr, but it has been replaced by the default environment built into the U-Boot executable or an environment on external storage Fixes: ea3310e8aafa ("Blackfin: Remove") Signed-off-by: Philip Molloy <philip.molloy@analog.com> Reviewed-by: Greg Malysa <malysagreg@gmail.com>
2025-08-01Makefile: add dependency from lib to arch/$(ARCH)/libMikko Rapeli
Top level Makefile starts separate "make" processes for each each subdirectory. lib/efi_loader apps now depend on lib.a from arch/$(ARCH)/lib if CONFIG_USE_PRIVATE_LIBGCC is enabled which creates a race conditions since dependency from lib/efi_loader EFI apps to arch/$(ARCH)/lib/lib.a is not explicit: arm-poky-linux-gnueabi-ld.bfd: cannot find arch/arm/lib/lib.a: No such file or directory make[3]: *** [scripts/Makefile.lib:512: lib/efi_loader/testapp_efi.so] Error 1 This error was seen on yocto/OE-core CI builds after u-boot 2025.07 update: https://lists.openembedded.org/g/openembedded-core/message/220004 https://autobuilder.yoctoproject.org/valkyrie/api/v2/logs/2914600/raw_inline | rm -f lib/efi_loader/built-in.o; arm-poky-linux-gnueabi-ar cDPrsT lib/efi_loader/built-in.o lib/efi_loader/efi_bootmgr.o lib/efi_loader/efi_bootbin.o lib/efi_loader /efi_boottime.o lib/efi_loader/efi_helper.o lib/efi_loader/efi_console.o lib/efi_loader/efi_device_path.o lib/efi_loader/efi_device_path_to_text.o lib/efi_loader/efi_device_ path_utilities.o lib/efi_loader/efi_dt_fixup.o lib/efi_loader/efi_fdt.o lib/efi_loader/efi_file.o lib/efi_loader/efi_hii.o lib/efi_loader/efi_hii_config.o lib/efi_loader/efi _image_loader.o lib/efi_loader/efi_load_options.o lib/efi_loader/efi_memory.o lib/efi_loader/efi_root_node.o lib/efi_loader/efi_runtime.o lib/efi_loader/efi_setup.o lib/efi_ loader/efi_string.o lib/efi_loader/efi_unicode_collation.o lib/efi_loader/efi_var_common.o lib/efi_loader/efi_var_mem.o lib/efi_loader/efi_variable.o lib/efi_loader/efi_var_ file.o lib/efi_loader/efi_watchdog.o lib/efi_loader/efi_disk.o lib/efi_loader/efi_net.o lib/efi_loader/efi_smbios.o lib/efi_loader/efi_load_initrd.o lib/efi_loader/efi_confo rmance.o | arm-poky-linux-gnueabi-ld.bfd -nostdlib -zexecstack -znocombreloc -znorelro --no-warn-rwx-segments -L /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st- 3119200/tmp/work/beaglebone_yocto-poky-linux-gnueabi/u-boot/2025.07/sources/u-boot-2025.07 -T arch/arm/lib/elf_arm_efi.lds -shared -Bsymbolic -s lib/efi_loader/helloworld.o lib/efi_loader/efi_crt0.o lib/efi_loader/efi_reloc.o lib/efi_loader/efi_freestanding.o arch/arm/lib/lib.a -o lib/efi_loader/helloworld_efi.so | arm-poky-linux-gnueabi-ld.bfd: cannot find arch/arm/lib/lib.a: No such file or directory | make[3]: *** [scripts/Makefile.lib:512: lib/efi_loader/helloworld_efi.so] Error 1 The different "make" processes share common scripts/Makefile.build and scripts/Makefile.libs but since they are separate processes the Makefile rules can't add a dependency from lib/uefi_loader targets to arch/$(ARCH)/lib/lib.a. Or the file level dependency can be added but then "make" produces a too sparse error message which does not mention that one of the dependencies like arch/$(ARCH)/lib/lib.a was not found: make[3]: *** No rule to make target 'lib/efi_loader/helloworld.efi', needed by '__build'. Stop. Fix this dependency problem by building arch/$(ARCH)/lib before lib if CONFIG_USE_PRIVATE_LIBGCC was enabled. To reproduce the race condition more reliably, add a "sleep 10" delay before linker command cmd_link_l_target with 2025.07 or to $(lib-target): target in scripts/Makefile.build with master branch after Kbuild update. Fixes: 43d43241d1c9 ("scripts/Makefile.lib: add PLATFORM_LIBGCC to efi linking") Cc: Adriano Cordova <adrianox@gmail.com> Cc: Fabio Estevam <festevam@gmail.com> Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Reviewed-by: Fabio Estevam <festevam@gmail.com>