layerscape: fix sd-card sysupgrade
authorPawel Dembicki <paweldembicki@gmail.com>
Thu, 20 Aug 2020 07:28:01 +0000 (09:28 +0200)
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>
Sun, 25 Oct 2020 23:40:12 +0000 (00:40 +0100)
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@nxp.com>
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
[alter/extend commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
target/linux/layerscape/base-files/lib/upgrade/platform.sh

index 8a136d9439f632f29aa448bed6c893b5556fe3b4..fa0f21a6c59ec7ad504193b69bd3d2c19f836b9b 100644 (file)
@@ -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