[PATCH 4/4] ipq40xx: sysupgrade: drop disabled UBI to UBI logic

Bjørn Mork bjorn at mork.no
Sat Mar 20 10:48:27 GMT 2021


The commented out code is not required, as the comment
indicates.

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 at mork.no>
---
 .../ipq40xx/base-files/lib/upgrade/linksys.sh | 24 ++-----------------
 1 file changed, 2 insertions(+), 22 deletions(-)

diff --git a/target/linux/ipq40xx/base-files/lib/upgrade/linksys.sh b/target/linux/ipq40xx/base-files/lib/upgrade/linksys.sh
index de09d34aef46..f1dc81f7c9d6 100755
--- a/target/linux/ipq40xx/base-files/lib/upgrade/linksys.sh
+++ b/target/linux/ipq40xx/base-files/lib/upgrade/linksys.sh
@@ -47,10 +47,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")"
 
@@ -100,23 +96,7 @@ platform_do_upgrade_linksys() {
 	}
 
 	[ "$magic_long" = "27051956" ] && {
-		# This magic is for a uImage (which is a sysupgrade image)
-		# check firmwares' rootfs types
-		local oldroot="$(linksys_get_root_magic "$target_mtd")"
-		local newroot="$(linksys_get_root_magic "$1")"
-
-		if [ "$newroot" = "55424923" ] && [ "$oldroot" = "55424923" ]; then
-			# we're upgrading from a firmware with UBI to one with UBI
-			# erase everything to be safe
-			# - Is that really needed? Won't remove (or comment) the if,
-			#   because it may be needed in a future device.
-			#mtd erase $part_label
-			#get_image "$1" | mtd -n write - $part_label
-			echo "writing \"$1\" UBI image to \"$part_label\" (UBI)..."
-			get_image "$1" | mtd write - "$part_label"
-		else
-			echo "writing \"$1\" image to \"$part_label\""
-			get_image "$1" | mtd write - "$part_label"
-		fi
+		echo "writing \"$1\" image to \"$part_label\""
+		get_image "$1" | mtd write - "$part_label"
 	}
 }
-- 
2.20.1




More information about the openwrt-devel mailing list