Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0-only
0002 menu "Self-contained MTD device drivers"
0003         depends on MTD!=n
0004         depends on HAS_IOMEM
0005 
0006 config MTD_PMC551
0007         tristate "Ramix PMC551 PCI Mezzanine RAM card support"
0008         depends on PCI
0009         help
0010           This provides a MTD device driver for the Ramix PMC551 RAM PCI card
0011           from Ramix Inc. <http://www.ramix.com/products/memory/pmc551.html>.
0012           These devices come in memory configurations from 32M - 1G.  If you
0013           have one, you probably want to enable this.
0014 
0015           If this driver is compiled as a module you get the ability to select
0016           the size of the aperture window pointing into the devices memory.
0017           What this means is that if you have a 1G card, normally the kernel
0018           will use a 1G memory map as its view of the device.  As a module,
0019           you can select a 1M window into the memory and the driver will
0020           "slide" the window around the PMC551's memory.  This was
0021           particularly useful on the 2.2 kernels on PPC architectures as there
0022           was limited kernel space to deal with.
0023 
0024 config MTD_PMC551_BUGFIX
0025         bool "PMC551 256M DRAM Bugfix"
0026         depends on MTD_PMC551
0027         help
0028           Some of Ramix's PMC551 boards with 256M configurations have invalid
0029           column and row mux values.  This option will fix them, but will
0030           break other memory configurations.  If unsure say N.
0031 
0032 config MTD_PMC551_DEBUG
0033         bool "PMC551 Debugging"
0034         depends on MTD_PMC551
0035         help
0036           This option makes the PMC551 more verbose during its operation and
0037           is only really useful if you are developing on this driver or
0038           suspect a possible hardware or driver bug.  If unsure say N.
0039 
0040 config MTD_MS02NV
0041         tristate "DEC MS02-NV NVRAM module support"
0042         depends on MACH_DECSTATION
0043         help
0044           This is an MTD driver for the DEC's MS02-NV (54-20948-01) battery
0045           backed-up NVRAM module.  The module was originally meant as an NFS
0046           accelerator.  Say Y here if you have a DECstation 5000/2x0 or a
0047           DECsystem 5900 equipped with such a module.
0048 
0049           If you want to compile this driver as a module ( = code which can be
0050           inserted in and removed from the running kernel whenever you want),
0051           say M here and read <file:Documentation/kbuild/modules.rst>.
0052           The module will be called ms02-nv.
0053 
0054 config MTD_DATAFLASH
0055         tristate "Support for AT45xxx DataFlash"
0056         depends on SPI_MASTER
0057         help
0058           This enables access to AT45xxx DataFlash chips, using SPI.
0059           Sometimes DataFlash chips are packaged inside MMC-format
0060           cards; at this writing, the MMC stack won't handle those.
0061 
0062 config MTD_DATAFLASH_WRITE_VERIFY
0063         bool "Verify DataFlash page writes"
0064         depends on MTD_DATAFLASH
0065         help
0066           This adds an extra check when data is written to the flash.
0067           It may help if you are verifying chip setup (timings etc) on
0068           your board.  There is a rare possibility that even though the
0069           device thinks the write was successful, a bit could have been
0070           flipped accidentally due to device wear or something else.
0071 
0072 config MTD_DATAFLASH_OTP
0073         bool "DataFlash OTP support (Security Register)"
0074         depends on MTD_DATAFLASH
0075         help
0076           Newer DataFlash chips (revisions C and D) support 128 bytes of
0077           one-time-programmable (OTP) data.  The first half may be written
0078           (once) with up to 64 bytes of data, such as a serial number or
0079           other key product data.  The second half is programmed with a
0080           unique-to-each-chip bit pattern at the factory.
0081 
0082 config MTD_MCHP23K256
0083         tristate "Microchip 23K256 SRAM"
0084         depends on SPI_MASTER
0085         help
0086           This enables access to Microchip 23K256 SRAM chips, using SPI.
0087 
0088           Set up your spi devices with the right board-specific
0089           platform data, or a device tree description if you want to
0090           specify device partitioning
0091 
0092 config MTD_MCHP48L640
0093         tristate "Microchip 48L640 EERAM"
0094         depends on SPI_MASTER
0095         help
0096           This enables access to Microchip 48L640 EERAM chips, using SPI.
0097 
0098 config MTD_SPEAR_SMI
0099         tristate "SPEAR MTD NOR Support through SMI controller"
0100         depends on PLAT_SPEAR || COMPILE_TEST
0101         default y
0102         help
0103           This enable SNOR support on SPEAR platforms using SMI controller
0104 
0105 config MTD_SST25L
0106         tristate "Support SST25L (non JEDEC) SPI Flash chips"
0107         depends on SPI_MASTER
0108         help
0109           This enables access to the non JEDEC SST25L SPI flash chips, used
0110           for program and data storage.
0111 
0112           Set up your spi devices with the right board-specific platform data,
0113           if you want to specify device partitioning.
0114 
0115 config MTD_BCM47XXSFLASH
0116         tristate "Support for serial flash on BCMA bus"
0117         depends on BCMA_SFLASH && (MIPS || ARM)
0118         help
0119           BCMA bus can have various flash memories attached, they are
0120           registered by bcma as platform devices. This enables driver for
0121           serial flash memories.
0122 
0123 config MTD_SLRAM
0124         tristate "Uncached system RAM"
0125         help
0126           If your CPU cannot cache all of the physical memory in your machine,
0127           you can still use it for storage or swap by using this driver to
0128           present it to the system as a Memory Technology Device.
0129 
0130 config MTD_PHRAM
0131         tristate "Physical system RAM"
0132         help
0133           This is a re-implementation of the slram driver above.
0134 
0135           Use this driver to access physical memory that the kernel proper
0136           doesn't have access to, memory beyond the mem=xxx limit, nvram,
0137           memory on the video card, etc...
0138 
0139 config MTD_LART
0140         tristate "28F160xx flash driver for LART"
0141         depends on SA1100_LART
0142         help
0143           This enables the flash driver for LART. Please note that you do
0144           not need any mapping/chip driver for LART. This one does it all
0145           for you, so go disable all of those if you enabled some of them (:
0146 
0147 config MTD_MTDRAM
0148         tristate "Test driver using RAM"
0149         help
0150           This enables a test MTD device driver which uses vmalloc() to
0151           provide storage.  You probably want to say 'N' unless you're
0152           testing stuff.
0153 
0154 config MTDRAM_TOTAL_SIZE
0155         int "MTDRAM device size in KiB"
0156         depends on MTD_MTDRAM
0157         default "4096"
0158         help
0159           This allows you to configure the total size of the MTD device
0160           emulated by the MTDRAM driver.  If the MTDRAM driver is built
0161           as a module, it is also possible to specify this as a parameter when
0162           loading the module.
0163 
0164 config MTDRAM_ERASE_SIZE
0165         int "MTDRAM erase block size in KiB"
0166         depends on MTD_MTDRAM
0167         default "128"
0168         help
0169           This allows you to configure the size of the erase blocks in the
0170           device emulated by the MTDRAM driver.  If the MTDRAM driver is built
0171           as a module, it is also possible to specify this as a parameter when
0172           loading the module.
0173 
0174 config MTD_BLOCK2MTD
0175         tristate "MTD using block device"
0176         depends on BLOCK
0177         help
0178           This driver allows a block device to appear as an MTD. It would
0179           generally be used in the following cases:
0180 
0181           Using Compact Flash as an MTD, these usually present themselves to
0182           the system as an ATA drive.
0183           Testing MTD users (eg JFFS2) on large media and media that might
0184           be removed during a write (using the floppy drive).
0185 
0186 config MTD_POWERNV_FLASH
0187         tristate "powernv flash MTD driver"
0188         depends on PPC_POWERNV
0189         help
0190           This provides an MTD device to access flash on powernv OPAL
0191           platforms from Linux. This device abstracts away the
0192           firmware interface for flash access.
0193 
0194 comment "Disk-On-Chip Device Drivers"
0195 
0196 config MTD_DOCG3
0197         tristate "M-Systems Disk-On-Chip G3"
0198         select BCH
0199         select BCH_CONST_PARAMS if !MTD_NAND_ECC_SW_BCH
0200         select BITREVERSE
0201         help
0202           This provides an MTD device driver for the M-Systems DiskOnChip
0203           G3 devices.
0204 
0205           The driver provides access to G3 DiskOnChip, distributed by
0206           M-Systems and now Sandisk. The support is very experimental,
0207           and doesn't give access to any write operations.
0208 
0209 config MTD_ST_SPI_FSM
0210         tristate "ST Microelectronics SPI FSM Serial Flash Controller"
0211         depends on ARCH_STI
0212         help
0213           This provides an MTD device driver for the ST Microelectronics
0214           SPI Fast Sequence Mode (FSM) Serial Flash Controller and support
0215           for a subset of connected Serial Flash devices.
0216 
0217 if MTD_DOCG3
0218 config BCH_CONST_M
0219         default 14
0220 config BCH_CONST_T
0221         default 4
0222 endif
0223 
0224 endmenu