octeon: use dedicated function to move config backup

All octeon devices use the same or a very similar way to backup
and restore configuration.

We expect to have more devices added and in order to stop
repeating ourselves move the logic to a separate function.

While at it, add a few checks.

Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com>
[commit message facelift]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This commit is contained in:
Roman Kuzmitskii 2020-10-22 18:31:07 +00:00 committed by Adrian Schmutzler
parent d7db32440f
commit 733700c652

View File

@ -1,21 +1,27 @@
# Copyright (C) 2014 OpenWrt.org
move_config() {
. /lib/functions.sh
. /lib/upgrade/common.sh
local device="$1"
[ -n "$device" ] && [ -b "$device" ] && {
mount -t vfat "$device" /mnt
[ -f "/mnt/$BACKUP_FILE" ] && mv -f "/mnt/$BACKUP_FILE" /
umount /mnt
}
}
octeon_move_config() {
. /lib/functions.sh
case "$(board_name)" in
erlite)
mount -t vfat /dev/sda1 /mnt
[ -f "/mnt/$BACKUP_FILE" ] && mv -f "/mnt/$BACKUP_FILE" /
umount /mnt
move_config "/dev/sda1"
;;
itus,shield-router)
mount -t vfat /dev/mmcblk1p1 /mnt
[ -f "/mnt/$BACKUP_FILE" ] && mv -f "/mnt/$BACKUP_FILE" /
umount /mnt
move_config "/dev/mmcblk1p1"
;;
esac
}
boot_hook_add preinit_mount_root move_config
boot_hook_add preinit_mount_root octeon_move_config