Newer
Older
barebox / defaultenv / bin / _update
@Teresa Gamez Teresa Gamez on 10 Jun 2011 723 bytes Check return values of erase and tftp/cp
#!/bin/sh

if [ -z "$part" -o -z "$image" ]; then
	echo "define \$part and \$image"
	exit 1
fi

if [ ! -e "$part" ]; then
	echo "Partition $part does not exist"
	exit 1
fi

if [ x$mode = xtftp ]; then
	if [ x$ip = xdhcp ]; then
		dhcp
	fi

	ping $eth0.serverip
	if [ $? -ne 0 ] ; then
		echo "Server did not reply! Update aborted."
		exit 1
	fi
fi

if [ x$mode = xxmodem ]; then
	loadb -f $image -c
	if [ $? -ne 0 ] ; then
		echo "loadb failed or cancelled! Update aborted."
		exit 1
	fi
fi

unprotect $part

echo
echo "erasing partition $part"
echo
erase $part || exit 1

echo
echo "flashing $image to $part"
echo

if [ x$mode = xtftp ]; then
	tftp $image $part || exit 1
else
	cp $image $part || exit 1
fi

protect $part