Dear Tom, This pull request introduces initial U-Boot support for Agilex7 M-series, along with several enhancements and cleanups across existing Agilex platforms. Key changes include new board support, DDR driver additions, updated device trees, and broader SoCFPGA SPL improvements. Highlights:
* Agilex7 M-series bring-up: * Basic DT support and board initialization for Agilex7 M-series SoC and SoCDK. * New sdram_agilex7m DDR driver with UIBSSM mailbox support and HBM support. * Clock driver support for Agilex7 M-series. * New defconfig: socfpga_agilex7m_defconfig. * Agilex and Agilex5 enhancements: * Improved SPL support: ASYNC interrupt enabling, system manager init refactor, and cold scratch register usage. * Updated firewall probing and watchdog support in SPL. * Cleaned up DDR code, added secure region support for ATF, and improved warm reset handling. * Device Tree and config updates: * Migration to upstream Linux DT layout for Agilex platforms. * Consolidated socfpga_agilex_defconfig and removed deprecated configs. * Platform-specific environment variables for Distro Boot added. * Driver fixes and cleanups: * dwc_eth_xgmac and clk-agilex cleanup and improvements. * Several coverity and style fixes. Contributions in this PR are from Alif Zakuan Yuslaimi, Tingting Meng, and Andrew Goodbody. This patch set has been tested on Agilex 5 devkit, Agilex devkit and Agilex7m devkit. Passing all pipeline tests at SoCFPGA U-boot custodian https://source.denx.de/u-boot/custodians/u-boot-socfpga/-/pipelines/27318 Thanks. Best regards, Tien Fong The following changes since commit 3526f990b77fca1c933f1d8b24eb9385010a05bf: Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh (2025-08-06 16:07:17 -0600) are available in the Git repository at: https://source.denx.de/u-boot/custodians/u-boot-socfpga.git tags/u-boot-socfpga-next-20250808 for you to fetch changes up to 8eecbaf957191b159176e92175121db907c480b2: configs: Add defconfig for Agilex7 M-series (2025-08-08 22:20:55 +0800) ---------------------------------------------------------------- Alif Zakuan Yuslaimi (17): drivers: clk: agilex: Use real clock source frequency configs: agilex: Combine defconfig for all boot flashes arch: arm: dts: agilex: Update Agilex device tree arm: socfpga: agilex: Probe DT for firewall setup arm: socfpga: Update Agilex SPL data save and restore implementation drivers: watchdog: Enable watchdog support in SPL for Agilex drivers: clk: agilex: Replace status polling with wait_for_bit_le32() arm: socfpga: agilex5: Refactor system manager driver initialization arm: socfpga: agilex: Enable system manager driver for Agilex ddr: altera: soc64: Add secure region support for ATF flow ddr: altera: agilex: Remove code redundancy arm: socfpga: Define the usage of boot scratch cold reg 8 ddr: altera: agilex: Get ACF from boot scratch register include: configs: socfpga: Add environment variables for distro boot arm: socfpga: misc: Exclude Agilex from clock manager base address retrieval sysreset: socfpga: soc64: Enable L2 reset arm: socfpga: soc64: Perform warm reset after L2 reset in SPL Andrew Goodbody (2): net: dwc_eth_xgmac: Use unwind goto on error net: dwc_eth_xgmac_socfpga: Remove always true test Tien Fong Chee (1): arm: socfpga: Enable ASYNC interrupts in Agilex SPL Tingting Meng (16): arch: arm: agilex: Clean up DT settings in U-Boot dtsi files arch: arm: dts: agilex: Switch to using upstream Linux DT config arch: arm: dts: Basic device tree support added for Agilex7 M-series arch: arm: mach-socfpga: Add Agilex7 M-series mach-socfgpa enablement arch: arm: mach-socfpga: Improve help info. arch: arm: mach-socfpga: Update handoff settings for Agilex7 M-series include: configs: Add config header file for Agilex7 M-series include: configs: soc64: Use CONFIG_SPL_ATF to differentiate bootfile clk: altera: Add clock support for Agilex7 M-series ddr: altera: Add uibssm mailbox support for Agilex7 M-series with HBM ddr: altera: Add DDR driver for Agilex7 M-series ddr: altera: soc64: Clean up bit-shift by zero bit ddr: altera: soc64: Fix dram size calculation in clamshell mode arch: arm: mach-socfpga: Update kconfig for new platform Agilex7 M-series arch: arm: dts: Update Makefile for new platform Agilex7 M-series configs: Add defconfig for Agilex7 M-series MAINTAINERS | 7 +- arch/arm/Kconfig | 7 +- arch/arm/dts/Makefile | 1 - arch/arm/dts/socfpga_agilex-u-boot.dtsi | 178 +++++++++- arch/arm/dts/socfpga_agilex.dtsi | 624 ---------------------------------- arch/arm/dts/socfpga_agilex5.dtsi | 4 + arch/arm/dts/socfpga_agilex_socdk-u-boot.dtsi | 170 +++++++-- arch/arm/dts/socfpga_agilex_socdk.dts | 141 -------- arch/arm/dts/socfpga_soc64_u-boot.dtsi | 163 +++++++++ arch/arm/mach-socfpga/Kconfig | 19 ++ arch/arm/mach-socfpga/Makefile | 20 ++ arch/arm/mach-socfpga/include/mach/base_addr_soc64.h | 6 +- arch/arm/mach-socfpga/include/mach/clock_manager.h | 4 +- arch/arm/mach-socfpga/include/mach/handoff_soc64.h | 14 +- arch/arm/mach-socfpga/include/mach/misc.h | 5 +- arch/arm/mach-socfpga/include/mach/system_manager_soc64.h | 21 ++ arch/arm/mach-socfpga/lowlevel_init_soc64.S | 95 ++++++ arch/arm/mach-socfpga/misc.c | 27 +- arch/arm/mach-socfpga/spl_agilex.c | 46 ++- arch/arm/mach-socfpga/spl_agilex5.c | 2 +- arch/arm/mach-socfpga/spl_agilex7m.c | 106 ++++++ board/intel/agilex-socdk/Makefile | 7 + board/intel/agilex-socdk/socfpga.c | 12 + board/intel/agilex5-socdk/socfpga.c | 2 +- board/intel/agilex7m-socdk/MAINTAINERS | 10 + board/intel/agilex7m-socdk/Makefile | 7 + board/intel/agilex7m-socdk/socfpga.c | 12 + configs/socfpga_agilex7m_defconfig | 19 ++ configs/socfpga_agilex_atf_defconfig | 93 ----- configs/socfpga_agilex_defconfig | 68 ++-- configs/socfpga_agilex_vab_defconfig | 3 +- drivers/clk/altera/Makefile | 1 + drivers/clk/altera/clk-agilex.c | 37 +- drivers/clk/altera/clk-agilex.h | 2 + drivers/ddr/altera/Makefile | 1 + drivers/ddr/altera/sdram_agilex.c | 34 +- drivers/ddr/altera/sdram_agilex7m.c | 500 +++++++++++++++++++++++++++ drivers/ddr/altera/sdram_soc64.c | 21 +- drivers/ddr/altera/sdram_soc64.h | 82 +++-- drivers/ddr/altera/uibssm_mailbox.c | 321 +++++++++++++++++ drivers/ddr/altera/uibssm_mailbox.h | 116 +++++++ drivers/net/dwc_eth_xgmac.c | 2 +- drivers/net/dwc_eth_xgmac_socfpga.c | 8 +- drivers/sysreset/sysreset_socfpga_soc64.c | 63 +++- drivers/watchdog/Kconfig | 2 +- include/configs/socfpga_agilex7m_socdk.h | 12 + include/configs/socfpga_soc64_common.h | 22 ++ 47 files changed, 2113 insertions(+), 1004 deletions(-) delete mode 100644 arch/arm/dts/socfpga_agilex.dtsi delete mode 100644 arch/arm/dts/socfpga_agilex_socdk.dts create mode 100644 arch/arm/dts/socfpga_soc64_u-boot.dtsi create mode 100644 arch/arm/mach-socfpga/spl_agilex7m.c create mode 100644 board/intel/agilex-socdk/Makefile create mode 100644 board/intel/agilex-socdk/socfpga.c create mode 100644 board/intel/agilex7m-socdk/MAINTAINERS create mode 100644 board/intel/agilex7m-socdk/Makefile create mode 100644 board/intel/agilex7m-socdk/socfpga.c create mode 100644 configs/socfpga_agilex7m_defconfig delete mode 100644 configs/socfpga_agilex_atf_defconfig create mode 100644 drivers/ddr/altera/sdram_agilex7m.c create mode 100644 drivers/ddr/altera/uibssm_mailbox.c create mode 100644 drivers/ddr/altera/uibssm_mailbox.h create mode 100644 include/configs/socfpga_agilex7m_socdk.h