Annotation of elwix/config/etc/uboot/rc.cfg, revision 1.1.2.12

1.1.2.1   misho       1: #!/bin/sh
                      2: #
                      3: # U-boot cfg nand map load/save management script
                      4: #
1.1.2.12! misho       5: # $Id: rc.cfg,v 1.1.2.11 2014/02/04 13:47:03 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.9   misho      16: cd ${2:-/etc}
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)
1.1.2.8   misho      44:                ELWIX_UPGRADE_HOST=`cat /etc/myelwix`
1.1.2.12! misho      45:                ping -c1 $(echo ${ELWIX_UPGRADE_HOST} | cut -f3 -d '/' | cut -f2 -d '@') >/dev/null 2>&1
1.1.2.7   misho      46:                if [ $? -ne 0 ]; then
                     47:                        echo "ELWIX upgrade from host ${ELWIX_UPGRADE_HOST} failed!!!"
                     48:                        exit 1
1.1.2.10  misho      49:                else
1.1.2.12! misho      50:                        ELWIX_UPGRADE_HOST="${ELWIX_UPGRADE_HOST}/elwix/elwix_firmware.bin"
1.1.2.7   misho      51:                fi
                     52: 
                     53:                echo "ELIWX starting upgrade from ${ELWIX_UPGRADE_HOST}"
1.1.2.11  misho      54:                fetch -q -o- --user-agent=ELWIX_Upgrade --allow-sslv2 \
                     55:                        --no-verify-peer --no-verify-hostname ${ELWIX_UPGRADE_HOST} | \
                     56:                        dd of=${FRM_NAND_MAP} bs=${CFG_NAND_SIZE} \
1.1.2.7   misho      57:                        count=${FRM_NAND_CNT} conv=sync 2>&- || exit 1
                     58:                echo "ELWIX upgrade complete. Now rebooting system ..."
                     59:                sleep 3
                     60:                reboot
                     61:                ;;
1.1.2.1   misho      62:        *)
1.1.2.7   misho      63:                echo "Missing parameter - available options are (load | save | erase | upgrade)"
1.1.2.1   misho      64:                ;;
                     65: esac
1.1.2.3   misho      66: 
                     67: cd -

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