summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
6 daysfs: ext4fs: Perform NULL check before dereferenceAndrew Goodbody
In the function put_ext4 there is a NULL check for fs->dev_desc but this has already been derefenced twice before this happens. Refactor the code a bit to put the NULL check first. This issue found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
6 daysfs: ext4fs: Use unwind goto to free memory on errorAndrew Goodbody
Ensure that allocated memory is freed on error exit replace the direct return calls with 'goto fail'. This issue found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
6 daysfs: ext4fs: Do not negate error before returning itAndrew Goodbody
In ext4fs_readdir it calls ext4fs_read_file and checks the return value for non-zero to detect an error. This return value should be returned as is rather than being negated. This issue found by Smatch Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
2025-06-28Merge tag 'efi-2025-07-rc6' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request efi-2025-07-rc6 Documentation: * Describe usage of U-Boot environment variables in extlinux.conf UEFI: * Add missing variable initialization in efi_bootmgr_update_media_device_boot_option
2025-06-28efi_loader: initialize 'total' variableIlias Apalodimas
This variable might end up being uninitialized if we exit early. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2025-06-28doc: mention that extlinux.conf can use environment in "append"Fiona Klute
This option is very useful for A/B boot setups with read-only filesystems: Letting U-Boot fill in the rootfs (and possibly related parameters) allows keeping all boot parameters except the actual slot selection in the extlinux.conf file, where they can be updated easily. Signed-off-by: Fiona Klute <fiona.klute@gmx.de> Cc: Tom Rini <trini@konsulko.com>
2025-06-26mailmap: Update email for Duje MihanovićDuje Mihanović
I'm moving to a new address, so map my old one to it. Also update the MAINTAINERS entries. Signed-off-by: Duje Mihanović <duje@dujemihanovic.xyz>
2025-06-26pylibfdt: correct license information (further)Quentin Schulz
Since commit 51ec8db23280 ("pylibfdt: correct license information"), the License classifiers are gone so I assume setuptools now extract the license from the license argument to setuptools.setup() function. It's always been incorrect as far as I could tell, so let's fix this with the appropriate info from the SPDX License identifier at the top of the file. It was missing GPL-2.0-or-later and we disambiguate by using BSD-2-Clause instead of simply BSD. Fixes: 6b08fb5cc44f ("fdt: Move to setuptools") Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
2025-06-26Merge patch series "spl: fix error handling in spl_fit_get_image_name()"Tom Rini
Heinrich Schuchardt <heinrich.schuchardt@canonical.com> says: spl_fit_get_image_name() used to lack a detection of malformed image name properties in FIT images. The change in commit 3704b888a4ca ("common/spl: fix potential out of buffer access in spl_fit_get_image_name function") tried to fix this but led to function spl_fit_get_image_name() no longer detecting if a property at index > 1 does not exist. This patch is reverted. An explicit check for malformed image name properties is introduced. Link: https://lore.kernel.org/u-boot/38f5d078-3328-4bdb-9c95-4fb5fe89ddc2@gmx.de/T/#u Link: https://lore.kernel.org/r/20250624153431.46986-1-heinrich.schuchardt@canonical.com
2025-06-26common/spl: guard against buffer overflow in spl_fit_get_image_name()Heinrich Schuchardt
A malformed FIT image could have an image name property that is not NUL terminated. Reject such images. Reported-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Tested-by: E Shattow <e@freeshell.de>
2025-06-26common/spl: Revert fix potential out of buffer access in ↵Heinrich Schuchardt
spl_fit_get_image_name function The change in commit 3704b888a4ca ("common/spl: fix potential out of buffer access in spl_fit_get_image_name function") led to function spl_fit_get_image_name() no longer detecting if a property does not exist at a non-zero buffer. Link: https://lore.kernel.org/u-boot/38f5d078-3328-4bdb-9c95-4fb5fe89ddc2@gmx.de/T/#m59f3a23e675daa992c28d12236de71cae2ca2bb9 Fixes: 3704b888a4ca ("common/spl: fix potential out of buffer access in spl_fit_get_image_name function") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Tested-by: E Shattow <e@freeshell.de>
2025-06-26log: Fix the compilation error for emergency logAkashdeep Kaur
The log level "emergency" cannot be used as that results in compilation failure. Correct the macro name used to print at this level. Fixes: 249679658750 ("log: provide missing macros") Signed-off-by: Akashdeep Kaur <a-kaur@ti.com> Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
2025-06-26cmd: add "config" command dependency on gzipMarius Dinu
gunzip is used in cmd/config.c Signed-off-by: Marius Dinu <m95d+git@psihoexpert.ro> Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
2025-06-24i2c: mux: Fix the crash when the i2c-arbitrator node is presentVenkatesh Yadav Abbarapu
Observing the crash when we add the i2c-arbitrator node in the device tree as per the DT bindings. The issue is with the child node of i2c-arbitrator@72 i.e., i2c@f1950000->i2c-arbitrator@72->i2c-arb, as the arbitrator uses the uclass of mux(UCLASS_I2C_MUX) and the mux uclass driver checks for the "reg" property using the i2c_mux_child_post_bind() function, if it won't find the "reg" property it will return -EINVAL which is leading to the crash. So, add the logic to check whether the child node has the "reg" property, if the "reg" property exists then read the "reg" and update the channel. https://www.kernel.org/doc/Documentation/devicetree/bindings/i2c/i2c-arb.txt Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2025-06-24tools: imx8image: Fix the value passed to dcd_skip of build_container()Alice Guo
The value passed to dcd_skip of build_container() should be obtained by parsing .cfg file, and should not be fixed to false. For i.MX8QXP, dcd data needs to be skipped, in which case dcd_skip should be true. Fixes: 5f28a6599f01("tools: imx8image: add i.MX95 support") Signed-off-by: Alice Guo <alice.guo@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Heiko Schocher <hs@denx.de> Reported-by: Enric Balletbo i Serra <eballetb@redhat.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2025-06-23Prepare v2025.07-rc5v2025.07-rc5Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2025-06-23arm: kirkwood: fix freeze on bootJerome Forissier
Commit 6fe50e395080 ("arm: asm/system.h: mrc and mcr need .arm if __thumb2__ is not set") is not a proper fix for the LTO link error mentioned in its description. It causes 32-bit arm instructions to be mixed with thumb instructions, which the Kirkwood SoCs do not support. For example, board_init_r() is mostly generated in Thumb-1 mode as expected since the build flags contain -mthumb -mthumb-interwork. The MCR instruction corresponding to writefr_extra_feature_reg() is also correcly emitted as a 32-bit ARM instruction (it cannot be encoded in Thumb-1 anyways). The problem is, the compiler inlines the MCR without generating the BX or BLX instruction which are needed to transition between the ARM and the Thumb-1 states. From the objdump output: 006186a0 <board_init_r>: board_init_r(): /home/jerome/work/u-boot/common/board_r.c:799 6186a0: b5f0 push {r4, r5, r6, r7, lr} 6186a2: b0ab sub sp, #172 @ 0xac get_gd(): /home/jerome/work/u-boot/./arch/arm/include/asm/global_data.h:127 6186a4: 464a mov r2, r9 ... /home/jerome/work/u-boot/arch/arm/mach-kirkwood/cpu.c:242 619aae: 9b15 ldr r3, [sp, #84] @ 0x54 writefr_extra_feature_reg(): /home/jerome/work/u-boot/./arch/arm/include/asm/arch/cpu.h:100 619ab0: ee2f3f11 mcr 15, 1, r3, cr15, cr1, {0} ^^^^^^^^ 32-bit ARM instruction Further investigation is needed to understand how to fix the issue so that the code size is minimal for all boards. In the mean time, this fix disables LTO for the two problematic files (common/board_f.c and common/board_r.c). This makes the Kirkwood-based boards bootable again. The binary size is increased by 1048 bytes which is perfectly acceptable. Fixes: 6fe50e395080 ("arm: asm/system.h: mrc and mcr need .arm if __thumb2__ is not set") Reported-by: Tony Dinh <mibodhi@gmail.com> Tested-by: Tony Dinh <mibodhi@gmail.com> Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Tom Rini <trini@konsulko.com>
2025-06-22Merge patch series "rsa and fit_check_sign build fix for v2025.07-rc"Tom Rini
Shiji Yang <yangshiji66@outlook.com> says: This patchset fixes some compilation errors that I caught in version v2025.07-rc4 and branch next. If they are acceptable, please apply them to the master branch. If anyone has a better way to fix these issues, it's fine to ignore this patchset. Link: https://lore.kernel.org/r/OSBPR01MB16702ED24460D23A7ED63440BC7DA@OSBPR01MB1670.jpnprd01.prod.outlook.com
2025-06-22tools/fit_check_sign: make the module dependent on CONFIG_FIT_SIGNATUREShiji Yang
The function definition of fit_check_sign() is guarded by "#ifdef CONFIG_FIT_SIGNATURE" in "tools/image-host.c". If we try to build it without CONFIG_FIT_SIGNATURE, we will get an error: /usr/bin/ld: tools/fit_check_sign.o: in function `main': fit_check_sign.c:(.text.startup+0x165): undefined reference to `fit_check_sign' collect2: error: ld returned 1 exit status Fixes: 9c79c8fe70da ("tools/fit_check_sign: make key optional") Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-06-22lib: rsa: fix compilation error without opensslShiji Yang
The symbol TOOLS_IMAGE_PRE_LOAD doesn't depend on TOOLS_LIBCRYPTO. If we choose to build tools without openssl, rsa_verify_openssl() will attempt to call the unavailable openssl library functions. Fixes: 942c8c8e6697 ("rsa: Add rsa_verify_openssl() to use openssl for host builds") Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-06-22net: designware: fix bus address dereferenceBaruch Siach
Device bus address might not be valid for direct access when the bus address and CPU address are not the same. Use dev_bus_to_phys() to translate bus address back to CPU address. Fixes: 3d98b8c504e15 ("net: designware: Invalidate RX buffer cache before freeing the DMA descriptor") Signed-off-by: Baruch Siach <baruch@tkos.co.il> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2025-06-22board: samsung: e850-96: Load LDFW in board_late_init()Sam Protsenko
As stated in 5e847f7729b3 ("efi_loader: call efi_init_early() earlier"): efi_init_early() creates an event hook for block device probing. It has to be called before any block device is probed. Indeed, efi_bl_init() registers EVT_DM_POST_PROBE event, which calls efi_disk_probe() whenever any block device is probed. And to make that hook work, the initialization of all block devices was put after efi_init_early() in initcall_run_r(): INITCALL(efi_init_early); INITCALL(initr_nand); INITCALL(initr_onenand); INITCALL(initr_mmc); Because LDFW firmware is being read from MMC, attempt to load LDFW in board_init() causes MMC driver to be probed. And because board_init() is executed before efi_init_early(), the hook mentioned above won't work for MMC devices anymore. So EFI disk objects won't be created, which in turn makes the EFI subsystem non-functional, showing next symptoms: - 'efidebug dh' output is empty - attempt to add boot devices in 'eficonfig' shows this message: "No block device found!" - 'bootefi selftest $fdtcontroladdr' shows this warning: "Cannot persist EFI variables without system partition" - booting GRUB with 'bootefi' runs minimal GRUB shell which doesn't see any block devices as well, probably because EFI vars weren't passed Load LDFW in board_late_init() instead, as it's called after efi_init_early(). This fixes the described problem and makes it possible to run EFI apps like GRUB correctly, add entries in 'eficonfig', and makes 'efivar --list' command in Linux rootfs actually show EFI variables. The only user of LDFW at the moment is the TRNG driver, and it's probed later, only when it's going to be used (e.g. on "rng" command). So it's fine to load LDFW in board_late_init(). Now the corresponding call order will look like this: efi_init_early() initr_mmc() mmc_probe() EVT_DM_POST_PROBE -> efi_disk_probe() board_late_init() load_ldfw() -> fs_read(), blk_dread() exynos_trng_probe() Fixes: ccfd8de541a8 ("board: samsung: e850-96: Report LDFW loading failures") Fixes: f04e58cc9788 ("board: samsung: e850-96: Load LDFW firmware on board init") Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
2025-06-21Merge tag 'doc-2025-07-rc5' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request doc-2025-07-rc5 * in wget documentation remove erroneous note about CAs
2025-06-21doc: cmd: wget: remove erroneous noteJerome Forissier
The note about U-Boot not being able to verify server certificates is false now that WGET_CACERT and WGET_BUILTIN_CACERT have been added. Remove it. Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2025-06-21arm: kirkwood: Maintainer for RaidSonic ICY BOX ib62x0 boardTony Dinh
Add me as maintainer for the RaidSonic ICY BOX ib62x0. Signed-off-by: Tony Dinh <mibodhi@gmail.com>
2025-06-19Merge patch series "common/spl fixes"Tom Rini
This series from Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu> fixes some regressions related to handling of FIT images with broken contents that was introduced in this merge window. Link: https://lore.kernel.org/r/20250610095632.1085431-1-mikhail.kshevetskiy@iopsys.eu
2025-06-19common/spl: improve error handling in spl_fitMikhail Kshevetskiy
This fix a possible NULL pointer dereference. There is also a risk of memory leaking within the same portion of code. The leak will happen if loaded image is bad or damaged. In this case u-boot-spl will try booting from the other available media. Unfortunately resources allocated for previous boot media will NOT be freed. We can't fix that issue as the memory allocation mechanism used here is unknown. It can be different kinds of malloc() or something else. To somewhat reduce memory consumption, one can try to reuse previously allocated memory as it's done in board_spl_fit_buffer_addr() from test/image/spl_load.c. The corresponding comment was put to the code as well. Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu> Reviewed-by: Anshul Dalal <anshuld@ti.com>
2025-06-19common/spl: handle properly images with bad checksumMikhail Kshevetskiy
load_simple_fit() returns -EPERM for the images with broken signatures. Unfortunately this may conflict with image loaging selection on the base of boot phase. See commit 873112db9ce68c38984ff25808dde726f8dd5573 ("spl: Support selecting images based on phase in simple FIT"). Thus loading of configurations { uboot { description = "u-boot"; firmware = "atf"; loadables = "atf", "tee", "uboot"; }; }; with damaged "tee" image may finish without errors. This may results in board bricking. This patch fixes commit 873112db9ce68c38984ff25808dde726f8dd5573 ("spl: Support selecting images based on phase in simple FIT") by replacing EPERM with EBADSLT places where it should be done. Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
2025-06-19common/spl: fix potential out of buffer access in spl_fit_get_image_name ↵Mikhail Kshevetskiy
function The current code have two issues: 1) ineffective NULL pointer check str = strchr(str, '\0') + 1 if (!str || ... The str here will never be NULL (because we add 1 to result of strchr()) 2) strchr() may go out of the buffer for the special forms of name variable. It's better use memchr() function here. According to the code the property is a sequence of C-string like shown below: 'h', 'e', 'l', 'l', 'o', '\0', 'w', 'o', 'r', 'l', 'd', '\0', '!', '\0' index is the string number we are interested, so index = 0 => "hello", index = 1 => "world", index = 2 => "!" The issue will arrise if last string for some reason have no terminating '\0' character. This can happen for damaged or specially crafted dtb. Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu> Reviewed-by: Tom Rini <trini@konsulko.com>
2025-06-19arm/airoha: reset_cpu() does not take any paramsMikhail Kshevetskiy
According to include/sysreset.h the reset_cpu() function does not take any args Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu> Reviewed-by: Tom Rini <trini@konsulko.com>
2025-06-19Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-shTom Rini
- Move early SPL stack on R-Car V4H boards
2025-06-18arm64: renesas: Move early SPL stack into System RAM SRAM on R-Car V4H boardsMarek Vasut
The CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0xeb300000 does not make it into board .config on either R-Car V4H White Hawk or Sparrow Hawk, remove this configuration option. The early SPL stack is however pointing into the RT-VRAM and may corrupt payload loaded into the RT-VRAM by the BootROM. Set the early SPL stack at fixed location at the end of System RAM instead, where it cannot interfere with the payload loaded into RT-VRAM. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2025-06-17Merge patch series "Restore support of short name for type UUID parameter"Tom Rini
Patrick Delaunay <patrick.delaunay@foss.st.com> says: Fix and add documentation/tests for selection by string for known partition type GUID introduced by bcb41dcaefac ("uuid: add selection by string for known partition type GUID"): - split list_guid for short name (used also for partiton description with type parameter) and full name to display information - as the function are uuid_str_to_bin() / uuid_guid_get_str() are no more under CONFIG_PARTITION_TYPE_GUID, since commit 31ce367cd100 ("lib/uuid.c: change prototype of uuid_guid_get_str()") and commit c1528f324c60 ("lib: compile uuid_guid_get_str if CONFIG_LIB_UUID=y") move the content of array under EFI_PARTITION and linker will remove it is not used it (in SPL) - Add and fix documentation for gpt command - Add test test_gpt_write_part_type to test "type=" parameters This first patch solves an issue for the "system" shortcut for ESP, removed by commit d54V3 version solve issue for "ESP" support when CONFIG_CMD_EFIDEBUG and CONFIG_EFI is not activated for example for test with qemu-arm-sbsa defconfige1004b8b1 ("lib/uuid.c: use unique name for PARTITION_SYSTEM_GUID") but used in 2 location (at least): 1- board/samsung/e850-96/e850-96.env:10: partitions=name=esp,start=512K,size=128M,bootable,type=system; partitions+=name=rootfs,size=-,bootable,type=linux 2- arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.c:1151 case PART_ESP: /* EFI System Partition */ 459219 type_str = "system" .... offset += snprintf(buf + offset, buflen - offset, ",type=%s", type_str); CI: https://source.denx.de/u-boot/custodians/u-boot-stm/-/pipelines/26699 Link: https://lore.kernel.org/r/20250616112749.17311-1-patrick.delaunay@foss.st.com
2025-06-17test/py: tests: gpt: add test_gpt_write_part_typePatrick Delaunay
Add sandbox test on gpt command with partition type for known type. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2025-06-17doc: cmd: gpt: add information on type partitionPatrick Delaunay
Add information on type partition, copied from README.gpt. I also correct issue for gpt_parts variable and add example of "gpt read" usage. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2025-06-17lib/uuid.c: restore support of system partition type for ESPPatrick Delaunay
Add support of optional shortname for parameter 'type' of gpt command (limited by UUID_STR_LEN) and a separate 'description' for UID format "%pUs" used in 'part list' output. When 'description' is absent in list_guid[], the optional shortname is used as fallback. Many partition types for EFI have no shortcut yet, but only description as they are only used to display information. This patch also restores the "system" as short name for EFI System Partition (ESP). Fixes: d54e1004b8b1 ("lib/uuid.c: use unique name for PARTITION_SYSTEM_GUID") Tested-by: Patrice Chotard <patrice.chotard@foss.st.com> Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
2025-06-16Merge tag 'u-boot-dfu-20250616' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-dfu u-boot-dfu-20250616 CI: https://source.denx.de/u-boot/custodians/u-boot-dfu/-/pipelines/26696 Usb gadget: - Fix ti_musb driver in gadget mode (with DM_USB_GADGET) DFU: - mmc/scsi backends when using 10 or more partitions
2025-06-16usb: gadget: musb: Fix duplicate ops assignment in ti_musb_peripheralKory Maincent
Remove duplicate .ops assignment that was overriding the correct ti_musb_gadget_ops with musb_usb_ops (host ops) in the ti_musb_peripheral driver. This was causing U-Boot crashes when trying to call the handle_interrupts operation since the wrong ops structure was being used. Fixes: 7d98dbcc3dc ("usb: musb-new: Add support for DM_USB") Fixes: 281eaf1ed83a ("usb: gadget: musb: Convert interrupt handling to usb_gadget_generic_ops") Signed-off-by: Kory Maincent <kory.maincent@bootlin.com> Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org> Link: https://lore.kernel.org/r/20250611171031.840277-1-kory.maincent@bootlin.com Signed-off-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
2025-06-16dfu: fix dev_part_str for file operationsIvan Pang
The third_arg for a dfu alt is read as an integer and is overloaded for different supported backends. For ext4 and fat, this third_arg represents the partition and forms the dev part string, which should have its partition in hex. This commit fixes dfu ext4/fat usage for devices with ten or more partitions. Signed-off-by: Ivan Pang <ipman@amazon.com> Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org> Reviewed-by: Lukasz Majewski <lukma@denx.de> Link: https://lore.kernel.org/r/20250611050127.38011-1-ipman@amazon.com Signed-off-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
2025-06-15Merge tag 'rpi-2025.07-rc4' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-raspberrypi Updates for RPi for 2025.07-rc5: - configs: rpi: set NR_DRAM_BANKS to 8 to accommodate RAM on 16GB models
2025-06-15arm: dts: rockchip: Fix eMMC write on RK3528Jonas Karlman
Writing to eMMC on RK3528 is affected with the same or a similar issue as on RK3588, where eMMC must init to HS200 at least once to fully work. Trying to write u-boot-rockchip.bin to eMMC fails with: => mmc write $fileaddr 40 5000 MMC write: dev # 0, block # 64, count 20480 ... mmc write failed 0 blocks written: ERROR For U-Boot to enable HS200 mode the mmc-hs200-1_8v prop must be defined in the device tree. Linux does not seem to be affected and is able to detect and use HS200 without this prop. Enable use of HS200 and fix eMMC write on RK3528 by adding the missing mmc-hs200-1_8v prop for affected boards: => mmc write $fileaddr 40 5000 MMC write: dev # 0, block # 64, count 20480 ... 20480 blocks written: OK Fixes: b112a44531cb ("board: rockchip: Add minimal generic RK3528 board") Fixes: ccbddf645310 ("board: rockchip: Add Radxa E20C") Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
2025-06-15configs: rpi: set NR_DRAM_BANKS to 8 to accommodate RAM on 16GB modelsJan Čermák
Raspberry Pi 5 can now have up to 16 GiB of RAM where the memory spans 8 DRAM banks in total. Increase the config value to 8 to initialize the whole RAM. Without this change, kernel only sees 8 GiB of RAM on the 16 GiB CM5 as reported in [1]. [1] https://github.com/home-assistant/operating-system/issues/3989 Signed-off-by: Jan Čermák <sairon@sairon.cz> Reviewed-by: Matthias Brugger <mbrugger@suse.com>
2025-06-13sandbox: solve undefined reference to pthread_kill symbolRaymond Mao
This patch is to solve the sandbox building error: $ make O=build-sandbox -s sandbox_defconfig $ make O=build-sandbox -s -j2 /usr/bin/ld: /tmp/u-boot.27rzOu.ltrans58.ltrans.o: undefined reference to symbol 'pthread_kill@@GLIBC_2.2.5' /usr/bin/ld: /lib/x86_64-linux-gnu/libpthread.so.0: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status [...] Fixes: b989f9ed9fe1 ("test: lib: add initjmp() test") Signed-off-by: Raymond Mao <raymond.mao@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Tested-by: Patrice Chotard <patrice.chotard@foss.st.com>
2025-06-12test/py: Correct handling of exceptionsSimon Glass
If an Unexpected exception is thrown in a test, an undefined variable error is reported. Fix this. Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: 85d7dae377a ("test: Detect dead connections") Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
2025-06-12test/py: Use the correct fixture name in exception handlerSimon Glass
If a BootFail exception is thrown in a test, it is not handled correctly. Use the correct fixture variable 'ubman_fix' to resolve this. Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: d9ed4b75add ("test/py: Drop u_boot_ prefix on test files") Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
2025-06-12toradex-smarc-imx8mp: add SPL_STACK size and SPL_HAVE_INIT_STACKHiago De Franco
When the toradex-smarc-imx8mp_defconfig file was first added, SPL_STACK was set to 0x960000, but SPL_HAVE_INIT_STACK wasn't enabled. This led to SPL_STACK being correctly dropped in commit 25fefa05d732 ("configs: Resync with savedefconfig"), since SPL_HAVE_INIT_STACK was missing, which ended up making the board not boot. Fix this by adding SPL_STACK back and making sure SPL_HAVE_INIT_STACK is enabled. Fixes: dde53eae88d6 ("board: toradex: add Toradex SMARC iMX8MP") Signed-off-by: Hiago De Franco <hiago.franco@toradex.com> Acked-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2025-06-12board: var-som-mx8mn: Fix alloc space exhausted in SPLHugo Villeneuve
After enabling some options to support EEPROM read in SPL (CONFIG_SPL_I2C_EEPROM), the following error appears: alloc space exhausted Increasing SYS_MALLOC_F_LEN from 8kB to 64kB fixes the problem. But instead of manually increasing the value, adopt method used in commit ce3f23404c19 ("board: bsh: imx8mn_bsh_smm_s2/s2pro: enlarge CONFIG_SPL_SYS_MALLOC_F_LEN"): Dropping CONFIG_SPL_SYS_MALLOC_F_LEN option allows it to be set to the default value of CONFIG_SYS_MALLOC_F_LEN, which is set by default to 64kB (0x10000) on i.MX8M platforms. Suggested-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2025-06-12imx91: Drop OF_UPSTREAMPeng Fan
i.MX91 device tree still not landed in linux kernel, so drop OF_UPSTREAM and move the device tree files to arch/arm/dts Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Sumit Garg <sumit.garg@oss.qualcomm.com>
2025-06-11mmc: Kconfig: Really correct dependencies SDHCI ADMA optionsTom Rini
When doing the investigation for commit 53bb8fdea12a ("mmc: Kconfig: Correct dependencies SDHCI ADMA options") I missed the implications of MMC_SDHCI_ADMA_HELPERS. The problem is that FSL_ESDHC via the FSL_ESDHC_SUPPORT_ADMA2 option will also enable these helper functions. This in turn means the correct dependency here is MMC_SDHCI_ADMA_HELPERS and not *MMC_SDHCI_ADMA. Reported-by: Heiko Thiery <heiko.thiery@gmail.com> Signed-off-by: Tom Rini <trini@konsulko.com>
2025-06-10Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-shTom Rini
One more board to support, this time Retronix Sparrow Hawk based on Renesas R-Car V4H SoC . This is board support, so master branch should be fine. The DT in dts/upstream/ is a backport from Linux, and will disappear on next DT sync.