mvebu: rename Linksys devices based on their common names
[openwrt/staging/ynezz.git] / target / linux / mvebu / cortexa9 / base-files / lib / preinit / 81_linksys_syscfg
1 #
2 # Copyright (C) 2014-2016 OpenWrt.org
3 # Copyright (C) 2016 LEDE-Project.org
4 #
5
6 preinit_mount_syscfg() {
7 . /lib/functions.sh
8 . /lib/upgrade/common.sh
9
10 case $(board_name) in
11 linksys,wrt1200ac|\
12 linksys,wrt1900ac-v1|\
13 linksys,wrt1900ac-v2|\
14 linksys,wrt1900acs|\
15 linksys,wrt3200acm|\
16 linksys,wrt32x)
17 needs_recovery=0
18 syscfg_part=$(grep syscfg /proc/mtd |cut -c4)
19 ubiattach -m $syscfg_part || needs_recovery=1
20 if [ $needs_recovery -eq 1 ]
21 then
22 echo "ubifs syscfg partition is damaged, reformatting"
23 ubidetach -m $syscfg_part
24 ubiformat -y -O 2048 -q /dev/mtd$syscfg_part
25 ubiattach -m $syscfg_part
26 ubimkvol /dev/ubi1 -n 0 -N syscfg -t dynamic --maxavsize
27 fi
28 mkdir /tmp/syscfg
29 mount -t ubifs ubi1:syscfg /tmp/syscfg
30 [ -f "/tmp/syscfg/$BACKUP_FILE" ] && {
31 echo "- config restore -"
32 cd /
33 mv "/tmp/syscfg/$BACKUP_FILE" /tmp
34 tar xzf "/tmp/$BACKUP_FILE"
35 rm -f "/tmp/$BACKUP_FILE"
36 sync
37 }
38 ;;
39 esac
40 }
41
42 boot_hook_add preinit_main preinit_mount_syscfg