summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-02-06remoteproc: imx: Add i.MX95 supportPeng Fan
i.MX95 uses System Manager(sm) API to start/stop logical machine or cpu. There are two modes: M7 in a dedicated logical machine, use LMM API M7 and A55 in same logical machine, use CPU API Extend the driver to using LMM and CPU protocol to manage the M7 core: - Detect using LMM or CPU API in probe using API scmi_imx_lmm_info(). - Compare linux LM ID(got using scmi_imx_lmm_info) and M7 LM ID(the ID is fixed as 1 in SM firmware if M7 is in a separate LM), if Linux LM ID is not same as M7 LM ID(linux and M7 in same LM), use LMM protocol to start/stop. Whether using CPU or LMM protocol to start/stop, the M7 status detection could use CPU protocol to detect started or not. So in imx_rproc_is_running, use scmi_imx_cpu_started to check the status of M7. - For above case (2), Use scmi_imx_lmm_power_boot to detect whether the M7 LM is under control of A55 LM. - For above case , after using SCMI_IMX_LMM_POWER_ON to check permission, scmi_imx_lmm_shutdown API should be called to shutdown the M7 LM. - Add a new ops imx_rproc_ops_sm. Signed-off-by: Peng Fan <[email protected]>
2026-02-06remoteproc: imx: Support ECC initializationPeng Fan
Add a new flag ATT_ECC which indicates the memory region needs ECC initialization. If the flag is set, clearing the whole memory region to initialize ECC. If ECC is not initialized, remote core will crash if directly access the area. Signed-off-by: Peng Fan <[email protected]>
2026-02-06board: ge: common: vpd: Fix read_i2c_vpd return valueFrancois Berder
If i2c_eeprom_size fails, the error value is stored in variable size and not ret. Also, this commit fixes printing the error value. Signed-off-by: Francois Berder <[email protected]>
2026-02-06imx93_frdm: Update IMX_BOOT_IMAGE_GUIDPeng Fan
Reusing IMX_BOOT_IMAGE_GUID from i.MX93 EVK is wrong. The ID is per board, so regenerate one using uuidgen. Signed-off-by: Peng Fan <[email protected]>
2026-02-06imx93_frdm: Drop DECLARE_GLOBAL_DATA_PTRPeng Fan
There is no user of "gd", so drop DECLARE_GLOBAL_DATA_PTR. Signed-off-by: Peng Fan <[email protected]>
2026-02-06imx8mq_evk: spl: Drop DECLARE_GLOBAL_DATA_PTRPeng Fan
There is no user of "gd", so drop DECLARE_GLOBAL_DATA_PTR. Signed-off-by: Peng Fan <[email protected]>
2026-02-06imx8ulp_evk: Cleanup headersPeng Fan
Drop unused headers and sort them. Signed-off-by: Peng Fan <[email protected]>
2026-02-06imx8ulp_evk: Drop board_phy_configPeng Fan
There is already a weak function in drivers/net/phy/phy.c, which does the same thing. So drop it. Signed-off-by: Peng Fan <[email protected]>
2026-02-06imx8ulp_evk: Drop DECLARE_GLOBAL_DATA_PTRPeng Fan
There is no user of "gd", so drop DECLARE_GLOBAL_DATA_PTR. Signed-off-by: Peng Fan <[email protected]>
2026-02-06imx8mn_evk: Cleanup headersPeng Fan
Drop unused headers and sort them. Signed-off-by: Peng Fan <[email protected]>
2026-02-06imx8mn_evk: spl: Drop DECLARE_GLOBAL_DATA_PTRPeng Fan
There is no user of "gd", so drop DECLARE_GLOBAL_DATA_PTR. Signed-off-by: Peng Fan <[email protected]>
2026-02-06imx8mp_evk: Cleanup headersPeng Fan
Drop unused headers and sort them. Signed-off-by: Peng Fan <[email protected]>
2026-02-06imx8mp_evk: spl: Drop DECLARE_GLOBAL_DATA_PTRPeng Fan
There is no user of "gd", so drop DECLARE_GLOBAL_DATA_PTR. Signed-off-by: Peng Fan <[email protected]>
2026-02-06imx8mp_evk: spl: Drop i2c_pad_info1Peng Fan
With commit 6e6492c85def ("imx8mp_evk: Convert to DM_PMIC"), i2c_pad_info1 is no longer needed, remove it. Signed-off-by: Peng Fan <[email protected]>
2026-02-06imx8mm_evk: Drop DECLARE_GLOBAL_DATA_PTRPeng Fan
There is no user of "gd", so drop DECLARE_GLOBAL_DATA_PTR. Signed-off-by: Peng Fan <[email protected]>
2026-02-06net: fec_mxc: Add support for i.MX91Primoz Fiser
The i.MX91 SoC reuses the ENET FEC from i.MX93. Add all required driver checks to make it work also on the i.MX91 based platforms. Signed-off-by: Primoz Fiser <[email protected]>
2026-02-06arm: renesas: Enable wget command and TCP on all R-Car systemsMarek Vasut
Enable the 'wget' command and TCP protocol support on all Renesas R-Car systems. This allows users to download content from local HTTP server, which may sometimes be more accessible than TFTP server. Enable TCP SACK support to improve download performance. The usage is similar to the TFTP command. To download file from server http://192.ser.ver.ip/file/path/on/local/server , invoke wget as follows: " => wget $loadaddr 192.ser.ver.ip:/file/path/on/local/server " In case the HTTP server listens on port other than default port 80, set the 'httpdstp' environment variable to download file from server http://192.ser.ver.ip:8088/file/path/on/local/server " => env set httpdstp 8088 => wget $loadaddr 192.ser.ver.ip:/file/path/on/local/server " Signed-off-by: Marek Vasut <[email protected]>
2026-02-06Merge tag 'efi-2026-04-rc2' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request efi-2026-04-rc2 CI: https://source.denx.de/u-boot/custodians/u-boot-efi/-/pipelines/29203 Documentation: * Remove pip from requirements.txt * develop/process: Clarify name usage in the Signed-off-by line UEFI: * Improve EFI variable load message * Fix use after free in efi_exit() with tcg2 * Fix efi_debug_image_info_normal allocation * Add missing EFI_CALL in efi_net
2026-02-06net: airoha_eth: use proper switch node for en7523 caseMikhail Kshevetskiy
Commit d2145a89bcf6 ("net: airoha: bind MDIO controller on Ethernet load") uses "airoha,en7581-switch" dts node for finding MDIO childs. This is wrong for EN7523 SoC. The correct node name should be used instead. Fixes: d2145a89bcf6 ("net: airoha: bind MDIO controller on Ethernet load") Signed-off-by: Mikhail Kshevetskiy <[email protected]>
2026-02-06net: phy: mscc: allow RGMII with internal delay for the VSC8541Charles Perry
Add the missing RGMII modes with internal delay for the VSC8541. Fixes: a5fd13ad1913 ("net: phy: MSCC Add Support for VSC8530-VSC8531-VSC8540-VSC8541") Signed-off-by: Charles Perry <[email protected]>
2026-02-06net: airoha_eth: fix mdio binding to switch deviceMikhail Kshevetskiy
Commit d2145a89bcf6 ("net: airoha: bind MDIO controller on Ethernet load") refers to non-present CONFIG_MDIO_MT7531 and non-present "mt7531-mdio" driver. It should use CONFIG_MDIO_MT7531_MMIO and "mt7531-mdio-mmio" instead. Fixes: d2145a89bcf6 ("net: airoha: bind MDIO controller on Ethernet load") Signed-off-by: Mikhail Kshevetskiy <[email protected]>
2026-02-06arm: dts: en7523: add mdio child node to switch nodeMikhail Kshevetskiy
add mdio node to be able see switch port states Signed-off-by: Mikhail Kshevetskiy <[email protected]>
2026-02-06net: dwc_eth_qos: Define more of the unused MAC regsJonas Karlman
Multicast and Broadcast Queue Enable and Promiscuous Mode Enable bits are currently written to "unused" registers using magic values. Define more of the "unused" MAC regs based on information in the DesignWare Cores Ethernet Quality-of-Service databook. Signed-off-by: Jonas Karlman <[email protected]>
2026-02-06configs: en7523: add mii/mdio supportMikhail Kshevetskiy
This enables mdio/mii command support. Signed-off-by: Mikhail Kshevetskiy <[email protected]>
2026-02-06net: dwc_eth_qos: Start DMA and MAC after tail pointers are initializedJonas Karlman
The DesignWare Cores Ethernet Quality-of-Service databook state that receive and transmit descriptor list address and also transmit and receive tail pointer registers should be initialized before the receive and transmit DMAs are started. It also state to enable the MAC receiver only after the DMA is active. Otherwise, received frames can fill the Rx FIFO and overflow. Move the activation of receive and transmit DMA and MAC receiver until after tail pointer registers have been initialized. Signed-off-by: Jonas Karlman <[email protected]>
2026-02-06arm: dts: an7581: add mdio child node to switch nodeMikhail Kshevetskiy
add mdio node to be able see switch port states Signed-off-by: Mikhail Kshevetskiy <[email protected]>
2026-02-06net: dwc_eth_qos: Initialize the transmit tail pointer in eqos_start()Jonas Karlman
The DesignWare Cores Ethernet Quality-of-Service databook state that descriptors up to one location less than the one indicated by the descriptor tail pointer are owned by the DMA. The DMA continues to process the descriptors until the following condition occurs: Current Descriptor Pointer == Descriptor Tail Pointer The DMA goes into suspend mode when this condition occurs, and updating the tail pointer resume the DMA processing. Configure the transmit tail pointer to the first (current) descriptor pointer so that the tail pointer is a valid address instead of being initialized to NULL when transmit DMA is started. Also update the receive tail pointer comment to state that by pointing to the last descriptor we are actually implying that all receive descriptors are owned by and can be processed by the DMA. Signed-off-by: Jonas Karlman <[email protected]>
2026-02-06configs: an7581: add mii/mdio supportMikhail Kshevetskiy
This enables mdio/mii command support. Signed-off-by: Mikhail Kshevetskiy <[email protected]>
2026-02-06net: dwc_eth_qos: Use lower_32_bits() for tail pointersJonas Karlman
The DesignWare Cores Ethernet Quality-of-Service databook state that the descriptor address from the start to the end of the ring must not cross the 4GB boundary. Use lower_32_bits() to write the lower 32 bits of descriptor addresses, including the 32-bit tail pointers, consistently. No functional change is intended. Signed-off-by: Jonas Karlman <[email protected]>
2026-02-06net: mdio-mt7531-mmio: fix switch regs initializationMikhail Kshevetskiy
mdio is a child node of the switch, so to get switch base address we need to lookup for a parent node Signed-off-by: Mikhail Kshevetskiy <[email protected]>
2026-02-06net: lwip: wget: rework the '#' printingMarek Vasut
Currently, the LWIP wget command prints excessive amount of progress indicator '#' for very long file downloads, limit this to one line that scales according to transfer size. The HTTP server does report the size of the entire file in protocol headers, which are received before the actual data transfer. Cache this information and use it to adaptively print progress indicator '#' until it fills one entire line worth of '#', which indicates the transfer has completed. This way, long transfers don't print pages of '#', but every transfer will print exactly one line worth of '#'. The algorithm for '#' printing is the same as TFTP tsize one. Signed-off-by: Marek Vasut <[email protected]> Acked-by: Jerome Forissier <[email protected]>
2026-02-06net: lwip: tftp: add support of tsize option to clientMarek Vasut
The TFTP server can report the size of the entire file that is about to be received in the Transfer Size Option, this is described in RFC 2349. This functionality is optional and the server may not report tsize in case it is not supported. Always send tsize request to the server to query the transfer size, and in case the server does respond, cache that information locally in tftp_state.tsize, otherwise cache size 0. Introduce new function tftp_client_get_tsize() which returns the cached tftp_state.tsize so clients can determine the transfer size and use it. Update net/lwip/tftp.c to make use of tftp_client_get_tsize() and avoid excessive printing of '#' during TFTP transfers in case the transfer size is reported by the server. Submitted upstream: https://savannah.nongnu.org/patch/index.php?item_id=10557 Signed-off-by: Marek Vasut <[email protected]> Acked-by: Jerome Forissier <[email protected]>
2026-02-06net: tftp: Fix TFTP Transfer Size data typeYuya Hamamachi
The TFTP transfer size is unsigned integer, update the data type and print formating string accordingly to prevent an overflow in case the file size is longer than 2 GiB. TFTP transfer of a 3 GiB file, before (wrong) and after (right): Loading: ################################################# 16 EiB Loading: ################################################## 3 GiB Signed-off-by: Yuya Hamamachi <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2026-02-06net: Stop conflating return value with file size in net_loop()Yuya Hamamachi
The net_loop() currently conflates return value with file size at the end of successful transfer, in NETLOOP_SUCCESS state. The return type of net_loop() is int, which makes this practice workable for file sizes below 2 GiB, but anything above that will lead to overflow and bogus negative return value from net_loop(). The return file size is only used by a few sites in the code base, which can be easily fixed. Change the net_loop() return value to always be only a return code, in case of error the returned value is the error code, in case of successful transfer the value is 0 or 1 instead of 0 or net_boot_file_size . This surely always fits into a signed integer. By keeping the return code 0 or 1 in case of successful transfer, no conditionals which depended on the old behavior are broken, but all the sites had to be inspected and updated accordingly. Fix the few sites which depend on the file size by making them directly use the net_boot_file_size variable value. This variable is accessible to all of those sites already, because they all include net-common.h . Signed-off-by: Yuya Hamamachi <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2026-02-06CI: Update to using grub-2.14 for our testsTom Rini
When building grub-2.12 with a newer GCC, we run in to warings (treated as errors). The simple fix here is to move to the latest release tag. In order to build a newer grub from source we need the autoconf-archive package to be installed. Signed-off-by: Tom Rini <[email protected]>
2026-02-06cmd: zip: Add missing unmap_sysmem() for buffers in the unzip commandMarek Vasut
Unmap the sysmem that got mapped by this command. Use symbolic return value for the command while updating the return value handling. Signed-off-by: Marek Vasut <[email protected]>
2026-02-06cmd: zip: Use map_sysmem() with buffers in the zip commandMarek Vasut
The current implementation casts an address to a pointer. Make it more sandbox-friendly by using map_sysmem(). Use symbolic return value for the command while updating the return value handling. Signed-off-by: Marek Vasut <[email protected]>
2026-02-06cmd: unzip: Use map_sysmem() with buffers in the gzwrite commandMarek Vasut
The current implementation casts an address to a pointer. Make it more sandbox-friendly by using map_sysmem(). Convert 'addr' variable to unsigned long, as that is the return type of hextoul() and address parameter type of map_sysmem(). Signed-off-by: Marek Vasut <[email protected]>
2026-02-06gunzip: Fix len parameter in function signatureMarek Vasut
The only call site of gzwrite() is cmd/unzip.c do_gzwrite(), where the 'len' parameter passed to gzwrite(..., len, ...) function is of type unsigned long. This usage is correct, the 'len' parameter is an unsigned integer, and the gzwrite() function currently supports input data 'len' of up to 4 GiB - 1 . The function signature of gzwrite() function in both include/gzip.h and lib/gunzip.c does however list 'len' as signed integer, which is not correct, and ultimatelly limits the implementation to only 2 GiB input data 'len' . Fix this, update gzwrite() function parameter 'len' data type to size_t consistently in include/gzip.h and lib/gunzip.c . Furthermore, update gzwrite() function 'szwritebuf' parameter in lib/gunzip.c from 'unsigned long' to 'size_t' to be synchronized with include/gzip.h . Rewrite the other parameters to size_t and off_t and propagate the change too. Since the gzwrite() function currently surely only supports input data size of 4 GiB - 1, add input data size check. The limitation comes from the current use of zlib z_stream .avail_in parameter, to which the gzwrite() function sets the entire input data size, and which is of unsigned int type, which cannot accept any number beyond 4 GiB - 1. This limitation will be removed in future commit. Reported-by: Yuya Hamamachi <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2026-02-06configs: microchip_mpfs_generic: fix boot failureJamie Gibbons
Recent changes to device resource management (DEVRES) increased early memory requirements during boot. The previous value was insufficient, resulting in boot failures. Increase CONFIG_SYS_MALLOC_F_LEN to provide enough early malloc pool for successful boot and device initialisation. Signed-off-by: Jamie Gibbons <[email protected]>
2026-02-06arch: arm: dts: k3: refactor common nodes to k3-*-r5.dtsiAnshul Dalal
This patch refactors the nodes in each board's R5 device-tree to common SoC level dtsi. No functional change is intended from this patch. Signed-off-by: Anshul Dalal <[email protected]> Tested-by: Wadim Egorov <[email protected]> Reviewed-by: Wadim Egorov <[email protected]> Reviewed-by: Bryan Brattlof <[email protected]>
2026-02-06efi_net: add missing EFI_CALL in efi_netVincent Stehlé
The efi_reinstall_protocol_interface() function is a UEFI function; make sure to call it from within U-Boot using the EFI_CALL() macro. This fixes the following assertion: lib/efi_loader/efi_boottime.c:3752: efi_reinstall_protocol_interface: Assertion `__efi_entry_check()' failed. To reproduce the issue, define LOG_DEBUG in lib/efi_loader/efi_boottime.c and build u-boot for your platform. Then, boot the U-Boot helloworld.efi application over the network. Example commands (adjust the URL and boot entry number): => efidebug boot add -u 0 net http://10.0.2.2:8000/helloworld.efi => efidebug boot order 0 => bootefi bootmgr Fixes: dd5d82a59995 ("efi_loader: efi_net: Add device path cache") Signed-off-by: Vincent Stehlé <[email protected]> Cc: Heinrich Schuchardt <[email protected]> Cc: Ilias Apalodimas <[email protected]> Cc: Tom Rini <[email protected]> Cc: Adriano Cordova <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2026-02-06doc: develop/process: Clarify name usage in the Signed-off-by lineTom Rini
Long ago we took the Linux Kernel documentation about adding a Signed-off-by line and adjusted it slightly for how we organized things. In 2003 Linus clarified the intent and then re-worded what the name portion of the Signed-off-by line can be. Mirror that change here. Link: https://git.kernel.org/torvalds/c/d4563201f33a Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2026-02-06doc: Remove pip from requirements.txtTom Rini
Our documentation does not require the pip package to build, so it should not be listed in our requirements.txt file here. Signed-off-by: Tom Rini <[email protected]> Acked-by: Heinrich Schuchardt <[email protected]>
2026-02-06efi_loader: fix efi_debug_image_info_normal allocationVincent Stehlé
When adding a new EFI Debug Image Info entry, we allocate memory for a new EFI Debug Image Info Normal structure and we add a new entry into the EFI Debug Image Info Table, which is in fact just a pointer to the allocated structure. However, when allocating memory for the new structure we allocate memory for the wrong type, leading to allocating memory for just a pointer instead of the desired structure. Fix the type used during allocation. Fixes: 146546138af5 ("efi: add EFI_DEBUG_IMAGE_INFO for debug") Signed-off-by: Vincent Stehlé <[email protected]> Cc: Heinrich Schuchardt <[email protected]> Cc: Ilias Apalodimas <[email protected]> Cc: Tom Rini <[email protected]> Cc: Ying-Chun Liu (PaulLiu) <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2026-02-06efi_loader: Improve EFI variable load messagePranav Tilak
Change the EFI variable load message from log_err() to log_info() with neutral wording. The previous "Failed to load" message caused customer confusion as it appeared to indicate an error condition. The efi_var_from_file() function deliberately returns EFI_SUCCESS in this case to allow the boot process to continue normally. This is documented in the function's comment block but was not reflected in the log message level or content. The message now uses informational wording to reflect that this is normal behavior when the ubootefi.var file does not yet exist. Signed-off-by: Pranav Tilak <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2026-02-06efi_loader: fix use after free in efi_exit() with tcg2Vincent Stehlé
The efi_exit() function frees the loaded image memory by calling efi_delete_image(). However, when CONFIG_EFI_TCG2_PROTOCOL is enabled, the image_obj->image_type structure member is accessed after the memory has been freed. Fix this by performing the tcg2 measurement before the image deletion. Fixes: 8fc4e0b4273a ("efi_loader: add boot variable measurement") Suggested-by: Ilias Apalodimas <[email protected]> Signed-off-by: Vincent Stehlé <[email protected]> Cc: Heinrich Schuchardt <[email protected]> Cc: Tom Rini <[email protected]> Cc: Masahisa Kojima <[email protected]> Acked-by: Masahisa Kojima <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2026-02-04video: menu "TrueType Fonts" depends on TrueType enabledHeinrich Schuchardt
The Kconfig menu "TrueType Fonts" should only be shown if TrueType is enabled. Put all TrueType dependent customization within one if statement. Remove `depends TRUETYPE` clauses. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2026-02-04Merge patch series "arm: k3: j722s: add PCIe support"Tom Rini
George McCollister <[email protected]> says: This patch series brings over several changes from Linux that are required to get PCIe working on the j722s and also enables PCIe in j722s_evm_a53_defconfig. This allows Linux to be booted from an NVMe drive. The J722S SoC provides pcie0 (using pcie_cdns_ti) thru serdes1 (using phy-cadence-torrent) thru serdes_wiz1 (using phy-j721e-wiz). Changes to the three drivers needed to be ported from Linux to enable the REFCLK output which is used with this SoC. These changes should be tested on other platforms using these drivers by those with the hardware available to make sure no problems were introduced. The PCIe controller in this SoC relies on the code performing the PCI scan not scanning devices which cannot exist. In Linux this is implemented as only_one_child() in probe.c. If this mechanism is not used, PCI config reads for subsequent functions will return information for device 0 resulting in U-Boot detecting 32 devices when only 1 is present. This change should be tested on other platforms with PCI to ensure the same PCI devices are enumerated before and after the patch is applied. I would like to thank Opto 22 for sponsoring the initial development and anyone that is able to contribute to testing of patches. Link: https://lore.kernel.org/r/[email protected]
2026-02-04configs: j722s_evm_a53_defconfig: enable PCIeGeorge McCollister
Enable PCIe now that it is fixed. Signed-off-by: George McCollister <[email protected]> Tested-by: Bryan Brattlof <[email protected]>