* [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
* [Buildroot] [PATCH v1 2/5] boot/uboot.mk: new zynqmp pmufw prebuilt option
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 ` Neal Frager via buildroot
2024-06-12 19:02 ` Brandon Maier via buildroot
2024-06-12 7:55 ` [Buildroot] [PATCH v1 3/5] configs/zynqmp_*: migrate to xilinx-prebuilt Neal Frager via buildroot
` (3 subsequent siblings)
4 siblings, 1 reply; 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
The new BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT option will enable u-boot to
use the xilinx-prebuilt package for downloading a pmufw.elf that gets included
in the generated boot.bin.
If the BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT option is enabled, then the
BR2_TARGET_UBOOT_ZYNQMP_PMUFW config for downloading a prebuilt pmufw will
be ignored.
Signed-off-by: Neal Frager <neal.frager@amd.com>
---
boot/uboot/Config.in | 16 ++++++++++++++++
boot/uboot/uboot.mk | 5 +++++
2 files changed, 21 insertions(+)
diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in
index d0901edc9d..9d275e8611 100644
--- a/boot/uboot/Config.in
+++ b/boot/uboot/Config.in
@@ -512,9 +512,25 @@ config BR2_TARGET_UBOOT_ZYNQMP
if BR2_TARGET_UBOOT_ZYNQMP
+config BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT
+ bool "xilinx-prebuilt pmufw.elf"
+ depends on BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
+ depends on BR2_TARGET_XILINX_PREBUILT
+ help
+ Use xilinx-prebuilt boot package for downloading prebuilt zynqmp
+ pmufw.elf from https://github.com/Xilinx/soc-prebuilt-firmware repo.
+
+ U-Boot build process will generate a boot.bin (to be loaded by the
+ ZynqMP boot ROM) containing both the U-Boot SPL and the PMU firmware
+ in the Xilinx-specific boot format.
+
+ If this option is selected, the BR2_TARGET_UBOOT_ZYNQMP_PMUFW
+ prebuilt option will be ignored.
+
config BR2_TARGET_UBOOT_ZYNQMP_PMUFW
string "PMU firmware location"
depends on BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
+ depends on !BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT
help
Location of a PMU firmware binary.
diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
index b9f165f041..5d12c6283b 100644
--- a/boot/uboot/uboot.mk
+++ b/boot/uboot/uboot.mk
@@ -436,7 +436,12 @@ endef
ifeq ($(BR2_TARGET_UBOOT_ZYNQMP),y)
+ifeq ($(BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT),y)
+UBOOT_DEPENDENCIES += xilinx-prebuilt
+UBOOT_ZYNQMP_PMUFW = $(BINARIES_DIR)/pmufw.elf
+else
UBOOT_ZYNQMP_PMUFW = $(call qstrip,$(BR2_TARGET_UBOOT_ZYNQMP_PMUFW))
+endif #BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT
ifneq ($(findstring ://,$(UBOOT_ZYNQMP_PMUFW)),)
UBOOT_EXTRA_DOWNLOADS += $(UBOOT_ZYNQMP_PMUFW)
--
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
* [Buildroot] [PATCH v1 3/5] configs/zynqmp_*: migrate to xilinx-prebuilt
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 7:55 ` 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
` (2 subsequent siblings)
4 siblings, 1 reply; 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
Migrate zynqmp defconfigs to xilinx-prebuilt.
Signed-off-by: Neal Frager <neal.frager@amd.com>
---
.checkpackageignore | 5 -----
configs/zynqmp_kria_kr260_defconfig | 8 +++++++-
configs/zynqmp_kria_kv260_defconfig | 8 +++++++-
configs/zynqmp_zcu102_defconfig | 8 +++++++-
configs/zynqmp_zcu104_defconfig | 8 +++++++-
configs/zynqmp_zcu106_defconfig | 8 +++++++-
6 files changed, 35 insertions(+), 10 deletions(-)
diff --git a/.checkpackageignore b/.checkpackageignore
index eea412d01d..6d0011a299 100644
--- a/.checkpackageignore
+++ b/.checkpackageignore
@@ -362,11 +362,6 @@ configs/visionfive_defconfig lib_defconfig.ForceCheckHash
configs/wandboard_defconfig lib_defconfig.ForceCheckHash
configs/warp7_defconfig lib_defconfig.ForceCheckHash
configs/zynqmp_kria_kd240_defconfig lib_defconfig.ForceCheckHash
-configs/zynqmp_kria_kr260_defconfig lib_defconfig.ForceCheckHash
-configs/zynqmp_kria_kv260_defconfig lib_defconfig.ForceCheckHash
-configs/zynqmp_zcu102_defconfig lib_defconfig.ForceCheckHash
-configs/zynqmp_zcu104_defconfig lib_defconfig.ForceCheckHash
-configs/zynqmp_zcu106_defconfig lib_defconfig.ForceCheckHash
linux/5.10.162-cip24-rt10/0001-arch-microblaze-mm-init.c-fix-build.patch lib_patch.Upstream
package/18xx-ti-utils/0001-plt.h-fix-build-with-gcc-10.patch lib_patch.Upstream
package/4th/0001-avoid-regen-during-install.patch lib_patch.Upstream
diff --git a/configs/zynqmp_kria_kr260_defconfig b/configs/zynqmp_kria_kr260_defconfig
index 3bf269ab6b..b7b5b4d432 100644
--- a/configs/zynqmp_kria_kr260_defconfig
+++ b/configs/zynqmp_kria_kr260_defconfig
@@ -31,10 +31,16 @@ BR2_TARGET_UBOOT_NEEDS_GNUTLS=y
BR2_TARGET_UBOOT_SPL=y
BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin"
BR2_TARGET_UBOOT_ZYNQMP=y
-BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/soc-prebuilt-firmware/raw/xilinx_v2024.1/kr260-kria/pmufw.elf"
+BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT=y
BR2_TARGET_UBOOT_ZYNQMP_PM_CFG="board/zynqmp/kria/kr260/pm_cfg_obj.c"
BR2_TARGET_UBOOT_FORMAT_ITB=y
BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
+BR2_TARGET_XILINX_PREBUILT=y
+BR2_TARGET_XILINX_PREBUILT_VERSION="xilinx_v2024.1"
+BR2_TARGET_XILINX_PREBUILT_BOARD="kr260"
+BR2_TARGET_XILINX_PREBUILT_KRIA=y
BR2_PACKAGE_HOST_DOSFSTOOLS=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_HOST_MTOOLS=y
+BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
+BR2_GLOBAL_PATCH_DIR="board/xilinx/patches"
diff --git a/configs/zynqmp_kria_kv260_defconfig b/configs/zynqmp_kria_kv260_defconfig
index 7b402e032c..a16da66e38 100644
--- a/configs/zynqmp_kria_kv260_defconfig
+++ b/configs/zynqmp_kria_kv260_defconfig
@@ -31,10 +31,16 @@ BR2_TARGET_UBOOT_NEEDS_GNUTLS=y
BR2_TARGET_UBOOT_SPL=y
BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin"
BR2_TARGET_UBOOT_ZYNQMP=y
-BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/soc-prebuilt-firmware/raw/xilinx_v2024.1/kv260-kria/pmufw.elf"
+BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT=y
BR2_TARGET_UBOOT_ZYNQMP_PM_CFG="board/zynqmp/kria/kv260/pm_cfg_obj.c"
BR2_TARGET_UBOOT_FORMAT_ITB=y
BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
+BR2_TARGET_XILINX_PREBUILT=y
+BR2_TARGET_XILINX_PREBUILT_VERSION="xilinx_v2024.1"
+BR2_TARGET_XILINX_PREBUILT_BOARD="kv260"
+BR2_TARGET_XILINX_PREBUILT_KRIA=y
BR2_PACKAGE_HOST_DOSFSTOOLS=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_HOST_MTOOLS=y
+BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
+BR2_GLOBAL_PATCH_DIR="board/xilinx/patches"
diff --git a/configs/zynqmp_zcu102_defconfig b/configs/zynqmp_zcu102_defconfig
index f40002f6d9..faee93b1c6 100644
--- a/configs/zynqmp_zcu102_defconfig
+++ b/configs/zynqmp_zcu102_defconfig
@@ -30,10 +30,16 @@ BR2_TARGET_UBOOT_NEEDS_GNUTLS=y
BR2_TARGET_UBOOT_SPL=y
BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin"
BR2_TARGET_UBOOT_ZYNQMP=y
-BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/soc-prebuilt-firmware/raw/xilinx_v2024.1/zcu102-zynqmp/pmufw.elf"
+BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT=y
BR2_TARGET_UBOOT_ZYNQMP_PM_CFG="board/zynqmp/zcu102/pm_cfg_obj.c"
BR2_TARGET_UBOOT_FORMAT_ITB=y
BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
+BR2_TARGET_XILINX_PREBUILT=y
+BR2_TARGET_XILINX_PREBUILT_VERSION="xilinx_v2024.1"
+BR2_TARGET_XILINX_PREBUILT_BOARD="zcu102"
+BR2_TARGET_XILINX_PREBUILT_ZYNQMP=y
BR2_PACKAGE_HOST_DOSFSTOOLS=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_HOST_MTOOLS=y
+BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
+BR2_GLOBAL_PATCH_DIR="board/xilinx/patches"
diff --git a/configs/zynqmp_zcu104_defconfig b/configs/zynqmp_zcu104_defconfig
index ef9c9bad49..466527695b 100644
--- a/configs/zynqmp_zcu104_defconfig
+++ b/configs/zynqmp_zcu104_defconfig
@@ -30,10 +30,16 @@ BR2_TARGET_UBOOT_NEEDS_GNUTLS=y
BR2_TARGET_UBOOT_SPL=y
BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin"
BR2_TARGET_UBOOT_ZYNQMP=y
-BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/soc-prebuilt-firmware/raw/xilinx_v2024.1/zcu104-zynqmp/pmufw.elf"
+BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT=y
BR2_TARGET_UBOOT_ZYNQMP_PM_CFG="board/zynqmp/zcu104/pm_cfg_obj.c"
BR2_TARGET_UBOOT_FORMAT_ITB=y
BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
+BR2_TARGET_XILINX_PREBUILT=y
+BR2_TARGET_XILINX_PREBUILT_VERSION="xilinx_v2024.1"
+BR2_TARGET_XILINX_PREBUILT_BOARD="zcu104"
+BR2_TARGET_XILINX_PREBUILT_ZYNQMP=y
BR2_PACKAGE_HOST_DOSFSTOOLS=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_HOST_MTOOLS=y
+BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
+BR2_GLOBAL_PATCH_DIR="board/xilinx/patches"
diff --git a/configs/zynqmp_zcu106_defconfig b/configs/zynqmp_zcu106_defconfig
index 07c595436f..686b7f9f94 100644
--- a/configs/zynqmp_zcu106_defconfig
+++ b/configs/zynqmp_zcu106_defconfig
@@ -30,10 +30,16 @@ BR2_TARGET_UBOOT_NEEDS_GNUTLS=y
BR2_TARGET_UBOOT_SPL=y
BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin"
BR2_TARGET_UBOOT_ZYNQMP=y
-BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/soc-prebuilt-firmware/raw/xilinx_v2024.1/zcu106-zynqmp/pmufw.elf"
+BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT=y
BR2_TARGET_UBOOT_ZYNQMP_PM_CFG="board/zynqmp/zcu106/pm_cfg_obj.c"
BR2_TARGET_UBOOT_FORMAT_ITB=y
BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
+BR2_TARGET_XILINX_PREBUILT=y
+BR2_TARGET_XILINX_PREBUILT_VERSION="xilinx_v2024.1"
+BR2_TARGET_XILINX_PREBUILT_BOARD="zcu106"
+BR2_TARGET_XILINX_PREBUILT_ZYNQMP=y
BR2_PACKAGE_HOST_DOSFSTOOLS=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_HOST_MTOOLS=y
+BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
+BR2_GLOBAL_PATCH_DIR="board/xilinx/patches"
--
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
* [Buildroot] [PATCH v1 4/5] configs/versal_vck190_defconfig: migrate to xilinx-prebuilt
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 7:55 ` [Buildroot] [PATCH v1 3/5] configs/zynqmp_*: migrate to xilinx-prebuilt Neal Frager via buildroot
@ 2024-06-12 7:55 ` 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 18:52 ` [Buildroot] [PATCH v1 1/5] boot/xilinx-prebuilt: new boot package Brandon Maier via buildroot
4 siblings, 1 reply; 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
Migrate versal_vck190_defconfig to xilinx-prebuilt.
Signed-off-by: Neal Frager <neal.frager@amd.com>
---
configs/versal_vck190_defconfig | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/configs/versal_vck190_defconfig b/configs/versal_vck190_defconfig
index 69272e721c..ef5c0a4929 100644
--- a/configs/versal_vck190_defconfig
+++ b/configs/versal_vck190_defconfig
@@ -32,9 +32,10 @@ BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
BR2_TARGET_UBOOT_NEEDS_GNUTLS=y
BR2_TARGET_UBOOT_FORMAT_REMAKE_ELF=y
BR2_TARGET_UBOOT_FORMAT_DTB=y
-BR2_PACKAGE_VERSAL_FIRMWARE=y
-BR2_PACKAGE_VERSAL_FIRMWARE_VERSION="xilinx_v2024.1"
-BR2_PACKAGE_VERSAL_FIRMWARE_BOARD="vck190"
+BR2_TARGET_XILINX_PREBUILT=y
+BR2_TARGET_XILINX_PREBUILT_VERSION="xilinx_v2024.1"
+BR2_TARGET_XILINX_PREBUILT_BOARD="vck190"
+BR2_TARGET_XILINX_PREBUILT_VERSAL=y
BR2_PACKAGE_HOST_DOSFSTOOLS=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_HOST_MTOOLS=y
--
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
* [Buildroot] [PATCH v1 5/5] package/versal-firmware: remove package
2024-06-12 7:55 [Buildroot] [PATCH v1 1/5] boot/xilinx-prebuilt: new boot package Neal Frager via buildroot
` (2 preceding siblings ...)
2024-06-12 7:55 ` [Buildroot] [PATCH v1 4/5] configs/versal_vck190_defconfig: " Neal Frager via buildroot
@ 2024-06-12 7:55 ` 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
4 siblings, 1 reply; 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 removes the package/versal-firmware as this package is replaced
by the boot/xilinx-prebuilt target boot firmware package.
Signed-off-by: Neal Frager <neal.frager@amd.com>
---
DEVELOPERS | 1 -
.../versal-firmware/versal-firmware.hash | 2 --
package/Config.in | 1 -
package/versal-firmware/Config.in | 24 -------------------
package/versal-firmware/versal-firmware.mk | 21 ----------------
5 files changed, 49 deletions(-)
delete mode 100644 board/xilinx/patches/versal-firmware/versal-firmware.hash
delete mode 100644 package/versal-firmware/Config.in
delete mode 100644 package/versal-firmware/versal-firmware.mk
diff --git a/DEVELOPERS b/DEVELOPERS
index 93627a0064..e5706e493b 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2352,7 +2352,6 @@ F: package/binutils-bare-metal/
F: package/bootgen/
F: package/gcc-bare-metal/
F: package/newlib-bare-metal/
-F: package/versal-firmware/
F: toolchain/toolchain-bare-metal-buildroot/
N: Nicola Di Lieto <nicola.dilieto@gmail.com>
diff --git a/board/xilinx/patches/versal-firmware/versal-firmware.hash b/board/xilinx/patches/versal-firmware/versal-firmware.hash
deleted file mode 100644
index c4d745f22c..0000000000
--- a/board/xilinx/patches/versal-firmware/versal-firmware.hash
+++ /dev/null
@@ -1,2 +0,0 @@
-# Locally calculated
-sha256 7abcba4e0e44e3a4adf9c1f971d918575226d7604dfd64a386baaa00c1c6c35f versal-firmware-xilinx_v2024.1.tar.gz
diff --git a/package/Config.in b/package/Config.in
index 1b6a5b0dab..13af2978dd 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -460,7 +460,6 @@ 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
deleted file mode 100644
index 01daefd204..0000000000
--- a/package/versal-firmware/Config.in
+++ /dev/null
@@ -1,24 +0,0 @@
-config BR2_PACKAGE_VERSAL_FIRMWARE
- bool "versal-firmware"
- depends on BR2_aarch64
- help
- Pre-built firmware files for Xilinx Versal boards.
-
- https://github.com/Xilinx/soc-prebuilt-firmware
-
-if BR2_PACKAGE_VERSAL_FIRMWARE
-
-config BR2_PACKAGE_VERSAL_FIRMWARE_VERSION
- string "firmware version"
- default "xilinx_v2023.1"
- help
- Release version of Versal firmware.
-
-config BR2_PACKAGE_VERSAL_FIRMWARE_BOARD
- string "board name"
- default "vck190"
- help
- Name of Versal target board.
- Used for installing the appropriate firmware.
-
-endif # BR2_PACKAGE_VERSAL_FIRMWARE
diff --git a/package/versal-firmware/versal-firmware.mk b/package/versal-firmware/versal-firmware.mk
deleted file mode 100644
index 1ced259be1..0000000000
--- a/package/versal-firmware/versal-firmware.mk
+++ /dev/null
@@ -1,21 +0,0 @@
-################################################################################
-#
-# versal-firmware
-#
-################################################################################
-
-VERSAL_FIRMWARE_VERSION = $(call qstrip,$(BR2_PACKAGE_VERSAL_FIRMWARE_VERSION))
-VERSAL_FIRMWARE_SITE = $(call github,Xilinx,soc-prebuilt-firmware,$(VERSAL_FIRMWARE_VERSION))
-VERSAL_FIRMWARE_LICENSE = MIT
-VERSAL_FIRMWARE_LICENSE_FILES = LICENSE
-VERSAL_FIRMWARE_INSTALL_TARGET = NO
-VERSAL_FIRMWARE_INSTALL_IMAGES = YES
-
-define VERSAL_FIRMWARE_INSTALL_IMAGES_CMDS
- $(foreach f,plm.elf psmfw.elf vpl_gen_fixed.pdi,\
- $(INSTALL) -D -m 0755 $(@D)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)-versal/$(f) \
- $(BINARIES_DIR)/$(f)
- )
-endef
-
-$(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
* Re: [Buildroot] [PATCH v1 1/5] boot/xilinx-prebuilt: new boot package
2024-06-12 7:55 [Buildroot] [PATCH v1 1/5] boot/xilinx-prebuilt: new boot package Neal Frager via buildroot
` (3 preceding siblings ...)
2024-06-12 7:55 ` [Buildroot] [PATCH v1 5/5] package/versal-firmware: remove package Neal Frager via buildroot
@ 2024-06-12 18:52 ` Brandon Maier via buildroot
4 siblings, 0 replies; 12+ messages in thread
From: Brandon Maier via buildroot @ 2024-06-12 18:52 UTC (permalink / raw)
To: Neal Frager via buildroot
Cc: ibai.erkiaga-elorza, luca.ceresoli, thomas.petazzoni, Neal Frager,
michal.simek, yann.morin.1998
Hi Neal,
On 2024.06.12 08:55, Neal Frager via buildroot wrote:
> 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
Looks like a good fix to the hashing issue!
Reviewed-by: Brandon Maier <brandon.maier@collins.com>
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Buildroot] [PATCH v1 2/5] boot/uboot.mk: new zynqmp pmufw prebuilt option
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
0 siblings, 1 reply; 12+ messages in thread
From: Brandon Maier via buildroot @ 2024-06-12 19:02 UTC (permalink / raw)
To: Neal Frager via buildroot
Cc: ibai.erkiaga-elorza, luca.ceresoli, thomas.petazzoni, Neal Frager,
michal.simek, yann.morin.1998
On 2024.06.12 08:55, Neal Frager via buildroot wrote:
> The new BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT option will enable u-boot to
> use the xilinx-prebuilt package for downloading a pmufw.elf that gets included
> in the generated boot.bin.
>
> If the BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT option is enabled, then the
> BR2_TARGET_UBOOT_ZYNQMP_PMUFW config for downloading a prebuilt pmufw will
> be ignored.
>
> Signed-off-by: Neal Frager <neal.frager@amd.com>
> ---
> boot/uboot/Config.in | 16 ++++++++++++++++
> boot/uboot/uboot.mk | 5 +++++
> 2 files changed, 21 insertions(+)
>
> diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in
> index d0901edc9d..9d275e8611 100644
> --- a/boot/uboot/Config.in
> +++ b/boot/uboot/Config.in
> @@ -512,9 +512,25 @@ config BR2_TARGET_UBOOT_ZYNQMP
>
> if BR2_TARGET_UBOOT_ZYNQMP
>
> +config BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT
> + bool "xilinx-prebuilt pmufw.elf"
> + depends on BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
> + depends on BR2_TARGET_XILINX_PREBUILT
Since this is a ZynqMP only option. Shouldn't this depend on the
Xilinx-prebuilt ZynqMP choice?
depends on BR2_TARGET_XILINX_PREBUILT_ZYNQMP
> + help
> + Use xilinx-prebuilt boot package for downloading prebuilt zynqmp
> + pmufw.elf from https://github.com/Xilinx/soc-prebuilt-firmware repo.
> +
> + U-Boot build process will generate a boot.bin (to be loaded by the
> + ZynqMP boot ROM) containing both the U-Boot SPL and the PMU firmware
> + in the Xilinx-specific boot format.
> +
> + If this option is selected, the BR2_TARGET_UBOOT_ZYNQMP_PMUFW
> + prebuilt option will be ignored.
> +
> config BR2_TARGET_UBOOT_ZYNQMP_PMUFW
> string "PMU firmware location"
> depends on BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
> + depends on !BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT
> help
> Location of a PMU firmware binary.
>
> diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
> index b9f165f041..5d12c6283b 100644
> --- a/boot/uboot/uboot.mk
> +++ b/boot/uboot/uboot.mk
> @@ -436,7 +436,12 @@ endef
>
> ifeq ($(BR2_TARGET_UBOOT_ZYNQMP),y)
>
> +ifeq ($(BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT),y)
> +UBOOT_DEPENDENCIES += xilinx-prebuilt
> +UBOOT_ZYNQMP_PMUFW = $(BINARIES_DIR)/pmufw.elf
> +else
> UBOOT_ZYNQMP_PMUFW = $(call qstrip,$(BR2_TARGET_UBOOT_ZYNQMP_PMUFW))
> +endif #BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT
>
> ifneq ($(findstring ://,$(UBOOT_ZYNQMP_PMUFW)),)
The `endif` should be moved to cover this ifneq statement. That way when
xilinx-prebuilt is enabled it doesn't do the "://" and readlink checks.
> UBOOT_EXTRA_DOWNLOADS += $(UBOOT_ZYNQMP_PMUFW)
> --
> 2.25.1
>
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Buildroot] [PATCH v1 3/5] configs/zynqmp_*: migrate to xilinx-prebuilt
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
0 siblings, 0 replies; 12+ messages in thread
From: Brandon Maier via buildroot @ 2024-06-12 19:04 UTC (permalink / raw)
To: Neal Frager via buildroot
Cc: ibai.erkiaga-elorza, luca.ceresoli, thomas.petazzoni, Neal Frager,
michal.simek, yann.morin.1998
On 2024.06.12 08:55, Neal Frager via buildroot wrote:
> Migrate zynqmp defconfigs to xilinx-prebuilt.
>
> Signed-off-by: Neal Frager <neal.frager@amd.com>
> ---
> .checkpackageignore | 5 -----
> configs/zynqmp_kria_kr260_defconfig | 8 +++++++-
> configs/zynqmp_kria_kv260_defconfig | 8 +++++++-
> configs/zynqmp_zcu102_defconfig | 8 +++++++-
> configs/zynqmp_zcu104_defconfig | 8 +++++++-
> configs/zynqmp_zcu106_defconfig | 8 +++++++-
> 6 files changed, 35 insertions(+), 10 deletions(-)
>
> diff --git a/.checkpackageignore b/.checkpackageignore
> index eea412d01d..6d0011a299 100644
> --- a/.checkpackageignore
> +++ b/.checkpackageignore
> @@ -362,11 +362,6 @@ configs/visionfive_defconfig lib_defconfig.ForceCheckHash
> configs/wandboard_defconfig lib_defconfig.ForceCheckHash
> configs/warp7_defconfig lib_defconfig.ForceCheckHash
> configs/zynqmp_kria_kd240_defconfig lib_defconfig.ForceCheckHash
> -configs/zynqmp_kria_kr260_defconfig lib_defconfig.ForceCheckHash
> -configs/zynqmp_kria_kv260_defconfig lib_defconfig.ForceCheckHash
> -configs/zynqmp_zcu102_defconfig lib_defconfig.ForceCheckHash
> -configs/zynqmp_zcu104_defconfig lib_defconfig.ForceCheckHash
> -configs/zynqmp_zcu106_defconfig lib_defconfig.ForceCheckHash
> linux/5.10.162-cip24-rt10/0001-arch-microblaze-mm-init.c-fix-build.patch lib_patch.Upstream
> package/18xx-ti-utils/0001-plt.h-fix-build-with-gcc-10.patch lib_patch.Upstream
> package/4th/0001-avoid-regen-during-install.patch lib_patch.Upstream
> diff --git a/configs/zynqmp_kria_kr260_defconfig b/configs/zynqmp_kria_kr260_defconfig
> index 3bf269ab6b..b7b5b4d432 100644
> --- a/configs/zynqmp_kria_kr260_defconfig
> +++ b/configs/zynqmp_kria_kr260_defconfig
> @@ -31,10 +31,16 @@ BR2_TARGET_UBOOT_NEEDS_GNUTLS=y
> BR2_TARGET_UBOOT_SPL=y
> BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin"
> BR2_TARGET_UBOOT_ZYNQMP=y
> -BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/soc-prebuilt-firmware/raw/xilinx_v2024.1/kr260-kria/pmufw.elf"
> +BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT=y
> BR2_TARGET_UBOOT_ZYNQMP_PM_CFG="board/zynqmp/kria/kr260/pm_cfg_obj.c"
> BR2_TARGET_UBOOT_FORMAT_ITB=y
> BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
> +BR2_TARGET_XILINX_PREBUILT=y
> +BR2_TARGET_XILINX_PREBUILT_VERSION="xilinx_v2024.1"
> +BR2_TARGET_XILINX_PREBUILT_BOARD="kr260"
> +BR2_TARGET_XILINX_PREBUILT_KRIA=y
> BR2_PACKAGE_HOST_DOSFSTOOLS=y
> BR2_PACKAGE_HOST_GENIMAGE=y
> BR2_PACKAGE_HOST_MTOOLS=y
> +BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
> +BR2_GLOBAL_PATCH_DIR="board/xilinx/patches"
> diff --git a/configs/zynqmp_kria_kv260_defconfig b/configs/zynqmp_kria_kv260_defconfig
> index 7b402e032c..a16da66e38 100644
> --- a/configs/zynqmp_kria_kv260_defconfig
> +++ b/configs/zynqmp_kria_kv260_defconfig
> @@ -31,10 +31,16 @@ BR2_TARGET_UBOOT_NEEDS_GNUTLS=y
> BR2_TARGET_UBOOT_SPL=y
> BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin"
> BR2_TARGET_UBOOT_ZYNQMP=y
> -BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/soc-prebuilt-firmware/raw/xilinx_v2024.1/kv260-kria/pmufw.elf"
> +BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT=y
> BR2_TARGET_UBOOT_ZYNQMP_PM_CFG="board/zynqmp/kria/kv260/pm_cfg_obj.c"
> BR2_TARGET_UBOOT_FORMAT_ITB=y
> BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
> +BR2_TARGET_XILINX_PREBUILT=y
> +BR2_TARGET_XILINX_PREBUILT_VERSION="xilinx_v2024.1"
> +BR2_TARGET_XILINX_PREBUILT_BOARD="kv260"
> +BR2_TARGET_XILINX_PREBUILT_KRIA=y
> BR2_PACKAGE_HOST_DOSFSTOOLS=y
> BR2_PACKAGE_HOST_GENIMAGE=y
> BR2_PACKAGE_HOST_MTOOLS=y
> +BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
> +BR2_GLOBAL_PATCH_DIR="board/xilinx/patches"
> diff --git a/configs/zynqmp_zcu102_defconfig b/configs/zynqmp_zcu102_defconfig
> index f40002f6d9..faee93b1c6 100644
> --- a/configs/zynqmp_zcu102_defconfig
> +++ b/configs/zynqmp_zcu102_defconfig
> @@ -30,10 +30,16 @@ BR2_TARGET_UBOOT_NEEDS_GNUTLS=y
> BR2_TARGET_UBOOT_SPL=y
> BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin"
> BR2_TARGET_UBOOT_ZYNQMP=y
> -BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/soc-prebuilt-firmware/raw/xilinx_v2024.1/zcu102-zynqmp/pmufw.elf"
> +BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT=y
> BR2_TARGET_UBOOT_ZYNQMP_PM_CFG="board/zynqmp/zcu102/pm_cfg_obj.c"
> BR2_TARGET_UBOOT_FORMAT_ITB=y
> BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
> +BR2_TARGET_XILINX_PREBUILT=y
> +BR2_TARGET_XILINX_PREBUILT_VERSION="xilinx_v2024.1"
> +BR2_TARGET_XILINX_PREBUILT_BOARD="zcu102"
> +BR2_TARGET_XILINX_PREBUILT_ZYNQMP=y
> BR2_PACKAGE_HOST_DOSFSTOOLS=y
> BR2_PACKAGE_HOST_GENIMAGE=y
> BR2_PACKAGE_HOST_MTOOLS=y
> +BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
> +BR2_GLOBAL_PATCH_DIR="board/xilinx/patches"
> diff --git a/configs/zynqmp_zcu104_defconfig b/configs/zynqmp_zcu104_defconfig
> index ef9c9bad49..466527695b 100644
> --- a/configs/zynqmp_zcu104_defconfig
> +++ b/configs/zynqmp_zcu104_defconfig
> @@ -30,10 +30,16 @@ BR2_TARGET_UBOOT_NEEDS_GNUTLS=y
> BR2_TARGET_UBOOT_SPL=y
> BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin"
> BR2_TARGET_UBOOT_ZYNQMP=y
> -BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/soc-prebuilt-firmware/raw/xilinx_v2024.1/zcu104-zynqmp/pmufw.elf"
> +BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT=y
> BR2_TARGET_UBOOT_ZYNQMP_PM_CFG="board/zynqmp/zcu104/pm_cfg_obj.c"
> BR2_TARGET_UBOOT_FORMAT_ITB=y
> BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
> +BR2_TARGET_XILINX_PREBUILT=y
> +BR2_TARGET_XILINX_PREBUILT_VERSION="xilinx_v2024.1"
> +BR2_TARGET_XILINX_PREBUILT_BOARD="zcu104"
> +BR2_TARGET_XILINX_PREBUILT_ZYNQMP=y
> BR2_PACKAGE_HOST_DOSFSTOOLS=y
> BR2_PACKAGE_HOST_GENIMAGE=y
> BR2_PACKAGE_HOST_MTOOLS=y
> +BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
> +BR2_GLOBAL_PATCH_DIR="board/xilinx/patches"
> diff --git a/configs/zynqmp_zcu106_defconfig b/configs/zynqmp_zcu106_defconfig
> index 07c595436f..686b7f9f94 100644
> --- a/configs/zynqmp_zcu106_defconfig
> +++ b/configs/zynqmp_zcu106_defconfig
> @@ -30,10 +30,16 @@ BR2_TARGET_UBOOT_NEEDS_GNUTLS=y
> BR2_TARGET_UBOOT_SPL=y
> BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin"
> BR2_TARGET_UBOOT_ZYNQMP=y
> -BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/soc-prebuilt-firmware/raw/xilinx_v2024.1/zcu106-zynqmp/pmufw.elf"
> +BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT=y
> BR2_TARGET_UBOOT_ZYNQMP_PM_CFG="board/zynqmp/zcu106/pm_cfg_obj.c"
> BR2_TARGET_UBOOT_FORMAT_ITB=y
> BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
> +BR2_TARGET_XILINX_PREBUILT=y
> +BR2_TARGET_XILINX_PREBUILT_VERSION="xilinx_v2024.1"
> +BR2_TARGET_XILINX_PREBUILT_BOARD="zcu106"
> +BR2_TARGET_XILINX_PREBUILT_ZYNQMP=y
> BR2_PACKAGE_HOST_DOSFSTOOLS=y
> BR2_PACKAGE_HOST_GENIMAGE=y
> BR2_PACKAGE_HOST_MTOOLS=y
> +BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
> +BR2_GLOBAL_PATCH_DIR="board/xilinx/patches"
> --
> 2.25.1
Reviewed-by: Brandon Maier <brandon.maier@collins.com>
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Buildroot] [PATCH v1 4/5] configs/versal_vck190_defconfig: migrate to xilinx-prebuilt
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
0 siblings, 0 replies; 12+ messages in thread
From: Brandon Maier via buildroot @ 2024-06-12 19:05 UTC (permalink / raw)
To: Neal Frager via buildroot
Cc: ibai.erkiaga-elorza, luca.ceresoli, thomas.petazzoni, Neal Frager,
michal.simek, yann.morin.1998
On 2024.06.12 08:55, Neal Frager via buildroot wrote:
> Migrate versal_vck190_defconfig to xilinx-prebuilt.
>
> Signed-off-by: Neal Frager <neal.frager@amd.com>
> ---
> configs/versal_vck190_defconfig | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/configs/versal_vck190_defconfig b/configs/versal_vck190_defconfig
> index 69272e721c..ef5c0a4929 100644
> --- a/configs/versal_vck190_defconfig
> +++ b/configs/versal_vck190_defconfig
> @@ -32,9 +32,10 @@ BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
> BR2_TARGET_UBOOT_NEEDS_GNUTLS=y
> BR2_TARGET_UBOOT_FORMAT_REMAKE_ELF=y
> BR2_TARGET_UBOOT_FORMAT_DTB=y
> -BR2_PACKAGE_VERSAL_FIRMWARE=y
> -BR2_PACKAGE_VERSAL_FIRMWARE_VERSION="xilinx_v2024.1"
> -BR2_PACKAGE_VERSAL_FIRMWARE_BOARD="vck190"
> +BR2_TARGET_XILINX_PREBUILT=y
> +BR2_TARGET_XILINX_PREBUILT_VERSION="xilinx_v2024.1"
> +BR2_TARGET_XILINX_PREBUILT_BOARD="vck190"
> +BR2_TARGET_XILINX_PREBUILT_VERSAL=y
> BR2_PACKAGE_HOST_DOSFSTOOLS=y
> BR2_PACKAGE_HOST_GENIMAGE=y
> BR2_PACKAGE_HOST_MTOOLS=y
> --
> 2.25.1
Reviewed-by: Brandon Maier <brandon.maier@collins.com>
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Buildroot] [PATCH v1 5/5] package/versal-firmware: remove package
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
0 siblings, 0 replies; 12+ messages in thread
From: Brandon Maier via buildroot @ 2024-06-12 19:05 UTC (permalink / raw)
To: Neal Frager via buildroot
Cc: ibai.erkiaga-elorza, luca.ceresoli, thomas.petazzoni, Neal Frager,
michal.simek, yann.morin.1998
On 2024.06.12 08:55, Neal Frager via buildroot wrote:
> This patch removes the package/versal-firmware as this package is replaced
> by the boot/xilinx-prebuilt target boot firmware package.
>
> Signed-off-by: Neal Frager <neal.frager@amd.com>
> ---
> DEVELOPERS | 1 -
> .../versal-firmware/versal-firmware.hash | 2 --
> package/Config.in | 1 -
> package/versal-firmware/Config.in | 24 -------------------
> package/versal-firmware/versal-firmware.mk | 21 ----------------
> 5 files changed, 49 deletions(-)
> delete mode 100644 board/xilinx/patches/versal-firmware/versal-firmware.hash
> delete mode 100644 package/versal-firmware/Config.in
> delete mode 100644 package/versal-firmware/versal-firmware.mk
>
> diff --git a/DEVELOPERS b/DEVELOPERS
> index 93627a0064..e5706e493b 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -2352,7 +2352,6 @@ F: package/binutils-bare-metal/
> F: package/bootgen/
> F: package/gcc-bare-metal/
> F: package/newlib-bare-metal/
> -F: package/versal-firmware/
> F: toolchain/toolchain-bare-metal-buildroot/
>
> N: Nicola Di Lieto <nicola.dilieto@gmail.com>
> diff --git a/board/xilinx/patches/versal-firmware/versal-firmware.hash b/board/xilinx/patches/versal-firmware/versal-firmware.hash
> deleted file mode 100644
> index c4d745f22c..0000000000
> --- a/board/xilinx/patches/versal-firmware/versal-firmware.hash
> +++ /dev/null
> @@ -1,2 +0,0 @@
> -# Locally calculated
> -sha256 7abcba4e0e44e3a4adf9c1f971d918575226d7604dfd64a386baaa00c1c6c35f versal-firmware-xilinx_v2024.1.tar.gz
> diff --git a/package/Config.in b/package/Config.in
> index 1b6a5b0dab..13af2978dd 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -460,7 +460,6 @@ 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
> deleted file mode 100644
> index 01daefd204..0000000000
> --- a/package/versal-firmware/Config.in
> +++ /dev/null
> @@ -1,24 +0,0 @@
> -config BR2_PACKAGE_VERSAL_FIRMWARE
> - bool "versal-firmware"
> - depends on BR2_aarch64
> - help
> - Pre-built firmware files for Xilinx Versal boards.
> -
> - https://github.com/Xilinx/soc-prebuilt-firmware
> -
> -if BR2_PACKAGE_VERSAL_FIRMWARE
> -
> -config BR2_PACKAGE_VERSAL_FIRMWARE_VERSION
> - string "firmware version"
> - default "xilinx_v2023.1"
> - help
> - Release version of Versal firmware.
> -
> -config BR2_PACKAGE_VERSAL_FIRMWARE_BOARD
> - string "board name"
> - default "vck190"
> - help
> - Name of Versal target board.
> - Used for installing the appropriate firmware.
> -
> -endif # BR2_PACKAGE_VERSAL_FIRMWARE
> diff --git a/package/versal-firmware/versal-firmware.mk b/package/versal-firmware/versal-firmware.mk
> deleted file mode 100644
> index 1ced259be1..0000000000
> --- a/package/versal-firmware/versal-firmware.mk
> +++ /dev/null
> @@ -1,21 +0,0 @@
> -################################################################################
> -#
> -# versal-firmware
> -#
> -################################################################################
> -
> -VERSAL_FIRMWARE_VERSION = $(call qstrip,$(BR2_PACKAGE_VERSAL_FIRMWARE_VERSION))
> -VERSAL_FIRMWARE_SITE = $(call github,Xilinx,soc-prebuilt-firmware,$(VERSAL_FIRMWARE_VERSION))
> -VERSAL_FIRMWARE_LICENSE = MIT
> -VERSAL_FIRMWARE_LICENSE_FILES = LICENSE
> -VERSAL_FIRMWARE_INSTALL_TARGET = NO
> -VERSAL_FIRMWARE_INSTALL_IMAGES = YES
> -
> -define VERSAL_FIRMWARE_INSTALL_IMAGES_CMDS
> - $(foreach f,plm.elf psmfw.elf vpl_gen_fixed.pdi,\
> - $(INSTALL) -D -m 0755 $(@D)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)-versal/$(f) \
> - $(BINARIES_DIR)/$(f)
> - )
> -endef
> -
> -$(eval $(generic-package))
> --
> 2.25.1
Reviewed-by: Brandon Maier <brandon.maier@collins.com>
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Buildroot] [PATCH v1 2/5] boot/uboot.mk: new zynqmp pmufw prebuilt option
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
0 siblings, 1 reply; 12+ messages in thread
From: Frager, Neal via buildroot @ 2024-06-12 19:28 UTC (permalink / raw)
To: Brandon Maier, Neal Frager via buildroot
Cc: Simek, Michal, luca.ceresoli@bootlin.com, yann.morin.1998@free.fr,
thomas.petazzoni@bootlin.com, Erkiaga Elorza, Ibai
Hi Brandon,
> The new BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT option will enable u-boot to
> use the xilinx-prebuilt package for downloading a pmufw.elf that gets included
> in the generated boot.bin.
>
> If the BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT option is enabled, then the
> BR2_TARGET_UBOOT_ZYNQMP_PMUFW config for downloading a prebuilt pmufw will
> be ignored.
>
> Signed-off-by: Neal Frager <neal.frager@amd.com>
> ---
> boot/uboot/Config.in | 16 ++++++++++++++++
> boot/uboot/uboot.mk | 5 +++++
> 2 files changed, 21 insertions(+)
>
> diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in
> index d0901edc9d..9d275e8611 100644
> --- a/boot/uboot/Config.in
> +++ b/boot/uboot/Config.in
> @@ -512,9 +512,25 @@ config BR2_TARGET_UBOOT_ZYNQMP
>
> if BR2_TARGET_UBOOT_ZYNQMP
>
> +config BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT
> + bool "xilinx-prebuilt pmufw.elf"
> + depends on BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
> + depends on BR2_TARGET_XILINX_PREBUILT
> Since this is a ZynqMP only option. Shouldn't this depend on the
> Xilinx-prebuilt ZynqMP choice?
> depends on BR2_TARGET_XILINX_PREBUILT_ZYNQMP
The kria boards also use this u-boot feature as they are part of the zynqmp
family. I suppose we could add this?
depends on BR2_TARGET_XILINX_PREBUILT_ZYNQMP | BR2_TARGET_XILINX_PREBUILT_KRIA
> + help
> + Use xilinx-prebuilt boot package for downloading prebuilt zynqmp
> + pmufw.elf from https://github.com/Xilinx/soc-prebuilt-firmware repo.
> +
> + U-Boot build process will generate a boot.bin (to be loaded by the
> + ZynqMP boot ROM) containing both the U-Boot SPL and the PMU firmware
> + in the Xilinx-specific boot format.
> +
> + If this option is selected, the BR2_TARGET_UBOOT_ZYNQMP_PMUFW
> + prebuilt option will be ignored.
> +
> config BR2_TARGET_UBOOT_ZYNQMP_PMUFW
> string "PMU firmware location"
> depends on BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
> + depends on !BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT
> help
> Location of a PMU firmware binary.
>
> diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
> index b9f165f041..5d12c6283b 100644
> --- a/boot/uboot/uboot.mk
> +++ b/boot/uboot/uboot.mk
> @@ -436,7 +436,12 @@ endef
>
> ifeq ($(BR2_TARGET_UBOOT_ZYNQMP),y)
>
> +ifeq ($(BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT),y)
> +UBOOT_DEPENDENCIES += xilinx-prebuilt
> +UBOOT_ZYNQMP_PMUFW = $(BINARIES_DIR)/pmufw.elf
> +else
> UBOOT_ZYNQMP_PMUFW = $(call qstrip,$(BR2_TARGET_UBOOT_ZYNQMP_PMUFW))
> +endif #BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT
>
> ifneq ($(findstring ://,$(UBOOT_ZYNQMP_PMUFW)),)
> The `endif` should be moved to cover this ifneq statement. That way when
> xilinx-prebuilt is enabled it doesn't do the "://" and readlink checks.
Does this really matter? If BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT is set,
then UBOOT_ZYNQMP_PMUFW = $(BINARIES_DIR)/pmufw.elf, so there will never be
a :// in UBOOT_ZYNQMP_PMUFW and the UBOOT_EXTRA_DOWNLOADS will not get set.
The problem with moving the endif after the ifneq is that we still need the
UBOOT_ZYNQMP_PMUFW_PATH to be set for the rest of the functionality to work.
UBOOT_ZYNQMP_PMUFW_PATH = $(shell readlink -f $(UBOOT_ZYNQMP_PMUFW))
To avoid duplicating this line of code, keeping the endif before the ifneq
seemed to be the cleaner solution to me.
> UBOOT_EXTRA_DOWNLOADS += $(UBOOT_ZYNQMP_PMUFW)
> --
> 2.25.1
>
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
Best regards,
Neal Frager
AMD
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [Buildroot] [PATCH v1 2/5] boot/uboot.mk: new zynqmp pmufw prebuilt option
2024-06-12 19:28 ` Frager, Neal via buildroot
@ 2024-06-12 21:51 ` Brandon Maier via buildroot
0 siblings, 0 replies; 12+ messages in thread
From: Brandon Maier via buildroot @ 2024-06-12 21:51 UTC (permalink / raw)
To: Frager, Neal via buildroot
Cc: luca.ceresoli@bootlin.com, Simek, Michal, yann.morin.1998@free.fr,
thomas.petazzoni@bootlin.com, Erkiaga Elorza, Ibai
Hi Neal,
On 2024.06.12 19:28, Frager, Neal via buildroot wrote:
> Hi Brandon,
>
> > The new BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT option will enable u-boot to
> > use the xilinx-prebuilt package for downloading a pmufw.elf that gets included
> > in the generated boot.bin.
> >
> > If the BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT option is enabled, then the
> > BR2_TARGET_UBOOT_ZYNQMP_PMUFW config for downloading a prebuilt pmufw will
> > be ignored.
> >
> > Signed-off-by: Neal Frager <neal.frager@amd.com>
> > ---
> > boot/uboot/Config.in | 16 ++++++++++++++++
> > boot/uboot/uboot.mk | 5 +++++
> > 2 files changed, 21 insertions(+)
> >
> > diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in
> > index d0901edc9d..9d275e8611 100644
> > --- a/boot/uboot/Config.in
> > +++ b/boot/uboot/Config.in
> > @@ -512,9 +512,25 @@ config BR2_TARGET_UBOOT_ZYNQMP
> >
> > if BR2_TARGET_UBOOT_ZYNQMP
> >
> > +config BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT
> > + bool "xilinx-prebuilt pmufw.elf"
> > + depends on BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
> > + depends on BR2_TARGET_XILINX_PREBUILT
>
> > Since this is a ZynqMP only option. Shouldn't this depend on the
> > Xilinx-prebuilt ZynqMP choice?
>
> > depends on BR2_TARGET_XILINX_PREBUILT_ZYNQMP
>
> The kria boards also use this u-boot feature as they are part of the zynqmp
> family. I suppose we could add this?
>
> depends on BR2_TARGET_XILINX_PREBUILT_ZYNQMP | BR2_TARGET_XILINX_PREBUILT_KRIA
Ah, I assumed this was ZynqMP specific due to the config symbol name. If
it applies to multiple product lines then I don't think it's worth
bothering.
>
> > + help
> > + Use xilinx-prebuilt boot package for downloading prebuilt zynqmp
> > + pmufw.elf from https://github.com/Xilinx/soc-prebuilt-firmware repo.
> > +
> > + U-Boot build process will generate a boot.bin (to be loaded by the
> > + ZynqMP boot ROM) containing both the U-Boot SPL and the PMU firmware
> > + in the Xilinx-specific boot format.
> > +
> > + If this option is selected, the BR2_TARGET_UBOOT_ZYNQMP_PMUFW
> > + prebuilt option will be ignored.
> > +
> > config BR2_TARGET_UBOOT_ZYNQMP_PMUFW
> > string "PMU firmware location"
> > depends on BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG
> > + depends on !BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT
> > help
> > Location of a PMU firmware binary.
> >
> > diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
> > index b9f165f041..5d12c6283b 100644
> > --- a/boot/uboot/uboot.mk
> > +++ b/boot/uboot/uboot.mk
> > @@ -436,7 +436,12 @@ endef
> >
> > ifeq ($(BR2_TARGET_UBOOT_ZYNQMP),y)
> >
> > +ifeq ($(BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT),y)
> > +UBOOT_DEPENDENCIES += xilinx-prebuilt
> > +UBOOT_ZYNQMP_PMUFW = $(BINARIES_DIR)/pmufw.elf
> > +else
> > UBOOT_ZYNQMP_PMUFW = $(call qstrip,$(BR2_TARGET_UBOOT_ZYNQMP_PMUFW))
> > +endif #BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT
> >
> > ifneq ($(findstring ://,$(UBOOT_ZYNQMP_PMUFW)),)
>
> > The `endif` should be moved to cover this ifneq statement. That way when
> > xilinx-prebuilt is enabled it doesn't do the "://" and readlink checks.
>
> Does this really matter? If BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT is set,
> then UBOOT_ZYNQMP_PMUFW = $(BINARIES_DIR)/pmufw.elf, so there will never be
> a :// in UBOOT_ZYNQMP_PMUFW and the UBOOT_EXTRA_DOWNLOADS will not get set.
My intent is to make the logic easier to understand, by splitting the
custom PMUFW logic from the xilinx-prebuilt logic.
> The problem with moving the endif after the ifneq is that we still need the
> UBOOT_ZYNQMP_PMUFW_PATH to be set for the rest of the functionality to work.
>
> UBOOT_ZYNQMP_PMUFW_PATH = $(shell readlink -f $(UBOOT_ZYNQMP_PMUFW))
>
> To avoid duplicating this line of code, keeping the endif before the ifneq
> seemed to be the cleaner solution to me.
>
The readlink is not needed for xilinx-prebuilt as $(BINARIES_DIR) is
always an absolute path. Instead you could assign the
`$(BINARIES_DIR)/pmufw.elf` directly to `UBOOT_ZYNQMP_PMUFW_PATH`.
But the above is a nit pick, so I'm good with applying.
Reviewed-by: Brandon Maier <brandon.maier@collins.com>
> > UBOOT_EXTRA_DOWNLOADS += $(UBOOT_ZYNQMP_PMUFW)
> > --
> > 2.25.1
> >
> > _______________________________________________
> > buildroot mailing list
> > buildroot@buildroot.org
> > https://lists.buildroot.org/mailman/listinfo/buildroot
>
> Best regards,
> Neal Frager
> AMD
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.