summaryrefslogtreecommitdiff
path: root/package/base-files
diff options
context:
space:
mode:
authorJohn Crispin <john@openwrt.org>2015-04-09 14:33:03 +0000
committerJohn Crispin <john@openwrt.org>2015-04-09 14:33:03 +0000
commit5d8f9e03f15fb775e6cf7809052bbb7223268aa8 (patch)
tree861f16cba333ee53571082242177b2561f1e2a93 /package/base-files
parent4e213186008449743572203d584ad48e25be0bf0 (diff)
downloadmtk-20170518-5d8f9e03f15fb775e6cf7809052bbb7223268aa8.zip
mtk-20170518-5d8f9e03f15fb775e6cf7809052bbb7223268aa8.tar.gz
mtk-20170518-5d8f9e03f15fb775e6cf7809052bbb7223268aa8.tar.bz2
base-files: add support for platform_pre_upgrade function
Current NAND sysupgrade process is a bit hard to follow due to the way of triggering stage1. Currently this is done by leaving a /mark/ in the form of /tmp/sysupgrade-nand-path during nand_do_platform_check. Existence of this mark stops standard sysupgrade process (as the result of sysupgrade_pre_upgrade exit). This may be a bit misleading. Proposed solution adds a new function that will allow platform.sh trigger NAND sysupgrade consciously. This will also allow cleaning nand_do_platform_check limiting it to just checking the image. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> SVN-Revision: 45338
Diffstat (limited to 'package/base-files')
-rwxr-xr-xpackage/base-files/files/sbin/sysupgrade8
1 files changed, 8 insertions, 0 deletions
diff --git a/package/base-files/files/sbin/sysupgrade b/package/base-files/files/sbin/sysupgrade
index 215f482..ef83c4b 100755
--- a/package/base-files/files/sbin/sysupgrade
+++ b/package/base-files/files/sbin/sysupgrade
@@ -215,6 +215,14 @@ fi
run_hooks "" $sysupgrade_pre_upgrade
+# Some platforms/devices may want different sysupgrade process, e.g. without
+# killing processes yet or calling ubus system upgrade method.
+# This is needed e.g. on NAND devices where we just want to trigger stage1 at
+# this point.
+if type 'platform_pre_upgrade' >/dev/null 2>/dev/null; then
+ platform_pre_upgrade "$ARGV"
+fi
+
ubus call system upgrade
touch /tmp/sysupgrade