#!/usr/bin/make -f


PWD:=$(shell pwd)
BOOT_PATH:=$(PWD)/debian/tmp/boot
ETC_PATH:=$(PWD)/debian/tmp/etc
TOOL_PATH:=$(PWD)/debian/tmp/usr/bin

BUILD_DIR:=$(PWD)/debian/build

MAKE_OPTS= ARCH=arm CROSS_COMPILE=aarch64-linux-gnu- ATF_LOAD_ADDR=0x920000 UBOOTRELEASE=2021.04+2.2.0-phy7 O=$(BUILD_DIR)

FW_IMX_DIR=/lib/firmware/imx/
FW_IMX_DDR_DIR=/lib/firmware/imx/ddr/synopsys

IMX_ATF_DIR=/usr/lib/arm-trusted-firmware/

#export DH_VERBOSE=1
export LDFLAGS=

override_dh_auto_test:
	# skip tests.

override_dh_auto_clean:
	rm -rf $(BUILD_DIR)
	rm -f debian/files
	rm -rf debian/tmp
	make $(MAKE_OPTS) clean

override_dh_auto_configure:
	mkdir -p $(BUILD_DIR)
	\
	# ATF firmware from imx-atf 
	cp $(IMX_ATF_DIR)/imx8mm/bl31.bin $(BUILD_DIR)
	\
	# DDR firmware from firmware-imx
	cp $(FW_IMX_DDR_DIR)/lpddr4_pmu_train_1d_dmem.bin \
		$(FW_IMX_DDR_DIR)/lpddr4_pmu_train_1d_imem.bin \
		$(FW_IMX_DDR_DIR)/lpddr4_pmu_train_2d_dmem.bin \
		$(FW_IMX_DDR_DIR)/lpddr4_pmu_train_2d_imem.bin \
		$(BUILD_DIR)
	\
	make $(MAKE_OPTS) phycore-imx8mm_defconfig

override_dh_auto_build:
	make -j`nproc` $(MAKE_OPTS) flash.bin u-boot-initial-env

override_dh_auto_install:
	mkdir -p $(TOOL_PATH) $(BOOT_PATH) $(ETC_PATH)
	cp $(BUILD_DIR)/flash.bin $(BOOT_PATH)
	cp $(BUILD_DIR)/flash.log $(BOOT_PATH)
	cd $(BUILD_DIR); $(PWD)/print_fit_hab.sh >> $(BOOT_PATH)/flash.log
	cp $(BUILD_DIR)/u-boot-initial-env $(ETC_PATH)

%:
	dh $@
