Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

# SPDX-License-Identifier: GPL-2.0-only
config CONFIG_CRAMFS
	tristate "Compressed ROM file system support (cramfs)"
	select CONFIG_ZLIB_INFLATE
	help
	  Saying Y here includes support for CramFs (Compressed CONFIG_ROM File
	  System).  CramFs is designed to be a simple, small, and compressed
	  file system for CONFIG_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 CONFIG_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 CONFIG_CRAMFS_BLOCKDEV
	bool "Support CramFs image over a regular block device" if CONFIG_EXPERT
	depends on CONFIG_CRAMFS && CONFIG_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 CONFIG_CRAMFS_MTD
	bool "Support CramFs image directly mapped in physical memory"
	depends on CONFIG_CRAMFS && CONFIG_CRAMFS <= CONFIG_MTD
	default y if !CONFIG_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
	  CONFIG_MTD device capable of direct memory mapping e.g. from
	  the 'physmap' map driver or a resulting CONFIG_MTD partition.
	  For example, this would mount the cramfs image stored in
	  the CONFIG_MTD partition named "xip_fs" on the /mnt mountpoint:

	  mount -t cramfs mtd:xip_fs /mnt

	  If unsure, say N.