Skip to content
Snippets Groups Projects
make_boundary 2.18 KiB
Newer Older
savedir=../u-boot-images
mkdir -p $savedir
boards=$(cd configs && grep -l DEFCONFIG * | sed 's/_defconfig.*$//');
cpus=`grep -c '^processor' /proc/cpuinfo` ;
jobs=`expr $cpus + 2` ;
numboards=0;
numsuccess=0;
numfailures=0;
for board in $boards ; do
    if [ $board != "mx6qsabrelite" ] ; then
	cnt=`sed -n "/CONFIG_ARCH_IMX8M=/=" configs/${board}_defconfig`
	if [ "${cnt}" != "" ] ; then
		export ARCH=arm64
		export CROSS_COMPILE=aarch64-linux-gnu-
		export ARCH=arm
		export CROSS_COMPILE=arm-linux-gnueabihf-
	make distclean ; make ${board}_defconfig
	make all -j $jobs
	if [ $? -ne 0 ]; then
		numfailures=`expr $numfailures + 1`;
		echo -e "\n\n\n!!!!!!!! build failure for $board !!!!!!!!!!!!\n\n";
		read line;
	else
		if [ "${ARCH}" == "arm64" ] ; then
			source configs/${board}_defconfig ;
			DDR_MB=${CONFIG_SYS_EXTRA_OPTIONS/*DDR_MB=/}
			DDR_MB=${DDR_MB/,*}
			if [ ${DDR_MB} == 2048 ] ; then
				sz=2g
			elif [ ${DDR_MB} == 3072 ] ; then
				sz=3g
			elif [ ${DDR_MB} == 4096 ] ; then
				sz=4g
			else
				sz=2g
				numfailures=`expr $numfailures + 1`;
				echo -e "\n\n\n!!!!!!!! build failure for $board !!!!!!!!!!!!\n\n";
			fi
			UBOOT_PATH=${WORKSPACE} UBOOT_DTB=${CONFIG_DEFAULT_DEVICE_TREE}.dtb ./make_boundary.sh ${sz};
			cp -v iMX8M/u-boot-lpddr4-${sz}.hdmibin ${savedir}/u-boot.${board} ;
			cd - ;
		        ls -l ${savedir}/u-boot.${board};
			mkdir -p ${savedir}/${board}
		        cp -fv arch/arm/dts/${CONFIG_DEFAULT_DEVICE_TREE}.dtb ${savedir}/${board}/
		        cp -fv spl/u-boot-spl.bin ${savedir}/${board}/;
		        cp -fv u-boot.bin ${savedir}/${board}/;
		        cp -fv u-boot-nodtb.bin ${savedir}/${board}/;
		else
		        cp -fv u-boot.imx $savedir/u-boot.${board};
		        ls -l $savedir/u-boot.${board};
		fi
		numsuccess=`expr $numsuccess + 1`;
	fi
	defcfg=$(sed -n -e's/.\{1,\}DEFCONFIG=\\"\(.\{1,\}\)\\""/\1/p' configs/${board}_defconfig)
	if [ "$defcfg" != "$board" ] ; then
		echo -e "\n\n\n!!!!!!!! $board does not match $defcfg !!!!!!!!!!!!\n\n";
		read line;
	fi
	numboards=`expr $numboards + 1`;
    fi
done
echo -e "\n\n\nbuilt for ${numboards} boards. ${numsuccess} succeeded and ${numfailures} failed";