diff --git a/boot/xilinx-embeddedsw/Config.in b/boot/xilinx-embeddedsw/Config.in index a27253d594..31b12baaf2 100644 --- a/boot/xilinx-embeddedsw/Config.in +++ b/boot/xilinx-embeddedsw/Config.in @@ -1,4 +1,5 @@ -comment "xilinx-embeddedsw needs a bare metal toolchain for tuple microblazeel-xilinx-elf" +comment "xilinx-embeddedsw needs a bare metal toolchain for tuple microblazeel-buildroot-elf" + depends on BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH != "microblazeel-buildroot-elf" depends on BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH != "microblazeel-xilinx-elf" menuconfig BR2_TARGET_XILINX_EMBEDDEDSW diff --git a/boot/xilinx-embeddedsw/xilinx-embeddedsw.mk b/boot/xilinx-embeddedsw/xilinx-embeddedsw.mk index 7d4fcf8b8f..03acb153d1 100644 --- a/boot/xilinx-embeddedsw/xilinx-embeddedsw.mk +++ b/boot/xilinx-embeddedsw/xilinx-embeddedsw.mk @@ -12,6 +12,17 @@ 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!) +$(warning 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)) @@ -23,9 +34,9 @@ XILINX_EMBEDDEDSW_CFLAGS = "-Os -flto -ffat-lto-objects" 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=$(HOST_DIR)/bin/microblazeel-xilinx-elf-gcc \ - ARCHIVER=$(HOST_DIR)/bin/microblazeel-xilinx-elf-gcc-ar \ - CC=$(HOST_DIR)/bin/microblazeel-xilinx-elf-gcc \ + COMPILER=$(XILINX_EMBEDDEDSW_MICROBLAZE_CC) \ + ARCHIVER=$(XILINX_EMBEDDEDSW_MICROBLAZE_AR) \ + CC=$(XILINX_EMBEDDEDSW_MICROBLAZE_CC) \ CFLAGS=$(XILINX_EMBEDDEDSW_CFLAGS) endef @@ -38,9 +49,9 @@ 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=$(HOST_DIR)/bin/microblazeel-xilinx-elf-gcc \ - ARCHIVER=$(HOST_DIR)/bin/microblazeel-xilinx-elf-gcc-ar \ - CC=$(HOST_DIR)/bin/microblazeel-xilinx-elf-gcc \ + COMPILER=$(XILINX_EMBEDDEDSW_MICROBLAZE_CC) \ + ARCHIVER=$(XILINX_EMBEDDEDSW_MICROBLAZE_AR) \ + CC=$(XILINX_EMBEDDEDSW_MICROBLAZE_CC) \ CFLAGS=$(XILINX_EMBEDDEDSW_CFLAGS) endef @@ -53,9 +64,9 @@ 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=$(HOST_DIR)/bin/microblazeel-xilinx-elf-gcc \ - ARCHIVER=$(HOST_DIR)/bin/microblazeel-xilinx-elf-gcc-ar \ - CC=$(HOST_DIR)/bin/microblazeel-xilinx-elf-gcc \ + COMPILER=$(XILINX_EMBEDDEDSW_MICROBLAZE_CC) \ + ARCHIVER=$(XILINX_EMBEDDEDSW_MICROBLAZE_AR) \ + CC=$(XILINX_EMBEDDEDSW_MICROBLAZE_CC) \ CFLAGS=$(XILINX_EMBEDDEDSW_ZYNQMP_PMUFW_CFLAGS) endef