Annotation of elwix/config/etc/uboot/rc.cfg, revision 1.1.2.7
1.1.2.1 misho 1: #!/bin/sh
2: #
3: # U-boot cfg nand map load/save management script
4: #
1.1.2.7 ! misho 5: # $Id: rc.cfg,v 1.1.2.6 2014/01/27 22:19:40 misho Exp $
1.1.2.1 misho 6:
1.1.2.5 misho 7: CFG_NAND_LIST="/etc/cfg.map"
1.1.2.1 misho 8: CFG_NAND_MAP="/dev/map/cfg"
9: CFG_NAND_SIZE=65536
10:
1.1.2.7 ! misho 11: FRM_NAND_MAP="/dev/map/firmware"
! 12: FRM_NAND_CNT=121
! 13:
! 14: UPGRADE_IMAGE=""
! 15:
1.1.2.3 misho 16: cd ${2:-.}
1.1.2.2 misho 17:
1.1.2.1 misho 18: case "$1" in
19: load)
1.1.2.5 misho 20: dd if=${CFG_NAND_MAP} bs=${CFG_NAND_SIZE} 2>&- | \
21: gunzip 2>&- | cpio -iud 2>&- || exit 1
1.1.2.1 misho 22: ;;
23: save)
1.1.2.3 misho 24: if [ ! -r ${CFG_NAND_LIST} ];then
1.1.2.4 misho 25: echo "# Auto generated manifest file" >${CFG_NAND_LIST}
26: find . >>${CFG_NAND_LIST}
27: if [ $? -ne 0 -o ! -r ${CFG_NAND_LIST} ]; then
28: echo "Manifest cfg nand map - file '${CFG_NAND_LIST}' not found!"
29: exit 1
30: fi
1.1.2.3 misho 31: fi
32:
1.1.2.5 misho 33: sed -nE -e 's/^ *([^ #]+) */\1/p' < ${CFG_NAND_LIST} | xargs find | \
34: cpio -o | gzip -9 | \
35: dd of=${CFG_NAND_MAP} bs=${CFG_NAND_SIZE} count=1 conv=sync \
36: 2>&- || exit 1
1.1.2.1 misho 37: ;;
1.1.2.6 misho 38: erase)
39: dd if=/dev/zero of=${CFG_NAND_MAP} bs=${CFG_NAND_SIZE} count=1 \
40: conv=sync 2>&- || exit 1
41: echo "Config NAND was erased!"
42: ;;
1.1.2.7 ! misho 43: upgrade)
! 44: [ -r /tmp/upgrade.LCK ] && exit 1
! 45: ping -c1 "${ELWIX_UPGRADE_HOST}" >/dev/null 2>&1
! 46: if [ $? -ne 0 ]; then
! 47: echo "ELWIX upgrade from host ${ELWIX_UPGRADE_HOST} failed!!!"
! 48: exit 1
! 49: fi
! 50:
! 51: echo "ELIWX starting upgrade from ${ELWIX_UPGRADE_HOST}"
! 52: cat >/tmp/upgrade.LCK << _EOF
! 53: binary
! 54: get elwix_firmware.img /dev/fd/1
! 55: _EOF
! 56: tftp ${ELWIX_UPGRADE_HOST} < /tmp/upgrade.LCK | dd \
! 57: of=${FRM_NAND_MAP} bs=${CFG_NAND_SIZE} \
! 58: count=${FRM_NAND_CNT} conv=sync 2>&- || exit 1
! 59: rm -f /tmp/upgrade.LCK
! 60: echo "ELWIX upgrade complete. Now rebooting system ..."
! 61: sleep 3
! 62: reboot
! 63: ;;
1.1.2.1 misho 64: *)
1.1.2.7 ! misho 65: echo "Missing parameter - available options are (load | save | erase | upgrade)"
1.1.2.1 misho 66: ;;
67: esac
1.1.2.3 misho 68:
69: cd -
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>