소스 검색

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 <[email protected]>
Shiji Yang 2 년 전
부모
커밋
3c1512a25d
1개의 변경된 파일7개의 추가작업 그리고 11개의 파일을 삭제
  1. 7 11
      target/linux/ath79/image/nand.mk

+ 7 - 11
target/linux/ath79/image/nand.mk

@@ -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 | \
-	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
   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
   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 | check-size | append-metadata
+  IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
 endef
 endef
 TARGET_DEVICES += netgear_pgzng1
 TARGET_DEVICES += netgear_pgzng1