summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2025-09-08Merge patch series "AM57 boot fixes"Tom Rini
Anurag Dutta <[email protected]> says: This patch series migrates from .h to .env format for am57xx/dra7xx. Also, we do relevant changes so that the fdtfile can be set from C code. logs : https://gist.github.com/anuragdutta731/82560cc9bc958ca70a25a95a7031eeea Link: https://lore.kernel.org/r/[email protected]
2025-09-08board: ti: am57xx: Change to using .envAnurag Dutta
Move to using .env file for setting up environment variables for am57xx and dra7xx. Signed-off-by: Anurag Dutta <[email protected]>
2025-09-08include: env: ti: Use .env for environment variablesAnurag Dutta
Add omap common environment variables to .env. We retain the old-style C environment .h files to maintain compatibility with other omap devices that have not moved to using .env yet. Signed-off-by: Anurag Dutta <[email protected]>
2025-08-30power: rk8xx: allow to customize RK806 reset modeQuentin Schulz
The RK806 PMIC has a bitfield for configuring the restart/reset behavior (which I assume Rockchip calls "function") whenever the PMIC is reset either programmatically (c.f. DEV_RST in the datasheet) or via PWRCTRL or RESETB pins. For RK806, the following values are possible for RST_FUN: 0b00 means "Restart PMU" 0b01 means "Reset all the power off reset registers, forcing the state to switch to ACTIVE mode" 0b10 means "Reset all the power off reset registers, forcing the state to switch to ACTIVE mode, and simultaneously pull down the RESETB PIN for 5mS before releasing" 0b11 means the same as for 0b10 just above. This adds the appropriate logic in the driver to parse the new rockchip,reset-mode DT property to pass this information. It just happens that the values in the binding match the values to write in the bitfield so no mapping is necessary. For backward compatibility reasons, if the property is missing we set it to 0b10 (i.e. BIT(7)) like before this commit was merged instead of leaving it untouched like in the kernel driver. Note that this does nothing useful for U-Boot at the moment as the ways to reset the device (e.g. via `reset` command) doesn't interact with the RK8xx PMIC and simply does a CPU reset. Considering the upstream Linux kernel left this register untouched until (assumed) v6.17[1], this is useful for cases in which the U-Boot bootloader has this patch (and running with a DT with rockchip,reset-mode property set) and running an upstream kernel before (assumed) v6.17, or alternatively later without the property in the kernel DT. [1] https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git/commit/?id=87b48d86b77686013f5c2a8866ed299312b671db Signed-off-by: Quentin Schulz <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-08-30rk3288: add fdtoverlay_addr_r to default envMarius Dinu
rk3288 is missing fdtoverlay_addr_r. The new addresses match those used by rk3308. Tested on Asus TinkerBoard S. Signed-off-by: Marius Dinu <[email protected]> Cc: Simon Glass <[email protected]> Cc: Philipp Tomsich <[email protected]> Cc: Kever Yang <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2025-08-25configs: versal2: Add usb_pgood_delay for versal2 boardsVenkatesh Yadav Abbarapu
Add usb_pgood_delay to ensure proper detection of USB devices. Increase the USB power good delay for versal2 specific boards, as certain USB sticks may not be detected without it. Signed-off-by: Venkatesh Yadav Abbarapu <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2025-08-25arm64: versal2: Define BOOTENV_DEV_SHARED_XSPI when distro is disabledMichal Simek
When DISTRO_DEFAULT is disabled there is missing empty BOOTENV_DEV_SHARED_XSPI macro defined. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/4c195468c0341ddd2aca98f83cdcbd40117cc9ee.1753885919.git.michal.simek@amd.com
2025-08-25fpga: lattice: Remove unused supportMichal Simek
There is no single platform which is using this driver that's why remove it completely. Some issues regarding this code are also reported by Coverity (CID 583143, 583144, 583145, 583146). Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/367cd55ab8d9fb262ac23fe748babc6b2b59bee0.1753686468.git.michal.simek@amd.com
2025-08-25fpga: Remove ancient ACEX1K supportMichal Simek
Coverity (CID 583149) reports issue on code which is not enabled by any real platform that's why remove it completely. Acked-by: Alexander Dahl <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/20fe425910b6266a2bf0555bda67f60c1dd3aa61.1753686468.git.michal.simek@amd.com
2025-08-23imx: imx93_{evk, frdm, qsb}: Fix conflict SPL early malloc addressYe Li
Because the early malloc pool size is set to 0x18000, so using this start address may cause conflict with ATF, then corrupt the heap data. So we delete the definition to use the default early malloc pool from CONFIG_SPL_STACK to avoid any conflict Signed-off-by: Ye Li <[email protected]> Cherry picked from nxp-imx/uboot-imx commit 1ba675df122627a19debe1d807877052705372c6 Jérémie Dautheribes: applied the same patch to the frdm and qsb imx93-based boards Signed-off-by: Jérémie Dautheribes <[email protected]>
2025-08-18net: lwip: ping: set net_try_count to 1Jerome Forissier
The legacy network stack sets net_try_count to 1 at the beginning of the net_loop() function. This is required for net_start_again() to work properly. Therefore, set the variable accordingly in the do_ping() function when NET_LWIP=y. This fixes an issue where a ping to an unreachable destination would run twice on the same network device. For example with qemu_arm64_lwip_defconfig: => dhcp DHCP client bound to address 10.0.2.15 (3 ms) => ping 10.0.0.1 Using virtio-net#32 device ping failed; host 10.0.0.1 is not alive Using virtio-net#32 device ping failed; host 10.0.0.1 is not alive => QEMU: Terminated Signed-off-by: Jerome Forissier <[email protected]>
2025-08-18net: introduce CONFIG_DNSJerome Forissier
Introduce the DNS Kconfig symbol so that various network commands may use host names without the dns command (CMD_DNS) being selected. Signed-off-by: Jerome Forissier <[email protected]> CC: E Shattow <[email protected]>
2025-08-18net: add missing SPDX-License-Identifier for files originating from LiMonMax Merchel
The header of LiMon imported files reference a License file which does not exist in U-Boot. Some files were forgotten when adding the SPDX-License-Identifier. The LiMon files were originally licensed under GPLv2 as can be seen in commit [2ea91039]. Based on this commit, add the correct SPDX license identifier. While at it drop the reference to the non-existing License file from all LiMon files and update the SPDX-License-Identifier to SPDX version 3. Signed-off-by: Max Merchel <[email protected]>
2025-08-14board: andestech: Add Voyager board supportLeo Yu-Chi Liang
Introduce Voyager board specific code, including - dram info - shared cache enabling Signed-off-by: Randolph Sheng-Kai Lin <[email protected]> Signed-off-by: Leo Yu-Chi Liang <[email protected]>
2025-08-14mailbox: add PolarFire SoC mailbox driverJamie Gibbons
This driver adds support for the single mailbox channel of the MSS system controller on the Microchip PolarFire SoC. Signed-off-by: Jamie Gibbons <[email protected]> Acked-by: Leo Yu-Chi Liang <[email protected]>
2025-08-08include: configs: Add config header file for Agilex7 M-seriesTingting Meng
Add config header file for new platform Agilex7 M-series. Signed-off-by: Tingting Meng <[email protected]> Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-08-08arm: socfpga: soc64: Perform warm reset after L2 reset in SPLAlif Zakuan Yuslaimi
SPL checks for a magic word in the system manager's scratch register to determine if an L2 reset has occurred. If detected, SPL places all slave CPUs (CPU1–3) into WFI mode. The master CPU (CPU0) then initiates a warm reset by writing to the RMR_EL3 system register and also enters WFI mode. This warm reset flow is handled entirely within the HPS. The function `socfpga_sysreset_request()` triggers the warm reset, and upon SPL re-entry, the updated `lowlevel_init_soc64.S` handles the necessary initialization. Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-08-08sysreset: socfpga: soc64: Enable L2 resetAlif Zakuan Yuslaimi
Put all slave CPUs (CPU1-3) into WFI mode. Master CPU (CPU0) writes the magic word into system manager's scratch register to indicate the system has performed L2 reset and request reset manager to perform hardware handshake and then trigger L2 reset. CPU0 put itself into WFI mode. L2 reset will reboot all HPS CPU cores after which all HPS cores are in WFI mode. L2 reset is followed by warm reset request by SPL via RMR_EL3 system register. Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-08-08include: configs: socfpga: Add environment variables for distro bootAlif Zakuan Yuslaimi
Added environment variables needed to support NAND distro boot Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-08-06cmd: Add i3c command support.Dinesh Maniyam
Add i3c command file to support select, get i3c device target list, read and write operation. Signed-off-by: Dinesh Maniyam <[email protected]>
2025-08-06i3c: master: dw-i3c-master: Fix OD_TIMING for spike filterDinesh Maniyam
Fix the I3C device with spike filter unable to detect issue by setting tHIGH_INIT to 200ns for first broadcast address. This is according to MIPI SPEC 1.1.1 for first broadcast address which is already part of linux upstreamed patch. Signed-off-by: Dinesh Maniyam <[email protected]>
2025-08-06drivers: i3c: Add i3c uclass driver.Dinesh Maniyam
Enable i3c general uclass driver. This uclass driver will have genaral read and write api to call the specific i3c driver. Signed-off-by: Dinesh Maniyam <[email protected]>
2025-08-06drivers: i3c: Add driver for MIPI DWI3CDinesh Maniyam
Enable driver for Synopsis MIPI DWI3C for the family device agilex5. This driver is migrated from linux version 6.6.37 LTS Signed-off-by: Dinesh Maniyam <[email protected]>
2025-08-06drivers: i3c: Add new i3c uclass idDinesh Maniyam
Add i3c general uclass id. Signed-off-by: Dinesh Maniyam <[email protected]>
2025-08-01arm: bcm281xx: Remove ethernet driverTom Rini
As no platforms enable the ethernet driver, remove it. Signed-off-by: Tom Rini <[email protected]>
2025-08-01net: Add parens to macro PSEUDO_HDR_SIZEAndrew Goodbody
Smatch reports a warning about possibly needing parens around the macro PSEUDO_HDR_SIZE. This will not affect the one place the macro is used but add the parens anyway as it is good practice to have them and if the macro is used again in the future it could possibly matter then. Signed-off-by: Andrew Goodbody <[email protected]> Reviewed-by: Jerome Forissier <[email protected]>
2025-07-31Merge tag 'u-boot-stm32-20250731' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-stm CI: https://source.denx.de/u-boot/custodians/u-boot-stm/-/pipelines/27236 - Add support for STM32 TIMERS and STM32 PWM on STM32MP25 - Add STM32MP13xx SPL and OpTee-OS start support - Fix header misuse in stm32 reset drivers - Fix STMicroelectronics spelling - Fix clk-stm32h7 wrong macros used in register read - Fix PRE_CON_BUF_ADDR on STM32MP13 - Fix clock identifier passed to struct scmi_clk_parent_set_in - Fix stm32 reset for STM32F4/F7 and H7 - Enable OF_UPSTREAM_BUILD_VENDOR for stm32mp13_defconfig - Add STM32MP23 SoC and stm32mp235f-dk board support
2025-07-31Merge tag 'u-boot-socfpga-next-20250731' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-socfpga This pull request includes updates for the SoCFPGA platform intended for the 2025.10 release cycle. The highlights focus on enabling the Power Manager for Agilex5, NAND boot support enhancements, and various bug fixes and cleanups across SoCFPGA components. CI: * https://source.denx.de/u-boot/custodians/u-boot-socfpga/-/pipelines/27221 Summary of changes: Agilex5 Power Manager: * Initial driver support and DT bindings are added for the Agilex5 Power Manager, enabling better power domain control. NAND Boot Support for Agilex5: * SPL support for NAND boot is enabled. * UBI/UBIFS support is configured in defconfigs. * Memory layout updates (malloc and BSS relocation) ensure proper boot behavior. Code Quality Improvements: * Coverity and runtime bug fixes (e.g., jtag_usercode check, sub-device conditionals). * Several cleanup patches addressing formatting, logic, and initialization issues. General Maintenance: * SPDX license tags and header include fixes. * Device tree updates to limit SPI clock frequency and other minor adjustments. These contributions come from Alif Zakuan Yuslaimi, Andrew Goodbody, Dinesh Maniyam, Naresh Kumar Ravulapalli, and Tingting Meng. This patch set has been tested on Agilex 5 devkit.
2025-07-30configs: socfpga: soc64: agilex5: Enable NAND boot with UBI / UBIFSDinesh Maniyam
Add the required configuration in the U-Boot env to enable Linux NAND boot with UBI / UBIFS. Signed-off-by: Dinesh Maniyam <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-07-30watchdog: wdt-uclass.c: add wdt_set_force_autostart() helperAntonio Borneo
The watchdog could have been already started by a previous boot stage (e.g. bootrom or secure OS). U-Boot has to start and kick the watchdog even when CONFIG_WATCHDOG_AUTOSTART is not enabled or when the DT property u-boot,noautostart is present. Add the helper wdt_set_force_autostart() that can be called by the driver's probe() when it detects that the watchdog has already been started and is running. Co-developed-by: Patrice Chotard <[email protected]> Signed-off-by: Patrice Chotard <[email protected]> Signed-off-by: Antonio Borneo <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2025-07-29Merge tag 'u-boot-marvell-20250729' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-marvell CI: https://dev.azure.com/sr0718/u-boot/_build/results?buildId=394&view=results - cmd: tlv_eeprom: Minor improvements (Hugo) - kirkwood: Enable bootstd and other modernization for ib62x0 board (Tony) - spi: mvebu: Correct dependencies on MVEBU_A3700_SPI (Tom) - ddr: marvell: a38x: Fix unsigned issues detected by smatch (Andrew)
2025-07-29treewide: Fix STMicroelectronics spellingPatrice Chotard
Fix STMicroelectronics spelling in comments. Signed-off-by: Patrice Chotard <[email protected]>
2025-07-29ARM: stm32mp: Add STM32MP23 supportPatrice Chotard
Add STM32MP23 support which is a cost optimized of STM32MP25. More details available at: https://www.st.com/en/microcontrollers-microprocessors/stm32mp2-series.html Signed-off-by: Patrice Chotard <[email protected]>
2025-07-29Merge tag 'u-boot-at91-2025.10-b' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-at91 Second set of u-boot-at91 features for the 2025.10 cycle: This feature set includes the addition of new sama7d65 SoC and a new board named sama7d65-curiosity.
2025-07-29arm: kirkwood: Enable bootstd and other modernization for ib62x0 boardTony Dinh
Enable bootstd. Update defconfigs to the latest u-boot requirements. Enable SYS_THUMB_BUILD and LTO and to reduce binary size. Enable NET_RANDOM_ETHADDR. Disable JFFS2 support. Signed-off-by: Tony Dinh <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2025-07-27sunxi: add basic A523 supportAndre Przywara
Add the basic Kconfig options, addresses and other values for the existing Kconfig settings for the new Allwinner A523/T527/H728 SoC. Signed-off-by: Andre Przywara <[email protected]>
2025-07-27power: regulator: add AXP323 supportAndre Przywara
The X-Powers AXP323 is very close sibling to the AXP313A, only that it adds support for dual-phasing the first two DC/DC converters. We do not really care about this particular feature, so just add the new compatible string and tie it to the existing AXP313A support code. Signed-off-by: Andre Przywara <[email protected]>
2025-07-26efi: Rename CONFIG_EFI to CONFIG_EFI_CLIENTSimon Glass
The generic name 'EFI' would be more useful for common EFI features. At present it just refers to the EFI app and stub, which is confusing. Rename it to EFI_CLIENT Signed-off-by: Simon Glass <[email protected]>
2025-07-25Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-samsungTom Rini
- Enhanced e850-96 support
2025-07-25board: sama7d65_curiosity: Add support for sama7d65_curiosityRyan Wanner
Add board specific functions for sama7d65_curiosity. Signed-off-by: Ryan Wanner <[email protected]>
2025-07-25board: samsung: e850-96: Enable EFI Capsule Update mechanismSam Protsenko
Make it possible to update E850-96 firmware binaries using EFI Capsule Update mechanism. For example, to update the U-Boot binary, the capsule file can be generated like this: $ ./tools/mkeficapsule --index 4 \ --guid 629578c3-ffb3-4a89-ac0c-611840727779 \ u-boot.bin capsule4.bin The resulting 'capsule4.bin' should be copied to ESP partition (in /boot/efi/EFI/UpdateCapsule/ directory). Then after reboot U-Boot will update the 'bootloader' area in eMMC Boot Partition A (boot0) and remove the capsule file, by EFI boot manager executed as a part of Standard Boot: Applying capsule capsule4.bin succeeded. Reboot after firmware update. The kernel will also expose the ESRT table information via SysFS in /sys/firmware/efi/esrt/entries. Signed-off-by: Sam Protsenko <[email protected]> Signed-off-by: Minkyu Kang <[email protected]>
2025-07-24Merge tag 'u-boot-imx-master-20250724' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/27149 - Add support for the NXP imx93 frdm board. - imx93_evk and phycore-imx93 cleanups. - Convert imx6dl-sielaff to OF_UPSTREAM and fix serial download mode boot. - Fix crash in imx power-domain. - Migrate Phytec imx8mm boards to standard boot. - Fix smatch warnings.
2025-07-24Merge patch series "Add support for K3 BIST"Tom Rini
Neha Malcom Francis <[email protected]> says: This series implements a driver for the BIST (Built-In Self Test) module for K3 devices. The BIST driver must ideally support triggering of BIST tests, both PBIST (Memory BIST) and LBIST (Logic BIST) on a core. Both tests are destructive in nature. Please see links [1] and [2] for further information regarding the two. At boot up, BIST is executed by hardware for the MCU domain automatically as part of HW POST. So BIST has been checked only for the MCU domain when U-Boot comes up in the usual U-Boot to Linux boot flow. To facilitate the use-case where some safe firmware is intended to be run on a safe core, it is best to have triggered the BIST tests on that core. As an example, we take triggering the BIST tests on the MAIN R52_x cores. The triggering patch is kept as DONOTMERGE. The general procedure for triggering BIST on a core is: 1. Power on the core under test following a sequence 2. Trigger the BIST test 3. Reset the core under test following a sequence BIST tests are triggered from A72 SPL where the DM (Device Manager firmware that handles power management) is already up and can perform these power sequences for us. Boot logs (with LOG_DEBUG and CONFIG_K3_BIST enabled) and DT node kept (already merged to ti-k3-dts-next [3]): https://gist.github.com/nehamalcom/3fed504d038b54e3e05ba3874d73d603 [1] https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-jacinto7/latest/exports/docs/sdl/sdl_docs/userguide/j721e/modules/pbist.html#introduction [2] https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-jacinto7/latest/exports/docs/sdl/sdl_docs/userguide/j721e/modules/lbist.html#introduction [3] https://lore.kernel.org/all/[email protected]/ Link: https://lore.kernel.org/r/[email protected]
2025-07-24drivers: misc: k3_bist: Add K3 BIST driverNeha Malcom Francis
Add a driver for the BIST module that support triggering of both PBIST (Memory BIST) and LBIST (Logic BIST) tests. Also expose the relevant operations and functions that would be required for an end user to trigger the tests. Signed-off-by: Neha Malcom Francis <[email protected]>
2025-07-24uclass: Cleanup uclass_find_next_deviceAndrew Goodbody
uclass_find_next_device always returns 0, so instead make it a void and update calling sites. Signed-off-by: Andrew Goodbody <[email protected]>
2025-07-24imx93_frdm: Add initial board supportFabio Estevam
Add the initial board support for the NXP i.MX93 FRDM board: https://www.nxp.com/design/design-center/development-boards-and-designs/frdm-i-mx-93-development-board:FRDM-IMX93 Based on the NXP U-Boot code. There were attempts to upstream the board devicetree, but it has not been accepted upstream yet: https://lore.kernel.org/linux-arm-kernel/[email protected]/ Once it reaches upstream, we can switch to OF_UPSTREAM. Signed-off-by: Fabio Estevam <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2025-07-24imx93_evk: Remove unneeded header filesFabio Estevam
There is nothing in this file that makes use of the definitions from sizes.h and stringify.h. Remove them. Signed-off-by: Fabio Estevam <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2025-07-24drivers: fpga: cleanup printf usagePieter Van Trappen
Remove `fpga_no_sup` to get rid of Werror=unused-function when all FPGA configurations are enabled. Swap all printf calls to log_* as this is now preferred and includes the calling __func__. Signed-off-by: Pieter Van Trappen <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2025-07-24drivers: fpga: correct compiler errors and warningsPieter Van Trappen
Errors reported by GCC 14.2 when enabling FPGA commands and drivers. Also many style fixes as reported by checkpatch.pl on the diffs. Most changes in stratixII.c which has been reorganized as well to avoid the top function prototypes. No functional changes. Signed-off-by: Pieter Van Trappen <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2025-07-23block: Remove blk_find_first/nextGreg Malysa
In [0], Andrew noted a code quality issue in the implementation of blk_find_first and blk_find_next. This led to the observation that the logic of these functions was also likely incorrect, and based on a quick check it seemed the functions were unused outside of test code, which did not exercise the potential failure case, so we felt they should be removed. In [1], a test patch which illustrates the failure in sandbox is provided for reference. Because a more thorough check agrees that these functions are unused, they are currently incorrect, and fixed/removable flags on block devices prior to probe are unreliable, just remove these functions instead of fixing them. All potential users should have used blk_first_device_err instead anyway. CI results at [2]. [0] https://patchwork.ozlabs.org/project/uboot/patch/[email protected]/ [1] https://gist.github.com/gmalysa/b05e73a5c14bc18c5741a0e0e06a2992 [2] https://gitlab.com/gmalysa/lnxdsp-u-boot/-/pipelines/1931210857 Signed-off-by: Greg Malysa <[email protected]> Reviewed-by: Andrew Goodbody <[email protected]>