summaryrefslogtreecommitdiff
path: root/recipes-core/mlinux-scripts/mlinux-scripts/mlinux-firmware-upgrade
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-core/mlinux-scripts/mlinux-scripts/mlinux-firmware-upgrade')
-rwxr-xr-xrecipes-core/mlinux-scripts/mlinux-scripts/mlinux-firmware-upgrade17
1 files changed, 12 insertions, 5 deletions
diff --git a/recipes-core/mlinux-scripts/mlinux-scripts/mlinux-firmware-upgrade b/recipes-core/mlinux-scripts/mlinux-scripts/mlinux-firmware-upgrade
index a6e6d68..360b553 100755
--- a/recipes-core/mlinux-scripts/mlinux-scripts/mlinux-firmware-upgrade
+++ b/recipes-core/mlinux-scripts/mlinux-scripts/mlinux-firmware-upgrade
@@ -68,9 +68,11 @@ for (( i = 0; i < ${#files[@]}; i++ )); do
logger -s -t firmware_upgrade "MD5 is not found for the $file, upgrade aborted"
exit 1
fi
- if ! tar -xO -f $upgrade $file | md5sum -c $file.md5; then
- logger -s -t firmware_upgrade "MD5 check failed, upgrade aborted"
- exit 1
+ if ((dofactoryreset == 0)) ; then
+ if ! tar -xO -f $upgrade $file | md5sum -c $file.md5; then
+ logger -s -t firmware_upgrade "MD5 check failed, upgrade aborted"
+ exit 1
+ fi
fi
tobeflashed=1
fi
@@ -95,8 +97,13 @@ if (( $tobeflashed )); then
done
fi
mkdir -p /var/volatile/flash-upgrade
- mv -f $upgrade /var/volatile/flash-upgrade/upgrade.bin
- touch "${dofile}"
+ newbinfile=/var/volatile/flash-upgrade/upgrade.bin
+ mv -f $upgrade $newbinfile
+ if ((dofactoryreset == 1)) ; then
+ tar -xO -f "${newbinfile}" do_flash_upgrade >"$dofile"
+ else
+ touch "$dofile"
+ fi
chown "root:root" "${dofile}" || true
uid=$(stat -c %u "${dofile}") || true
result=$?