aboutsummaryrefslogtreecommitdiffstats
path: root/package/base-files/files
diff options
context:
space:
mode:
authorJohn Crispin <blogic@openwrt.org>2015-04-09 14:33:03 +0000
committerJohn Crispin <blogic@openwrt.org>2015-04-09 14:33:03 +0000
commit321c5f3362f03a60709dd3c7ad5b4fc0f1036e4b (patch)
treed27597f0d946f6dcf91e7a594fa16dca1e02b8ba /package/base-files/files
parent7874d49a68d63fd10c7aa3bd30a711aee513dc9e (diff)
downloadmaster-187ad058-321c5f3362f03a60709dd3c7ad5b4fc0f1036e4b.tar.gz
master-187ad058-321c5f3362f03a60709dd3c7ad5b4fc0f1036e4b.tar.bz2
master-187ad058-321c5f3362f03a60709dd3c7ad5b4fc0f1036e4b.zip
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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45338 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/base-files/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 215f482352..ef83c4b00f 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