mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-26 12:00:48 -09:00
The xilpm_runtime_lib is not enabled by default in the versal2_plm Makefile:
97f2baf7f6/lib/sw_apps/versal_plm/src/versal_2ve_2vm/Makefile (L13)
Without it, there is a silent runtime failure.
Add config XILPM_RUNTIME_LIB=SUBSYS to make sure the xilpm_runtime_lib is
correctly configured and included to fix the problem.
Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
129 lines
4.8 KiB
Makefile
129 lines
4.8 KiB
Makefile
################################################################################
|
|
#
|
|
# xilinx-embeddedsw
|
|
#
|
|
################################################################################
|
|
|
|
XILINX_EMBEDDEDSW_VERSION = $(call qstrip,$(BR2_TARGET_XILINX_EMBEDDEDSW_VERSION))
|
|
XILINX_EMBEDDEDSW_SITE = $(call github,Xilinx,embeddedsw,$(XILINX_EMBEDDEDSW_VERSION))
|
|
XILINX_EMBEDDEDSW_LICENSE = MIT
|
|
XILINX_EMBEDDEDSW_LICENSE_FILES = license.txt
|
|
XILINX_EMBEDDEDSW_INSTALL_TARGET = NO
|
|
XILINX_EMBEDDEDSW_INSTALL_IMAGES = YES
|
|
XILINX_EMBEDDEDSW_DEPENDENCIES = toolchain-bare-metal-buildroot
|
|
|
|
XILINX_EMBEDDEDSW_MICROBLAZE_CC = $(call qstrip, \
|
|
$(if $(wildcard $(HOST_DIR)/bin/microblazeel-xilinx-elf-gcc), \
|
|
$(HOST_DIR)/bin/microblazeel-xilinx-elf-gcc, \
|
|
$(HOST_DIR)/bin/microblazeel-buildroot-elf-gcc))
|
|
XILINX_EMBEDDEDSW_MICROBLAZE_AR = $(XILINX_EMBEDDEDSW_MICROBLAZE_CC)-ar
|
|
|
|
ifeq ($(basename $(notdir $(XILINX_EMBEDDEDSW_MICROBLAZE_CC))),microblazeel-xilinx-elf-gcc)
|
|
$(warning microblazeel-xilinx-elf in BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH is not supported anymore!)
|
|
$(error Replace microblazeel-xilinx-elf with microblazeel-buildroot-elf in BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH)
|
|
endif
|
|
|
|
# ZYNQMP_PMUFW application allows users to add cflags
|
|
XILINX_EMBEDDEDSW_ZYNQMP_PMUFW_USER_CFLAGS = \
|
|
$(call qstrip,$(BR2_TARGET_XILINX_EMBEDDEDSW_ZYNQMP_PMUFW_USER_CFLAGS))
|
|
XILINX_EMBEDDEDSW_ZYNQMP_PMUFW_CFLAGS = \
|
|
"-Os -flto -ffat-lto-objects $(XILINX_EMBEDDEDSW_ZYNQMP_PMUFW_USER_CFLAGS)"
|
|
|
|
XILINX_EMBEDDEDSW_CFLAGS = "-Os -flto -ffat-lto-objects"
|
|
XILINX_EMBEDDEDSW_ASUFW_CFLAGS = "-O2 -ffat-lto-objects -fno-lto"
|
|
|
|
ifeq ($(BR2_TARGET_XILINX_EMBEDDEDSW_VERSAL2_ASUFW),y)
|
|
define XILINX_EMBEDDEDSW_BUILD_VERSAL2_ASUFW
|
|
$(MAKE) -C $(@D)/lib/sw_apps/asufw/src \
|
|
COMPILER=$(HOST_DIR)/bin/riscv32-buildroot-elf-gcc \
|
|
ARCHIVER=$(HOST_DIR)/bin/riscv32-buildroot-elf-gcc-ar \
|
|
CC=$(HOST_DIR)/bin/riscv32-buildroot-elf-gcc \
|
|
CFLAGS=$(XILINX_EMBEDDEDSW_ASUFW_CFLAGS)
|
|
endef
|
|
|
|
define XILINX_EMBEDDEDSW_INSTALL_VERSAL2_ASUFW
|
|
$(INSTALL) -D -m 0755 $(@D)/lib/sw_apps/asufw/src/asufw.elf \
|
|
$(BINARIES_DIR)/asufw.elf
|
|
endef
|
|
endif # BR2_TARGET_XILINX_EMBEDDEDSW_VERSAL2_ASUFW
|
|
|
|
ifeq ($(BR2_TARGET_XILINX_EMBEDDEDSW_VERSAL2_PLM),y)
|
|
define XILINX_EMBEDDEDSW_BUILD_VERSAL2_PLM
|
|
$(MAKE) -C $(@D)/lib/sw_apps/versal_plm/src/versal_2ve_2vm \
|
|
COMPILER=$(XILINX_EMBEDDEDSW_MICROBLAZE_CC) \
|
|
ARCHIVER=$(XILINX_EMBEDDEDSW_MICROBLAZE_AR) \
|
|
CC=$(XILINX_EMBEDDEDSW_MICROBLAZE_CC) \
|
|
CFLAGS=$(XILINX_EMBEDDEDSW_CFLAGS) \
|
|
XILPM_RUNTIME_LIB=SUBSYS
|
|
endef
|
|
|
|
define XILINX_EMBEDDEDSW_INSTALL_VERSAL2_PLM
|
|
$(INSTALL) -D -m 0755 \
|
|
$(@D)/lib/sw_apps/versal_plm/src/versal_2ve_2vm/plm.elf \
|
|
$(BINARIES_DIR)/plm.elf
|
|
endef
|
|
endif # BR2_TARGET_XILINX_EMBEDDEDSW_VERSAL2_PLM
|
|
|
|
ifeq ($(BR2_TARGET_XILINX_EMBEDDEDSW_VERSAL_PLM),y)
|
|
define XILINX_EMBEDDEDSW_BUILD_VERSAL_PLM
|
|
$(MAKE) -C $(@D)/lib/sw_apps/versal_plm/src/versal \
|
|
COMPILER=$(XILINX_EMBEDDEDSW_MICROBLAZE_CC) \
|
|
ARCHIVER=$(XILINX_EMBEDDEDSW_MICROBLAZE_AR) \
|
|
CC=$(XILINX_EMBEDDEDSW_MICROBLAZE_CC) \
|
|
CFLAGS=$(XILINX_EMBEDDEDSW_CFLAGS)
|
|
endef
|
|
|
|
define XILINX_EMBEDDEDSW_INSTALL_VERSAL_PLM
|
|
$(INSTALL) -D -m 0755 $(@D)/lib/sw_apps/versal_plm/src/versal/plm.elf \
|
|
$(BINARIES_DIR)/plm.elf
|
|
endef
|
|
endif # BR2_TARGET_XILINX_EMBEDDEDSW_VERSAL_PLM
|
|
|
|
ifeq ($(BR2_TARGET_XILINX_EMBEDDEDSW_VERSAL_PSMFW),y)
|
|
define XILINX_EMBEDDEDSW_BUILD_VERSAL_PSMFW
|
|
$(MAKE) -C $(@D)/lib/sw_apps/versal_psmfw/src/versal \
|
|
COMPILER=$(XILINX_EMBEDDEDSW_MICROBLAZE_CC) \
|
|
ARCHIVER=$(XILINX_EMBEDDEDSW_MICROBLAZE_AR) \
|
|
CC=$(XILINX_EMBEDDEDSW_MICROBLAZE_CC) \
|
|
CFLAGS=$(XILINX_EMBEDDEDSW_CFLAGS)
|
|
endef
|
|
|
|
define XILINX_EMBEDDEDSW_INSTALL_VERSAL_PSMFW
|
|
$(INSTALL) -D -m 0755 $(@D)/lib/sw_apps/versal_psmfw/src/versal/psmfw.elf \
|
|
$(BINARIES_DIR)/psmfw.elf
|
|
endef
|
|
endif # BR2_TARGET_XILINX_EMBEDDEDSW_VERSAL_PSMFW
|
|
|
|
ifeq ($(BR2_TARGET_XILINX_EMBEDDEDSW_ZYNQMP_PMUFW),y)
|
|
define XILINX_EMBEDDEDSW_BUILD_ZYNQMP_PMUFW
|
|
$(MAKE) -C $(@D)/lib/sw_apps/zynqmp_pmufw/src \
|
|
COMPILER=$(XILINX_EMBEDDEDSW_MICROBLAZE_CC) \
|
|
ARCHIVER=$(XILINX_EMBEDDEDSW_MICROBLAZE_AR) \
|
|
CC=$(XILINX_EMBEDDEDSW_MICROBLAZE_CC) \
|
|
CFLAGS=$(XILINX_EMBEDDEDSW_ZYNQMP_PMUFW_CFLAGS)
|
|
endef
|
|
|
|
define XILINX_EMBEDDEDSW_INSTALL_ZYNQMP_PMUFW
|
|
$(INSTALL) -D -m 0755 $(@D)/lib/sw_apps/zynqmp_pmufw/src/executable.elf \
|
|
$(BINARIES_DIR)/pmufw.elf
|
|
endef
|
|
endif # BR2_TARGET_XILINX_EMBEDDEDSW_ZYNQMP_PMUFW
|
|
|
|
define XILINX_EMBEDDEDSW_BUILD_CMDS
|
|
$(XILINX_EMBEDDEDSW_BUILD_VERSAL2_ASUFW)
|
|
$(XILINX_EMBEDDEDSW_BUILD_VERSAL2_PLM)
|
|
$(XILINX_EMBEDDEDSW_BUILD_VERSAL_PLM)
|
|
$(XILINX_EMBEDDEDSW_BUILD_VERSAL_PSMFW)
|
|
$(XILINX_EMBEDDEDSW_BUILD_ZYNQMP_PMUFW)
|
|
endef
|
|
|
|
define XILINX_EMBEDDEDSW_INSTALL_IMAGES_CMDS
|
|
$(XILINX_EMBEDDEDSW_INSTALL_VERSAL2_ASUFW)
|
|
$(XILINX_EMBEDDEDSW_INSTALL_VERSAL2_PLM)
|
|
$(XILINX_EMBEDDEDSW_INSTALL_VERSAL_PLM)
|
|
$(XILINX_EMBEDDEDSW_INSTALL_VERSAL_PSMFW)
|
|
$(XILINX_EMBEDDEDSW_INSTALL_ZYNQMP_PMUFW)
|
|
endef
|
|
|
|
$(eval $(generic-package))
|