imx.mk: use paths variables as much as possible
Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
diff --git a/imx.mk b/imx.mk
index f219240..aca5021 100644
--- a/imx.mk
+++ b/imx.mk
@@ -20,16 +20,14 @@
################################################################################
# Paths to git projects and various binaries
################################################################################
+FIRMWARE_PATH ?= $(ROOT)/out-firmware
MKIMAGE_PATH ?= $(ROOT)/imx-mkimage
TF_A_PATH ?= $(ROOT)/trusted-firmware-a
-U-BOOT_PATH ?= $(ROOT)/u-boot
FIRMWARE_VERSION ?= firmware-imx-8.0
FIRMWARE_BIN_SHA256_SUM ?= 63ec62f5d229cbed00918c8449173933f1c9d594c59396b8dd217e94f47138b0
FIRMWARE_BIN ?= $(FIRMWARE_VERSION).bin
FIRMWARE_BIN_URL ?= https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/$(FIRMWARE_BIN)
-FIRMWARE_PATH ?= $(ROOT)/out-firmware/$(FIRMWARE_VERSION)
-LPDDR_BIN_PATH ?= $(FIRMWARE_PATH)/firmware/ddr/synopsys
BOOT_IMG ?= $(ROOT)/out/boot.img
@@ -51,7 +49,7 @@
# BL32_EXTRA2=$(OPTEE_OS_PAGEABLE_V2_BIN) \
TF_A_FLAGS = PLAT=$(TFA_PLATFORM) SPD=opteed DEBUG_CONSOLE=1 DEBUG=0 V=1
-TF_A_FLAGS += BL32=$(ROOT)/optee_os/out/arm/core/tee-raw.bin
+TF_A_FLAGS += BL32=$(OPTEE_OS_PATH)/out/arm/core/tee-raw.bin
tfa: optee-os
$(TF_A_EXPORTS) $(MAKE) -C $(TF_A_PATH) $(TF_A_FLAGS) all fip
@@ -65,28 +63,28 @@
U-BOOT_EXPORTS = CROSS_COMPILE="$(CCACHE)$(AARCH64_CROSS_COMPILE)"
-U-BOOT_DEFCONFIG_FILES := $(U-BOOT_PATH)/configs/imx8mq_evk_defconfig \
+U-BOOT_DEFCONFIG_FILES := $(UBOOT_PATH)/configs/imx8mq_evk_defconfig \
$(BUILD_PATH)/kconfigs/uboot_imx8.conf
-$(U-BOOT_PATH)/.config: $(U-BOOT_DEFCONFIG_FILES)
- $(U-BOOT_EXPORTS) $(MAKE) -C $(U-BOOT_PATH) imx8mq_evk_defconfig
- (cd $(U-BOOT_PATH) && ARCH=arm64 scripts/kconfig/merge_config.sh \
+$(UBOOT_PATH)/.config: $(U-BOOT_DEFCONFIG_FILES)
+ $(U-BOOT_EXPORTS) $(MAKE) -C $(UBOOT_PATH) imx8mq_evk_defconfig
+ (cd $(UBOOT_PATH) && ARCH=arm64 scripts/kconfig/merge_config.sh \
$(U-BOOT_DEFCONFIG_FILES))
.PHONY: u-boot-defconfig
-u-boot-defconfig: $(U-BOOT_PATH)/.config
+u-boot-defconfig: $(UBOOT_PATH)/.config
.PHONY: u-boot
u-boot: u-boot-defconfig
- $(U-BOOT_EXPORTS) $(MAKE) -C $(U-BOOT_PATH)
+ $(U-BOOT_EXPORTS) $(MAKE) -C $(UBOOT_PATH)
.PHONY: u-boot-clean
u-boot-clean:
- cd $(U-BOOT_PATH) && git clean -xdf
+ cd $(UBOOT_PATH) && git clean -xdf
.PHONY: u-boot-cscope
u-boot-cscope:
- $(U-BOOT_EXPORTS) $(MAKE) -C $(U-BOOT_PATH) cscope
+ $(U-BOOT_EXPORTS) $(MAKE) -C $(UBOOT_PATH) cscope
################################################################################
@@ -125,14 +123,14 @@
# This is prebuilt binaries by NXP, download them and use them. Update path if
# it changes in the future.
-$(ROOT)/out-firmware/$(FIRMWARE_BIN):
- mkdir -p $(ROOT)/out-firmware
- (cd $(ROOT)/out-firmware && wget $(FIRMWARE_BIN_URL))
+$(FIRMWARE_PATH)/$(FIRMWARE_BIN):
+ mkdir -p $(FIRMWARE_PATH)
+ (cd $(FIRMWARE_PATH) && wget $(FIRMWARE_BIN_URL))
-$(FIRMWARE_PATH)/.unpacked: $(ROOT)/out-firmware/$(FIRMWARE_BIN)
- (cd $(ROOT)/out-firmware && \
+$(FIRMWARE_PATH)/.unpacked: $(FIRMWARE_PATH)/$(FIRMWARE_BIN)
+ (cd $(FIRMWARE_PATH) && \
echo $(FIRMWARE_BIN_SHA256_SUM) $(FIRMWARE_BIN) | sha256sum -c)
- (cd $(ROOT)/out-firmware && \
+ (cd $(FIRMWARE_PATH) && \
chmod 711 $(FIRMWARE_BIN) && ./$(FIRMWARE_BIN) --auto-accept)
touch $(FIRMWARE_PATH)/.unpacked
@@ -140,39 +138,40 @@
ddr-firmware: $(FIRMWARE_PATH)/.unpacked
ddr-firmware-clean:
- rm -rf $(ROOT)/out-firmware
+ rm -rf $(FIRMWARE_PATH)
################################################################################
# imx-mkimage
################################################################################
mkimage: u-boot tfa ddr-firmware
- ln -sf $(ROOT)/optee_os/out/arm/core/tee-raw.bin \
+ ln -sf $(OPTEE_OS_PATH)/out/arm/core/tee-raw.bin \
$(MKIMAGE_PATH)/iMX8M/tee.bin
- ln -sf $(ROOT)/trusted-firmware-a/build/imx8mq/release/bl31.bin \
+ ln -sf $(TF_A_PATH)/build/$(TFA_PLATFORM)/release/bl31.bin \
$(MKIMAGE_PATH)/iMX8M/
- ln -sf $(LPDDR_BIN_PATH)/lpddr4_pmu_train_*.bin $(MKIMAGE_PATH)/iMX8M/
- ln -sf $(U-BOOT_PATH)/u-boot-nodtb.bin $(MKIMAGE_PATH)/iMX8M/
- ln -sf $(U-BOOT_PATH)/spl/u-boot-spl.bin $(MKIMAGE_PATH)/iMX8M/
- ln -sf $(U-BOOT_PATH)/arch/arm/dts/imx8mq-evk.dtb \
+ ln -sf $(FIRMWARE_PATH)/$(FIRMWARE_VERSION)/firmware/ddr/synopsys/lpddr4_pmu_train_*.bin \
+ $(MKIMAGE_PATH)/iMX8M/
+ ln -sf $(UBOOT_PATH)/u-boot-nodtb.bin $(MKIMAGE_PATH)/iMX8M/
+ ln -sf $(UBOOT_PATH)/spl/u-boot-spl.bin $(MKIMAGE_PATH)/iMX8M/
+ ln -sf $(UBOOT_PATH)/arch/arm/dts/imx8mq-evk.dtb \
$(MKIMAGE_PATH)/iMX8M/fsl-imx8mq-evk.dtb
- ln -sf $(U-BOOT_PATH)/tools/mkimage $(MKIMAGE_PATH)/iMX8M/mkimage_uboot
+ ln -sf $(UBOOT_PATH)/tools/mkimage $(MKIMAGE_PATH)/iMX8M/mkimage_uboot
$(MAKE) -C $(MKIMAGE_PATH) SOC=iMX8M flash_spl_uboot
#> +If you want to run with HDMI, copy signed_hdmi_imx8m.bin to imx-mkimage/iMX8M
#> +make SOC=iMX8M flash_spl_uboot or make SOC=iMX8M flash_hdmi_spl_uboot to
#> +generate flash.bin.
mkimage-clean:
cd $(MKIMAGE_PATH) && git clean -xdf
- rm -f $(ROOT)/build/mkimage_imx8
+ rm -f $(BUILD_PATH)/mkimage_imx8
$(ROOT)/out-br/images/ramdisk.img: $(ROOT)/out-br/images/rootfs.cpio.gz
- $(U-BOOT_PATH)/tools/mkimage -A arm64 -O linux -T ramdisk -C gzip \
+ $(UBOOT_PATH)/tools/mkimage -A arm64 -O linux -T ramdisk -C gzip \
-d $< $@
$(ROOT)/out:
mkdir -p $@
-$(ROOT)/out/boot.scr: $(ROOT)/build/imx/u-boot_boot_script | $(ROOT)/out
- $(U-BOOT_PATH)/tools/mkimage -T script -C none -n 'Boot script' \
+$(ROOT)/out/boot.scr: $(BUILD_PATH)/imx/u-boot_boot_script | $(ROOT)/out
+ $(UBOOT_PATH)/tools/mkimage -T script -C none -n 'Boot script' \
-d $< $@
################################################################################
@@ -235,5 +234,5 @@
dd if=$(BOOT_IMG).fat of=$(BOOT_IMG) bs=$(FLASH_PARTITIONS_BLOCK_SIZE) \
seek=$(FLASH_PARTITION_BOOT_START_BLOCK) conv=fsync,notrunc
- dd if=$(ROOT)/imx-mkimage/iMX8M/flash.bin of=$(BOOT_IMG) bs=1k seek=33 \
+ dd if=$(MKIMAGE_PATH)/iMX8M/flash.bin of=$(BOOT_IMG) bs=1k seek=33 \
conv=fsync,notrunc