1########################################################################################## 2# prepare param 3########################################################################################## 4export OSDRV_DIR=$(shell pwd) 5export OSDRV_CROSS 6export CHIP?=hi3518ev300 7export ARCH=arm 8export CROSS_COMPILE=$(OSDRV_CROSS)- 9BOOT_MEDIA?=spi 10 11ifneq ($(BOOT_MEDIA),spi) 12ifneq ($(BOOT_MEDIA),emmc) 13$(error you must set valid BOOT_MEDIA:spi or emmc!) 14endif 15endif 16 17ifeq ($(OSDRV_CROSS), ) 18OSDRV_CROSS=$(OSDRV_DIR)/../../../../../prebuilts/gcc/linux-x86/arm/gcc-linaro-7.5.0-arm-linux-gnueabi/bin/arm-linux-gnueabi 19endif 20 21UBOOT_VER:=u-boot-2020.01 22UBOOT_TAR:=$(UBOOT_VER).tgz 23UBOOT:=u-boot-$(CHIP).bin 24UBOOT_REG_BIN:=reg_info_$(CHIP).bin 25ifeq ($(BOOT_MEDIA),emmc) 26export UBOOT_CONFIG:=$(CHIP)_$(BOOT_MEDIA)_config 27else 28export UBOOT_CONFIG:=$(CHIP)_config 29endif 30 31NORMAL_UBOOT_DIR:=$(OSDRV_DIR)/../../../../../third_party/uboot 32 33########################################################################################## 34# set task 35########################################################################################## 36all: prepare hiboot hipctools build_done 37 38clean: hiboot_clean hipctools_clean 39 40distclean: clean pub_clean clean_done 41 42########################################################################################## 43##task [0] prepare out directory 44########################################################################################## 45prepare: 46 @echo "------- task [0] prepare out dir -------" 47 mkdir $(OSDRV_DIR)/out/boot -p 48 49########################################################################################## 50#task [1] build uboot 51########################################################################################## 52hiboot: 53 @echo "---------task [1] build boot" 54 find $(NORMAL_UBOOT_DIR)/$(UBOOT_VER) | xargs touch 55 make -C $(NORMAL_UBOOT_DIR)/$(UBOOT_VER) ARCH=arm CROSS_COMPILE=$(OSDRV_CROSS)- $(UBOOT_CONFIG) 56 pushd $(NORMAL_UBOOT_DIR)/$(UBOOT_VER);make ARCH=arm CROSS_COMPILE=$(OSDRV_CROSS)- -j 20 >/dev/null;popd 57 chmod +x $(NORMAL_UBOOT_DIR)/$(UBOOT_VER)/arch/arm/cpu/armv7/$(CHIP)/hw_compressed/gzip 58 cp $(OSDRV_DIR)/reg/$(UBOOT_REG_BIN) $(NORMAL_UBOOT_DIR)/$(UBOOT_VER)/.reg 59 pushd $(NORMAL_UBOOT_DIR)/$(UBOOT_VER);make ARCH=arm CROSS_COMPILE=$(OSDRV_CROSS)- u-boot-z.bin >/dev/null;popd 60 cp $(NORMAL_UBOOT_DIR)/$(UBOOT_VER)/u-boot-$(CHIP).bin $(OSDRV_DIR)/out/boot 61 cp $(NORMAL_UBOOT_DIR)/$(UBOOT_VER)/u-boot-$(CHIP).bin $(OSDRV_DIR)/secureboot_release 62 63hiboot_clean: 64 @cd $(NORMAL_UBOOT_DIR)/$(UBOOT_VER)/;make distclean 65 @echo "---------boot clean" 66 67########################################################################################## 68##task [2] make hipctools 69########################################################################################## 70hipctools:prepare 71 @echo "---------task [2] build tools run on pc" 72 73hipctools_clean: 74 75########################################################################################## 76#task [4] clean out 77########################################################################################## 78pub_clean: 79 rm $(OSDRV_DIR)/out/* -rf 80 81build_done: 82 @echo "------- osdrv build done -------" 83 84clean_done: 85 @echo "------- clean done -------" 86 87