]> git.ipfire.org Git - thirdparty/u-boot.git/log
thirdparty/u-boot.git
5 months agobootstd: Fix bootflow info for efi_mgr
Sam Protsenko [Fri, 3 Oct 2025 22:27:14 +0000 (17:27 -0500)] 
bootstd: Fix bootflow info for efi_mgr

A "Synchronous Abort" CPU exception happens on an attempt to run the
"bootflow info" command for a global boot method (e.g. efi_mgr):

    => bootflow select 0
    => bootflow info

    "Synchronous Abort" handler, esr 0x96000006, far 0x8

It happens because do_bootflow_info() tries to dereference bflow->dev,
which is NULL in case of efi_mgr. Add the corresponding check to prevent
this NULL pointer dereference and make "bootflow info" command work
properly for global boot methods.

Fixes: 2d653f686b6d ("bootstd: Add a bootflow command")
Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
5 months agoglobal: Disable xPL phases when we have enabled COMPILE_TEST
Tom Rini [Fri, 3 Oct 2025 20:39:34 +0000 (14:39 -0600)] 
global: Disable xPL phases when we have enabled COMPILE_TEST

Due to how we implement the logic for selecting what should/shouldn't be
built in a given phase it becomes extremely cumbersome to make these
phases link when configured by "allyesconfig". As a starting point for
being able to enable "allyesconfig" and expand our static coverage,
disable all other phases in this case.

Future work can be done to enable other phases as time and interest
permit.

Signed-off-by: Tom Rini <trini@konsulko.com>
5 months agosandbox: Make SANDBOX_xPL depend on !COMPILE_TEST
Tom Rini [Fri, 3 Oct 2025 20:39:32 +0000 (14:39 -0600)] 
sandbox: Make SANDBOX_xPL depend on !COMPILE_TEST

Given how these options are used in the code, it doesn't make sense to
enable them for COMPILE_TEST. Make them depend on !COMPILE_TEST.

Signed-off-by: Tom Rini <trini@konsulko.com>
5 months agoglobal: Make REMAKE_ELF depend on !COMPILE_TEST
Tom Rini [Fri, 3 Oct 2025 20:39:30 +0000 (14:39 -0600)] 
global: Make REMAKE_ELF depend on !COMPILE_TEST

The REMAKE_ELF flag is something that should be selected by the
platforms which need it, and not prompted for. Start by making this
depend on !COMPILE_TEST.

Signed-off-by: Tom Rini <trini@konsulko.com>
5 months agospl: FIT: Make SPL_LOAD_FIT_FULL depend on SPL_LOAD_FIT
Tom Rini [Fri, 3 Oct 2025 20:39:20 +0000 (14:39 -0600)] 
spl: FIT: Make SPL_LOAD_FIT_FULL depend on SPL_LOAD_FIT

Today, only a few platforms enable SPL_LOAD_FIT_FULL, and all enable
SPL_LOAD_FIT. As can be seen in usage, the FULL symbol is a superset of
the first symbol, not an alternative. Update Kconfig entries based on
this and simplify the only code which checks for either being set.

Signed-off-by: Tom Rini <trini@konsulko.com>
5 months agoSPL: Make SPL_OS depend on supported architectures
Tom Rini [Fri, 3 Oct 2025 20:39:17 +0000 (14:39 -0600)] 
SPL: Make SPL_OS depend on supported architectures

We can only enable Falcon Mode (aka SPL_OS) on architectures which
implement certain hooks. Express these dependencies in Kconfig.

Signed-off-by: Tom Rini <trini@konsulko.com>
5 months agoMerge patch series "bootstd: rauc: fix doc and info msg to reflect real flow"
Tom Rini [Mon, 13 Oct 2025 20:19:21 +0000 (14:19 -0600)] 
Merge patch series "bootstd: rauc: fix doc and info msg to reflect real flow"

Andreas Pretzsch <apr@cn-eng.de> says:

For the RAUC bootmethod, newly introduced in U-Boot 2025.10, both code
and documentation contain some incorrect (maybe outdated) statements,
so they do not reflect the real behaviour.
This series corrects both the docs and one log_info in the code, to now
reflect the real flow. Beside being visible in the code, all of it was
tested on a real machine.

Despite the very late time in RC cycle, I suggest inclusion before release
of U-Boot 2025.10, as the current statements are simply incorrect. Also I
do not see any risk in these non-functional changes.
Thanks to Martin Schwan for the review and esp. the initial code!

Link: https://lore.kernel.org/r/20251002162506.3908711-1-apr@cn-eng.de
5 months agobootstd: rauc: extend and fix doc to reflect real flow
Andreas Pretzsch [Thu, 2 Oct 2025 16:24:59 +0000 (18:24 +0200)] 
bootstd: rauc: extend and fix doc to reflect real flow

The documentation of bootmeth rauc in some aspects does not reflect the
real program flow. Specifically the reset of boot tries in case of "no
more slots found" is incorrect (it won't change BOOT_ORDER).
Also the search sequence for boot scripts was mixed and incomplete.
Fix these points in the documentation.

Explain the initial setup of any missing BOOT_ORDER and BOOT_x_LEFT
environment variables, and inform about BOOT_x_LEFT decrementing.

Signed-off-by: Andreas Pretzsch <apr@cn-eng.de>
Reviewed-by: Martin Schwan <m.schwan@phytec.de>
5 months agobootstd: rauc: no valid slot fallback: fix info msg to reflect real flow
Andreas Pretzsch [Thu, 2 Oct 2025 16:24:58 +0000 (18:24 +0200)] 
bootstd: rauc: no valid slot fallback: fix info msg to reflect real flow

If there is no more active slot found in find_active_slot(), like when
all slots in BOOT_ORDER have a count of 0, the counters are reset to their
default value CONFIG_BOOTMETH_RAUC_DEFAULT_TRIES. The BOOT_ORDER is _not_
changed, which is logically correct (especially for the case when there is
only one (active) slot set, e.g. BOOT_ORDER only contains 'B', probably due
to RAUC option prevent-late-fallback being set). Resetting the counters of
inactive slots also does not harm here, and is fine as a generic solution.

But the log_info statement in this scenario
  INFO: Resetting boot order and all slot tries
is incorrect. Change this to
  INFO: Resetting all slot tries to 3
with the 3 being inserted by CONFIG_BOOTMETH_RAUC_DEFAULT_TRIES.

Signed-off-by: Andreas Pretzsch <apr@cn-eng.de>
Reviewed-by: Martin Schwan <m.schwan@phytec.de>
6 months agopci: mvebu: Unable to assign mbus windows for 2nd pcie controller
Tony Dinh [Mon, 29 Sep 2025 21:49:12 +0000 (14:49 -0700)] 
pci: mvebu: Unable to assign mbus windows for 2nd pcie controller

Correct the memory and IO mbus windows size increments in mvebu_pcie_bind.

Currently, pcie1 controller resource_size(&mem) and resource_size(&io)
checks result in a failure. This is because mem.end and io.end must be
incremented at the end of pcie0 windows assignment.

Signed-off-by: Tony Dinh <mibodhi@gmail.com>
Reviewed-by: Stefan Roese <stefan.roese@mailbox.org>
6 months agophy: marvell: Tighten MVEBU_COMPHY_SUPPORT dependencies
Tom Rini [Thu, 25 Sep 2025 20:56:14 +0000 (14:56 -0600)] 
phy: marvell: Tighten MVEBU_COMPHY_SUPPORT dependencies

This driver cannot link without access to functions that are defined in
files that are only build on some platforms.  Express those requirements
in Kconfig as well.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Stefan Roese <stefan.roese@mailbox.org>
6 months agoARM: dts: pxa1908: convert to OF_UPSTREAM
Duje Mihanović [Sat, 16 Aug 2025 19:35:19 +0000 (21:35 +0200)] 
ARM: dts: pxa1908: convert to OF_UPSTREAM

Convert the PXA1908 platform and its coreprimevelte board to OF_UPSTREAM
and enable the few drivers found in the upstream DTS.

Signed-off-by: Duje Mihanović <duje@dujemihanovic.xyz>
6 months agommc: octeontx_hsmmc: Remove impossible test
Andrew Goodbody [Thu, 31 Jul 2025 10:51:22 +0000 (11:51 +0100)] 
mmc: octeontx_hsmmc: Remove impossible test

In octeontx_mmc_io_drive_setup drive and slew are tested for being less
than 0 but they are declared as uint fields so this test must always
fail. Just remove the test.

This issue was found by Smatch.

Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
6 months agommc: octeontx_hsmmc: Need parens in expression
Andrew Goodbody [Thu, 31 Jul 2025 10:51:21 +0000 (11:51 +0100)] 
mmc: octeontx_hsmmc: Need parens in expression

The check for no response expected in octeontx_mmc_send_cmd needs parens
adding for proper interpretation.

This issue was found by Smatch.

Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
6 months agosata: sata_mv: Remove always true test
Andrew Goodbody [Tue, 22 Jul 2025 16:42:20 +0000 (17:42 +0100)] 
sata: sata_mv: Remove always true test

Smatch reported an issue with a test that was always true in that an
unsigned variable will always be >= to zero. This led to a closer look
at the code which showed that some static functions returned values that
were always discarded so make those functions return void. Also make
the passing of block counts in those functions always use lbaint_t.

Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
Reviewed-by: Stefan Roese <stefan.roese@mailbox.org>
6 months agofs: jffs2: Remove always true test
Andrew Goodbody [Thu, 2 Oct 2025 09:29:14 +0000 (10:29 +0100)] 
fs: jffs2: Remove always true test

Testing an unsigned variable to be >= 0 will always be true so remove
this redundant test.

This issue was found by Smatch.

Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
6 months agofs/squashfs: Ensure memory is freed by using unwind goto
Andrew Goodbody [Thu, 2 Oct 2025 10:36:09 +0000 (11:36 +0100)] 
fs/squashfs: Ensure memory is freed by using unwind goto

Returning immediately from sqfs_read_nest is not consistent with other
error checks in this function and can lead to memory leaks. Instead use
the unwind goto used elsewhere to ensure that the memory is freed.

This issue was found by Smatch.

Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
Acked-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Joao Marcos Costa <joaomarcos.costa@bootlin.com>
6 months agofs: Rework filesystem guards for xPL phases
Tom Rini [Wed, 1 Oct 2025 20:31:03 +0000 (14:31 -0600)] 
fs: Rework filesystem guards for xPL phases

When adding filesystems to the table in fs/fs.c we need to use
CONFIG_IS_ENABLED(FS_xxx) so that we only include references to a given
filesystem when CONFIG_FS_xxx or CONFIG_SPL_FS_xxx or similar are
enabled. Update the filesystems which weren't doing this to follow that
pattern.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 months agolz4: Do not disable LZ4_decompress_safe* for xPL
Tom Rini [Wed, 1 Oct 2025 20:31:01 +0000 (14:31 -0600)] 
lz4: Do not disable LZ4_decompress_safe* for xPL

We should compile the LZ4_decompress_safe and
LZ4_decompress_safe_partial functions in SPL and they will be discarded
if unused.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 months agoiotrace: Finish migrating this to Kconfig
Tom Rini [Wed, 1 Oct 2025 20:30:52 +0000 (14:30 -0600)] 
iotrace: Finish migrating this to Kconfig

When I migrated this to Kconfig in commit 68e54040ccc3 ("sandbox: Move
CONFIG_IO_TRACE to Kconfig") I didn't look hard enough for other
details. As explained in the README, this is valid for ARM too. So start
by making this be a prompted question and CMD_IOTRACE depend on IO_TRACE
being enabled.  Next, migrate the information out of README and in to
the appropriate help text for existing options in Kconfig. Finally, make
this option be default y on SANDBOX but not selected as it's valid to
build without it.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 months agosandbox: Rework readX/writeX macros to be more like ARM
Tom Rini [Wed, 1 Oct 2025 20:30:35 +0000 (14:30 -0600)] 
sandbox: Rework readX/writeX macros to be more like ARM

The way that the current readX/writeX macros are implemented on sandbox
means that when IO_TRACE is not enabled some code will throw up
incorrect warnings due to how sandbox_{read,write} is implemented. We
instead need to do the "uX __v; __v = sandbox..(..v); __v;" trick that
ARM does.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 months agoarm: v7m: Allow SYS_ARCH_TIMER here
Tom Rini [Wed, 13 Aug 2025 20:55:10 +0000 (14:55 -0600)] 
arm: v7m: Allow SYS_ARCH_TIMER here

We have had an implementation of the generic timer found in many v7m
chips since 2017, but as part of the Kconfig migration forgot to allow
it as it wasn't being used at the time. Allow it to be built.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 months agoMerge patch series "mkimage: fit: various fixes in fit_{import,extract}_data"
Tom Rini [Fri, 10 Oct 2025 19:28:42 +0000 (13:28 -0600)] 
Merge patch series "mkimage: fit: various fixes in fit_{import,extract}_data"

Quentin Schulz <foss+uboot@0leil.net> says:

I had to hunt down a difference between the FIT after running mkimage
once and after running it twice. The use-case is typically U-Boot
generating an unsigned FIT and then calling mkimage manually to sign it
outside any build system.

The issue can be reproduced with the following

make CROSS_COMPILE=aarch64-linux-gnu- BUILD_TAG= SOURCE_DATE_EPOCH=0 O=build/ringneck ringneck-px30_defconfig
make CROSS_COMPILE=aarch64-linux-gnu- BUILD_TAG= SOURCE_DATE_EPOCH=0 O=build/ringneck -j`nproc`
cd build/ringneck
cp ./simple-bin.fit.itb ./simple-bin.foo.fit
cp ./simple-bin.fit.itb ./simple-bin.foo2.fit
BUILD_TAG= SOURCE_DATE_EPOCH=0 ./tools/mkimage -E -t -B 200 -F ./simple-bin.foo.fit
BUILD_TAG= SOURCE_DATE_EPOCH=0 ./tools/mkimage -E -t -B 200 -F ./simple-bin.foo2.fit
BUILD_TAG= SOURCE_DATE_EPOCH=0 ./tools/mkimage -E -t -B 200 -F ./simple-bin.foo2.fit

then compare the output of

dtc -I dtb -O dts simple-bin.foo.fit
dtc -I dtb -O dts simple-bin.foo2.fit

data-size and data-offset properties are swapped.

While going through the code, I identified a few theoretical issues
possibly triggered by not checking the return code of fdt_setprop so
those are added. Not tested outside of building.

Link: https://lore.kernel.org/r/20250923-mkimage-2-runs-data-size-v1-0-ef3fa57e9645@cherry.de
6 months agomkimage: fit: erase data-size property when importing data
Quentin Schulz [Tue, 23 Sep 2025 10:27:22 +0000 (12:27 +0200)] 
mkimage: fit: erase data-size property when importing data

When importing data, the data-offset property is removed and the data
content is imported inside the data property of the node.

When mkimage is run twice on the same FIT, data-size property is already
set in the second run, from the first run (via the fit_export_data
function). If we don't remove the data-size property, nothing guarantees
it matches the actual size of data within the data property. To avoid
possible mistakes when handling the data property, let's simply remove
the data-size property as well.

This also fixes an ordering issue of the data-size and data-offset
properties in FIT when comparing the FIT after one run of mkimage and a
second run. This is due to fit_export_data setting data-offset property
first (it doesn't exist so it's added) and then data-size (it doesn't
exist so it's added) for the first run, while it sets data-offset
property first (removed in fit_import_data, so it doesn't exist so it's
added) and then data-size (it exists already from the first run, so it's
simply modified) for the second run.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
6 months agomkimage: fit: do not ignore fdt_setprop return code
Quentin Schulz [Tue, 23 Sep 2025 10:27:21 +0000 (12:27 +0200)] 
mkimage: fit: do not ignore fdt_setprop return code

All explicit calls to fdt_setprop* in tools/ are checked except those
three. Let's add a check for the return code of fdt_setprop_u32() calls.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
6 months agomkimage: fit: do not overwrite fdt_setprop return value
Quentin Schulz [Tue, 23 Sep 2025 10:27:20 +0000 (12:27 +0200)] 
mkimage: fit: do not overwrite fdt_setprop return value

The return code of fdt_setprop is overwritten by the one from
fdt_delprop meaning we could very well have an issue when setting the
property that would be ignored if the deletion of the property that
comes right after passes.

Let's add a separate check for each.

Fixes: 4860ee9b09e0 ("mkimage: allow internalization of data-position")
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
6 months agoMerge patch series "configs: toradex: enable USB Gadget OS Descriptors"
Tom Rini [Fri, 10 Oct 2025 17:05:03 +0000 (11:05 -0600)] 
Merge patch series "configs: toradex: enable USB Gadget OS Descriptors"

Emanuele Ghidoli <emanuele.ghidoli@toradex.com> says:

USB OS Descriptors are used to install and configure the device without
requiring any user interaction on OS which support them (e.g. Windows).
Enable them in order to improve the user experience when fastboot is used.

Link: https://lore.kernel.org/r/20251001132111.1490516-1-ghidoliemanuele@gmail.com
6 months agoMerge patch series "configs: verdin-am*: enable USB Gadget OS Descriptors"
Tom Rini [Fri, 10 Oct 2025 17:03:58 +0000 (11:03 -0600)] 
Merge patch series "configs: verdin-am*: enable USB Gadget OS Descriptors"

Emanuele Ghidoli <ghidoliemanuele@gmail.com> says:

From: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>

USB OS Descriptors are used to install and configure the device without
requiring any user interaction on OS which support them (e.g. Windows).
Enable them in order to improve the user experience when fastboot is used.

Toradex Easy Installer takes advantage of USB OS Descriptors to load
itself via USB recovery.

Link: https://lore.kernel.org/r/20251001131839.1488633-1-ghidoliemanuele@gmail.com
6 months agoconfigs: toradex-smarc-imx8mp: enable USB Gadget OS Descriptors for fastboot
Emanuele Ghidoli [Wed, 1 Oct 2025 13:21:07 +0000 (15:21 +0200)] 
configs: toradex-smarc-imx8mp: enable USB Gadget OS Descriptors for fastboot

USB OS Descriptors are used to install and configure the device without
requiring any user interaction on OS which support them (e.g. Windows).
Enable them in order to improve the user experience when fastboot is used.

Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
6 months agoMerge patch series "am65-cpsw-nuss phy_interface_t fixup for fixed TX delay"
Tom Rini [Fri, 10 Oct 2025 17:02:36 +0000 (11:02 -0600)] 
Merge patch series "am65-cpsw-nuss phy_interface_t fixup for fixed TX delay"

Matthias Schiffer <matthias.schiffer@ew.tq-group.com> says:

Following a discussion on the LKML [1], there has been a clarification
of the correct use of the rgmii(/-rxid/-txid/-it) phy-modes [2] - namely,
that they don't describe the interface at the MAC or PHY boundary, but
whether the PCB traces add delays or not (where it is
implementation-defined whether the delays are added on the MAC or PHY
side in the latter case).

Accordingly, a fixup has been implemented in the am65-cpsw-nuss driver
to make it follow the clarified rules [3]; apply the same change to
U-Boot. Backwards compatibility is preserved: using an old DTB with
the wrong phy-mode only results in a warning message, but keeps the
Ethernet working. With a new DTB from Linux 6.17+ that sets the mode to
rgmii-id, these changes are necessary to avoid using an unsupported/
reserved configuration. See the commit message of patch 2/2 for some
additional detail.

[1] https://lore.kernel.org/lkml/d25b1447-c28b-4998-b238-92672434dc28@lunn.ch/
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=c360eb0c3ccb95306704fd221442283ee82f1f58
[3] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ca13b249f291f4920466638d1adbfb3f9c8db6e9

Link: https://lore.kernel.org/r/cover.1759218200.git.matthias.schiffer@ew.tq-group.com
6 months agoconfigs: verdin-am62p: enable USB Gadget OS Descriptors for fastboot
Emanuele Ghidoli [Wed, 1 Oct 2025 13:18:35 +0000 (15:18 +0200)] 
configs: verdin-am62p: enable USB Gadget OS Descriptors for fastboot

USB OS Descriptors are used to install and configure the device without
requiring any user interaction on OS which support them (e.g. Windows).
Enable them in order to improve the user experience when fastboot is used.

Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
6 months agoconfigs: verdin-imx8m[mp]: enable USB Gadget OS Descriptors for fastboot
Emanuele Ghidoli [Wed, 1 Oct 2025 13:21:06 +0000 (15:21 +0200)] 
configs: verdin-imx8m[mp]: enable USB Gadget OS Descriptors for fastboot

USB OS Descriptors are used to install and configure the device without
requiring any user interaction on OS which support them (e.g. Windows).
Enable them in order to improve the user experience when fastboot is used.

Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
6 months agonet: ethernet: ti: am65-cpsw: fix up PHY mode for fixed RGMII TX delay
Matthias Schiffer [Tue, 30 Sep 2025 08:05:11 +0000 (10:05 +0200)] 
net: ethernet: ti: am65-cpsw: fix up PHY mode for fixed RGMII TX delay

The am65-cpsw driver currently sets the SEL_RGMII_IDMODE flag in a MAC's
mode register to enable or disable the TX delay. While this was supported
for earlier generations of the CPSW controller, the datasheets of all
modern TI SoCs using the am65-cpsw MAC state that the TX delay is fixed,
and the SEL_RGMII_IDMODE bit is documented as reserved in most of them.
Furthermore, while it was found that this bit does in fact disable the TX
delay, [1] states that this setting is truly unsupported by TI and not
just undocumented.

Following the clarification of the rgmii* phy-mode values in the Linux
DT bindings in [2], the Linux am65-cpsw driver was changed in [3] to
account for the fixed TX delay by fixing up the mode passed to the PHY
driver; a similar fixup already existed in the TI icssg-prueth driver.
[4] followed up on this by explicitly clearing the SEL_RGMII_IDMODE flag
to handle the case where it is set by the bootloader or other firmware
before Linux.

With the above changes, Device Trees that set the recommended "rgmii-id"
mode are now appearing in Linux 6.17+. Avoid setting the unsupported
SEL_RGMII_IDMODE flag for such Device Trees, and instead fix up the PHY
interface mode, thus aligning the U-Boot driver with the Linux kernel.

[1] https://www.spinics.net/lists/netdev/msg1112647.html
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=c360eb0c3ccb95306704fd221442283ee82f1f58
[3] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ca13b249f291f4920466638d1adbfb3f9c8db6e9
[4] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a22d3b0d49d411e64ed07e30c2095035ecb30ed2

Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com>
6 months agoconfigs: verdin-am62: enable USB Gadget OS Descriptors for fastboot
Emanuele Ghidoli [Wed, 1 Oct 2025 13:18:34 +0000 (15:18 +0200)] 
configs: verdin-am62: enable USB Gadget OS Descriptors for fastboot

USB OS Descriptors are used to install and configure the device without
requiring any user interaction on OS which support them (e.g. Windows).
Enable them in order to improve the user experience when fastboot is used.

Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
6 months agoconfigs: colibri-*: enable USB Gadget OS Descriptors for fastboot
Emanuele Ghidoli [Wed, 1 Oct 2025 13:21:05 +0000 (15:21 +0200)] 
configs: colibri-*: enable USB Gadget OS Descriptors for fastboot

USB OS Descriptors are used to install and configure the device without
requiring any user interaction on OS which support them (e.g. Windows).
Enable them in order to improve the user experience when fastboot is used.

Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
6 months agonet: mdio-uclass: introduce dm_eth_phy_connect_interface()
Matthias Schiffer [Tue, 30 Sep 2025 08:05:10 +0000 (10:05 +0200)] 
net: mdio-uclass: introduce dm_eth_phy_connect_interface()

dm_eth_phy_connect_interface() is a variant of dm_eth_phy_connect() that
allows to set the used PHY mode, in case the MAC driver needs to fix it
up. The previously static dm_eth_connect_phy_handle() is renamed and
extended for this purpose.

Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com>
6 months agoconfigs: apalis-imx6: enable USB Gadget OS Descriptors for fastboot
Emanuele Ghidoli [Wed, 1 Oct 2025 13:21:04 +0000 (15:21 +0200)] 
configs: apalis-imx6: enable USB Gadget OS Descriptors for fastboot

USB OS Descriptors are used to install and configure the device without
requiring any user interaction on OS which support them (e.g. Windows).
Enable them in order to improve the user experience when fastboot is used.

Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
6 months agospl: spl_sata: Add __maybe_unused decorator
Tom Rini [Wed, 1 Oct 2025 20:30:55 +0000 (14:30 -0600)] 
spl: spl_sata: Add __maybe_unused decorator

It is possible that we will not have enabled the options to call
spl_sata_load_image_raw so use the __maybe_unused decorator to silence
the compiler warning.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 months agodts: Set a default value for DEFAULT_DEVICE_TREE for SANDBOX
Tom Rini [Wed, 1 Oct 2025 20:30:32 +0000 (14:30 -0600)] 
dts: Set a default value for DEFAULT_DEVICE_TREE for SANDBOX

As part of building with "allyesconfig" we need to have the correct
default value for the sandbox architecture provided here.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 months agotimer: Tighten dependencies on MCHP_PIT64B_TIMER
Tom Rini [Wed, 1 Oct 2025 20:30:37 +0000 (14:30 -0600)] 
timer: Tighten dependencies on MCHP_PIT64B_TIMER

The MCHP_PIT64B_TIMER driver is not safe to compile on 64bit platforms
such as allyesconfig on a 64bit host. Tighten the dependencies here to
the platforms which use it today.

Acked-by: Eugen Hristev <eugen.hristev@linaro.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
6 months agogpio: Remove FTGPIO0010 driver
Tom Rini [Wed, 1 Oct 2025 20:30:29 +0000 (14:30 -0600)] 
gpio: Remove FTGPIO0010 driver

This driver has never been enabled and currently has build problems
related in part to incorrect out_le32 calls. Remove it.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 months agoinclude: completion.h: Convert the rest of the dummy functions to macros
Tom Rini [Fri, 26 Sep 2025 15:31:28 +0000 (09:31 -0600)] 
include: completion.h: Convert the rest of the dummy functions to macros

While we declare some of our dummy functions as "inline" we do not also
declare them as "static" and so it is possible for the compiler to
decide to make these as global functions instead. This can lead to link
time failures in some cases, such as "allyesconfig". As these are just
dummy functions, convert them to a macro instead.

Signed-off-by: Tom Rini <trini@konsulko.com>
6 months agoconfigs: j7200_evm_a72_defconfig: Enable DP83867 Ethernet PHY
Siddharth Vadapalli [Tue, 9 Sep 2025 04:48:15 +0000 (10:18 +0530)] 
configs: j7200_evm_a72_defconfig: Enable DP83867 Ethernet PHY

The MCU Ethernet Interface on J7200-EVM uses the DP83867 Ethernet PHY as
described in the section '4.9 MCU Ethernet Interface' of the J7200-EVM
User-Guide [0]. Since the config corresponding to the DP83867 PHY has not
been enabled, the Generic PHY driver is used. As a result, the RGMII delays
do not take effect leading to packet losses.

Fix this by enabling the config for the DP83867 Ethernet PHY.

[0]: https://www.ti.com/lit/ug/spruiw7a/spruiw7a.pdf

Fixes: f8c1e893c82f ("configs: j7200_evm_a72: Add Initial support")
Signed-off-by: Siddharth Vadapalli <s-vadapalli@ti.com>
6 months agoMerge branch 'uboot-05102025' of https://source.denx.de/u-boot/custodians/u-boot...
Tom Rini [Fri, 10 Oct 2025 14:24:45 +0000 (08:24 -0600)] 
Merge branch 'uboot-05102025' of https://source.denx.de/u-boot/custodians/u-boot-nand-flash

This series adds significant and valuable work by Mikhail Kshevetskiy to
align spi-mem with Linux 6.16. It also includes contributions to the mtd
performance patches, a work started by Miquel Raynal and improved by
Mikhail Kshevetskiy. Additionally, two patches tighten dependencies on
the Atmel driver.

The patches pass the pipeline CI:
https://source.denx.de/u-boot/custodians/u-boot-nand-flash/-/pipelines/27873

6 months agoMerge tag 'fsl-qoriq-master-2025-10-10' of https://source.denx.de/u-boot/custodians...
Tom Rini [Fri, 10 Oct 2025 14:23:04 +0000 (08:23 -0600)] 
Merge tag 'fsl-qoriq-master-2025-10-10' 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/27882

- crypto/rng: double the entropy delay interval for retry
- Make RAMBOOT_PBL only be valid for PowerPC or ls1021AI

6 months agoMerge tag 'mmc-power-master-2025-10-10' of https://source.denx.de/u-boot/custodians...
Tom Rini [Fri, 10 Oct 2025 14:21:50 +0000 (08:21 -0600)] 
Merge tag 'mmc-power-master-2025-10-10' of https://source.denx.de/u-boot/custodians/u-boot-mmc

CI: https://source.denx.de/u-boot/custodians/u-boot-mmc/-/pipelines/27881

- Use dev_read_u32() for sdhciA-cadence6
- Misc compilation/Kconfig fix

6 months agoNXP: Make RAMBOOT_PBL only be valid for PowerPC or ls1021A
Tom Rini [Thu, 25 Sep 2025 20:51:26 +0000 (14:51 -0600)] 
NXP: Make RAMBOOT_PBL only be valid for PowerPC or ls1021A

Only PowerPC and LS1021A platforms can make use of RAMBOOT_PBL. Add the
dependencies to the symbol.

Signed-off-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 months agocrypto/rng: double the entropy delay interval for retry
Gaurav Jain [Fri, 5 Sep 2025 09:33:48 +0000 (15:03 +0530)] 
crypto/rng: double the entropy delay interval for retry

During entropy evaluation, if the generated samples fail any statistical test,
then, all of the bits will be discarded, and a second set of samples will be
generated and tested.

Double the ent_delay to give more chance to pass before performing retry.

Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 months agommc: cv1800b_sdhci: Fix possible warning with MMC_SUPPORTS_TUNING=n
Tom Rini [Fri, 3 Oct 2025 20:39:25 +0000 (14:39 -0600)] 
mmc: cv1800b_sdhci: Fix possible warning with MMC_SUPPORTS_TUNING=n

The function cv1800b_set_tap_delay is only called by
cv1800b_execute_tuning. The latter is where we currently have the #if
guard around MMC_SUPPORTS_TUNING, and so with the option disabled we
have an unused function warning. Move the guard to cover both functions.

Signed-off-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 months agopower: regulator: Correct dependencies on SPL_REGULATOR_PWM
Tom Rini [Fri, 3 Oct 2025 20:39:24 +0000 (14:39 -0600)] 
power: regulator: Correct dependencies on SPL_REGULATOR_PWM

In order to enable and build with SPL_REGULATOR_PWM we need to have both
SPL_DM_REGULATOR and SPL_DM_PWM enabled. Build-wise, we can have SPL
have PWM regulator support without enabling it in U-Boot itself so drop
that dependency.

Signed-off-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 months agommc: Fix a potential warning in xPL
Tom Rini [Wed, 1 Oct 2025 20:30:41 +0000 (14:30 -0600)] 
mmc: Fix a potential warning in xPL

When xPL_MMC_WRITE is set but also xPL_MMC_TINY is set, the function
sd_read_ssr may be unused. Guard it appropriately.

Signed-off-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 months agommc: sdhci-cadence6: Use dev_read_u32() for device tree property parsing
Tanmay Kathpalia [Tue, 7 Oct 2025 19:06:38 +0000 (12:06 -0700)] 
mmc: sdhci-cadence6: Use dev_read_u32() for device tree property parsing

Convert device tree property parsing to use dev_read_u32(), which
handles endianness and simplifies the code.

Signed-off-by: Tanmay Kathpalia <tanmay.kathpalia@altera.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 months agoMerge patch series "firmware: scmi: various update"
Tom Rini [Thu, 9 Oct 2025 20:30:02 +0000 (14:30 -0600)] 
Merge patch series "firmware: scmi: various update"

Peng Fan (OSS) <peng.fan@oss.nxp.com> says:

Misc update on firmware scmi:
 - Typo fix
 - Use io helpers
 - Use PAGE_SIZE for arm64
 - Add IN_USE error code
 - Add more error info
 - Support scmi max rx timeout in mailbox
 - Add myself as scmi maintainer, AKASHI contributed most code, but
   seems he is not invovled in the developement anymore, I volunteer to
   help here.

Some items on list that I am thinking to add:
- align with linux kernel to use cpu_to_le32 and le32_to_cpu, but have not find
  a good way to use the helpers.
- Add SCMI version negotiation as Linux Kernel

Link: https://lore.kernel.org/r/20250927-scmi-v1-0-5e9354fb3bff@nxp.com
6 months agoMAINTAINERS: Add an entry for SCMI
Peng Fan [Fri, 26 Sep 2025 16:06:23 +0000 (00:06 +0800)] 
MAINTAINERS: Add an entry for SCMI

Add an entry for SCMI and add myself as maintainer

Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 months agocmd: scmi: Add pin control protocol name
Peng Fan [Fri, 26 Sep 2025 16:06:22 +0000 (00:06 +0800)] 
cmd: scmi: Add pin control protocol name

Pin control protocol name was not added into 'protocol_name' array,
however Pin control was supported on i.MX95. So add it.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 months agoclk: scmi: Replace log_debug with dev_dbg
Peng Fan [Fri, 26 Sep 2025 16:06:21 +0000 (00:06 +0800)] 
clk: scmi: Replace log_debug with dev_dbg

Use dev_dbg to dump device name, dev_dbg also a encapsulation call
to log() and print(). So it is ok to use dev_dbg.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 months agofirmware: scmi: mailbox: Support arm,max_rx_timeout_ms
Peng Fan [Fri, 26 Sep 2025 16:06:20 +0000 (00:06 +0800)] 
firmware: scmi: mailbox: Support arm,max_rx_timeout_ms

Per devicetree bindings:
arm,max-rx-timeout-ms indicates an optional time value, expressed in
milliseconds, representing the transport maximum timeout value for the
receive channel. The value should be a non-zero value if set.

Support this property if platform set it to a non-default value. This
property is a per SCMI property, so all channels share same value.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
6 months agofirmware: scmi: mailbox: Update timeout to 30ms
Peng Fan [Fri, 26 Sep 2025 16:06:19 +0000 (00:06 +0800)] 
firmware: scmi: mailbox: Update timeout to 30ms

Following Linux Kernel drivers/firmware/arm_scmi/transports/mailbox.c to
set the default timeout to 30ms.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 months agofirmware: scmi: use PAGE_SIZE alignment for ARM64
Peng Fan [Fri, 26 Sep 2025 16:06:18 +0000 (00:06 +0800)] 
firmware: scmi: use PAGE_SIZE alignment for ARM64

For ARMv7, the alignment could be SECTION size. But for ARM64, use
PAGE_SIZE.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 months agofirmware: scmi: Add error code IN_USE
Peng Fan [Fri, 26 Sep 2025 16:06:17 +0000 (00:06 +0800)] 
firmware: scmi: Add error code IN_USE

In SCMI spec 3.2, there is an update:
Add IN_USE error code for usage with Pin control protocol

So add the error decoding for IN_USE.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 months agofirmware: scmi: smt: Dump more info
Peng Fan [Fri, 26 Sep 2025 16:06:16 +0000 (00:06 +0800)] 
firmware: scmi: smt: Dump more info

"Buffer too small" is too vague, dump more info to make it easier to
debug issues.
Change dev_dbg to dev_err when buffer is too small.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 months agofirmware: scmi: smt: Use io helpers
Peng Fan [Fri, 26 Sep 2025 16:06:15 +0000 (00:06 +0800)] 
firmware: scmi: smt: Use io helpers

It is not good practice to directly use "hdr->x" to read/write the hdr,
because the SCMI buffer may not mapped as normal memory. Following Linux
Kernel, using ioread32/iowrite32/memcpy_[from,to]io for smt header read,
write.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 months agofirmware: scmi: Typo fix
Peng Fan [Fri, 26 Sep 2025 16:06:14 +0000 (00:06 +0800)] 
firmware: scmi: Typo fix

Typo: 'to' -> 'too'

Signed-off-by: Peng Fan <peng.fan@nxp.com>
6 months agoMerge patch series "fw_loader: Split from fs_loader into separate library file"
Tom Rini [Thu, 9 Oct 2025 19:50:59 +0000 (13:50 -0600)] 
Merge patch series "fw_loader: Split from fs_loader into separate library file"

This series from Marek Vasut <marek.vasut+renesas@mailbox.org> splits
the fw_loader "script" code out from the fs_loader code as the former
does not require the latter.

Link: https://lore.kernel.org/r/20250922114926.51984-1-marek.vasut+renesas@mailbox.org
6 months agofw_loader: Prefix the FW loader variables with the script prefix
Marek Vasut [Mon, 22 Sep 2025 11:48:28 +0000 (13:48 +0200)] 
fw_loader: Prefix the FW loader variables with the script prefix

Add the script name as a prefix to fw_addr and fw_size variables
to make sure they are always unique and won't easily conflict with
user variables.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
6 months agofw_loader: Split from fs_loader into separate library file
Marek Vasut [Mon, 22 Sep 2025 11:48:27 +0000 (13:48 +0200)] 
fw_loader: Split from fs_loader into separate library file

The script based firmware loader does not use anything from the
fs_loader implementation. Separate it into its own library source
file and convert the mediatek PHY to use this separate code. This
should reduce the amount of code that is pulled in alongside the
firmware loader, as the FS loader is no longer included.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
6 months agoMerge tag 'u-boot-imx-master-20251009' of https://gitlab.denx.de/u-boot/custodians...
Tom Rini [Thu, 9 Oct 2025 19:47:28 +0000 (13:47 -0600)] 
Merge tag 'u-boot-imx-master-20251009' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx

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

- Several improvements for kontron-sl-mx8mm.
- Add rauc to bootmeths to phycore_imx8mp.
- Fix imx93_frdm USB vendor ID.

6 months agonand: atmel: Rework ATMEL_EBI and DM_NAND_ATMEL interaction
Tom Rini [Fri, 26 Sep 2025 15:31:36 +0000 (09:31 -0600)] 
nand: atmel: Rework ATMEL_EBI and DM_NAND_ATMEL interaction

The way that the NAND driver under DM_NAND_ATMEL is probed is by the
dummy memory driver controlled by ATMEL_EBI. Rather than require that
for NAND to work both be enabled, make NAND select ATMEL_EBI and do not
prompt for ATMEL_EBI as it only triggers the probe for NAND.

Signed-off-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
6 months agomtd: Tighten some mtd driver dependencies
Tom Rini [Fri, 11 Jul 2025 15:16:04 +0000 (09:16 -0600)] 
mtd: Tighten some mtd driver dependencies

A large number of mtd drivers cannot build without access to some
platform specific header files. Express those requirements in Kconfig as
well.

Signed-off-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
6 months agoarm: dts: imx8mp-toradex-smarc: migrate to OF_UPSTREAM
Ernest Van Hoecke [Thu, 9 Oct 2025 16:29:18 +0000 (18:29 +0200)] 
arm: dts: imx8mp-toradex-smarc: migrate to OF_UPSTREAM

Enable CONFIG_OF_UPSTREAM to receive automatic device tree updates for
the Toradex SMARC iMX8MP.

Remove the now obsolete device tree files:
- imx8mp-toradex-smarc-dev.dts
- imx8mp-toradex-smarc.dtsi

Signed-off-by: Ernest Van Hoecke <ernest.vanhoecke@toradex.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
6 months agoMerge tag 'ubi-for-2026.01-rc1' of https://source.denx.de/u-boot/custodians/u-boot-ubi
Tom Rini [Thu, 9 Oct 2025 15:54:18 +0000 (09:54 -0600)] 
Merge tag 'ubi-for-2026.01-rc1' of https://source.denx.de/u-boot/custodians/u-boot-ubi

UBI updates for 2025.10

- ubi fixes found by Andrew with Smatch
  - mtd: ubi: Remove test that always fails
  - fs: ubifs: Ensure buf is freed before return
  - fs: ubifs: Need to check return for being an error pointer
  -fs: ubifs: Fix and rework error handling in ubifs_finddir

- fix: limit copy size in ubispl found by Benedikt

- extend support for LED activity (use the LED activity also on ubi reads)
  from Yegor

6 months agoimx93_frdm: Fix USB vendor ID
Mathieu Dubois-Briand [Wed, 8 Oct 2025 09:08:16 +0000 (11:08 +0200)] 
imx93_frdm: Fix USB vendor ID

NXP manufacturing tools expect the device to have the NXP 0x1fc9 vendor
ID instead of 0x0525. This is the value already used by other i.MX8 and
i.MX9 boards.

Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
6 months agoxilinx: Enable SNTP/DATE commands and RTC
Michal Simek [Thu, 2 Oct 2025 08:19:39 +0000 (10:19 +0200)] 
xilinx: Enable SNTP/DATE commands and RTC

Enable SNTP/DATE commands on all Xilinx boards.
Also enable RTC_EMULATION driver for platforms which don't have physical
RTC. Enabling DM_RTC is enabling by default also CMD_DATE.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/2605b1618a311efe4f35442c34e7cec973060630.1759393175.git.michal.simek@amd.com
6 months agoxilinx: mbv: Remove redundancy in MB-V defconfigs
Padmarao Begari [Thu, 2 Oct 2025 08:19:38 +0000 (10:19 +0200)] 
xilinx: mbv: Remove redundancy in MB-V defconfigs

Removes redundant configuration options from MB-V platform defconfigs
targeting both modes. Common settings are now placed in
xilinx_mbv32_defconfig, which is included via the #include <configs/...>.
This approach centralizes configuration management, reduces duplication,
and makes future maintenance easier.

Signed-off-by: Padmarao Begari <padmarao.begari@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/585f96d85b656803bd382ac25425d68998f24ed5.1759393175.git.michal.simek@amd.com
6 months agovideo: zynqmp: Prevent use of uninitialised variables
Andrew Goodbody [Wed, 1 Oct 2025 16:36:43 +0000 (17:36 +0100)] 
video: zynqmp: Prevent use of uninitialised variables

The variables 'offset_matrix' and 'csc_matrix' will be used
uninitialised if video->is_rgb is false. Correct the logic so the
attempt to use uninitialised variables is not made. Also remove the use
of these variables as they seem to serve no useful purpose just being
aliases for arrays.

This issue was found by Smatch.

Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
Link: https://lore.kernel.org/r/20251001-video_zynqmp-v1-1-34f1e59b9c34@linaro.org
Signed-off-by: Michal Simek <michal.simek@amd.com>
6 months agoxilinx: Replace PHY_VITESSE by PHY_MSCC
Michal Simek [Tue, 30 Sep 2025 07:09:26 +0000 (09:09 +0200)] 
xilinx: Replace PHY_VITESSE by PHY_MSCC

Enable MSCC phy driver instead of VITESSE. Vitesse driver is much older and
is on the way out that's why switch to MSCC driver which covers VSC8531
which is used on one Versal board.

Reviewed-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/0a441e488a29bd1c93677a6f63a4a04a3cc1c9f5.1759216164.git.michal.simek@amd.com
6 months agotimer: Tighten CADENCE_TTC_TIMER dependencies
Tom Rini [Fri, 26 Sep 2025 15:31:46 +0000 (09:31 -0600)] 
timer: Tighten CADENCE_TTC_TIMER dependencies

This driver implements timer_get_boot_us() which is global namespace and
can conflict with other implementations of the function for example in
"allyesconfig". Start by limiting this driver to platforms which use it.

Signed-off-by: Tom Rini <trini@konsulko.com>
Link: https://lore.kernel.org/r/20250926153146.3680952-1-trini@konsulko.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
6 months agoarm64: zynqmp: Fix DTOVL warning about graphs in kv/kr260
Michal Simek [Mon, 22 Sep 2025 08:28:15 +0000 (10:28 +0200)] 
arm64: zynqmp: Fix DTOVL warning about graphs in kv/kr260

DTC is generating warnings about missing port like:
DTOVL   arch/arm/dts/zynqmp-smk-k24-revA-sck-kv-g-revB.dtb
 arch/arm/dts/zynqmp-sck-kv-g-revA.dtbo: Warning (graph_port):
 /fragment@5/__overlay__: graph port node name should be 'port'
...

That's why change description and add it directly to dpsub mode to contain
full description with also port.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/576630cc9696e21bef15bd1f0ca35e396adc4eca.1758529693.git.michal.simek@amd.com
6 months agoboard: xilinx: update guid based on metadata
Padmarao Begari [Fri, 12 Sep 2025 10:05:39 +0000 (15:35 +0530)] 
board: xilinx: update guid based on metadata

The generated GUID applies to all Xilinx platforms but is not
specific to any individual board. For FWU multi bank update,
use the image UUID (GUID) from the FWU metadata structure
rather than embedding a generated GUID into the U-Boot build.

Signed-off-by: Padmarao Begari <padmarao.begari@amd.com>
Link: https://lore.kernel.org/r/20250912100539.4127378-3-padmarao.begari@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
6 months agoFWU: Add platform hook support for fwu metata
Padmarao Begari [Fri, 12 Sep 2025 10:05:38 +0000 (15:35 +0530)] 
FWU: Add platform hook support for fwu metata

FWU metadata information is unavailable for platform-specific
operations since FWU initialization has not yet occurred.
The initialization function is invoked as part of the main
loop event. To address this, the FWU platform hook function
is introduced during FWU initialization, allowing metadata
processing with platform-specific operations.

Signed-off-by: Padmarao Begari <padmarao.begari@amd.com>
Link: https://lore.kernel.org/r/20250912100539.4127378-2-padmarao.begari@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
6 months agoarm64: zynqmp: Add pmw_fan label to k26
Michal Simek [Tue, 2 Sep 2025 08:53:34 +0000 (10:53 +0200)] 
arm64: zynqmp: Add pmw_fan label to k26

Some boards/designs with System Controller which are using SOMs need to
change PWM signal polarity that's why create label to be able to reference
them.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/7a392d79685e5b122528e8fe7617475c4f6fabab.1756803198.git.michal.simek@amd.com
6 months agoarm64: zynqmp: Enable DP for kr260, kv260, zcu100, zcu102, zcu104, zcu111
Michal Simek [Tue, 2 Sep 2025 08:53:33 +0000 (10:53 +0200)] 
arm64: zynqmp: Enable DP for kr260, kv260, zcu100, zcu102, zcu104, zcu111

Upstream DP DT binding enforcing dp-connector and port description to
operate properly.

Co-developed-by: Rohit Visavalia <rohit.visavalia@amd.com>
Signed-off-by: Rohit Visavalia <rohit.visavalia@amd.com>
Co-developed-by: Nithish Kumar Naroju <nithishkumar.naroju@amd.com>
Signed-off-by: Nithish Kumar Naroju <nithishkumar.naroju@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/15e863adca11431f68d37d732cd8a453e508ad91.1756803198.git.michal.simek@amd.com
6 months agoarm64: zynqmp: Introduce DP port labels
Michal Simek [Tue, 2 Sep 2025 08:53:32 +0000 (10:53 +0200)] 
arm64: zynqmp: Introduce DP port labels

Describe every port by unique label for easier wiring with DT overlays.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/933151f48f236f64ec9e91b9da4f174460a269e6.1756803198.git.michal.simek@amd.com
6 months agoarm64: zynqmp: Update compatible string for tps546X24
Michal Simek [Tue, 2 Sep 2025 08:53:31 +0000 (10:53 +0200)] 
arm64: zynqmp: Update compatible string for tps546X24

ti,tps546d24 is already described in DT binding and ti,tps546b24 should be
described in the same way that's why update compatible string to match
them.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/a247b2b57ebe52e9d23525bf4f96c4872288025d.1756803198.git.michal.simek@amd.com
6 months agoarm64: zynqmp: Enable PSCI 1.0
Michal Simek [Tue, 2 Sep 2025 08:53:30 +0000 (10:53 +0200)] 
arm64: zynqmp: Enable PSCI 1.0

TF-A is using PSCI 1.0 version for quite a long time but it was never
reflected in DT.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/a3372ee9cce7fade7c9f707727e33d1cf569b607.1756803198.git.michal.simek@amd.com
6 months agoarm64: zynqmp: Fix incomplete comment in zynqmp-sc-vn-p-b2197-00-revA.dtso
Michal Simek [Tue, 2 Sep 2025 08:53:29 +0000 (10:53 +0200)] 
arm64: zynqmp: Fix incomplete comment in zynqmp-sc-vn-p-b2197-00-revA.dtso

Fix comment inside comment by closing the first one properly.

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202501111756.IcKlG6rs-lkp@intel.com/
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/779be02a8f0cfa1deab86dbfe8e575ab152d43f3.1756803198.git.michal.simek@amd.com
6 months agoarm64: zynqmp: Revert usb node drive strength and slew rate for zcu106
Radhey Shyam Pandey [Tue, 2 Sep 2025 08:53:28 +0000 (10:53 +0200)] 
arm64: zynqmp: Revert usb node drive strength and slew rate for zcu106

On a few zcu106 boards USB devices (Dell MS116 USB Optical Mouse, Dell USB
Entry Keyboard) are not enumerated on linux boot due to commit
'b8745e7eb488 ("arm64: zynqmp: Fix usb node drive strength and slew
rate")'.

To fix it as a workaround revert to working version and then investigate
at board level why drive strength from 12mA to 4mA and slew from fast to
slow is not working.

Signed-off-by: Radhey Shyam Pandey <radhey.shyam.pandey@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/14d3408cf547ac188c07c10abb0ddfaac9d915c4.1756803198.git.michal.simek@amd.com
6 months agoarm64: xilinx: Add i2c mux idle disconnect property
Padmarao Begari [Tue, 2 Sep 2025 08:53:27 +0000 (10:53 +0200)] 
arm64: xilinx: Add i2c mux idle disconnect property

Add i2c-mux-idle-disconnect property to an i2c mux node.
It is used to configure an i2c mux to disconnect all
its channels when idle.

Signed-off-by: Padmarao Begari <padmarao.begari@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/d75f31d72cadf6d98c0faa51239bf2b239797d2d.1756803198.git.michal.simek@amd.com
6 months agoarm64: zynqmp: Remove "ti,tps53679" property
Michal Simek [Tue, 2 Sep 2025 08:53:26 +0000 (10:53 +0200)] 
arm64: zynqmp: Remove "ti,tps53679" property

Linux driver has been updated that only ti,tps53681 dt property is needed
and there is no need to provide second compatible string.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/609ee957931242ab6cde93e75eb3bd8afa769f12.1756803198.git.michal.simek@amd.com
6 months agoarm64: zynqmp: Remove RTC calibration from sm-k26
Michal Simek [Tue, 2 Sep 2025 08:53:25 +0000 (10:53 +0200)] 
arm64: zynqmp: Remove RTC calibration from sm-k26

Default calibration is already in zynqmp.dtsi that's why make no sense to
describe it again.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/6331bf84d7afaf8031d9cbb64354fcd8ca343d45.1756803198.git.michal.simek@amd.com
6 months agoarm64: zynqmp: Remove undocumented arasan, has-mdma property
Michal Simek [Tue, 2 Sep 2025 08:53:24 +0000 (10:53 +0200)] 
arm64: zynqmp: Remove undocumented arasan, has-mdma property

Property was used long ago by internal Xilinx Linux driver but it is not
documented in DT binding that's why remove it.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/546788df1a64c41e332463411ad99b1f3b40bc96.1756803198.git.michal.simek@amd.com
6 months agoarm64: zynqmp: Disable coresight by default
Quanyang Wang [Tue, 2 Sep 2025 08:53:23 +0000 (10:53 +0200)] 
arm64: zynqmp: Disable coresight by default

When secure-boot mode of bootloader is enabled, the registers of
coresight are not permitted to access that's why disable it by default.

Signed-off-by: Quanyang Wang <quanyang.wang@windriver.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/1ea8e5bdb9bfdcc1fc6670bf4b4e13c40fbdc00c.1756803198.git.michal.simek@amd.com
6 months agopwm: cadence-ttc: Insufficient elements in array
Andrew Goodbody [Mon, 1 Sep 2025 17:00:12 +0000 (18:00 +0100)] 
pwm: cadence-ttc: Insufficient elements in array

The Cadence TTC has 3 channels that can each be used for PWM functions.
Ensure that the array has sufficient elements to avoid a possible memory
access overrun. Use a macro to keep the array size and limit checks in
sync so adjust checks to work with this.

This issue was found by Smatch.

Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
Link: https://lore.kernel.org/r/20250901-cadence_pwm-v1-1-140b04cd73a9@linaro.org
Signed-off-by: Michal Simek <michal.simek@amd.com>
6 months agodrivers: firmware: update xilinx_pm_request to support max payload
Naman Trivedi [Thu, 28 Aug 2025 13:42:22 +0000 (15:42 +0200)] 
drivers: firmware: update xilinx_pm_request to support max payload

Currently xilinx_pm_request API supports four u32 payloads. However the
legacy SMC format supports five u32 request payloads and extended SMC
format supports six u32 request payloads. Add support for the same in
xilinx_pm_request API. Also add two dummy arguments to all the callers
of xilinx_pm_request.

The TF-A always fills seven u32 return payload so add support
for the same in xilinx_pm_request API.

Signed-off-by: Naman Trivedi <naman.trivedimanojbhai@amd.com>
Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Acked-by: Senthil Nathan Thangaraj <senthilnathan.thangaraj@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/5ae6b560741f3ca8b89059c4ebb87acf75b4718e.1756388537.git.michal.simek@amd.com
6 months agoclk: xilinx: Separate legacy format to own handler
Michal Simek [Thu, 28 Aug 2025 13:42:21 +0000 (15:42 +0200)] 
clk: xilinx: Separate legacy format to own handler

It is a preparation for adding enhacement format support that's why there
is a need to separate current support to own function.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/c4d546553d4f0d69ef75fb1132b7121f36dd306c.1756388537.git.michal.simek@amd.com
6 months agoclk: xilinx: Call generic smc_call_handler()
Michal Simek [Thu, 28 Aug 2025 13:42:20 +0000 (15:42 +0200)] 
clk: xilinx: Call generic smc_call_handler()

There is no reason to call SMC from clock driver directly when clock driver
is a child of firmware driver which is providing it.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/d383d5fea680b33d2eddbca108c452cee97e98ea.1756388537.git.michal.simek@amd.com
6 months agodrivers: net: Add versal2 10GBE device support
Venkatesh Yadav Abbarapu [Thu, 28 Aug 2025 04:58:07 +0000 (10:28 +0530)] 
drivers: net: Add versal2 10GBE device support

Add 10GBE high-speed Mac support, it supports 10G, 5G, 2.5G and 1G speeds.
10GBE high speed Mac is an extension of the current 1G Mac in versal,
inheriting all its current features.

MMI 10GBE ip has two internal PCS's.
1)10GBASER PCS is used for higher speeds 10G and 5G.
2)1000BASEX PCS is used for slower speeds 1G and 2.5G.

Both PCS's speed and rate configuration is done with same
usx registers. ENABLE_HS_MAC bit in NCR is the toggle switch
between the PCS's.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://lore.kernel.org/r/20250828045807.426542-1-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
6 months agoscripts/checkpatch.pl: Resync with v6.17
Kory Maincent [Mon, 29 Sep 2025 17:24:32 +0000 (19:24 +0200)] 
scripts/checkpatch.pl: Resync with v6.17

This resyncs us with the version found in v6.17 of the Linux kernel with
the following exceptions:
- Keep our u-boot specific tests / code area.
- Keep the location of our checkpatch.rst
- Change the "use strscpy" test as we don't have that to strlcpy
- Keep debug/printf in the list for $logFunctions
- Keep checks to "env" files
- Keep our tests for strncpy/strncat

This also syncs the spdxcheck.py tool and all the associated
documentation.

Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
[trini: Keep our strlcpy/cat check]
Signed-off-by: Tom Rini <trini@konsulko.com>
6 months agow1-eeprom: Make use of static keyword in drivers
Tom Rini [Fri, 26 Sep 2025 15:31:48 +0000 (09:31 -0600)] 
w1-eeprom: Make use of static keyword in drivers

Both the ds24xxx and ds2502 have a family_supported array which is local
to the driver but was not marked as static. Mark this as static as both
best practice and to allow both to be built in "allyesconfig" for
example.

Reviewed-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
6 months agotimer: Tighten CADENCE_TTC_TIMER dependencies
Tom Rini [Fri, 26 Sep 2025 15:31:46 +0000 (09:31 -0600)] 
timer: Tighten CADENCE_TTC_TIMER dependencies

This driver implements timer_get_boot_us() which is global namespace and
can conflict with other implementations of the function for example in
"allyesconfig". Start by limiting this driver to platforms which use it.

Signed-off-by: Tom Rini <trini@konsulko.com>