summaryrefslogtreecommitdiffstats
path: root/meta/recipes-bsp/u-boot
Commit message (Collapse)AuthorAgeFilesLines
* u-boot: update build racecondition patchesMikko Rapeli71 min.4-195/+82
| | | | | | | | | | | A different patch was applied upstream after reviews and testing. (From OE-Core rev: 4291be42e862b4fa748a7245811aae8fd4ffed8a) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: upgrade 2025.04 -> 2025.07Fabio Estevam10 days9-6/+656
| | | | | | | | | | | | | | Upgrade to U-Boot 2025.07. Add patches for build race conditions. Remove the QEMU KVM USB workaround since the issue is fixed upstream. (From OE-Core rev: bb287fade558d0138f7254876c9029da63e3087f) Signed-off-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libubootenv: Backport patch to support builds with CMake 4+Moritz Haase2025-07-072-1/+53
| | | | | | | | | | | | Commit [0] has been merged upstream, but there hasn't been a release containing it yet. [0]: https://github.com/sbabic/libubootenv/commit/cd12d9dd2bea8e4580f458df77229477fc55ba70 (From OE-Core rev: 133b793830b1a30a79465fe4511029010f9a2c68) Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Dynamic RISC-V ISA configurationMark Hatle2025-07-078-0/+24
| | | | | | | | | | | | | | | | | | | | Allow the risc-v TUNE_FEATURES to select specific ISA (kconfig) selections via config fragments. This allows the following items to be selected dynamically: CONFIG_RISCV_ISA_C CONFIG_RISCV_ISA_F CONFIG_RISCV_ISA_D CONFIG_RISCV_ISA_ZBB CONFIG_RISCV_ISA_A CONFIG_RISCV_ISA_ZICBOM (From OE-Core rev: de890297b392fcf7f5bd2d25d3c173373b93dd36) Signed-off-by: Mark Hatle <mark.hatle@amd.com> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Allow for customizing installed/deployed file namesRyan Eatmon2025-06-231-40/+40
| | | | | | | | | | | | | | | | | | | | | When assembling all of the various filenames that are installed/deployed from u-boot, we have been including the PV and PR in the filenames. This change introduces a single variable to replace these two in the filenames. This change should not be disruptive since the default value for the new UBOOT_VERSION variable is "${PV}-${PR}". In one case (UBOOT_EXTLINUX_SYMLINK [1]), PR was used without PV, this patch assumes this was a mistake and corrects it as PR would not be of much use alone. [1] https://git.openembedded.org/openembedded-core/commit/?h=master-next&id=33df3a65f3e8e136811da715d0cc247ce66ae0ea (From OE-Core rev: debc691853e2954bd325bad395b8829939afaa08) Signed-off-by: Ryan Eatmon <reatmon@ti.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta: remove consecutive blank linesAlexander Kanavin2025-06-202-2/+0
| | | | | | | | | | | | | | | | | Some of them were introduced by mass-removal of S = WORKDIR/git assignments; rather than try to fix up (or redo) just these, I've run this sed command over the whole tree: sed -i -z -E 's/([ \t\f\v\r]*\n){3,}/\n\n/g' `find . -name *.bb -o -name *.inc` The rationale is that more than one empty line is wasting vertical screen space, and does nothing for readability. (From OE-Core rev: cedc4ff7c9bcfb22a20e43e47f9759f4007a4f1a) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta: remove S in recipes that fetch from git via setting ↵Alexander Kanavin2025-06-202-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BB_GIT_DEFAULT_DESTSUFFIX Removing all the S = ${WORKDIR}/git assignments works because BB_GIT_DEFAULT_DESTSUFFIX is set to match S from bitbake.conf (which itself is set to match typical tarball releases). A few recipes are setting S to a sub-directory of the git tree and need to be adjusted accordingly. bzip2 recipe is fetching a tarball and separately cloning tests; adjust the recipe to put the latter into 'bzip2-tests', instead of 'git'. devupstream.bbclass no longer needs to rewrite S, and is adjusted accordingly. Adjust scripts/lib/recipetool/append.py to not hardcode 'git' as unpack destination. Adjust kernel-yocto.bbclass to use the git unpack variable instead of hardcoding 'git' (there's also removal of repetition of string constants and a correction of workdir/unpackdir mismatch in one of the if-else branches). Ensure build-appliance-image recipe does not use 'git' as checkout directory for poky repo, but rather explicitly name it 'poky'. Ensure reproducible.py code that looks for git repositories does not hardcode 'git' but uses the destination set by BB_GIT_DEFAULT_DESTSUFFIX. Ensure recipetool does not write out unneeded S settings into newly created recipes that fetch from git. Adjust selftest to not hardcode 'git' as unpack directory. (From OE-Core rev: f80c07019ddadaf9c5fb890faabfda7920ecd15e) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: move arm64 disabling fragments to versioned recipeRoss Burton2025-06-092-4/+4
| | | | | | | | | | | | | More than just the u-boot_2025.04.bb includes u-boot-common.inc, such as u-boot_2023.07.02.bb in meta-arm. To avoid other recipes having to carry patches that may not affect them, move the files to be specific to the recipe itself. (From OE-Core rev: 3bb0f87a1d13f86836dc44adee5621c3146863d3) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: disable USB support on qemuarm64 and genericarm64Mikko Rapeli2025-06-052-3/+4
| | | | | | | | | | | | | | | | qemu USB devices under KVM currently cause reset loop in u-boot. If u-boot USB support is disabled then u-boot just ignores the qemu USB devices which then work with Linux kernel as before. Issue has been reported to u-boot upstream in: https://lists.denx.de/pipermail/u-boot/2025-June/591233.html (From OE-Core rev: ade1069ece5f964edaa7115681d8dbc484ff2c81) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: disable CONFIG_BLOBLIST on genericarm64 and qemuarm64Mikko Rapeli2025-06-052-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Booting u-boot on qemu with kvm is currently hanging on aarch64 build host. Root cause is in u-boot and CONFIG_BLOBLIST can be disabled as a workaround. To reproduce, build on kvm enabled host where "kvm-ok" succeeds. For example genericarm64 machine and core-image-base should then boot with: $ runqemu slirp nographic novga snapshot kvm On qemuarm64, default kvm setup will boot directly to kernel and is not affected by this. If build enables u-boot as bios then the same issue happens. Without this config workaround, the boot hangs without any messages in qemu output but ctrl-a-c to qemu console can shutdown the emulated machine. This seems to have regressed after u-boot 2025.04 update. KVM boot can be detected from speed, for example genericarm64 boots in 550 ms with KVM and without in over 5 seconds. Fixes: [YOCTO #15872] Upstream u-boot discussion: https://lists.denx.de/pipermail/u-boot/2025-May/590101.html Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org> (From OE-Core rev: c5fa4320e666a0606b18be8f0a08e659170568f2) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: upgrade 2025.01 -> 2025.04Fabio Estevam2025-04-103-2/+2
| | | | | | | | | | | | Upgrade to U-Boot 2025.04. While at it, pass the tag parameter in SRC_URI. (From OE-Core rev: 4a1671159ec05e9b013a7fd31f65d50302e657e0) Signed-off-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* recipes: Drop ld-is-gold supportRichard Purdie2025-02-101-5/+1
| | | | | | | | | | | Gold hasn't seen development in some time and is being dropped from binutils releases. Drop the small number of special cases for it we were carrying. This patch also turns off gold in the binutils recipe. (From OE-Core rev: a4addb9ab63011e7c604fc5daff95559e7d214e7) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta/meta-selftest: Fix variable assignment whitespaceRichard Purdie2025-02-011-1/+1
| | | | | | | | | | Recipes are much more readable with whitespace around the assignment operators. Fix various assignments in OE-Core to show this is definitely the preferred formatting. (From OE-Core rev: 30ea609d3357fb3de911f2f6a5e6856c151b976a) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: upgrade 2024.10 -> 2025.01Fabio Estevam2025-01-094-62/+1
| | | | | | | | | | | | Upgrade to U-Boot 2025.01. Remove the patch as it has been upstreamed. (From OE-Core rev: e16a24f04b56ca3fec6509a3286e2e3bb5c21c1e) Signed-off-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Set CVE_PRODUCTMaik Otto2024-11-181-0/+2
| | | | | | | | | | | The CPE vendor is "denx" and the CPE product is "u-boot". Set CVE_PRODUCT for properly matching in the NVD database. (From OE-Core rev: d2e5d427de13b33694a1d802f5ac833b2c04ced6) Signed-off-by: Maik Otto <m.otto@phytec.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Update Upstream-StatusFabio Estevam2024-11-011-1/+1
| | | | | | | | | | | | 0001-scripts-dtc-pylibfdt-libfdt.i_shipped-Use-SWIG_Appen.patch is now applied in U-Boot upstream. Update the Upstream-Status accordingly. (From OE-Core rev: 718f97d90b13c190e2b1852447764c31464ebdf1) Signed-off-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Add patch to use SWIG_AppendOutputMarkus Volk2024-11-012-0/+61
| | | | | | | | | | | | | Swig has changed language specific AppendOutput functions. The helper macro SWIG_AppendOutput remains unchanged. Use that instead of SWIG_Python_AppendOutput, which would require an extra parameter since swig 4.3.0. (From OE-Core rev: 4eae7888e91c7c864bf490dee38716267be6202e) Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libubootenv: upgrade 0.3.5 -> 0.3.6Wang Mingyu2024-10-291-1/+1
| | | | | | | | (From OE-Core rev: 63395c91357a691fc65c96be2e4734166d5a5dc3) Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: upgrade 2024.07 -> 2024.10Fabio Estevam2024-10-224-6/+5
| | | | | | | | | | | | | | Upgrade to U-Boot 2024.10. Add the gnutls-native dependency because now U-Boot needs it installed on the host machine to handle the CONFIG_TOOLS_MKEFICAPSULE option. (From OE-Core rev: e3ece22060725c9eebc0feed9b2be2d00ce4bf8e) Signed-off-by: Fabio Estevam <festevam@denx.de> Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cml1: add do_savedefconfigAdrian Freihofer2024-09-051-6/+0
| | | | | | | | | | | Move the do_savedefconfig task definition from u-boot and kernel to cml1.bbclass. There are more recipes which use the kbuild framework and benefit from a do_savedefconfig task. (From OE-Core rev: 2b2ed48903e09196ee20da7f66b1d3689e4a4473) Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Ensure we use BFD as linker even if using GCC for itOtavio Salvador2024-09-011-1/+2
| | | | | | | | | | | | | | If we are using 'ld-is-gold' as DISTRO_FEATURE, the U-Boot Makefile has mechanisms to ensure that we use BFD as linker. However, this does not work for the GCC when it is used as linking tool. To support that, we added explicit BFD use whenever we have the DISTRO_FEATURE feature enabled. (From OE-Core rev: d36ee7a87c0d89b2820eea4bfcdae342adc75019) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot.inc: Refactor do_* steps into functions that can be overriddenRyan Eatmon2024-08-092-109/+208
| | | | | | | | | | | | | | | | | | | | | | The looping logic for handling (and not handling) UBOOT_CONFIG has led to the various do_* functions to be large and unwieldy. In order to modify one of the functional blocks inside of a loop (or in the else condition) means you either have to replace the function entirely, or append the function and undo something it did and then do what you need for your change. This refactor breaks out all of the inner loops and else clauses into new functions that themselves can be overridden without needing to worry about the bulk of the looping logic. It should not break any existing recipes doing prepends, appends, or overrides. None of the functional blocks were changed, just refactored out into new functions. (From OE-Core rev: 937bcc229502fcc154cc676b4fcc93c561873def) Signed-off-by: Ryan Eatmon <reatmon@ti.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: upgrade 2024.04 -> 2024.07Fabio Estevam2024-07-023-1/+1
| | | | | | | | | Upgrade to U-Boot 2024.07. (From OE-Core rev: 377e8d7fc019b0b2a0fd020e51741a4543f5f209) Signed-off-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Fix potential index error issues in do_deploy with multiple u-boot ↵Florian Amstutz2024-07-021-0/+1
| | | | | | | | | | | | configurations If i or j have not been unset in do_deploy:prepend functions, images are not correctly copied to DEPLOYDIR. (From OE-Core rev: 5a0764eaac90bd62dac4a387eed5eb68f556412f) Signed-off-by: Florian Amstutz <florian.amstutz@scs.ch> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot.inc: WORKDIR -> UNPACKDIR transitionLeon Anavi2024-07-011-3/+3
| | | | | | | | | | Replace references of WORKDIR with UNPACKDIR and B for U-Boot script and variable UBOOT_ENV_BINARY, for example for boot.scr. (From OE-Core rev: 62ff94ff40e823065178318133d54e44a3d8a46d) Signed-off-by: Leon Anavi <leon.anavi@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* recipes: Start WORKDIR -> UNPACKDIR transitionRichard Purdie2024-05-211-2/+2
| | | | | | | | | Replace references of WORKDIR with UNPACKDIR where it makes sense to do so in preparation for changing the default value of UNPACKDIR. (From OE-Core rev: 1f18b9a512800860d5153d89eb82b56388efad6f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* recipes: Update WORKDIR references to UNPACKDIRRichard Purdie2024-05-021-2/+2
| | | | | | | | | | Since we want to be able to stop unpacking to WORKDIR, correct the WORKDIR references in recipe do_compile/do_install tasks to use UNPACKDIR in the appropraite places instead. (From OE-Core rev: d73595df69667fe9d12ecd407b77a0b8dae2109c) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: upgrade 2024.01 -> 2024.04Wang Mingyu2024-04-163-1/+1
| | | | | | | (From OE-Core rev: c035655ed65b6333d87019677ba93d7899f42d9a) Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot-tools: Package mkeficapsulePeter Hoyes2024-04-111-4/+9
| | | | | | | | | | | | mkeficapsule is a tool provided by U-Boot (as part of the tools-only targets) for generating UEFI capsule update archives. Install mkeficapsule into a u-boot-tools-mkeficapsule package. (From OE-Core rev: ab9380cd969cc0762a55e5e2c7a8ea6b697e3ae1) Signed-off-by: Peter Hoyes <peter.hoyes@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: fix externalsrc not triggering do_configure on defconfig changesQuentin Schulz2024-03-231-0/+2
| | | | | | | | | | | | | | | | | | | | | externalsrc only monitors files listed in CONFIGURE_FILES environment variable to know if it should trigger a rebuild of do_configure. By default it is unset, but the defconfig from U-Boot should be listed otherwise an old defconfig may be used even though the change is technically detected by the do_compile logic later in the process. Because U-Boot recipe uses `make oldconfig` when no defconfig is passed, monitor .config for that special case. This fixes U-Boot recipes not detecting defconfig changes when devtool'ed. Reported-by: Iskander Amara <iskander.amara@theobroma-systems.com> Cc: Quentin Schulz <foss+yocto@0leil.net> (From OE-Core rev: fef517b5f978cf848b9cc40e8ce6bb2762681182) Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Move UBOOT_INITIAL_ENV back to u-boot.incFabio Estevam2024-03-031-0/+4
| | | | | | | | | | | | | | | | | Commit cc6c3e31526d ("u-boot: Move definitions to common locations") moved UBOOT_INITIAL_ENV to uboot-config.bbclass, but it should be kept at u-boot.inc because it encodes ${PN} in it, which should be set by the U-Boot recipe. Currently, whatever inherits uboot-config bbclass will fill-in its own PN, which would change the content of UBOOT_INITIAL_ENV per-package. Cc: Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com> Cc: Marek Vasut <marex@denx.de> Fixes: cc6c3e31526d ("u-boot: Move definitions to common locations") (From OE-Core rev: 0b0c4b37d318b86f100512476ffd861e0ce1f47e) Signed-off-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Pass in prefix mapping variables to the compilerRichard Purdie2024-02-171-1/+1
| | | | | | | | | | | | | Avoid: u-boot-1_2024.01-r0 do_package_qa: QA Issue: File /boot/u-boot-qemuriscv64-2024.01-r0.elf in package u-boot contains reference to TMPDIR [buildpaths] by ensuring the compiler has the prefix mapping options passed in to it to correctly remap the source paths and avoid the warning. (From OE-Core rev: 85c6b06da641fdaf09f2cfe7066e0cf1185c7969) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: add missing dependency on pyelftools-nativeQuentin Schulz2024-02-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | When TF-A is necessary in U-Boot binary, binman requires elftools to be installed to be able to generate that U-boot ITB image. TF-A is necessary for at least all Aarch64 machines, so that is a non-negligible amount of boards that have this requirement. As a side note, Rockchip-based machines didn't need this until commit 12c3e948eeab ("rockchip: Drop the FIT generator script") (v2023.04-rc1). This is already in meta-rockchip, c.f. https://git.yoctoproject.org/meta-rockchip/commit/recipes-bsp/u-boot?id=6127d169acf239a53df989f34a6b825fa182cc0c but I feel like this makes more sense to be present in OE-Core. Cc: Quentin Schulz <foss+yocto@0leil.net> (From OE-Core rev: 70eca6a5ccf451572421f51eef9cc82ba120c7cb) Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Upgrade to 2024.01Fabio Estevam2024-01-103-1/+1
| | | | | | | | | | Upgrade to U-Boot 2024.01. (From OE-Core rev: 727ff6fed97118113dc191605bf5551ca0da134d) Signed-off-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libubootenv: upgrade 0.3.4 -> 0.3.5Wang Mingyu2023-10-191-1/+1
| | | | | | | | | | | | | | | Changelog: ========== Fix slowness on SPI flash Fixes validating Env flags Feature: get U-Boot namespace from DT Feature: specify UBI volumes from MTD path (From OE-Core rev: c104259333e976de0cf6fd7bea2fece1b683dbbe) Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Upgrade to 2023.10Fabio Estevam2023-10-043-2/+2
| | | | | | | | | | | | | Upgrade to U-Boot 2023.10. The U-Boot 2023.10 tag is in the master branch, so switch the branch back to master. (From OE-Core rev: 6fce7f99ff5bacf7ad4b1816f462260fe41b38ee) Signed-off-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Upgrade to 2023.07.02Fabio Estevam2023-07-193-2/+2
| | | | | | | | | | | | | Upgrade to U-Boot 2023.07.02. The U-Boot 2023.07.02 tag is not in the master branch, so switch the branch from master to u-boot-2023.07.y. (From OE-Core rev: 687d105ada21c6e0d9efe3acf6f4aa1c844d3d30) Signed-off-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Upgrade to 2023.07Fabio Estevam2023-07-145-47/+3
| | | | | | | | | | | | Upgrade to U-Boot 2023.07. Remove the patch that is now upstream. (From OE-Core rev: 396f66ce025a5b2ae15cc82f2ac53664fd3d9dad) Signed-off-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Update Upstream-StatusFabio Estevam2023-07-101-1/+1
| | | | | | | | | | | | The patch to fix the mkimage path length error has landed in U-Boot upstream. Update the Upstream-Status accordingly. (From OE-Core rev: 9e4e728a03f69d0f42d22820926e056f2db09c21) Signed-off-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot-tools: Use PATH_MAX for path lengthMingli Yu2023-06-212-0/+44
| | | | | | | | | | | | Fixes: | uboot-mkimage -D "-I dts -O dtb -p 2000" -F -k "/buildarea1/test/wr_build/wrtestLTS_secureboot/test1-what/test2-what/test3-what/test4-what/test5-what/test6-what/test7-what/test8-what/test9-what/test10-what/test11-what/test12-what/layers/xilinx-zynqmp/zynqmp_keys/fitImage-rsa2048-keys" -K "u-boot.dtb" -r /buildarea1/test/wr_build/wrtestLTS_secureboot/test1-what/test2-what/test3-what/test4-what/test5-what/test6-what/test7-what/test8-what/test9-what/test10-what/test11-what/test12-what/build/tmp-glibc/work/xilinx_zynqmp-wrs-linux/u-boot-xlnx/1_v2023.01-xilinx-v2023.1+gitAUTOINC+40a08d69e7-r0/build/fitImage-linux | /buildarea1/test/wr_build/wrtestLTS_secureboot/test1-what/test2-what/test3-what/test4-what/test5-what/test6-what/test7-what/test8-what/test9-what/test10-what/test11-what/test12-what/build/tmp-glibc/work/xilinx_zynqmp-wrs-linux/u-boot-xlnx/1_v2023.01-xilinx-v2023.1+gitAUTOINC+40a08d69e7-r0/build/fitImage-linux: Image file name (uboot-mkimage) too long, can't create tmpfile. (From OE-Core rev: b913f6c1f9d8ed40fd83bfe73e32b8a6613a7880) Signed-off-by: Mingli Yu <mingli.yu@windriver.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libubootenv: upgrade 0.3.3 -> 0.3.4Stefano Babic2023-06-131-2/+2
| | | | | | | | (From OE-Core rev: 91fb4cc0566b2f6909264d32f9da66231993c03c) Signed-off-by: Stefano Babic <sbabic@denx.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta: introduce KCONFIG_CONFIG_ENABLE_MENUCONFIGMing Liu2023-06-091-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, uboot do_menuconfig task is breaking when UBOOT_CONFIG is chosen rather than UBOOT_MACHINE, it simply fails with the following errors: | make: *** No rule to make target 'menuconfig'. Stio. | Command failed. | Press any key to continue... this is due to the work directory of do_menuconfig is set to ${B} but not ${B}/$config. We should distinguish two situations: 1) When there is only one config item in UBOOT_CONFIG, do_menuconfig should work just like how it works for UBOOT_MACHINE. 2) When there are multiple config items in UBOOT_CONFIG, do_menuconfig should print out some information saying it's not supported other than just failing. This patch mainly aims to fix that by introducing a extra variable KCONFIG_CONFIG_ENABLE_MENUCONFIG, it would be set to 'false' for situation 2), and when it's set to 'true', then set KCONFIG_CONFIG_ROOTDIR correctly in uboot-config.bbclass to let do_menuconfig task work. DEVTOOL_DISABLE_MENUCONFIG could be replaced by this new variable KCONFIG_CONFIG_ENABLE_MENUCONFIG. (From OE-Core rev: f9e834e317880cf47dbb4f8285bc36d743beae5e) Signed-off-by: Ming Liu <liu.ming50@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Upgrade to 2023.04Fabio Estevam2023-04-135-44/+3
| | | | | | | | | | | | Upgrade to U-Boot 2023.04. Remove the patch that is now upstream. (From OE-Core rev: 57003af06d50fbbb33b94a4b10ea6c77fa294027) Signed-off-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Map arm64 into map for u-boot dts installationPavel Zhukov2023-02-241-2/+2
| | | | | | | | | | | | | | | | | While arm64 is a valid UBOOT_ARCH (according to mkimage -A) u-boot keeps arm64 specific dts under 'arch/arm' directory. As the result the recipe tries to install arch/arm64 (if UBOOT_DTB was specified) and fails with [1]. Remapping "arm64" to "arm" to fix this issue. [1] | install: cannot stat '.../u-boot/1_2023.01-r0/build/arch/arm64/dts/u-boot.dtb': No such file or directory (From OE-Core rev: 3ca99403d5f320c6d7ae59b107f3b3bf183b4089) Signed-off-by: Pavel Zhukov <pavel@zhukoff.net> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uboot: add a loongarch64 entryXiaotian Wu2023-02-041-0/+1
| | | | | | | (From OE-Core rev: dca95206962a30a92297f943509be1d7b2d0b541) Signed-off-by: Xiaotian Wu <wuxiaotian@loongson.cn> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Update Upstream-StatusFabio Estevam2023-01-261-1/+1
| | | | | | | | | | | | The patch to fix the tools-only_defconfig error has landed in U-Boot upstream. Update the Upstream-Status accordingly. (From OE-Core rev: f0facfbebcc5e4d74f70740c920df4c7c0824086) Signed-off-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Upgrade to 2023.01Fabio Estevam2023-01-258-98/+50
| | | | | | | | | | | | | | | | | Upgrade to U-Boot 2023.01. Remove the two patches that are now upstream: e67f34f778ba ("riscv: support building double-float modules") 1dde977518f1 ("riscv: Fix build against binutils 2.38") And add a patch that fixes u-boot-tools build. (From OE-Core rev: ec69f295552d6dd4de755bb4562a007158cf660e) Signed-off-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Add /boot in SYSROOT_DIRSFabre Sébastien2022-11-291-0/+1
| | | | | | | | | | | To be able to use /boot files, like UBOOT_ENV_BINARY, in other recipes, like kernel-fitimage.bbclass. (From OE-Core rev: 5ed129c4e793c76e2ce9c762cc67c4c2232df447) Signed-off-by: Fabre Sébastien <sebastien.fabre@actia.fr> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: Rework signing to remove interdependenciesSean Anderson2022-10-261-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The U-Boot signing code is a bit of a mess. The problem is that mkimage determines the public keys to embed into a device tree based on an image that it is signing. This results in all sorts of contortions: U-Boot has to be available to the kernel recipe so that it can have the correct public keys embedded. Then, the signed U-Boot has to be made available to U-Boot's do_deploy. This same dance is then repeated for SPL. To complicate matters, signing for U-Boot and U-Boot SPL is optional, so the whole process must be seamlessly integrated with a non-signed build. The complexity and interdependency of this process makes it difficult to extend. For example, it is not possible to install a signed U-Boot binary into the root filesystem. This is first because u-boot:do_install must run before linux:do_assemble_fitimage, which must run before u-boot:do_deploy. But aside from infrastructure issues, installing a signed U-Boot also can't happen, because the kernel image might have an embedded initramfs (containing the signed U-Boot). However, all of this complexity is accidental. It is not necessary to embed the public keys into U-Boot and sign the kernel in one fell swoop. Instead, we can sign the kernel, stage it, and sign the staged kernel again to embed the public keys into U-Boot [1]. This twice-signed kernel serves only to provide the correct parameters to mkimage, and does not have to be installed or deployed. By cutting the dependency of linux:do_assemble_fitimage on u-boot:do_install, we can drastically simplify the build process, making it much more extensible. The process of doing this conversion is a bit involved, since the U-Boot and Linux recipes are so intertwined at the moment. The most major change is that uboot-sign is no longer inherited by kernel-fitimage. Similarly, all U-Boot-related tasks have been removed from kernel-fitimage. We add a new step to the install task to stage the kernel in /sysroot-only. The logic to disable assemble_fitimage has been removed. We always assemble it, even if the final fitImage will use a bundled initramfs, because U-Boot will need it. On the U-Boot side, much of the churn stems from multiple config support. Previously, we took a fairly ad-hoc approach to UBOOT_CONFIG and UBOOT_MACHINE, introducing for loops wherever we needed to deal with them. However, I have chosen to use a much more structured approach. Each task which needs to use the build directory uses the following pseudocode: do_mytask() { if ${UBOOT_CONFIG}; then for config, type in zip(${UBOOT_CONFIG}, ${UBOOT_MACHINE}); do cd ${config} mytask_helper ${type} done else cd ${B} mytask_helper "" fi } By explicitly placing the work in mytask_helper, we make it easier to ensure that everything is covered, and we also allow bbappends files to more easily extend the task (as otherwise they would need to reimplement the loop themselves). [1] It doesn't particularly matter what we sign. Any FIT will do, but I chose the kernel's because we already went to the trouble of setting it up with the correct hashes and signatures. In the future, we could create a "dummy" image and sign that instead, but it would probably have to happen in the kernel recipe anyway (so we have access to the appropriate variables). (From OE-Core rev: 5e12dc911d0c541f43aa6d0c046fb87e8b7c1f7e) Signed-off-by: Sean Anderson <sean.anderson@seco.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* u-boot: upgrade 2022.07 -> 2022.10wangmy2022-10-263-1/+1
| | | | | | | | (From OE-Core rev: c4c010dcf2c8936e685d2933bc32c5753f82ef4c) Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>