From e030d162f77c816163f92024cf187eac4753d5eb Mon Sep 17 00:00:00 2001 From: Sungbo Eo Date: Wed, 2 Oct 2019 22:12:28 +0900 Subject: [PATCH] ramips: use nand_do_upgrade for netis WF-2881 WF-2881 sysupgrade image uses UBI rootfs, but still relies on default_do_upgrade. Because of this, config backup is not restored after sysupgrade. It can be fixed by switching to nand_do_upgrade and sysupgrade-tar image. default_do_upgrade does not handle sysupgrade-tar properly, so one should use factory image to upgrade from older version. Signed-off-by: Sungbo Eo --- target/linux/ramips/dts/mt7621_netis_wf-2881.dts | 15 ++++++++++++++- target/linux/ramips/image/mt7621.mk | 6 ++++-- .../mt7621/base-files/lib/upgrade/platform.sh | 1 + 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/target/linux/ramips/dts/mt7621_netis_wf-2881.dts b/target/linux/ramips/dts/mt7621_netis_wf-2881.dts index a7e8e06ff2..9d37583af0 100644 --- a/target/linux/ramips/dts/mt7621_netis_wf-2881.dts +++ b/target/linux/ramips/dts/mt7621_netis_wf-2881.dts @@ -75,9 +75,22 @@ }; partition@140000 { - compatible = "denx,uimage"; label = "firmware"; reg = <0x140000 0x7e40000>; + + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "kernel"; + reg = <0x0 0x400000>; + }; + + partition@400000 { + label = "ubi"; + reg = <0x400000 0x7a40000>; + }; }; }; }; diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk index 17b32653e7..fdb71ac5f3 100644 --- a/target/linux/ramips/image/mt7621.mk +++ b/target/linux/ramips/image/mt7621.mk @@ -628,10 +628,12 @@ define Device/netis_wf-2881 BLOCKSIZE := 128k PAGESIZE := 2048 FILESYSTEMS := squashfs + KERNEL_SIZE := 4096k IMAGE_SIZE := 129280k - KERNEL := $(KERNEL_DTB) | pad-offset $$(BLOCKSIZE) 64 | uImage lzma UBINIZE_OPTS := -E 5 - IMAGE/sysupgrade.bin := append-kernel | append-ubi | append-metadata | \ + IMAGES += factory.bin + IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata + IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | \ check-size $$$$(IMAGE_SIZE) DEVICE_VENDOR := NETIS DEVICE_MODEL := WF-2881 diff --git a/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh b/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh index 6e0e8a6b2c..eaddca0a83 100755 --- a/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh +++ b/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh @@ -49,6 +49,7 @@ platform_do_upgrade() { netgear,r6260|\ netgear,r6350|\ netgear,r6850|\ + netis,wf-2881|\ xiaomi,mir3g|\ xiaomi,mir3p) nand_do_upgrade "$1" -- 2.25.1