2005-08-11 02:44:50 +08:00
|
|
|
#
|
|
|
|
# Configuration for initramfs
|
|
|
|
#
|
|
|
|
|
|
|
|
config INITRAMFS_SOURCE
|
|
|
|
string "Initramfs source file(s)"
|
|
|
|
default ""
|
|
|
|
help
|
|
|
|
This can be either a single cpio archive with a .cpio suffix or a
|
|
|
|
space-separated list of directories and files for building the
|
|
|
|
initramfs image. A cpio archive should contain a filesystem archive
|
|
|
|
to be used as an initramfs image. Directories should contain a
|
|
|
|
filesystem layout to be included in the initramfs image. Files
|
|
|
|
should contain entries according to the format described by the
|
|
|
|
"usr/gen_init_cpio" program in the kernel tree.
|
|
|
|
|
|
|
|
When multiple directories and files are specified then the
|
|
|
|
initramfs image will be the aggregate of all of them.
|
|
|
|
|
2007-03-16 21:01:45 +08:00
|
|
|
See <file:Documentation/early-userspace/README> for more details.
|
2005-08-11 02:44:50 +08:00
|
|
|
|
|
|
|
If you are not sure, leave it blank.
|
|
|
|
|
|
|
|
config INITRAMFS_ROOT_UID
|
|
|
|
int "User ID to map to 0 (user root)"
|
|
|
|
depends on INITRAMFS_SOURCE!=""
|
|
|
|
default "0"
|
|
|
|
help
|
|
|
|
This setting is only meaningful if the INITRAMFS_SOURCE is
|
|
|
|
contains a directory. Setting this user ID (UID) to something
|
|
|
|
other than "0" will cause all files owned by that UID to be
|
|
|
|
owned by user root in the initial ramdisk image.
|
|
|
|
|
|
|
|
If you are not sure, leave it set to "0".
|
|
|
|
|
|
|
|
config INITRAMFS_ROOT_GID
|
|
|
|
int "Group ID to map to 0 (group root)"
|
|
|
|
depends on INITRAMFS_SOURCE!=""
|
|
|
|
default "0"
|
|
|
|
help
|
|
|
|
This setting is only meaningful if the INITRAMFS_SOURCE is
|
|
|
|
contains a directory. Setting this group ID (GID) to something
|
|
|
|
other than "0" will cause all files owned by that GID to be
|
|
|
|
owned by group root in the initial ramdisk image.
|
|
|
|
|
|
|
|
If you are not sure, leave it set to "0".
|
2009-01-07 16:03:49 +08:00
|
|
|
|
|
|
|
config RD_GZIP
|
2011-01-21 06:44:16 +08:00
|
|
|
bool "Support initial ramdisks compressed using gzip" if EXPERT
|
2009-01-07 16:03:49 +08:00
|
|
|
default y
|
2009-03-29 06:49:08 +08:00
|
|
|
depends on BLK_DEV_INITRD
|
2009-01-07 16:03:49 +08:00
|
|
|
select DECOMPRESS_GZIP
|
|
|
|
help
|
|
|
|
Support loading of a gzip encoded initial ramdisk or cpio buffer.
|
|
|
|
If unsure, say Y.
|
|
|
|
|
|
|
|
config RD_BZIP2
|
2011-01-21 06:44:16 +08:00
|
|
|
bool "Support initial ramdisks compressed using bzip2" if EXPERT
|
|
|
|
default !EXPERT
|
2009-03-29 06:49:08 +08:00
|
|
|
depends on BLK_DEV_INITRD
|
2009-01-07 16:03:49 +08:00
|
|
|
select DECOMPRESS_BZIP2
|
|
|
|
help
|
|
|
|
Support loading of a bzip2 encoded initial ramdisk or cpio buffer
|
|
|
|
If unsure, say N.
|
|
|
|
|
|
|
|
config RD_LZMA
|
2011-01-21 06:44:16 +08:00
|
|
|
bool "Support initial ramdisks compressed using LZMA" if EXPERT
|
|
|
|
default !EXPERT
|
2009-03-29 06:49:08 +08:00
|
|
|
depends on BLK_DEV_INITRD
|
2009-01-07 16:03:49 +08:00
|
|
|
select DECOMPRESS_LZMA
|
|
|
|
help
|
2009-03-29 07:10:59 +08:00
|
|
|
Support loading of a LZMA encoded initial ramdisk or cpio buffer
|
2009-01-07 16:03:49 +08:00
|
|
|
If unsure, say N.
|
2009-02-20 05:43:51 +08:00
|
|
|
|
decompressors: add boot-time XZ support
This implements the API defined in <linux/decompress/generic.h> which is
used for kernel, initramfs, and initrd decompression. This patch together
with the first patch is enough for XZ-compressed initramfs and initrd;
XZ-compressed kernel will need arch-specific changes.
The buffering requirements described in decompress_unxz.c are stricter
than with gzip, so the relevant changes should be done to the
arch-specific code when adding support for XZ-compressed kernel.
Similarly, the heap size in arch-specific pre-boot code may need to be
increased (30 KiB is enough).
The XZ decompressor needs memmove(), memeq() (memcmp() == 0), and
memzero() (memset(ptr, 0, size)), which aren't available in all
arch-specific pre-boot environments. I'm including simple versions in
decompress_unxz.c, but a cleaner solution would naturally be nicer.
Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Alain Knaff <alain@knaff.lu>
Cc: Albin Tonnerre <albin.tonnerre@free-electrons.com>
Cc: Phillip Lougher <phillip@lougher.demon.co.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-01-13 09:01:23 +08:00
|
|
|
config RD_XZ
|
2011-01-21 06:44:16 +08:00
|
|
|
bool "Support initial ramdisks compressed using XZ" if EXPERT
|
|
|
|
default !EXPERT
|
decompressors: add boot-time XZ support
This implements the API defined in <linux/decompress/generic.h> which is
used for kernel, initramfs, and initrd decompression. This patch together
with the first patch is enough for XZ-compressed initramfs and initrd;
XZ-compressed kernel will need arch-specific changes.
The buffering requirements described in decompress_unxz.c are stricter
than with gzip, so the relevant changes should be done to the
arch-specific code when adding support for XZ-compressed kernel.
Similarly, the heap size in arch-specific pre-boot code may need to be
increased (30 KiB is enough).
The XZ decompressor needs memmove(), memeq() (memcmp() == 0), and
memzero() (memset(ptr, 0, size)), which aren't available in all
arch-specific pre-boot environments. I'm including simple versions in
decompress_unxz.c, but a cleaner solution would naturally be nicer.
Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Alain Knaff <alain@knaff.lu>
Cc: Albin Tonnerre <albin.tonnerre@free-electrons.com>
Cc: Phillip Lougher <phillip@lougher.demon.co.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-01-13 09:01:23 +08:00
|
|
|
depends on BLK_DEV_INITRD
|
|
|
|
select DECOMPRESS_XZ
|
|
|
|
help
|
|
|
|
Support loading of a XZ encoded initial ramdisk or cpio buffer.
|
|
|
|
If unsure, say N.
|
|
|
|
|
2010-01-09 06:42:46 +08:00
|
|
|
config RD_LZO
|
2011-01-21 06:44:16 +08:00
|
|
|
bool "Support initial ramdisks compressed using LZO" if EXPERT
|
|
|
|
default !EXPERT
|
2010-01-09 06:42:46 +08:00
|
|
|
depends on BLK_DEV_INITRD
|
|
|
|
select DECOMPRESS_LZO
|
|
|
|
help
|
|
|
|
Support loading of a LZO encoded initial ramdisk or cpio buffer
|
|
|
|
If unsure, say N.
|
|
|
|
|
2013-07-09 07:01:46 +08:00
|
|
|
config RD_LZ4
|
|
|
|
bool "Support initial ramdisks compressed using LZ4" if EXPERT
|
|
|
|
default !EXPERT
|
|
|
|
depends on BLK_DEV_INITRD
|
|
|
|
select DECOMPRESS_LZ4
|
|
|
|
help
|
|
|
|
Support loading of a LZ4 encoded initial ramdisk or cpio buffer
|
|
|
|
If unsure, say N.
|
|
|
|
|
2009-02-20 05:43:51 +08:00
|
|
|
choice
|
2009-04-01 03:24:17 +08:00
|
|
|
prompt "Built-in initramfs compression mode" if INITRAMFS_SOURCE!=""
|
2009-02-20 05:43:51 +08:00
|
|
|
help
|
2009-03-29 08:24:03 +08:00
|
|
|
This option decides by which algorithm the builtin initramfs
|
|
|
|
will be compressed. Several compression algorithms are
|
|
|
|
available, which differ in efficiency, compression and
|
|
|
|
decompression speed. Compression speed is only relevant
|
|
|
|
when building a kernel. Decompression speed is relevant at
|
|
|
|
each boot.
|
2009-02-20 05:43:51 +08:00
|
|
|
|
2009-03-29 07:10:59 +08:00
|
|
|
If you have any problems with bzip2 or LZMA compressed
|
2009-02-20 05:43:51 +08:00
|
|
|
initramfs, mail me (Alain Knaff) <alain@knaff.lu>.
|
|
|
|
|
2009-03-29 08:24:03 +08:00
|
|
|
High compression options are mostly useful for users who are
|
|
|
|
low on RAM, since it reduces the memory consumption during
|
|
|
|
boot.
|
2009-02-20 05:43:51 +08:00
|
|
|
|
|
|
|
If in doubt, select 'gzip'
|
|
|
|
|
|
|
|
config INITRAMFS_COMPRESSION_NONE
|
|
|
|
bool "None"
|
|
|
|
help
|
|
|
|
Do not compress the built-in initramfs at all. This may
|
|
|
|
sound wasteful in space, but, you should be aware that the
|
|
|
|
built-in initramfs will be compressed at a later stage
|
|
|
|
anyways along with the rest of the kernel, on those
|
|
|
|
architectures that support this.
|
|
|
|
However, not compressing the initramfs may lead to slightly
|
|
|
|
higher memory consumption during a short time at boot, while
|
|
|
|
both the cpio image and the unpacked filesystem image will
|
|
|
|
be present in memory simultaneously
|
|
|
|
|
|
|
|
config INITRAMFS_COMPRESSION_GZIP
|
|
|
|
bool "Gzip"
|
|
|
|
depends on RD_GZIP
|
|
|
|
help
|
2010-01-09 06:42:46 +08:00
|
|
|
The old and tried gzip compression. It provides a good balance
|
|
|
|
between compression ratio and decompression speed.
|
2009-02-20 05:43:51 +08:00
|
|
|
|
|
|
|
config INITRAMFS_COMPRESSION_BZIP2
|
|
|
|
bool "Bzip2"
|
|
|
|
depends on RD_BZIP2
|
|
|
|
help
|
|
|
|
Its compression ratio and speed is intermediate.
|
2012-06-01 07:26:46 +08:00
|
|
|
Decompression speed is slowest among the choices. The initramfs
|
2009-02-20 05:43:51 +08:00
|
|
|
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.
|
|
|
|
|
|
|
|
config INITRAMFS_COMPRESSION_LZMA
|
|
|
|
bool "LZMA"
|
|
|
|
depends on RD_LZMA
|
|
|
|
help
|
2012-06-01 07:26:46 +08:00
|
|
|
This algorithm's compression ratio is best.
|
|
|
|
Decompression speed is between the other choices.
|
|
|
|
Compression is slowest. The initramfs size is about 33%
|
2009-02-20 05:43:51 +08:00
|
|
|
smaller with LZMA in comparison to gzip.
|
|
|
|
|
decompressors: add boot-time XZ support
This implements the API defined in <linux/decompress/generic.h> which is
used for kernel, initramfs, and initrd decompression. This patch together
with the first patch is enough for XZ-compressed initramfs and initrd;
XZ-compressed kernel will need arch-specific changes.
The buffering requirements described in decompress_unxz.c are stricter
than with gzip, so the relevant changes should be done to the
arch-specific code when adding support for XZ-compressed kernel.
Similarly, the heap size in arch-specific pre-boot code may need to be
increased (30 KiB is enough).
The XZ decompressor needs memmove(), memeq() (memcmp() == 0), and
memzero() (memset(ptr, 0, size)), which aren't available in all
arch-specific pre-boot environments. I'm including simple versions in
decompress_unxz.c, but a cleaner solution would naturally be nicer.
Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Alain Knaff <alain@knaff.lu>
Cc: Albin Tonnerre <albin.tonnerre@free-electrons.com>
Cc: Phillip Lougher <phillip@lougher.demon.co.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-01-13 09:01:23 +08:00
|
|
|
config INITRAMFS_COMPRESSION_XZ
|
|
|
|
bool "XZ"
|
|
|
|
depends on RD_XZ
|
|
|
|
help
|
|
|
|
XZ uses the LZMA2 algorithm. The initramfs size is about 30%
|
|
|
|
smaller with XZ in comparison to gzip. Decompression speed
|
|
|
|
is better than that of bzip2 but worse than gzip and LZO.
|
|
|
|
Compression is slow.
|
|
|
|
|
2010-01-09 06:42:46 +08:00
|
|
|
config INITRAMFS_COMPRESSION_LZO
|
|
|
|
bool "LZO"
|
|
|
|
depends on RD_LZO
|
|
|
|
help
|
2012-06-01 07:26:46 +08:00
|
|
|
Its compression ratio is the poorest among the choices. The kernel
|
2010-07-14 17:23:08 +08:00
|
|
|
size is about 10% bigger than gzip; however its speed
|
2010-01-09 06:42:46 +08:00
|
|
|
(both compression and decompression) is the fastest.
|
|
|
|
|
2009-02-20 05:43:51 +08:00
|
|
|
endchoice
|