[LEDE-DEV] [PATCH 1/2] apm821xx: use lzma compression for the initramfs images

Christian Lamparter chunkeey at googlemail.com
Sat Jul 23 05:20:52 PDT 2016


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 at gmail.com
Signed-off-by: Christian Lamparter <chunkeey at gmail.com>
---
 config/Config-images.in              | 1 +
 target/linux/apm821xx/image/Makefile | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/config/Config-images.in b/config/Config-images.in
index c990b87..b73442d 100644
--- a/config/Config-images.in
+++ b/config/Config-images.in
@@ -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
diff --git a/target/linux/apm821xx/image/Makefile b/target/linux/apm821xx/image/Makefile
index bee0e1c..6ad4d99 100644
--- a/target/linux/apm821xx/image/Makefile
+++ b/target/linux/apm821xx/image/Makefile
@@ -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
-- 
2.8.1




More information about the Lede-dev mailing list