apm821xx: use lzma compression for the initramfs images
authorChristian Lamparter <chunkeey@googlemail.com>
Sat, 23 Jul 2016 12:20:52 +0000 (14:20 +0200)
committerFelix Fietkau <nbd@nbd.name>
Mon, 25 Jul 2016 08:38:11 +0000 (10:38 +0200)
The MR24's u-boot takes it sweet time decompressing the
LZMA-packed initramfs image. A user reported that
compared to the old gzip method in v2: it "takes a ton
longer to decompress like 4\x the old boot time for
decompression".

This patch also fixes a issue with the WNDR4700's initramfs
image getting to big and causing the following u-boot crash
during the decompression:

"Uncompressing Multi-File Image ... Error: inflate() returned -5
out-of-mem or overwrite error - must RESET board to recover"

This patch fixes both issues by reverting the MR24's initramfs
compression method back to gzip. And choosing to compress the
initramfs within the initramfs image as LZMA by default.

Cc: chrisrblake93@gmail.com
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
config/Config-images.in
target/linux/apm821xx/image/Makefile

index c990b87605a429945d4ec4d87ac2158a89c30dc2..b73442d6f629ce4dd056b39abbbd525f2da6fabe 100644 (file)
@@ -16,6 +16,7 @@ menu "Target Images"
                        prompt "Compression"
                        default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ar71xx
                        default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips
+                       default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_apm821xx
                        default TARGET_INITRAMFS_COMPRESSION_NONE
                        depends on TARGET_ROOTFS_INITRAMFS
                        help
index bee0e1c8d51b27adfbd49ebbeec169b1c61faf3c..6ad4d99c11c27f7f42e55dd2931001c03fc5ee27 100644 (file)
@@ -75,7 +75,7 @@ define Device/mr24
   KERNEL_SIZE := 2048k
   IMAGE_SIZE := 8191k
   KERNEL := kernel-bin | lzma | uImage lzma | MerakiAdd-dtb | MerakiNAND
-  KERNEL_INITRAMFS := copy-file $(KDIR)/vmlinux | lzma | uImage lzma | MerakiAdd-dtb | pad-to 2047k | MerakiAdd-initramfs | MerakiNAND
+  KERNEL_INITRAMFS := copy-file $(KDIR)/vmlinux | gzip | uImage gzip | MerakiAdd-dtb | pad-to 2047k | MerakiAdd-initramfs | MerakiNAND
   IMAGE/sysupgrade.tar := sysupgrade-nand
 endef
 TARGET_DEVICES += mr24