|
version 1.1.2.13, 2014/02/05 10:07:11
|
version 1.1.2.23, 2014/02/25 21:52:17
|
|
Line 9 CFG_NAND_MAP="/dev/map/cfg"
|
Line 9 CFG_NAND_MAP="/dev/map/cfg"
|
| CFG_NAND_SIZE=65536 |
CFG_NAND_SIZE=65536 |
| |
|
| FRM_NAND_MAP="/dev/map/firmware" |
FRM_NAND_MAP="/dev/map/firmware" |
| FRM_NAND_CNT=121 | FRM_NAND_SIZE=7929856 |
| |
|
| UPGRADE_IMAGE="" | UPGRADE_GPIO_PINS="8 6 7" |
| |
|
| cd ${2:-/etc} |
cd ${2:-/etc} |
| |
|
| case "$1" in |
case "$1" in |
| load) |
load) |
| dd if=${CFG_NAND_MAP} bs=${CFG_NAND_SIZE} 2>&- | \ | imgupd -gs ${CFG_NAND_SIZE} -f ${CFG_NAND_MAP} | \ |
| gunzip 2>&- | cpio -iud 2>&- || exit 1 |
gunzip 2>&- | cpio -iud 2>&- || exit 1 |
| ;; |
;; |
| save) |
save) |
|
Line 32 case "$1" in
|
Line 32 case "$1" in
|
| |
|
| sed -nE -e 's/^ *([^ #]+) */\1/p' < ${CFG_NAND_LIST} | xargs find | \ |
sed -nE -e 's/^ *([^ #]+) */\1/p' < ${CFG_NAND_LIST} | xargs find | \ |
| cpio -o | gzip -9 | \ |
cpio -o | gzip -9 | \ |
| dd of=${CFG_NAND_MAP} bs=${CFG_NAND_SIZE} count=1 conv=sync \ | imgupd -is ${CFG_NAND_SIZE} -f ${CFG_NAND_MAP} || exit 1 |
| 2>&- || exit 1 | |
| ;; |
;; |
| erase) |
erase) |
| dd if=/dev/zero of=${CFG_NAND_MAP} bs=${CFG_NAND_SIZE} count=1 \ | imgupd -is ${CFG_NAND_SIZE} -f ${CFG_NAND_MAP} /dev/zero || exit 1 |
| conv=sync 2>&- || exit 1 | |
| echo "Config NAND was erased!" |
echo "Config NAND was erased!" |
| ;; |
;; |
| upgrade) | restore) |
| ELWIX_UPGRADE_HOST=`cat /etc/myelwix` | ELWIX_REMOTE_HOST=`cat /etc/myelwix` |
| ping -c1 $(echo ${ELWIX_UPGRADE_HOST} | cut -f3 -d '/' | cut -f2 -d '@') >/dev/null 2>&1 | ping -c1 $(echo ${ELWIX_REMOTE_HOST} | cut -f3 -d '/' | cut -f2 -d '@') >/dev/null 2>&1 |
| if [ $? -ne 0 ]; then |
if [ $? -ne 0 ]; then |
| echo "ELWIX upgrade from host ${ELWIX_UPGRADE_HOST} failed!!!" | echo "ELWIX restore from host ${ELWIX_REMOTE_HOST} failed!!!" |
| exit 1 |
exit 1 |
| else |
|
| ELWIX_UPGRADE_HOST="${ELWIX_UPGRADE_HOST}/elwix/elwix_firmware.bin" |
|
| fi |
fi |
| |
|
| echo "ELIWX erasing NAND ${FRM_NAND_MAP}" | echo "ELWIX starting restore process from ${ELWIX_REMOTE_HOST}" |
| dd if=/dev/zero of=${FRM_NAND_MAP} bs=65536 count=${FRM_NAND_CNT} || exit 1 | fetch -q -o- --user-agent=ELWIX_Restore --allow-sslv2 \ |
| | --no-verify-peer --no-verify-hostname ${ELWIX_REMOTE_HOST} | \ |
| | imgupd -R -is ${CFG_NAND_SIZE} -f ${CFG_NAND_MAP} || exit 1 |
| | echo "ELWIX restore process complete. Now rebooting system ..." |
| | ;; |
| | backup) |
| | ELWIX_REMOTE_HOST="/tmp/elwix_cfg.bin" |
| |
|
| echo "ELIWX starting upgrade from ${ELWIX_UPGRADE_HOST}" | echo "ELWIX starting backup process to ${ELWIX_REMOTE_HOST}" |
| fetch -q -o- --user-agent=ELWIX_Upgrade --allow-sslv2 \ | imgupd -gs ${CFG_NAND_SIZE} -f ${CFG_NAND_MAP} ${ELWIX_REMOTE_HOST} || exit 1 |
| --no-verify-peer --no-verify-hostname ${ELWIX_UPGRADE_HOST} | \ | echo "ELWIX backup process complete." |
| dd of=${FRM_NAND_MAP} bs=${CFG_NAND_SIZE} \ | |
| count=${FRM_NAND_CNT} conv=sync 2>&- || exit 1 | |
| echo "ELWIX upgrade complete. Now rebooting system ..." | |
| sleep 3 | |
| reboot | |
| ;; |
;; |
| |
upgrade) |
| |
echo "ELWIX switch to upgrade mode. Starting TFTPd ..." |
| |
echo " You can upload now elwix_firmware.bin image to device with \"firmware\" name!!!" |
| |
echo " Example: put elwix_firmware.bin firmware" |
| |
for i in ${UPGRADE_GPIO_PINS}; do |
| |
gpioctl $i 1 >/dev/null 2>&1 |
| |
done |
| |
TFTPd -wR |
| |
;; |
| *) |
*) |
| echo "Missing parameter - available options are (load | save | erase | upgrade)" | echo "Missing parameter - available options are (load | save | erase | backup | restore | upgrade)" |
| ;; |
;; |
| esac |
esac |
| |
|