Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v1 1/5] boot/xilinx-prebuilt: new boot package
@ 2024-06-12  7:55 Neal Frager via buildroot
  2024-06-12  7:55 ` [Buildroot] [PATCH v1 2/5] boot/uboot.mk: new zynqmp pmufw prebuilt option Neal Frager via buildroot
                   ` (4 more replies)
  0 siblings, 5 replies; 12+ messages in thread
From: Neal Frager via buildroot @ 2024-06-12  7:55 UTC (permalink / raw)
  To: buildroot
  Cc: ibai.erkiaga-elorza, luca.ceresoli, brandon.maier,
	thomas.petazzoni, Neal Frager, michal.simek, yann.morin.1998

This patch add a new boot package for downloading prebuilt firmware for Xilinx
versal and zynqmp evaluation boards.

It solves the problem of being able to verify the hash when downloading a
prebuilt zynqmp pmufw.elf binary.

Signed-off-by: Neal Frager <neal.frager@amd.com>
---
 DEVELOPERS                                    |  2 +
 .../xilinx-prebuilt/xilinx-prebuilt.hash      |  2 +
 boot/Config.in                                |  1 +
 boot/xilinx-prebuilt/Config.in                | 40 +++++++++++++++++++
 boot/xilinx-prebuilt/xilinx-prebuilt.mk       | 39 ++++++++++++++++++
 5 files changed, 84 insertions(+)
 create mode 100644 board/xilinx/patches/xilinx-prebuilt/xilinx-prebuilt.hash
 create mode 100644 boot/xilinx-prebuilt/Config.in
 create mode 100644 boot/xilinx-prebuilt/xilinx-prebuilt.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index cf48e01037..93627a0064 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2335,8 +2335,10 @@ F:	package/qt5/qt5opcua/
 
 N:	Neal Frager <neal.frager@amd.com>
 F:	board/versal/
+F:	board/xilinx/
 F:	board/zynq/
 F:	board/zynqmp/
+F:	boot/xilinx-prebuilt/
 F:	configs/versal_vck190_defconfig
 F:	configs/zynq_zc702_defconfig
 F:	configs/zynq_zc706_defconfig
diff --git a/board/xilinx/patches/xilinx-prebuilt/xilinx-prebuilt.hash b/board/xilinx/patches/xilinx-prebuilt/xilinx-prebuilt.hash
new file mode 100644
index 0000000000..c955cd79f5
--- /dev/null
+++ b/board/xilinx/patches/xilinx-prebuilt/xilinx-prebuilt.hash
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256  7abcba4e0e44e3a4adf9c1f971d918575226d7604dfd64a386baaa00c1c6c35f  xilinx-prebuilt-xilinx_v2024.1.tar.gz
diff --git a/boot/Config.in b/boot/Config.in
index 87e1b7c00e..1378a04d19 100644
--- a/boot/Config.in
+++ b/boot/Config.in
@@ -23,5 +23,6 @@ source "boot/ti-k3-boot-firmware/Config.in"
 source "boot/ti-k3-r5-loader/Config.in"
 source "boot/uboot/Config.in"
 source "boot/vexpress-firmware/Config.in"
+source "boot/xilinx-prebuilt/Config.in"
 
 endmenu
diff --git a/boot/xilinx-prebuilt/Config.in b/boot/xilinx-prebuilt/Config.in
new file mode 100644
index 0000000000..ec38e41993
--- /dev/null
+++ b/boot/xilinx-prebuilt/Config.in
@@ -0,0 +1,40 @@
+config BR2_TARGET_XILINX_PREBUILT
+	bool "xilinx-prebuilt"
+	depends on BR2_aarch64
+	help
+	  Pre-built firmware files for Xilinx boards.
+
+	  https://github.com/Xilinx/soc-prebuilt-firmware
+
+if BR2_TARGET_XILINX_PREBUILT
+
+config BR2_TARGET_XILINX_PREBUILT_VERSION
+	string "prebuilt version"
+	default "xilinx_v2024.1"
+	help
+	  Release version of Xilinx firmware.
+	  Must be xilinx_v2023.1 or newer.
+
+config BR2_TARGET_XILINX_PREBUILT_BOARD
+	string "board name"
+	default "zcu102"
+	help
+	  Name of Xilinx target board.
+	  Used for installing the appropriate firmware.
+
+choice
+	bool "family variant"
+	default BR2_TARGET_XILINX_PREBUILT_ZYNQMP
+
+config BR2_TARGET_XILINX_PREBUILT_ZYNQMP
+	bool "zynqmp"
+
+config BR2_TARGET_XILINX_PREBUILT_KRIA
+	bool "kria"
+
+config BR2_TARGET_XILINX_PREBUILT_VERSAL
+	bool "versal"
+
+endchoice
+
+endif # BR2_TARGET_XILINX_PREBUILT
diff --git a/boot/xilinx-prebuilt/xilinx-prebuilt.mk b/boot/xilinx-prebuilt/xilinx-prebuilt.mk
new file mode 100644
index 0000000000..98dd18da0d
--- /dev/null
+++ b/boot/xilinx-prebuilt/xilinx-prebuilt.mk
@@ -0,0 +1,39 @@
+################################################################################
+#
+# xilinx-prebuilt
+#
+################################################################################
+
+XILINX_PREBUILT_VERSION = $(call qstrip,$(BR2_TARGET_XILINX_PREBUILT_VERSION))
+XILINX_PREBUILT_SITE = $(call github,Xilinx,soc-prebuilt-firmware,$(XILINX_PREBUILT_VERSION))
+XILINX_PREBUILT_LICENSE = MIT
+XILINX_PREBUILT_LICENSE_FILES = LICENSE
+XILINX_PREBUILT_INSTALL_TARGET = NO
+XILINX_PREBUILT_INSTALL_IMAGES = YES
+
+ifeq ($(BR2_TARGET_XILINX_PREBUILT_VERSAL),y)
+define XILINX_PREBUILT_INSTALL_IMAGES_CMDS
+	$(INSTALL) -D -m 0755 $(@D)/$(BR2_TARGET_XILINX_PREBUILT_BOARD)-versal/plm.elf \
+		$(BINARIES_DIR)/plm.elf
+	$(INSTALL) -D -m 0755 $(@D)/$(BR2_TARGET_XILINX_PREBUILT_BOARD)-versal/psmfw.elf \
+		$(BINARIES_DIR)/psmfw.elf
+	$(INSTALL) -D -m 0755 $(@D)/$(BR2_TARGET_XILINX_PREBUILT_BOARD)-versal/*.pdi \
+		$(BINARIES_DIR)/vpl_gen_fixed.pdi
+endef
+endif #BR2_TARGET_XILINX_PREBUILT_VERSAL
+
+ifeq ($(BR2_TARGET_XILINX_PREBUILT_ZYNQMP),y)
+define XILINX_PREBUILT_INSTALL_IMAGES_CMDS
+	$(INSTALL) -D -m 0755 $(@D)/$(BR2_TARGET_XILINX_PREBUILT_BOARD)-zynqmp/pmufw.elf \
+		$(BINARIES_DIR)/pmufw.elf
+endef
+endif #BR2_TARGET_XILINX_PREBUILT_ZYNQMP
+
+ifeq ($(BR2_TARGET_XILINX_PREBUILT_KRIA),y)
+define XILINX_PREBUILT_INSTALL_IMAGES_CMDS
+	$(INSTALL) -D -m 0755 $(@D)/$(BR2_TARGET_XILINX_PREBUILT_BOARD)-kria/pmufw.elf \
+		$(BINARIES_DIR)/pmufw.elf
+endef
+endif #BR2_TARGET_XILINX_PREBUILT_KRIA
+
+$(eval $(generic-package))
-- 
2.25.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2024-06-12 21:51 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-12  7:55 [Buildroot] [PATCH v1 1/5] boot/xilinx-prebuilt: new boot package Neal Frager via buildroot
2024-06-12  7:55 ` [Buildroot] [PATCH v1 2/5] boot/uboot.mk: new zynqmp pmufw prebuilt option Neal Frager via buildroot
2024-06-12 19:02   ` Brandon Maier via buildroot
2024-06-12 19:28     ` Frager, Neal via buildroot
2024-06-12 21:51       ` Brandon Maier via buildroot
2024-06-12  7:55 ` [Buildroot] [PATCH v1 3/5] configs/zynqmp_*: migrate to xilinx-prebuilt Neal Frager via buildroot
2024-06-12 19:04   ` Brandon Maier via buildroot
2024-06-12  7:55 ` [Buildroot] [PATCH v1 4/5] configs/versal_vck190_defconfig: " Neal Frager via buildroot
2024-06-12 19:05   ` Brandon Maier via buildroot
2024-06-12  7:55 ` [Buildroot] [PATCH v1 5/5] package/versal-firmware: remove package Neal Frager via buildroot
2024-06-12 19:05   ` Brandon Maier via buildroot
2024-06-12 18:52 ` [Buildroot] [PATCH v1 1/5] boot/xilinx-prebuilt: new boot package Brandon Maier via buildroot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox