diff options
author | Daniel Golle <daniel@makrotopia.org> | 2021-03-01 19:31:51 +0000 |
---|---|---|
committer | Daniel Golle <daniel@makrotopia.org> | 2021-03-01 19:35:08 +0000 |
commit | 2151d897135501b9515ac0674e36ec79ae949ab8 (patch) | |
tree | 990da4fbf78f9890132a94843497137d3c9c316a /target/linux/mediatek | |
parent | ded54ae19622423b5e3e30c7ee59316af01f8bf3 (diff) | |
download | upstream-2151d897135501b9515ac0674e36ec79ae949ab8.tar.gz upstream-2151d897135501b9515ac0674e36ec79ae949ab8.tar.bz2 upstream-2151d897135501b9515ac0674e36ec79ae949ab8.zip |
mediatek: mt7622: bpi-r64: fix sysupgrade on empty disk
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Diffstat (limited to 'target/linux/mediatek')
-rwxr-xr-x | target/linux/mediatek/mt7622/base-files/lib/upgrade/platform.sh | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/target/linux/mediatek/mt7622/base-files/lib/upgrade/platform.sh b/target/linux/mediatek/mt7622/base-files/lib/upgrade/platform.sh index 07efe13363..4e45c026ab 100755 --- a/target/linux/mediatek/mt7622/base-files/lib/upgrade/platform.sh +++ b/target/linux/mediatek/mt7622/base-files/lib/upgrade/platform.sh @@ -16,6 +16,13 @@ get_rootdev() { local rootvol rootdev rootvol=$(get_cmdline_var root) rootvol=$(basename $rootvol) + [ -e /sys/class/block/$rootvol ] || { + rootvol=${rootvol%%[0-9]} + [ -e /sys/class/block/$rootvol ] && echo $rootvol + rootvol=${rootvol%%p} + [ -e /sys/class/block/$rootvol ] && echo $rootvol + return + } [ -e /sys/class/block/$rootvol/partition ] || { echo $rootvol return @@ -89,13 +96,13 @@ platform_check_image() { } platform_copy_config_mmc() { + [ -e "$UPGRADE_BACKUP" ] || return local rootdev=$(cat /tmp/sysupgrade.rootdev) blockdev --rereadpt /dev/$rootdev local datadev=$(get_partition $rootdev rootfs_data) [ "$datadev" ] || echo "no rootfs_data partition, cannot keep configuration." >&2 dd if="$UPGRADE_BACKUP" of=/dev/$datadev sync - sleep 4 } platform_copy_config() { |