[openwrt/openwrt] layerscape: fix sd-card sysupgrade

LEDE Commits lede-commits at lists.infradead.org
Sun Oct 25 19:40:21 EDT 2020


adrian pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/6180005debe3f2502e5c2e1839f05682338990b4

commit 6180005debe3f2502e5c2e1839f05682338990b4
Author: Pawel Dembicki <paweldembicki at gmail.com>
AuthorDate: Thu Aug 20 09:28:01 2020 +0200

    layerscape: fix sd-card sysupgrade
    
    So far, kernel has not been written correctly to SD card during
    sysupgrade, as both target path and offset were wrong.
    
    This patch fixes it, and adds some descriptive output on the way.
    
    Fixes: 0841b68c91d3 ("layerscape: support sysupgrade for SD card ext4
    rootfs")
    
    Reviewed-by: Yangbo Lu <yangbo.lu at nxp.com>
    Signed-off-by: Pawel Dembicki <paweldembicki at gmail.com>
    [alter/extend commit message]
    Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
---
 target/linux/layerscape/base-files/lib/upgrade/platform.sh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/target/linux/layerscape/base-files/lib/upgrade/platform.sh b/target/linux/layerscape/base-files/lib/upgrade/platform.sh
index 8a136d9439..fa0f21a6c5 100644
--- a/target/linux/layerscape/base-files/lib/upgrade/platform.sh
+++ b/target/linux/layerscape/base-files/lib/upgrade/platform.sh
@@ -60,7 +60,8 @@ platform_do_upgrade_sdboot() {
 
 	if [ -n "$diff" ]; then
 		dd if="$1" of="/dev/$diskdev" bs=1024 count=4 > /dev/null 2>&1
-		dd if="$1" of="$diskdev" bs=1024 skip=4 seek=16384 > /dev/null 2>&1
+		echo "Writing image to /dev/$diskdev..."
+		dd if="$1" of="/dev/$diskdev" bs=1024 skip=16384 seek=16384 > /dev/null 2>&1
 		sync
 
 		# Separate removal and addtion is necessary; otherwise, partition 1
@@ -72,7 +73,8 @@ platform_do_upgrade_sdboot() {
 	fi
 
 	# write kernel image
-	dd if="$1" of="$diskdev" bs=1024 skip=4 seek=16384 count=16384 > /dev/null 2>&1
+	echo "Writing kernel to /dev/$diskdev..."
+	dd if="$1" of="/dev/$diskdev" bs=1024 skip=16384 seek=16384 count=16384 > /dev/null 2>&1
 	sync
 
 	# iterate over each partition from the image and write it to the boot disk



More information about the lede-commits mailing list