1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 21da177e4SLinus Torvaldsmenu "Self-contained MTD device drivers" 31da177e4SLinus Torvalds depends on MTD!=n 49310da0bSRichard Weinberger depends on HAS_IOMEM 51da177e4SLinus Torvalds 61da177e4SLinus Torvaldsconfig MTD_PMC551 71da177e4SLinus Torvalds tristate "Ramix PMC551 PCI Mezzanine RAM card support" 8ec98c681SJan Engelhardt depends on PCI 9a8222a84SBoris Brezillon help 101da177e4SLinus Torvalds This provides a MTD device driver for the Ramix PMC551 RAM PCI card 111da177e4SLinus Torvalds from Ramix Inc. <http://www.ramix.com/products/memory/pmc551.html>. 121da177e4SLinus Torvalds These devices come in memory configurations from 32M - 1G. If you 131da177e4SLinus Torvalds have one, you probably want to enable this. 141da177e4SLinus Torvalds 151da177e4SLinus Torvalds If this driver is compiled as a module you get the ability to select 161da177e4SLinus Torvalds the size of the aperture window pointing into the devices memory. 171da177e4SLinus Torvalds What this means is that if you have a 1G card, normally the kernel 181da177e4SLinus Torvalds will use a 1G memory map as its view of the device. As a module, 191da177e4SLinus Torvalds you can select a 1M window into the memory and the driver will 201da177e4SLinus Torvalds "slide" the window around the PMC551's memory. This was 211da177e4SLinus Torvalds particularly useful on the 2.2 kernels on PPC architectures as there 221da177e4SLinus Torvalds was limited kernel space to deal with. 231da177e4SLinus Torvalds 241da177e4SLinus Torvaldsconfig MTD_PMC551_BUGFIX 251da177e4SLinus Torvalds bool "PMC551 256M DRAM Bugfix" 261da177e4SLinus Torvalds depends on MTD_PMC551 271da177e4SLinus Torvalds help 281da177e4SLinus Torvalds Some of Ramix's PMC551 boards with 256M configurations have invalid 291da177e4SLinus Torvalds column and row mux values. This option will fix them, but will 301da177e4SLinus Torvalds break other memory configurations. If unsure say N. 311da177e4SLinus Torvalds 321da177e4SLinus Torvaldsconfig MTD_PMC551_DEBUG 331da177e4SLinus Torvalds bool "PMC551 Debugging" 341da177e4SLinus Torvalds depends on MTD_PMC551 351da177e4SLinus Torvalds help 361da177e4SLinus Torvalds This option makes the PMC551 more verbose during its operation and 371da177e4SLinus Torvalds is only really useful if you are developing on this driver or 381da177e4SLinus Torvalds suspect a possible hardware or driver bug. If unsure say N. 391da177e4SLinus Torvalds 401da177e4SLinus Torvaldsconfig MTD_MS02NV 411da177e4SLinus Torvalds tristate "DEC MS02-NV NVRAM module support" 42ec98c681SJan Engelhardt depends on MACH_DECSTATION 431da177e4SLinus Torvalds help 441da177e4SLinus Torvalds This is an MTD driver for the DEC's MS02-NV (54-20948-01) battery 451da177e4SLinus Torvalds backed-up NVRAM module. The module was originally meant as an NFS 461da177e4SLinus Torvalds accelerator. Say Y here if you have a DECstation 5000/2x0 or a 471da177e4SLinus Torvalds DECsystem 5900 equipped with such a module. 481da177e4SLinus Torvalds 49be21ce11SMartin Michlmayr If you want to compile this driver as a module ( = code which can be 50be21ce11SMartin Michlmayr inserted in and removed from the running kernel whenever you want), 51cd238effSMauro Carvalho Chehab say M here and read <file:Documentation/kbuild/modules.rst>. 524737f097SPavel Machek The module will be called ms02-nv. 53be21ce11SMartin Michlmayr 541d6432feSDavid Brownellconfig MTD_DATAFLASH 551d6432feSDavid Brownell tristate "Support for AT45xxx DataFlash" 56a11ed37cSKees Cook depends on SPI_MASTER 571d6432feSDavid Brownell help 581d6432feSDavid Brownell This enables access to AT45xxx DataFlash chips, using SPI. 591d6432feSDavid Brownell Sometimes DataFlash chips are packaged inside MMC-format 601d6432feSDavid Brownell cards; at this writing, the MMC stack won't handle those. 611d6432feSDavid Brownell 628c64038eSDavid Brownellconfig MTD_DATAFLASH_WRITE_VERIFY 638c64038eSDavid Brownell bool "Verify DataFlash page writes" 648c64038eSDavid Brownell depends on MTD_DATAFLASH 658c64038eSDavid Brownell help 668c64038eSDavid Brownell This adds an extra check when data is written to the flash. 678c64038eSDavid Brownell It may help if you are verifying chip setup (timings etc) on 688c64038eSDavid Brownell your board. There is a rare possibility that even though the 698c64038eSDavid Brownell device thinks the write was successful, a bit could have been 708c64038eSDavid Brownell flipped accidentally due to device wear or something else. 718c64038eSDavid Brownell 7234a82443SDavid Brownellconfig MTD_DATAFLASH_OTP 7334a82443SDavid Brownell bool "DataFlash OTP support (Security Register)" 7434a82443SDavid Brownell depends on MTD_DATAFLASH 7534a82443SDavid Brownell help 7634a82443SDavid Brownell Newer DataFlash chips (revisions C and D) support 128 bytes of 7734a82443SDavid Brownell one-time-programmable (OTP) data. The first half may be written 7834a82443SDavid Brownell (once) with up to 64 bytes of data, such as a serial number or 7934a82443SDavid Brownell other key product data. The second half is programmed with a 8034a82443SDavid Brownell unique-to-each-chip bit pattern at the factory. 8134a82443SDavid Brownell 825dc17fa6SAndrew Lunnconfig MTD_MCHP23K256 835dc17fa6SAndrew Lunn tristate "Microchip 23K256 SRAM" 845dc17fa6SAndrew Lunn depends on SPI_MASTER 855dc17fa6SAndrew Lunn help 865dc17fa6SAndrew Lunn This enables access to Microchip 23K256 SRAM chips, using SPI. 875dc17fa6SAndrew Lunn 885dc17fa6SAndrew Lunn Set up your spi devices with the right board-specific 895dc17fa6SAndrew Lunn platform data, or a device tree description if you want to 905dc17fa6SAndrew Lunn specify device partitioning 915dc17fa6SAndrew Lunn 92*88d12502SHeiko Schocherconfig MTD_MCHP48L640 93*88d12502SHeiko Schocher tristate "Microchip 48L640 EERAM" 94*88d12502SHeiko Schocher depends on SPI_MASTER 95*88d12502SHeiko Schocher help 96*88d12502SHeiko Schocher This enables access to Microchip 48L640 EERAM chips, using SPI. 97*88d12502SHeiko Schocher 98f18dbbb1SShiraz Hashimconfig MTD_SPEAR_SMI 99f18dbbb1SShiraz Hashim tristate "SPEAR MTD NOR Support through SMI controller" 10088c4203eSMiquel Raynal depends on PLAT_SPEAR || COMPILE_TEST 101f18dbbb1SShiraz Hashim default y 102f18dbbb1SShiraz Hashim help 103f18dbbb1SShiraz Hashim This enable SNOR support on SPEAR platforms using SMI controller 104f18dbbb1SShiraz Hashim 105ec77e21bSRyan Mallonconfig MTD_SST25L 106ec77e21bSRyan Mallon tristate "Support SST25L (non JEDEC) SPI Flash chips" 107ec77e21bSRyan Mallon depends on SPI_MASTER 108ec77e21bSRyan Mallon help 109ec77e21bSRyan Mallon This enables access to the non JEDEC SST25L SPI flash chips, used 110ec77e21bSRyan Mallon for program and data storage. 111ec77e21bSRyan Mallon 112ec77e21bSRyan Mallon Set up your spi devices with the right board-specific platform data, 113ec77e21bSRyan Mallon if you want to specify device partitioning. 114ec77e21bSRyan Mallon 1155fe42d5bSRafał Miłeckiconfig MTD_BCM47XXSFLASH 1160a526341SRafał Miłecki tristate "Support for serial flash on BCMA bus" 117efacc699SRafał Miłecki depends on BCMA_SFLASH && (MIPS || ARM) 1185fe42d5bSRafał Miłecki help 1195fe42d5bSRafał Miłecki BCMA bus can have various flash memories attached, they are 1205fe42d5bSRafał Miłecki registered by bcma as platform devices. This enables driver for 1210a526341SRafał Miłecki serial flash memories. 1225fe42d5bSRafał Miłecki 1231da177e4SLinus Torvaldsconfig MTD_SLRAM 1241da177e4SLinus Torvalds tristate "Uncached system RAM" 1251da177e4SLinus Torvalds help 1261da177e4SLinus Torvalds If your CPU cannot cache all of the physical memory in your machine, 1271da177e4SLinus Torvalds you can still use it for storage or swap by using this driver to 1281da177e4SLinus Torvalds present it to the system as a Memory Technology Device. 1291da177e4SLinus Torvalds 1301da177e4SLinus Torvaldsconfig MTD_PHRAM 1311da177e4SLinus Torvalds tristate "Physical system RAM" 1321da177e4SLinus Torvalds help 1331da177e4SLinus Torvalds This is a re-implementation of the slram driver above. 1341da177e4SLinus Torvalds 1351da177e4SLinus Torvalds Use this driver to access physical memory that the kernel proper 1361da177e4SLinus Torvalds doesn't have access to, memory beyond the mem=xxx limit, nvram, 1371da177e4SLinus Torvalds memory on the video card, etc... 1381da177e4SLinus Torvalds 1391da177e4SLinus Torvaldsconfig MTD_MTDRAM 1401da177e4SLinus Torvalds tristate "Test driver using RAM" 1411da177e4SLinus Torvalds help 1421da177e4SLinus Torvalds This enables a test MTD device driver which uses vmalloc() to 1431da177e4SLinus Torvalds provide storage. You probably want to say 'N' unless you're 1441da177e4SLinus Torvalds testing stuff. 1451da177e4SLinus Torvalds 1461da177e4SLinus Torvaldsconfig MTDRAM_TOTAL_SIZE 1471da177e4SLinus Torvalds int "MTDRAM device size in KiB" 1481da177e4SLinus Torvalds depends on MTD_MTDRAM 1491da177e4SLinus Torvalds default "4096" 1501da177e4SLinus Torvalds help 1511da177e4SLinus Torvalds This allows you to configure the total size of the MTD device 1521da177e4SLinus Torvalds emulated by the MTDRAM driver. If the MTDRAM driver is built 1531da177e4SLinus Torvalds as a module, it is also possible to specify this as a parameter when 1541da177e4SLinus Torvalds loading the module. 1551da177e4SLinus Torvalds 1561da177e4SLinus Torvaldsconfig MTDRAM_ERASE_SIZE 1571da177e4SLinus Torvalds int "MTDRAM erase block size in KiB" 1581da177e4SLinus Torvalds depends on MTD_MTDRAM 1591da177e4SLinus Torvalds default "128" 1601da177e4SLinus Torvalds help 1611da177e4SLinus Torvalds This allows you to configure the size of the erase blocks in the 1621da177e4SLinus Torvalds device emulated by the MTDRAM driver. If the MTDRAM driver is built 1631da177e4SLinus Torvalds as a module, it is also possible to specify this as a parameter when 1641da177e4SLinus Torvalds loading the module. 1651da177e4SLinus Torvalds 166acc8dadcSJoern Engelconfig MTD_BLOCK2MTD 167acc8dadcSJoern Engel tristate "MTD using block device" 168ec98c681SJan Engelhardt depends on BLOCK 1691da177e4SLinus Torvalds help 1701da177e4SLinus Torvalds This driver allows a block device to appear as an MTD. It would 1711da177e4SLinus Torvalds generally be used in the following cases: 1721da177e4SLinus Torvalds 1731da177e4SLinus Torvalds Using Compact Flash as an MTD, these usually present themselves to 1741da177e4SLinus Torvalds the system as an ATA drive. 1751da177e4SLinus Torvalds Testing MTD users (eg JFFS2) on large media and media that might 1761da177e4SLinus Torvalds be removed during a write (using the floppy drive). 1771da177e4SLinus Torvalds 1781cbb4a1cSCyril Burconfig MTD_POWERNV_FLASH 1791cbb4a1cSCyril Bur tristate "powernv flash MTD driver" 1801cbb4a1cSCyril Bur depends on PPC_POWERNV 1811cbb4a1cSCyril Bur help 1821cbb4a1cSCyril Bur This provides an MTD device to access flash on powernv OPAL 1831cbb4a1cSCyril Bur platforms from Linux. This device abstracts away the 1841cbb4a1cSCyril Bur firmware interface for flash access. 1851cbb4a1cSCyril Bur 1861da177e4SLinus Torvaldscomment "Disk-On-Chip Device Drivers" 1871da177e4SLinus Torvalds 188efa2ca73SRobert Jarzmikconfig MTD_DOCG3 189efa2ca73SRobert Jarzmik tristate "M-Systems Disk-On-Chip G3" 190d13d19ecSRobert Jarzmik select BCH 191714c0682SMiquel Raynal select BCH_CONST_PARAMS if !MTD_NAND_ECC_SW_BCH 192bf65aaa6SRobert Jarzmik select BITREVERSE 193a8222a84SBoris Brezillon help 194efa2ca73SRobert Jarzmik This provides an MTD device driver for the M-Systems DiskOnChip 195efa2ca73SRobert Jarzmik G3 devices. 196efa2ca73SRobert Jarzmik 197efa2ca73SRobert Jarzmik The driver provides access to G3 DiskOnChip, distributed by 198efa2ca73SRobert Jarzmik M-Systems and now Sandisk. The support is very experimental, 199efa2ca73SRobert Jarzmik and doesn't give access to any write operations. 200efa2ca73SRobert Jarzmik 201d90db4a0SLee Jonesconfig MTD_ST_SPI_FSM 202d90db4a0SLee Jones tristate "ST Microelectronics SPI FSM Serial Flash Controller" 203dc002f99SBrian Norris depends on ARCH_STI 204d90db4a0SLee Jones help 205d90db4a0SLee Jones This provides an MTD device driver for the ST Microelectronics 206d90db4a0SLee Jones SPI Fast Sequence Mode (FSM) Serial Flash Controller and support 207d90db4a0SLee Jones for a subset of connected Serial Flash devices. 208d90db4a0SLee Jones 209d13d19ecSRobert Jarzmikif MTD_DOCG3 210d13d19ecSRobert Jarzmikconfig BCH_CONST_M 211d13d19ecSRobert Jarzmik default 14 212d13d19ecSRobert Jarzmikconfig BCH_CONST_T 213d13d19ecSRobert Jarzmik default 4 214d13d19ecSRobert Jarzmikendif 215d13d19ecSRobert Jarzmik 2161da177e4SLinus Torvaldsendmenu 217