bcm63xx: use the generic nand upgrade on Sercomm devices
authorDaniel González Cabanelas <dgcbueu@gmail.com>
Mon, 15 Jun 2020 22:09:33 +0000 (00:09 +0200)
committerÁlvaro Fernández Rojas <noltari@gmail.com>
Tue, 16 Jun 2020 12:55:02 +0000 (14:55 +0200)
The Sercomm devices don't need the jffs2 cleanmarkers for the kernel
partition. With the stock firmware they are only added when the
bootloader partition is upgraded.

Furthermore, on the Sercomm H500-s, the specific cfe_jffs2_upgrade_tar
function causes OOB corruption. As a result of this, combined with the
nature of the mtdsplit driver, the upgrade procedure ends in a bricked
device.

Use the generic nand_do_upgrade provided by the OpenWrt common functions.

Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
target/linux/bcm63xx/base-files/lib/upgrade/platform.sh

index 525d3b90b5a8da5851a354cdc4cabd2317d6e1f0..0d836729ee6d0e65fb1afbbdee4a69fd1cbb515b 100644 (file)
@@ -70,12 +70,15 @@ platform_do_upgrade() {
                comtrend,vg-8050|\
                comtrend,vr-3032u|\
                huawei,hg253s-v2|\
-               netgear,dgnd3700-v2|\
+               netgear,dgnd3700-v2)
+                       REQUIRE_IMAGE_METADATA=1
+                       cfe_jffs2_upgrade_tar "$1"
+                       ;;
                sercomm,ad1018|\
                sercomm,h500-s-lowi|\
                sercomm,h500-s-vfes)
                        REQUIRE_IMAGE_METADATA=1
-                       cfe_jffs2_upgrade_tar "$1"
+                       nand_do_upgrade "$1"
                        ;;
                *)
                        default_do_upgrade "$1"