Просмотр исходного кода

ath79: restore sysupgrade support for ja76pf2 and routerstations

Because the bug described in FS#2428 has been fixed with bf2870c1d9e1
("kernel: fix mtd partition erase < parent_erasesize writes") these
devices can now safely do sysupgrade.

Restore sysupgrade support disabled in:

0cc87b3bacee ("ath79: image: disable sysupgrade images for routerstations
and ja76pf2")

cc5256a8bfa0 ("ath79: base-files: disable sysupgrade for routerstations
and ja76pf2")

Signed-off-by: Tomasz Maciej Nowak <[email protected]>
[move Build block, remove check-size argument, wrap sysupgrade line,
make commit message easier to read]
Signed-off-by: Adrian Schmutzler <[email protected]>
Tomasz Maciej Nowak 4 лет назад
Родитель
Сommit
760952ad02

+ 2 - 2
target/linux/ath79/generic/base-files/lib/upgrade/platform.sh

@@ -45,11 +45,11 @@ platform_do_upgrade() {
 		redboot_fis_do_upgrade "$1" vmlinux_2
 		;;
 	jjplus,ja76pf2)
-		echo "Sysupgrade disabled due bug FS#2428"
+		redboot_fis_do_upgrade "$1" linux
 		;;
 	ubnt,routerstation|\
 	ubnt,routerstation-pro)
-		echo "Sysupgrade disabled due bug FS#2428"
+		redboot_fis_do_upgrade "$1" kernel
 		;;
 	*)
 		default_do_upgrade "$1"

+ 8 - 0
target/linux/ath79/image/Makefile

@@ -5,6 +5,14 @@ KERNEL_LOADADDR = 0x80060000
 
 DEVICE_VARS += LOADER_FLASH_OFFS LOADER_TYPE
 
+define Build/combined-image
+	sh $(TOPDIR)/scripts/combined-image.sh \
+		"$(IMAGE_KERNEL)" \
+		"$@" \
+		"[email protected]"
+	@mv [email protected] $@
+endef
+
 define Build/loader-common
 	rm -rf [email protected]
 	$(MAKE) -C lzma-loader \

+ 3 - 1
target/linux/ath79/image/generic-ubnt.mk

@@ -310,9 +310,11 @@ define Device/ubnt_routerstation_common
   DEVICE_VENDOR := Ubiquiti
   SOC := ar7161
   IMAGE_SIZE := 16128k
-  IMAGES := factory.bin
+  IMAGES += factory.bin
   IMAGE/factory.bin := append-rootfs | pad-rootfs | mkubntimage | \
 	check-size
+  IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | combined-image | \
+	append-metadata | check-size
   KERNEL := kernel-bin | append-dtb | lzma | pad-to $$(BLOCKSIZE)
   KERNEL_INITRAMFS := kernel-bin | append-dtb
 endef

+ 3 - 1
target/linux/ath79/image/generic.mk

@@ -1144,9 +1144,11 @@ define Device/jjplus_ja76pf2
   DEVICE_VENDOR := jjPlus
   DEVICE_MODEL := JA76PF2
   DEVICE_PACKAGES += -kmod-ath9k -swconfig -wpad-basic-wolfssl -uboot-envtools fconfig
-  IMAGES := kernel.bin rootfs.bin
+  IMAGES += kernel.bin rootfs.bin
   IMAGE/kernel.bin := append-kernel
   IMAGE/rootfs.bin := append-rootfs | pad-rootfs
+  IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | combined-image | \
+	append-metadata | check-size
   KERNEL := kernel-bin | append-dtb | lzma | pad-to $$(BLOCKSIZE)
   KERNEL_INITRAMFS := kernel-bin | append-dtb
   IMAGE_SIZE := 16000k