Browse Source

ipq806x: sysupgrade: drop unnecessary UBI to UBI logic

The purpose of this code seems to be to avoid issues caused
by partially overwriting an existing UBI partition, where some
of the erase counters would be reset but not the unmodified
ones.  This problem has been solved in a more generic way by
the UBI EOF marker. This ensures that any old PEBs after the
marker are properly initialized.  It is therefore unnecessary
to erase the whole partition before flashing a new OpenWrt
factory image.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
openwrt-22.03
Bjørn Mork 1 year ago committed by Christian Lamparter
parent
commit
5fb51d4516
  1. 18
      target/linux/ipq806x/base-files/lib/upgrade/linksys.sh

18
target/linux/ipq806x/base-files/lib/upgrade/linksys.sh

@ -44,10 +44,6 @@ linksys_get_target_firmware() {
esac
}
linksys_get_root_magic() {
(get_image "$@" | dd skip=786432 bs=4 count=1 | hexdump -v -n 4 -e '1/1 "%02x"') 2>/dev/null
}
platform_do_upgrade_linksys() {
local magic_long="$(get_magic_long "$1")"
@ -101,18 +97,6 @@ platform_do_upgrade_linksys() {
nand_upgrade_tar "$1"
}
[ "$magic_long" = "27051956" ] && {
# check firmwares' rootfs types
local oldroot="$(linksys_get_root_magic $target_mtd)"
local newroot="$(linksys_get_root_magic "$1")"
if [ "$newroot" = "55424923" -a "$oldroot" = "55424923" ]
# we're upgrading from a firmware with UBI to one with UBI
then
# erase everything to be safe
mtd erase $part_label
get_image "$1" | mtd -n write - $part_label
else
get_image "$1" | mtd write - $part_label
fi
get_image "$1" | mtd write - $part_label
}
}

Loading…
Cancel
Save