File:  [ELWIX - Embedded LightWeight unIX -] / elwix / config / etc / uboot / rc.cfg
Revision 1.1.2.5: download - view: text, annotated - select for diffs - revision graph
Mon Jan 27 22:10:22 2014 UTC (10 years, 8 months ago) by misho
Branches: elwix2_2
add 2 progs
config nand map
fix rc.cfg script

#!/bin/sh
#
# U-boot cfg nand map load/save management script
#
# $Id: rc.cfg,v 1.1.2.5 2014/01/27 22:10:22 misho Exp $

CFG_NAND_LIST="/etc/cfg.map"
CFG_NAND_MAP="/dev/map/cfg"
CFG_NAND_SIZE=65536

cd ${2:-.}

case "$1" in
	load)
		dd if=${CFG_NAND_MAP} bs=${CFG_NAND_SIZE} 2>&- | \
		      gunzip 2>&- | cpio -iud 2>&- || exit 1
		;;
	save)
		if [ ! -r ${CFG_NAND_LIST} ];then
			echo "# Auto generated manifest file" >${CFG_NAND_LIST}
			find . >>${CFG_NAND_LIST}
			if [ $? -ne 0 -o ! -r ${CFG_NAND_LIST} ]; then
				echo "Manifest cfg nand map - file '${CFG_NAND_LIST}' not found!"
				exit 1
			fi
		fi

		sed -nE -e 's/^ *([^ #]+) */\1/p' < ${CFG_NAND_LIST} | xargs find | \
			cpio -o | gzip -9 | \
			dd of=${CFG_NAND_MAP} bs=${CFG_NAND_SIZE} count=1 conv=sync \
				2>&- || exit 1
		;;
	*)
		echo "Missing parameter - available options are (load | save)"
		;;
esac

cd -

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