From c79ddb37738ff54908d4d79ddddcc7cd6d8e0647 Mon Sep 17 00:00:00 2001
From: John Crispin <john@openwrt.org>
Date: Fri, 5 Dec 2014 08:58:25 +0000
Subject: [PATCH] octeon: sysupgrade: support config restore on ERL

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>

SVN-Revision: 43524
---
 .../base-files/lib/preinit/79_move_config      | 18 ++++++++++++++++++
 .../octeon/base-files/lib/upgrade/platform.sh  | 11 +++++++----
 2 files changed, 25 insertions(+), 4 deletions(-)
 create mode 100644 target/linux/octeon/base-files/lib/preinit/79_move_config

diff --git a/target/linux/octeon/base-files/lib/preinit/79_move_config b/target/linux/octeon/base-files/lib/preinit/79_move_config
new file mode 100644
index 0000000000..39cefd53db
--- /dev/null
+++ b/target/linux/octeon/base-files/lib/preinit/79_move_config
@@ -0,0 +1,18 @@
+#!/bin/sh
+# Copyright (C) 2014 OpenWrt.org
+
+move_config() {
+	. /lib/functions/octeon.sh
+
+	local board="$(octeon_board_name)"
+
+	case "$board" in
+		erlite)
+			mount -t vfat /dev/sda1 /mnt
+			mv -f /mnt/sysupgrade.tgz /
+			umount /mnt
+			;;
+	esac
+}
+
+boot_hook_add preinit_mount_root move_config
diff --git a/target/linux/octeon/base-files/lib/upgrade/platform.sh b/target/linux/octeon/base-files/lib/upgrade/platform.sh
index 8d6f9a1cf4..ad075d5652 100755
--- a/target/linux/octeon/base-files/lib/upgrade/platform.sh
+++ b/target/linux/octeon/base-files/lib/upgrade/platform.sh
@@ -25,11 +25,14 @@ platform_get_rootfs() {
 
 platform_copy_config() {
 	local board="$(octeon_board_name)"
-	local rootfs="$(platform_get_rootfs)"
 
-	mount -t ext4 -o rw,noatime "${rootfs}" /mnt
-	cp -af "$CONF_TAR" /mnt/
-	umount /mnt
+	case "$board" in
+	erlite)
+		mount -t vfat /dev/sda1 /mnt
+		cp -af "$CONF_TAR" /mnt/
+		umount /mnt
+		;;
+	esac
 }
 
 platform_do_upgrade() {
-- 
GitLab