diff options
author | Felix Fietkau <nbd@openwrt.org> | 2010-06-26 20:42:58 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2010-06-26 20:42:58 +0000 |
commit | da1bb88a2b900f0392b731ec47c5e1bff956fd8f (patch) | |
tree | 597146471e3eeafb4ba55e802e80b896770808ff /target/linux/generic/patches-2.6.31/053-lzo_compression_for_initramfs.patch | |
parent | 6117c04c9416b295347fb45c37e430f01df1d0d9 (diff) | |
download | master-31e0f0ae-da1bb88a2b900f0392b731ec47c5e1bff956fd8f.tar.gz master-31e0f0ae-da1bb88a2b900f0392b731ec47c5e1bff956fd8f.tar.bz2 master-31e0f0ae-da1bb88a2b900f0392b731ec47c5e1bff956fd8f.zip |
rename target/linux/generic-2.6 to generic
SVN-Revision: 21952
Diffstat (limited to 'target/linux/generic/patches-2.6.31/053-lzo_compression_for_initramfs.patch')
-rw-r--r-- | target/linux/generic/patches-2.6.31/053-lzo_compression_for_initramfs.patch | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/target/linux/generic/patches-2.6.31/053-lzo_compression_for_initramfs.patch b/target/linux/generic/patches-2.6.31/053-lzo_compression_for_initramfs.patch new file mode 100644 index 0000000000..c05c3833d0 --- /dev/null +++ b/target/linux/generic/patches-2.6.31/053-lzo_compression_for_initramfs.patch @@ -0,0 +1,106 @@ +--- a/lib/Kconfig ++++ b/lib/Kconfig +@@ -120,6 +120,10 @@ config DECOMPRESS_LZMA + config DECOMPRESS_LZMA_NEEDED + boolean + ++config DECOMPRESS_LZO ++ select LZO_DECOMPRESS ++ tristate ++ + # + # Generic allocator support is selected if needed + # +--- a/lib/Makefile ++++ b/lib/Makefile +@@ -69,6 +69,7 @@ obj-$(CONFIG_LZO_DECOMPRESS) += lzo/ + lib-$(CONFIG_DECOMPRESS_GZIP) += decompress_inflate.o + lib-$(CONFIG_DECOMPRESS_BZIP2) += decompress_bunzip2.o + lib-$(CONFIG_DECOMPRESS_LZMA) += decompress_unlzma.o ++lib-$(CONFIG_DECOMPRESS_LZO) += decompress_unlzo.o + + obj-$(CONFIG_TEXTSEARCH) += textsearch.o + obj-$(CONFIG_TEXTSEARCH_KMP) += ts_kmp.o +--- a/lib/decompress.c ++++ b/lib/decompress.c +@@ -9,6 +9,7 @@ + #include <linux/decompress/bunzip2.h> + #include <linux/decompress/unlzma.h> + #include <linux/decompress/inflate.h> ++#include <linux/decompress/unlzo.h> + + #include <linux/types.h> + #include <linux/string.h> +@@ -22,6 +23,9 @@ + #ifndef CONFIG_DECOMPRESS_LZMA + # define unlzma NULL + #endif ++#ifndef CONFIG_DECOMPRESS_LZO ++# define unlzo NULL ++#endif + + static const struct compress_format { + unsigned char magic[2]; +@@ -32,6 +36,7 @@ static const struct compress_format { + { {037, 0236}, "gzip", gunzip }, + { {0x42, 0x5a}, "bzip2", bunzip2 }, + { {0x5d, 0x00}, "lzma", unlzma }, ++ { {0x89, 0x4c}, "lzo", unlzo }, + { {0, 0}, NULL, NULL } + }; + +--- a/usr/Kconfig ++++ b/usr/Kconfig +@@ -72,6 +72,15 @@ config RD_LZMA + Support loading of a LZMA encoded initial ramdisk or cpio buffer + If unsure, say N. + ++config RD_LZO ++ bool "Support initial ramdisks compressed using LZO" if EMBEDDED ++ default !EMBEDDED ++ depends on BLK_DEV_INITRD && HAVE_KERNEL_LZO ++ select DECOMPRESS_LZO ++ help ++ Support loading of a LZO encoded initial ramdisk or cpio buffer ++ If unsure, say N. ++ + choice + prompt "Built-in initramfs compression mode" if INITRAMFS_SOURCE!="" + help +@@ -108,16 +117,15 @@ config INITRAMFS_COMPRESSION_GZIP + bool "Gzip" + depends on RD_GZIP + help +- The old and tried gzip compression. Its compression ratio is +- the poorest among the 3 choices; however its speed (both +- compression and decompression) is the fastest. ++ The old and tried gzip compression. It provides a good balance ++ between compression ratio and decompression speed. + + config INITRAMFS_COMPRESSION_BZIP2 + bool "Bzip2" + depends on RD_BZIP2 + help + Its compression ratio and speed is intermediate. +- Decompression speed is slowest among the three. The initramfs ++ Decompression speed is slowest among the four. The initramfs + size is about 10% smaller with bzip2, in comparison to gzip. + Bzip2 uses a large amount of memory. For modern kernels you + will need at least 8MB RAM or more for booting. +@@ -128,7 +136,15 @@ config INITRAMFS_COMPRESSION_LZMA + help + The most recent compression algorithm. + Its ratio is best, decompression speed is between the other +- two. Compression is slowest. The initramfs size is about 33% ++ three. Compression is slowest. The initramfs size is about 33% + smaller with LZMA in comparison to gzip. + ++config INITRAMFS_COMPRESSION_LZO ++ bool "LZO" ++ depends on RD_LZO ++ help ++ Its compression ratio is the poorest among the four. The kernel ++ size is about about 10% bigger than gzip; however its speed ++ (both compression and decompression) is the fastest. ++ + endchoice |