1*93db446aSBoris Brezillonconfig MTD_NAND_ECC 2*93db446aSBoris Brezillon tristate 3*93db446aSBoris Brezillon 4*93db446aSBoris Brezillonconfig MTD_NAND_ECC_SMC 5*93db446aSBoris Brezillon bool "NAND ECC Smart Media byte order" 6*93db446aSBoris Brezillon depends on MTD_NAND_ECC 7*93db446aSBoris Brezillon default n 8*93db446aSBoris Brezillon help 9*93db446aSBoris Brezillon Software ECC according to the Smart Media Specification. 10*93db446aSBoris Brezillon The original Linux implementation had byte 0 and 1 swapped. 11*93db446aSBoris Brezillon 12*93db446aSBoris Brezillon 13*93db446aSBoris Brezillonmenuconfig MTD_NAND 14*93db446aSBoris Brezillon tristate "NAND Device Support" 15*93db446aSBoris Brezillon depends on MTD 16*93db446aSBoris Brezillon select MTD_NAND_ECC 17*93db446aSBoris Brezillon help 18*93db446aSBoris Brezillon This enables support for accessing all type of NAND flash 19*93db446aSBoris Brezillon devices. For further information see 20*93db446aSBoris Brezillon <http://www.linux-mtd.infradead.org/doc/nand.html>. 21*93db446aSBoris Brezillon 22*93db446aSBoris Brezillonif MTD_NAND 23*93db446aSBoris Brezillon 24*93db446aSBoris Brezillonconfig MTD_NAND_BCH 25*93db446aSBoris Brezillon tristate 26*93db446aSBoris Brezillon select BCH 27*93db446aSBoris Brezillon depends on MTD_NAND_ECC_BCH 28*93db446aSBoris Brezillon default MTD_NAND 29*93db446aSBoris Brezillon 30*93db446aSBoris Brezillonconfig MTD_NAND_ECC_BCH 31*93db446aSBoris Brezillon bool "Support software BCH ECC" 32*93db446aSBoris Brezillon default n 33*93db446aSBoris Brezillon help 34*93db446aSBoris Brezillon This enables support for software BCH error correction. Binary BCH 35*93db446aSBoris Brezillon codes are more powerful and cpu intensive than traditional Hamming 36*93db446aSBoris Brezillon ECC codes. They are used with NAND devices requiring more than 1 bit 37*93db446aSBoris Brezillon of error correction. 38*93db446aSBoris Brezillon 39*93db446aSBoris Brezillonconfig MTD_SM_COMMON 40*93db446aSBoris Brezillon tristate 41*93db446aSBoris Brezillon default n 42*93db446aSBoris Brezillon 43*93db446aSBoris Brezillonconfig MTD_NAND_DENALI 44*93db446aSBoris Brezillon tristate 45*93db446aSBoris Brezillon 46*93db446aSBoris Brezillonconfig MTD_NAND_DENALI_PCI 47*93db446aSBoris Brezillon tristate "Support Denali NAND controller on Intel Moorestown" 48*93db446aSBoris Brezillon select MTD_NAND_DENALI 49*93db446aSBoris Brezillon depends on HAS_DMA && PCI 50*93db446aSBoris Brezillon help 51*93db446aSBoris Brezillon Enable the driver for NAND flash on Intel Moorestown, using the 52*93db446aSBoris Brezillon Denali NAND controller core. 53*93db446aSBoris Brezillon 54*93db446aSBoris Brezillonconfig MTD_NAND_DENALI_DT 55*93db446aSBoris Brezillon tristate "Support Denali NAND controller as a DT device" 56*93db446aSBoris Brezillon select MTD_NAND_DENALI 57*93db446aSBoris Brezillon depends on HAS_DMA && HAVE_CLK && OF 58*93db446aSBoris Brezillon help 59*93db446aSBoris Brezillon Enable the driver for NAND flash on platforms using a Denali NAND 60*93db446aSBoris Brezillon controller as a DT device. 61*93db446aSBoris Brezillon 62*93db446aSBoris Brezillonconfig MTD_NAND_GPIO 63*93db446aSBoris Brezillon tristate "GPIO assisted NAND Flash driver" 64*93db446aSBoris Brezillon depends on GPIOLIB || COMPILE_TEST 65*93db446aSBoris Brezillon depends on HAS_IOMEM 66*93db446aSBoris Brezillon help 67*93db446aSBoris Brezillon This enables a NAND flash driver where control signals are 68*93db446aSBoris Brezillon connected to GPIO pins, and commands and data are communicated 69*93db446aSBoris Brezillon via a memory mapped interface. 70*93db446aSBoris Brezillon 71*93db446aSBoris Brezillonconfig MTD_NAND_AMS_DELTA 72*93db446aSBoris Brezillon tristate "NAND Flash device on Amstrad E3" 73*93db446aSBoris Brezillon depends on MACH_AMS_DELTA 74*93db446aSBoris Brezillon default y 75*93db446aSBoris Brezillon help 76*93db446aSBoris Brezillon Support for NAND flash on Amstrad E3 (Delta). 77*93db446aSBoris Brezillon 78*93db446aSBoris Brezillonconfig MTD_NAND_OMAP2 79*93db446aSBoris Brezillon tristate "NAND Flash device on OMAP2, OMAP3, OMAP4 and Keystone" 80*93db446aSBoris Brezillon depends on (ARCH_OMAP2PLUS || ARCH_KEYSTONE) 81*93db446aSBoris Brezillon help 82*93db446aSBoris Brezillon Support for NAND flash on Texas Instruments OMAP2, OMAP3, OMAP4 83*93db446aSBoris Brezillon and Keystone platforms. 84*93db446aSBoris Brezillon 85*93db446aSBoris Brezillonconfig MTD_NAND_OMAP_BCH 86*93db446aSBoris Brezillon depends on MTD_NAND_OMAP2 87*93db446aSBoris Brezillon bool "Support hardware based BCH error correction" 88*93db446aSBoris Brezillon default n 89*93db446aSBoris Brezillon select BCH 90*93db446aSBoris Brezillon help 91*93db446aSBoris Brezillon This config enables the ELM hardware engine, which can be used to 92*93db446aSBoris Brezillon locate and correct errors when using BCH ECC scheme. This offloads 93*93db446aSBoris Brezillon the cpu from doing ECC error searching and correction. However some 94*93db446aSBoris Brezillon legacy OMAP families like OMAP2xxx, OMAP3xxx do not have ELM engine 95*93db446aSBoris Brezillon so this is optional for them. 96*93db446aSBoris Brezillon 97*93db446aSBoris Brezillonconfig MTD_NAND_OMAP_BCH_BUILD 98*93db446aSBoris Brezillon def_tristate MTD_NAND_OMAP2 && MTD_NAND_OMAP_BCH 99*93db446aSBoris Brezillon 100*93db446aSBoris Brezillonconfig MTD_NAND_RICOH 101*93db446aSBoris Brezillon tristate "Ricoh xD card reader" 102*93db446aSBoris Brezillon default n 103*93db446aSBoris Brezillon depends on PCI 104*93db446aSBoris Brezillon select MTD_SM_COMMON 105*93db446aSBoris Brezillon help 106*93db446aSBoris Brezillon Enable support for Ricoh R5C852 xD card reader 107*93db446aSBoris Brezillon You also need to enable ether 108*93db446aSBoris Brezillon NAND SSFDC (SmartMedia) read only translation layer' or new 109*93db446aSBoris Brezillon expermental, readwrite 110*93db446aSBoris Brezillon 'SmartMedia/xD new translation layer' 111*93db446aSBoris Brezillon 112*93db446aSBoris Brezillonconfig MTD_NAND_AU1550 113*93db446aSBoris Brezillon tristate "Au1550/1200 NAND support" 114*93db446aSBoris Brezillon depends on MIPS_ALCHEMY 115*93db446aSBoris Brezillon help 116*93db446aSBoris Brezillon This enables the driver for the NAND flash controller on the 117*93db446aSBoris Brezillon AMD/Alchemy 1550 SOC. 118*93db446aSBoris Brezillon 119*93db446aSBoris Brezillonconfig MTD_NAND_BF5XX 120*93db446aSBoris Brezillon tristate "Blackfin on-chip NAND Flash Controller driver" 121*93db446aSBoris Brezillon depends on BF54x || BF52x 122*93db446aSBoris Brezillon help 123*93db446aSBoris Brezillon This enables the Blackfin on-chip NAND flash controller 124*93db446aSBoris Brezillon 125*93db446aSBoris Brezillon No board specific support is done by this driver, each board 126*93db446aSBoris Brezillon must advertise a platform_device for the driver to attach. 127*93db446aSBoris Brezillon 128*93db446aSBoris Brezillon This driver can also be built as a module. If so, the module 129*93db446aSBoris Brezillon will be called bf5xx-nand. 130*93db446aSBoris Brezillon 131*93db446aSBoris Brezillonconfig MTD_NAND_BF5XX_HWECC 132*93db446aSBoris Brezillon bool "BF5XX NAND Hardware ECC" 133*93db446aSBoris Brezillon default y 134*93db446aSBoris Brezillon depends on MTD_NAND_BF5XX 135*93db446aSBoris Brezillon help 136*93db446aSBoris Brezillon Enable the use of the BF5XX's internal ECC generator when 137*93db446aSBoris Brezillon using NAND. 138*93db446aSBoris Brezillon 139*93db446aSBoris Brezillonconfig MTD_NAND_BF5XX_BOOTROM_ECC 140*93db446aSBoris Brezillon bool "Use Blackfin BootROM ECC Layout" 141*93db446aSBoris Brezillon default n 142*93db446aSBoris Brezillon depends on MTD_NAND_BF5XX_HWECC 143*93db446aSBoris Brezillon help 144*93db446aSBoris Brezillon If you wish to modify NAND pages and allow the Blackfin on-chip 145*93db446aSBoris Brezillon BootROM to boot from them, say Y here. This is only necessary 146*93db446aSBoris Brezillon if you are booting U-Boot out of NAND and you wish to update 147*93db446aSBoris Brezillon U-Boot from Linux' userspace. Otherwise, you should say N here. 148*93db446aSBoris Brezillon 149*93db446aSBoris Brezillon If unsure, say N. 150*93db446aSBoris Brezillon 151*93db446aSBoris Brezillonconfig MTD_NAND_S3C2410 152*93db446aSBoris Brezillon tristate "NAND Flash support for Samsung S3C SoCs" 153*93db446aSBoris Brezillon depends on ARCH_S3C24XX || ARCH_S3C64XX 154*93db446aSBoris Brezillon help 155*93db446aSBoris Brezillon This enables the NAND flash controller on the S3C24xx and S3C64xx 156*93db446aSBoris Brezillon SoCs 157*93db446aSBoris Brezillon 158*93db446aSBoris Brezillon No board specific support is done by this driver, each board 159*93db446aSBoris Brezillon must advertise a platform_device for the driver to attach. 160*93db446aSBoris Brezillon 161*93db446aSBoris Brezillonconfig MTD_NAND_S3C2410_DEBUG 162*93db446aSBoris Brezillon bool "Samsung S3C NAND driver debug" 163*93db446aSBoris Brezillon depends on MTD_NAND_S3C2410 164*93db446aSBoris Brezillon help 165*93db446aSBoris Brezillon Enable debugging of the S3C NAND driver 166*93db446aSBoris Brezillon 167*93db446aSBoris Brezillonconfig MTD_NAND_NDFC 168*93db446aSBoris Brezillon tristate "NDFC NanD Flash Controller" 169*93db446aSBoris Brezillon depends on 4xx 170*93db446aSBoris Brezillon select MTD_NAND_ECC_SMC 171*93db446aSBoris Brezillon help 172*93db446aSBoris Brezillon NDFC Nand Flash Controllers are integrated in IBM/AMCC's 4xx SoCs 173*93db446aSBoris Brezillon 174*93db446aSBoris Brezillonconfig MTD_NAND_S3C2410_CLKSTOP 175*93db446aSBoris Brezillon bool "Samsung S3C NAND IDLE clock stop" 176*93db446aSBoris Brezillon depends on MTD_NAND_S3C2410 177*93db446aSBoris Brezillon default n 178*93db446aSBoris Brezillon help 179*93db446aSBoris Brezillon Stop the clock to the NAND controller when there is no chip 180*93db446aSBoris Brezillon selected to save power. This will mean there is a small delay 181*93db446aSBoris Brezillon when the is NAND chip selected or released, but will save 182*93db446aSBoris Brezillon approximately 5mA of power when there is nothing happening. 183*93db446aSBoris Brezillon 184*93db446aSBoris Brezillonconfig MTD_NAND_TANGO 185*93db446aSBoris Brezillon tristate "NAND Flash support for Tango chips" 186*93db446aSBoris Brezillon depends on ARCH_TANGO || COMPILE_TEST 187*93db446aSBoris Brezillon depends on HAS_DMA 188*93db446aSBoris Brezillon help 189*93db446aSBoris Brezillon Enables the NAND Flash controller on Tango chips. 190*93db446aSBoris Brezillon 191*93db446aSBoris Brezillonconfig MTD_NAND_DISKONCHIP 192*93db446aSBoris Brezillon tristate "DiskOnChip 2000, Millennium and Millennium Plus (NAND reimplementation)" 193*93db446aSBoris Brezillon depends on HAS_IOMEM 194*93db446aSBoris Brezillon select REED_SOLOMON 195*93db446aSBoris Brezillon select REED_SOLOMON_DEC16 196*93db446aSBoris Brezillon help 197*93db446aSBoris Brezillon This is a reimplementation of M-Systems DiskOnChip 2000, 198*93db446aSBoris Brezillon Millennium and Millennium Plus as a standard NAND device driver, 199*93db446aSBoris Brezillon as opposed to the earlier self-contained MTD device drivers. 200*93db446aSBoris Brezillon This should enable, among other things, proper JFFS2 operation on 201*93db446aSBoris Brezillon these devices. 202*93db446aSBoris Brezillon 203*93db446aSBoris Brezillonconfig MTD_NAND_DISKONCHIP_PROBE_ADVANCED 204*93db446aSBoris Brezillon bool "Advanced detection options for DiskOnChip" 205*93db446aSBoris Brezillon depends on MTD_NAND_DISKONCHIP 206*93db446aSBoris Brezillon help 207*93db446aSBoris Brezillon This option allows you to specify nonstandard address at which to 208*93db446aSBoris Brezillon probe for a DiskOnChip, or to change the detection options. You 209*93db446aSBoris Brezillon are unlikely to need any of this unless you are using LinuxBIOS. 210*93db446aSBoris Brezillon Say 'N'. 211*93db446aSBoris Brezillon 212*93db446aSBoris Brezillonconfig MTD_NAND_DISKONCHIP_PROBE_ADDRESS 213*93db446aSBoris Brezillon hex "Physical address of DiskOnChip" if MTD_NAND_DISKONCHIP_PROBE_ADVANCED 214*93db446aSBoris Brezillon depends on MTD_NAND_DISKONCHIP 215*93db446aSBoris Brezillon default "0" 216*93db446aSBoris Brezillon ---help--- 217*93db446aSBoris Brezillon By default, the probe for DiskOnChip devices will look for a 218*93db446aSBoris Brezillon DiskOnChip at every multiple of 0x2000 between 0xC8000 and 0xEE000. 219*93db446aSBoris Brezillon This option allows you to specify a single address at which to probe 220*93db446aSBoris Brezillon for the device, which is useful if you have other devices in that 221*93db446aSBoris Brezillon range which get upset when they are probed. 222*93db446aSBoris Brezillon 223*93db446aSBoris Brezillon (Note that on PowerPC, the normal probe will only check at 224*93db446aSBoris Brezillon 0xE4000000.) 225*93db446aSBoris Brezillon 226*93db446aSBoris Brezillon Normally, you should leave this set to zero, to allow the probe at 227*93db446aSBoris Brezillon the normal addresses. 228*93db446aSBoris Brezillon 229*93db446aSBoris Brezillonconfig MTD_NAND_DISKONCHIP_PROBE_HIGH 230*93db446aSBoris Brezillon bool "Probe high addresses" 231*93db446aSBoris Brezillon depends on MTD_NAND_DISKONCHIP_PROBE_ADVANCED 232*93db446aSBoris Brezillon help 233*93db446aSBoris Brezillon By default, the probe for DiskOnChip devices will look for a 234*93db446aSBoris Brezillon DiskOnChip at every multiple of 0x2000 between 0xC8000 and 0xEE000. 235*93db446aSBoris Brezillon This option changes to make it probe between 0xFFFC8000 and 236*93db446aSBoris Brezillon 0xFFFEE000. Unless you are using LinuxBIOS, this is unlikely to be 237*93db446aSBoris Brezillon useful to you. Say 'N'. 238*93db446aSBoris Brezillon 239*93db446aSBoris Brezillonconfig MTD_NAND_DISKONCHIP_BBTWRITE 240*93db446aSBoris Brezillon bool "Allow BBT writes on DiskOnChip Millennium and 2000TSOP" 241*93db446aSBoris Brezillon depends on MTD_NAND_DISKONCHIP 242*93db446aSBoris Brezillon help 243*93db446aSBoris Brezillon On DiskOnChip devices shipped with the INFTL filesystem (Millennium 244*93db446aSBoris Brezillon and 2000 TSOP/Alon), Linux reserves some space at the end of the 245*93db446aSBoris Brezillon device for the Bad Block Table (BBT). If you have existing INFTL 246*93db446aSBoris Brezillon data on your device (created by non-Linux tools such as M-Systems' 247*93db446aSBoris Brezillon DOS drivers), your data might overlap the area Linux wants to use for 248*93db446aSBoris Brezillon the BBT. If this is a concern for you, leave this option disabled and 249*93db446aSBoris Brezillon Linux will not write BBT data into this area. 250*93db446aSBoris Brezillon The downside of leaving this option disabled is that if bad blocks 251*93db446aSBoris Brezillon are detected by Linux, they will not be recorded in the BBT, which 252*93db446aSBoris Brezillon could cause future problems. 253*93db446aSBoris Brezillon Once you enable this option, new filesystems (INFTL or others, created 254*93db446aSBoris Brezillon in Linux or other operating systems) will not use the reserved area. 255*93db446aSBoris Brezillon The only reason not to enable this option is to prevent damage to 256*93db446aSBoris Brezillon preexisting filesystems. 257*93db446aSBoris Brezillon Even if you leave this disabled, you can enable BBT writes at module 258*93db446aSBoris Brezillon load time (assuming you build diskonchip as a module) with the module 259*93db446aSBoris Brezillon parameter "inftl_bbt_write=1". 260*93db446aSBoris Brezillon 261*93db446aSBoris Brezillonconfig MTD_NAND_DOCG4 262*93db446aSBoris Brezillon tristate "Support for DiskOnChip G4" 263*93db446aSBoris Brezillon depends on HAS_IOMEM 264*93db446aSBoris Brezillon select BCH 265*93db446aSBoris Brezillon select BITREVERSE 266*93db446aSBoris Brezillon help 267*93db446aSBoris Brezillon Support for diskonchip G4 nand flash, found in various smartphones and 268*93db446aSBoris Brezillon PDAs, among them the Palm Treo680, HTC Prophet and Wizard, Toshiba 269*93db446aSBoris Brezillon Portege G900, Asus P526, and O2 XDA Zinc. 270*93db446aSBoris Brezillon 271*93db446aSBoris Brezillon With this driver you will be able to use UBI and create a ubifs on the 272*93db446aSBoris Brezillon device, so you may wish to consider enabling UBI and UBIFS as well. 273*93db446aSBoris Brezillon 274*93db446aSBoris Brezillon These devices ship with the Mys/Sandisk SAFTL formatting, for which 275*93db446aSBoris Brezillon there is currently no mtd parser, so you may want to use command line 276*93db446aSBoris Brezillon partitioning to segregate write-protected blocks. On the Treo680, the 277*93db446aSBoris Brezillon first five erase blocks (256KiB each) are write-protected, followed 278*93db446aSBoris Brezillon by the block containing the saftl partition table. This is probably 279*93db446aSBoris Brezillon typical. 280*93db446aSBoris Brezillon 281*93db446aSBoris Brezillonconfig MTD_NAND_SHARPSL 282*93db446aSBoris Brezillon tristate "Support for NAND Flash on Sharp SL Series (C7xx + others)" 283*93db446aSBoris Brezillon depends on ARCH_PXA 284*93db446aSBoris Brezillon 285*93db446aSBoris Brezillonconfig MTD_NAND_CAFE 286*93db446aSBoris Brezillon tristate "NAND support for OLPC CAFÉ chip" 287*93db446aSBoris Brezillon depends on PCI 288*93db446aSBoris Brezillon select REED_SOLOMON 289*93db446aSBoris Brezillon select REED_SOLOMON_DEC16 290*93db446aSBoris Brezillon help 291*93db446aSBoris Brezillon Use NAND flash attached to the CAFÉ chip designed for the OLPC 292*93db446aSBoris Brezillon laptop. 293*93db446aSBoris Brezillon 294*93db446aSBoris Brezillonconfig MTD_NAND_CS553X 295*93db446aSBoris Brezillon tristate "NAND support for CS5535/CS5536 (AMD Geode companion chip)" 296*93db446aSBoris Brezillon depends on X86_32 297*93db446aSBoris Brezillon depends on !UML && HAS_IOMEM 298*93db446aSBoris Brezillon help 299*93db446aSBoris Brezillon The CS553x companion chips for the AMD Geode processor 300*93db446aSBoris Brezillon include NAND flash controllers with built-in hardware ECC 301*93db446aSBoris Brezillon capabilities; enabling this option will allow you to use 302*93db446aSBoris Brezillon these. The driver will check the MSRs to verify that the 303*93db446aSBoris Brezillon controller is enabled for NAND, and currently requires that 304*93db446aSBoris Brezillon the controller be in MMIO mode. 305*93db446aSBoris Brezillon 306*93db446aSBoris Brezillon If you say "m", the module will be called cs553x_nand. 307*93db446aSBoris Brezillon 308*93db446aSBoris Brezillonconfig MTD_NAND_ATMEL 309*93db446aSBoris Brezillon tristate "Support for NAND Flash / SmartMedia on AT91" 310*93db446aSBoris Brezillon depends on ARCH_AT91 311*93db446aSBoris Brezillon select MFD_ATMEL_SMC 312*93db446aSBoris Brezillon help 313*93db446aSBoris Brezillon Enables support for NAND Flash / Smart Media Card interface 314*93db446aSBoris Brezillon on Atmel AT91 processors. 315*93db446aSBoris Brezillon 316*93db446aSBoris Brezillonconfig MTD_NAND_PXA3xx 317*93db446aSBoris Brezillon tristate "NAND support on PXA3xx and Armada 370/XP" 318*93db446aSBoris Brezillon depends on !MTD_NAND_MARVELL 319*93db446aSBoris Brezillon depends on PXA3xx || ARCH_MMP || PLAT_ORION || ARCH_MVEBU 320*93db446aSBoris Brezillon help 321*93db446aSBoris Brezillon 322*93db446aSBoris Brezillon This enables the driver for the NAND flash device found on 323*93db446aSBoris Brezillon PXA3xx processors (NFCv1) and also on 32-bit Armada 324*93db446aSBoris Brezillon platforms (XP, 370, 375, 38x, 39x) and 64-bit Armada 325*93db446aSBoris Brezillon platforms (7K, 8K) (NFCv2). 326*93db446aSBoris Brezillon 327*93db446aSBoris Brezillonconfig MTD_NAND_MARVELL 328*93db446aSBoris Brezillon tristate "NAND controller support on Marvell boards" 329*93db446aSBoris Brezillon depends on PXA3xx || ARCH_MMP || PLAT_ORION || ARCH_MVEBU || \ 330*93db446aSBoris Brezillon COMPILE_TEST 331*93db446aSBoris Brezillon depends on HAS_IOMEM 332*93db446aSBoris Brezillon help 333*93db446aSBoris Brezillon This enables the NAND flash controller driver for Marvell boards, 334*93db446aSBoris Brezillon including: 335*93db446aSBoris Brezillon - PXA3xx processors (NFCv1) 336*93db446aSBoris Brezillon - 32-bit Armada platforms (XP, 37x, 38x, 39x) (NFCv2) 337*93db446aSBoris Brezillon - 64-bit Aramda platforms (7k, 8k) (NFCv2) 338*93db446aSBoris Brezillon 339*93db446aSBoris Brezillonconfig MTD_NAND_SLC_LPC32XX 340*93db446aSBoris Brezillon tristate "NXP LPC32xx SLC Controller" 341*93db446aSBoris Brezillon depends on ARCH_LPC32XX 342*93db446aSBoris Brezillon help 343*93db446aSBoris Brezillon Enables support for NXP's LPC32XX SLC (i.e. for Single Level Cell 344*93db446aSBoris Brezillon chips) NAND controller. This is the default for the PHYTEC 3250 345*93db446aSBoris Brezillon reference board which contains a NAND256R3A2CZA6 chip. 346*93db446aSBoris Brezillon 347*93db446aSBoris Brezillon Please check the actual NAND chip connected and its support 348*93db446aSBoris Brezillon by the SLC NAND controller. 349*93db446aSBoris Brezillon 350*93db446aSBoris Brezillonconfig MTD_NAND_MLC_LPC32XX 351*93db446aSBoris Brezillon tristate "NXP LPC32xx MLC Controller" 352*93db446aSBoris Brezillon depends on ARCH_LPC32XX 353*93db446aSBoris Brezillon help 354*93db446aSBoris Brezillon Uses the LPC32XX MLC (i.e. for Multi Level Cell chips) NAND 355*93db446aSBoris Brezillon controller. This is the default for the WORK92105 controller 356*93db446aSBoris Brezillon board. 357*93db446aSBoris Brezillon 358*93db446aSBoris Brezillon Please check the actual NAND chip connected and its support 359*93db446aSBoris Brezillon by the MLC NAND controller. 360*93db446aSBoris Brezillon 361*93db446aSBoris Brezillonconfig MTD_NAND_CM_X270 362*93db446aSBoris Brezillon tristate "Support for NAND Flash on CM-X270 modules" 363*93db446aSBoris Brezillon depends on MACH_ARMCORE 364*93db446aSBoris Brezillon 365*93db446aSBoris Brezillonconfig MTD_NAND_PASEMI 366*93db446aSBoris Brezillon tristate "NAND support for PA Semi PWRficient" 367*93db446aSBoris Brezillon depends on PPC_PASEMI 368*93db446aSBoris Brezillon help 369*93db446aSBoris Brezillon Enables support for NAND Flash interface on PA Semi PWRficient 370*93db446aSBoris Brezillon based boards 371*93db446aSBoris Brezillon 372*93db446aSBoris Brezillonconfig MTD_NAND_TMIO 373*93db446aSBoris Brezillon tristate "NAND Flash device on Toshiba Mobile IO Controller" 374*93db446aSBoris Brezillon depends on MFD_TMIO 375*93db446aSBoris Brezillon help 376*93db446aSBoris Brezillon Support for NAND flash connected to a Toshiba Mobile IO 377*93db446aSBoris Brezillon Controller in some PDAs, including the Sharp SL6000x. 378*93db446aSBoris Brezillon 379*93db446aSBoris Brezillonconfig MTD_NAND_NANDSIM 380*93db446aSBoris Brezillon tristate "Support for NAND Flash Simulator" 381*93db446aSBoris Brezillon help 382*93db446aSBoris Brezillon The simulator may simulate various NAND flash chips for the 383*93db446aSBoris Brezillon MTD nand layer. 384*93db446aSBoris Brezillon 385*93db446aSBoris Brezillonconfig MTD_NAND_GPMI_NAND 386*93db446aSBoris Brezillon tristate "GPMI NAND Flash Controller driver" 387*93db446aSBoris Brezillon depends on MTD_NAND && MXS_DMA 388*93db446aSBoris Brezillon help 389*93db446aSBoris Brezillon Enables NAND Flash support for IMX23, IMX28 or IMX6. 390*93db446aSBoris Brezillon The GPMI controller is very powerful, with the help of BCH 391*93db446aSBoris Brezillon module, it can do the hardware ECC. The GPMI supports several 392*93db446aSBoris Brezillon NAND flashs at the same time. 393*93db446aSBoris Brezillon 394*93db446aSBoris Brezillonconfig MTD_NAND_BRCMNAND 395*93db446aSBoris Brezillon tristate "Broadcom STB NAND controller" 396*93db446aSBoris Brezillon depends on ARM || ARM64 || MIPS 397*93db446aSBoris Brezillon help 398*93db446aSBoris Brezillon Enables the Broadcom NAND controller driver. The controller was 399*93db446aSBoris Brezillon originally designed for Set-Top Box but is used on various BCM7xxx, 400*93db446aSBoris Brezillon BCM3xxx, BCM63xxx, iProc/Cygnus and more. 401*93db446aSBoris Brezillon 402*93db446aSBoris Brezillonconfig MTD_NAND_BCM47XXNFLASH 403*93db446aSBoris Brezillon tristate "Support for NAND flash on BCM4706 BCMA bus" 404*93db446aSBoris Brezillon depends on BCMA_NFLASH 405*93db446aSBoris Brezillon help 406*93db446aSBoris Brezillon BCMA bus can have various flash memories attached, they are 407*93db446aSBoris Brezillon registered by bcma as platform devices. This enables driver for 408*93db446aSBoris Brezillon NAND flash memories. For now only BCM4706 is supported. 409*93db446aSBoris Brezillon 410*93db446aSBoris Brezillonconfig MTD_NAND_PLATFORM 411*93db446aSBoris Brezillon tristate "Support for generic platform NAND driver" 412*93db446aSBoris Brezillon depends on HAS_IOMEM 413*93db446aSBoris Brezillon help 414*93db446aSBoris Brezillon This implements a generic NAND driver for on-SOC platform 415*93db446aSBoris Brezillon devices. You will need to provide platform-specific functions 416*93db446aSBoris Brezillon via platform_data. 417*93db446aSBoris Brezillon 418*93db446aSBoris Brezillonconfig MTD_NAND_ORION 419*93db446aSBoris Brezillon tristate "NAND Flash support for Marvell Orion SoC" 420*93db446aSBoris Brezillon depends on PLAT_ORION 421*93db446aSBoris Brezillon help 422*93db446aSBoris Brezillon This enables the NAND flash controller on Orion machines. 423*93db446aSBoris Brezillon 424*93db446aSBoris Brezillon No board specific support is done by this driver, each board 425*93db446aSBoris Brezillon must advertise a platform_device for the driver to attach. 426*93db446aSBoris Brezillon 427*93db446aSBoris Brezillonconfig MTD_NAND_OXNAS 428*93db446aSBoris Brezillon tristate "NAND Flash support for Oxford Semiconductor SoC" 429*93db446aSBoris Brezillon depends on ARCH_OXNAS || COMPILE_TEST 430*93db446aSBoris Brezillon depends on HAS_IOMEM 431*93db446aSBoris Brezillon help 432*93db446aSBoris Brezillon This enables the NAND flash controller on Oxford Semiconductor SoCs. 433*93db446aSBoris Brezillon 434*93db446aSBoris Brezillonconfig MTD_NAND_FSL_ELBC 435*93db446aSBoris Brezillon tristate "NAND support for Freescale eLBC controllers" 436*93db446aSBoris Brezillon depends on FSL_SOC 437*93db446aSBoris Brezillon select FSL_LBC 438*93db446aSBoris Brezillon help 439*93db446aSBoris Brezillon Various Freescale chips, including the 8313, include a NAND Flash 440*93db446aSBoris Brezillon Controller Module with built-in hardware ECC capabilities. 441*93db446aSBoris Brezillon Enabling this option will enable you to use this to control 442*93db446aSBoris Brezillon external NAND devices. 443*93db446aSBoris Brezillon 444*93db446aSBoris Brezillonconfig MTD_NAND_FSL_IFC 445*93db446aSBoris Brezillon tristate "NAND support for Freescale IFC controller" 446*93db446aSBoris Brezillon depends on FSL_SOC || ARCH_LAYERSCAPE || SOC_LS1021A 447*93db446aSBoris Brezillon select FSL_IFC 448*93db446aSBoris Brezillon select MEMORY 449*93db446aSBoris Brezillon help 450*93db446aSBoris Brezillon Various Freescale chips e.g P1010, include a NAND Flash machine 451*93db446aSBoris Brezillon with built-in hardware ECC capabilities. 452*93db446aSBoris Brezillon Enabling this option will enable you to use this to control 453*93db446aSBoris Brezillon external NAND devices. 454*93db446aSBoris Brezillon 455*93db446aSBoris Brezillonconfig MTD_NAND_FSL_UPM 456*93db446aSBoris Brezillon tristate "Support for NAND on Freescale UPM" 457*93db446aSBoris Brezillon depends on PPC_83xx || PPC_85xx 458*93db446aSBoris Brezillon select FSL_LBC 459*93db446aSBoris Brezillon help 460*93db446aSBoris Brezillon Enables support for NAND Flash chips wired onto Freescale PowerPC 461*93db446aSBoris Brezillon processor localbus with User-Programmable Machine support. 462*93db446aSBoris Brezillon 463*93db446aSBoris Brezillonconfig MTD_NAND_MPC5121_NFC 464*93db446aSBoris Brezillon tristate "MPC5121 built-in NAND Flash Controller support" 465*93db446aSBoris Brezillon depends on PPC_MPC512x 466*93db446aSBoris Brezillon help 467*93db446aSBoris Brezillon This enables the driver for the NAND flash controller on the 468*93db446aSBoris Brezillon MPC5121 SoC. 469*93db446aSBoris Brezillon 470*93db446aSBoris Brezillonconfig MTD_NAND_VF610_NFC 471*93db446aSBoris Brezillon tristate "Support for Freescale NFC for VF610/MPC5125" 472*93db446aSBoris Brezillon depends on (SOC_VF610 || COMPILE_TEST) 473*93db446aSBoris Brezillon depends on HAS_IOMEM 474*93db446aSBoris Brezillon help 475*93db446aSBoris Brezillon Enables support for NAND Flash Controller on some Freescale 476*93db446aSBoris Brezillon processors like the VF610, MPC5125, MCF54418 or Kinetis K70. 477*93db446aSBoris Brezillon The driver supports a maximum 2k page size. With 2k pages and 478*93db446aSBoris Brezillon 64 bytes or more of OOB, hardware ECC with up to 32-bit error 479*93db446aSBoris Brezillon correction is supported. Hardware ECC is only enabled through 480*93db446aSBoris Brezillon device tree. 481*93db446aSBoris Brezillon 482*93db446aSBoris Brezillonconfig MTD_NAND_MXC 483*93db446aSBoris Brezillon tristate "MXC NAND support" 484*93db446aSBoris Brezillon depends on ARCH_MXC 485*93db446aSBoris Brezillon help 486*93db446aSBoris Brezillon This enables the driver for the NAND flash controller on the 487*93db446aSBoris Brezillon MXC processors. 488*93db446aSBoris Brezillon 489*93db446aSBoris Brezillonconfig MTD_NAND_SH_FLCTL 490*93db446aSBoris Brezillon tristate "Support for NAND on Renesas SuperH FLCTL" 491*93db446aSBoris Brezillon depends on SUPERH || COMPILE_TEST 492*93db446aSBoris Brezillon depends on HAS_IOMEM 493*93db446aSBoris Brezillon depends on HAS_DMA 494*93db446aSBoris Brezillon help 495*93db446aSBoris Brezillon Several Renesas SuperH CPU has FLCTL. This option enables support 496*93db446aSBoris Brezillon for NAND Flash using FLCTL. 497*93db446aSBoris Brezillon 498*93db446aSBoris Brezillonconfig MTD_NAND_DAVINCI 499*93db446aSBoris Brezillon tristate "Support NAND on DaVinci/Keystone SoC" 500*93db446aSBoris Brezillon depends on ARCH_DAVINCI || (ARCH_KEYSTONE && TI_AEMIF) 501*93db446aSBoris Brezillon help 502*93db446aSBoris Brezillon Enable the driver for NAND flash chips on Texas Instruments 503*93db446aSBoris Brezillon DaVinci/Keystone processors. 504*93db446aSBoris Brezillon 505*93db446aSBoris Brezillonconfig MTD_NAND_TXX9NDFMC 506*93db446aSBoris Brezillon tristate "NAND Flash support for TXx9 SoC" 507*93db446aSBoris Brezillon depends on SOC_TX4938 || SOC_TX4939 508*93db446aSBoris Brezillon help 509*93db446aSBoris Brezillon This enables the NAND flash controller on the TXx9 SoCs. 510*93db446aSBoris Brezillon 511*93db446aSBoris Brezillonconfig MTD_NAND_SOCRATES 512*93db446aSBoris Brezillon tristate "Support for NAND on Socrates board" 513*93db446aSBoris Brezillon depends on SOCRATES 514*93db446aSBoris Brezillon help 515*93db446aSBoris Brezillon Enables support for NAND Flash chips wired onto Socrates board. 516*93db446aSBoris Brezillon 517*93db446aSBoris Brezillonconfig MTD_NAND_NUC900 518*93db446aSBoris Brezillon tristate "Support for NAND on Nuvoton NUC9xx/w90p910 evaluation boards." 519*93db446aSBoris Brezillon depends on ARCH_W90X900 520*93db446aSBoris Brezillon help 521*93db446aSBoris Brezillon This enables the driver for the NAND Flash on evaluation board based 522*93db446aSBoris Brezillon on w90p910 / NUC9xx. 523*93db446aSBoris Brezillon 524*93db446aSBoris Brezillonconfig MTD_NAND_JZ4740 525*93db446aSBoris Brezillon tristate "Support for JZ4740 SoC NAND controller" 526*93db446aSBoris Brezillon depends on MACH_JZ4740 527*93db446aSBoris Brezillon help 528*93db446aSBoris Brezillon Enables support for NAND Flash on JZ4740 SoC based boards. 529*93db446aSBoris Brezillon 530*93db446aSBoris Brezillonconfig MTD_NAND_JZ4780 531*93db446aSBoris Brezillon tristate "Support for NAND on JZ4780 SoC" 532*93db446aSBoris Brezillon depends on MACH_JZ4780 && JZ4780_NEMC 533*93db446aSBoris Brezillon help 534*93db446aSBoris Brezillon Enables support for NAND Flash connected to the NEMC on JZ4780 SoC 535*93db446aSBoris Brezillon based boards, using the BCH controller for hardware error correction. 536*93db446aSBoris Brezillon 537*93db446aSBoris Brezillonconfig MTD_NAND_FSMC 538*93db446aSBoris Brezillon tristate "Support for NAND on ST Micros FSMC" 539*93db446aSBoris Brezillon depends on OF 540*93db446aSBoris Brezillon depends on PLAT_SPEAR || ARCH_NOMADIK || ARCH_U8500 || MACH_U300 541*93db446aSBoris Brezillon help 542*93db446aSBoris Brezillon Enables support for NAND Flash chips on the ST Microelectronics 543*93db446aSBoris Brezillon Flexible Static Memory Controller (FSMC) 544*93db446aSBoris Brezillon 545*93db446aSBoris Brezillonconfig MTD_NAND_XWAY 546*93db446aSBoris Brezillon bool "Support for NAND on Lantiq XWAY SoC" 547*93db446aSBoris Brezillon depends on LANTIQ && SOC_TYPE_XWAY 548*93db446aSBoris Brezillon help 549*93db446aSBoris Brezillon Enables support for NAND Flash chips on Lantiq XWAY SoCs. NAND is attached 550*93db446aSBoris Brezillon to the External Bus Unit (EBU). 551*93db446aSBoris Brezillon 552*93db446aSBoris Brezillonconfig MTD_NAND_SUNXI 553*93db446aSBoris Brezillon tristate "Support for NAND on Allwinner SoCs" 554*93db446aSBoris Brezillon depends on ARCH_SUNXI 555*93db446aSBoris Brezillon help 556*93db446aSBoris Brezillon Enables support for NAND Flash chips on Allwinner SoCs. 557*93db446aSBoris Brezillon 558*93db446aSBoris Brezillonconfig MTD_NAND_HISI504 559*93db446aSBoris Brezillon tristate "Support for NAND controller on Hisilicon SoC Hip04" 560*93db446aSBoris Brezillon depends on ARCH_HISI || COMPILE_TEST 561*93db446aSBoris Brezillon depends on HAS_DMA 562*93db446aSBoris Brezillon help 563*93db446aSBoris Brezillon Enables support for NAND controller on Hisilicon SoC Hip04. 564*93db446aSBoris Brezillon 565*93db446aSBoris Brezillonconfig MTD_NAND_QCOM 566*93db446aSBoris Brezillon tristate "Support for NAND on QCOM SoCs" 567*93db446aSBoris Brezillon depends on ARCH_QCOM 568*93db446aSBoris Brezillon help 569*93db446aSBoris Brezillon Enables support for NAND flash chips on SoCs containing the EBI2 NAND 570*93db446aSBoris Brezillon controller. This controller is found on IPQ806x SoC. 571*93db446aSBoris Brezillon 572*93db446aSBoris Brezillonconfig MTD_NAND_MTK 573*93db446aSBoris Brezillon tristate "Support for NAND controller on MTK SoCs" 574*93db446aSBoris Brezillon depends on ARCH_MEDIATEK || COMPILE_TEST 575*93db446aSBoris Brezillon depends on HAS_DMA 576*93db446aSBoris Brezillon help 577*93db446aSBoris Brezillon Enables support for NAND controller on MTK SoCs. 578*93db446aSBoris Brezillon This controller is found on mt27xx, mt81xx, mt65xx SoCs. 579*93db446aSBoris Brezillon 580*93db446aSBoris Brezillonendif # MTD_NAND 581