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