]> git.ipfire.org Git - thirdparty/u-boot.git/log
thirdparty/u-boot.git
12 hours agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh master
Tom Rini [Thu, 9 Apr 2026 22:34:38 +0000 (16:34 -0600)] 
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh

Assorted fixes and tweaks, HUSH parser, preboot env variable, SMC
command enablement, s_init and 32bit/64bit code clean up, DBSC and APMU
remoteproc clean ups, UFS dev_phys_to_bus() remap support and SCIF R-Car
Gen5 support.

16 hours agotools: u_boot_pylib: ensure all Python modules are installed
Paul HENRYS [Tue, 31 Mar 2026 08:06:36 +0000 (10:06 +0200)] 
tools: u_boot_pylib: ensure all Python modules are installed

Add setuptools package configuration to pyproject.toml so that
u_boot_pylib is installed as a proper Python package without changing
the existing flat directory structure and making sure all modules are
installed.

Signed-off-by: Paul HENRYS <paul.henrys_ext@softathome.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
16 hours agoMerge tag 'fsl-qoriq-for-2026.07-rc1' of https://source.denx.de/u-boot/custodians...
Tom Rini [Thu, 9 Apr 2026 15:41:48 +0000 (09:41 -0600)] 
Merge tag 'fsl-qoriq-for-2026.07-rc1' of https://source.denx.de/u-boot/custodians/u-boot-fsl-qoriq

CI: https://source.denx.de/u-boot/custodians/u-boot-fsl-qoriq/-/pipelines/29808

- Add env variables to assist boot for various LS boards
- Add gpio scmi driver
- Fix setting the function for scmi pinctrl
- Use standard device tree pin muxing format for scmi pinctrl
- Fix protocol version fetch for non-CCF platforms in scmi clk

16 hours agols1043a: add env variables to assist boot
Chunguang Li [Thu, 2 Apr 2026 03:51:30 +0000 (11:51 +0800)] 
ls1043a: add env variables to assist boot

Add LS1043ARDB-specific variables to assist the boot process,
and update the related common and LS1043AQDS settings accordingly.

Signed-off-by: Chunguang Li <chunguang.li_2@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 hours agolx2160ardb: add env variables to assist boot
Chunguang Li [Thu, 2 Apr 2026 03:51:32 +0000 (11:51 +0800)] 
lx2160ardb: add env variables to assist boot

Update the console baudrate to 115200 as default.
Also add env variables to assist boot process.

Signed-off-by: Chunguang Li <chunguang.li_2@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 hours agols1046a: add env variables to assist boot
Chunguang Li [Thu, 2 Apr 2026 03:51:31 +0000 (11:51 +0800)] 
ls1046a: add env variables to assist boot

Add LS1046ARDB-specific variables to assist the boot flow,
and update the related common and other LS1046A board settings
accordingly.

Signed-off-by: Chunguang Li <chunguang.li_2@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 hours agols1028ardb: add env variables to assist boot
Chunguang Li [Thu, 2 Apr 2026 03:51:29 +0000 (11:51 +0800)] 
ls1028ardb: add env variables to assist boot

Add image, extra_bootargs, othbootargs and console_dbg to assist boot.

Signed-off-by: Chunguang Li <chunguang.li_2@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 hours agodrivers: net: fsl-mc: add the nowait option when applying the DPL
Ioana Ciornei [Wed, 1 Apr 2026 15:04:45 +0000 (18:04 +0300)] 
drivers: net: fsl-mc: add the nowait option when applying the DPL

The process through which the MC firmware parses the DPL and initializes
all the requested DPAA2 objects is a complex one which can take quite a
bit of time. For the those circumstances in which a fast boot is
required on DPAA2 based SoCs, add the 'nowait' optional parameter for
the fsl_mc [lazy]apply dpl command.

When this option is used, the Linux kernel fsl-mc bus must wait for
the firmware to finish parsing the DPL before proceeding with probing
all the DPAA2 objects.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 hours agodrivers: net: fsl-mc: cleanup the fsl_mc command help text
Ioana Ciornei [Wed, 1 Apr 2026 15:04:44 +0000 (18:04 +0300)] 
drivers: net: fsl-mc: cleanup the fsl_mc command help text

All the parameters that can be currently passed to the fsl_mc command
are positional arguments which are mandatory. This is not perfectly
clear when reading the help text because of the use of square brackets.

Fix this by changing the square brackets, which are commonly used for
optional parameters, with < .. >.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 hours agodrivers: net: fsl-mc: remove unused parameter from the wait_for_mc() function
Ioana Ciornei [Wed, 1 Apr 2026 15:04:43 +0000 (18:04 +0300)] 
drivers: net: fsl-mc: remove unused parameter from the wait_for_mc() function

The first parameter of the wait_for_mc() function - booting_mc - is not
used. Remove it.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 hours agopinctrl: scmi: Use standard device tree pin muxing format
Dan Carpenter [Thu, 26 Mar 2026 12:08:25 +0000 (15:08 +0300)] 
pinctrl: scmi: Use standard device tree pin muxing format

In the original code, I wrote a custom pin muxing parser but the
upstream device trees wouldn't accept something like that so it would
have complicated mergine the device tree files.

Use the standard device tree format with function and groups:

pinmux1: pinmux1 {
function = "f_gpio1";
groups = "grp_1", "grp_3";
};

Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Acked-by: Linus Walleij <linusw@kernel.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 hours agofirmware: scmi: Fix setting the function
Dan Carpenter [Thu, 26 Mar 2026 12:08:17 +0000 (15:08 +0300)] 
firmware: scmi: Fix setting the function

Set BIT(10) when the function needs to be set, otherwise the setting is
ignored.

Fixes: 0cb160f1b629 ("scmi: pinctrl: add pinctrl driver for SCMI")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
32 hours agogpio: scmi: Add gpio_scmi driver
Dan Carpenter [Tue, 24 Mar 2026 11:16:56 +0000 (14:16 +0300)] 
gpio: scmi: Add gpio_scmi driver

This provides GPIO support over SCMI.  It is built on top of the
pinctrl-scmi driver.  A typical device tree entry might look like
this:

    gpio1 {
        compatible = "scmi-pinctrl-gpio";
        gpio-controller;
        #gpio-cells = <2>;
        ngpios = <10>;
        gpio-ranges = <&scmi_pinctrl 0 8 4>,
                      <&scmi_pinctrl 4 12 1>,
                      <&scmi_pinctrl 5 15 1>,
                      <&scmi_pinctrl 6 17 4>;
        pinctrl-names = "default";
        pinctrl-0 = <&i2c2_pins>;
    };

In this GPIO driver the one thing which is different is that in the
gpio-ranges the first numbers which represent how the pins are exposed
to the users have to start at zero and it can't have gaps.

Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
32 hours agoclk: scmi: Fix protocol version fetch for non-CCF platforms
Kamlesh Gurudasani [Mon, 23 Mar 2026 11:29:27 +0000 (16:59 +0530)] 
clk: scmi: Fix protocol version fetch for non-CCF platforms

The SCMI clock protocol version was only being fetched when CLK_CCF
was enabled. On non-CCF platforms, the probe function returned early
without fetching the version, leaving priv->version as 0.

This caused issues because code paths like scmi_clk_gate() and
scmi_clk_get_permissions() depend on priv->version to determine
which protocol message format to use, even in non-CCF mode.

Fix this by moving the scmi_generic_protocol_version() call before
the CLK_CCF check, ensuring the version is fetched for both CCF and
non-CCF platforms.

Tested on am62lx_evm.

Fixes: ae7e0330ce22 ("clk: scmi: add compatibility with clock protocol 2.0")
Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
41 hours agoufs: Remap CPU to bus addresses using dev_phys_to_bus()
Marek Vasut [Sun, 15 Mar 2026 23:58:26 +0000 (00:58 +0100)] 
ufs: Remap CPU to bus addresses using dev_phys_to_bus()

Use dev_phys_to_bus() to convert CPU addresses of DMA descriptors
into bus addresses of DMA descriptors. This is necessary on hardware
which does not have 1:1 mapping between CPU and memory addressed by
the DMA. This has no impact on other hardware which does not need
this conversion.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
41 hours agoserial: sh: Handle HSCIF on all 64-bit R-Car SoC
Marek Vasut [Sun, 15 Mar 2026 23:55:33 +0000 (00:55 +0100)] 
serial: sh: Handle HSCIF on all 64-bit R-Car SoC

The HSCIF variant present on Renesas R-Car Gen5 SoC is compatible
with the HSCIF variant present on Renesas R-Car Gen4 SoC. Enable
HSSRR register programming for HSCIF present on all 64-bit R-Car
SoCs, which covers R-Car Gen3, Gen4 and newly also Gen5.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
41 hours agoremoteproc: renesas: apmu: Fix typo in Kconfig symbol help text
Marek Vasut [Mon, 16 Mar 2026 00:31:33 +0000 (01:31 +0100)] 
remoteproc: renesas: apmu: Fix typo in Kconfig symbol help text

Fix typo in Kconfig symbol help text, change incorrect A52 to correct R52.
No functional change.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Acked-by: Peng Fan <peng.fan@nxp.com>
41 hours agoram: renesas: dbsc: Use macro in renesas_dbsc5_board_config channel count
Marek Vasut [Tue, 17 Mar 2026 00:33:54 +0000 (01:33 +0100)] 
ram: renesas: dbsc: Use macro in renesas_dbsc5_board_config channel count

Use DRAM_CH_CNT macro in renesas_dbsc5_board_config channel count.
The macro is defined in the same file a few lines above. This way,
the maximum channel count in the structure and the macro can not
diverge.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
41 hours agoarm64: renesas: Separate 64bit only code
Marek Vasut [Sun, 15 Mar 2026 23:52:33 +0000 (00:52 +0100)] 
arm64: renesas: Separate 64bit only code

Conditionally compile code that is only compatible with 64bit ARMv8
on 64bit R-Car Gen3/4/5 SoCs. Protect such code with CONFIG_ARM64.
This split is implemented in preparation for build of Cortex-M33
version of R-Car Gen5 U-Boot for its RSIPM core.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
41 hours agoarm64: renesas: Make R-Car board code 32-bit ARMv8-M compatible
Marek Vasut [Wed, 25 Mar 2026 01:18:28 +0000 (02:18 +0100)] 
arm64: renesas: Make R-Car board code 32-bit ARMv8-M compatible

The 64-bit R-Car board code is currently unbuildable on 32-bit ARM
cores. Skip DRAM initialization bits to make the code compatible with
these cores, because those cores do not use the DRAM, they only use
SRAM.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
41 hours agoarm64: renesas: Enable SMC command on all R-Car 64-bit systems
Marek Vasut [Sun, 5 Apr 2026 03:53:03 +0000 (05:53 +0200)] 
arm64: renesas: Enable SMC command on all R-Car 64-bit systems

Enable the 'smc' command on all R-Car 64-bit systems. This command is
useful for interacting with EL3 firmware, testing interaction with the
PSCI provider or OPTEE-OS.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
41 hours agoarm: renesas: Use stock lowlevel_init function and remove s_init
Marek Vasut [Sun, 15 Mar 2026 23:51:01 +0000 (00:51 +0100)] 
arm: renesas: Use stock lowlevel_init function and remove s_init

Replace s_init() early initialization at the end of lowlevel_init
by invoking the same code in mach_cpu_init(). The mach_cpu_init()
is called a bit later, but as the code initializes timer and no
code uses timer until mach_cpu_init(), this does not pose a problem.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
41 hours agoarm: renesas: Enable preboot environment variable on all R-Car systems
Marek Vasut [Sun, 5 Apr 2026 03:51:40 +0000 (05:51 +0200)] 
arm: renesas: Enable preboot environment variable on all R-Car systems

Enable the 'preboot' variable on all R-Car systems. This variable can
optionally be set and contain a script which is executed before the
autoboot timeout starts. This can be used to run critical scripts or
similar tasks. By default, the "preboot" variable is empty.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
41 hours agoarm: renesas: Enable modern HUSH parser on all R-Car systems
Marek Vasut [Sun, 15 Mar 2026 23:51:35 +0000 (00:51 +0100)] 
arm: renesas: Enable modern HUSH parser on all R-Car systems

Enable modern HUSH parser on all Renesas R-Car systems. This replaces
the old HUSH parser and includes matching updates to the command line
parser. No functional change expected.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
41 hours agoMerge patch series "env: scsi: support SCSI env without partition UUID"
Tom Rini [Wed, 8 Apr 2026 17:07:19 +0000 (11:07 -0600)] 
Merge patch series "env: scsi: support SCSI env without partition UUID"

David Lechner <dlechner@baylibre.com> says:

This is a series adding support for reading U-Boot env directly from
SCSI devices that do not have a partition table, similar to how we can
already do this for MMC devices.

The motivation behind this is that MediaTek's BSP is already using the
same disk images for both MMC and UFS devices, so we need to be able to
read the env from SCSI devices without requiring a partition UUID.

The series starts with cleaning up a few oddities we noticed in the
existing code. Then some refactoring so that the env code manages
calling scsi_scan() so that we don't have to duplicate that for the
new code path. Then finally, the last few patches add and document the
new functionality.

Link: https://lore.kernel.org/r/20260326-env-scsi-hw-part-support-v1-0-55c9dd07a2cb@baylibre.com
41 hours agoenv: scsi: document requirements for ENV_IS_IN_SCSI
David Lechner [Thu, 26 Mar 2026 22:59:28 +0000 (17:59 -0500)] 
env: scsi: document requirements for ENV_IS_IN_SCSI

Expand the Kconfig help for ENV_IS_IN_SCSI to explain the other
required config options when this option is enabled.

Signed-off-by: David Lechner <dlechner@baylibre.com>
41 hours agoenv: scsi: add CONFIG_ENV_SCSI_HW_PARTITION
David Lechner [Thu, 26 Mar 2026 22:59:27 +0000 (17:59 -0500)] 
env: scsi: add CONFIG_ENV_SCSI_HW_PARTITION

Add CONFIG_ENV_SCSI_HW_PARTITION and supporting code to allow loading
the environment directly from a SCSI device without a partition table.
Some platforms store the environment directly on the SCSI device without
a way to look it up by partition UUID.

Signed-off-by: David Lechner <dlechner@baylibre.com>
41 hours agoscsi: move scsi_scan() call out of scsi_get_blk_by_uuid()
David Lechner [Thu, 26 Mar 2026 22:59:26 +0000 (17:59 -0500)] 
scsi: move scsi_scan() call out of scsi_get_blk_by_uuid()

Move scsi_scan() call out of scsi_get_blk_by_uuid().

The only caller, env_scsi_get_part(), should be managing this call since
it may also want to use different ways to get the partition information
in the future.

Signed-off-by: David Lechner <dlechner@baylibre.com>
41 hours agoscsi: document return values of public functions
David Lechner [Thu, 26 Mar 2026 22:59:25 +0000 (17:59 -0500)] 
scsi: document return values of public functions

Add Return: documentation for some public functions in scsi.h that were
missing it.

Signed-off-by: David Lechner <dlechner@baylibre.com>
41 hours agoscsi: return ENODEV in scsi_get_blk_by_uuid()
David Lechner [Thu, 26 Mar 2026 22:59:24 +0000 (17:59 -0500)] 
scsi: return ENODEV in scsi_get_blk_by_uuid()

Change scsi_get_blk_by_uuid() to return -ENODEV instead of -1 on error.
Other scsi_* functions return an error code rather than -1.

1 is EPERM, which doesn't make sense here. So we use ENODEV instead. The
only caller only checks for !success, so changing the value has no
effect on the caller.

Signed-off-by: David Lechner <dlechner@baylibre.com>
41 hours agoenv: scsi: rename ENV_SCSI_PART_UUID
David Lechner [Thu, 26 Mar 2026 22:59:23 +0000 (17:59 -0500)] 
env: scsi: rename ENV_SCSI_PART_UUID

Rename SCSI_ENV_PART_UUID to ENV_SCSI_PART_UUID. All other environment-
related config names are of the form ENV_<name>, so this is more
consistent.

Signed-off-by: David Lechner <dlechner@baylibre.com>
Reviewed-by: Sumit Garg <sumit.garg@oss.qualcomm.com>
41 hours agocmd/scsi: drop scsi reset command
David Lechner [Thu, 26 Mar 2026 20:39:52 +0000 (15:39 -0500)] 
cmd/scsi: drop scsi reset command

Since commit b630f8b3aefc ("scsi: Forceably finish migration to DM_SCSI")
the "scsi reset" command has no possibility of actually resetting any
SCSI controller. Drop the command to avoid confusion that the command is
actually resetting the SCSI controller.

Signed-off-by: David Lechner <dlechner@baylibre.com>
2 days agodm: Respect dma-ranges size
Marek Vasut [Sun, 15 Mar 2026 23:57:23 +0000 (00:57 +0100)] 
dm: Respect dma-ranges size

Rework dev_phys_to_bus() and dev_bus_to_phys() to respect the size
of the area specified in dma-ranges DT property. The area outside
of ranges is remapped 1:1, while the area in the ranges is remapped
according to the description in the dma-ranges property.

Adjust the test to test the area within the remapped range, not area
outside the remapped range, which was incorrect.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Markus Schneider-Pargmann <msp@baylibre.com>
2 days agohikey960: Drop unnecessary BOARD_EARLY_INIT_F usage
Tom Rini [Wed, 25 Mar 2026 19:00:33 +0000 (13:00 -0600)] 
hikey960: Drop unnecessary BOARD_EARLY_INIT_F usage

This platform enables CONFIG_BOARD_EARLY_INIT_F and then has a
do-nothing board_early_init_f function. Change to not enabling the
option and so not needing an empty function.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agospl: Remove unused CONFIG_SPL_FRAMEWORK_BOARD_INIT_F option
Tom Rini [Wed, 25 Mar 2026 19:00:20 +0000 (13:00 -0600)] 
spl: Remove unused CONFIG_SPL_FRAMEWORK_BOARD_INIT_F option

The option CONFIG_SPL_FRAMEWORK_BOARD_INIT_F enables a simple
board_init_f function in SPL. This however is never enabled, so remove
this function and option.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agoarm: Remove redundant "xPL_SYS_MALLOC_F default y" entries
Tom Rini [Wed, 25 Mar 2026 19:00:19 +0000 (13:00 -0600)] 
arm: Remove redundant "xPL_SYS_MALLOC_F default y" entries

The symbol SPL_SYS_MALLOC_F defaults to y when visible and
TPL_SYS_MALLOC_F defaults to y when visible and SPL_SYS_MALLOC_F is
enabled. Remove the places from Kconfig files that had unneccsary
"default y" for these options.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agoboard: ti: am62dx: Separate resource management config from am62ax
Paresh Bhagat [Wed, 25 Mar 2026 07:08:04 +0000 (12:38 +0530)] 
board: ti: am62dx: Separate resource management config from am62ax

AM62d currently shares resource management configuration files with
AM62a. However, AM62a resource management needs to be modified for DMA
resource sharing scheme for CPSW3G Ethernet functionality to support
multi-core traffic handling.

Add separate AM62d-specific resource management configuration files to
decouple from the AM62a changes and maintain proper resource allocation
for AM62d.

Signed-off-by: Paresh Bhagat <p-bhagat@ti.com>
Reviewed-by: Anshul Dalal <anshuld@ti.com>
2 days agoUpdate my email address
Sean Anderson [Tue, 7 Apr 2026 16:40:10 +0000 (12:40 -0400)] 
Update my email address

Soon I will no longer be working at SECO. Update the mailmap to redirect
to my linux.dev address which I still have access to.

Signed-off-by: Sean Anderson <sean.anderson@linux.dev>
Reviewed-by: Sean Anderson <sean.anderson@seco.com>
2 days agoMerge tag 'mediatek-for-master-2026-04-07' of https://source.denx.de/u-boot/custodian...
Tom Rini [Tue, 7 Apr 2026 19:51:37 +0000 (13:51 -0600)] 
Merge tag 'mediatek-for-master-2026-04-07' of https://source.denx.de/u-boot/custodians/u-boot-mediatek

This is the first wave of MediaTek changes for this merge window. We
also expect to be sending another decent-sized pull request later for
the backlog of patches that are currently waiting on dependencies or
need little more time for review.

* Fixes for cargo-culted issues in mach-mediatek init.c files.
* Some consistency cleanups of recently added Genio boards (510/700/1200).
* Some pinctrl improvements to support newer MediaTek SOCs (mt8189 compatible).
* New devicetree and config for Genio 520/720 EVK boards (can boot to eMMC or SD).
* New CPU-specific functions to read vendor-specific CPU info at runtime.

2 days agodoc: release cycle: fix 2026.04 stats link
David Lechner [Tue, 7 Apr 2026 19:13:25 +0000 (14:13 -0500)] 
doc: release cycle: fix 2026.04 stats link

Fix the link to the 2026.04 stats page. It was likely copied from the
2026.01 line below and not updated.

Signed-off-by: David Lechner <dlechner@baylibre.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
2 days agoarm: mediatek: mt8189: print specific CPU information
David Lechner [Mon, 30 Mar 2026 20:23:19 +0000 (15:23 -0500)] 
arm: mediatek: mt8189: print specific CPU information

Modify the print_cpuinfo() function to print a more specific CPU name
when possible.

Reviewed-by: Macpaul Lin <macpaul.lin@mediatek.com>
Link: https://patch.msgid.link/20260330-mtk-mt8189-cpu-type-v1-2-4059c3b52761@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
2 days agoarm: mediatek: add SIP platform bininfo lookups
David Lechner [Mon, 30 Mar 2026 20:23:18 +0000 (15:23 -0500)] 
arm: mediatek: add SIP platform bininfo lookups

Add a couple of functions to look up the segment and part name using SIP
calls. These will be used to print more accurate CPU information in
print_cpuinfo().

Reviewed-by: Macpaul Lin <macpaul.lin@mediatek.com>
Link: https://patch.msgid.link/20260330-mtk-mt8189-cpu-type-v1-1-4059c3b52761@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
2 days agosandbox: Adjust how OS-interface files are built 923/head
Simon Glass [Tue, 24 Mar 2026 19:45:20 +0000 (13:45 -0600)] 
sandbox: Adjust how OS-interface files are built

The current mechanism uses a completely separate build rule for each
file which must be built with system headers. This is tricky to
maintain.

Add a foreach template in the sandbox cpu Makefile which generates the
custom compile rules from a CFLAGS_USE_SYSHDRS list. This keeps the
rules data-driven without needing changes to the common
scripts/Makefile.lib, which could affect other architectures.

Move initjmp.o into the template since it uses the same pattern. Add
sdl.o to the list too, with an override for its command since it also
needs -fshort-wchar removed and -fno-lto added.

Signed-off-by: Simon Glass <sjg@chromium.org>
2 days agoarm: mach-sc5xx: Align header paths with SYS_SOC convention
Philip Molloy [Tue, 24 Mar 2026 10:09:44 +0000 (10:09 +0000)] 
arm: mach-sc5xx: Align header paths with SYS_SOC convention

Define CONFIG_SYS_SOC in the mach-sc5xx Kconfig. Follow the standard
U-Boot include path convention by moving the SC5xx SoC headers from
arch/arm/include/asm/arch-adi/sc5xx/ to the conventional
arch/arm/include/asm/arch-sc5xx/ location. Update includes from
<asm/arch-adi/sc5xx/*.h> to <asm/arch/*.h> across mach-sc5xx and board
files.

Signed-off-by: Philip Molloy <philip.molloy@analog.com>
2 days agoglobal: Correct duplicate U_BOOT_DRIVER entry names
Tom Rini [Mon, 23 Mar 2026 22:55:37 +0000 (16:55 -0600)] 
global: Correct duplicate U_BOOT_DRIVER entry names

The U_BOOT_DRIVER macro creates a list of drivers used at link time, and
all entries here must be unique. This in turn means that all entries in
the code should also be unique in order to not lead to build failures
later with unexpected build combinations. Typically, the problem we have
here is when a driver is obviously based on another driver and didn't
update this particular field and so while the name field reflects
something unique the linker entry itself is not. In a few places this
provides a more suitable string name as well, however.

Reviewed-by: Marek Vasut <marek.vasut+usb@mailbox.org>
Reviewed-by: Svyatoslav Ryhel <clamor95@gmail.com> # Tegra
Reviewed-by: Peter Robinson <pbrobinson@gmail.com>
Reviewed-by: Heiko Schocher <hs@nabladev.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agotpl: Correct dependencies for TPL_OF_CONTROL
Tom Rini [Mon, 23 Mar 2026 19:53:13 +0000 (13:53 -0600)] 
tpl: Correct dependencies for TPL_OF_CONTROL

The TPL_OF_CONTROL option can only select TPL_OF_LIBFDT functionality if
we also have enabled TPL_LIBGENERIC_SUPPORT, so express this dependency
in Kconfig.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agoserial: omap: Fix "unused" warnings with SERIAL_PRESENT=n and OF_REAL=y
Tom Rini [Mon, 23 Mar 2026 19:53:06 +0000 (13:53 -0600)] 
serial: omap: Fix "unused" warnings with SERIAL_PRESENT=n and OF_REAL=y

The definition of our ID table (and of_to_plat function) is guarded with
OF_REAL however the U_BOOT_DRIVER that would in turn use the table is
guarded with SERIAL_PRESENT. To avoid a potential warning we must also
guard both with SERIAL_PRESENT.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agoserial: ns16550: Fix an "unused" warning with SERIAL_PRESENT=n and OF_REAL=y
Tom Rini [Mon, 23 Mar 2026 19:53:04 +0000 (13:53 -0600)] 
serial: ns16550: Fix an "unused" warning with SERIAL_PRESENT=n and OF_REAL=y

The definition of our ID table is guarded with OF_REAL however the
U_BOOT_DRIVER that would in turn use the table is guarded with
SERIAL_PRESENT. To avoid a potential warning we must also guard the
ID table with SERIAL_PRESENT.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agoinput: Correct dependencies for CROS_EC_KEYB
Tom Rini [Mon, 23 Mar 2026 19:52:56 +0000 (13:52 -0600)] 
input: Correct dependencies for CROS_EC_KEYB

The CROS_EC_KEYB functionality can only work with CROS_EC enabled, so
express this dependency in Kconfig, for all build phases.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agospl: env: Correct dependencies for SPL_SAVEENV and MMC
Tom Rini [Mon, 23 Mar 2026 19:52:55 +0000 (13:52 -0600)] 
spl: env: Correct dependencies for SPL_SAVEENV and MMC

The SPL_SAVEENV functionality, when working with an MMC device, can only
work with SPL_MMC_WRITE enabled. This however only works with SPL_MMC
also being enabled. Update the dependencies to show that if we have
enabled SPL_ENV_IS_IN_MMC then we select SPL_MMC_WRITE and make
SPL_ENV_IS_IN_MMC depends on SPL_MMC.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agow1: Correct dependencies for CMD_W1
Tom Rini [Mon, 23 Mar 2026 19:52:51 +0000 (13:52 -0600)] 
w1: Correct dependencies for CMD_W1

The CMD_W1 functionality can only work with both W1 and W1_EEPROM
enabled, so express this dependency in Kconfig.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agocmd: Correct dependencies for CMD_BOOTD
Tom Rini [Mon, 23 Mar 2026 19:52:49 +0000 (13:52 -0600)] 
cmd: Correct dependencies for CMD_BOOTD

The CMD_BOOTD functionality can only work with CMD_BOOTM enabled, so
express this dependency in Kconfig.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agolmb: boot: Update dependencies within BOOT_DEFAULTS_CMDS
Tom Rini [Mon, 23 Mar 2026 19:52:47 +0000 (13:52 -0600)] 
lmb: boot: Update dependencies within BOOT_DEFAULTS_CMDS

The CMD_BOOT[IZ] symbols have a dependency on LMB, correctly,
currently. Make sure that in BOOT_DEFAULTS_CMDS we only select these
commands if LMB is enabled.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agolmb: Rework the LMB_ARCH_MEM_MAP symbol
Tom Rini [Mon, 23 Mar 2026 19:52:45 +0000 (13:52 -0600)] 
lmb: Rework the LMB_ARCH_MEM_MAP symbol

This symbol should not be enabled by the user directly but rather
selected when implemented in a given platform. This converts all of the
current users of this feature and hides the symbol.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agodts: Disallow OF_UPSTREAM for sandbox
Tom Rini [Mon, 23 Mar 2026 19:52:44 +0000 (13:52 -0600)] 
dts: Disallow OF_UPSTREAM for sandbox

Our sandbox platform are not appropriate for OF_UPSTREAM, reflect this in
Kconfig.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agoenv: remote: Disallow CMD_SAVEENV
Tom Rini [Mon, 23 Mar 2026 19:51:06 +0000 (13:51 -0600)] 
env: remote: Disallow CMD_SAVEENV

Looking at how the saveenv portion of this driver was implemented, it
does not appear that it could actually result in changes being saved on
the remote end. Update Kconfig to disallow CMD_SAVEENV for
ENV_IS_IN_REMOTE and then remove the relevant code.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 days agoenv: Make more use of the ENV_SAVE_PTR macro
Tom Rini [Mon, 23 Mar 2026 19:51:05 +0000 (13:51 -0600)] 
env: Make more use of the ENV_SAVE_PTR macro

With commit 82b2f4135719 ("env_internal.h: add alternative ENV_SAVE_PTR
macro") we introduced the ENV_SAVE_PTR macro but as explained in the
commit message, left full conversion for a later time. This commit
makes more progress on that front by doing the remaining easy
conversions to the new macro.

Signed-off-by: Tom Rini <trini@konsulko.com>
Changes in v2:
- Reduce the number of conversions, some didn't work as expected once
  CMD_SAVEENV was actually disabled.
- Finish converting UBI

Cc Rasmus Villemoes <rasmus.villemoes@prevas.dk>

2 days agoconfigs: mt8189: enable GPIO support
David Lechner [Mon, 16 Mar 2026 21:55:16 +0000 (16:55 -0500)] 
configs: mt8189: enable GPIO support

Enable GPIO support for mt8189-based boards. This is needed for U-Boot
to be able to use the SD card slot on the board (for the CD pin).

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260316-mtk-ext-mmc-boot-v1-3-1aae51a44705@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
2 days agoarm: dts: add U-Boot overrides for Genio 520 and 720 SD card
David Lechner [Mon, 16 Mar 2026 21:55:15 +0000 (16:55 -0500)] 
arm: dts: add U-Boot overrides for Genio 520 and 720 SD card

Add U-Boot-specific device tree overrides for the Genio 520 and 720 EVK
boards. These are needed to enable SD card support in U-Boot due to
current driver limitations. It is expected that these files will remain
after eventually converting these to CONFIG_OF_UPSTREAM, so we use
separate .u-boot.dtsi files for this.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260316-mtk-ext-mmc-boot-v1-2-1aae51a44705@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
2 days agoarm: dts: mt8371: add SD card nodes
David Lechner [Mon, 16 Mar 2026 21:55:14 +0000 (16:55 -0500)] 
arm: dts: mt8371: add SD card nodes

Add SD card nodes to the MT8371 Genio common and MT8189 SoC device tree
files. This is coming from what has been submitted upstream in Linux
[1]. The process is going slow, so we a copy in U-Boot until we can
switch to CONFIG_OF_UPSTREAM.

Link: https://lore.kernel.org/linux-mediatek/20251203-add-mediatek-genio-520-720-evk-v1-0-df794b2a30ae@collabora.com/
Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260316-mtk-ext-mmc-boot-v1-1-1aae51a44705@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
2 days agoboard: mediatek: Add Genio 520/720 EVK defconfigs
Chris-QJ Chen [Mon, 23 Mar 2026 20:16:57 +0000 (15:16 -0500)] 
board: mediatek: Add Genio 520/720 EVK defconfigs

Add basic defconfigs for Genio 520 and 720 EVKs.

Signed-off-by: Chris-QJ Chen <chris-qj.chen@mediatek.com>
Signed-off-by: Macpaul Lin <macpaul.lin@mediatek.com>
Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Reviewed-by: Macpaul Lin <macpaul.lin@mediatek.com>
Link: https://patch.msgid.link/20260323-mtk-mt8391-initial-support-v3-6-19dd92f4543f@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
2 days agoarm: dts: mediatek: Add MediaTek Genio 520/720 EVK DTS
Chris-QJ Chen [Mon, 23 Mar 2026 20:16:56 +0000 (15:16 -0500)] 
arm: dts: mediatek: Add MediaTek Genio 520/720 EVK DTS

Add a basic .dts file for MediaTek Genio 520/720 EVKs. This will suffice
until an upstream devicetree is available from Linux.

These boards are virtually identical (other than some camera
capabilities) so share mostly the same devicetree.

Signed-off-by: Chris-QJ Chen <chris-qj.chen@mediatek.com>
Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260323-mtk-mt8391-initial-support-v3-5-19dd92f4543f@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
2 days agoarm: dts: mediatek: Add MediaTek MT8189 dtsi file
Chris-QJ Chen [Mon, 23 Mar 2026 20:16:55 +0000 (15:16 -0500)] 
arm: dts: mediatek: Add MediaTek MT8189 dtsi file

Add a basic .dtsi file for MediaTek MT8189. This will suffice until an
upstream devicetree is available from Linux.

Signed-off-by: Chris-QJ Chen <chris-qj.chen@mediatek.com>
Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260323-mtk-mt8391-initial-support-v3-4-19dd92f4543f@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
2 days agoarm: dts: mediatek: mt8189: Add pinmux macro header file
Cathy Xu [Mon, 23 Mar 2026 20:16:54 +0000 (15:16 -0500)] 
arm: dts: mediatek: mt8189: Add pinmux macro header file

Add the pinctrl header file on MediaTek mt8189.

Signed-off-by: Cathy Xu <ot_cathy.xu@mediatek.com>
Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260323-mtk-mt8391-initial-support-v3-3-19dd92f4543f@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
2 days agoarm: mediatek: add support of MT8189 SoC family
Chris-QJ Chen [Mon, 23 Mar 2026 20:16:53 +0000 (15:16 -0500)] 
arm: mediatek: add support of MT8189 SoC family

Add TARGET_MT8189 for MT8189 and similar SoCs.

Signed-off-by: Chris-QJ Chen <chris-qj.chen@mediatek.com>
Signed-off-by: Macpaul Lin <macpaul.lin@mediatek.com>
Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Reviewed-by: Macpaul Lin <macpaul.lin@mediatek.com>
Link: https://patch.msgid.link/20260323-mtk-mt8391-initial-support-v3-2-19dd92f4543f@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
2 days agoclk: mediatek: mt8189: add some VLP clocks
David Lechner [Mon, 23 Mar 2026 20:16:52 +0000 (15:16 -0500)] 
clk: mediatek: mt8189: add some VLP clocks

Add some VLP clocks needed by the PMIC on MT8189 and similar SoCs.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260323-mtk-mt8391-initial-support-v3-1-19dd92f4543f@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
2 days agopinctrl: mediatek: mtk8189: set get_pinconf functions
David Lechner [Mon, 30 Mar 2026 16:00:36 +0000 (11:00 -0500)] 
pinctrl: mediatek: mtk8189: set get_pinconf functions

Set the get_pinconf functions for the mt8189 pinctrl driver. This will
append pinconf bias info to the output of the pinmux status command.
This is useful for debugging pin configuration issues.

Reviewed-by: Macpaul Lin <macpaul.lin@mediatek.com>
Link: https://patch.msgid.link/20260330-pinctrl-mtk-fix-mt8189-v2-4-05a737ec623d@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
2 days agopinctrl: mediatek: print bias info along with pinmux
David Lechner [Mon, 30 Mar 2026 16:00:35 +0000 (11:00 -0500)] 
pinctrl: mediatek: print bias info along with pinmux

Add functionality to be able to print pin bias settings along with the
pinmux setting.

This can be useful to debug why pins might not be working correctly.

Reviewed-by: Macpaul Lin <macpaul.lin@mediatek.com>
Link: https://patch.msgid.link/20260330-pinctrl-mtk-fix-mt8189-v2-3-05a737ec623d@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
2 days agopinctrl: mediatek: mt8189: fix pinconf bias
David Lechner [Mon, 30 Mar 2026 16:00:34 +0000 (11:00 -0500)] 
pinctrl: mediatek: mt8189: fix pinconf bias

Fix setting pinconf bias for MT8189.

Using mtk_pinconf_bias_set_v1() was wrong because MT8189 does not have
PULLEN/PULLSEL registers. It has PU and PD registers for most pins.
MSDC pins need special handling since they have PUPD/R1/R0 registers.
I2C pins need special handling since they have PU/PD/RSEL registers.
New groups are added for MSDC and I2C pins and the bias_set callback
is now set appropriately for all groups.

A new table is needed for the RSEL registers since those were missing.

Some new macros are introduced to avoid repeating the same info many
times in MTK_TYPED_PIN(). This also fixes the semantically incorrect
use of DRV_GRPX for the IO_TYPE_GRPX field.

Reviewed-by: Macpaul Lin <macpaul.lin@mediatek.com>
Link: https://patch.msgid.link/20260330-pinctrl-mtk-fix-mt8189-v2-2-05a737ec623d@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
2 days agopinctrl: mediatek: add handling for RSEL register
David Lechner [Mon, 30 Mar 2026 16:00:33 +0000 (11:00 -0500)] 
pinctrl: mediatek: add handling for RSEL register

Add a new PINCTRL_PIN_REG_RSEL register type and a new function
mtk_pinconf_bias_set_pu_pd_rsel() to handle setting it.

Some MediaTek SoCs have a pin configuration register called RSEL that
sets the resistance value for bias pullup/pulldown.

Link: https://patch.msgid.link/20260330-pinctrl-mtk-fix-mt8189-v2-1-05a737ec623d@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoconfigs: mt8370/mt8390/mt8395 add myself as maintainer
Julien Stephan [Wed, 18 Mar 2026 16:45:28 +0000 (17:45 +0100)] 
configs: mt8370/mt8390/mt8395 add myself as maintainer

Set myself as maintainer for the following genio boards:
- mt8370-genio-510-evk
- mt8393-genio-700-evk
- mt8395-genio-1200-evk

Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260318-rename-genio-defconfigs-v2-6-1f77580d72f3@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoconfigs: mt8370/mt8390: introduce mt8188.config to avoid duplication
Julien Stephan [Wed, 18 Mar 2026 16:45:27 +0000 (17:45 +0100)] 
configs: mt8370/mt8390: introduce mt8188.config to avoid duplication

mt8370_genio_510_evk_defconfig and mt8390_genio_700_evk_defconfig are
both based on MT8188, add a new mt8188.config file to share common
config.

Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260318-rename-genio-defconfigs-v2-5-1f77580d72f3@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoconfigs: mt8390_evk: rename to mt8390_genio_700_evk_defconfig
Julien Stephan [Wed, 18 Mar 2026 16:45:26 +0000 (17:45 +0100)] 
configs: mt8390_evk: rename to mt8390_genio_700_evk_defconfig

Rename mt8390_evk to match the name of the device tree which is
mt8390-genio-700-evk.dts

Also update CONFIG_IDENT_STRING to be consistent.

Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260318-rename-genio-defconfigs-v2-4-1f77580d72f3@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoconfigs: mt8370_evk: rename to mt8370_genio_510_evk_defconfig
Julien Stephan [Wed, 18 Mar 2026 16:45:25 +0000 (17:45 +0100)] 
configs: mt8370_evk: rename to mt8370_genio_510_evk_defconfig

Rename mt8370_evk to match the name of the device tree which is
mt8370-genio-510-evk.dts

Also update CONFIG_IDENT_STRING to be consistent.

Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260318-rename-genio-defconfigs-v2-3-1f77580d72f3@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoconfigs: mt8395_evk: rename to mt8395_genio_1200_evk_defconfig
Julien Stephan [Wed, 18 Mar 2026 16:45:24 +0000 (17:45 +0100)] 
configs: mt8395_evk: rename to mt8395_genio_1200_evk_defconfig

Rename mt8395_evk to match the name of the device tree which is
mt8395-genio-1200-evk.dts

Also update CONFIG_IDENT_STRING to be consistent.

Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260318-rename-genio-defconfigs-v2-2-1f77580d72f3@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoconfigs: mt8390_evk: remove useless CONFIG_SYS_BOARD
Julien Stephan [Wed, 18 Mar 2026 16:45:23 +0000 (17:45 +0100)] 
configs: mt8390_evk: remove useless CONFIG_SYS_BOARD

There is no board directory for MT8390_EVK so CONFIG_SYS_BOARD can be
removed

Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260318-rename-genio-defconfigs-v2-1-1f77580d72f3@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt8518: remove call to fdtdec_setup_memory_banksize()
David Lechner [Thu, 19 Mar 2026 20:00:20 +0000 (15:00 -0500)] 
arm: mediatek: mt8518: remove call to fdtdec_setup_memory_banksize()

Remove an incorrect call to fdtdec_setup_memory_banksize() in
dram_init() for mt8518.

fdtdec_setup_memory_banksize() populates gd->bd->bi_dram[bank].start
and gd->bd->bi_dram[bank].size base on the "memory" node in the device
tree. However, calling it from dram_init() is too early because gd->bd
has not been allocated yet.

gd->bd->bi_dram[0].start and gd->bd->bi_dram[0].size are already
correctly initialized later in dram_init_banksize(), so we do not need
to replace the removed function call with anything else.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-17-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt8518: drop dram_init_banksize()
David Lechner [Thu, 19 Mar 2026 20:00:19 +0000 (15:00 -0500)] 
arm: mediatek: mt8518: drop dram_init_banksize()

Drop override of dram_init_banksize() weak function for mt8518. This is
effectively the same as the default implementation, so we do not need
to override it.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-16-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt8516: drop dram_init_banksize()
David Lechner [Thu, 19 Mar 2026 20:00:18 +0000 (15:00 -0500)] 
arm: mediatek: mt8516: drop dram_init_banksize()

Drop override of dram_init_banksize() weak function for mt8516. This is
effectively the same as the default implementation, so we do not need
to override it.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-15-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt8512: drop dram_init_banksize()
David Lechner [Thu, 19 Mar 2026 20:00:17 +0000 (15:00 -0500)] 
arm: mediatek: mt8512: drop dram_init_banksize()

Drop override of dram_init_banksize() weak function for mt8512. This is
exactly the same as the default implementation, so we do not need to
override it.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-14-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt8365: drop dram_init_banksize()
David Lechner [Thu, 19 Mar 2026 20:00:16 +0000 (15:00 -0500)] 
arm: mediatek: mt8365: drop dram_init_banksize()

Drop override of dram_init_banksize() weak function for mt8365. This is
effectively the same as the default implementation, so we do not need
to override it.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-13-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt8195: fix gd->ram_top limit
David Lechner [Thu, 19 Mar 2026 20:00:15 +0000 (15:00 -0500)] 
arm: mediatek: mt8195: fix gd->ram_top limit

Fix the implementation of the gd->ram_top limit for mt8195.

The intention of the comment about MMC/DMA is correct, but the
implementation was wrong. gd->mon_len is set to the code size of U-Boot,
so trying to set it to limit gd->ram_top does not make sense.

Instead, there is already a get_effective_memsize() weak function that
we can override to implement the required limit on the usable memory
size. This is used to set gd->ram_top in setup_dest_addr().

The comment about the extra SZ_1M needing to be reserved is not correct
as U-Boot already takes care of this (with the actual size of U-Boot) in
the various board_f functions, so it is removed.

This fixes DMA not working on MMC on mt8195.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-12-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt8195: remove call to fdtdec_setup_memory_banksize()
David Lechner [Thu, 19 Mar 2026 20:00:14 +0000 (15:00 -0500)] 
arm: mediatek: mt8195: remove call to fdtdec_setup_memory_banksize()

Remove an incorrect call to fdtdec_setup_memory_banksize() in
dram_init() for mt8195.

fdtdec_setup_memory_banksize() populates gd->bd->bi_dram[bank].start
and gd->bd->bi_dram[bank].size base on the "memory" node in the device
tree. However, calling it from dram_init() is too early because gd->bd
has not been allocated yet.

gd->bd->bi_dram[0].start and gd->bd->bi_dram[0].size are already
correctly initialized later in dram_init_banksize(), so we do not need
to replace the removed function call with anything else.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-11-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt8195: check return value of fdtdec_setup_mem_size_base()
David Lechner [Thu, 19 Mar 2026 20:00:13 +0000 (15:00 -0500)] 
arm: mediatek: mt8195: check return value of fdtdec_setup_mem_size_base()

Check and propagate the return value of fdtdec_setup_mem_size_base() in
dram_init() for mt8195. This function could fail if the device tree is
malformed.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-10-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt8195: drop dram_init_banksize()
David Lechner [Thu, 19 Mar 2026 20:00:12 +0000 (15:00 -0500)] 
arm: mediatek: mt8195: drop dram_init_banksize()

Drop override of dram_init_banksize() weak function for mt8195. This is
effectively the same as the default implementation, so we do not need
to override it.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-9-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt8188: fix gd->ram_top limit
David Lechner [Thu, 19 Mar 2026 20:00:11 +0000 (15:00 -0500)] 
arm: mediatek: mt8188: fix gd->ram_top limit

Fix the implementation of the gd->ram_top limit for mt8188.

The intention of the comment about MMC/DMA is correct, but the
implementation was wrong. gd->mon_len is set to the code size of U-Boot,
so trying to set it to limit gd->ram_top does not make sense.

Instead, there is already a get_effective_memsize() weak function that
we can override to implement the required limit on the usable memory
size. This is used to set gd->ram_top in setup_dest_addr().

The comment about the extra SZ_1M needing to be reserved is not correct
as U-Boot already takes care of this (with the actual size of U-Boot) in
the various board_f functions, so it is removed.

This fixes DMA not working on MMC on mt8188.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-8-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt8188: remove call to fdtdec_setup_memory_banksize()
David Lechner [Thu, 19 Mar 2026 20:00:10 +0000 (15:00 -0500)] 
arm: mediatek: mt8188: remove call to fdtdec_setup_memory_banksize()

Remove an incorrect call to fdtdec_setup_memory_banksize() in
dram_init() for mt8188.

fdtdec_setup_memory_banksize() populates gd->bd->bi_dram[bank].start
and gd->bd->bi_dram[bank].size base on the "memory" node in the device
tree. However, calling it from dram_init() is too early because gd->bd
has not been allocated yet.

gd->bd->bi_dram[0].start and gd->bd->bi_dram[0].size are already
correctly initialized later in dram_init_banksize(), so we do not need
to replace the removed function call with anything else.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-7-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt8188: check return value of fdtdec_setup_mem_size_base()
David Lechner [Thu, 19 Mar 2026 20:00:09 +0000 (15:00 -0500)] 
arm: mediatek: mt8188: check return value of fdtdec_setup_mem_size_base()

Check and propagate the return value of fdtdec_setup_mem_size_base() in
dram_init() for mt8188. This function could fail if the device tree is
malformed.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-6-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt8188: drop dram_init_banksize()
David Lechner [Thu, 19 Mar 2026 20:00:08 +0000 (15:00 -0500)] 
arm: mediatek: mt8188: drop dram_init_banksize()

Drop override of dram_init_banksize() weak function for mt8188. This is
effectively the same as the default implementation, so we do not need
to override it.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-5-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt8183: remove call to fdtdec_setup_memory_banksize()
David Lechner [Thu, 19 Mar 2026 20:00:07 +0000 (15:00 -0500)] 
arm: mediatek: mt8183: remove call to fdtdec_setup_memory_banksize()

Remove an incorrect call to fdtdec_setup_memory_banksize() in
dram_init() for mt8183.

fdtdec_setup_memory_banksize() populates gd->bd->bi_dram[bank].start
and gd->bd->bi_dram[bank].size base on the "memory" node in the device
tree. However, calling it from dram_init() is too early because gd->bd
has not been allocated yet.

gd->bd->bi_dram[0].start and gd->bd->bi_dram[0].size are already
correctly initialized later in dram_init_banksize(), so we do not need
to replace the removed function call with anything else.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-4-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt8183: drop dram_init_banksize()
David Lechner [Thu, 19 Mar 2026 20:00:06 +0000 (15:00 -0500)] 
arm: mediatek: mt8183: drop dram_init_banksize()

Drop override of dram_init_banksize() weak function for mt8183. This is
effectively the same as the default implementation, so we do not need
to override it.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-3-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt7988: drop dram_init_banksize()
David Lechner [Thu, 19 Mar 2026 20:00:05 +0000 (15:00 -0500)] 
arm: mediatek: mt7988: drop dram_init_banksize()

Drop override of dram_init_banksize() weak function for mt7988. This is
effectively the same as the default implementation, so we do not need
to override it.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-2-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoarm: mediatek: mt7987: drop dram_init_banksize()
David Lechner [Thu, 19 Mar 2026 20:00:04 +0000 (15:00 -0500)] 
arm: mediatek: mt7987: drop dram_init_banksize()

Drop override of dram_init_banksize() weak function for mt7987. This is
effectively the same as the default implementation, so we do not need
to override it.

Reviewed-by: Julien Stephan <jstephan@baylibre.com>
Tested-by: Julien Stephan <jstephan@baylibre.com>
Link: https://patch.msgid.link/20260319-mtk-init-fix-dram-v1-1-6171ec141f40@baylibre.com
Signed-off-by: David Lechner <dlechner@baylibre.com>
3 days agoMerge branch 'next'
Tom Rini [Mon, 6 Apr 2026 18:16:57 +0000 (12:16 -0600)] 
Merge branch 'next'

3 days agoPrepare v2026.04 v2026.04
Tom Rini [Mon, 6 Apr 2026 17:57:23 +0000 (11:57 -0600)] 
Prepare v2026.04

Signed-off-by: Tom Rini <trini@konsulko.com>
3 days agoAdd an initial CONTRIBUTE.rst
Peter Robinson [Mon, 6 Apr 2026 17:28:00 +0000 (18:28 +0100)] 
Add an initial CONTRIBUTE.rst

Add a contributors file to provide a high level overview
for people who wish to contribute to the project outlining
basic details and setting some project expectations.

This isn't intended to replace any of the existing documentation
but rather provide a succinct top level document that's easy
to find to enable users to understand the project and get
started as quickly as possible.

Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
[trini: Correct merge window length, release day and typo in the main
        index]
Signed-off-by: Tom Rini <trini@konsulko.com>
4 days agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh
Tom Rini [Sun, 5 Apr 2026 15:10:21 +0000 (09:10 -0600)] 
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh

Two trivial fixes for 2026.04 , one fix for possible NULL pointer
dereference which was not triggered thus far but got detected on Gen5
RSIP, and one basic disablement of SCIF1 in DT to which a driver was
never bound. But it would be nice to have them corrected.

5 days agoarm64: dts: renesas: Disable SCIF1 in Renesas R-Car X5H R8A78000 SoC DT
Marek Vasut [Sun, 15 Mar 2026 23:51:59 +0000 (00:51 +0100)] 
arm64: dts: renesas: Disable SCIF1 in Renesas R-Car X5H R8A78000 SoC DT

Disable incorrectly enabled SCIF1 in Renesas R-Car X5H R8A78000 SoC DT.
The SCIF1 should be enabled on board DT level in case it is needed, but
should be disabled in SoC DT by default. This had no adverse effect on
the currently upstream platforms, because those managed to probe only
the HSCIF0 device and SCIF1 was ignored.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
5 days agonet: rswitch: Avoid NULL pointer dereference during PHY access
Marek Vasut [Wed, 25 Mar 2026 01:09:05 +0000 (02:09 +0100)] 
net: rswitch: Avoid NULL pointer dereference during PHY access

At the very early stage when PHY ID is being auto-detected, the
PHY device is not yet instantiated and rswitch_etha .phydev is
still NULL. Add missing check for this condition and perform C22
fallback access in this PHY ID auto-detection case.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
6 days agoRevert "usb: cdns3: use VBUS Valid to determine role for dr_mode OTG"
Prasanth Babu Mantena [Thu, 12 Mar 2026 13:32:47 +0000 (19:02 +0530)] 
Revert "usb: cdns3: use VBUS Valid to determine role for dr_mode OTG"

While USB DFU boot works with this patch, but the non USB boot modes like
SD Boot and flash boot fails for J784S4 EVM device.

So, Reverting this patch.

This reverts commit bfb530e06ca6c19f66c079601e568c761a001993.

Signed-off-by: Prasanth Babu Mantena <p-mantena@ti.com>