summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2025-09-19Merge patch series "qemu-sbsa: Fix GIC enablement"Tom Rini
Kunihiko Hayashi <[email protected]> says: In the qemu-sbsa configuration, the GICv3 definition is disabled due to a typo. After fixing the typo, GICv3 is enabled, however, the GIC register base address definitions are missing, resulting in a build failure. This series enables GICv3 and resolves this build error. Confirming that U-Boot successfully starts up in QEMU SBSA environment after the fix. Link: https://lore.kernel.org/r/[email protected]
2025-09-19configs: qemu-sbsa: Define GIC register base addressKunihiko Hayashi
If GICV3 is enabled, GICD_BASE and GICR_BASE are needed at arch/arm/cpu/armv8/start.S. Signed-off-by: Kunihiko Hayashi <[email protected]>
2025-09-19lib: Tidy up comments for vsprintf functionsSimon Glass
Some of the functions in this file do not follow the normal style. Fix this so that things are more consistent. Signed-off-by: Simon Glass <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2025-09-19Merge tag 'u-boot-stm32-20250919' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-stm into next CI: - https://source.denx.de/u-boot/custodians/u-boot-stm/-/pipelines/27668 STM32MP2: - Add SPI flashes support - Add RIFSC system bus driver fixes
2025-09-19riscv: qemu: Remove fdt_high defaultVivian Wang
Setting fdt_high to all ones is discouraged and does not appear to be useful for RISC-V QEMU. Moreover, it causes a boot failure when the FDT generated internally by QEMU is used while booting. Remove it to allow U-Boot to pick a suitable address and relocate the FDT. Closes: https://lore.kernel.org/u-boot/[email protected] Signed-off-by: Vivian Wang <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Lukas Auer <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-09-19board: microchip: icicle: rename all icicle files to genericJamie Gibbons
Make all Icicle Kit files generic. This supports the addition of upcoming support for other MPFS boards. Signed-off-by: Jamie Gibbons <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-09-19include: configs: andes: Remove fdt_high env variableRandolph Lin
Remove the fdt_high environment variable, as a value of all ones indicates using the FDT in place. This setting is incorrect for the current board. Signed-off-by: Randolph Lin <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-09-18arm: nuvoton: remove unused parameterJim Liu
remove CFG_SYS_BOOTM_LEN parameter Signed-off-by: Jim Liu <[email protected]>
2025-09-18Merge patch series "Add support for MediaTek MT7987/MT7988 built-in 2.5Gb ↵Tom Rini
ethernet PHY (v4)" Weijie Gao <[email protected]> says: This patch adds PHY driver for MediaTek MT7987/MT7988 built-in 2.5Gb ethernet PHY. [trini: Change 'tristate' Kconfig to 'bool'] Link: https://lore.kernel.org/r/[email protected]
2025-09-18misc: fs_loader: allow returning actual firmware data size in ↵Weijie Gao
request_firmware_into_buf_via_script() It's important to return the actual firmware data size as some firmware files may have no checksum and need the size as the only way for firmware validation check. Signed-off-by: Weijie Gao <[email protected]>
2025-09-18ioport: Add resource check helpersPatrice Chotard
Add resource_overlaps() and resource_contains() helpers. Code copied from kernel source. Signed-off-by: Patrice Chotard <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2025-09-16env: Remove usb_ignorelist and env_fdt_path from ifdef ↵Marek Vasut
CONFIG_ENV_VARS_UBOOT_CONFIG The CONFIG_ENV_VARS_UBOOT_CONFIG should protect only U-Boot configuration variables in environment, those are arch, cpu, board, board_name, vendor, soc. It should certainly not hide usb_ignorelist or env_fdt_path from the environment. Fix it. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2025-09-12mkimage: Add support for bundling TFA BL31 in mkimage -f autoMarek Vasut
Introduce two new parameters to be used with mkimage -f auto to bundle TFA BL31 image into fitImage, using auto-generated fitImage. Add -y to specify TFA BL31 file name and -Y to specify TFA BL31 load and entry point address. This is meant to be used with systems which boot all of TFA BL31, Linux and its DT from a single fitImage, all booted by U-Boot. Example invocation: " $ mkimage -E -A arm64 -C none -e 0x50200000 -a 0x50200000 -f auto \ -d arch/arm64/boot/Image \ -b arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk.dtb \ -y ../tfa/build/rcar_gen4/release/bl31.bin -Y 0x46400000 \ /path/to/output/fitImage " Documentation update and test are also included, the test validates both positive and negative test cases, where fitImage does not include TFA BL31 and does include TFA BL31 blobs. Signed-off-by: Marek Vasut <[email protected]>
2025-09-09env: Fix up indentMarek Vasut
Replace #define<TAB> with #define<space> to be consistent in the entire file. No functional change. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2025-09-08Merge tag 'v2025.10-rc4' into nextTom Rini
Prepare v2025.10-rc4
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-09-05Add imx8mp-libra-fpsc boardBenjamin Hahn
Add new imx8mp-libra-fpsc board. Bootph tags as well as USB device tree nodes are in u-boot.dtsi for now and will be removed when upstreamed. The Libra i.MX 8M Plus FPSC is a single board computer. It uses an i.MX 8M Plus FPSC [1] System on Module which utilizes the FPSC standard [2]. [1] https://www.phytec.eu/en/produkte/system-on-modules/phycore-imx-8m-plus-fpsc [2] https://www.phytec.eu/en/produkte/system-on-modules/fpsc Signed-off-by: Benjamin Hahn <[email protected]> Reviewed-by: Teresa Remmet <[email protected]> Tested-by: Teresa Remmet <[email protected]> Signed-off-by: Yannic Moog <[email protected]>
2025-09-05imx: kontron-sl-mx6ul: Enable standard boot and disable legacy distro bootFrieder Schrempf
Disable the legacy distro boot and use bootstd instead. Signed-off-by: Frieder Schrempf <[email protected]>
2025-09-01power: pmic: pca9450: Add support for reset statusPrimoz Fiser
PCA9450 PMIC supports reading the reset status from the PWRON_STAT register. Bits 7-4 give indication of the PMIC reset cause: - PWRON (BIT7) - Power ON triggered by PMIC_ON_REQ input line, - WDOGB (BIT6) - Boot after cold reset by WDOGB pin (watchdog reset), - SW_RST (BIT5) - Boot after cold reset initiated by the software, - PMIC_RST (BIT4) - Boot after PMIC_RST_B input line trigger. Add support for reading reset status via the sysreset framework in a convenient printable format. Signed-off-by: Primoz Fiser <[email protected]> Reviewed-by: Paul Geurts <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-09-01power: pmic: pca9450: Add support for system resetPrimoz Fiser
The family of PCA9450 PMICs have the ability to perform system resets. Restarting via PMIC is preferred method of restarting the system as all the peripherals are brought to a know state after a power-cycle. The PCA9450 features a cold restart procedure which is initiated by an I2C command 0x14 to the SW_RST register. Support in Linux for restarting via PCA9450 PMIC has been added by Linux commit 6157e62b07d9 ("regulator: pca9450: Add restart handler"). Now add support for it also in the U-Boot via sysreset framework. Signed-off-by: Primoz Fiser <[email protected]> Reviewed-by: Paul Geurts <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-09-01power: regulator: tps65910: Cannot test unsigned for being negativeAndrew Goodbody
The code in tps65910_regulator.c treats the field supply in struct tps65910_regulator_pdata as an int and even tests the value for being negative so change it from a u32 to int so that the code all works as expected. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2025-08-31power: Split *POWER_LEGACY portion of <power/pmic.h> out to new headerTom Rini
The commends in include/power/pmic.h say that once SPL_DM_PMIC exists we should update things. This has been true for some time, so let us update this to have the legacy portions in their own header, which should not be directly included. This cleans up the logic within the file too slightly. Signed-off-by: Tom Rini <[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-26misc: fs_loader: Add request_firmware_into_buf_via_script() for flexible ↵Lucien.Jheng
firmware loading via U-Boot script This commit introduces a new API, request_firmware_into_buf_via_script(), to the fs_loader framework. This function allows firmware to be loaded into memory using a user-defined U-Boot script, providing greater flexibility for firmware loading scenarios that cannot be handled by static file paths or device/partition selection alone. Key features: - The API runs a specified U-Boot script (by name), which is responsible for loading the firmware into memory by any means (e.g., load from MMC, USB, network, etc.). - The script must set two environment variables: 'fw_addr' (the memory address where the firmware is loaded) and 'fw_size' (the size of the firmware in bytes). - The function validates these variables, copies the firmware into a newly allocated buffer (using memdup), and returns the pointer via the provided double pointer argument. - The maximum allowed firmware size is checked to prevent buffer overflows. - The environment variables are cleared after use to avoid stale data. - Detailed error messages are provided for all failure conditions to aid debugging. Usage example: 1. Define a U-Boot script in the environment that loads the firmware and sets the required variables: => env set my_fw_script 'load mmc 0:1 ${loadaddr} firmware.bin && env set fw_addr ${loadaddr} && env set fw_size ${filesize}' 2. In your code, call the new API: void *fw_buf = NULL; int ret = request_firmware_into_buf_via_script(&fw_buf, 0x46000000, "my_fw_script"); if (ret < 0) return ret; This approach allows board integrators and users to customize the firmware loading process without modifying the source code, simply by changing the script in the U-Boot environment. Signed-off-by: Lucien.Jheng <[email protected]> Reviewed-by: Marek Vasut <[email protected]> [trini: Fix printf of size_t needing to use %zx] Signed-off-by: Tom Rini <[email protected]>
2025-08-25Merge tag 'v2025.10-rc3' into nextTom Rini
Prepare v2025.10-rc3
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-15timer: fttmr010_timer: Remove unused driverTom Rini
This driver is unused. Remove it. Signed-off-by: Tom Rini <[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-11Merge patch series "arch: arm: dts: k3-am625-phyboard-lyra: Disable unused ↵Tom Rini
watchdogs in U-Boot" This series from Wadim Egorov <[email protected]> cleans up how watchdogs are handled on some phytec TI K3 platforms. Link: https://lore.kernel.org/r/[email protected]
2025-08-11include: env: phytec: k3: Add deprecation warning to legacy boot flowWadim Egorov
We switched towards standard boot with still keeping a fallback using legacy boot command alive. Add a deprecation warning to make it more clear that we will remove it in future versions. Signed-off-by: Wadim Egorov <[email protected]>
2025-08-11board: phytec: phycore-am62x: Add watchdog start to bootcmdWadim Egorov
Allows run-time control over watchdog auto-start and the timeout via setting the environment variable watchdog_timeout_ms. A value of zero means "do not start". Use CONFIG_WATCHDOG_TIMEOUT_MSECS as initial value. Users can enable the watchdog to monitor the boot process until userspace or OS takes over to serve the watchdog. Signed-off-by: Wadim Egorov <[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]>