summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-07-10net: sh_eth: Convert cache operations to static functionsMarek Vasut
Turn the current cache operation macros into static functions to improve compiler coverage checking. This does change the driver behavior slightly, the driver now expects those cache operation functions to be available on all architectures on which it is used. This should pose no problem, as the driver is only used on 32bit and 64bit ARM, which both have those operations. The CFG_SH_ETHER_ALIGNE_SIZE is converted to SH_ETHER_ALIGN_SIZE and defined as either 64 on ARM or 16 on SH. Signed-off-by: Marek Vasut <[email protected]>
2025-07-10net: sh_eth: arm: renesas: README: Drop CFG_SH_ETHER_USE_PORTMarek Vasut
The CFG_SH_ETHER_USE_PORT configuration option is a remnant from before U-Boot DM existed and SH Ethernet made full use of it, and is no longer used, remove it. Signed-off-by: Marek Vasut <[email protected]>
2025-07-10net: sh_eth: Pass struct port_info aroundMarek Vasut
The struct sh_eth_dev .port member is always set to 0, therefore only single-ported SH Ethernet is ever used. Support for multiple SH Ethernet ports implemented on driver level is a remnant from before U-Boot DM existed. Pass struct sh_eth_info port_info around directly and remove the struct sh_eth_dev entirely. Handling of multiple ports should be done by U-Boot DM and multiple per-driver-instance private data. No functional change intended. Signed-off-by: Marek Vasut <[email protected]>
2025-07-10arm64: renesas: Add Renesas R-Car Gen4 SCIF/HSCIF loader SREC generationMarek Vasut
Add Renesas R-Car Gen4 SCIF/HSCIF loader compatible SREC generation. This is a regular U-Boot SPL SREC augmented with a short header which describes where to store the received data and how much data to store. This header is interpreted by the R-Car Gen4 BootROM SCIF/HSCIF loader. Signed-off-by: Marek Vasut <[email protected]>
2025-07-10arm64: renesas: Convert SCIF SREC from u-boot-spl.binMarek Vasut
Convert u-boot-spl.bin instead of u-boot-spl ELF into SCIF loader compatible SREC. The u-boot-spl.bin includes SPL DT, while the ELF does not, which leads to failure to start SPL via SCIF loader due to missing SPL DT. Fix this by using u-boot-spl.bin which includes the DT. Signed-off-by: Marek Vasut <[email protected]>
2025-07-10nvme: Fix memory leak on error path of nvme_initAndrew Goodbody
The use of log_msg_ret to log a message and return an error meant that memory allocated earlier in the function was not freed on this error path. Instead log the message in the same way that log_msg_ret would do and then goto the cleanup code to free the memory. This issue found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]>
2025-07-10makefile: Adjust distclean to remove .binman_stamp fileMagnus Damm
Remove the .binman_stamp file during distclean Signed-off-by: Magnus Damm <[email protected]>
2025-07-10net: ti: icssg: Read firmware name from device-treeMD Danish Anwar
Update the ICSSG PRU Ethernet driver to read PRU/RTU/TXPRU firmware names from the Device Tree using the "firmware-name" property, instead of relying on the hard-coded firmware names. The firmware names are parsed during prueth_probe() and stored in the prueth->firmwares for each slice. The driver now uses these dynamically loaded names when starting the PRU cores. This change improves flexibility and allows firmware selection to be controlled via the device tree, making the driver more adaptable to different platforms and firmware configurations. Signed-off-by: MD Danish Anwar <[email protected]>
2025-07-10disk/part_dos.c: Make use of LBAF for printing lbaint_tTom Rini
When printing the contents of an lbaint_t variable we need to use LBAF to print it in order to get the correct format type depending on 32 or 64bit-ness. Signed-off-by: Tom Rini <[email protected]>
2025-07-10common/log_syslog.c: Add missing include of <env.h>Tom Rini
This file was making environment calls without including <env.h> and so relying on an indirect inclusion from elsewhere. Add the missing include directly. Signed-off-by: Tom Rini <[email protected]>
2025-07-10post: Add dependency on ARM || PPCTom Rini
The post framework requires architecture specific implementation details. At the moment this is only done for ARM and PowerPC so express that requirement in Kconfig as well. Signed-off-by: Tom Rini <[email protected]>
2025-07-10cmd/Kconfig: Tighten dependencies on CMD_SEAMATom Rini
In order to build this command we need to have configured some other board specific features. Express that requirement in Kconfig as well. Signed-off-by: Tom Rini <[email protected]>
2025-07-10adc: Tighten some adc driver dependenciesTom Rini
A few adc drivers cannot build without access to some platform specific header files. Express those requirements in Kconfig as well. Signed-off-by: Tom Rini <[email protected]>
2025-07-10ata: Correct two dependency issuesTom Rini
First, the SATA_MV driver can only build on kirkwood or mvebu platforms due to header requirements, so add that as a dependency here. Second, SYS_SATA_MAX_DEVICE is also used by the API code so allow it to be configured in that case. Reviewed-by: Tony Dinh <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-07-10crypto: aspeed: Tighten some dependencies for the aspeed platformsTom Rini
Some of the aspeed platform drivers cannot build without platform specific headers being available. Express those requirements in Kconfig as well. Signed-off-by: Tom Rini <[email protected]>
2025-07-10crypto: fsl: Only allow these to be chosen on ARM/PowerPCTom Rini
These drivers require various headers which only exist on the ARM / PowerPC platforms which implement the hardware. Express that requirement in Kconfig as well. Reviewed-by: Peng Fan <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-07-10crypto: nuvoton: Tighten some dependencies for the nuvoton platformsTom Rini
The nuvoton AES driver cannot build without platform specific headers being available. Express that requirement in Kconfig as well. Signed-off-by: Tom Rini <[email protected]>
2025-07-10dma: ti: Tighten some dependencies for some ti platformsTom Rini
The TI EDMA3 driver cannot build without platform specific headers being available. Express that requirement in Kconfig as well. Signed-off-by: Tom Rini <[email protected]>
2025-07-10gpio: Tighten some gpio driver dependenciesTom Rini
A large number of gpio drivers cannot build without access to some platform specific header files. Express those requirements in Kconfig as well. Signed-off-by: Tom Rini <[email protected]>
2025-07-10sandbox: Add some missing {clr,set,clrset}bits variantsTom Rini
Add the 16, 32 and 64bit versions of the non-endian {clr,set,clrset}bits macros. Signed-off-by: Tom Rini <[email protected]>
2025-07-10drivers: net: phy: micrel: Try to get phy node from phy-handleNaresh Kumar Ravulapalli
If phy node isn't found in ethernet-phy subnode, try to get it from phy-handle. And when this fails, only then use Ethernet node. This fix results in getting correct phy handle properties for the phy node if defined. Signed-off-by: Naresh Kumar Ravulapalli <[email protected]>
2025-07-10arm: imx: imx8m: soc: Fix i.MX8M Nano GPU pathsAlexander Stein
The SoC node is called 'soc@0', even on NXP branch 6.6-fslc. This fixes the boot on i.MX8M Nano DualLite, as there is no GPU. Signed-off-by: Alexander Stein <[email protected]>
2025-07-10configs: imx6ulz_smm_m2b: Add board watchdog reset configurationMichael Trimarchi
Add the configuration that allow to reset the board from reset cmd Signed-off-by: Michael Trimarchi <[email protected]>
2025-07-10configs/imx6ulz_smm_m2b_defconfig: Enable clock frameworkMichael Trimarchi
Enable the clock framework on the m2b platform as was done in m2 variant. This helps to increase the NAND controller performance. Signed-off-by: Michael Trimarchi <[email protected]>
2025-07-10arm: imx: Remove the rest of i.MX31 supportTom Rini
With the removal of the last i.MX31 platform we can remove the rest of the underlying architecture code as well. Fixes: f247354708ec ("arm: Remove mx31pdk board") Signed-off-by: Tom Rini <[email protected]> Acked-by: Peng Fan <[email protected]>
2025-07-10cmd/Kconfig: Tighten dependencies on CMD_BLOBTom Rini
In order for this command to build we need to compile drivers/crypto/fsl/fsl_blob.c and this in turn includes drivers/crypto/fsl/jr.h which references "ccsr_sec_t" which is only a defined type for SYS_FSL_SEC_COMPAT >= 4. Express that requirement in Kconfig as well. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2025-07-10configs: colibri-imx8x: enable RNG support for KASLREmanuele Ghidoli
Enable DM_RNG in U-Boot to automatically populate /chosen/kaslr-seed and enable CAAM to provide entropy. Enable ARCH_MISC_INIT to initialize the CAAM job ring. Signed-off-by: Emanuele Ghidoli <[email protected]> Acked-by: Francesco Dolcini <[email protected]>
2025-07-10configs: apalis-imx8: enable RNG support for KASLREmanuele Ghidoli
Enable DM_RNG in U-Boot to automatically populate /chosen/kaslr-seed and enable CAAM to provide entropy. Enable ARCH_MISC_INIT to initialize the CAAM job ring. Signed-off-by: Emanuele Ghidoli <[email protected]> Acked-by: Francesco Dolcini <[email protected]>
2025-07-10configs: toradex-smarc-imx8mp: enable RNG support for KASLREmanuele Ghidoli
Enable DM_RNG in U-Boot to automatically populate /chosen/kaslr-seed. Signed-off-by: Emanuele Ghidoli <[email protected]> Acked-by: Francesco Dolcini <[email protected]>
2025-07-10configs: verdin-imx8mp: enable RNG support for KASLREmanuele Ghidoli
Enable DM_RNG in U-Boot to automatically populate /chosen/kaslr-seed. Signed-off-by: Emanuele Ghidoli <[email protected]> Acked-by: Francesco Dolcini <[email protected]>
2025-07-10configs: verdin-imx8mm: enable RNG support for KASLREmanuele Ghidoli
Enable DM_RNG in U-Boot to automatically populate /chosen/kaslr-seed and enable CAAM to provide entropy. Signed-off-by: Emanuele Ghidoli <[email protected]> Acked-by: Francesco Dolcini <[email protected]>
2025-07-09lmb: add missing fallthrough in lmb_alloc_mem()Heinrich Schuchardt
Add fallthrough to clarify the intent. Addresses-Coverity-ID: CID 569481: Control flow issues (MISSING_BREAK) Signed-off-by: Heinrich Schuchardt <[email protected]> Acked-by: Sughosh Ganu <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2025-07-09cmd: Remove "universe" command.Tom Rini
We have had no platforms that make use of this since 2015, so drop it. Signed-off-by: Tom Rini <[email protected]>
2025-07-09cmd: Remove "tsi148" commandTom Rini
We have had no platforms that make use of this since 2021, so drop it. Signed-off-by: Tom Rini <[email protected]>
2025-07-09dma: Remove lpc32x_dma driverTom Rini
This driver has no users after we removed the last supported platform in 2024. Fixes: 26ed58b40f58 ("arm: Remove devkit3250 board") Signed-off-by: Tom Rini <[email protected]>
2025-07-09gpio: Remove tca642x supportTom Rini
This driver has no users after we removed the last supported platform in 2023. Fixes: 7a3ee61f5551 ("arm: Remove omap5_uevm board") Signed-off-by: Tom Rini <[email protected]>
2025-07-09binman: migrate from pkg_resources to importlibYannic Moog
pkg_resources is deprecated, use migration guide in [1] to migrate to importlib.resources. Keep the Python 3.6 backwards compatibility. This also fixes the binman version test which failed for setuptools versions that print the deprecation warning. Change from __name__ to __package__ as with the transition from pkg_resources to importlib_resources using __name__ results in TypeErrors [2]. [1] https://importlib-resources.readthedocs.io/en/latest/migration.html [2] https://github.com/python/importlib_resources/issues/60 Reviewed-by: Bryan Brattlof <[email protected]> Signed-off-by: Yannic Moog <[email protected]>
2025-07-09Merge patch series "board: ti: am33xx: Add Ethernet support for Beaglebone ↵Tom Rini
Green Eco" Romain Gantois <[email protected]> says: This is version one of my series which enables Ethernet support on the BBGE board. This requires three main changes: - Describing the MAC<->PHY link and DP83867 PHY accurately in the device tree - Enabling the RGMII1 pinmux configuration - Enabling the DP83867 driver These changes are all applied in patch 2. Patch 1 enables excluding the DP83867 driver from SPL. This is done to avoid size issues when adding the DP83867 driver to the am335x-evm defconfig. Link: https://lore.kernel.org/r/[email protected]
2025-07-09board: ti: am33xx: Add Ethernet support for Beaglebone Green EcoRomain Gantois
Currently, the Ethernet interface of the BBGE board isn't properly supported. To support this interface, describe the MAC<->PHY RGMII link and the DP83867 PHY in the BBGE device tree. Enable the DP83867 PHY driver in U-Boot Proper and mux the relevant RGMII lines. Signed-off-by: Romain Gantois <[email protected]> Tested-by: Judith Mendez <[email protected]>
2025-07-09net: phy: dp83867: Allow excluding driver from SPLRomain Gantois
The DP83867 PHY driver is used by the BeagleBoneGreen Eco board, but adding it to the am335x-evm defconfig causes SPL to overflow its size limits. Add a separate option to enable this driver in SPL, so that it can be enabled in U-Boot without adding unnecessary volume to SPL. Signed-off-by: Romain Gantois <[email protected]> Tested-by: Judith Mendez <[email protected]>
2025-07-09Merge patch series "Improve Verdin AM62P thermal setup by generalizing ↵Tom Rini
ft_board_setup_ex()" João Paulo Gonçalves <[email protected]> says: In some use cases, board-specific device tree changes must not be overwritten by system fixups. Although U-Boot provides ft_board_setup_ex() for this purpose, it is currently only used on TI Keystone. This series makes ft_board_setup_ex() a generic option, allowing its use by other architectures and boards. Additionally, considering that Toradex Verdin-AM62P hardware lifetime guarantees are based on a 105°C junction temperature (while TI AM62Px supports up to 125°C), this series implements necessary changes within TI K3 AM62P and Toradex board code. These changes include exporting common fixup device Tree functions used in TI K3 for board-code access and also fixup for AM62P thermal zones to correctly reflect the number of CPU nodes according to the SoC part number. Link: https://lore.kernel.org/r/20250623-am62p-fdt-fixup-trip-points-v1-0-12355eb6a72f@toradex.com
2025-07-09board: toradex: verdin-am62p: Add fixup for critical trip pointsJoão Paulo Gonçalves
While TI AM62P supports up to 125°C junction temperature, Tj, for industrial and automotive parts, Toradex Verdin-AM62P hardware lifetime guarantees consider a 105°C Tj. Fixup the device tree temperature critical trip points to match the hardware specifications. The implementation ensures the architecture code will not overwrite the board specific changes by enabling CONFIG_OF_BOARD_SETUP_EXTENDED for the Verdin-AM62P. Signed-off-by: João Paulo Gonçalves <[email protected]> Acked-by: Francesco Dolcini <[email protected]>
2025-07-09arm: mach-k3: am62p: fixup thermal cooling device by cpu numberJoão Paulo Gonçalves
TI AM62Px devices support CPU throttling based on thermal alerts. However, the device tree assumes a 4-core configuration. Since the AM62P also supports 2-core configurations, add a fixup to dynamically adjust the cooling-device nodes within thermal zones based on the actual number of CPU cores available. Signed-off-by: João Paulo Gonçalves <[email protected]>
2025-07-09arm: mach-k3: Export common fdt fixups for use in board codeJoão Paulo Gonçalves
Avoid code duplication by making the common TI K3 device tree fixup functions to be reusable by board-specific code. Signed-off-by: João Paulo Gonçalves <[email protected]>
2025-07-09boot: Make ft_board_setup_ex() genericJoão Paulo Gonçalves
In some use cases, board-specific device tree changes must not be overwritten by system fixups. Although U-Boot provides ft_board_setup_ex() for this purpose, it is currently only used on TI Keystone. Make ft_board_setup_ex() to be a generic option, allowing its use by other architectures/boards. To maintain backward compatibility, enable it by default on TI Keystone. Signed-off-by: João Paulo Gonçalves <[email protected]>
2025-07-08boot: menu: Do not dereference pointer if pointer is NULLAndrew Goodbody
scene_obj_find can return NULL but this is not checked for before the return is dereferenced. Add a NULL check. This issue was found by Smatch. Also add a NULL check for str. Signed-off-by: Andrew Goodbody <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2025-07-08boot: pxe: Prevent evaluation of uninitialised variableAndrew Goodbody
In the case where parse_sliteral returns an error then label_name will not have been assigned to. In order to prevent evaluating label_name in this case add a check for the return value of parse_sliteral. Signed-off-by: Andrew Goodbody <[email protected]>
2025-07-08env: Fix possible out-of-bound access in env_do_env_setChristian Marangi
It was discovered that env_do_env_set() currently suffer from a long time of a possible out-of-bound access for the argv array handling. The BUG is present in the function env_do_env_set() line: name = argv[1]; where the function at this point assume the argv at index 1 is always present and can't be NULL. Aside from the fact that it's always better to validate argv entry with the argc variable, situation where the argv[1] is NULL is actually possible and not an error condition. A example of where an out-of-bound access is triggered is with the command "askenv - Press ENTER to ...". This is a common pattern for bootmenu entry to ask the user input after a bootmenu command succeeded. In the context of such command, the while loop before "name = argv[1];" parse the "-" char as an option arg and increment the argv pointer by one (to make the rest of the logic code ignore the option argv) and decrement argc value. The while loop logic is correct but at the "name = argv[1];" line, the argv have only one element left (the "-" char) and accessing argv[1] (aka the secong element from argv pointer) cause an out-of-bound access (making the bootloader eventually crash with strchr searching in invalid data) To better handle this and prevent the out-of-bound access, actually check the argv entry left (with the use of the argc variable) and exit early before doing any kind of array access. Signed-off-by: Christian Marangi <[email protected]>
2025-07-08fit-dtb.blob.gz: Pass "-n" to gzipTom Rini
Sometimes when building a platform such as imx28_btt3 we can get an error such as: gzip: fit-dtb.blob: warning: file timestamp out of range for gzip format make[1]: *** [Makefile:1219: fit-dtb.blob.gz] Error 2 make[1]: *** Deleting file 'fit-dtb.blob.gz' make: *** [Makefile:186: sub-make] Error 2 This is typically resolved by telling gzip to ignore the timestamp. Signed-off-by: Tom Rini <[email protected]>
2025-07-08tools: termios_linux.h: Fix build error on ppc64Javier Martinez Canillas
Commit 93b55636b09f ("tools: kwboot: Allow any baudrate on Linux") added a tcgetattr() function to be used, instead of the libc's termios functions. This was done to allow using the raw TCGETS2/TCSETS2 ioctls that allow to support arbitrary baud rates. This breaks the build for PowerPC, because that architecture does not have a struct termios2 defined because the termios and ktermios are the same. On PowerPC, the termios ioctl() emulates the TCGETS2/TCSETS*2 ioctls with tcgetattr/tcsetattr using just the struct termios (that's as mentioned the same than what is defined as struct termios2 in other architectures). So there is no need to use the TCGETS2/TCSETS2 ioctls on that architecture and just TCGETS/TCSETS ioctls with termios as defined by PowerPC is enough. Fixes: 93b55636b09f ("tools: kwboot: Allow any baudrate on Linux") Signed-off-by: Javier Martinez Canillas <[email protected]> Reviewed-by: Tom Rini <[email protected]>