]> git.ipfire.org Git - thirdparty/u-boot.git/log
thirdparty/u-boot.git
33 hours agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh master
Tom Rini [Tue, 23 Dec 2025 17:17:37 +0000 (11:17 -0600)] 
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh

- net: ravb: Configure CXR31 and CXR35 on rzg2l

36 hours agonet: ravb: Configure CXR31 and CXR35 on rzg2l
Mathieu Othacehe [Wed, 10 Dec 2025 14:17:04 +0000 (15:17 +0100)] 
net: ravb: Configure CXR31 and CXR35 on rzg2l

As in Linux with d78c0ced60 ("net: ravb: Make write access to CXR35 first
before accessing other EMAC register"), configure CXR31 and CXR35 correctly
on rzg2. MII mode does not work correctly unless those registers are
properly configured.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2 days agoPrepare v2026.01-rc5 v2026.01-rc5
Tom Rini [Mon, 22 Dec 2025 22:26:11 +0000 (16:26 -0600)] 
Prepare v2026.01-rc5

Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agodrivers: scsi: fix double decrement of block count in 64-bit LBA path
Balaji Selvanathan [Mon, 22 Dec 2025 09:01:05 +0000 (14:31 +0530)] 
drivers: scsi: fix double decrement of block count in 64-bit LBA path

The scsi_read function incorrectly decrements the block count twice
when handling large disks that trigger the CONFIG_SYS_64BIT_LBA code
path (reads beyond block 268,435,455). The variable 'blks' was being
decremented both inside the 64-bit LBA block and after the successful
scsi_exec() call, causing incorrect block count tracking and data
abort errors on large capacity disks.

Signed-off-by: Balaji Selvanathan <balaji.selvanathan@oss.qualcomm.com>
Tested-by: Tony Dinh <mibodhi@gmail.com>
2 days agofix PL330 CMD supported target
Brian Sune [Mon, 22 Dec 2025 14:27:44 +0000 (22:27 +0800)] 
fix PL330 CMD supported target

The config is wrongly written, result
in only support socdk board.

Fixes: 92dcb3ad5d98 ("cmd/dma: implement dmareset command")
Signed-off-by: Brian Sune <briansune@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
6 days agotest/py, buildman: Update filelock package version
Tom Rini [Tue, 16 Dec 2025 22:19:35 +0000 (16:19 -0600)] 
test/py, buildman: Update filelock package version

The GitHub dependabot tool has reported a "medium" priority bug
CVE-2025-68146, with this package. Update to the patched version.

Reported-by: GitHub dependabot
Signed-off-by: Tom Rini <trini@konsulko.com>
6 days agodoc: pytest: fix typo in multiple config options example for buildconfigspec
Quentin Schulz [Wed, 17 Dec 2025 14:02:27 +0000 (15:02 +0100)] 
doc: pytest: fix typo in multiple config options example for buildconfigspec

The option should be 'net_lwip' and not 'net lwip' (see all usage of it
in the test code base).

Fixes: 2bac578c5aba ("test: allow multiple config options in buildconfigspec")
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
6 days agocmd: nvedit: Validate argument count before use
Marek Vasut [Wed, 17 Dec 2025 19:57:38 +0000 (20:57 +0100)] 
cmd: nvedit: Validate argument count before use

Avoid NULL pointer dereference in case 'env select' is invoked
without parameters, check the arg count and make sure it is at
least 2, otherwise print usage.

The crash is easy to trigger e.g. in sandbox:
$ ./u-boot -Tc "env select"

Fixes: a97d22ebba23 ("cmd: env: add env select command")
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Tested-by: Vincent Stehlé <vincent.stehle@arm.com>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
6 days agodoc: board: ti: fix alt name for tispl.bin in DFU mode
Anshul Dalal [Thu, 18 Dec 2025 05:01:55 +0000 (10:31 +0530)] 
doc: board: ti: fix alt name for tispl.bin in DFU mode

The alt name for tispl binary is "tispl.bin" and not "tispl", this patch
fixes the documentation to the correct alt name.

Fixes: def64b493748 ("doc: board: Add document for DFU boot on am62x SoCs")
Fixes: 3633fdbb6b90 ("ti: add support for AM6254atl SiP")
Signed-off-by: Anshul Dalal <anshuld@ti.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
6 days agoMerge tag 'net-20251218' of https://source.denx.de/u-boot/custodians/u-boot-net
Tom Rini [Thu, 18 Dec 2025 16:24:39 +0000 (10:24 -0600)] 
Merge tag 'net-20251218' of https://source.denx.de/u-boot/custodians/u-boot-net

Pull request net-20251218.

net-lwip:
- Avoid NULL dereference in _set_cacert()
- Fix filename handling in TFTP

6 days agocmd: lwip/wget: avoid NULL dereference in _set_cacert()
Heinrich Schuchardt [Mon, 1 Dec 2025 15:17:24 +0000 (16:17 +0100)] 
cmd: lwip/wget: avoid NULL dereference in _set_cacert()

Running `wget cacert builtin` leads to a crash in _set_cacert():

    Unhandled exception: Load access fault

Function _set_cacert() dereferences variable wget_info.
We must initialize it before executing the cacert sub-command.

Fixes: d3761a31ef09 ("lwip: split net/lwip/wget.c")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
6 days agonet: lwip: tftp: Fix filename handling
Andrew Goodbody [Fri, 5 Dec 2025 17:28:36 +0000 (17:28 +0000)] 
net: lwip: tftp: Fix filename handling

The code to choose the filename to use does not cope with no name set at
all. Firstly the test for a name in net_boot_file_name tests the pointer
rather than the string it points to. Secondly the cleanup on exit in
this case attempts to free a global variable. Fix both issues.

Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
8 days agocmd: part: Fix part argument description for `part number`
Jonathan GUILLOT [Thu, 11 Dec 2025 21:20:39 +0000 (22:20 +0100)] 
cmd: part: Fix part argument description for `part number`

Signed-off-by: Jonathan GUILLOT <jonathan@joggee.fr>
Fixes: ff6ef4b9093f ("doc: man-page for the part command")
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
8 days agoclk: mediatek: remove duplicate '@parent' field doc
David Lechner [Thu, 11 Dec 2025 21:05:27 +0000 (15:05 -0600)] 
clk: mediatek: remove duplicate '@parent' field doc

Remove duplicate '@parent' field documentation in struct mtk_composite.
There is no need to say the same thing twice.

Also fix spelling mistake in the word "parent" while we're at it.

Signed-off-by: David Lechner <dlechner@baylibre.com>
8 days agotools/libfdt/fdt_rw: fix SPDX-License-Identifier
Max Merchel [Tue, 26 Aug 2025 06:30:29 +0000 (08:30 +0200)] 
tools/libfdt/fdt_rw: fix SPDX-License-Identifier

Currently, the terms of both licenses (GPL 2.0 and BSD-2-Clause) must be
met.
However, before switching to the SPDX license identifier, the license
information in the file begins with:

"libfdt is dual licensed: you can use it either under the terms of
the GPL, or the BSD license, at your option."

Therefore, the missing "OR" between the licenses is added.

Fixes: 3508476 ("libfdt: SPDX-License-Identifier: GPL-2.0+ BSD-2-Clause")
Signed-off-by: Max Merchel <Max.Merchel@ew.tq-group.com>
9 days agoMerge tag 'u-boot-rockchip-20251214' of https://source.denx.de/u-boot/custodians...
Tom Rini [Mon, 15 Dec 2025 17:20:43 +0000 (11:20 -0600)] 
Merge tag 'u-boot-rockchip-20251214' of https://source.denx.de/u-boot/custodians/u-boot-rockchip

CI: https://source.denx.de/u-boot/custodians/u-boot-rockchip/-/pipelines/28748

Please pull the updates for rockchip platform:
- New Board support: rk3588 Radxa ROCK 5T, ROCK 5B+;
- I2C Fixes;
- RAM boot from maskrom;

11 days agorockchip: mkimage: enhance comments for v1 header
Quentin Schulz [Wed, 12 Nov 2025 14:58:00 +0000 (15:58 +0100)] 
rockchip: mkimage: enhance comments for v1 header

Improve the image header documentation for v1 header:

- specify this applies to all MMC, not only SD cards,
- specify the offset for SPI flashes,
- specify the key used for RC4 encoding,
- specify what "init" refers to, especially since some configs enable
  TPL,
- specify what "init_boot_size" refers to, especially since some configs
  enable TPL,
- specify the size of a block,
- add documentation for init_size and init_boot_size,

Note that the offset on the storage medium isn't necessarily 32KiB (64
blocks) for MMC or 0 for SPI flashes, it's just the first offset the
BootROM checks. Barebox[1] lists a few options, though those are
applicable to RK35xx which use the v2 header, so not guaranteed they can
be shared. On RK3399, the binary can at least be stored at offset 0 and
32KiB on SPI flashes.

[1] https://git.pengutronix.de/cgit/barebox/tree/arch/arm/mach-rockchip/bbu.c#n19

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
11 days agorockchip: i2c: fix illegal I2C START/STOP condition
Quentin Schulz [Fri, 7 Nov 2025 11:39:19 +0000 (12:39 +0100)] 
rockchip: i2c: fix illegal I2C START/STOP condition

In the last message sent in rockchip_i2c_xfer, the controller is
disabled (see rk_i2c_disable() in rk_i2c_read()/rk_i2c_write()), then
the STOP condition is sent (see rk_i2c_send_stop_bit() in
rockchip_i2c_xfer()) and the controller is disabled once again (see
rk_i2c_disable() right after).

The issue is that re-enabling the controller just to send the STOP
condition doesn't work. When, the controller is disabled, the SCL and
SDA lanes are not driven anymore and thus enter the idle mode where they
are kept high by the external HW pull-up. To send a STOP condition, one
needs to drive the SDA line so that a rising edge happens while SCL is
high. Experimentally (on PX30 and RK3399), when enabling the controller
to send a STOP condition after it's been disabled, the controller only
drives the SDA line to trigger the rising edge for the STOP condition,
leaving SCL undriven (and thus, high). This means, that because SDA is
high before this happens and that we need a rising edge, the controller
drives the SDA line low and then releases it, meaning we trigger a START
condition followed by a STOP condition:

SCL
        _________
_____...
        __  _____
_____...  \/
SDA
    ^ STOP
  ^ START

This is illegal in I2C protocol[1]:

 5. A START condition immediately followed by a STOP condition (void
    message) is an illegal format. Many devices however are designed to
    operate properly under this condition.

My guess is that the I2C controller IP knows that it makes only sense to
send a STOP condition after a START condition, meaning the controller is
already driving the SCL line low and neither the device nor controller
drive the SDA line after the last ACK/NACK as there's no need to, then
it needs to drive SDA, release SCL to make it high and then release the
SDA line. However, after it's been disabled, the SCL is already released
so the controller only essentially drives SDA and then releases it.

It happens that this seems to be breaking the SE050 Secure Element after
a few transfers in the middle of a transfer where it starts clock
stretching the bus forever. It may be related to Errata 3.2[2] but the
description of the setup isn't an exact match to the current situation.

It seems to be required to disable the I2C controller between messages
as the Linux kernel states that "The HW is actually not capable of
REPEATED START. But we can get the intended effect by resetting its
internal state and issuing an ordinary START.". Between messages, this
logic seems fine as I get an Sr (repeated START condition) before
starting the next message in the transfer without a STOP condition.
However, we should NOT disable the controller after the last message in
the transfer otherwise we do this illegal START condition followed by
the STOP condition, hence the added check.

[1] https://www.nxp.com/docs/en/user-guide/UM10204.pdf 3.1.10 The target address and R/W bit point 5
[2] https://www.nxp.com/docs/en/errata/SE050_Erratasheet.pdf

Fixes: c9fca5ec8849 ("rockchip: i2c: don't sent stop bit after each message")
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Heiko Schocher <hs@nabladev.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
11 days agorockchip: i2c: move ACK comment where it applies
Quentin Schulz [Fri, 7 Nov 2025 11:39:18 +0000 (12:39 +0100)] 
rockchip: i2c: move ACK comment where it applies

The I2C_CON_LASTACK is kind of a misnomer as setting it means sending a
NACK as last byte acknowledge when the controller is in receive mode. It
should therefore be used only when there's no more data to transfer
after this.

Move the comment in the proper if block.

Sync the comment with the Linux kernel's while at it so it's more
explicit.

Fixes: 5deaa530280f ("rockchip: i2c: fix >32 byte reads")
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Heiko Schocher <hs@nabladev.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
11 days agorockchip: i2c: fix incorrect STOP flag for the interrupt enable register
Quentin Schulz [Fri, 7 Nov 2025 11:39:17 +0000 (12:39 +0100)] 
rockchip: i2c: fix incorrect STOP flag for the interrupt enable register

I2C_CON_STOP is a flag to be used for the con register, where it is bit
4 to send the STOP condition.

To enable the interrupt the controller sends to tell it's finished
sending the STOP condition, it's the ien register at bit 5.

Let's use the proper offset.

My hunch is that enabling the interrupt is useless as the interrupt
status register is always up-to-date and enabling the interrupt is just
so that the interrupt is available via the GIC. However, U-Boot has no
interrupt support and the logic was working well before this patch. This
is just so people aren't side-tracked when debugging I2C issues on
Rockchip by checking all writes are proper.

Fixes: 3437469985df ("rockchip: Add I2C driver")
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Heiko Schocher <hs@nabladev.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
11 days agorockchip: rock5b-rk3588: Add support for Radxa ROCK 5T
FUKAUMI Naoki [Fri, 7 Nov 2025 06:47:16 +0000 (06:47 +0000)] 
rockchip: rock5b-rk3588: Add support for Radxa ROCK 5T

Include the FDT for Radxa ROCK 5T in the FIT, in addition to those for
5B and 5B+, and add board selection code to load the 5T FDT when the
DRAM type is LPDDR5 and ADC channel 5 value is close to 1016.

Signed-off-by: FUKAUMI Naoki <naoki@radxa.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
11 days agorockchip: rock5b-rk3588: Add support for ROCK 5B+
Jonas Karlman [Fri, 1 Aug 2025 17:09:28 +0000 (17:09 +0000)] 
rockchip: rock5b-rk3588: Add support for ROCK 5B+

Include FDTs for both ROCK 5B and 5B+ in the FIT and add board selection
code to load the 5B+ FDT when the DRAM type is LPDDR5 and ADC channel 5
value is close to 4095.

  U-Boot 2025.07 (Jul 14 2025 - 21:28:20 +0000)

  Model: Radxa ROCK 5B+
  SoC:   RK3588
  DRAM:  8 GiB

Features tested on a ROCK 5B+ v1.2:
- SD-card boot
- eMMC boot
- SPI flash boot
- PCIe/NVMe
- Ethernet
- USB/TCPM

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
11 days agorockchip: sdram: Add rockchip_sdram_type() helper
Jonas Karlman [Fri, 1 Aug 2025 17:09:27 +0000 (17:09 +0000)] 
rockchip: sdram: Add rockchip_sdram_type() helper

Add a helper function based on rockchip_sdram_size() that return what
DRAM type is used on current running board.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
11 days agorockchip: Add support for RAM boot from maskrom mode
Jonas Karlman [Sat, 2 Aug 2025 22:07:23 +0000 (22:07 +0000)] 
rockchip: Add support for RAM boot from maskrom mode

The BootROM in Rockchip SoCs will enter maskrom mode when boot firmware
cannot be found in nand/spi/mmc storage.

In maskrom mode the USB OTG port can accept one of two custom commands.

Initially a 0x471 command to load TPL into SRAM. After TPL has been
executed and it has returned back-to-BROM, a 0x472 command to load SPL
into start of DRAM.

Add two binman images that can be used to RAM boot from maskrom mode:
- u-boot-rockchip-usb471.bin that contains TPL to init DRAM.
- u-boot-rockchip-usb472.bin that contains SPL and the normal FIT
  payload with i.e. U-Boot proper, TF-A and FDT.

A config fragment rockchip-ramboot.config can be used to enable building
of these two binman images, e.g.:

  make generic-rk3588_defconfig rockchip-ramboot.config

These binman images can be used with the proprietary rkbin boot_merger
tool to create a special loader image that can be used with tools such
as rkdeveloptool or rockusb tools to RAM boot from maskrom, e.g.:

  Create loader image:
    $ ../rkbin/tools/boot_merger ./RK3588MINIALL.ini

  Boot from maskrom:
    $ rkdeveloptool db u-boot-rockchip-rk3588-loader.bin
   or
    $ rockusb download-boot u-boot-rockchip-rk3588-loader.bin

Another option that does not require use of proprietary tools is using
open source tools such as rkflashtool or rkusbboot that can load the
binman images directly without any need to first create a special loader
image to RAM boot from maskrom, e.g.:

  $ rkflashtool l < u-boot-rockchip-usb471.bin
  $ rkflashtool L < u-boot-rockchip-usb472.bin
 or
  $ rkusbboot u-boot-rockchip-usb471.bin u-boot-rockchip-usb472.bin

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Tested-by: Arnaud Patard <arnaud.patard@collabora.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
11 days agorockchip: Move TEXT_BASE to 8 MiB offset from start of DRAM
Jonas Karlman [Sat, 2 Aug 2025 22:07:22 +0000 (22:07 +0000)] 
rockchip: Move TEXT_BASE to 8 MiB offset from start of DRAM

Drop SoC specific TEXT_BASE and use a common TEXT_BASE for all SoCs.

Move the common TEXT_BASE to 8 MiB offset from start of DRAM to help
support RAM boot from maskrom introduced in next patch.

RAM boot from maskrom mode will expect the FIT payload to be located at
2 MiB offset from start or DRAM.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Tested-by: Arnaud Patard <arnaud.patard@collabora.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
11 days agoboard: theobroma-systems: jaguar_rk3588: explicit UART IOMUX
Quentin Schulz [Wed, 30 Jul 2025 12:46:35 +0000 (14:46 +0200)] 
board: theobroma-systems: jaguar_rk3588: explicit UART IOMUX

When one attempts to build Tiger and Jaguar from the same directory,
because Tiger will set the IOMUX to 2 but Jaguar doesn't reset it,
Jaguar will have IOMUX set to 2 if built after Tiger.

This isn't an issue if in separate directories or building Tiger after
Jaguar because the default if missing from the configuration file is 0.

Let's make it explicit that the iomux is 0 for Jaguar.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
11 days agoboard: theobroma-systems: add instructions for how to use upstream TF-A
Quentin Schulz [Wed, 30 Jul 2025 12:46:34 +0000 (14:46 +0200)] 
board: theobroma-systems: add instructions for how to use upstream TF-A

Upstream TF-A has support for RK3588 since v2.12 so let's document how
to use upstream TF-A instead of the prebuilt binary blob from Rockchip
if one wants to do that.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
11 days agoboard: theobroma-systems: update instructions for newer Rockchip rkbin
Quentin Schulz [Wed, 30 Jul 2025 12:46:33 +0000 (14:46 +0200)] 
board: theobroma-systems: update instructions for newer Rockchip rkbin

The instructions are regularly out of date because the generated or
prebuilt binaries are updated and the filename doesn't match our
instructions anymore.

Additionally, since commit 55a95caaef15 ("tools: ddrbin_tool: add
ddrbin_tool.py and update to v1.21 20241211") end of October 2024,
ddrbin_tool doesn't exist anymore and has been replaced by
ddrbin_tool.py python script (which currently isn't an executable) so
let's update these instructions as well.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
12 days agofs: fat: Perform sanity checks on getsize in get_fatent()
Tom Rini [Tue, 9 Dec 2025 21:23:01 +0000 (15:23 -0600)] 
fs: fat: Perform sanity checks on getsize in get_fatent()

We do not perform a check on the value of getsize in get_fatent to
ensure that it will fit within the allocated buffer. For safety sake,
add a check now and if the value exceeds FATBUFBLOCKS use that value
instead. While not currently actively exploitable, it was in the past so
adding this check is worthwhile.

This addresses CVE-2025-24857 and was originally reported by Harvey
Phillips of Amazon Element55.

Signed-off-by: Tom Rini <trini@konsulko.com>
12 days agoMerge tag 'efi-2026-01-rc5' of https://source.denx.de/u-boot/custodians/u-boot-efi
Tom Rini [Fri, 12 Dec 2025 14:48:50 +0000 (08:48 -0600)] 
Merge tag 'efi-2026-01-rc5' of https://source.denx.de/u-boot/custodians/u-boot-efi

Pull request efi-2026-01-rc5

CI: https://source.denx.de/u-boot/custodians/u-boot-efi/-/pipelines/28738

Documentation:

* Fix typos in the TI K3 board documentation.
* Describe the TI J742S2.

UEFI:

* Add EFI_PARTITION_INFO_PROTOCOL_GUID translation in the UUID library.

12 days agodoc: board: ti: k3: Fix a couple small typos
Andrew Davis [Mon, 8 Dec 2025 19:16:23 +0000 (13:16 -0600)] 
doc: board: ti: k3: Fix a couple small typos

s/Uenv.txt/uEnv.txt
s/then/than

Signed-off-by: Andrew Davis <afd@ti.com>
Reviewed-by: Bryan Brattlof <bb@ti.com>
12 days agodoc: board: ti: Add J742S2 support
Udit Kumar [Sun, 7 Dec 2025 13:22:30 +0000 (18:52 +0530)] 
doc: board: ti: Add J742S2 support

J742S2 SOC is derivative of J784S4, most of build infra of j784s4 is used
to build u-boot for J742S2 EVM board.

Add guide users on how to build for that board.

Signed-off-by: Udit Kumar <u-kumar1@ti.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
12 days agolib: uuid: add EFI_PARTITION_INFO_PROTOCOL_GUID translation
Heinrich Schuchardt [Sun, 7 Dec 2025 11:18:45 +0000 (12:18 +0100)] 
lib: uuid: add EFI_PARTITION_INFO_PROTOCOL_GUID translation

Add support for translating the EFI_PARTITION_INFO_PROTOCOL_GUID
to a text.

Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2 weeks agotools: use setuptools 78.1.1
Heinrich Schuchardt [Tue, 9 Dec 2025 22:32:38 +0000 (23:32 +0100)] 
tools: use setuptools 78.1.1

CVE-2025-47273 describes a path traversal vulnerability.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
2 weeks agotest: dm: fdtdec: Validate FDT size in unit test
Adriana Nicolae [Tue, 9 Dec 2025 15:55:38 +0000 (07:55 -0800)] 
test: dm: fdtdec: Validate FDT size in unit test

The current FDT decoding tests calculate the memory required
for FDT manipulation by directly adding a fixed margin to
fdt_totalsize(gd->fdt_blob). The static analyzer flagged
"gd->fdt_blob->totalsize" as a tainted value being passed
to fdt_open_into().

Ensure the size is validated by checking that the total size
is within a reasonable maximum FDT limit for unit tests.

Signed-off-by: Adriana Nicolae <adriana@arista.com>
2 weeks agoconfigs: am43xx: Migrate to CONFIG_SYS_MEM_TOP_HIDE from CFG_PRAM
Beleswar Padhi [Tue, 9 Dec 2025 05:50:43 +0000 (11:20 +0530)] 
configs: am43xx: Migrate to CONFIG_SYS_MEM_TOP_HIDE from CFG_PRAM

The TI AM43xx HS boards have been using CFG_PRAM to hide the top 64MB
firewalled DRAM memory from U-Boot. However, CFG_PRAM only prevents
U-Boot from relocating into that memory, but it is still open for access
for any other usage.

Therefore, migrate into using CONFIG_SYS_MEM_TOP_HIDE which reduces the
ram size itself ensuring that memory is not visible to U-Boot at all
(either for reloc, or general usage).

Signed-off-by: Beleswar Padhi <b-padhi@ti.com>
2 weeks agoMakefile: use --output-target instead of --target
Heinrich Schuchardt [Mon, 8 Dec 2025 20:47:38 +0000 (21:47 +0100)] 
Makefile: use --output-target instead of --target

The objcopy man-page teaches:

    --target=bfdname
      Use bfdname as the object format for
      both the input and the output file

This implies for --target=efi-app-x86_64 that the input file would have
to be an EFI app.

Objcopy in binutils 2.45 checks this more strictly than previous versions
and refuses to accept an ELF file as input with --target=efi-app-x86_64.

Replace --target by --output-target for building sandbox and x86 EFI
binaries.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
2 weeks agoMerge tag 'u-boot-stm32-20251209' of https://source.denx.de/u-boot/custodians/u-boot-stm
Tom Rini [Wed, 10 Dec 2025 15:05:27 +0000 (09:05 -0600)] 
Merge tag 'u-boot-stm32-20251209' of https://source.denx.de/u-boot/custodians/u-boot-stm

CI: https://source.denx.de/u-boot/custodians/u-boot-stm/-/pipelines/28704

_ Add 1 GiB DRAM support for STM32MP13x DHCOR SoM
_ Fix 512 MiB DRAM support for STM32MP13x DHCOR SoM
_ Fix handling OPTEE in middle of the DRAM
_ Add missing debug UART build for STM32MP1 DHSOM

2 weeks agoARM: stm32: Add missing build of debug UART init code on DH STM32MP1 DHSOM
Marek Vasut [Tue, 18 Nov 2025 23:17:23 +0000 (00:17 +0100)] 
ARM: stm32: Add missing build of debug UART init code on DH STM32MP1 DHSOM

Commit c37a6684818d ("stm32mp: fix compilation issue with DEBUG_UART")
split the debug UART initialization code into two files, but failed to
update other non-ST boards. This did not lead to noticeable breakage
until debug UART is enabled, which is not the default. Update the
Makefile accordingly to allow debug UART to work.

Fixes: c37a6684818d ("stm32mp: fix compilation issue with DEBUG_UART")
Signed-off-by: Marek Vasut <marek.vasut@mailbox.org>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2 weeks agoARM: dts: stm32: Add 1 GiB DRAM settings for DH STM32MP13xx DHCOR SoM
Marek Vasut [Tue, 18 Nov 2025 23:19:36 +0000 (00:19 +0100)] 
ARM: dts: stm32: Add 1 GiB DRAM settings for DH STM32MP13xx DHCOR SoM

Add DRAM settings for 1 GiB variant of DH STM32MP13xx DHCOR SoM
and support for SoM DRAM coding HW straps decoding and automatic
DRAM configuration selection. Enable CONFIG_BOARD_EARLY_INIT_F on
all STM32MP1 DHSOM, as it is required for the HW straps decoding.

Signed-off-by: Marek Vasut <marek.vasut@mailbox.org>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2 weeks agoARM: dts: stm32: Fix 512 MiB DRAM settings for DH STM32MP13xx DHCOR SoM
Marek Vasut [Tue, 18 Nov 2025 23:19:17 +0000 (00:19 +0100)] 
ARM: dts: stm32: Fix 512 MiB DRAM settings for DH STM32MP13xx DHCOR SoM

Update DRAM chip type and density comment for 512 MiB DRAM settings for
DH STM32MP13xx DHCOR DHSBC to match the chip on the SoM. No functional
change.

Signed-off-by: Marek Vasut <marek.vasut@mailbox.org>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2 weeks agostm32mp: Fix handling of OPTEE in the middle of DRAM
Marek Vasut [Tue, 18 Nov 2025 23:17:14 +0000 (00:17 +0100)] 
stm32mp: Fix handling of OPTEE in the middle of DRAM

STM32MP13xx may have OPTEE-OS at 0xdd000000 even on systems with 1 GiB
of DRAM at 0xc0000000, which is not the end of DRAM anymore. This puts
the OPTEE-OS in the middle of DRAM. Currently, the code sets RAM top to
0xdd000000 and prevents the DRAM range past OPTEE at 0xe0000000..0xffffffff
from being set as cacheable and from being usable. The code also sets the
area over OPTEE as invalid region in MMU tables, which is not correct.

Adjust the code such, that it only ever sets RAM top just before OPTEE
in case the OPTEE is really at the end of DRAM, mainly to be backward
compatible. Furthermore, adjust the MMU table configuration such, that
the regions over the OPTEE are simply skipped and not reconfigured, and
the regions between end of OPTEE and RAM top are set as cacheable, if
any actually exist.

Signed-off-by: Marek Vasut <marek.vasut@mailbox.org>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
Tested-by: Patrice Chotard <patrice.chotard@foss.st.com>
2 weeks agoPrepare v2026.01-rc4 v2026.01-rc4
Tom Rini [Mon, 8 Dec 2025 18:54:47 +0000 (12:54 -0600)] 
Prepare v2026.01-rc4

Signed-off-by: Tom Rini <trini@konsulko.com>
2 weeks agoMAINTAINERS: update my email address
Yao Zi [Mon, 8 Dec 2025 18:17:08 +0000 (18:17 +0000)] 
MAINTAINERS: update my email address

My old mail address, ziyao@disroot.org, has stopped working. Switch to
my new address, me@ziyao.cc, and map it in .mailmap.

Signed-off-by: Yao Zi <me@ziyao.cc>
2 weeks agoarm64: versal: Fix LTO for mini_ospi/mini_qspi
Pranav Tilak [Mon, 8 Dec 2025 13:54:24 +0000 (14:54 +0100)] 
arm64: versal: Fix LTO for mini_ospi/mini_qspi

With LTO enabled, mini U-Boot was hanging during reloc_fdt().
The initial stack pointer was placed too low, and the FDT memcpy
destination was carved only 4KB above it. This left insufficient
margin, causing the FDT copy to overwrite the live early stack
and corrupt execution before relocation.

To fix this, increase the malloc heap from 8KB to 12KB and raise the
initial stack pointer by 4KB. Together these adjustments increase
the separation between the early stack and the FDT region during
the pre-relocation phase, eliminating the overlap and fixing the
hang on mini builds (QSPI/OSPI).

Signed-off-by: Pranav Tilak <pranav.vinaytilak@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
2 weeks agoomap3_evm: Take over maintainership
Tom Rini [Sun, 7 Dec 2025 14:50:28 +0000 (08:50 -0600)] 
omap3_evm: Take over maintainership

After talking with Derald, take over the maintainership role for this
platform.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 weeks agodoc: Update urllib3 version for building
Tom Rini [Sat, 6 Dec 2025 16:50:34 +0000 (10:50 -0600)] 
doc: Update urllib3 version for building

The GitHub dependabot tool has reported two "high" priority bugs,
CVE-2025-66418 and CVE-2025-66471, with this package. Update to the
patched version.

Reported-by: GitHub dependabot
Acked-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 weeks agoconfigs: Resync with savedefconfig
Tom Rini [Mon, 8 Dec 2025 14:37:35 +0000 (08:37 -0600)] 
configs: Resync with savedefconfig

Resync all defconfig files using qconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
2 weeks agoconfigs: phycore_am64x_a53_defconfig: Drop eMMC HS400 mode
Dominik Haller [Thu, 20 Nov 2025 21:26:17 +0000 (13:26 -0800)] 
configs: phycore_am64x_a53_defconfig: Drop eMMC HS400 mode

Remove the unsupported MMC_HS400 mode and select MMC_HS200 instead to avoid
confusion.

Signed-off-by: Dominik Haller <d.haller@phytec.de>
2 weeks agoarm: mach-k3: j722s: Fix eMMC boot functionality broken by Ethernet boot 838/head
Chintan Vankar [Thu, 4 Dec 2025 12:21:27 +0000 (17:51 +0530)] 
arm: mach-k3: j722s: Fix eMMC boot functionality broken by Ethernet boot

While adding CPSW device support to enable Ethernet boot for J722S,
dev-data and clk-data for eMMC was removed by mistake, which leads to eMMC
boot failure. Update the dev-data and clk-data to fix that.

Fixes: a02009f3a816 ("arm: mach-k3: j722s: Update SoC autogenerated data to enable Ethernet boot")
Reported-by: Michael Walle <mwalle@kernel.org>
Signed-off-by: Chintan Vankar <c-vankar@ti.com>
Tested-by: Michael Walle <mwalle@kernel.org>
Reviewed-by: Udit Kumar <u-kumar1@ti.com>
2 weeks agoupdate GCC version check after Kbuild bump
Brian Sune [Tue, 2 Dec 2025 04:10:29 +0000 (12:10 +0800)] 
update GCC version check after Kbuild bump

ARM GCC tool check is not up to date,
while issues are reported such as file truncated linker errors.
Using ARM official cross tools shows that 10.0.1 is a safe
version to support latest kbuild bump properly.

Signed-off-by: Brian Sune <briansune@gmail.com>
2 weeks agoMAINTAINERS: update my email address
Linus Walleij [Fri, 5 Dec 2025 16:01:38 +0000 (17:01 +0100)] 
MAINTAINERS: update my email address

I am moving over to using my email address at kernel.org.
Change this in all the affected MAINTAINERS files.

Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
Signed-off-by: Linus Walleij <linusw@kernel.org>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
2 weeks agoMerge tag 'efi-2026-01-rc4' of https://source.denx.de/u-boot/custodians/u-boot-efi
Tom Rini [Sat, 6 Dec 2025 14:13:37 +0000 (08:13 -0600)] 
Merge tag 'efi-2026-01-rc4' of https://source.denx.de/u-boot/custodians/u-boot-efi

Pull request efi-2026-01-rc4

CI: https://source.denx.de/u-boot/custodians/u-boot-efi/-/pipelines/28652

Documentation:

* Correct and add missing pytest hook script environment variable names
* board: verdin-am62p: Fix boot log output
* Add a page for downloading the U-Boot logo with and without text

UEFI:

* Fix a memory leak when retrieving device paths from boot vars

2 weeks agodoc: board: verdin-am62p: Fix boot log output
Francesco Dolcini [Fri, 5 Dec 2025 08:27:28 +0000 (09:27 +0100)] 
doc: board: verdin-am62p: Fix boot log output

Fix boot log output not being rendered correctly, fix
it doing the same as done in verdin-am62.rst.

Fixes: b8c43968b801 ("board: toradex: add verdin am62p support")
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2 weeks agoefi_loader: Fix a memory leak when retrieving device paths from boot vars
Ilias Apalodimas [Thu, 27 Nov 2025 12:19:06 +0000 (14:19 +0200)] 
efi_loader: Fix a memory leak when retrieving device paths from boot vars

get_dp_device() is used to derive the device path from a boot variable.
However, if the last efi_get_variable_int() call fails, we return an
error without freeing 'buf'.

There's no need to call efi_get_variable_int() for variables we don't
know the size since we have the efi_get_var() wrapper.

Replace that in the two instances we use it. The first one will also
fix the memory leak.
A nice sideeffect is that the code size is also reduced, since we are
re-using functions instead of open coding them

$~ bloat-o-meter u-boot u-boot.new
add/remove: 0/0 grow/shrink: 1/2 up/down: 6/-196 (-190)
Function                                     old     new   delta
version_string                                70      76      +6
efi_launch_capsules                         2288    2196     -92
get_dp_device                                244     140    -104
Total: Before=1222331, After=1222141, chg -0.02%

Fixes: c74cd8bd08d1 ("efi_loader: capsule: add capsule_on_disk support")
Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2 weeks agodoc: pytest: add missing hook script env vars
David Lechner [Mon, 24 Nov 2025 22:44:07 +0000 (16:44 -0600)] 
doc: pytest: add missing hook script env vars

Add the _EXTRA variants of U_BOOT_BUILD_DIR and U_BOOT_RESULT_DIR to the
list of environment variables set for hook scripts.

These were added in commit 8f2a9fa7d6e7 ("test: Support testing with two
board-builds") but were not documented.

Signed-off-by: David Lechner <dlechner@baylibre.com>
2 weeks agodoc: pytest: fix hook script environment variable names
David Lechner [Mon, 24 Nov 2025 22:44:06 +0000 (16:44 -0600)] 
doc: pytest: fix hook script environment variable names

Fix the names of environment variables set for hook scripts. These
have a U_BOOT_ prefix, not UBOOT_.

Signed-off-by: David Lechner <dlechner@baylibre.com>
2 weeks agodoc: add a page for downloading the U-Boot logo
Heinrich Schuchardt [Sat, 22 Nov 2025 22:17:38 +0000 (23:17 +0100)] 
doc: add a page for downloading the U-Boot logo

Add a page showing the logo with and without text.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2 weeks agotools/logos: Add U-Boot logo with text 'U-Boot'
Heinrich Schuchardt [Sat, 22 Nov 2025 22:17:37 +0000 (23:17 +0100)] 
tools/logos: Add U-Boot logo with text 'U-Boot'

The logo with the text 'U-Boot' has been used in multiple presentations.
Up to now it was only available from my upload to wikimedia.org.
Make it available in our repository.

Link: https://upload.wikimedia.org/wikipedia/commons/9/9e/U-Boot_Logo.svg
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2 weeks agoclk: Remove myself as a maintainer 836/head
Sean Anderson [Wed, 3 Dec 2025 21:03:35 +0000 (16:03 -0500)] 
clk: Remove myself as a maintainer

Unfortunately I don't really have time to review clock patches. When I
initially started maintaining this subsystem I had more free time than I do
now. But I also found it hard to motivate myself to review patches.  Many
clock patches add support for new SoCs and they are time consuming to
review properly. You effectively have to spend a few hours reading the
reference manual (if it's public!) and reviewing drivers is no small feat
either. This is made more difficult since clocking is often very different
between SoCs and it can be difficult to determine whether something is a
bug in the driver or a workaround for some hardware behavior. I mostly
don't care about any given SoC unless I'm hacking on it so I ended up with
a ton (more than 7000) of unreviewed patches piling up in my inbox. I'd
love to be more active, but I have a day job and I usually want to work on
something more interesting when I get home. I still think the clock
subsystem is a major mess but I don't care enough to fix it :l

The subsystem itself should probably get orphaned since AFAICT all patches
go through the mach/arch maintainer or to Tom.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
2 weeks agotest: strlcat: Fix SPDX license
Sean Anderson [Wed, 3 Dec 2025 20:46:40 +0000 (15:46 -0500)] 
test: strlcat: Fix SPDX license

When I modified this code I meant to accept the LGPL offer to convert the
license to GPL. However, while there is an LGPL 2.1, the next version of
the GPL after 2.0 is 3.0. Fix the license version

Fixess: c4ac52f55d9 ("test: Add test for strlcat")
Signed-off-by: Sean Anderson <seanga2@gmail.com>
2 weeks agobinman: fallback to importlib_resources on Python 3.8
Chukun Pan [Tue, 2 Dec 2025 10:00:00 +0000 (18:00 +0800)] 
binman: fallback to importlib_resources on Python 3.8

Python 3.7 and 3.8 lack the files attribute in importlib.resources.
Use importlib_resources to fix build errors with Python 3.8:
binman: module 'importlib.resources' has no attribute 'files'

Fixes: 538719cb6a77 ("binman: migrate from pkg_resources to importlib")
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Acked-by: Quentin Schulz <quentin.schulz@cherry.de>
[trini: Re-add # pragma: no cover line]
Signed-off-by: Tom Rini <trini@konsulko.com>
2 weeks agoboard: BuR: Update MAINTAINERS files
Wolfgang Wallner [Tue, 2 Dec 2025 09:43:41 +0000 (10:43 +0100)] 
board: BuR: Update MAINTAINERS files

The MAINTAINERS files for B&R boards are not in sync
with the current file names. Update the files so
that they are correct again.

Signed-off-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com>
2 weeks agoChange email addresses for B&R Industrial Automation
Wolfgang Wallner [Tue, 2 Dec 2025 09:24:58 +0000 (10:24 +0100)] 
Change email addresses for B&R Industrial Automation

B&R Industrial Automation has been acquired by ABB in 2017, and this
will be reflected in our email addresses beginning from December 2025.

The email addresses change as follows:
 @br-automation.com -> @<country-code>.abb.com

The existing email addresses will be valid until December 2026.

Add entries for Bernhard Messerklinger and myself to .mailmap, and
update the MAINTAINERS files.

Signed-off-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com>
Signed-off-by: Wolfgang Wallner <wolfgang.wallner@at.abb.com>
3 weeks agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh
Tom Rini [Wed, 3 Dec 2025 14:30:18 +0000 (08:30 -0600)] 
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh

This is R-Car X5H support. It was originally posted before rc1 and the
changes are well isolated. This is the final patchset which enables the
Gen5 drivers that are already in tree. I waited with this a bit until
the SCMI ID discussion stabilized and TFA X5H support landed. So now, I
can add the final piece into U-Boot too.

Note that this is still very much experimental, the X5H upstreaming is
in very early stages. The OF_UPSTREAM conversion will happen likely in
2026.04 or 2026.07 window, depending on when the Linux DTs land. The
compound-clock.c is surely going to go away once SCP gets updated and
the MFIS mailbox will be reworked once upstream bindings get developed.

This also includes SH DT alignment fix.

3 weeks agoarm64: renesas: Extend stub PSCI implementation to R-Car Gen5
Hai Pham [Mon, 27 Oct 2025 17:22:55 +0000 (18:22 +0100)] 
arm64: renesas: Extend stub PSCI implementation to R-Car Gen5

Extend the stub PSCI implementation with support for R-Car Gen5.
R-Car Gen5 uses different register to perform reset, therefore
add a compile-time conditional. This is __secure code, therefore
the runtime SoC detection parts are not available to it, hence
the compile time conditional.

Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> # Tweak commit message
3 weeks agoarm64: dts: renesas: Add Renesas R-Car X5H R8A78000 Ironhide board code
Hai Pham [Tue, 2 Dec 2025 18:34:16 +0000 (19:34 +0100)] 
arm64: dts: renesas: Add Renesas R-Car X5H R8A78000 Ironhide board code

Add initial support for Renesas R-Car X5H R8A78000 Ironhide board.
This consists mainly of DTs, Makefile and Kconfig entries and board
specific configuration files.

The DTs will be gradually switched over to Linux DTs via OF_UPSTREAM
once Linux DTs become available upstream, as upstreaming progresses.

Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
3 weeks agoarm64: dts: renesas: Add Renesas R-Car X5H R8A78000 SoC DTs
Hai Pham [Tue, 2 Dec 2025 18:34:15 +0000 (19:34 +0100)] 
arm64: dts: renesas: Add Renesas R-Car X5H R8A78000 SoC DTs

Add initial device trees for Renesas R-Car X5H R8A78000 SoC.
Include very basic clock, reset, power domain headers which
are used to control supported peripherals via SCMI / SCP. The
headers are currently kept limited to avoid possible ABI break.
A lot of clock are still stubbed via fixed-clock, this is going
to be gradually removed over time, as more of the platform is
upstreamed.

Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
Signed-off-by: Khanh Le <khanh.le.xr@renesas.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
3 weeks agoarm64: renesas: Add Renesas R-Car Gen5 infrastructure
Hai Pham [Tue, 2 Dec 2025 18:34:14 +0000 (19:34 +0100)] 
arm64: renesas: Add Renesas R-Car Gen5 infrastructure

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>
3 weeks agomailbox: renesas: Add Renesas MFIS Multifunctional Interface mailbox driver
Tuyen Dang [Mon, 27 Oct 2025 16:39:17 +0000 (17:39 +0100)] 
mailbox: renesas: Add Renesas MFIS Multifunctional Interface mailbox driver

Add support for the Renesas MFIS mailbox, which provides an interface
between the different CPU Cores, such as AP System Core domain and the
Realtime Core domain, SCP Core domain and AP System Core domain or
Realtime Core domain and AP System Core domain or Realtime Core domain.

Signed-off-by: Tuyen Dang <tuyen.dang.xa@renesas.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> # Update the driver
[Marek: Rename the driver to renesas-mfis, simplify the driver.
        Always use only one TX channel and no RX channel, drop all
unnecessary code. Perform 1ms delay in send callback which
is perfectly fine to do in U-Boot which does RX polling]

3 weeks agoclk: renesas: Introduce temporary compound clock for SCP compatibility
Marek Vasut [Mon, 27 Oct 2025 16:33:07 +0000 (17:33 +0100)] 
clk: renesas: Introduce temporary compound clock for SCP compatibility

The current state of SCP on Renesas R-Car Gen5 is not yet final and
is still missing full clock control, the clock control is exposed as
separate enable/disable and rate controls.

Temporarily introduce custom local compound clock, which are used as
an adaptation layer between U-Boot clock tree and current state of
SCP, and which bind two SCP clock into a single compound clock, which
provides both enable/disable and rate controls.

This is mainly meant to be used by SD/eMMC controller, to allow the
driver to both turn its clock on and off, and also obtain the current
clock rate. This is going to be removed once the SCP clock protocol
solidifies.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
3 weeks agosh: Assure end of U-Boot is at 8-byte aligned offset
Marek Vasut [Wed, 19 Nov 2025 17:44:36 +0000 (18:44 +0100)] 
sh: Assure end of U-Boot is at 8-byte aligned offset

Make sure the end of U-Boot is at 8-byte aligned offset, not 4-byte
aligned offset. This allows safely appending DT at the end of U-Boot
with the guarantee that the DT will be at 8-byte aligned offset. This
8-byte alignment is now checked by newer libfdt 1.7.2 .

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
3 weeks agoboot/bootfdt: Add smbios3-entrypoint to FDT for non-EFI boots
Adriana Nicolae [Thu, 27 Nov 2025 16:28:34 +0000 (08:28 -0800)] 
boot/bootfdt: Add smbios3-entrypoint to FDT for non-EFI boots

The Linux kernel can discover SMBIOS tables through two primary methods:
1. Via EFI tables, when using EFI boot;
2. Via the 'smbios3-entrypoint' property in the /chosen node of the
device tree.

When U-Boot boots a Linux kernel using a non-EFI command ("bootm",
"bootz", or "booti"), the kernel relies on the device tree to detect
the hardware. If SMBIOS tables are available in U-Boot, they should
be passed to the kernel via this device tree property.

This patch modifies boot_fdt_prepare(), to inject the SMBIOSv3 table
address into the device tree if there is a table generated by U-boot.
The "board_fdt_chosen_smbios" is weak in order to leave the possibilty
for specific boards to select custom SMBIOS addresses.

The changes in this patch are added in the context of supporting this
device tree property in linux kernel:
https://lkml.org/lkml/2025/10/24/1393

Device tree schema was updated to include the "smbios3-entrypoint" node
in pull request: https://github.com/devicetree-org/dt-schema/pull/177

Signed-off-by: Adriana Nicolae <adriana@arista.com>
3 weeks agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh
Tom Rini [Tue, 2 Dec 2025 21:25:14 +0000 (15:25 -0600)] 
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh

Two fixes for R-Car Gen4 and CONFIG_ENV_OVERWRITE=n to always expect
"setenv -f" to be used when overwriting ethernet MAC on all R-Car.

3 weeks agoMerge tag 'u-boot-at91-fixes-2026.01-a' of https://source.denx.de/u-boot/custodians...
Tom Rini [Tue, 2 Dec 2025 18:23:15 +0000 (12:23 -0600)] 
Merge tag 'u-boot-at91-fixes-2026.01-a' of https://source.denx.de/u-boot/custodians/u-boot-at91

First set of u-boot-at91 fixes for the 2026.01 cycle:

This small fixes set includes a fix on the mtd pmecc driver.

3 weeks agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-samsung
Tom Rini [Tue, 2 Dec 2025 18:19:52 +0000 (12:19 -0600)] 
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-samsung

- Assorted updates

3 weeks agoarm64: renesas: r8a779g3: Use redundant env on Retronix R-Car V4H Sparrow Hawk board
Marek Vasut [Wed, 19 Nov 2025 20:36:59 +0000 (21:36 +0100)] 
arm64: renesas: r8a779g3: Use redundant env on Retronix R-Car V4H Sparrow Hawk board

The redundant environment offset is already set in board configuration,
but the redundant environment itself is not explicitly enabled. Make
sure the redundant environment is enabled, as we most certainly do want
to have two copies of the environment.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
3 weeks agoARM: renesas: Disable CONFIG_ENV_OVERWRITE on all boards
Marek Vasut [Thu, 6 Nov 2025 19:13:24 +0000 (20:13 +0100)] 
ARM: renesas: Disable CONFIG_ENV_OVERWRITE on all boards

The CONFIG_ENV_OVERWRITE allows easy rewrite of environment variables
like 'ethaddr' and 'serial#' without any protection against accidental
removal of those variables. Remove this setting to add extra layer of
protection to those variables. The variables can still be overridden
using 'env set -f' (force set) if really needed.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
3 weeks agoARM: dts: renesas: Enable R8A779G0 V4H White Hawk RPC SPI DT node
Marek Vasut [Wed, 19 Nov 2025 20:39:48 +0000 (21:39 +0100)] 
ARM: dts: renesas: Enable R8A779G0 V4H White Hawk RPC SPI DT node

Disabling RPC breaks SPL boot on R-Car V4H White Hawk board, re-enable RPC.

Fixes: 1d94364c7f17 ("ARM: dts: renesas: Disable R8A779G0 V4H White Hawk RPC SPI DT node again")
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
3 weeks agodoc: samsung: exynos-mobile: add documentation for exynos7870
Kaustabh Chakraborty [Fri, 24 Oct 2025 17:28:29 +0000 (22:58 +0530)] 
doc: samsung: exynos-mobile: add documentation for exynos7870

Document the image preparation and flashing techniques for
Exynos7870-based boards. This is done in a separate file in a
sub-directory, which is linked back to the main documentation.

Signed-off-by: Kaustabh Chakraborty <kauschluss@disroot.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
3 weeks agoboard: samsung: exynos-mobile: add exynos7870 support and three devices
Kaustabh Chakraborty [Fri, 24 Oct 2025 17:28:28 +0000 (22:58 +0530)] 
board: samsung: exynos-mobile: add exynos7870 support and three devices

Add basic support for the Exynos7870 SoC, this includes device tree
match logic using multiple boards, where devices use a stub dtb in
Samsung's QCDT format. S-BOOT, the previous stage bootloader, places its
cmdline arguments there, which has identifying information.

This is added with support for three devices:
 * Samsung Galaxy A2 Core (codename: a2corelte)
 * Samsung Galaxy J6 (codename: j6lte)
 * Samsung Galaxy J7 Prime (codename: on7xelte)

Add their device trees in the defconfig, and also enable the clock and
pin controller drivers.

Signed-off-by: Kaustabh Chakraborty <kauschluss@disroot.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
3 weeks agoboard: samsung: add support for Samsung Exynos mobile device boards
Kaustabh Chakraborty [Fri, 24 Oct 2025 17:28:27 +0000 (22:58 +0530)] 
board: samsung: add support for Samsung Exynos mobile device boards

Add support for a generic platform which intends to support multiple
boards powered by ARMv8 Samsung Exynos SoCs. Some important features
include:
 * Fastboot: This is present to provide an open alternative to Samsung's
   proprietary Odin protocol. The board file configures certain features
   for fastboot, such as a dynamically allocated fastboot buffer, and
   standardized (lowercase) partition aliases.
 * EFI: Kernel image can be loaded from an EFI partition. This
   adopts a standard booting process, which multiple OS distributions
   can rely on.

Signed-off-by: Kaustabh Chakraborty <kauschluss@disroot.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
3 weeks agoMerge tag 'u-boot-socfpga-next-20251201' of https://source.denx.de/u-boot/custodians... 830/head
Tom Rini [Mon, 1 Dec 2025 16:37:45 +0000 (10:37 -0600)] 
Merge tag 'u-boot-socfpga-next-20251201' of https://source.denx.de/u-boot/custodians/u-boot-socfpga

This pull request delivers a broad set of improvements across the
SoCFPGA family, including Agilex5, Cyclone V, SoC64, and common code.
Key updates include refined boot flows, new driver enablement, handoff
tooling enhancements, and several stability fixes.

Highlights:

* Agilex5:
  - Enable FAT-based environment storage
  - MMC driver restores legacy clkmgr-based clock lookup
  - Cleanup of MMC raw mode enablement logic

* Cyclone V:
  - SPL FAT boot support and updated bootcmd sequence
  - Disable SPL SPI to prevent contention with FAT-based boot
  - New board handoff script and BSP generator tooling
  - Optimized Makefile support for SoCFPGA handoff workflows* New drivers:
  - Cadence xSPI driver with full protocol and command support
  - SPL enablement for DW APB GPIO controller

* Networking:
  - xgmac MDIO now supports Clause 45 read/write operations

* NAND / SoC64:
  - Enable ONFI detection in Denali NAND controller for SoC64 devices

* DTS and board updates:
  - Sync common SoCFPGA U-Boot DTS with kernel sources
  - Fixes for FPGA2SDRAM configuration and SoCFPGA boot stall behavior
  - Vining_FPGA migrated to the modern LED framework
  - Device tree relocation no longer forced off for Vining FPGA

* Tooling:
  - Introduces a new Python-based Cyclone V BSP generator
    covering EMIF, IOCSR, HPS, XML parsing, rendering, and documentation
    to simplify board enablement and handoff regeneration workflows

Overall, this series improves boot robustness, enhances xSPI and MDIO
capabilities, modernizes board support, and introduces new tooling to
streamline SoCFPGA handoff generation.

Pipelines test passing
https://source.denx.de/u-boot/custodians/u-boot-socfpga/-/pipelines/28569

3 weeks agoMerge tag 'net-20251201' of https://source.denx.de/u-boot/custodians/u-boot-net
Tom Rini [Mon, 1 Dec 2025 16:26:02 +0000 (10:26 -0600)] 
Merge tag 'net-20251201' of https://source.denx.de/u-boot/custodians/u-boot-net

Pull request net-20251201

net:
- phy: broadcom: fix RGMII delays for BCM54210E
- phy: dp83869: fix STRAP_OPMODE bitmask

3 weeks agoAzure: Rework jobs for disk space and 29 jobs
Tom Rini [Wed, 26 Nov 2025 23:49:46 +0000 (17:49 -0600)] 
Azure: Rework jobs for disk space and 29 jobs

The problem we face currently with Azure jobs is that we're running out
of disk space on the runners as we build. There's not a good way to
split approximately 1500 configurations across 10 jobs and not be close
to or exceeding that limit. Split this in to 29 jobs instead with a goal
of averaging an hour per job. This split gets us close, but there are
still some challenging jobs to try and break up further. The list is
mostly alphabetized but with some intentional changes (catch-all are
last, mx/imx are together, SoC family splits are just grouped together).

The average build time should be close to the same, but outliers can and
will happen.

Signed-off-by: Tom Rini <trini@konsulko.com>
3 weeks agoAdd optimized Makefile support for SoCFPGA handoff
Brian Sune [Mon, 1 Dec 2025 09:04:07 +0000 (17:04 +0800)] 
Add optimized Makefile support for SoCFPGA handoff

- Introduce socfpga_g5_handoff_prepare target in U-Boot
  arch/arm/mach-socfpga/config.mk
- Users can convert the handoff via make prepare.
- Detects Altera/Intel SoCFPGA boards from .config
- Combines vendor/board extraction into a single shell call
- Checks for hps_isw_handoff folder and .hiof files
- Uses ls -d instead of find for faster folder detection
- Runs BSP generator script only if files exist
- Non-blocking: continues if handoff folder or files are missing
- HANDOFF_PATH user define allows overriding auto-detected folder
- Minimizes subshells and other slow constructs for faster CI

Signed-off-by: Brian Sune <briansune@gmail.com>
3 weeks agonet: phy: broadcom: fix RGMII delays for BCM54210E
Michael Walle [Thu, 27 Nov 2025 15:25:27 +0000 (16:25 +0100)] 
net: phy: broadcom: fix RGMII delays for BCM54210E

bcm54210e_config() configures the RGMII delays and then calls
bcm5461_config(). But the latter will do a PHY soft reset and thus
resets the delay settings again. Call bcm5461_config() first to fix it.

Fixes: cba79a1b2e11 ("net: phy: broadcom: add support for BCM54210E")
Signed-off-by: Michael Walle <mwalle@kernel.org>
Reviewed-by: Rafał Miłecki <rafal@milecki.pl>
3 weeks agonet: phy: dp83869: fix STRAP_OPMODE bitmask
Thanh Quan [Mon, 27 Oct 2025 14:03:58 +0000 (15:03 +0100)] 
net: phy: dp83869: fix STRAP_OPMODE bitmask

According to the TI DP83869HM datasheet Revision D (June 2025), section
7.6.1.41 STRAP_STS Register, the STRAP_OPMODE bitmask is bit [11:9].
Fix this.

In case the PHY is auto-detected via PHY ID registers, or not described
in DT, or, in case the PHY is described in DT but the optional DT property
"ti,op-mode" is not present, then the driver reads out the PHY functional
mode (RGMII, SGMII, ...) from hardware straps.

Currently, all upstream users of this PHY specify both DT compatible string
"ethernet-phy-id2000.a0f1" and ti,op-mode = <DP83869_RGMII_COPPER_ETHERNET>
property, therefore it seems no upstream users are affected by this bug.

The driver currently interprets bits [2:0] of STRAP_STS register as PHY
functional mode. Those bits are controlled by ANEG_DIS, ANEGSEL_0 straps
and an always-zero reserved bit. Systems that use RGMII-to-Copper functional
mode are unlikely to disable auto-negotiation via ANEG_DIS strap, or change
auto-negotiation behavior via ANEGSEL_0 strap. Therefore, even with this bug
in place, the STRAP_STS register content is likely going to be interpreted
by the driver as RGMII-to-Copper mode.

However, for a system with PHY functional mode strapping set to other mode
than RGMII-to-Copper, the driver is likely to misinterpret the strapping
as RGMII-to-Copper and misconfigure the PHY.

For example, on a system with SGMII-to-Copper strapping, the STRAP_STS
register reads as 0x0c20, but the PHY ends up being configured for
incompatible RGMII-to-Copper mode.

Fixes: f3e22eea815d ("net: phy: add TI DP83869HM ethernet driver")
Signed-off-by: Thanh Quan <thanh.quan.xn@renesas.com>
Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> # Use FIELD_GET()
3 weeks agoconfigs: cyclone5: Disable SPI in SPL
Alif Zakuan Yuslaimi [Tue, 25 Nov 2025 08:13:16 +0000 (00:13 -0800)] 
configs: cyclone5: Disable SPI in SPL

Disable support for using SPI in SPL to solve Cyclone V storage issue as
the OCRAM is only 64kb. The SPI configurations are only
required during uboot proper only.

Signed-off-by: Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
3 weeks agoconfigs: cyclone5: Update boot command for CycloneV
Alif Zakuan Yuslaimi [Tue, 25 Nov 2025 08:13:15 +0000 (00:13 -0800)] 
configs: cyclone5: Update boot command for CycloneV

Update CycloneV boot command to sync with Altera official release

Signed-off-by: Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
3 weeks agoconfigs: cyclone5: Enable SPL FAT support
Alif Zakuan Yuslaimi [Tue, 25 Nov 2025 08:13:14 +0000 (00:13 -0800)] 
configs: cyclone5: Enable SPL FAT support

Enable support for FAT filesystem with SPL for CycloneV instead of raw
mode.

Recent changes breaks CycloneV MMC boot from raw mode, and so we are taking
this opportunity to migrate MMC boot mode to FAT as smaller OCRAM size is
required, as well as aligning MMC boot flow with our other devices.

Fixes: 2a00d73d081a1 ("spl: mmc: Try to clean up raw-mode options")
Signed-off-by: Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
3 weeks agospl: Remove ARCH_SOCFPGA from MMC raw mode enablement
Alif Zakuan Yuslaimi [Tue, 25 Nov 2025 08:13:13 +0000 (00:13 -0800)] 
spl: Remove ARCH_SOCFPGA from MMC raw mode enablement

We no longer use raw mode to boot from MMC for our devices in favor
of FAT filesystem.

Maintaining this config for legacy gen5 devices as to not risk breaking
any configurations still utilizing raw mode.

Signed-off-by: Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
3 weeks agommc: socfpga_dw_mmc: Restore legacy clkmgr address retrieval
Alif Zakuan Yuslaimi [Tue, 25 Nov 2025 08:13:12 +0000 (00:13 -0800)] 
mmc: socfpga_dw_mmc: Restore legacy clkmgr address retrieval

Restore legacy implementation of retrieving clkmgr base address from
mach-socfpga/misc.c driver for our legacy devices.

Excluding Agilex7/7M from this implementation as these devices' clock
driver is already following clock driver model and is supporting
enable/disable APIs.

The legacy devices' clock driver will have to be refactored to support
driver model which enables us to support enable/disable APIs for these
devices.

Fixes: ab27182cac8f ("mmc: socfpga_dw_mmc: Enable/disable SDMMC clock via API")
Signed-off-by: Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
3 weeks agoconfigs: cyclone5: Disable mkeficapsule tool build
Alif Zakuan Yuslaimi [Tue, 25 Nov 2025 08:13:09 +0000 (00:13 -0800)] 
configs: cyclone5: Disable mkeficapsule tool build

mkeficapsule tool will be built by default if EFI_LOADER is set due to
commit b7a625b1ce49 ("tools: Build mkeficapsule tool by default if
EFI_LOADER is set").

This will cause compilation error on all our SoCFPGA devices, hence we will
be disabling this config as we do not utilize this tool.

Signed-off-by: Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
3 weeks agoboard: softing: vining: migrate to modern LED framework
Quentin Schulz [Wed, 19 Nov 2025 17:19:55 +0000 (18:19 +0100)] 
board: softing: vining: migrate to modern LED framework

This migrates from the legacy LED API to use the modern LED framework
which makes use of the FDT.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Acked-by: Tien Fong Chee <tien.fong.chee@altera.com>
3 weeks agosocfpga_vining_fpga: Stop disabling device tree relocation
Tom Rini [Wed, 19 Nov 2025 14:55:38 +0000 (08:55 -0600)] 
socfpga_vining_fpga: Stop disabling device tree relocation

Remove setting of fdt_high to ~0, which disables device tree relocation,
from the default environment. Doing so prevents U-Boot from correcting
problems such as having an unaligned device tree and leads to various
failure modes in the OS.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Marek Vasut <marek.vasut@mailbox.org>
3 weeks agoAltera SoCFpga Boot Stall Fix
Brian Sune [Fri, 14 Nov 2025 16:04:23 +0000 (00:04 +0800)] 
Altera SoCFpga Boot Stall Fix

Since U-Boot 2025.07 pure SD Card
boot no longer works. Now Altera released 2025.07
shows the different on the u-boot files.
After testing, the major root case is
get_managers_addr. And this patch fix the
SD boot stall via pulling from offical.

Signed-off-by: Brian Sune <briansune@gmail.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
3 weeks agosync socfpga common u-boot dts
Brian Sune [Mon, 10 Nov 2025 05:00:40 +0000 (13:00 +0800)] 
sync socfpga common u-boot dts

The dtsi for socfpga common should
turn on L2 and memory and no reason not
to do so

Signed-off-by: Brian Sune <briansune@gmail.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
3 weeks agonand: denali: enable ONFI detection for SoCFPGA SoC64
Dinesh Maniyam [Tue, 4 Nov 2025 17:16:17 +0000 (01:16 +0800)] 
nand: denali: enable ONFI detection for SoCFPGA SoC64

Enable ONFI parameter page detection for SoCFPGA SoC64 devices by
selecting SYS_NAND_ONFI_DETECTION in the NAND_DENALI Kconfig entry.

This allows SoCFPGA SoC64 platforms using the Denali NAND controller
to automatically detect NAND parameters via the ONFI interface instead
of relying on hardcoded configuration values.

The selection is limited to TARGET_SOCFPGA_SOC64 to avoid affecting
non-SoC64 platforms that use legacy NAND handling.

Signed-off-by: Dinesh Maniyam <dinesh.maniyam@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
3 weeks agoCyclone V Board handsoff script
Brian Sune [Fri, 31 Oct 2025 18:04:19 +0000 (02:04 +0800)] 
Cyclone V Board handsoff script

Since turning from old build flow.
New Altera SoCFPGA requires converting handsoff
conversion via the python script. This is from
official provided, and now sync to U-Boot with
better location at tools/cv_xxxx. Meantime,
requirement.txt is also provided to further
explain the libraries require for these scripts.

Signed-off-by: Brian Sune <briansune@gmail.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>