File:  [ELWIX - Embedded LightWeight unIX -] / elwix / install2uboot.sh
Revision 1.1.2.9: download - view: text, annotated - select for diffs - revision graph
Tue Feb 4 10:14:42 2014 UTC (10 years, 3 months ago) by misho
Branches: elwix2_2
update scr

#!/bin/sh
#
# ELWIX install script for u-boot image
#
# (C) AITNET ltd - Sofia/Bulgaria <office@aitnet.org>
#    by Michael Pounov <misho@elwix.org>
#
# $Id: install2uboot.sh,v 1.1.2.9 2014/02/04 10:14:42 misho Exp $
#

[ -r ./config/rc.elwix ] && . ./config/rc.elwix
if [ X"${ELWIX_IS_CONFIGURED}" != X"YES" ]; then
	echo
	echo "ELWIX project is not configured !?!"
	echo
	exit 1
fi

if [ "${USER}" != "root" ]; then
	echo
	echo "ELWIX project is not configured - install must build under root !?!"
	echo
	exit 1
fi

if [ -z "${UB_LOADADDR}" ]; then
	echo
	echo "ELWIX project is not configured for u-boot use !?!"
	echo
	exit 1
fi


### main()

if [ -z "$1" ]; then
	echo
	echo "Error:: ELWIX u-boot option not found ..."
	echo
	exit 2
fi

case $1 in
	kernel)
		oldlzma e ${KERNEL} ${REL}/kernel.${UB_COMPRESS}
		uboot_mkimage -A ${TARGET} -O linux -T kernel -C ${UB_COMPRESS} -n ELWIX \
			-a ${UB_LOADADDR} -e ${UB_ENTRYADDR} -d ${REL}/kernel.${UB_COMPRESS} \
			${REL}/kernel.${UB_COMPRESS}.uImage
		;;
	kernel_rootfs)
		oldlzma e ${KERNEL_ROOTFS} ${REL}/kernel_rootfs.${UB_COMPRESS}
		uboot_mkimage -A ${TARGET} -O linux -T kernel -C ${UB_COMPRESS} -n ELWIX_ROOTFS \
			-a ${UB_LOADADDR} -e ${UB_ENTRYADDR} -d ${REL}/kernel_rootfs.${UB_COMPRESS} \
			${REL}/kernel_rootfs.${UB_COMPRESS}.uImage
		;;
	rootfs)
		makefs -t ffs -B ${UB_ORDER} -f 1000 -s ${UB_ROOTFS_SIZE} \
			-o "version=1,bsize=4096,fsize=512,minfree=0" \
			${REL}/rootfs.dsk ${UBOOT_FS}
		mkulzma -v -s 131072 -o ${REL}/rootfs.${UB_COMPRESS_ROOTFS} ${REL}/rootfs.dsk
		;;
	bin)
		dd if=${REL}/rootfs.${UB_COMPRESS_ROOTFS} of=${REL}/elwix_firmware.bin bs=65536 \
			count=${UB_ROOTFS_NAND_SIZE} conv=sync
		dd if=${REL}/kernel.${UB_COMPRESS}.uImage of=${REL}/elwix_firmware.bin bs=65536 \
			count=${UB_KERNEL_NAND_SIZE} conv=sync seek=${UB_ROOTFS_NAND_SIZE}
		;;
	*)
		echo "Option $1 not supported at this moment"
		;;
esac

echo "ELWIX u-boot image $1 complete."

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>