@@ -2341,6 +2341,7 @@ F: board/versal/
F: board/xilinx/
F: board/zynq/
F: board/zynqmp/
+F: boot/versal-pdi/
F: boot/xilinx-prebuilt/
F: boot/xilinx-source/
F: configs/versal_vck190_defconfig
@@ -20,6 +20,7 @@ source "boot/syslinux/Config.in"
source "boot/ti-k3-boot-firmware/Config.in"
source "boot/ti-k3-r5-loader/Config.in"
source "boot/uboot/Config.in"
+source "boot/versal-pdi/Config.in"
source "boot/vexpress-firmware/Config.in"
source "boot/xilinx-prebuilt/Config.in"
source "boot/xilinx-source/Config.in"
new file mode 100644
@@ -0,0 +1,20 @@
+config BR2_TARGET_VERSAL_PDI
+ bool "versal-pdi"
+ depends on BR2_aarch64
+ depends on BR2_TARGET_XILINX_SOURCE_VERSAL
+ help
+ Pre-built versal PDI file generated by Xilinx Vivado.
+ Depends on xilinx-source package for building microblaze firmware.
+
+ https://github.com/Xilinx/soc-prebuilt-firmware
+
+if BR2_TARGET_VERSAL_PDI
+
+config BR2_TARGET_VERSAL_PDI_BOARD
+ string "board name"
+ default "vck190"
+ help
+ Name of versal target board.
+ Used for installing the appropriate PDI file.
+
+endif # BR2_TARGET_VERSAL_PDI
new file mode 100644
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256 7abcba4e0e44e3a4adf9c1f971d918575226d7604dfd64a386baaa00c1c6c35f versal-pdi-xilinx_v2024.1.tar.gz
new file mode 100644
@@ -0,0 +1,25 @@
+################################################################################
+#
+# versal-pdi
+#
+################################################################################
+
+VERSAL_PDI_VERSION = $(call qstrip,$(BR2_TARGET_XILINX_SOURCE_VERSION))
+VERSAL_PDI_SITE = $(call github,Xilinx,soc-prebuilt-firmware,$(VERSAL_PDI_VERSION))
+VERSAL_PDI_LICENSE = MIT
+VERSAL_PDI_LICENSE_FILES = LICENSE
+VERSAL_PDI_INSTALL_TARGET = NO
+VERSAL_PDI_INSTALL_IMAGES = YES
+
+VERSAL_PDI_BOARD = $(call qstrip,$(BR2_TARGET_VERSAL_PDI_BOARD))
+VERSAL_PDI_BOARD_DIR = $(@D)/$(VERSAL_PDI_BOARD)-versal
+
+# We need the *.pdi glob, because the file has different names for the
+# different boards, but there is only one, and it has to be named
+# vpl_gen_fixed.pdi when installed.
+define VERSAL_PDI_INSTALL_IMAGES_CMDS
+ $(INSTALL) -D -m 0755 $(VERSAL_PDI_BOARD_DIR)/*.pdi \
+ $(BINARIES_DIR)/vpl_gen_fixed.pdi
+endef
+
+$(eval $(generic-package))
This patch adds a new boot package for downloading a Xilinx Vivado generated PDI file to be used with the xilinx-source package when building microblaze boot firmware for versal targets. Signed-off-by: Neal Frager <neal.frager@amd.com> --- V4: - new package added starting with v4 --- DEVELOPERS | 1 + boot/Config.in | 1 + boot/versal-pdi/Config.in | 20 ++++++++++++++++++++ boot/versal-pdi/versal-pdi.hash | 2 ++ boot/versal-pdi/versal-pdi.mk | 25 +++++++++++++++++++++++++ 5 files changed, 49 insertions(+) create mode 100644 boot/versal-pdi/Config.in create mode 100644 boot/versal-pdi/versal-pdi.hash create mode 100644 boot/versal-pdi/versal-pdi.mk