mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-26 10:49:33 +00:00
![Arnd Bergmann](/assets/img/avatar_default.png)
With CONFIG_MTD=m and CONFIG_CRAMFS=y, we now get a link failure:
fs/cramfs/inode.o: In function `cramfs_mount': inode.c:(.text+0x220): undefined reference to `mount_mtd'
fs/cramfs/inode.o: In function `cramfs_mtd_fill_super':
inode.c:(.text+0x6d8): undefined reference to `mtd_point'
inode.c:(.text+0xae4): undefined reference to `mtd_unpoint'
This adds a more specific Kconfig dependency to avoid the broken
configuration.
Alternatively we could make CRAMFS itself depend on "MTD || !MTD" with a
similar result.
Fixes: 99c18ce580
("cramfs: direct memory access support")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
54 lines
2.1 KiB
Text
54 lines
2.1 KiB
Text
config CRAMFS
|
|
tristate "Compressed ROM file system support (cramfs)"
|
|
select ZLIB_INFLATE
|
|
help
|
|
Saying Y here includes support for CramFs (Compressed ROM File
|
|
System). CramFs is designed to be a simple, small, and compressed
|
|
file system for ROM based embedded systems. CramFs is read-only,
|
|
limited to 256MB file systems (with 16MB files), and doesn't support
|
|
16/32 bits uid/gid, hard links and timestamps.
|
|
|
|
See <file:Documentation/filesystems/cramfs.txt> and
|
|
<file:fs/cramfs/README> for further information.
|
|
|
|
To compile this as a module, choose M here: the module will be called
|
|
cramfs. Note that the root file system (the one containing the
|
|
directory /) cannot be compiled as a module.
|
|
|
|
This filesystem is limited in capabilities and performance on
|
|
purpose to remain small and low on RAM usage. It is most suitable
|
|
for small embedded systems. If you have ample RAM to spare, you may
|
|
consider a more capable compressed filesystem such as SquashFS
|
|
which is much better in terms of performance and features.
|
|
|
|
If unsure, say N.
|
|
|
|
config CRAMFS_BLOCKDEV
|
|
bool "Support CramFs image over a regular block device" if EXPERT
|
|
depends on CRAMFS && BLOCK
|
|
default y
|
|
help
|
|
This option allows the CramFs driver to load data from a regular
|
|
block device such a disk partition or a ramdisk.
|
|
|
|
config CRAMFS_MTD
|
|
bool "Support CramFs image directly mapped in physical memory"
|
|
depends on CRAMFS && MTD
|
|
depends on CRAMFS=m || MTD=y
|
|
default y if !CRAMFS_BLOCKDEV
|
|
help
|
|
This option allows the CramFs driver to load data directly from
|
|
a linear adressed memory range (usually non volatile memory
|
|
like flash) instead of going through the block device layer.
|
|
This saves some memory since no intermediate buffering is
|
|
necessary.
|
|
|
|
The location of the CramFs image is determined by a
|
|
MTD device capable of direct memory mapping e.g. from
|
|
the 'physmap' map driver or a resulting MTD partition.
|
|
For example, this would mount the cramfs image stored in
|
|
the MTD partition named "xip_fs" on the /mnt mountpoint:
|
|
|
|
mount -t cramfs mtd:xip_fs /mnt
|
|
|
|
If unsure, say N.
|