aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ar71xx/base-files/lib/upgrade
diff options
context:
space:
mode:
authorSven Eckelmann <sven.eckelmann@openmesh.com>2018-10-01 11:48:04 +0200
committerMathias Kresin <dev@kresin.me>2018-10-07 15:44:19 +0200
commitc383e0c979fb95ef6de6782112aa86045fe4a6a5 (patch)
treef6ea4d2b4271d8db4f8067faf273702c9c773e15 /target/linux/ar71xx/base-files/lib/upgrade
parent11d51276b1b0ac6a556a776374ca3de07b062e29 (diff)
downloadupstream-c383e0c979fb95ef6de6782112aa86045fe4a6a5.tar.gz
upstream-c383e0c979fb95ef6de6782112aa86045fe4a6a5.tar.bz2
upstream-c383e0c979fb95ef6de6782112aa86045fe4a6a5.zip
ar71xx: Create /var/lock directory in platform_do_upgrade_*
The sysupgrade_pre_upgrade hook was removed with 5e1b4c57ded7 ("base-files: drop fwtool_pre_upgrade") while there were still scripts using it: * target/linux/ar71xx/base-files/lib/upgrade/allnet.sh * target/linux/ar71xx/base-files/lib/upgrade/openmesh.sh * target/linux/ipq40xx/base-files/lib/upgrade/openmesh.sh Not running the hooks can either prevent a successful upgrade or brick the device because the fw_setenv program cannot be started correctly. Instead of adding this hook again, the directory /var/lock for fw_setenv can also just be created directly before fw_setenv is called. Fixes: 5e1b4c57ded7 ("base-files: drop fwtool_pre_upgrade") Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
Diffstat (limited to 'target/linux/ar71xx/base-files/lib/upgrade')
-rw-r--r--target/linux/ar71xx/base-files/lib/upgrade/allnet.sh10
-rw-r--r--target/linux/ar71xx/base-files/lib/upgrade/openmesh.sh9
2 files changed, 3 insertions, 16 deletions
diff --git a/target/linux/ar71xx/base-files/lib/upgrade/allnet.sh b/target/linux/ar71xx/base-files/lib/upgrade/allnet.sh
index c55e7bc062..5295d8cfe0 100644
--- a/target/linux/ar71xx/base-files/lib/upgrade/allnet.sh
+++ b/target/linux/ar71xx/base-files/lib/upgrade/allnet.sh
@@ -3,14 +3,6 @@
# In case the check fails during boot, a failsafe-system is started to provide
# a minimal web-interface for flashing a new firmware.
-# create /var/lock for the lock "fw_setenv.lock" of fw_setenv
-# the rest is copied using ar71xx's RAMFS_COPY_BIN and RAMFS_COPY_DATA
-platform_add_ramfs_ubootenv()
-{
- mkdir -p $RAM_ROOT/var/lock
-}
-append sysupgrade_pre_upgrade platform_add_ramfs_ubootenv
-
# determine size of the main firmware partition
platform_get_firmware_size() {
local dev size erasesize name
@@ -152,6 +144,8 @@ rootfs_size $rootfs_hexsize
rootfs_checksum $rootfs_md5
bootcmd bootm $vmlinux_hexaddr
EOF
+
+ mkdir -p /var/lock
fw_setenv -s /tmp/fw_env_upgrade || {
echo "failed to update U-Boot environment"
return 1
diff --git a/target/linux/ar71xx/base-files/lib/upgrade/openmesh.sh b/target/linux/ar71xx/base-files/lib/upgrade/openmesh.sh
index e24a659026..65c624d86c 100644
--- a/target/linux/ar71xx/base-files/lib/upgrade/openmesh.sh
+++ b/target/linux/ar71xx/base-files/lib/upgrade/openmesh.sh
@@ -26,14 +26,6 @@ cfg_value_get()
done
}
-# create /var/lock for the lock "fw_setenv.lock" of fw_setenv
-# the rest is copied using ar71xx's RAMFS_COPY_BIN and RAMFS_COPY_DATA
-platform_add_ramfs_ubootenv()
-{
- mkdir -p $RAM_ROOT/var/lock
-}
-append sysupgrade_pre_upgrade platform_add_ramfs_ubootenv
-
platform_check_image_target_openmesh()
{
img_board_target="$1"
@@ -232,6 +224,7 @@ platform_do_upgrade_openmesh()
printf "rootfs_size %s\n" $rootfs_checksize >> $uboot_env_upgrade
printf "rootfs_checksum %s\n" $rootfs_md5 >> $uboot_env_upgrade
+ mkdir -p /var/lock
fw_setenv -s $uboot_env_upgrade || {
echo "failed to update U-Boot environment"
return 1