diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in index d0901edc9d..f37040a28a 100644 --- a/boot/uboot/Config.in +++ b/boot/uboot/Config.in @@ -512,9 +512,23 @@ config BR2_TARGET_UBOOT_ZYNQMP if BR2_TARGET_UBOOT_ZYNQMP -config BR2_TARGET_UBOOT_ZYNQMP_PMUFW - string "PMU firmware location" +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_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 + by the ZynqMP boot ROM) containing both the U-Boot SPL and the + PMU firmware in the Xilinx-specific boot format. + +config BR2_TARGET_UBOOT_ZYNQMP_PMUFW + string "Custom 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..19f4cdb557 100644 --- a/boot/uboot/uboot.mk +++ b/boot/uboot/uboot.mk @@ -436,6 +436,10 @@ endef ifeq ($(BR2_TARGET_UBOOT_ZYNQMP),y) +ifeq ($(BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT),y) +UBOOT_DEPENDENCIES += xilinx-prebuilt +UBOOT_ZYNQMP_PMUFW_PATH = $(BINARIES_DIR)/pmufw.elf +else UBOOT_ZYNQMP_PMUFW = $(call qstrip,$(BR2_TARGET_UBOOT_ZYNQMP_PMUFW)) ifneq ($(findstring ://,$(UBOOT_ZYNQMP_PMUFW)),) @@ -444,7 +448,10 @@ BR_NO_CHECK_HASH_FOR += $(notdir $(UBOOT_ZYNQMP_PMUFW)) UBOOT_ZYNQMP_PMUFW_PATH = $(UBOOT_DL_DIR)/$(notdir $(UBOOT_ZYNQMP_PMUFW)) else ifneq ($(UBOOT_ZYNQMP_PMUFW),) UBOOT_ZYNQMP_PMUFW_PATH = $(shell readlink -f $(UBOOT_ZYNQMP_PMUFW)) -endif +endif #ifneq ($(findstring ://,$(UBOOT_ZYNQMP_PMUFW)),) + +endif #BR2_TARGET_UBOOT_ZYNQMP_PMUFW_PREBUILT + UBOOT_ZYNQMP_PMUFW_BASENAME = $(basename $(UBOOT_ZYNQMP_PMUFW_PATH)) define UBOOT_ZYNQMP_KCONFIG_PMUFW