This series adds basic support for the Altera Agilex5 SoCFPGA series. Currently only booting from QSPI is supported. Flashing the image to the QSPI has to be done with quartus_pgm, therefore there are still some essential things left to have proper support for this platform.
Nevertheless it boots from QSPI and starts linux on the included Arrow AXE5 board. Signed-off-by: Steffen Trumtrar <s.trumt...@pengutronix.de> --- Changes in v4: - add commit hash and url for origin of agilex5 code - cleanup xstrdup/xzalloc/kzalloc usage - agilex5 clock support - dev_get_resource -> dev_request_mem_resource - core_initcall -> core_platform_driver - minor cleanups - xgmac - return proper error code in xgmac_read_rom_hwaddr - don't use DMA_DEVICE_BROKEN in dma_alloc_coherent - unmap before free - Link to v3: https://lore.barebox.org/20250623-v2024-10-0-topic-socfpga-agilex5-v3-0-e9de9e31b...@pengutronix.de Changes in v3: - use phydev_dbg in adin.c - cleanup debugging leftovers in clk driver - xgmac: fixup edev to priv conversion - xgmac: code cleanup - xgmac: switch to gpiod API - fix uart setup; didn't work without DEBUG_LL - Link to v2: https://lore.barebox.org/20250218-v2024-10-0-topic-socfpga-agilex5-v2-0-30b6f5078...@pengutronix.de Changes in v2: - reorder patches - rebase to v2025.01.0 - rework xgmac to use correct DMA buffers - fix variable/functions scopes by adding name prefixes - add pr_fmt where necessary - axe5: board: convert from postcore_initcall to device_platform_driver - Link to v1: https://lore.barebox.org/20241029-v2024-10-0-topic-socfpga-agilex5-v1-0-96df2d7da...@pengutronix.de --- Steffen Trumtrar (10): ARM: socfpga: kconfig: sort entries mach: socfpga: debug_ll: rework putc_ll reset: reset-socfpga: build only for 32-bit socfpga arm: socfgpa: add support for SoCFPGA Agilex5 clk: support init->parent_data linux: clk: add fw_name clk: socfpga: add agilex5 clock support net: phy: add Analog Devices ADIN1300 net: add support for Designware XGMAC (10gb) ethernet ARM: socfpga: add Arrow AXE5 Agilex5 board arch/arm/Kconfig | 3 - arch/arm/boards/Makefile | 1 + arch/arm/boards/arrow-axe5-eagle/Makefile | 3 + arch/arm/boards/arrow-axe5-eagle/board.c | 24 + arch/arm/boards/arrow-axe5-eagle/lowlevel.c | 83 +++ arch/arm/configs/socfpga-agilex5_defconfig | 81 +++ arch/arm/dts/Makefile | 1 + arch/arm/dts/socfpga_agilex5.dtsi | 51 ++ arch/arm/dts/socfpga_agilex5_axe5_eagle.dts | 92 +++ arch/arm/mach-socfpga/Kconfig | 57 +- arch/arm/mach-socfpga/Makefile | 13 + arch/arm/mach-socfpga/agilex5-clock-manager.c | 383 ++++++++++++ arch/arm/mach-socfpga/agilex5-sdram.c | 347 +++++++++++ arch/arm/mach-socfpga/agilex5-secreg.c | 289 +++++++++ arch/arm/mach-socfpga/arria10-init.c | 2 +- arch/arm/mach-socfpga/atf.c | 34 ++ arch/arm/mach-socfpga/cpu_init.c | 43 ++ arch/arm/mach-socfpga/cyclone5-init.c | 2 +- arch/arm/mach-socfpga/iossm_mailbox.c | 511 ++++++++++++++++ arch/arm/mach-socfpga/iossm_mailbox.h | 157 +++++ arch/arm/mach-socfpga/mailbox_s10.c | 347 +++++++++++ arch/arm/mach-socfpga/secure_reg_helper.c | 75 +++ arch/arm/mach-socfpga/smc_api.c | 43 ++ arch/arm/mach-socfpga/soc64-system-manager.c | 102 ++++ arch/arm/mach-socfpga/soc64-wrap-handoff.c | 124 ++++ common/Kconfig.debug_ll | 17 + drivers/clk/clk.c | 49 +- drivers/clk/socfpga/Makefile | 4 +- drivers/clk/socfpga/clk-agilex5.c | 829 +++++++++++++++++++++++++ drivers/clk/socfpga/clk-gate-s10.c | 178 ++++++ drivers/clk/socfpga/clk-periph-s10.c | 157 +++++ drivers/clk/socfpga/clk-pll-s10.c | 137 +++++ drivers/clk/socfpga/clk.h | 9 + drivers/clk/socfpga/stratix10-clk.h | 73 +++ drivers/net/Kconfig | 18 + drivers/net/Makefile | 2 + drivers/net/designware_xgmac.c | 837 ++++++++++++++++++++++++++ drivers/net/designware_xgmac.h | 296 +++++++++ drivers/net/designware_xgmac_socfpga.c | 156 +++++ drivers/net/phy/Kconfig | 7 + drivers/net/phy/Makefile | 1 + drivers/net/phy/adin.c | 362 +++++++++++ drivers/reset/Kconfig | 6 + drivers/reset/Makefile | 2 +- firmware/Kconfig | 3 + firmware/Makefile | 1 + images/Makefile.socfpga | 17 + include/linux/clk.h | 2 + include/mach/socfpga/agilex5-clk.h | 266 ++++++++ include/mach/socfpga/atf.h | 14 + include/mach/socfpga/debug_ll.h | 44 +- include/mach/socfpga/generic.h | 3 + include/mach/socfpga/init.h | 2 + include/mach/socfpga/intel-smc.h | 545 +++++++++++++++++ include/mach/socfpga/mailbox_s10.h | 191 ++++++ include/mach/socfpga/secure_reg_helper.h | 19 + include/mach/socfpga/smc_api.h | 12 + include/mach/socfpga/soc64-firewall.h | 177 ++++++ include/mach/socfpga/soc64-handoff.h | 50 ++ include/mach/socfpga/soc64-regs.h | 195 ++++++ include/mach/socfpga/soc64-reset-manager.h | 40 ++ include/mach/socfpga/soc64-sdram.h | 203 +++++++ include/mach/socfpga/soc64-system-manager.h | 176 ++++++ 63 files changed, 7929 insertions(+), 39 deletions(-) --- base-commit: 89bf1fcc998fc5fea0ce613d9930dd9ee39c0fb2 change-id: 20241029-v2024-10-0-topic-socfpga-agilex5-c087bbc7d774 Best regards, -- Steffen Trumtrar <s.trumt...@pengutronix.de>