]> git.ipfire.org Git - thirdparty/u-boot.git/log
thirdparty/u-boot.git
8 days agoconfigs: Increase USB Hub debounce timeout in Agilex5
Naresh Kumar Ravulapalli [Wed, 24 Sep 2025 07:49:10 +0000 (00:49 -0700)] 
configs: Increase USB Hub debounce timeout in Agilex5

Some legacy USB mass storage devices during connection were
observed to have debounce issues. Hence, increasing the default
USB Hub debounce timeout value to handle this issue for devices
connected to Agilex5 boards.

Signed-off-by: Naresh Kumar Ravulapalli <nareshkumar.ravulapalli@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agoconfigs: Enable USB DWC3 host drivers for Agilex5
Naresh Kumar Ravulapalli [Wed, 24 Sep 2025 07:49:09 +0000 (00:49 -0700)] 
configs: Enable USB DWC3 host drivers for Agilex5

Required USB DWC3 host driver configurations are enabled
for Agilex5.

Signed-off-by: Naresh Kumar Ravulapalli <nareshkumar.ravulapalli@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agoarch: arm: dts: Enable USB3.1 for Agilex5
Naresh Kumar Ravulapalli [Wed, 24 Sep 2025 07:49:08 +0000 (00:49 -0700)] 
arch: arm: dts: Enable USB3.1 for Agilex5

USB 3.1 node is enabled for Agilex5.

Signed-off-by: Naresh Kumar Ravulapalli <nareshkumar.ravulapalli@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agodrivers: clk: agilex: Use FIELD_GET during EMAC clock selection
Naresh Kumar Ravulapalli [Thu, 11 Sep 2025 05:21:12 +0000 (22:21 -0700)] 
drivers: clk: agilex: Use FIELD_GET during EMAC clock selection

FIELD_GET() macro is used during EMAC clock source selection
for better code readability and maintainability.

Signed-off-by: Naresh Kumar Ravulapalli <nareshkumar.ravulapalli@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agodrivers: clk: agilex: Fix EMAC clock source selection
Naresh Kumar Ravulapalli [Thu, 11 Sep 2025 05:21:11 +0000 (22:21 -0700)] 
drivers: clk: agilex: Fix EMAC clock source selection

Fix the incorrect bit masking and bit shift used to compute EMAC
control which in turn is used to select EMAC clock from EMAC
source A or B.

Signed-off-by: Naresh Kumar Ravulapalli <nareshkumar.ravulapalli@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agommc: socfpga_dw_mmc: Enable/disable SDMMC clock via API
Alif Zakuan Yuslaimi [Tue, 9 Sep 2025 02:11:16 +0000 (19:11 -0700)] 
mmc: socfpga_dw_mmc: Enable/disable SDMMC clock via API

Update the driver to enable or disable the SDMMC clock via
clock driver model API instead of doing it in the driver itself.

This allows for scalability of the driver for various SoCFPGA
devices.

Signed-off-by: Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agoconfigs: agilex5: Enable config SPL_SYS_DCACHE_OFF
Boon Khai Ng [Thu, 14 Aug 2025 03:17:41 +0000 (11:17 +0800)] 
configs: agilex5: Enable config SPL_SYS_DCACHE_OFF

Add SPL_SYS_DCACHE_OFF to Agilex5 defconfig to disable data cache for SPL

Signed-off-by: Tanmay Kathpalia <tanmay.kathpalia@altera.com>
Signed-off-by: Boon Khai Ng <boon.khai.ng@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agodrivers: clk: agilex: Support for enable/disable API
Alif Zakuan Yuslaimi [Tue, 9 Sep 2025 02:11:15 +0000 (19:11 -0700)] 
drivers: clk: agilex: Support for enable/disable API

Update Agilex clock driver to support enabling or disabling
the peripheral clocks via clock driver model APIs.

The caller will pass the clock ID to this driver and the driver
will then proceed to manipulate the desired bit in the Agilex clock
manager peripheral PLL register based on the given clock ID.

Signed-off-by: Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agocache: Check dcache availability before calling cache functions
Boon Khai Ng [Thu, 14 Aug 2025 03:17:40 +0000 (11:17 +0800)] 
cache: Check dcache availability before calling cache functions

When the data cache (dcache) is disabled, calling related
status functions can lead to compilation errors due to
undefined references.

Adding a !CONFIG_IS_ENABLED(SYS_DCACHE_OFF) check before
invoking dcache_status() (used in common/memsize.c:get_ram_size())
and mmu_status() (from arch/arm/include/asm/io.h).

Without this check, builds with dcache disabled will fail to compile.

Signed-off-by: Boon Khai Ng <boon.khai.ng@altera.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
8 days agoinclude: dt-bindings: clk: agilex: Add Agilex clock definitions header file
Alif Zakuan Yuslaimi [Tue, 9 Sep 2025 02:11:14 +0000 (19:11 -0700)] 
include: dt-bindings: clk: agilex: Add Agilex clock definitions header file

Introduce header file to define the clock indexes for the Agilex
platform.

Signed-off-by: Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agoarch: arm: mach-socfpga: smc: Add dcache flushing and invalidation in smc_send_mailbox()
Boon Khai Ng [Thu, 14 Aug 2025 03:17:39 +0000 (11:17 +0800)] 
arch: arm: mach-socfpga: smc: Add dcache flushing and invalidation in smc_send_mailbox()

Adding the dcache flushing and invalidation in the smc_send_mailbox()
At the same time replace the use of u64 with uintptr_t to ensure
compatibility across different architectures and correct the
pointer arithmetic for buffer end address calculation.

Signed-off-by: Mahesh Rao <mahesh.rao@altera.com>
Signed-off-by: Boon Khai Ng <boon.khai.ng@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agoconfigs: agilex5: Increase watchdog timeout
Alif Zakuan Yuslaimi [Fri, 15 Aug 2025 03:40:22 +0000 (20:40 -0700)] 
configs: agilex5: Increase watchdog timeout

Linux kernel will fail to boot due to exceeding timeout trying to
probe I3C device.

Increasing the watchdog timeout 30 seconds will give enough time for
Linux to probe the I3C device and will be able to boot up successfully.

User is expected to fine tune the watchdog timeout for the complete
boot in production.

Signed-off-by: Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agoarm: socfpga: mailbox: Remove CONFIG_CADENCE_QSPI guard from QSPI mailbox API declara...
Alif Zakuan Yuslaimi [Tue, 23 Sep 2025 01:31:47 +0000 (18:31 -0700)] 
arm: socfpga: mailbox: Remove CONFIG_CADENCE_QSPI guard from QSPI mailbox API declarations

The QSPI mailbox API function declarations (mbox_qspi_close and
mbox_qspi_open) in mailbox_s10.h were guarded by CONFIG_CADENCE_QSPI
preprocessor conditional. This prevented their prototypes from being
visible to code that may use the stub implementations when
CONFIG_CADENCE_QSPI is disabled.

Remove the CONFIG_CADENCE_QSPI preprocessor conditional so these functions
are always declared, regardless of the configuration. This avoids potential
build or linkage errors when stubs are used.

Signed-off-by: Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agoarm: socfpga: Define Use FPGA switch handoff section size for Agilex5
Alif Zakuan Yuslaimi [Fri, 29 Aug 2025 03:42:59 +0000 (20:42 -0700)] 
arm: socfpga: Define Use FPGA switch handoff section size for Agilex5

Agilex5 FPGA switch section in the handoff data is larger by 32 bytes
than the default value as these extra sections contains I3C0 and I3C1
register offsets and values with 4 bytes each.

This requires 4 more times of reading the FPGA switch section of the
handoff data to fully populate the handoff data table in the memory
during runtime.

Signed-off-by: Alif Zakuan Yuslaimi <alif.zakuan.yuslaimi@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agodrivers: ddr: altera: Correct DDR calibration status check
Naresh Kumar Ravulapalli [Fri, 8 Aug 2025 09:42:42 +0000 (02:42 -0700)] 
drivers: ddr: altera: Correct DDR calibration status check

Bit 3 of the seq2core register is no longer set to indicate
calibration completion. Instead, added polling of the seq2core
register until it reads 0b00000111, signaling that the Nios
processor has started the calibration process.

Signed-off-by: Naresh Kumar Ravulapalli <nareshkumar.ravulapalli@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agodrivers: ddr: altera: Check IOSSM mailbox compatibility
Naresh Kumar Ravulapalli [Fri, 8 Aug 2025 09:36:59 +0000 (02:36 -0700)] 
drivers: ddr: altera: Check IOSSM mailbox compatibility

Compatibility check of IOSSM mailbox with U-Boot is performed
by verifying the mailbox specification version. If check fails,
appropriate error message is displayed.

Signed-off-by: Naresh Kumar Ravulapalli <nareshkumar.ravulapalli@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agoconfigs: socfpga: Remove SYS_BOOTM_LEN from N5X VAB config
Naresh Kumar Ravulapalli [Tue, 19 Aug 2025 04:34:40 +0000 (21:34 -0700)] 
configs: socfpga: Remove SYS_BOOTM_LEN from N5X VAB config

Remove the current CONFIG_SYS_BOOTM_LEN in N5X VAB defconfig.
Previously, the size was set to 32MB, but due to larger kernel image,
64MB size is required. This 64MB configuration has been set as
default in the Kconfig.

Signed-off-by: Naresh Kumar Ravulapalli <nareshkumar.ravulapalli@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agoconfigs: socfpga: Add CRC32 support
Naresh Kumar Ravulapalli [Tue, 19 Aug 2025 04:24:04 +0000 (21:24 -0700)] 
configs: socfpga: Add CRC32 support

CRC32 support for SoC64 devices is added.

Signed-off-by: Naresh Kumar Ravulapalli <nareshkumar.ravulapalli@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agoconfigs: Simplify Agilex7 VAB defconfig
Naresh Kumar Ravulapalli [Fri, 8 Aug 2025 09:30:41 +0000 (02:30 -0700)] 
configs: Simplify Agilex7 VAB defconfig

To ensure unintentional bugs occurring because of config changes
in master defconfig and its VAB variants, VAB defconfig files now
include the master defconfig and enable config values specific to
VAB functionality only.

Signed-off-by: Naresh Kumar Ravulapalli <nareshkumar.ravulapalli@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agoarm: dts: socfpga: Enable driver model for watchdog timer
Naresh Kumar Ravulapalli [Tue, 19 Aug 2025 04:16:04 +0000 (21:16 -0700)] 
arm: dts: socfpga: Enable driver model for watchdog timer

All SoCFPGA platforms are switching to CONFIG_WDT (driver
model for watchdog timer drivers) from CONFIG_HW_WATCHDOG. Status
of watchdog is enabled to assist with this switching.

Signed-off-by: Naresh Kumar Ravulapalli <nareshkumar.ravulapalli@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agoarch: arm: socfpga: Remove speed and mode from flash probe
Naresh Kumar Ravulapalli [Tue, 19 Aug 2025 04:25:55 +0000 (21:25 -0700)] 
arch: arm: socfpga: Remove speed and mode from flash probe

Change is to allow the user to choose speed and mode values
from dts or the default ones.

Signed-off-by: Naresh Kumar Ravulapalli <nareshkumar.ravulapalli@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agoarch: arm: dts: stratix10: Add NAND IP to base dtsi
Naresh Kumar Ravulapalli [Tue, 19 Aug 2025 04:17:44 +0000 (21:17 -0700)] 
arch: arm: dts: stratix10: Add NAND IP to base dtsi

Add NAND node to the base stratix10 dtsi file.

Signed-off-by: Naresh Kumar Ravulapalli <nareshkumar.ravulapalli@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agoarch: arm: dts: agilex5: Disable cache allocation for reads
Naresh Kumar Ravulapalli [Fri, 8 Aug 2025 09:40:03 +0000 (02:40 -0700)] 
arch: arm: dts: agilex5: Disable cache allocation for reads

In order to circumvent CCU NOC issue in Agilex5, it is recommended
to disable cache allocation for reads. This prevents hang issues
caused by CCP (Common Cache Pipe) Fill Done FIFO overflow.

Signed-off-by: Naresh Kumar Ravulapalli <nareshkumar.ravulapalli@altera.com>
Reviewed-by: Tien Fong Chee <tien.fong.chee@altera.com>
8 days agoAdd symlink from gpl-2.0.txt to a COPYING file
Daniel P. Berrangé [Fri, 26 Sep 2025 09:45:46 +0000 (10:45 +0100)] 
Add symlink from gpl-2.0.txt to a COPYING file

While it is good that the "Licenses/" directory contains the text
for all licenses that are applicable to u-boot code, it is harder
to determine at a glance what the default and/or preferred license
is. While humans can look at the Licenses/README file, this is not
machine parseable, making it tricky for license detection tools to
automatically determine/report on the overall / aggregate u-boot
license.

The project previously had a top level COPYING file containing a
short blurb, followed by the GPL license text. This was removed
back in commit eca3aeb352c964bdb28b8e191d6326370245e03f when
the "Licenses/" directory was introduced. For the benefit of
automated tools, it is helpful to retain a top level COPYING
file in the repository. Rather than duplicate the license text,
however, a symlink from the Licenses/gpl-2.0.txt file should
suffice.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Reported-by: Alex Bennée <alex.bennee@linaro.org>
Acked-by: Tom Rini <trini@konsulko.com>
8 days agob4-config: configure `b4` for U-Boot
Jiaxun Yang [Wed, 17 Jul 2024 15:12:59 +0000 (23:12 +0800)] 
b4-config: configure `b4` for U-Boot

`b4` is a commandline tool to make patch-based development easier.

Provide a .b4-config file to match U-Boot's development preference about
who is cc'd on patch submission.

Signed-off-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
[trini: Reword slightly]

8 days agoi2c: designware_i2c: Don't warn if reset DT property is not present
Maksim Kiselev [Fri, 26 Sep 2025 10:05:26 +0000 (13:05 +0300)] 
i2c: designware_i2c: Don't warn if reset DT property is not present

If reset property is missing in DT, then we get this warning:
designware_i2c@0: Can't get reset: -2

Avoid this by checking if reset DT property is present, first.

Fixes: 622597dee4f ("i2c: designware: add reset ctrl to driver")
Signed-off-by: Maksim Kiselev <bigunclemax@gmail.com>
Reviewed-by: Heiko Schocher <hs@nabladev.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
10 days agoMerge tag 'efi-2025-10-rc6' of https://source.denx.de/u-boot/custodians/u-boot-efi
Tom Rini [Sat, 27 Sep 2025 14:05:53 +0000 (08:05 -0600)] 
Merge tag 'efi-2025-10-rc6' of https://source.denx.de/u-boot/custodians/u-boot-efi

Pull request efi-2025-10-rc6

CI:

* https://source.denx.de/u-boot/custodians/u-boot-efi/-/pipelines/27745

Docs:

* Correct encodings for spl memory layout diagrams
* Suggest usage of KDOC_WERROR when building documentation
* Replace references to README.fdt-control
* Clarify precedence of environment locations
* Add documentation for the TI am335x_evm board
* Remove README.commands.itest
* Add a note about asking for feedback in the development process

UEFI:

* Cleanup UEFI Variables Kconfig menu

11 days agoefi_loader: Cleanup UEFI Variables menu selection
Michal Simek [Wed, 24 Sep 2025 14:18:18 +0000 (16:18 +0200)] 
efi_loader: Cleanup UEFI Variables menu selection

There are 3 options listed between choice/endchoice FILE/TEE/NO_STORE.
There is no reason to add other config with dependencies between
choice/endchoice because they can never be selected because they depends on
only that 3 options which can be selected.
That's why move additional configuration with dependency below choice
section.

Signed-off-by: Michal Simek <michal.simek@amd.com>
11 days agodoc: Update mentions of README.fdt-control
E Shattow [Tue, 23 Sep 2025 22:30:50 +0000 (15:30 -0700)] 
doc: Update mentions of README.fdt-control

Update documents 'README.fdt-control' reference to replacement 'control.rst':
  doc/arch/nios2.rst
  dts/Makefile

Also convert some adjacent pathname mentions to rST links where applicable

Fixes: 3e9fddfc4f14 "doc: Move devicetree control doc to rST"
Signed-off-by: E Shattow <e@freeshell.de>
11 days agodoc: develop: process: Add note about asking for feedback
Tom Rini [Tue, 23 Sep 2025 17:54:29 +0000 (11:54 -0600)] 
doc: develop: process: Add note about asking for feedback

It can be unclear to contributors what to do if they haven't gotten any
feedback on patches they have submitted. Add a sentence saying that if
they feel it's been too long without any comment, it's OK to reply
again.

Signed-off-by: Tom Rini <trini@konsulko.com>
11 days agodoc: build: documentation: add description of KDOC_WERROR
E Shattow [Fri, 19 Sep 2025 01:37:56 +0000 (18:37 -0700)] 
doc: build: documentation: add description of KDOC_WERROR

Describe KDOC_WERROR and recommend when building documentation for a patch
submission.

Signed-off-by: E Shattow <e@freeshell.de>
11 days agodoc: memory: fix encodings for spl layout diagrams
Anshul Dalal [Wed, 17 Sep 2025 13:27:31 +0000 (18:57 +0530)] 
doc: memory: fix encodings for spl layout diagrams

The commit 284ef1bbcefc ("doc: memory: Add documentation for system
RAM") added documentation for U-Boot's memory usage along with diagrams
showcasing the SPL's memory usage. Although the SVGs for the diagrams
were improperly encoded.

Therefore, this patch fixes the older SVGs with one's with better
encoding and reduced size created using inkscape[1].

[1]: https://inkscape.org/

Reported-by: Alexander Dahl <ada@thorsis.com>
Fixes: 284ef1bbcefc ("doc: memory: Add documentation for system RAM")
Signed-off-by: Anshul Dalal <anshuld@ti.com>
11 days agodoc: environment: clarify env precedence
Ricardo Simoes [Mon, 15 Sep 2025 14:40:33 +0000 (16:40 +0200)] 
doc: environment: clarify env precedence

Since commit 5cf6a06a it is possible to have both text-based and
old-style C environment files. But so far the environment documentation
has not reflected this change. This commit fixes that.

Signed-off-by: Ricardo Simoes <ricardo.simoes@pt.bosch.com>
Signed-off-by: Mark Jonas <mark.jonas@de.bosch.com>
11 days agodoc: Remove README.commands.itest
Tom Rini [Fri, 12 Sep 2025 23:02:52 +0000 (17:02 -0600)] 
doc: Remove README.commands.itest

We currently document this command in doc/usage/cmd/itest.rst and this
documentation is more comprehensive than the older README file. Delete
the older file.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
11 days agodoc: memory: Restore missing diagram
Neha Malcom Francis [Wed, 10 Sep 2025 15:40:39 +0000 (09:40 -0600)] 
doc: memory: Restore missing diagram

When applying the patch that became commit a2d881f5bcd3 ("doc: memory:
Add documentation for system RAM") one of the diagrams was missed.
Re-add this missing file.

Reported-by: Adriano Carvalho <adrianocarvalho.pt@gmail.com>
Fixes: a2d881f5bcd3 doc: memory: Add documentation for system RAM
Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
[trini: Take Neha's original svg and re-apply it]
Signed-off-by: Tom Rini <trini@konsulko.com>
11 days agodoc: board: ti: am335x_evm: Add documentation
Sidharth Seela [Wed, 3 Sep 2025 20:20:42 +0000 (01:50 +0530)] 
doc: board: ti: am335x_evm: Add documentation

Link: https://lore.kernel.org/u-boot/20250829191830.GZ124814@bill-the-cat/
Add documentation for config changes required to enable Falcon SD-FAT boot.

Signed-off-by: Sidharth Seela <sidharthseela@gmail.com>
Cc: Tom Rini <trini@konsulko.com>
12 days agospl: nand: initialize writesize for am335x
Yegor Yefremov [Thu, 25 Sep 2025 20:51:50 +0000 (22:51 +0200)] 
spl: nand: initialize writesize for am335x

Initialize mtd->writesize in nand_init() as otherwise
nand_page_size() returns 0 and this affects NAND read
operations.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
12 days agoMAINTAINERS: Update MMC/POWER/FREESCALE QORIQ
Peng Fan [Fri, 26 Sep 2025 01:57:47 +0000 (09:57 +0800)] 
MAINTAINERS: Update MMC/POWER/FREESCALE QORIQ

- Update MMC entry to match 'mmc' using 'N'
- Add myself as POWER maintainer for regulator and pmic patches. I have
  started to handle relevant patches.
- Update QORIQ maintainer. Priyanka has moved to work on other stuff, I
  have been handling this for quite some time.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
12 days agoMAINTAINERS: update NETWORK and NETWORK (LWIP)
Jerome Forissier [Thu, 25 Sep 2025 15:38:16 +0000 (17:38 +0200)] 
MAINTAINERS: update NETWORK and NETWORK (LWIP)

Add myself as a maintainer of the NETWORK subsystem since:
- I have effectively been handling net patches in my patchwork queue and
sending pull requests to Tom,
- I do have push access to the u-boot-net custodian tree.

Also, add u-boot-net as the SCM tree for NETWORK (LWIP) since it is where
lwIP-related patches end up too.

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
CC: Ramon Fried <rfried.dev@gmail.com>
CC: Joe Hershberger <joe.hershberger@ni.com>
CC: Tom Rini <trini@konsulko.com>
12 days agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh
Tom Rini [Fri, 26 Sep 2025 00:50:11 +0000 (18:50 -0600)] 
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh

RZG2 boot failure fix for boot with TFA which does not pass DT, and
R-Car Gen4 PCIe controller driver alignment with Linux fixes.

12 days agopci: pcie-rcar-gen4: Add missing 1ms delay after PWR reset assertion
Marek Vasut [Wed, 24 Sep 2025 01:47:14 +0000 (03:47 +0200)] 
pci: pcie-rcar-gen4: Add missing 1ms delay after PWR reset assertion

R-Car V4H Reference Manual R19UH0186EJ0130 Rev.1.30 Apr. 21, 2025 page 585
Figure 9.3.2 Software Reset flow (B) indicates that for peripherals in HSC
domain, after reset has been asserted by writing a matching reset bit into
register SRCR, it is mandatory to wait 1ms.

Because it is the controller driver which can determine whether or not the
controller is in HSC domain based on its compatible string, add the missing
delay into the controller driver.

This 1ms delay is documented on R-Car V4H and V4M, it is currently unclear
whether S4 is affected as well. This patch does apply the extra delay on
R-Car S4 as well.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
12 days agopci: pcie-rcar-gen4: Assure reset occurs before DBI access
Marek Vasut [Wed, 24 Sep 2025 01:47:13 +0000 (03:47 +0200)] 
pci: pcie-rcar-gen4: Assure reset occurs before DBI access

Assure the reset is latched and the core is ready for DBI access.
On R-Car V4H, the PCIe reset is asynchronized and does not take
effect immediately, but needs a short time to complete. In case
DBI access happens in that short time, that access generates an
SError. Make sure that condition can never happen, read back the
state of the reset which should turn the asynchronized reset into
synchronized one, and wait a little over 1ms to add additional
safety margin.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
12 days agopci: pcie-rcar-gen4: Fix inverted break condition in PHY initialization
Marek Vasut [Wed, 24 Sep 2025 01:47:12 +0000 (03:47 +0200)] 
pci: pcie-rcar-gen4: Fix inverted break condition in PHY initialization

R-Car V4H Reference Manual R19UH0186EJ0130 Rev.1.30 Apr. 21, 2025 page 4581
Figure 104.3b Initial Setting of PCIEC(example), third quarter of the figure
indicates that register 0xf8 should be polled until bit 18 becomes set to 1.

Register 0xf8 bit 18 is 0 immediately after write to PCIERSTCTRL1 and is set
to 1 in less than 1 ms afterward. The current readl_poll_timeout() break
condition is inverted and returns when register 0xf8 bit 18 is set to 0,
which in most cases means immediately. In case CONFIG_DEBUG_LOCK_ALLOC=y ,
the timing changes just enough for the first readl_poll_timeout() poll to
already read register 0xf8 bit 18 as 1 and afterward never read register
0xf8 bit 18 as 0, which leads to timeout and failure to start the PCIe
controller.

Fix this by inverting the poll condition to match the reference manual
initialization sequence.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
12 days agoboard: rzg2l: Check the DTB pointer passed by the TF-A.
Mathieu Othacehe [Mon, 22 Sep 2025 16:29:00 +0000 (18:29 +0200)] 
board: rzg2l: Check the DTB pointer passed by the TF-A.

On the RZG2L platform, the advised
TF-A (https://github.com/renesas-rz/rzg_trusted-firmware-a/tree/v2.5/rzg2l)
does not pass any DTB blob to U-Boot.

On the other hand, the RZG2L part of U-Boot expects a DTB to be passed.  It
means that if one flashes the latest TF-A as well as the mainline U-Boot,
it will crash trying to dereference the NULL DTB pointer before outputing
anything.

Check if the DTB pointer is NULL before trying to use it.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
13 days agoMerge patch series "Fix boot w/ scriptaddr & minor newline issue"
Tom Rini [Wed, 24 Sep 2025 13:49:33 +0000 (07:49 -0600)] 
Merge patch series "Fix boot w/ scriptaddr & minor newline issue"

Wadim Egorov <w.egorov@phytec.de> says:

First patch fixes boot issues with script boot method and the
second patch is a minor formatting fix in our board detection code.

@TI: I think the scriptaddr should be also updated for most TI/K3 and
beagle board boards.

Link: https://lore.kernel.org/r/20250919063948.3093358-1-w.egorov@phytec.de
13 days agoboard: phytec: common: Fix missing newline in error message
Wadim Egorov [Fri, 19 Sep 2025 06:39:48 +0000 (08:39 +0200)] 
board: phytec: common: Fix missing newline in error message

The error message in phytec_get_product_name() was missing a newline,
causing log output to be concatenated with subsequent messages. Add
the newline to improve readability.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
13 days agoboard: phytec: phycore_am6xx: Update scriptaddr
Wadim Egorov [Fri, 19 Sep 2025 06:39:47 +0000 (08:39 +0200)] 
board: phytec: phycore_am6xx: Update scriptaddr

After switching our boards to standard boot, we observed that the
kernel hangs when booting with the "script" boot method over the
network.

The original scriptaddr value was copied from ti_common.env and
remained unused for some time. On phycore-am62x and phycore-am62ax,
however, this address conflicts with the current location where
ATF is loaded (CONFIG_K3_ATF_LOAD_ADDR).

Move scriptaddr to 0x89100000, directly after fdtoverlay_addr_r.
The phycore-am64x is not affected by this issue, but we update it
as well to keep all phycore-am6xx boards consistent.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Anshul Dalal <anshuld@ti.com>
2 weeks agoMAINTAINERS: Add myself into the list for MbedTLS
Raymond Mao [Fri, 19 Sep 2025 21:04:51 +0000 (14:04 -0700)] 
MAINTAINERS: Add myself into the list for MbedTLS

Add myself into the list for MbedTLS.

Signed-off-by: Raymond Mao <raymond.mao@linaro.org>
Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2 weeks agoMAINTAINERS: Update Luka Perkov's roles
Tom Rini [Mon, 15 Sep 2025 21:01:09 +0000 (15:01 -0600)] 
MAINTAINERS: Update Luka Perkov's roles

Per a private email, drop Luka Perkov from MAINTAINERS entries.

Reviewed-by: Tony Dinh <mibodhi@gmail.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 weeks agoPrepare v2025.10-rc5 v2025.10-rc5
Tom Rini [Tue, 23 Sep 2025 13:33:47 +0000 (07:33 -0600)] 
Prepare v2025.10-rc5

Signed-off-by: Tom Rini <trini@konsulko.com>
2 weeks agoMerge tag 'u-boot-imx-master-20250922' of https://gitlab.denx.de/u-boot/custodians...
Tom Rini [Mon, 22 Sep 2025 14:22:22 +0000 (08:22 -0600)] 
Merge tag 'u-boot-imx-master-20250922' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx

CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/27685

- Fix Phycore i.MX93 voltage modes
- Call DM post init function for init_r phase on i.MX8ULP
- Fix ELE FW version print bug on i.MX8UL EVK.
- Fix LPCG number in ccm_reg structure on i.MX93

2 weeks agoboard: phytec: phycore-imx93: Fix i.MX93 voltage modes
Primoz Fiser [Fri, 19 Sep 2025 07:51:42 +0000 (09:51 +0200)] 
board: phytec: phycore-imx93: Fix i.MX93 voltage modes

Fix support for i.MX93 voltage modes on phyCORE-i.MX93 SoM boards.

First of all, Kconfig option CONFIG_IMX9_LOW_DRIVE_MODE is gone since
commit c9efcad23741 ("imx93_evk: Remove CONFIG_IMX9_LOW_DRIVE_MODE and
ld defconfig") and was replaced by runtime detection mechanism. Thus
lets use is_voltage_mode() instead of Kconfig to detect CPU type and
select proper voltage mode.

Secondly, 1400MHz ND mode (Nominal Drive) requiring 0.85V BUCK voltage
was not supported with current power_init_board() PMIC settings. Add
check also for this CPU type and set BUCK voltage accordingly.

Last but not least, add printf() printouts about PMIC voltage mode to
the console. This makes it more apparent and verbose about voltage mode
in use. Also our internal tests depend on this printout to catch issues
with i.MX93 CPU types and set PMIC voltage modes.

Signed-off-by: Primoz Fiser <primoz.fiser@norik.com>
2 weeks agoarm: imx9: Fix LPCG number in ccm_reg structure
Ye Li [Fri, 19 Sep 2025 06:58:34 +0000 (14:58 +0800)] 
arm: imx9: Fix LPCG number in ccm_reg structure

The LPCG number on iMX93 and iMX91 is 127 not 122. The wrong
value is used in ccm_reg structure and Coverity reports several
issues as out-of-bounds write.

Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
2 weeks agoimx8ulp_evk: Fix ELE FW version print bug
Ye Li [Fri, 19 Sep 2025 06:58:33 +0000 (14:58 +0800)] 
imx8ulp_evk: Fix ELE FW version print bug

According to latest ELE Get FW version API, the FW version word is defined
as below. The patch version only has 4 bits and minor version has 12 bits.
However, the codes use 8 bits for patch version and minor version. Add the
patch to fix the issue.

ELE firmware version
[31] - When set indicates a dirty build.
[30] - Reserved
[29:28] - Hotfix version.
[27] - When set, indicate that ELE FW is authenticated and operational.
[26:25] - Reserved
[24] - When set, indicate that an alternative FW is running.
[23:16] - Indicate the major version. This byte is checked against the
version set in the fuses to determine if the FW execution can be authorized
[15:4] - Indicate the minor version.
[3:0] - Indicate the patch version.

Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
2 weeks agoimx: imx8ulp: Call DM post init function for init_r phase
Ye Li [Fri, 19 Sep 2025 06:58:32 +0000 (14:58 +0800)] 
imx: imx8ulp: Call DM post init function for init_r phase

The ELE MU driver needs to be probed at init_r phase as well because
some ELE APIs will be called.

Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
2 weeks agoARM: Remove mistyped GICV3 definition from ARCH_SYNQUACER 812/head
Kunihiko Hayashi [Wed, 10 Sep 2025 09:25:01 +0000 (18:25 +0900)] 
ARM: Remove mistyped GICV3 definition from ARCH_SYNQUACER

The config "GIC_V3" seems to be typo, and currently "GICV3" remains
disabled. This should be removed until needed.

Fixes: 5cd4a355e0f0 ("board: synquacer: Add DeveloperBox 96boards EE support")
Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
2 weeks agoMerge patch series "board: dhelectronics: Check pointer before access in dh_get_value...
Tom Rini [Wed, 17 Sep 2025 15:06:53 +0000 (09:06 -0600)] 
Merge patch series "board: dhelectronics: Check pointer before access in dh_get_value_from_eeprom_buffer()"

This series from Marek Vasut <marek.vasut@mailbox.org> cleans up some of
the common code between dhelectronics platforms.

Link: https://lore.kernel.org/r/20250907010103.667681-1-marek.vasut@mailbox.org
2 weeks agoboard: dhelectronics: Use isascii() before isprint() in dh_read_eeprom_id_page()
Marek Vasut [Sun, 7 Sep 2025 01:00:47 +0000 (03:00 +0200)] 
board: dhelectronics: Use isascii() before isprint() in dh_read_eeprom_id_page()

The isprint() checks printability across all 256 characters, some of the
upper 128 characters are printable and produce artifacts on UART. Call
isascii() first to only consider the bottom 7bit ASCII characters as
printable, and then check their printability using isprint(). This fixes
a rare misprint in case the ID page content is uninitialized or corrupted.

Signed-off-by: Marek Vasut <marek.vasut@mailbox.org>
Reviewed-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
2 weeks agoboard: dhelectronics: Check pointer before access in dh_get_value_from_eeprom_buffer()
Marek Vasut [Sun, 7 Sep 2025 01:00:46 +0000 (03:00 +0200)] 
board: dhelectronics: Check pointer before access in dh_get_value_from_eeprom_buffer()

The eip pointer in dh_get_value_from_eeprom_buffer() might be NULL.
The current NULL pointer check happens too late, after the eip was
accessed in variable assignment. Reorder the two, so the NULL pointer
check happens first, and any access second, otherwise the access may
trigger a hang or other undefined behavior.

Signed-off-by: Marek Vasut <marek.vasut@mailbox.org>
Reviewed-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
2 weeks agoMerge tag 'u-boot-imx-master-20250917' of https://gitlab.denx.de/u-boot/custodians...
Tom Rini [Wed, 17 Sep 2025 13:54:06 +0000 (07:54 -0600)] 
Merge tag 'u-boot-imx-master-20250917' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx

CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/27660

- Restore the support for the i.MX95 A0 silicon.

2 weeks agoMerge patch series "Hyperflash boot fixes for j721e/j7200"
Tom Rini [Wed, 17 Sep 2025 13:52:31 +0000 (07:52 -0600)] 
Merge patch series "Hyperflash boot fixes for j721e/j7200"

Anurag Dutta <a-dutta@ti.com> says:

This series introdues a couple of small fixes that involves
enabling hyperflash at R5 SPL and u-boot proper stage and
Kconfig changes that are required for HBMC boot on j721e/j7200

Test logs:
https://gist.github.com/anuragdutta731/0f56e8d9bdf0cfe3d221c69d09a58704

Link: https://lore.kernel.org/r/20250917094659.3922343-1-a-dutta@ti.com
2 weeks agoarm: dts: k3-j721e-r5-common-proc-board: Enable HBMC in R5 SPL stage
Anurag Dutta [Wed, 17 Sep 2025 09:46:59 +0000 (15:16 +0530)] 
arm: dts: k3-j721e-r5-common-proc-board: Enable HBMC in R5 SPL stage

Enable HBMC in the R5 SPL stage

Fixes: c9df79ee64d0 ("arm: dts: k3-j721e-r5-common: Add HBMC overrides for R5 SPL")
Signed-off-by: Anurag Dutta <a-dutta@ti.com>
Reviewed-by: Udit Kumar <u-kumar1@ti.com>
2 weeks agoconfigs: j7200_evm_*_defconfig: Enable HBMC and MUX_MMIO at SPL
Anurag Dutta [Wed, 17 Sep 2025 09:46:58 +0000 (15:16 +0530)] 
configs: j7200_evm_*_defconfig: Enable HBMC and MUX_MMIO at SPL

Add the HBMC and MUX_MMIO configs in the SPL and u-boot proper
stage for successful HBMC boot.

Signed-off-by: Anurag Dutta <a-dutta@ti.com>
2 weeks agoconfigs: j721e_evm_r5: Enable HBMC and MUX_MMIO at SPL
Anurag Dutta [Wed, 17 Sep 2025 09:46:57 +0000 (15:16 +0530)] 
configs: j721e_evm_r5: Enable HBMC and MUX_MMIO at SPL

Add the HBMC and MUX_MMIO configs in the R5 SPL stage for
successful HBMC boot.

Signed-off-by: Anurag Dutta <a-dutta@ti.com>
Reviewed-by: Udit Kumar <u-kumar1@ti.com>
2 weeks agomtd: Kconfig: Add SPL_MUX_MMIO dependency to HBMC driver
Anurag Dutta [Wed, 17 Sep 2025 09:46:56 +0000 (15:16 +0530)] 
mtd: Kconfig: Add SPL_MUX_MMIO dependency to HBMC driver

MUX_MMIO is needed by HBMC in SPL stage. Enable it at SPL as well
as u-boot proper stage.

Signed-off-by: Anurag Dutta <a-dutta@ti.com>
Reviewed-by: Udit Kumar <u-kumar1@ti.com>
2 weeks agoxilinx: Disable SPL_OS_BOOT for Zynq and ZynqMP
Michal Simek [Wed, 17 Sep 2025 07:22:18 +0000 (09:22 +0200)] 
xilinx: Disable SPL_OS_BOOT for Zynq and ZynqMP

The commit 210702ae6ce8 ("spl: spi: fix falcon mode for spi boot") fixed
the logic of spl_start_uboot() where 0 means OS boot and 1 means u-boot.
Zynq/ZynqMP enable OS_BOOT by default but it was never really be used
that's why disable it to boot via U-Boot phase all the time.

Signed-off-by: Michal Simek <michal.simek@amd.com>
2 weeks agoMerge tag 'u-boot-stm32-20250917' of https://source.denx.de/u-boot/custodians/u-boot-stm
Tom Rini [Wed, 17 Sep 2025 13:49:15 +0000 (07:49 -0600)] 
Merge tag 'u-boot-stm32-20250917' of https://source.denx.de/u-boot/custodians/u-boot-stm

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

- Fix net suport for STM32MP2
- Fix to prevent hang in clk-stm32-core for STM32MP13
- Fix ethernet init for DH STM32MP1

2 weeks agoboard: ti: am57xx: Remove "ti/omap/" from name_fit_config
Anurag Dutta [Wed, 17 Sep 2025 04:17:29 +0000 (09:47 +0530)] 
board: ti: am57xx: Remove "ti/omap/" from name_fit_config

Commit 649f4a7d3ca7 ("board: ti: am57xx: Set fdtfile from C code
instead of findfdt script") prepends "ti/omap/" to the actual name
of the fdtfile whereas fit image boot needs exact dtb name. So, remove
"ti/omap" from name_fit_config by substituting it with an empty string.

Fixes: 649f4a7d3ca7 ("board: ti: am57xx: Set fdtfile from C code instead of findfdt script")
Signed-off-by: Anurag Dutta <a-dutta@ti.com>
Reviewed-by: Udit Kumar <u-kumar1@ti.com>
2 weeks agoimx95_evk: Restore support for i.MX95 A0 silicon
Alice Guo [Fri, 5 Sep 2025 18:22:04 +0000 (02:22 +0800)] 
imx95_evk: Restore support for i.MX95 A0 silicon

This patch is used to restore support for i.MX95 A0 silicon. To avoid
duplicating defconfig, imx95.config is added and can be shared between
imx95_a0_19x19_evk_defconfig and imx95_19x19_evk_defconfig.

container.cfg and imximage.cfg are used to created .cfgout files that
are be passed to mkimage with -n to build flash.bin. Now they have been
deleted and replaced by adding their content to properties of node which
type is nxp-imx9image under binman node.

Fixes: 9936724aa9b ("imx95_evk: Add i.MX95 B0 support")
Signed-off-by: Alice Guo <alice.guo@nxp.com>
Tested-By: Tim Harvey <tharvey@gateworks.com> # imx95-19x19-evk (rA0)
2 weeks agobinman: add a new entry type to support .bin file generation for the i.MX95 platform
Alice Guo [Fri, 5 Sep 2025 18:22:03 +0000 (02:22 +0800)] 
binman: add a new entry type to support .bin file generation for the i.MX95 platform

To support passing specific commands defined in enum imx8image_cmd to
the imx8image_copy_image() function, this patch introduces a new entry
type nxp-imx9image. This entry generates a plain text data file
containing the relevant commands, enabling flexible configuration during
image creation.

Signed-off-by: Alice Guo <alice.guo@nxp.com>
3 weeks agoboard: starfive: visionfive2: deprecate mixed-case product ids VF7110a VF7110b
E Shattow [Wed, 3 Sep 2025 02:07:06 +0000 (19:07 -0700)] 
board: starfive: visionfive2: deprecate mixed-case product ids VF7110a VF7110b

Per recent discussion [1] product IDs VF7110A or VF7110B from EEPROM are
sufficient to select for VisionFive 2 1.2a or VisionFive 2 1.3b boards.
There are no VisionFive 2 products with mixed-case product IDs in EERPOM
so factor out the unnecessary select case conditional.

1: https://lore.kernel.org/u-boot/ZQ2PR01MB1307D97D2C9566B8EE443812E6062@ZQ2PR01MB1307.CHNPR01.prod.partner.outlook.cn/

Signed-off-by: E Shattow <e@freeshell.de>
Reported-by: Hal Feng <hal.feng@starfivetech.com>
3 weeks agoARM: stm32: Perform node compatible check for KS8851 early
Marek Vasut [Mon, 15 Sep 2025 00:49:05 +0000 (02:49 +0200)] 
ARM: stm32: Perform node compatible check for KS8851 early

Check the compatible string of ethernet1 node for KS8851 very early on,
before calling uclass_get_device_by_of_path() which might initialize
the device and possibly attempt to configure MAC address into device
which is not KS8851. Doing the compatibility check early prevent this.

Signed-off-by: Marek Vasut <marek.vasut@mailbox.org>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
3 weeks agonet: dwc_eth_qos: Fix support for stm32mp2 platform
Marek Vasut [Mon, 15 Sep 2025 00:53:04 +0000 (02:53 +0200)] 
net: dwc_eth_qos: Fix support for stm32mp2 platform

The layout of SYSCFG_ETHnCR on STM32MP25xx is slightly different yet again.
Add missing swizzling to program the correct register with the correct content.

Fixes: 20afca89ed53 ("net: dwc_eth_qos: add support of stm32mp2 platform")
Signed-off-by: Marek Vasut <marek.vasut@mailbox.org>
Reviewed-by: Christophe ROULLIER<christophe.roullier@foss.st.com>
3 weeks agoclk: stm32: Pass udevice pointer to clk_register_composite()
Marek Vasut [Sat, 6 Sep 2025 23:00:01 +0000 (01:00 +0200)] 
clk: stm32: Pass udevice pointer to clk_register_composite()

The clk_register_composite() does clk_resolve_parent_clk() look up,
which requires valid udevice pointer. Do not pass NULL, pass a valid
device pointer to prevent hang on registering ck_usbo_48m clock on
STM32MP13xx.

Signed-off-by: Marek Vasut <marek.vasut@mailbox.org>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
3 weeks agoarm: armv8: Fix spl recover data section broken
Ye Li [Fri, 12 Sep 2025 09:41:11 +0000 (17:41 +0800)] 
arm: armv8: Fix spl recover data section broken

SPL recover data section is broken which causes reboot failure on
some i.MX platforms (iMX8QM/iMX95).
The global variable cold_reboot_flag is assigned to weak reset_flag
function which always return 1, so restore never been executed in
warm reboot.

Fixes: 1c37e59bfbba ("arm: armv8: Improve SPL data save and restore implementation")
Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
3 weeks agospl: spi: fix falcon mode for spi boot
Anshul Dalal [Tue, 9 Sep 2025 08:17:30 +0000 (13:47 +0530)] 
spl: spi: fix falcon mode for spi boot

spl_start_uboot is a board overridable function that switches to falcon
boot mode on return value of 0.

Though for SPI, the falcon boot mode was being enabled on return value
of 1 which is not the correct behaviour. Therefore this patch fixes it
to the expected boot flow.

Fixes: 14509a28aa20 ("spl: spi: Consolidate spi_load_image_os into spl_spi_load_image")
Signed-off-by: Anshul Dalal <anshuld@ti.com>
3 weeks agoMerge patch series "Fix dma_addr_t for R5 SPL"
Tom Rini [Thu, 11 Sep 2025 16:03:12 +0000 (10:03 -0600)] 
Merge patch series "Fix dma_addr_t for R5 SPL"

Anshul Dalal <anshuld@ti.com> says:

On various TI's K3 platforms boot failure was observed on SPI NOR since the
commit 5609f200d062 ("arm: Kconfig: enable LTO for ARCH_K3"). This issue was
root caused to stack corruption by the 'udma_transfer' function. Where the local
variable 'paddr' of type 'dma_addr_t' was being written to as a 64-bit value
which overwrote the stack frame of the caller (dma_memcpy) as only 32-bits had
been reserved for paddr on the stack, specifically the r4 register in the frame
of dma_memcpy was being overwritten with a 0.

drivers/dma/ti/k3-udma.c:2192:

int udma_transfer(...)
{
...
dma_addr_t paddr = 0;

...
/* paddr was written to as 64-bit value here */
udma_poll_completion(uc, &paddr);
}

drivers/dma/dma-uclass.c:234:

int dma_memcpy(...)
{
dma_addr_t destination;
dma_addr_t source;
int ret;

...

/* This call resolves to udma_transfer */
ret = ops->transfer(...);

...

dma_unmap_single(destination, ...);
dma_unmap_single(...);
return ret;
}

Enabling LTO changed how gcc mapped local variables of dma_memcpy to CPU
registers, where earlier the bug was hidden since the overwritten register
'r4' was allotted to 'ret' but was allotted to 'destination' once LTO was
enabled. And since the overwritten value was 0, the bug remained undetected
as it just meant ret was 0, but having 'destination' set to 0 caused
dma_unmap_single to fail silently leading to boot failures.

The fix entails enabling DMA_ADDR_T_64BIT which changes dma_addr_t from u32 to
u64 for the R5 SPL thus reserving enough space for 'paddr' to prevent the
overflow.

Link: https://lore.kernel.org/r/20250903115207.572304-1-anshuld@ti.com
3 weeks agoconfig: arch: k3: enable DMA_ADDR_T_64BIT
Anshul Dalal [Wed, 3 Sep 2025 11:52:06 +0000 (17:22 +0530)] 
config: arch: k3: enable DMA_ADDR_T_64BIT

ARCH_K3 encompasses both 32 and 64-bit cores on the same SoC, though the
DMA addresses are always 64-bit in size.

With the current implementation, the R5 SPL uses a u32 for dma_addr_t
which leads to data overflow when functions such as k3_nav_*_pop_mem try
to write a 64-bit address to dma_addr_t variable.

In certain cases it leads to stack corruption which manifest as boot
failures on certain compilers, such as SPI boot on GCC 14.2 or 13.3.

Therefore this patch selects CONFIG_DMA_ADDR_T_64BIT for all ARCH_K3.

Fixes: ffcc66e8fec5 ("dma: ti: add driver to K3 UDMA")
Signed-off-by: Anshul Dalal <anshuld@ti.com>
Reviewed-by: Prasanth Babu Mantena <p-mantena@ti.com>
3 weeks agodma: ti: k3-udma: fix dma_addr_t typecasts
Anshul Dalal [Wed, 3 Sep 2025 11:52:05 +0000 (17:22 +0530)] 
dma: ti: k3-udma: fix dma_addr_t typecasts

dma_addr_t is used to store any valid DMA address which might not
necessarily be the same size as host architecture's word size. Though
various typecasts in k3's dma and usb driver expect dma_addr_t to be the
same size as the word size.

This leads the compiler to throw a "cast from pointer to integer of
different size" warning when the condition is not met, for example when
enabling CONFIG_DMA_ADDR_T_64BIT for the R5 core.

Therefore this patch fixes the typecasts by using 'uintptr_t' as an
intermediary type which is guaranteed to be the same size as void* on
the host architecture. Thus, eliminating the compiler warning.

Signed-off-by: Anshul Dalal <anshuld@ti.com>
3 weeks agoenv: fix config dependency for ENV_OFFSET_REDUND_RELATIVE_END
Heiko Thiery [Thu, 11 Sep 2025 09:32:24 +0000 (11:32 +0200)] 
env: fix config dependency for ENV_OFFSET_REDUND_RELATIVE_END

Since commit 5fb88fa725 "env: Rename SYS_REDUNDAND_ENVIRONMENT to ENV_REDUNDANT"
the option SYS_REDUNDAND_ENVIRONMENT is no longer available and should be
renamed to ENV_REDUNDANT.

Fixes: 95f03ee65c0e ("env: mmc: fix offsets relative to the end of the partition")
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
3 weeks agoconfigs: Resync with savedefconfig
Tom Rini [Wed, 10 Sep 2025 21:25:08 +0000 (15:25 -0600)] 
configs: Resync with savedefconfig

Resync all defconfig files using qconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
3 weeks agospl: SPL_DM_SPI_FLASH depends on SPL_DM_SPI
Heinrich Schuchardt [Thu, 28 Aug 2025 13:52:35 +0000 (15:52 +0200)] 
spl: SPL_DM_SPI_FLASH depends on SPL_DM_SPI

The SPI flash driver does not build without SPI support enabled.

Fixes: 4151f4f822bb ("spl: Rework and tighten some dependencies")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Acked-by: Peng Fan <peng.fan@nxp.com>
Acked-by: Anshul Dalal <anshuld@ti.com>
4 weeks agoconfigs: starfive: Add visionfive2 CONFIG_DNS enabled
E Shattow [Mon, 1 Sep 2025 11:27:40 +0000 (04:27 -0700)] 
configs: starfive: Add visionfive2 CONFIG_DNS enabled

Enable CONFIG_DNS for visionfive2 board target. With CONFIG_PROT_DNS_LWIP
enabled and CONFIG_CMD_DNS disabled this restores DNS functionality
displaced by LwIP DNS refactoring during the merge window.

Signed-off-by: E Shattow <e@freeshell.de>
4 weeks agoconfigs: Fix crash on coreboot x86
Patrick Rudolph [Wed, 3 Sep 2025 07:05:01 +0000 (09:05 +0200)] 
configs: Fix crash on coreboot x86

Booting u-boot as payload with coreboot's main branch is currently broken
since commit [1] on x86 as U-boot assumes the active GDT matches what
U-Boot would have installed in start16.S.

Make no assumptions and always load the GDT when building as coreboot
payload to make sure the segment registers are actually matching the GDT.

Fixes #GP seen when booting U-Boot as coreboot payload.

1: https://review.coreboot.org/c/coreboot/+/87255

Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Link: https://review.coreboot.org/c/coreboot/+/87255
Reviewed-by: Tom Rini <trini@konsulko.com>
4 weeks agoPrepare v2025.10-rc4 v2025.10-rc4
Tom Rini [Mon, 8 Sep 2025 16:17:59 +0000 (10:17 -0600)] 
Prepare v2025.10-rc4

Signed-off-by: Tom Rini <trini@konsulko.com>
4 weeks agoMAINTAINERS: Add entry for DesignWare XGMAC driver
Boon Khai Ng [Tue, 26 Aug 2025 03:05:05 +0000 (11:05 +0800)] 
MAINTAINERS: Add entry for DesignWare XGMAC driver

Add a MAINTAINERS entry for the DesignWare XGMAC network driver to
ensure future patches are properly routed for review and support.

Signed-off-by: Boon Khai Ng <boon.khai.ng@altera.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
4 weeks agoconfigs: Resync with savedefconfig
Tom Rini [Mon, 8 Sep 2025 14:51:08 +0000 (08:51 -0600)] 
configs: Resync with savedefconfig

Resync all defconfig files using qconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
4 weeks agoMerge patch series "AM57 boot fixes"
Tom Rini [Mon, 8 Sep 2025 14:44:54 +0000 (08:44 -0600)] 
Merge patch series "AM57 boot fixes"

Anurag Dutta <a-dutta@ti.com> says:

This patch series migrates from .h to .env format for am57xx/dra7xx.
Also, we do relevant changes so that the fdtfile can be set from C code.

logs : https://gist.github.com/anuragdutta731/82560cc9bc958ca70a25a95a7031eeea

Link: https://lore.kernel.org/r/20250901061659.986164-1-a-dutta@ti.com
4 weeks agoboard: ti: dra7xx: Set fdtfile from C code instead of findfdt script
Anurag Dutta [Mon, 1 Sep 2025 06:16:59 +0000 (11:46 +0530)] 
board: ti: dra7xx: Set fdtfile from C code instead of findfdt script

We now can provide a map and have the standard fdtfile variable set from
code itself. This allows for bootstd to "just work".

Signed-off-by: Anurag Dutta <a-dutta@ti.com>
4 weeks agoboard: ti: am57xx: Set fdtfile from C code instead of findfdt script
Anurag Dutta [Mon, 1 Sep 2025 06:16:58 +0000 (11:46 +0530)] 
board: ti: am57xx: Set fdtfile from C code instead of findfdt script

We now can provide a map and have the standard fdtfile variable set from
code itself. This allows for bootstd to "just work".

Signed-off-by: Anurag Dutta <a-dutta@ti.com>
4 weeks agoboard: ti: am57xx: Change to using .env
Anurag Dutta [Mon, 1 Sep 2025 06:16:57 +0000 (11:46 +0530)] 
board: ti: am57xx: Change to using .env

Move to using .env file for setting up environment variables
for am57xx and dra7xx.

Signed-off-by: Anurag Dutta <a-dutta@ti.com>
4 weeks agoinclude: env: ti: Use .env for environment variables
Anurag Dutta [Mon, 1 Sep 2025 06:16:56 +0000 (11:46 +0530)] 
include: env: ti: Use .env for environment variables

Add omap common environment variables to .env. We retain the old-style C
environment .h files to maintain compatibility with other omap devices that
have not moved to using .env yet.

Signed-off-by: Anurag Dutta <a-dutta@ti.com>
4 weeks agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh
Tom Rini [Mon, 8 Sep 2025 14:33:30 +0000 (08:33 -0600)] 
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh

4 weeks agoarm64: renesas: r8a779g3: Use $loadaddr in bootcmd on Retronix R-Car V4H Sparrow...
Marek Vasut [Wed, 3 Sep 2025 11:23:23 +0000 (13:23 +0200)] 
arm64: renesas: r8a779g3: Use $loadaddr in bootcmd on Retronix R-Car V4H Sparrow Hawk board

Avoid use of hard-coded address in boot command, instead use $loadaddr
which is the default load address. This improves consistency of the
environment on this board.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
4 weeks agoARM: renesas: Enable CONFIG_ENV_VARS_UBOOT_CONFIG on all boards
Marek Vasut [Wed, 3 Sep 2025 11:23:57 +0000 (13:23 +0200)] 
ARM: renesas: Enable CONFIG_ENV_VARS_UBOOT_CONFIG on all boards

The CONFIG_ENV_VARS_UBOOT_CONFIG extends U-Boot environment with
variables arch/board/board_name/soc/vendor, which can be used to
discern different devices from each other based purely on U-Boot
environment variables.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
4 weeks agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-samsung
Tom Rini [Fri, 5 Sep 2025 14:15:16 +0000 (08:15 -0600)] 
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-samsung

- Fix issues reported by smatch
- exynos4210-origen cleanups
- e850-96 improvements

4 weeks agoMerge branch 'staging' of https://source.denx.de/u-boot/custodians/u-boot-tegra
Tom Rini [Wed, 3 Sep 2025 21:21:14 +0000 (15:21 -0600)] 
Merge branch 'staging' of https://source.denx.de/u-boot/custodians/u-boot-tegra

Branch contains minor improvents for ASUS SL101 and Jetson Nano along
with support for Microsoft Surface 2 tablet.

4 weeks agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh
Tom Rini [Wed, 3 Sep 2025 21:19:15 +0000 (15:19 -0600)] 
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh

- Fix an issue reported by smatch in rzg2l pinctrl driver

4 weeks agospi: exynos: Remove extra term from test
Andrew Goodbody [Mon, 1 Sep 2025 15:13:14 +0000 (16:13 +0100)] 
spi: exynos: Remove extra term from test

In spi_rx_tx there comes a test for execution of a code block that
allows execution if rxp is not NULL or stopping is true. However all the
code in this block relies on rxp being valid so allowing entry just if
stopping is true does not make sense. So remove this from the test
expression leaving just a NULL check for rxp.

This issue was found by Smatch.

Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
5 weeks agopinctrl: rzg2l: Variable may not have been assigned to
Andrew Goodbody [Thu, 7 Aug 2025 14:41:18 +0000 (15:41 +0100)] 
pinctrl: rzg2l: Variable may not have been assigned to

In rzg2l_pinconf_set and rzg2l_get_pin_muxing if the call to
rzg2l_selector_decode fails then the variable pin may not have been
assigned to. Remove the use of pin from the error message. Also update
the error message to show the invalid selector used instead of port
which will be the error code returned.

This issue was found by Smatch.

Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
Reviewed-by: Paul Barker <paul@pbarker.dev>
Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>