# # Copyright (C) 2014 OpenWrt.org # preinit_mount_syscfg() { . /lib/functions.sh . /lib/mvebu.sh case $(mvebu_board_name) in armada-385-linksys-caiman|armada-385-linksys-cobra|armada-385-linksys-shelby|armada-xp-linksys-mamba) needs_recovery=0 ubiattach -m 8 || needs_recovery=1 if [ $needs_recovery -eq 1 ] then echo "ubifs syscfg partition is damaged, reformatting" ubidetach -m 8 ubiformat -y -O 2048 -q /dev/mtd8 ubiattach -m 8 ubimkvol /dev/ubi1 -n 0 -N syscfg -t dynamic --maxavsize fi mkdir /tmp/syscfg mount -t ubifs ubi1:syscfg /tmp/syscfg [ -f /tmp/syscfg/sysupgrade.tgz ] && { echo "- config restore -" cd / mv /tmp/syscfg/sysupgrade.tgz /tmp tar xzf /tmp/sysupgrade.tgz rm -f /tmp/sysupgrade.tgz sync } ;; esac } boot_hook_add preinit_main preinit_mount_syscfg