openwrtv4/target/linux/mvebu/base-files/lib/preinit/81_linksys_syscfg
Imre Kaloz a62fa2d365 mvebu: reformat the damaged syscfg partition on the mamba
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 45386
2015-04-12 08:35:33 +00:00

36 lines
745 B
Text

#
# Copyright (C) 2014 OpenWrt.org
#
preinit_mount_syscfg() {
. /lib/functions.sh
. /lib/mvebu.sh
case $(mvebu_board_name) in
armada-xp-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