ath79: optimize the firmware recipe for Netgear NAND devices

1. Drop useless character '0xff' before fake filesystem header.
2. Reduce useless padding to shrink the size of the sysupgrade image.
3. Do not check the size of sysupgrade image. It does not make sense to
   check the size of a compressed package.
4. Do not take the size of netgear header into account because it will
   not be written to Flash.
5. Use the default lzma compression dictionary parameter '-d24' to get
   better performance.

Tested on Netgear R6100
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
This commit is contained in:
Shiji Yang 2022-11-29 18:13:38 +08:00 committed by Hauke Mehrtens
parent 58088ff457
commit 3c1512a25d
1 changed files with 7 additions and 11 deletions

View File

@ -230,7 +230,7 @@ define Device/linksys_ea4500-v3
endef
TARGET_DEVICES += linksys_ea4500-v3
# fake rootfs is mandatory, pad-offset 129 equals (2 * uimage_header + 0xff)
# fake rootfs is mandatory, pad-offset 64 equals (1 * uimage_header)
define Device/netgear_ath79_nand
DEVICE_VENDOR := NETGEAR
DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
@ -238,15 +238,12 @@ define Device/netgear_ath79_nand
BLOCKSIZE := 128k
PAGESIZE := 2048
IMAGE_SIZE := 25600k
KERNEL := kernel-bin | append-dtb | lzma -d20 | \
pad-offset $$(KERNEL_SIZE) 129 | uImage lzma | \
append-string -e '\xff' | \
append-uImage-fakehdr filesystem $$(UIMAGE_MAGIC)
KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma -d20 | uImage lzma
KERNEL := kernel-bin | append-dtb | lzma | uImage lzma | \
pad-offset $$(BLOCKSIZE) 64 | append-uImage-fakehdr filesystem $$(UIMAGE_MAGIC)
IMAGES := sysupgrade.bin factory.img
IMAGE/factory.img := append-kernel | append-ubi | netgear-dni | \
check-size
IMAGE/sysupgrade.bin := sysupgrade-tar | check-size | append-metadata
IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | \
append-ubi | check-size | netgear-dni
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
UBINIZE_OPTS := -E 5
endef
@ -262,8 +259,7 @@ define Device/netgear_pgzng1
IMAGE_SIZE := 83968k
PAGESIZE := 2048
BLOCKSIZE := 128k
KERNEL := kernel-bin | append-dtb | lzma | uImage lzma
IMAGE/sysupgrade.bin := sysupgrade-tar | check-size | append-metadata
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
endef
TARGET_DEVICES += netgear_pgzng1