]> git.ipfire.org Git - thirdparty/u-boot.git/log
thirdparty/u-boot.git
2 months agoMerge tag 'u-boot-at91-2026.04-a' of https://source.denx.de/u-boot/custodians/u-boot...
Tom Rini [Sun, 8 Feb 2026 16:14:45 +0000 (10:14 -0600)] 
Merge tag 'u-boot-at91-2026.04-a' of https://source.denx.de/u-boot/custodians/u-boot-at91

First set of u-boot-at91 features for the 2026.04 cycle:

This small fixes set includes fixing 64 bit builds and some warnings for
the at91 serial driver, and some cleanup on the nand driver.

2 months agoarm: dts: k3-am62d-evm-binman: Fix device tree reference
Paresh Bhagat [Wed, 28 Jan 2026 00:54:53 +0000 (06:24 +0530)] 
arm: dts: k3-am62d-evm-binman: Fix device tree reference

Fix ti-secure content reference from spl_am62a7_sk_dtb to
spl_am62d2_evm_dtb or AM62d dtb. Also remove redundant k3-binman.dtsi
include.

Fixes: 14dfa6b86187 ("Add initial support for AM62D2-EVM")
Signed-off-by: Paresh Bhagat <p-bhagat@ti.com>
Reviewed-by: Andrew Davis <afd@ti.com>
2 months agoarm: mach-k3: r5: j721e: clk-data: manually set the main_pll3 frequency
Bryan Brattlof [Wed, 28 Jan 2026 12:36:21 +0000 (18:06 +0530)] 
arm: mach-k3: r5: j721e: clk-data: manually set the main_pll3 frequency

Moving forward, DM firmware will no longer mess with the MAIN_PLL3.
This means MAIN_PLL3 will need to be manually set to 2GHz in order for
the CPSW9G HSDIV to have the correct 250MHz output for RGMII.

Signed-off-by: Bryan Brattlof <bb@ti.com>
Signed-off-by: Siddharth Vadapalli <s-vadapalli@ti.com>
2 months agoMAINTAINERS: Add entry for SMBIOS
Raymond Mao [Wed, 4 Feb 2026 16:31:40 +0000 (11:31 -0500)] 
MAINTAINERS: Add entry for SMBIOS

Add entry for SMBIOS in MAINTAINERS and assign myself as maintainer.

Signed-off-by: Raymond Mao <raymond.mao@riscstar.com>
2 months agoMerge patch series "Add command for getting ramsize in scripts"
Tom Rini [Sat, 7 Feb 2026 17:51:43 +0000 (11:51 -0600)] 
Merge patch series "Add command for getting ramsize in scripts"

Frank Wunderlich <frank-w@public-files.de> says:

Add command for getting ramsize in scripts

Link: https://lore.kernel.org/r/20260204184045.111808-1-linux@fw-web.de
2 months agodoc: cmd: add usage doc for memsize
Frank Wunderlich [Wed, 4 Feb 2026 18:40:44 +0000 (19:40 +0100)] 
doc: cmd: add usage doc for memsize

Add documentation for memsize command.

Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
2 months agotest: cmd: add test for memsize
Frank Wunderlich [Wed, 4 Feb 2026 18:40:43 +0000 (19:40 +0100)] 
test: cmd: add test for memsize

Add a test for memsize command in same way as meminfo.

Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
2 months agocmd: mem: add command for getting ram size for use in scripts
Frank Wunderlich [Wed, 4 Feb 2026 18:40:42 +0000 (19:40 +0100)] 
cmd: mem: add command for getting ram size for use in scripts

Add a command for getting detected ram size with possibility to
assign it to an environment variable.

example usage:

BPI-R4> memsize
4096 MiB
BPI-R4> memsize memsz
BPI-R4> printenv memsz
memsz=4096
BPI-R4>

board with 8GB ram:

BPI-R4> memsize
8192 MiB
BPI-R4> memsize memsz
BPI-R4> printenv memsz
memsz=8192
BPI-R4>

Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
2 months agoMerge patch series "Firewall ATF and OP-TEE memory regions in Sitara"
Tom Rini [Sat, 7 Feb 2026 17:51:14 +0000 (11:51 -0600)] 
Merge patch series "Firewall ATF and OP-TEE memory regions in Sitara"

Suhaas Joshi <s-joshi@ti.com> says:

This series starts by replacing hard-coded addresses in firewall
templates that are defined in k3-binman.dtsi, by Kconfigs. Using
Kconfigs makes it easier for someone to move ATF and OP-TEE to another
location, since they wouldn't have to fiddle with the firewall
configurations in dtsi files.

The rest of the commits in this series add firewall configs to each
device's dtsi files.

I have only tested this patch series with TI boards. For non-TI Sitara
boards, respective board maintainers are requested to test the relevant
patch and confirm whether it works.

To test this, I used `k3conf <read|write> <address> [<value>]`. Both of
these operations were disallowed, as expected.

Link: https://lore.kernel.org/r/20260127081652.506357-1-s-joshi@ti.com
2 months agoarm: dts: k3-am642-phycore-binman: Configure firewall for ATF/OPTEE
Suhaas Joshi [Tue, 27 Jan 2026 08:16:52 +0000 (13:46 +0530)] 
arm: dts: k3-am642-phycore-binman: Configure firewall for ATF/OPTEE

Add firewall configurations to protect ATF and OP-TEE memory regions
from non-secure read's and write's in Phycore AM64 SOM.

Signed-off-by: Suhaas Joshi <s-joshi@ti.com>
2 months agoarm: dts: k3-am64x-binman: Configure firewall for ATF/OPTEE
Suhaas Joshi [Tue, 27 Jan 2026 08:16:51 +0000 (13:46 +0530)] 
arm: dts: k3-am64x-binman: Configure firewall for ATF/OPTEE

Add firewall configurations to protect ATF and OP-TEE memory regions
from non-secure reads and writes in AM64x.

Signed-off-by: Suhaas Joshi <s-joshi@ti.com>
2 months agoarm: dts: k3-am62a-phycore-binman: Configure firewall for ATF/OPTEE
Suhaas Joshi [Tue, 27 Jan 2026 08:16:50 +0000 (13:46 +0530)] 
arm: dts: k3-am62a-phycore-binman: Configure firewall for ATF/OPTEE

Add firewall configurations to protect ATF and OP-TEE memory regions
from non-secure read's and write's in Phycore AM62A SOM.

Signed-off-by: Suhaas Joshi <s-joshi@ti.com>
2 months agoarm: dts: k3-am62a-binman: Configure firewall for ATF/OPTEE
Suhaas Joshi [Tue, 27 Jan 2026 08:16:49 +0000 (13:46 +0530)] 
arm: dts: k3-am62a-binman: Configure firewall for ATF/OPTEE

Add firewall configurations to protect ATF and OP-TEE memory regions
from non-secure reads and writes in AM62A.

Signed-off-by: Suhaas Joshi <s-joshi@ti.com>
2 months agoarm: dts: k3-am62p5-verdin-binman: Configure firewall for ATF/OPTEE
Suhaas Joshi [Tue, 27 Jan 2026 08:16:48 +0000 (13:46 +0530)] 
arm: dts: k3-am62p5-verdin-binman: Configure firewall for ATF/OPTEE

Add firewall configurations to protect ATF and OP-TEE memory regions
from non-secure read's and write's in Verdin AM62P board.

Signed-off-by: Suhaas Joshi <s-joshi@ti.com>
2 months agoarm: dts: k3-am62p-binman: Configure firewall for ATF/OPTEE
Suhaas Joshi [Tue, 27 Jan 2026 08:16:47 +0000 (13:46 +0530)] 
arm: dts: k3-am62p-binman: Configure firewall for ATF/OPTEE

Add firewall configurations to protect ATF and OP-TEE memory regions
from non-secure reads and writes in AM62P.

Signed-off-by: Suhaas Joshi <s-joshi@ti.com>
2 months agoarm: dts: k3-am625-verdin-binman: Configure Firewall for ATF/OPTEE
Suhaas Joshi [Tue, 27 Jan 2026 08:16:46 +0000 (13:46 +0530)] 
arm: dts: k3-am625-verdin-binman: Configure Firewall for ATF/OPTEE

Add firewall configurations to protect ATF and OP-TEE memory regions
from non-secure read's and write's in Verdin AM62 board.

Signed-off-by: Suhaas Joshi <s-joshi@ti.com>
2 months agoarm: dts: k3-am625-phycore-binman: Configure firewall for ATF/OPTEE
Suhaas Joshi [Tue, 27 Jan 2026 08:16:45 +0000 (13:46 +0530)] 
arm: dts: k3-am625-phycore-binman: Configure firewall for ATF/OPTEE

Add firewall configurations to protect ATF and OP-TEE from non-secure
reads and writes in Phycore AM625 SOM.

Signed-off-by: Suhaas Joshi <s-joshi@ti.com>
2 months agoarm: dts: k3-am625-binman: Configure firewall for ATF/OPTEE
Suhaas Joshi [Tue, 27 Jan 2026 08:16:44 +0000 (13:46 +0530)] 
arm: dts: k3-am625-binman: Configure firewall for ATF/OPTEE

Add firewall configurations to protect ATF and OP-TEE memory regions
from non-secure reads and writes in AM62x.

Signed-off-by: Suhaas Joshi <s-joshi@ti.com>
2 months agoarm: dts: k3-binman: Use configs for ATF/OPTEE addresses
Suhaas Joshi [Tue, 27 Jan 2026 08:16:43 +0000 (13:46 +0530)] 
arm: dts: k3-binman: Use configs for ATF/OPTEE addresses

Instead of hard-coding ATF and OPTEE addresses in firewall configuration
templates, use K3_*_LOAD_ADDR. Doing so ensures that if someone moves
ATF/OPTEE regions, the change gets picked up by binman without
explicitly having to modify dts files.

Signed-off-by: Suhaas Joshi <s-joshi@ti.com>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
2 months agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh
Tom Rini [Sat, 7 Feb 2026 13:50:55 +0000 (07:50 -0600)] 
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh

- Enable wget and TCP on R-Car systems

2 months agoMerge tag 'u-boot-imx-master-20260206' of https://gitlab.denx.de/u-boot/custodians...
Tom Rini [Sat, 7 Feb 2026 13:50:05 +0000 (07:50 -0600)] 
Merge tag 'u-boot-imx-master-20260206' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx

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

- Convert imx8mn_var_som to OF_UPSTREAM and several cleanups.
- Fix ele_ahab buid error on imx93_qsb.
- Add i.MX95 EVK remoteproc support.
- Several i.MX8/9 EVK cleanups.

2 months agomach-imx: ele_ahab: Mitigate imx93_qsb build error
Niko Mauno [Thu, 22 Jan 2026 13:15:52 +0000 (15:15 +0200)] 
mach-imx: ele_ahab: Mitigate imx93_qsb build error

Add include to avoid following build error with imx93_qsb, when
AHAB_BOOT is enabled:

  .../arch/arm/mach-imx/ele_ahab.c:262:24: error: 'IMG_CONTAINER_BASE' undeclared (first use in this function); did you mean 'IMG_CONTAINER_END_BASE'?
  .../arch/arm/mach-imx/ele_ahab.c:477:20: error: 'FSB_BASE_ADDR' undeclared (first use in this function); did you mean 'WDOG_BASE_ADDR'?
  .../arch/arm/mach-imx/ele_ahab.c:543:20: error: 'FSB_BASE_ADDR' undeclared (first use in this function); did you mean 'WDOG_BASE_ADDR'?

Signed-off-by: Niko Mauno <niko.mauno@vaisala.com>
2 months agoboard: imx8mn-var-som: compile SPL-only stuff only in SPL build
Hugo Villeneuve [Fri, 6 Feb 2026 20:55:29 +0000 (15:55 -0500)] 
board: imx8mn-var-som: compile SPL-only stuff only in SPL build

SPL-specific stuff is already in spl.c, so avoid compiling other source
files in SPL build.

Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com>
2 months agoboard: imx8mn-var-som: remove unneeded header files
Hugo Villeneuve [Fri, 6 Feb 2026 20:55:28 +0000 (15:55 -0500)] 
board: imx8mn-var-som: remove unneeded header files

Cleanup the file by removing unneeded header files.

Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com>
2 months agoboard: imx8mn_var_som: let clock system enable UART clock
Hugo Villeneuve [Fri, 6 Feb 2026 20:55:27 +0000 (15:55 -0500)] 
board: imx8mn_var_som: let clock system enable UART clock

Now that the UART driver can enable the required clocks, remove
the hard-coded clock enable.

Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com>
2 months agoarm: dts: imx8mn-var-som-symphony: migrate to OF_UPSTREAM
Hugo Villeneuve [Fri, 6 Feb 2026 20:55:26 +0000 (15:55 -0500)] 
arm: dts: imx8mn-var-som-symphony: migrate to OF_UPSTREAM

Switch to OF_UPSTREAM to make use of the upstream device trees.

Remove the now obsolete device tree files:
- imx8mn-var-som-symphony.dts
- imx8mn-var-som.dtsi

Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com>
2 months agoarm: dts: imx8mn-var-som: add som-eeprom alias to SOM u-boot dtsi
Hugo Villeneuve [Fri, 6 Feb 2026 20:55:25 +0000 (15:55 -0500)] 
arm: dts: imx8mn-var-som: add som-eeprom alias to SOM u-boot dtsi

The som-eeprom alias is specific to U-Boot, and not present in upstream
linux imx8mn-var-som device tree.

Add it to the SOM U-Boot specific device tree file in preparation
for migration to OF_UPSTREAM.

Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com>
2 months agoarm: dts: imx8mn-var-som: Move SOM-specific nodes to SOM u-boot.dtsi
Hugo Villeneuve [Fri, 6 Feb 2026 20:55:24 +0000 (15:55 -0500)] 
arm: dts: imx8mn-var-som: Move SOM-specific nodes to SOM u-boot.dtsi

Move SOM-specific stuff into a new SOM u-boot.dtsi file.
This way, it can be used by multiple boards.

Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com>
2 months agotoradex: smarc-imx95: Drop init_uart_clk
Peng Fan [Fri, 6 Feb 2026 15:28:45 +0000 (23:28 +0800)] 
toradex: smarc-imx95: Drop init_uart_clk

Rely on serial driver calling clk_enable to enable the lpuart clk, no
need to do init_uart_clk in board_early_init_f().

Also remove board_early_init_f(), because it is empty now.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Acked-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2 months agonxp: imx94_evk: Drop init_uart_clk
Peng Fan [Fri, 6 Feb 2026 15:28:44 +0000 (23:28 +0800)] 
nxp: imx94_evk: Drop init_uart_clk

Rely on serial driver calling clk_enable to enable the lpuart clk, no
need to do init_uart_clk in board_early_init_f().

Also remove board_early_init_f(), because it is empty now.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agonxp: imx95_evk: Drop init_uart_clk
Peng Fan [Fri, 6 Feb 2026 15:28:43 +0000 (23:28 +0800)] 
nxp: imx95_evk: Drop init_uart_clk

Rely on serial driver calling clk_enable to enable the lpuart clk, no
need to do init_uart_clk in board_early_init_f().

Also remove board_early_init_f(), because it is empty now.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoimx95_evk: Enable remoteproc for i.MX95 EVK
Peng Fan [Mon, 2 Feb 2026 02:57:47 +0000 (10:57 +0800)] 
imx95_evk: Enable remoteproc for i.MX95 EVK

Select remoteproc related configs for i.MX95 EVK to support manage CM7
using 'rproc' cmd.
Update doc to show details on starting CM7 using rproc cmd.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoarm: dts: imx95: Add cm7 node
Peng Fan [Mon, 2 Feb 2026 02:57:46 +0000 (10:57 +0800)] 
arm: dts: imx95: Add cm7 node

Add i.MX95 CM7 node for remoteproc usage. The dt-bindings for CM7 was
accepted, by the node has not been upstreamed to Linux device tree.

Put the node here to let the driver probe. After Linux upstream repo
has this node landed, the node in imx95-u-boot.dtsi could be removed.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoremoteproc: imx: Add i.MX95 support
Peng Fan [Mon, 2 Feb 2026 02:57:45 +0000 (10:57 +0800)] 
remoteproc: imx: Add i.MX95 support

i.MX95 uses System Manager(sm) API to start/stop logical machine or cpu.
There are two modes:
 M7 in a dedicated logical machine, use LMM API
 M7 and A55 in same logical machine, use CPU API

Extend the driver to using LMM and CPU protocol to manage the M7 core:
 - Detect using LMM or CPU API in probe using API scmi_imx_lmm_info().
 - Compare linux LM ID(got using scmi_imx_lmm_info) and M7 LM ID(the ID
   is fixed as 1 in SM firmware if M7 is in a separate LM),
   if Linux LM ID is not same as M7 LM ID(linux and M7 in same LM), use
   LMM protocol to start/stop. Whether using CPU or LMM protocol to
   start/stop, the M7 status detection could use CPU protocol to detect
   started or not. So in imx_rproc_is_running, use scmi_imx_cpu_started to
   check the status of M7.
 - For above case (2), Use scmi_imx_lmm_power_boot to detect whether
   the M7 LM is under control of A55 LM.
 - For above case , after using SCMI_IMX_LMM_POWER_ON to check
   permission, scmi_imx_lmm_shutdown API should be called to shutdown
   the M7 LM.
 - Add a new ops imx_rproc_ops_sm.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoremoteproc: imx: Support ECC initialization
Peng Fan [Mon, 2 Feb 2026 02:57:44 +0000 (10:57 +0800)] 
remoteproc: imx: Support ECC initialization

Add a new flag ATT_ECC which indicates the memory region needs ECC
initialization. If the flag is set, clearing the whole memory region to
initialize ECC. If ECC is not initialized, remote core will crash if
directly access the area.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoboard: ge: common: vpd: Fix read_i2c_vpd return value
Francois Berder [Sat, 31 Jan 2026 11:29:01 +0000 (12:29 +0100)] 
board: ge: common: vpd: Fix read_i2c_vpd return value

If i2c_eeprom_size fails, the error value is stored in
variable size and not ret.
Also, this commit fixes printing the error value.

Signed-off-by: Francois Berder <fberder@outlook.fr>
2 months agoimx93_frdm: Update IMX_BOOT_IMAGE_GUID
Peng Fan [Thu, 29 Jan 2026 10:54:14 +0000 (18:54 +0800)] 
imx93_frdm: Update IMX_BOOT_IMAGE_GUID

Reusing IMX_BOOT_IMAGE_GUID from i.MX93 EVK is wrong. The ID is per
board, so regenerate one using uuidgen.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoimx93_frdm: Drop DECLARE_GLOBAL_DATA_PTR
Peng Fan [Thu, 29 Jan 2026 10:54:13 +0000 (18:54 +0800)] 
imx93_frdm: Drop DECLARE_GLOBAL_DATA_PTR

There is no user of "gd", so drop DECLARE_GLOBAL_DATA_PTR.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoimx8mq_evk: spl: Drop DECLARE_GLOBAL_DATA_PTR
Peng Fan [Thu, 29 Jan 2026 10:54:12 +0000 (18:54 +0800)] 
imx8mq_evk: spl: Drop DECLARE_GLOBAL_DATA_PTR

There is no user of "gd", so drop DECLARE_GLOBAL_DATA_PTR.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoimx8ulp_evk: Cleanup headers
Peng Fan [Thu, 29 Jan 2026 10:54:11 +0000 (18:54 +0800)] 
imx8ulp_evk: Cleanup headers

Drop unused headers and sort them.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoimx8ulp_evk: Drop board_phy_config
Peng Fan [Thu, 29 Jan 2026 10:54:10 +0000 (18:54 +0800)] 
imx8ulp_evk: Drop board_phy_config

There is already a weak function in drivers/net/phy/phy.c, which
does the same thing. So drop it.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoimx8ulp_evk: Drop DECLARE_GLOBAL_DATA_PTR
Peng Fan [Thu, 29 Jan 2026 10:54:09 +0000 (18:54 +0800)] 
imx8ulp_evk: Drop DECLARE_GLOBAL_DATA_PTR

There is no user of "gd", so drop DECLARE_GLOBAL_DATA_PTR.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoimx8mn_evk: Cleanup headers
Peng Fan [Thu, 29 Jan 2026 10:54:08 +0000 (18:54 +0800)] 
imx8mn_evk: Cleanup headers

Drop unused headers and sort them.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoimx8mn_evk: spl: Drop DECLARE_GLOBAL_DATA_PTR
Peng Fan [Thu, 29 Jan 2026 10:54:07 +0000 (18:54 +0800)] 
imx8mn_evk: spl: Drop DECLARE_GLOBAL_DATA_PTR

There is no user of "gd", so drop DECLARE_GLOBAL_DATA_PTR.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoimx8mp_evk: Cleanup headers
Peng Fan [Thu, 29 Jan 2026 10:54:06 +0000 (18:54 +0800)] 
imx8mp_evk: Cleanup headers

Drop unused headers and sort them.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoimx8mp_evk: spl: Drop DECLARE_GLOBAL_DATA_PTR
Peng Fan [Thu, 29 Jan 2026 10:54:05 +0000 (18:54 +0800)] 
imx8mp_evk: spl: Drop DECLARE_GLOBAL_DATA_PTR

There is no user of "gd", so drop DECLARE_GLOBAL_DATA_PTR.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoimx8mp_evk: spl: Drop i2c_pad_info1
Peng Fan [Thu, 29 Jan 2026 10:54:04 +0000 (18:54 +0800)] 
imx8mp_evk: spl: Drop i2c_pad_info1

With commit 6e6492c85def ("imx8mp_evk: Convert to DM_PMIC"),
i2c_pad_info1 is no longer needed, remove it.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agoimx8mm_evk: Drop DECLARE_GLOBAL_DATA_PTR
Peng Fan [Thu, 29 Jan 2026 10:54:03 +0000 (18:54 +0800)] 
imx8mm_evk: Drop DECLARE_GLOBAL_DATA_PTR

There is no user of "gd", so drop DECLARE_GLOBAL_DATA_PTR.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2 months agonet: fec_mxc: Add support for i.MX91
Primoz Fiser [Thu, 29 Jan 2026 07:52:51 +0000 (08:52 +0100)] 
net: fec_mxc: Add support for i.MX91

The i.MX91 SoC reuses the ENET FEC from i.MX93. Add all required driver
checks to make it work also on the i.MX91 based platforms.

Signed-off-by: Primoz Fiser <primoz.fiser@norik.com>
2 months agoarm: renesas: Enable wget command and TCP on all R-Car systems
Marek Vasut [Thu, 29 Jan 2026 00:44:28 +0000 (01:44 +0100)] 
arm: renesas: Enable wget command and TCP on all R-Car systems

Enable the 'wget' command and TCP protocol support on all Renesas R-Car
systems. This allows users to download content from local HTTP server,
which may sometimes be more accessible than TFTP server. Enable TCP SACK
support to improve download performance.

The usage is similar to the TFTP command. To download file from server
http://192.ser.ver.ip/file/path/on/local/server , invoke wget as follows:
"
=> wget $loadaddr 192.ser.ver.ip:/file/path/on/local/server
"

In case the HTTP server listens on port other than default port 80,
set the 'httpdstp' environment variable to download file from server
http://192.ser.ver.ip:8088/file/path/on/local/server
"
=> env set httpdstp 8088
=> wget $loadaddr 192.ser.ver.ip:/file/path/on/local/server
"

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2 months agoMerge tag 'efi-2026-04-rc2' of https://source.denx.de/u-boot/custodians/u-boot-efi
Tom Rini [Fri, 6 Feb 2026 18:35:44 +0000 (12:35 -0600)] 
Merge tag 'efi-2026-04-rc2' of https://source.denx.de/u-boot/custodians/u-boot-efi

Pull request efi-2026-04-rc2

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

Documentation:

* Remove pip from requirements.txt
* develop/process: Clarify name usage in the Signed-off-by line

UEFI:

* Improve EFI variable load message
* Fix use after free in efi_exit() with tcg2
* Fix efi_debug_image_info_normal allocation
* Add missing EFI_CALL in efi_net

2 months agoCI: Update to using grub-2.14 for our tests
Tom Rini [Fri, 30 Jan 2026 21:57:22 +0000 (15:57 -0600)] 
CI: Update to using grub-2.14 for our tests

When building grub-2.12 with a newer GCC, we run in to warings (treated
as errors). The simple fix here is to move to the latest release tag. In
order to build a newer grub from source we need the autoconf-archive
package to be installed.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 months agocmd: zip: Add missing unmap_sysmem() for buffers in the unzip command
Marek Vasut [Wed, 28 Jan 2026 19:42:03 +0000 (20:42 +0100)] 
cmd: zip: Add missing unmap_sysmem() for buffers in the unzip command

Unmap the sysmem that got mapped by this command.

Use symbolic return value for the command while updating
the return value handling.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2 months agocmd: zip: Use map_sysmem() with buffers in the zip command
Marek Vasut [Wed, 28 Jan 2026 19:41:30 +0000 (20:41 +0100)] 
cmd: zip: Use map_sysmem() with buffers in the zip command

The current implementation casts an address to a pointer. Make it more
sandbox-friendly by using map_sysmem().

Use symbolic return value for the command while updating
the return value handling.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2 months agocmd: unzip: Use map_sysmem() with buffers in the gzwrite command
Marek Vasut [Wed, 28 Jan 2026 19:41:04 +0000 (20:41 +0100)] 
cmd: unzip: Use map_sysmem() with buffers in the gzwrite command

The current implementation casts an address to a pointer. Make it more
sandbox-friendly by using map_sysmem().

Convert 'addr' variable to unsigned long, as that is the return type of
hextoul() and address parameter type of map_sysmem().

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2 months agogunzip: Fix len parameter in function signature
Marek Vasut [Wed, 28 Jan 2026 19:40:40 +0000 (20:40 +0100)] 
gunzip: Fix len parameter in function signature

The only call site of gzwrite() is cmd/unzip.c do_gzwrite(), where
the 'len' parameter passed to gzwrite(..., len, ...) function is of
type unsigned long. This usage is correct, the 'len' parameter is
an unsigned integer, and the gzwrite() function currently supports
input data 'len' of up to 4 GiB - 1 .

The function signature of gzwrite() function in both include/gzip.h
and lib/gunzip.c does however list 'len' as signed integer, which
is not correct, and ultimatelly limits the implementation to only
2 GiB input data 'len' .

Fix this, update gzwrite() function parameter 'len' data type to
size_t consistently in include/gzip.h and lib/gunzip.c .

Furthermore, update gzwrite() function 'szwritebuf' parameter in
lib/gunzip.c from 'unsigned long' to 'size_t' to be synchronized
with include/gzip.h . Rewrite the other parameters to size_t and
off_t and propagate the change too.

Since the gzwrite() function currently surely only supports input
data size of 4 GiB - 1, add input data size check. The limitation
comes from the current use of zlib z_stream .avail_in parameter,
to which the gzwrite() function sets the entire input data size,
and which is of unsigned int type, which cannot accept any number
beyond 4 GiB - 1. This limitation will be removed in future commit.

Reported-by: Yuya Hamamachi <yuya.hamamachi.sx@renesas.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2 months agoconfigs: microchip_mpfs_generic: fix boot failure
Jamie Gibbons [Tue, 20 Jan 2026 15:33:13 +0000 (15:33 +0000)] 
configs: microchip_mpfs_generic: fix boot failure

Recent changes to device resource management (DEVRES) increased early
memory requirements during boot. The previous value was insufficient,
resulting in boot failures. Increase CONFIG_SYS_MALLOC_F_LEN to provide
enough early malloc pool for successful boot and device initialisation.

Signed-off-by: Jamie Gibbons <jamie.gibbons@microchip.com>
2 months agoarch: arm: dts: k3: refactor common nodes to k3-*-r5.dtsi
Anshul Dalal [Thu, 22 Jan 2026 14:08:38 +0000 (19:38 +0530)] 
arch: arm: dts: k3: refactor common nodes to k3-*-r5.dtsi

This patch refactors the nodes in each board's R5 device-tree to common
SoC level dtsi. No functional change is intended from this patch.

Signed-off-by: Anshul Dalal <anshuld@ti.com>
Tested-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Bryan Brattlof <bb@ti.com>
2 months agoefi_net: add missing EFI_CALL in efi_net
Vincent Stehlé [Thu, 5 Feb 2026 16:40:12 +0000 (17:40 +0100)] 
efi_net: add missing EFI_CALL in efi_net

The efi_reinstall_protocol_interface() function is a UEFI function;
make sure to call it from within U-Boot using the EFI_CALL() macro.

This fixes the following assertion:

  lib/efi_loader/efi_boottime.c:3752: efi_reinstall_protocol_interface: Assertion `__efi_entry_check()' failed.

To reproduce the issue, define LOG_DEBUG in lib/efi_loader/efi_boottime.c
and build u-boot for your platform. Then, boot the U-Boot helloworld.efi
application over the network. Example commands (adjust the URL and boot
entry number):

  => efidebug boot add -u 0 net http://10.0.2.2:8000/helloworld.efi
  => efidebug boot order 0
  => bootefi bootmgr

Fixes: dd5d82a59995 ("efi_loader: efi_net: Add device path cache")
Signed-off-by: Vincent Stehlé <vincent.stehle@arm.com>
Cc: Heinrich Schuchardt <xypron.glpk@gmx.de>
Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Cc: Tom Rini <trini@konsulko.com>
Cc: Adriano Cordova <adrianox@gmail.com>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2 months agodoc: develop/process: Clarify name usage in the Signed-off-by line
Tom Rini [Tue, 3 Feb 2026 19:16:20 +0000 (13:16 -0600)] 
doc: develop/process: Clarify name usage in the Signed-off-by line

Long ago we took the Linux Kernel documentation about adding a
Signed-off-by line and adjusted it slightly for how we organized things.
In 2003 Linus clarified the intent and then re-worded what the name
portion of the Signed-off-by line can be. Mirror that change here.

Link: https://git.kernel.org/torvalds/c/d4563201f33a
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
2 months agodoc: Remove pip from requirements.txt
Tom Rini [Tue, 3 Feb 2026 15:13:03 +0000 (09:13 -0600)] 
doc: Remove pip from requirements.txt

Our documentation does not require the pip package to build, so it
should not be listed in our requirements.txt file here.

Signed-off-by: Tom Rini <trini@konsulko.com>
Acked-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2 months agoefi_loader: fix efi_debug_image_info_normal allocation
Vincent Stehlé [Tue, 3 Feb 2026 12:59:41 +0000 (13:59 +0100)] 
efi_loader: fix efi_debug_image_info_normal allocation

When adding a new EFI Debug Image Info entry, we allocate memory for a new
EFI Debug Image Info Normal structure and we add a new entry into the EFI
Debug Image Info Table, which is in fact just a pointer to the allocated
structure.

However, when allocating memory for the new structure we allocate memory
for the wrong type, leading to allocating memory for just a pointer instead
of the desired structure.

Fix the type used during allocation.

Fixes: 146546138af5 ("efi: add EFI_DEBUG_IMAGE_INFO for debug")
Signed-off-by: Vincent Stehlé <vincent.stehle@arm.com>
Cc: Heinrich Schuchardt <xypron.glpk@gmx.de>
Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Cc: Tom Rini <trini@konsulko.com>
Cc: Ying-Chun Liu (PaulLiu) <paul.liu@linaro.org>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2 months agoefi_loader: Improve EFI variable load message
Pranav Tilak [Mon, 2 Feb 2026 11:37:17 +0000 (17:07 +0530)] 
efi_loader: Improve EFI variable load message

Change the EFI variable load message from log_err() to log_info() with
neutral wording. The previous "Failed to load" message caused customer
confusion as it appeared to indicate an error condition.

The efi_var_from_file() function deliberately returns EFI_SUCCESS in
this case to allow the boot process to continue normally. This is
documented in the function's comment block but was not reflected in
the log message level or content.

The message now uses informational wording to reflect that this is
normal behavior when the ubootefi.var file does not yet exist.

Signed-off-by: Pranav Tilak <pranav.vinaytilak@amd.com>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2 months agoefi_loader: fix use after free in efi_exit() with tcg2
Vincent Stehlé [Tue, 27 Jan 2026 16:18:43 +0000 (17:18 +0100)] 
efi_loader: fix use after free in efi_exit() with tcg2

The efi_exit() function frees the loaded image memory by calling
efi_delete_image(). However, when CONFIG_EFI_TCG2_PROTOCOL is enabled, the
image_obj->image_type structure member is accessed after the memory has
been freed.

Fix this by performing the tcg2 measurement before the image deletion.

Fixes: 8fc4e0b4273a ("efi_loader: add boot variable measurement")
Suggested-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Signed-off-by: Vincent Stehlé <vincent.stehle@arm.com>
Cc: Heinrich Schuchardt <xypron.glpk@gmx.de>
Cc: Tom Rini <trini@konsulko.com>
Cc: Masahisa Kojima <kojima.masahisa@socionext.com>
Acked-by: Masahisa Kojima <kojima.masahisa@socionext.com>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2 months agovideo: menu "TrueType Fonts" depends on TrueType enabled 850/head
Heinrich Schuchardt [Wed, 31 Dec 2025 14:13:44 +0000 (15:13 +0100)] 
video: menu "TrueType Fonts" depends on TrueType enabled

The Kconfig menu "TrueType Fonts" should only be shown if TrueType is
enabled.

Put all TrueType dependent customization within one if statement.
Remove `depends TRUETYPE` clauses.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <simon.glass@canonical.com>
2 months agoMerge patch series "arm: k3: j722s: add PCIe support"
Tom Rini [Wed, 4 Feb 2026 16:40:37 +0000 (10:40 -0600)] 
Merge patch series "arm: k3: j722s: add PCIe support"

George McCollister <george.mccollister@konsulko.com> says:

This patch series brings over several changes from Linux that are required
to get PCIe working on the j722s and also enables PCIe in
j722s_evm_a53_defconfig. This allows Linux to be booted from an NVMe drive.

The J722S SoC provides pcie0 (using pcie_cdns_ti) thru serdes1
(using phy-cadence-torrent) thru serdes_wiz1 (using phy-j721e-wiz). Changes
to the three drivers needed to be ported from Linux to enable the REFCLK
output which is used with this SoC. These changes should be tested on other
platforms using these drivers by those with the hardware available to make
sure no problems were introduced.

The PCIe controller in this SoC relies on the code performing the PCI scan
not scanning devices which cannot exist. In Linux this is implemented as
only_one_child() in probe.c. If this mechanism is not used, PCI config reads
for subsequent functions will return information for device 0 resulting in
U-Boot detecting 32 devices when only 1 is present. This change should be
tested on other platforms with PCI to ensure the same PCI devices are
enumerated before and after the patch is applied.

I would like to thank Opto 22 for sponsoring the initial development and
anyone that is able to contribute to testing of patches.

Link: https://lore.kernel.org/r/20260130153856.2049575-1-george.mccollister@konsulko.com
2 months agoconfigs: j722s_evm_a53_defconfig: enable PCIe
George McCollister [Fri, 30 Jan 2026 15:38:06 +0000 (09:38 -0600)] 
configs: j722s_evm_a53_defconfig: enable PCIe

Enable PCIe now that it is fixed.

Signed-off-by: George McCollister <george.mccollister@konsulko.com>
Tested-by: Bryan Brattlof <bb@ti.com>
2 months agopci: pcie_cdns_ti: Add PCIe support for J722S SoC
George McCollister [Fri, 30 Jan 2026 15:38:05 +0000 (09:38 -0600)] 
pci: pcie_cdns_ti: Add PCIe support for J722S SoC

TI's J722S SoC has one instance of PCIe namely PCIe0 which is a Gen3
single lane PCIe controller. Add support for the "ti,j722s-pcie-host"
compatible specific to J722S SoC.

Based on:
https://lore.kernel.org/all/20240524092349.158443-1-s-vadapalli@ti.com/

Signed-off-by: George McCollister <george.mccollister@konsulko.com>
Tested-by: Bryan Brattlof <bb@ti.com>
2 months agopci: pcie_cdns_ti: Add support to provide refclk to PCIe connector
George McCollister [Fri, 30 Jan 2026 15:38:04 +0000 (09:38 -0600)] 
pci: pcie_cdns_ti: Add support to provide refclk to PCIe connector

Add support to provide refclk to PCIe connector.

Based on: https://lore.kernel.org/r/20210308063550.6227-5-kishon@ti.com

Signed-off-by: George McCollister <george.mccollister@konsulko.com>
Tested-by: Bryan Brattlof <bb@ti.com>
2 months agophy: cadence-torrent: Add support to drive refclk out
George McCollister [Fri, 30 Jan 2026 15:38:03 +0000 (09:38 -0600)] 
phy: cadence-torrent: Add support to drive refclk out

cmn_refclk_<p/m> lines in Torrent SERDES are used for connecting an
external reference clock. cmn_refclk_<p/m> can also be configured to
output the reference clock. Model this derived reference clock as a
"clock" so that platforms like AM642 EVM can enable it.

This is used by PCIe to use the same refclk both in local SERDES
and remote device. Add support here to drive refclk out.

Based on: https://lore.kernel.org/all/20210310120840.16447-7-kishon@ti.com/

Signed-off-by: George McCollister <george.mccollister@konsulko.com>
Tested-by: Bryan Brattlof <bb@ti.com>
2 months agophy: ti: j721e-wiz: Enable reference clock output in cmn_refclk_<p/m>
George McCollister [Fri, 30 Jan 2026 15:38:02 +0000 (09:38 -0600)] 
phy: ti: j721e-wiz: Enable reference clock output in cmn_refclk_<p/m>

cmn_refclk_<p/m> lines in Torrent SERDES are used for an connecting
external reference clock. cmn_refclk_<p/m> can also be configured to
output the reference clock. In order to drive the refclk out from the
SERDES (Cadence Torrent), PHY_EN_REFCLK should be set in SERDES_RST of
WIZ. Model PHY_EN_REFCLK as a clock, so that platforms like AM642 EVM
can enable it.

Based on: https://lore.kernel.org/r/20210310120840.16447-6-kishon@ti.com

Signed-off-by: George McCollister <george.mccollister@konsulko.com>
Tested-by: Bryan Brattlof <bb@ti.com>
2 months agopci: skip unnecessary PCIe scanning
George McCollister [Fri, 30 Jan 2026 15:38:01 +0000 (09:38 -0600)] 
pci: skip unnecessary PCIe scanning

Use the same mechanism as the Linux kernel to skip unnecessary (and in
the case of the J722S, errant) scanning of direct children of root
ports, downstream ports or bridges.

Based on Linux PCI code in the following files as of b927546677c8:
  drivers/pci/probe.c
  drivers/pci/pci.h
  include/linux/pci.h

Signed-off-by: George McCollister <george.mccollister@konsulko.com>
Tested-by: Bryan Brattlof <bb@ti.com>
2 months agoMerge patch series "part: fix partition searching"
Tom Rini [Wed, 4 Feb 2026 16:31:02 +0000 (10:31 -0600)] 
Merge patch series "part: fix partition searching"

Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu> says:

It was noted that a GPT partition with the maximum available partition
number (ex: /dev/mmcblk128) can't be read/write from U-Boot using
read/write commands. Futher investigation shows that the problem is
deeper.

This set of patches fixes uncovered issues.

Link: https://lore.kernel.org/r/20260119223305.3022690-1-mikhail.kshevetskiy@iopsys.eu
2 months agomtd: mtdpart: fix partitions searching
Mikhail Kshevetskiy [Mon, 19 Jan 2026 22:33:05 +0000 (01:33 +0300)] 
mtd: mtdpart: fix partitions searching

mtdpart internally enumerate partitions starting from zero, but partition
driver API enumerate partitions starting from 1, so wrong partition will
be queried. This is wrong.

Unnecessary debug message also was removed.

Fixes: c29a6daec184 ("disk: support MTD partitions")
Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
2 months agocmd: gpt: fix partition search boundaries
Mikhail Kshevetskiy [Mon, 19 Jan 2026 22:33:04 +0000 (01:33 +0300)] 
cmd: gpt: fix partition search boundaries

GPT disk partition with max available number (ex: /dev/mmcblk128) can't
be used from U-Boot. Here is an example:

  => mmc part

  Partition Map for mmc device 0  --   Partition Type: EFI

  Part Start LBA End LBA Name
Attributes
Type GUID
Partition GUID
  1 0x00001000 0x000013ff "env1"
attrs: 0x0000000000000000
type: 0fc63daf-8483-4772-8e79-3d69d8477de4
guid: 5452574f-2211-4433-5566-778899aabb02
  2 0x00001400 0x000017ff "env2"
attrs: 0x0000000000000000
type: 0fc63daf-8483-4772-8e79-3d69d8477de4
guid: 5452574f-2211-4433-5566-778899aabb03
  .................
  8 0x00158000 0x0034bfff "apps"
attrs: 0x0000000000000000
type: 0fc63daf-8483-4772-8e79-3d69d8477de4
guid: 5452574f-2211-4433-5566-778899aabb09
  128 0x00000420 0x00000fff "fip"
attrs: 0x0000000000000000
type: c12a7328-f81f-11d2-ba4b-00a0c93ec93b
guid: 5452574f-2211-4433-5566-778899aabb01

  => gpt setenv mmc 0 fip
  error!
  => gpt setenv mmc 0 apps
  success!

The error is caused by invalid boundary checks. This patch fixes an
issue.

Fixes: 12fc1f3bb223 ("cmd: gpt: add eMMC and GPT support")
Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
Acked-by: Quentin Schulz <quentin.schulz@cherry.de>
2 months agodisk: part: fix partition search boundaries
Mikhail Kshevetskiy [Mon, 19 Jan 2026 22:33:03 +0000 (01:33 +0300)] 
disk: part: fix partition search boundaries

GPT disk partition with max available number (ex: /dev/mmcblk128) can't
be read/write from U-Boot using read/write command. Here is an example:

  => mmc part

  Partition Map for mmc device 0  --   Partition Type: EFI

  Part Start LBA End LBA Name
Attributes
Type GUID
Partition GUID
  1 0x00001000 0x000013ff "env1"
attrs: 0x0000000000000000
type: 0fc63daf-8483-4772-8e79-3d69d8477de4
guid: 5452574f-2211-4433-5566-778899aabb02
  2 0x00001400 0x000017ff "env2"
attrs: 0x0000000000000000
type: 0fc63daf-8483-4772-8e79-3d69d8477de4
guid: 5452574f-2211-4433-5566-778899aabb03
  .................
  8 0x00158000 0x0034bfff "apps"
attrs: 0x0000000000000000
type: 0fc63daf-8483-4772-8e79-3d69d8477de4
guid: 5452574f-2211-4433-5566-778899aabb09
  128 0x00000420 0x00000fff "fip"
attrs: 0x0000000000000000
type: c12a7328-f81f-11d2-ba4b-00a0c93ec93b
guid: 5452574f-2211-4433-5566-778899aabb01

  => read mmc 0#fip ${loadaddr} 0 4
  Could not find "fip" partition
  ** Bad device specification mmc 0#fip **
  ** Bad device specification mmc 0#fip **
  Couldn't find partition mmc 0#fip

The error is caused by invalid boundary checks. This patch fixes an
issue.

Fixes: 43fd4bcefd4e ("disk: part: implement generic function part_get_info_by_uuid()")
Fixes: 56670d6fb83f ("disk: part: use common api to lookup part driver")
Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
Acked-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-By: Michael Trimarchi <michael@amarulasolutions.com>
2 months agoMerge tag 'net-20260204' of https://source.denx.de/u-boot/custodians/u-boot-net
Tom Rini [Wed, 4 Feb 2026 14:05:24 +0000 (08:05 -0600)] 
Merge tag 'net-20260204' of https://source.denx.de/u-boot/custodians/u-boot-net

Pull request net-20260204.

net:
- phy: aquantia: add support for Marvell CUX3410 10Gb PHY
- drivers: phy: fix code documentation typo udevice_ops

net-lwip:
- Command fixes and improvements (dhcp, dns, nfs)
- dhcp, tftp: do not write past end of buffer
- Add TFTPSERVERIP Kconfig option

misc:
- Update Jerome's email address

2 months agomtd: nand: raw: atmel: Access device ofnode through functions
Andy Yan [Fri, 30 Jan 2026 02:17:37 +0000 (10:17 +0800)] 
mtd: nand: raw: atmel: Access device ofnode through functions

According to commit 84a42ae36683 ("dm: core: Rename device node to indicate it is private")

node_ should not be aaccess outside driver model.

Signed-off-by: Andy Yan <andyshrk@163.com>
2 months agoserial: atmel-usart: add support for skiping debug UART init
Robert Marko [Mon, 12 Jan 2026 13:12:42 +0000 (14:12 +0100)] 
serial: atmel-usart: add support for skiping debug UART init

Currently, atmel-usart does not respect CONFIG_DEBUG_UART_SKIP_INIT so
it will always configure the debug UART.

However, this is unwanted on platforms on which TF-A or some other firmware
has already configured the debug UART.

This will be used for Microchip LAN969x support, so simply return early if
CONFIG_DEBUG_UART_SKIP_INIT is set.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2 months agoserial: atmel-usart: include arch specific headers only for AT91
Robert Marko [Mon, 12 Jan 2026 13:12:41 +0000 (14:12 +0100)] 
serial: atmel-usart: include arch specific headers only for AT91

Microchip LAN969x will not include any arch specific clk.h nor hardware.h,
so in order to support it only include <asm/arch/clk.h> and
<asm/arch/hardware.h> when AT91 is selected.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2 months agodm: platform_data: atmel_serial: fix build warning on 64-bit platforms
Robert Marko [Mon, 12 Jan 2026 13:12:40 +0000 (14:12 +0100)] 
dm: platform_data: atmel_serial: fix build warning on 64-bit platforms

Pointer size cannot be assumed to be 32-bit, so use uintptr_t instead of
uint32_t.

Fixes the below build warning on 64-bit builds:
drivers/serial/atmel_usart.c: In function ‘atmel_serial_probe’:
drivers/serial/atmel_usart.c:275:23: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
  275 |         priv->usart = (atmel_usart3_t *)plat->base_addr;

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2 months agoarm: at91: move atmel_serial.h to include/dm/platform_data
Robert Marko [Mon, 12 Jan 2026 13:12:39 +0000 (14:12 +0100)] 
arm: at91: move atmel_serial.h to include/dm/platform_data

Move the arch specific atmel_serial.h header from AT91 to the generic
include/dm/platform_data.

This will be used for support on Microchip LAN969x.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2 months agonet: phy: aquantia: add support for Marvell CUX3410 10Gb PHY
Weijie Gao [Tue, 27 Jan 2026 02:08:45 +0000 (10:08 +0800)] 
net: phy: aquantia: add support for Marvell CUX3410 10Gb PHY

The CUX3410 is similar to AQR113C. The main difference is CUX3410 does not
support MACSEC.

Signed-off-by: Bo-Cun Chen <bc-bocun.chen@mediatek.com>
2 months agonet: lwip: nfs: Prefer nfsserverip over serverip when set
Jonas Karlman [Sat, 17 Jan 2026 00:24:42 +0000 (00:24 +0000)] 
net: lwip: nfs: Prefer nfsserverip over serverip when set

Prefer use of a 'nfsserverip' env var before falling back to 'serverip'
when using the nfs command. Similar to how the 'tftpserverip' env var
is preferred over 'serverip' by the tftp command.

This also updates the error message to closer match the error message
used by the lwIP tftp command when a server ip is not set.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Jerome Forissier <jerome.forissier@arm.com>
2 months agonet: lwip: dhcp: Save DHCP siaddr field to tftpserverip env var
Jonas Karlman [Sat, 17 Jan 2026 00:24:41 +0000 (00:24 +0000)] 
net: lwip: dhcp: Save DHCP siaddr field to tftpserverip env var

The DHCP siaddr field contains the IP address of next server to use in
bootstrap. Typically this will be the IP address of a TFTP server or the
IP address of the DHCP server itself.

RFC 2131, 2. Protocol Summary, Page 10:

   DHCP clarifies the interpretation of the 'siaddr' field as the
   address of the server to use in the next step of the client's
   bootstrap process.  A DHCP server may return its own address in the
   'siaddr' field, if the server is prepared to supply the next
   bootstrap service (e.g., delivery of an operating system executable
   image).  A DHCP server always returns its own address in the 'server
   identifier' option.

Set the 'tftpserverip' env variable when the siaddr field contains an
IP address that is different compared to the DHCP server IP address.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Jerome Forissier <jerome.forissier@arm.com>
2 months agonet: lwip: Use ipaddr helpers
Jonas Karlman [Sat, 17 Jan 2026 00:24:40 +0000 (00:24 +0000)] 
net: lwip: Use ipaddr helpers

The ip_addr_t of lwIP has support for both IPv6 and IPv4 addresses.
Some lwIP commans is directly accessing the internal addr field of the
ip_addr_t instead of using ipaddr helper functions.

Change to use ipaddr helper functions where appropriate to remove direct
access of the internal addr field. Also change a few instances from ip4
to the version less ipaddr helpers.

There is no intended functional change, besides the change from using
ip4 addr helper to using version less ipaddr helper.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Jerome Forissier <jerome.forissier@arm.com>
2 months agonet: lwip: dns: Call env_set() from dns loop instead of found callback
Jonas Karlman [Sat, 17 Jan 2026 00:24:39 +0000 (00:24 +0000)] 
net: lwip: dns: Call env_set() from dns loop instead of found callback

The lwIP dns command handle env_set() calls from the found callback and
printf() to console in the dns loop. Making it more complex than it
needs to be.

Simplify and ensure any environment variable that is being set is the
same value that would have been printed on console.

There should not be any intended change in behavior, besides the change
from using ip4addr helper to using version less ipaddr helper.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Jerome Forissier <jerome.forissier@arm.com>
2 months agonet: lwip: nfs: Print device name based on current udevice
Jonas Karlman [Sat, 17 Jan 2026 00:24:38 +0000 (00:24 +0000)] 
net: lwip: nfs: Print device name based on current udevice

Use udevice name, similar to other lwip commands, instead of using the
legacy eth_get_name() when printing out the device being used.

Fixes: 230cf3bc2776 ("net: lwip: nfs: Port the NFS code to work with lwIP")
Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Jerome Forissier <jerome.forissier@arm.com>
2 months agonet: lwip: dns: Fix print of resolved IP address
Jonas Karlman [Sat, 17 Jan 2026 00:24:37 +0000 (00:24 +0000)] 
net: lwip: dns: Fix print of resolved IP address

The lwIP dns command only prints out cached resolved IP addresses.

When a hostname is first resolved and ERR_INPROGRESS is returned the
dns command prints out 0.0.0.0 instead of the resolved IP address.

Fix this by printing out host_ipaddr instead of the temporary ipaddr
that only is valid when ERR_OK is returned.

Fixes: 1361d9f4f00a ("lwip: dns: do not print IP address when a variable is specified")
Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Jerome Forissier <jerome.forissier@arm.com>
2 months agonet: lwip: add TFTPSERVERIP Kconfig option
Jonas Karlman [Tue, 6 Jan 2026 20:34:30 +0000 (20:34 +0000)] 
net: lwip: add TFTPSERVERIP Kconfig option

With the legacy networking stack, it is possible to use USE_SERVERIP,
SERVERIP and BOOTP_PREFER_SERVERIP Kconfg options to force use of a
specific TFTP server ip.

Using the lwIP networking stack use of the 'tftpserverip' environment
variable provide the closest equivalent functionality.

Add USE_TFTPSERVERIP and TFTPSERVERIP Kconfig options that can be used
to add the 'tftpserverip' environment variable to force use of a
specific TFTP server ip.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Acked-by: Jerome Forissier <jerome.forissier@arm.com>
2 months agonet: lwip: dhcp: Do not write past end of buffer
Andrew Goodbody [Wed, 14 Jan 2026 15:12:10 +0000 (15:12 +0000)] 
net: lwip: dhcp: Do not write past end of buffer

sprintf will write a trailing \0 at the end of the string so when
writing into a buffer, that buffer must be sized to allow for that
trailing zero. In the DHCP code when the index is a number needing two
digits to express the index would use up the two \0 bytes in the buffer
and the trailing \0 from sprintf would be beyond the end of the
allocation. Fix this by adding a third \0 in the buffer.

This was found by code inspection when looking for an issue reported by
Michal Simek, but I do not have the hardware to reproduce, so cannot
confirm if this addresses that issue or not.

Fixes: 98ad145db61a ("net: lwip: add DHCP support and dhcp commmand")
Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@arm.com>
2 months agonet: lwip: tftp: Do not write past buffer end
Andrew Goodbody [Wed, 14 Jan 2026 15:12:09 +0000 (15:12 +0000)] 
net: lwip: tftp: Do not write past buffer end

sprintf will add a trailing \0 so manually adding a trailing \0 will
result in an extra unaccounted for character being written. This
overwrote the first byte of the following allocation block resulting in
unexpected behavior.

This was found by Running 'pxe get' with no available file resulting in
multiple attempts, using the default algorithm, to attempt to find a file.
Eventually there would be a failed assert when free() was called.
Failing the assert would result in a system reset.

Fixes: 27d7ccda94fa ("net: lwip: tftp: add support of blksize option to client")
Reported-by: Michal Simek <michal.simek@amd.com>
Tested-by: Michal Simek <michal.simek@amd.com>
Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
Tested-by: Tom Rini <trini@konsulko.com> # Pine64+
Reviewed-by: Jerome Forissier <jerome.forissier@arm.com>
Reviewed-by: Jerome Forissier <jerome.forissier@arm.com>
2 months agoMAINTAINERS: update my email address
Jerome Forissier [Wed, 14 Jan 2026 15:18:35 +0000 (16:18 +0100)] 
MAINTAINERS: update my email address

I will be using my Arm email address for all contributions. Update
MAINTAINERS and .mailmap accordingly.

Signed-off-by: Jerome Forissier <jerome.forissier@arm.com>
2 months agodrivers: phy: fix code documentation typo udevice_ops
E Shattow [Thu, 15 Jan 2026 00:07:15 +0000 (16:07 -0800)] 
drivers: phy: fix code documentation typo udevice_ops

Amend code documentation referring to udevice_ops for struct phy_ops

Fixes: 72e5016f878d ("drivers: phy: add generic PHY framework")
Signed-off-by: E Shattow <e@freeshell.de>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
2 months agoMerge branch 'u-boot-nand-03022026' of https://source.denx.de/u-boot/custodians/u...
Tom Rini [Tue, 3 Feb 2026 23:36:07 +0000 (17:36 -0600)] 
Merge branch 'u-boot-nand-03022026' of https://source.denx.de/u-boot/custodians/u-boot-nand-flash

CI: https://source.denx.de/u-boot/custodians/u-boot-nand-flash/-/pipelines/29183

This series provides a comprehensive cleanup of the Allwinner (sunxi)
NAND controller drivers and introduces full support for the H6 and H616
SoCs in both the main U-Boot driver and the SPL.

The series successfully deduplicates register maps between sunxi_nand.c
and sunxi_nand_spl.c while migrating to a capability-based architecture.
This approach allows the driver to handle the H616's specific
requirements—such as shifted register offsets for ECC/OOB, the removal
of 512B ECC block support, and mandatory MBUS clock gating—without
breaking compatibility for legacy A10/A23 devices.

2 months agoboard: mediatek: add MT8390 EVK board support
Julien Masson [Mon, 2 Feb 2026 08:23:42 +0000 (09:23 +0100)] 
board: mediatek: add MT8390 EVK board support

This adds support for the MT8390 EVK board with the following
features enabled/tested: Boot, UART, Watchdog and MMC.

MT8390 is based on MT8188.

Signed-off-by: Julien Masson <jmasson@baylibre.com>
Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
2 months agoMerge patch series "arm: dts: sc5xx: device tree updates and fixes"
Tom Rini [Tue, 3 Feb 2026 21:46:21 +0000 (15:46 -0600)] 
Merge patch series "arm: dts: sc5xx: device tree updates and fixes"

Ozan Durgut <ozan.durgut@analog.com> says:

This series introduces updates for Analog Devices SC5xx boards.

It cleans up device trees by renaming GPIO expanders and removing
incorrect SPI flash definitions from the common include file.

For the SC598, this series updates the EZLITE board to the latest
Revision E hardware. It also adds missing GPIO hogs and enables
additional commands for the EZKIT configuration.

Link: https://lore.kernel.org/r/cover.1769439596.git.ozan.durgut@analog.com
2 months agoarm: dts: sc598: update EZLITE to latest revision
Ozan Durgut [Mon, 26 Jan 2026 16:15:05 +0000 (17:15 +0100)] 
arm: dts: sc598: update EZLITE to latest revision

Update the SC598 SOM EZLITE device tree to use the latest revision of
the System on Module (Rev E).

Signed-off-by: Ozan Durgut <ozan.durgut@analog.com>
Reviewed-by: Greg Malysa <malysagreg@gmail.com>
2 months agoarm: dts: adi: rename GPIO expanders
Ozan Durgut [Mon, 26 Jan 2026 16:15:04 +0000 (17:15 +0100)] 
arm: dts: adi: rename GPIO expanders

The current naming convention for GPIO expanders across ADI SC5xx
device trees is inconsistent. This patch updates the node names to
correct indexing and clarify hardware location.

For SC573, SC584, and SC589 evaluation SBCs, switch to zero-based
indexing to align with standard conventions.

For SC594 and SC598 SoM + carrier evaluation kits, rename the nodes to
crr_gpio_expander. This prefix indicates which board the expander is on.

Signed-off-by: Ozan Durgut <ozan.durgut@analog.com>
Reviewed-by: Greg Malysa <malysagreg@gmail.com>
2 months agoarm: dts: sc5xx: drop SPI flash from common dtsi
Philip Molloy [Mon, 26 Jan 2026 16:15:03 +0000 (17:15 +0100)] 
arm: dts: sc5xx: drop SPI flash from common dtsi

SPI flash devices are not common across all SC5xx boards. They
already defined in the SoM-specific dtsi files. Keeping the
definition in the common dtsi is therefore incorrect.

Fixes: c9e893d ("board: adi: Add support for SC598")
Signed-off-by: Philip Molloy <philip.molloy@analog.com>
Signed-off-by: Ozan Durgut <ozan.durgut@analog.com>
Reviewed-by: Greg Malysa <malysagreg@gmail.com>