123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225 |
- menuconfig MTD
- tristate "Memory Technology Device (MTD) support"
- imply NVMEM
- help
- Memory Technology Devices are flash, RAM and similar chips, often
- used for solid state file systems on embedded devices. This option
- will provide the generic support for MTD drivers to register
- themselves with the kernel and for potential users of MTD devices
- to enumerate the devices which are present and obtain a handle on
- them. It will also allow you to select individual drivers for
- particular hardware and users of MTD devices. If unsure, say N.
- if MTD
- config MTD_TESTS
- tristate "MTD tests support (DANGEROUS)"
- depends on m
- help
- This option includes various MTD tests into compilation. The tests
- should normally be compiled as kernel modules. The modules perform
- various checks and verifications when loaded.
- WARNING: some of the tests will ERASE entire MTD device which they
- test. Do not use these tests unless you really know what you do.
- menu "Partition parsers"
- source "drivers/mtd/parsers/Kconfig"
- endmenu
- comment "User Modules And Translation Layers"
- #
- # MTD block device support is select'ed if needed
- #
- config MTD_BLKDEVS
- tristate
- config MTD_BLOCK
- tristate "Caching block device access to MTD devices"
- depends on BLOCK
- select MTD_BLKDEVS
- help
- Although most flash chips have an erase size too large to be useful
- as block devices, it is possible to use MTD devices which are based
- on RAM chips in this manner. This block device is a user of MTD
- devices performing that function.
- Note that mounting a JFFS2 filesystem doesn't require using mtdblock.
- It's possible to mount a rootfs using the MTD device on the "root="
- bootargs as "root=mtd2" or "root=mtd:name_of_device".
- Later, it may be extended to perform read/erase/modify/write cycles
- on flash chips to emulate a smaller block size. Needless to say,
- this is very unsafe, but could be useful for file systems which are
- almost never written to.
- You do not need this option for use with the DiskOnChip devices. For
- those, enable NFTL support (CONFIG_NFTL) instead.
- config MTD_BLOCK_RO
- tristate "Readonly block device access to MTD devices"
- depends on MTD_BLOCK!=y && BLOCK
- select MTD_BLKDEVS
- help
- This allows you to mount read-only file systems (such as cramfs)
- from an MTD device, without the overhead (and danger) of the caching
- driver.
- You do not need this option for use with the DiskOnChip devices. For
- those, enable NFTL support (CONFIG_NFTL) instead.
- comment "Note that in some cases UBI block is preferred. See MTD_UBI_BLOCK."
- depends on MTD_BLOCK || MTD_BLOCK_RO
- config FTL
- tristate "FTL (Flash Translation Layer) support"
- depends on BLOCK
- select MTD_BLKDEVS
- help
- This provides support for the original Flash Translation Layer which
- is part of the PCMCIA specification. It uses a kind of pseudo-
- file system on a flash device to emulate a block device with
- 512-byte sectors, on top of which you put a 'normal' file system.
- You may find that the algorithms used in this code are patented
- unless you live in the Free World where software patents aren't
- legal - in the USA you are only permitted to use this on PCMCIA
- hardware, although under the terms of the GPL you're obviously
- permitted to copy, modify and distribute the code as you wish. Just
- not use it.
- config NFTL
- tristate "NFTL (NAND Flash Translation Layer) support"
- depends on BLOCK
- select MTD_BLKDEVS
- help
- This provides support for the NAND Flash Translation Layer which is
- used on M-Systems' DiskOnChip devices. It uses a kind of pseudo-
- file system on a flash device to emulate a block device with
- 512-byte sectors, on top of which you put a 'normal' file system.
- You may find that the algorithms used in this code are patented
- unless you live in the Free World where software patents aren't
- legal - in the USA you are only permitted to use this on DiskOnChip
- hardware, although under the terms of the GPL you're obviously
- permitted to copy, modify and distribute the code as you wish. Just
- not use it.
- config NFTL_RW
- bool "Write support for NFTL"
- depends on NFTL
- help
- Support for writing to the NAND Flash Translation Layer, as used
- on the DiskOnChip.
- config INFTL
- tristate "INFTL (Inverse NAND Flash Translation Layer) support"
- depends on BLOCK
- select MTD_BLKDEVS
- help
- This provides support for the Inverse NAND Flash Translation
- Layer which is used on M-Systems' newer DiskOnChip devices. It
- uses a kind of pseudo-file system on a flash device to emulate
- a block device with 512-byte sectors, on top of which you put
- a 'normal' file system.
- You may find that the algorithms used in this code are patented
- unless you live in the Free World where software patents aren't
- legal - in the USA you are only permitted to use this on DiskOnChip
- hardware, although under the terms of the GPL you're obviously
- permitted to copy, modify and distribute the code as you wish. Just
- not use it.
- config RFD_FTL
- tristate "Resident Flash Disk (Flash Translation Layer) support"
- depends on BLOCK
- select MTD_BLKDEVS
- help
- This provides support for the flash translation layer known
- as the Resident Flash Disk (RFD), as used by the Embedded BIOS
- of General Software. There is a blurb at:
- http://www.gensw.com/pages/prod/bios/rfd.htm
- config SSFDC
- tristate "NAND SSFDC (SmartMedia) read only translation layer"
- depends on BLOCK
- select MTD_BLKDEVS
- help
- This enables read only access to SmartMedia formatted NAND
- flash. You can mount it with FAT file system.
- config SM_FTL
- tristate "SmartMedia/xD new translation layer"
- depends on BLOCK
- select MTD_BLKDEVS
- select MTD_NAND_CORE
- select MTD_NAND_ECC_SW_HAMMING
- help
- This enables EXPERIMENTAL R/W support for SmartMedia/xD
- FTL (Flash translation layer).
- Write support is only lightly tested, therefore this driver
- isn't recommended to use with valuable data (anyway if you have
- valuable data, do backups regardless of software/hardware you
- use, because you never know what will eat your data...)
- If you only need R/O access, you can use older R/O driver
- (CONFIG_SSFDC)
- config MTD_OOPS
- tristate "Log panic/oops to an MTD buffer"
- help
- This enables panic and oops messages to be logged to a circular
- buffer in a flash partition where it can be read back at some
- later point.
- config MTD_PSTORE
- tristate "Log panic/oops to an MTD buffer based on pstore"
- depends on PSTORE_BLK
- help
- This enables panic and oops messages to be logged to a circular
- buffer in a flash partition where it can be read back as files after
- mounting pstore filesystem.
- If unsure, say N.
- config MTD_SWAP
- tristate "Swap on MTD device support"
- depends on MTD && SWAP
- select MTD_BLKDEVS
- help
- Provides volatile block device driver on top of mtd partition
- suitable for swapping. The mapping of written blocks is not saved.
- The driver provides wear leveling by storing erase counter into the
- OOB.
- config MTD_PARTITIONED_MASTER
- bool "Retain master device when partitioned"
- default n
- depends on MTD
- help
- For historical reasons, by default, either a master is present or
- several partitions are present, but not both. The concern was that
- data listed in multiple partitions was dangerous; however, SCSI does
- this and it is frequently useful for applications. This config option
- leaves the master in even if the device is partitioned. It also makes
- the parent of the partition device be the master device, rather than
- what lies behind the master.
- source "drivers/mtd/chips/Kconfig"
- source "drivers/mtd/maps/Kconfig"
- source "drivers/mtd/devices/Kconfig"
- source "drivers/mtd/nand/Kconfig"
- source "drivers/mtd/lpddr/Kconfig"
- source "drivers/mtd/spi-nor/Kconfig"
- source "drivers/mtd/ubi/Kconfig"
- source "drivers/mtd/hyperbus/Kconfig"
- endif # MTD
|