aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSungbo Eo <mans0n@gorani.run>2019-10-02 22:12:28 +0900
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>2020-02-07 14:28:50 +0100
commite030d162f77c816163f92024cf187eac4753d5eb (patch)
tree5d918de78bdc7b5403ddd2c458670f240d1382e2
parent52a0bd33341e11ffbd5b087b4ceb52ca754de8ba (diff)
downloadupstream-e030d162f77c816163f92024cf187eac4753d5eb.tar.gz
upstream-e030d162f77c816163f92024cf187eac4753d5eb.tar.bz2
upstream-e030d162f77c816163f92024cf187eac4753d5eb.zip
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 <mans0n@gorani.run>
-rw-r--r--target/linux/ramips/dts/mt7621_netis_wf-2881.dts15
-rw-r--r--target/linux/ramips/image/mt7621.mk6
-rwxr-xr-xtarget/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh1
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"