[PATCH 00/18] arm64: xilinx: Decouple firmware interface

Michal Simek michal.simek at amd.com
Tue Jun 23 14:53:25 CEST 2026


Hi,

firmware calls are spread across board functions and even drivers.
It shouldn't be like that and it is time to clean it up. Pretty much board
or drivers shouldn't really have zynqmp_firmware.h included. Generic
functions should be called which have MMIO version or firmware version when
firmware is enabled. This is the first set of patches to achieve this goal.

Thanks,
Michal


Michal Simek (18):
  arm: xilinx: Guard mach sys_proto.h against multiple inclusion
  arm64: versal2: Decouple multiboot register access from firmware
  arm64: versal2: Move bootmode decoding out of board code
  arm64: versal: Decouple multiboot register access from firmware
  arm64: versal: Move bootmode decoding out of board code
  arm64: versal: Move board_early_init_r clock setup to mach code
  arm64: versal2: Move board_early_init_r clock setup to mach code
  arm64: versal-net: Move board_early_init_r clock setup to mach code
  arm64: zynqmp: Move board_early_init_r clock setup to mach code
  arm64: versal2: Move SoC detection out of board code
  arm64: versal-net: Move SoC detection out of board code
  arm64: versal-net: Move bootmode decoding out of board code
  arm64: zynqmp: Decouple MMIO accessors from firmware
  arm64: versal-net: Deduplicate SPI bootmode handling
  arm64: versal-net: Simplify spi_get_bootseq() bootmode switch
  arm64: versal-net: Do not print bootmode from spi_get_env_dev()
  arm64: versal-net: Look up eMMC device in boot_targets_setup()
  arm64: versal-net: Add mmc_get_env_dev() and deduplicate MMC handling

 arch/arm/mach-versal-net/cpu.c                | 149 +++++++++
 .../mach-versal-net/include/mach/sys_proto.h  |   6 +
 arch/arm/mach-versal/cpu.c                    |  68 ++++
 arch/arm/mach-versal/include/mach/sys_proto.h |  16 +
 arch/arm/mach-versal2/cpu.c                   | 143 +++++++++
 .../arm/mach-versal2/include/mach/sys_proto.h |  14 +
 arch/arm/mach-zynqmp/cpu.c                    |  69 ++--
 arch/arm/mach-zynqmp/include/mach/sys_proto.h |   5 +
 board/amd/versal2/board.c                     | 133 +-------
 board/xilinx/versal-net/board.c               | 295 +++++-------------
 board/xilinx/versal/board.c                   |  66 +---
 board/xilinx/zynqmp/zynqmp.c                  |  18 +-
 drivers/firmware/firmware-zynqmp.c            |  89 ++++++
 13 files changed, 606 insertions(+), 465 deletions(-)

---
base-commit: e01bb5b8ad09464b8cbf9c4186683e998c2d40fe

-- 
2.43.0



More information about the U-Boot mailing list