Files
buildroot/boot/xilinx-prebuilt/xilinx-prebuilt.mk
Neal Frager a6648ad8da boot/xilinx-prebuilt: new boot package
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>
Reviewed-by: Brandon Maier <brandon.maier@collins.com>
[yann.morin.1998@free.fr:
  - move the hash file to the package dir, not the board dir
  - move board name after familly choice
  - add default board name for each family
  - qstrip the Kconfig strings before use
  - introduce XILINX_PREBUILT_BOARD_DIR to simplify paths
  - explain the *.pdi glob
  - simplify non-versal install
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2024-06-15 23:09:31 +02:00

44 lines
1.6 KiB
Makefile

################################################################################
#
# 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
XILINX_PREBUILT_FAMILY = $(call qstrip,$(BR2_TARGET_XILINX_PREBUILT_FAMILY))
XILINX_PREBUILT_BOARD = $(call qstrip,$(BR2_TARGET_XILINX_PREBUILT_BOARD))
XILINX_PREBUILT_BOARD_DIR = $(@D)/$(XILINX_PREBUILT_BOARD)-$(XILINX_PREBUILT_FAMILY)
ifeq ($(BR2_TARGET_XILINX_PREBUILT_VERSAL),y)
# We need the *.pdi glob, because the file has different names for the
# different boards, but htere is only one, and it has to be named
# vpl_gen_fixed.pdi when installed.
define XILINX_PREBUILT_INSTALL_VERSAL
$(INSTALL) -D -m 0755 $(XILINX_PREBUILT_BOARD_DIR)/plm.elf \
$(BINARIES_DIR)/plm.elf
$(INSTALL) -D -m 0755 $(XILINX_PREBUILT_BOARD_DIR)/psmfw.elf \
$(BINARIES_DIR)/psmfw.elf
$(INSTALL) -D -m 0755 $(XILINX_PREBUILT_BOARD_DIR)/*.pdi \
$(BINARIES_DIR)/vpl_gen_fixed.pdi
endef
else # BR2_TARGET_XILINX_PREBUILT_VERSAL
define XILINX_PREBUILT_INSTALL_OTHERS
$(INSTALL) -D -m 0755 $(XILINX_PREBUILT_BOARD_DIR)/pmufw.elf \
$(BINARIES_DIR)/pmufw.elf
endef
endif # BR2_TARGET_XILINX_PREBUILT_VERSAL
define XILINX_PREBUILT_INSTALL_IMAGES_CMDS
$(XILINX_PREBUILT_INSTALL_VERSAL)
$(XILINX_PREBUILT_INSTALL_OTHERS)
endef
$(eval $(generic-package))