summaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2025-08-08arch: arm: mach-socfpga: Add Agilex7 M-series mach-socfgpa enablementTingting Meng
Add platform related files 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-08arch: arm: dts: Basic device tree support added for Agilex7 M-seriesTingting Meng
Agilex7 M-series support has been added using upstream Linux DTS. socfpga_agilex_socdk-u-boot.dtsi was updated to support both Agilex and Agilex7 M-series platforms. Signed-off-by: Tingting Meng <[email protected]> Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-08-08arch: arm: dts: agilex: Switch to using upstream Linux DT configTingting Meng
Migrate the legacy Agilex platform to use the upstream Linux device tree configuration. This helps reduce maintenance overhead and aligns U-Boot with the Linux kernel's DTS hierarchy and naming conventions. This change improves consistency between U-Boot and Linux by removing custom/legacy DTS handling and instead relying on the standardized definitions provided by the upstream Linux DTS. Signed-off-by: Tingting Meng <[email protected]> Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-08-08arch: arm: agilex: Clean up DT settings in U-Boot dtsi filesTingting Meng
Reorganize misplaced properties by moving board-common settings from socfpga_agilex_socdk-u-boot.dtsi to socfpga_agilex-u-boot.dtsi to maintain proper separation between common and board-level configurations. 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-08arm: socfpga: misc: Exclude Agilex from clock manager base address retrievalAlif Zakuan Yuslaimi
Agilex retrieves its clock manager address via probing its own clock driver model during the SPL initialization. Therefore, excluding Agilex from calling its clock driver in misc driver to retrieve the clock manager address. Once all SoC64 devices has been successfully transition to clock driver model method, this implementation will be cleaned up. Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-08-08ddr: altera: agilex: Get ACF from boot scratch registerAlif Zakuan Yuslaimi
The DDR data rate must be set correctly in the DDRIOCTRL register according to the Actual Clock Frequency (ACF) value. By enabling the reading of ACF value from bit 18 of the boot scratch register during initialization, the DDR data rate is able to be configured accurately. Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-08-08arm: socfpga: Define the usage of boot scratch cold reg 8Alif Zakuan Yuslaimi
The boot scratch cold reg 8 is shared between DBE, DDR init progress update and Linux EDAC. This patch defines how the bits are used by respective features above and their macro names used in U-Boot. Signed-off-by: Tien Fong Chee <[email protected]> Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-08-08arm: socfpga: agilex: Enable system manager driver for AgilexAlif Zakuan Yuslaimi
The base address of system manager can be retrieved using DT framework through the system manager driver. Enable system manager support for Agilex by probing the system manager driver to initialize during SPL boot up. Signed-off-by: Boon Khai Ng <[email protected]> Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-08-08arm: socfpga: agilex5: Refactor system manager driver initializationAlif Zakuan Yuslaimi
Refactor system manager initialization by searching for system manager alias in Agilex5 device tree instead of manually passing node name to the device model calling function Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-08-08drivers: watchdog: Enable watchdog support in SPL for AgilexAlif Zakuan Yuslaimi
Enable watchdog as early as possible after clock initialization which is set at 10 seconds. Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-08-08arm: socfpga: Enable ASYNC interrupts in Agilex SPLTien Fong Chee
Asynchronous aborts were previously masked at SPL entry. To ensure early detection of system errors such as ECC faults or bus errors, asynchronous aborts should be explicitly unmasked by clearing the A-bit in the DAIF register during Agilex SPL initialization. Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]> # Conflicts: # arch/arm/mach-socfpga/spl_agilex.c
2025-08-08arm: socfpga: Update Agilex SPL data save and restore implementationAlif Zakuan Yuslaimi
Enable backup for data section to support warm reset in Agilex SPL as no SPL image would be reloaded in warm reset. Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-08-08imx9: soc: Reuse and export low_drive_freq_update()Primoz Fiser
Reuse and export low_drive_freq_update() function. This way global imx9 board_fix_fdt() doesn't duplicate code. While low_drive_freq_update() can be reused on boards such as phyCORE-i.MX93 (TARGET_PHYCORE_IMX93) which is not using the global imx9 board_fix_fdt() implementation. While at it, make printout logic less verbose by only outputting on the error condition and not on each successful clock fixup. Also drop now invalid comment (low_drive_freq_update() now does fixup for internal and kernel device-tree). Signed-off-by: Primoz Fiser <[email protected]>
2025-08-08arm: socfpga: agilex: Probe DT for firewall setupAlif Zakuan Yuslaimi
Update Agilex SPL code to implement device tree model for firewall registers setup by using DTreg driver to probe from device tree for the firewall settings instead of calling firewall driver function. Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-08-08arch: arm: dts: agilex: Update Agilex device treeAlif Zakuan Yuslaimi
Update exisitng Agilex device tree to support multiple flashes boot - MMC, QSPI and NAND. Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-08-07Merge patch series "arm: dts: k3-am62a: remove GP security variant for AM62A"Tom Rini
Bryan Brattlof <[email protected]> says: The AM62Ax was created right when TI was shifting to their high security (HS-FS and HS-SE) processes. During this transition a small subset of AM62A parts where configured to use the old "GP" security for internal and for select groups of partners but never sold for the wider public. To help simplify the build and to avoid any confusion of which security configurations are supported going forward remove the GP builds for the AM62A SoCs. Link: https://lore.kernel.org/r/[email protected]
2025-08-07arm: dts: k3-am62a-phycore: remove GP tiboot3 buildsBryan Brattlof
The AM62Ax SoC family was the last part from TI to support the GP security variant, however this security variant was used mostly internally and with select early partners and never sold publicly. To simplify things and to avoid any confusion on which parts are supported in the future, remove the GP tiboo3.bin builds from binman. Signed-off-by: Bryan Brattlof <[email protected]> Reviewed-by: Neha Malcom Francis <[email protected]> Acked-by: Wadim Egorov <[email protected]>
2025-08-07arm: dts: k3-am62a-sk: remove GP tiboot3 buildsBryan Brattlof
The AM62Ax SoC family was the last part from TI to support the GP security variant, however this security variant was used mostly internally and with select early partners and never sold publicly. To simplify things and to avoid any confusion of which parts are supported in the future, remove the GP tiboot3.bin builds from binman. Signed-off-by: Bryan Brattlof <[email protected]> Reviewed-by: Neha Malcom Francis <[email protected]>
2025-08-07dts: imx8m{m,n,p,q}: Make optee packaging optionalYannic Moog
binman can omit packaging an optional blob when it is missing. This allows us to not bother with config options. The core challenge is the interaction between tf-a and OP-TEE where U-Boot/binman does not know whether tf-a was built with SPD=opteed or without. This is important because tf-a might jump into the void when no optee_os is present, leading to boot failure. Thus by marking it optional, user is prompted to recheck (due to the warning message) whether they really have the right combination of tf-a and optee. Due to a bug in binman, we had to guard binman tee.bin with OPTEE config as builds would error when tee.bin was not present in path; Even though optee_os was marked as optional in the binman tree. Since the bug has been resolved in commit d4f61eae2ab7 ("Merge patch series "Fix handling of optional blobs in binman"") we can mark it optional again without getting build errors. Note that after this commit a warning will be printed when optee is not present for a binman build. Image 'image' is missing optional external blobs but is still functional: tee-os /binman/section/fit/images/tee/tee-os (tee.bin): See the documentation for your board. You may need to build Open Portable Trusted Execution Environment (OP-TEE) and build with TEE=/path/to/tee.bin Signed-off-by: Yannic Moog <[email protected]>
2025-08-07imx8m: clock: Correct imx8mm_fracpll_tblPeng Fan
The minimum frequency of Fref (Fin / p) is 6MHz for the PLL AC Electrical Characteristics. Setting p with 9 or 8 voilates the Spec. Update the settings to match Spec. Signed-off-by: Peng Fan <[email protected]>
2025-08-06drivers: i3c: Add i3c sandbox simple test.Dinesh Maniyam
Add s simple test for the I3C uclass in sandbox. Signed-off-by: Dinesh Maniyam <[email protected]>
2025-08-04Merge branch 'u-boot-nand-03082025' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-nand-flash CI: https://source.denx.de/u-boot/custodians/u-boot-nand-flash/-/pipelines/27258 This series address issues found by Andrew Goodbody and mostly drop driver that are not used by any board
2025-08-04Merge branch 'staging' of https://source.denx.de/u-boot/custodians/u-boot-tegraTom Rini
- Pegatron Chagall, Samsung Galaxy R (GT-I9103) and Captivate Glide (SGH-i927) support
2025-08-03mtd: nand: raw: Remove unused lpc32xx_nand_slc driverTom Rini
As no platforms use this driver anymore let's go ahead and remove it. Signed-off-by: Tom Rini <[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-01board: samsung: add Samsung Galaxy R (GT-I9103) and Captivate Glide ↵Ion Agorria
(SGH-i927) support The Galaxy R (GT-I9103) and Captivate Glide (SGH-i927) are both Tegra 2 based Samsung smartphones released in 2011. They both feature 1 GB of RAM and 8 GB of expandable flash memory. The key difference is that the Captivate Glide has an OLED panel (contrary to LCD in Galaxy R) and a QWERTY keyboard in form factor of a slider. Signed-off-by: Ion Agorria <[email protected]> Reviewed-by: Svyatoslav Ryhel <[email protected]> Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-08-01video: tegra: parametrize PCLK and DE polaritySvyatoslav Ryhel
Configure pixel clock and data enable polarity according to panel flags. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-08-01board: chagall: add Pegatron Chagall supportSvyatoslav Ryhel
The Pegatron Chagall (originally built by Pegatron, but later rebranded by other vendors under names Fujitsu Stylistic M532, Olivetti Olipad 3, Siragon 4N, Realpad Bunaken, DNS AirTab P110w / P110g etc) is a mostly business-oriented tablet sold in 2012 in different variants, mostly in Europe, with slight differences in storage size (16GB/32GB) and presence of built-in cellular modem. Tested-by: Raffaele Tranquillini <[email protected]> Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-08-01ARM: tegra: Use AES engine for crypto functionsIon Agorria
Previously software based AES encryption was used with previously known device specific keys (SBK), now that we have AES driver we can simply delegate this to the engine without prior knowledge of the key (assuming it is still loaded). Signed-off-by: Ion Agorria <[email protected]>
2025-08-01ARM: tegra: Enable BSEV for devices that use CMD_EBTUPDATEIon Agorria
Enable BSEV for devices that support u-boot self-upgrading feature. Signed-off-by: Ion Agorria <[email protected]>
2025-08-01ARM: tegra: Add BSE bindingsIon Agorria
Add device tree nodes for BSEA and BSEV devices on Tegra20 and Tegra30. Signed-off-by: Ion Agorria <[email protected]>
2025-08-01ARM: tegra: Add LP0 support for ODM productionIon Agorria
Now that we have working AES engine driver we can request the warmboot code to be encrypted and signed with SBK if the device requires so. This unlocks LP0 support for most devices in the wild as they use ODM Production Secure. We are not aware of any "ODM Production Open" device nor have access to thus this has not been tested on one, merely added for completeness. Signed-off-by: Ion Agorria <[email protected]>
2025-08-01crypto: tegra: Add Tegra AES engine driverIon Agorria
This driver allows using Tegra AES engines within BSEV and BSEA blocks to encrypt and decrypt data using different AES algorithms. One use case is allowing u-boot to self update by using the already loaded AES key in the engine's SBK slot by the bootrom. Particular care must be taken as chainloaded u-boot's may not have the SBK slot loaded as the vendor bootloader erases it before leaving it. Signed-off-by: Ion Agorria <[email protected]>
2025-08-01ARM: tegra: Relocate fuse code from warmboot fileIon Agorria
Move a set of helpers used in warmboot code to more appropriate AP and FUSE locations. Signed-off-by: Ion Agorria <[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-30Subtree merge tag 'v6.16-dts' of dts repo [1] into dts/upstreamTom Rini
[1] https://git.kernel.org/pub/scm/linux/kernel/git/devicetree/devicetree-rebasing.git Perform a few fixups in our dts* files to match upstream changes. Signed-off-by: Tom Rini <[email protected]>
2025-07-30arch: arm: agilex5: Enable power manager for Agilex5Alif Zakuan Yuslaimi
Agilex5 FSBL is required to disable the power of unused peripheral SRAM blocks to reduce power consumption. Introducing a new power manager driver for Agilex5 which will be called as part of Agilex5 SPL initialization process. This driver will read the peripheral handoff data obtained from the bitstream and will power off the specified peripheral's SRAM from the handoff data values. Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-07-30arm: socfpga: agilex5: Sub-device check enabled for runtime workaroundTingting Meng
Sub-device information is retrieved from the JTAG ID in Boot Scratch Cold 4 Register. This interface is introduced to allow device-specific errata workarounds to be applied in the future, based on the detected sub-device type. Signed-off-by: Tingting Meng <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-07-30arm: socfpga: agilex5: Coverity issue cleanup in jtag_usercode checkTingting Meng
A redundant comparison (jtag_usercode >= 0) was removed from the condition checking jtag_usercode. Since jtag_usercode is an unsigned integer, the check for non-negativity was always true. The code was simplified to resolve the Coverity warning. Signed-off-by: Tingting Meng <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-07-30dts: agilex5: Enabled nand boot in SPLDinesh Maniyam
Enable nand as one of the bootable media in SPL. Signed-off-by: Dinesh Maniyam <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-07-30arm: socfpga: n5x: Remove invalid configuration for N5XNaresh Kumar Ravulapalli
This configuration is not valid for N5X; removing it. Signed-off-by: Naresh Kumar Ravulapalli <[email protected]> Signed-off-by: Tien Fong Chee <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-07-30arch: arm: socfpga: Include BSD-3-Clause as license identifierNaresh Kumar Ravulapalli
All the source code of secure_vab.c and secure_vab.h are from Intel and Altera. Updating the license to use either GPL-2.0 or BSD-3-Clause because this copy of code may be used for open source and internal project. Signed-off-by: Naresh Kumar Ravulapalli <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-07-30arch: arm: socfpga: Fix header file includesNaresh Kumar Ravulapalli
Appropriate header files are included according to U-Boot coding style. Signed-off-by: Tien Fong Chee <[email protected]> Signed-off-by: Naresh Kumar Ravulapalli <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-07-30arch: arm: dts: agilex5: Set spi-max-freq to 50MhzDinesh Maniyam
This patch is to set spi-max-freq to 50Mhz. This will add support to the driver to set the operation speed according to the slave device up to 50Mhz. Without this node, the driver just can adjust the operation speed to the default speed which is far below the best operation speed of the SPI slave device. Signed-off-by: Dinesh Maniyam <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2025-07-29treewide: Fix STMicroelectronics spellingPatrice Chotard
Fix STMicroelectronics spelling in comments. Signed-off-by: Patrice Chotard <[email protected]>
2025-07-29ARM: stm32: fix PRE_CON_BUF_ADDR on STM32MP13Patrick Delaunay
Since SYS_MALLOC_F_LEN increasing to 0x2100000 on STM32MP13, the pre-console buffer is overlapped by stack (0xC0400000 + 0x2100000), so the this buffer must be moved just before the bootstage to avoid issue. After this patch the pre-relocation memory mapping for STM32MP13x is: C3000000 = Bootstage CONFIG_BOOTSTAGE_STASH_ADDR C2FFF000 = PreConsole CONFIG_PRE_CON_BUF_ADDR with size CONFIG_PRE_CON_BUF_SZ = 4096 C0400000 = start for stack with CONFIG_CUSTOM_SYS_INIT_SP_ADDR including CONFIG_SYS_MALLOC_F_LEN C0000000 = Load Address of U-Boot with CONFIG_TEXT_BASE Fixes: 93c962c7af7e ("configs: stm32mp13: increase SYS_MALLOC_F_LEN to 0x210000") Signed-off-by: Patrick Delaunay <[email protected]> Signed-off-by: Patrice Chotard <[email protected]>
2025-07-29arm: stm32mp: replace space by tab in sys_proto.hPatrice Chotard
Cosmetic update to replace space by tab in sys_proto.h Signed-off-by: Patrice Chotard <[email protected]>