[Buildroot] [PATCH v1 1/3] add package/versal-firmware

Frager, Neal neal.frager at amd.com
Wed Nov 2 16:11:18 UTC 2022


Hello everyone,

Just a friendly reminder for feedback regarding the versal patch set.  Thank you!

---
This patch adds support for downloading versal microblaze firmware binaries.
These are necessary for booting Xilinx versal devices.

The location of these binaries is temporary, and will soon be added to the Xilinx firmware repository.  The temporary location is using the same free distribution license as the Xilinx firmware repository.

Once these files are available on the Xilinx repository, this package will be updated to the new location.

Signed-off-by: Neal Frager <neal.frager at amd.com>
---
 DEVELOPERS                                   |  1 +
 package/Config.in                            |  1 +
 package/versal-firmware/Config.in            | 22 ++++++++++++++++++
 package/versal-firmware/versal-firmware.hash |  3 +++
 package/versal-firmware/versal-firmware.mk   | 24 ++++++++++++++++++++
 5 files changed, 51 insertions(+)
 create mode 100644 package/versal-firmware/Config.in  create mode 100644 package/versal-firmware/versal-firmware.hash
 create mode 100644 package/versal-firmware/versal-firmware.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index c8183b2290..ed696f4cd0 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2176,6 +2176,7 @@ F:	configs/zynqmp_zcu102_defconfig
 F:	configs/zynqmp_zcu106_defconfig
 F:	configs/zynqmp_kria_kv260_defconfig
 F:	package/bootgen
+F:	package/versal-firmware
 
 N:	Nicola Di Lieto <nicola.dilieto at gmail.com>
 F:	package/uacme/
diff --git a/package/Config.in b/package/Config.in index e3a34d6e97..0abf233940 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -441,6 +441,7 @@ menu "Firmware"
 	source "package/sunxi-boards/Config.in"
 	source "package/ts4900-fpga/Config.in"
 	source "package/ux500-firmware/Config.in"
+	source "package/versal-firmware/Config.in"
 	source "package/wilc-firmware/Config.in"
 	source "package/wilink-bt-firmware/Config.in"
 	source "package/zd1211-firmware/Config.in"
diff --git a/package/versal-firmware/Config.in b/package/versal-firmware/Config.in
new file mode 100644
index 0000000000..e184ba1925
--- /dev/null
+++ b/package/versal-firmware/Config.in
@@ -0,0 +1,22 @@
+config BR2_PACKAGE_VERSAL_FIRMWARE
+	bool "versal-firmware"
+	depends on BR2_aarch64
+	help
+	  Pre-built firmware files for Xilinx Versal boards.
+
+	  https://github.com/nealfrager/buildroot-firmware
+
+if BR2_PACKAGE_VERSAL_FIRMWARE
+
+config BR2_PACKAGE_VERSAL_FIRMWARE_VERSION
+	string "versal firmware version"
+	help
+	  Release version of Versal firmware.
+
+config BR2_PACKAGE_VERSAL_FIRMWARE_BOARD
+	string "versal board name"
+	help
+	  Name of Versal target board.
+	  Used for installing the appropriate firmware boot.bin.
+
+endif # BR2_PACKAGE_VERSAL_FIRMWARE
diff --git a/package/versal-firmware/versal-firmware.hash b/package/versal-firmware/versal-firmware.hash
new file mode 100644
index 0000000000..7a8ea04c91
--- /dev/null
+++ b/package/versal-firmware/versal-firmware.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256  
+14c505cac0216637ab2d08590acffb4861446e480bdbf7417e699816048ab39b  
+versal-firmware-v2022.2.tar.gz
+sha256  
+f9796efcd98f47fb3e1d5d4c23e224613e91c70207b759a2087de368be50c315  
+LICENSE
diff --git a/package/versal-firmware/versal-firmware.mk b/package/versal-firmware/versal-firmware.mk
new file mode 100644
index 0000000000..35dfbaa512
--- /dev/null
+++ b/package/versal-firmware/versal-firmware.mk
@@ -0,0 +1,24 @@
+#######################################################################
+#########
+#
+# versal-firmware
+#
+#######################################################################
+#########
+
+VERSAL_FIRMWARE_VERSION = $(call 
+qstrip,$(BR2_PACKAGE_VERSAL_FIRMWARE_VERSION))
+VERSAL_FIRMWARE_SITE = $(call 
+github,nealfrager,buildroot-firmware,$(BR2_PACKAGE_VERSAL_FIRMWARE_VERS
+ION)) VERSAL_FIRMWARE_LICENSE = Xilinx-Binary-Only 
+VERSAL_FIRMWARE_LICENSE_FILES = LICENSE
+
+VERSAL_FIRMWARE_INSTALL_TARGET = NO
+VERSAL_FIRMWARE_INSTALL_IMAGES = YES
+
+define VERSAL_FIRMWARE_INSTALL_IMAGES_CMDS
+	$(INSTALL) -D -m 0755 $(@D)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)_plm.elf \
+	$(BINARIES_DIR)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)_plm.elf
+	$(INSTALL) -D -m 0755 $(@D)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)_psmfw.elf \
+	$(BINARIES_DIR)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)_psmfw.elf
+	$(INSTALL) -D -m 0755 $(@D)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)_vpl_gen_fixed.pdi \
+	$(BINARIES_DIR)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)_vpl_gen_fixed.pdi
+endef
+
+$(eval $(generic-package))
--
2.17.1

Best regards,
Neal Frager
AMD



More information about the buildroot mailing list