Kconfig 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284
  1. # drivers/mtd/nand/Kconfig
  2. # $Id: Kconfig,v 1.35 2005/11/07 11:14:30 gleixner Exp $
  3. menuconfig MTD_NAND
  4. tristate "NAND Device Support"
  5. depends on MTD
  6. select MTD_NAND_IDS
  7. help
  8. This enables support for accessing all type of NAND flash
  9. devices. For further information see
  10. <http://www.linux-mtd.infradead.org/doc/nand.html>.
  11. if MTD_NAND
  12. config MTD_NAND_VERIFY_WRITE
  13. bool "Verify NAND page writes"
  14. help
  15. This adds an extra check when data is written to the flash. The
  16. NAND flash device internally checks only bits transitioning
  17. from 1 to 0. There is a rare possibility that even though the
  18. device thinks the write was successful, a bit could have been
  19. flipped accidentally due to device wear or something else.
  20. config MTD_NAND_ECC_SMC
  21. bool "NAND ECC Smart Media byte order"
  22. default n
  23. help
  24. Software ECC according to the Smart Media Specification.
  25. The original Linux implementation had byte 0 and 1 swapped.
  26. config MTD_NAND_MUSEUM_IDS
  27. bool "Enable chip ids for obsolete ancient NAND devices"
  28. depends on MTD_NAND
  29. default n
  30. help
  31. Enable this option only when your board has first generation
  32. NAND chips (page size 256 byte, erase size 4-8KiB). The IDs
  33. of these chips were reused by later, larger chips.
  34. config MTD_NAND_AUTCPU12
  35. tristate "SmartMediaCard on autronix autcpu12 board"
  36. depends on ARCH_AUTCPU12
  37. help
  38. This enables the driver for the autronix autcpu12 board to
  39. access the SmartMediaCard.
  40. config MTD_NAND_EDB7312
  41. tristate "Support for Cirrus Logic EBD7312 evaluation board"
  42. depends on ARCH_EDB7312
  43. help
  44. This enables the driver for the Cirrus Logic EBD7312 evaluation
  45. board to access the onboard NAND Flash.
  46. config MTD_NAND_H1900
  47. tristate "iPAQ H1900 flash"
  48. depends on ARCH_PXA && MTD_PARTITIONS
  49. help
  50. This enables the driver for the iPAQ h1900 flash.
  51. config MTD_NAND_SPIA
  52. tristate "NAND Flash device on SPIA board"
  53. depends on ARCH_P720T
  54. help
  55. If you had to ask, you don't have one. Say 'N'.
  56. config MTD_NAND_AMS_DELTA
  57. tristate "NAND Flash device on Amstrad E3"
  58. depends on MACH_AMS_DELTA
  59. help
  60. Support for NAND flash on Amstrad E3 (Delta).
  61. config MTD_NAND_TOTO
  62. tristate "NAND Flash device on TOTO board"
  63. depends on ARCH_OMAP && BROKEN
  64. help
  65. Support for NAND flash on Texas Instruments Toto platform.
  66. config MTD_NAND_TS7250
  67. tristate "NAND Flash device on TS-7250 board"
  68. depends on MACH_TS72XX
  69. help
  70. Support for NAND flash on Technologic Systems TS-7250 platform.
  71. config MTD_NAND_IDS
  72. tristate
  73. config MTD_NAND_AU1550
  74. tristate "Au1550/1200 NAND support"
  75. depends on SOC_AU1200 || SOC_AU1550
  76. help
  77. This enables the driver for the NAND flash controller on the
  78. AMD/Alchemy 1550 SOC.
  79. config MTD_NAND_RTC_FROM4
  80. tristate "Renesas Flash ROM 4-slot interface board (FROM_BOARD4)"
  81. depends on SH_SOLUTION_ENGINE
  82. select REED_SOLOMON
  83. select REED_SOLOMON_DEC8
  84. select BITREVERSE
  85. help
  86. This enables the driver for the Renesas Technology AG-AND
  87. flash interface board (FROM_BOARD4)
  88. config MTD_NAND_PPCHAMELEONEVB
  89. tristate "NAND Flash device on PPChameleonEVB board"
  90. depends on PPCHAMELEONEVB && BROKEN
  91. help
  92. This enables the NAND flash driver on the PPChameleon EVB Board.
  93. config MTD_NAND_S3C2410
  94. tristate "NAND Flash support for S3C2410/S3C2440 SoC"
  95. depends on ARCH_S3C2410
  96. help
  97. This enables the NAND flash controller on the S3C2410 and S3C2440
  98. SoCs
  99. No board specific support is done by this driver, each board
  100. must advertise a platform_device for the driver to attach.
  101. config MTD_NAND_S3C2410_DEBUG
  102. bool "S3C2410 NAND driver debug"
  103. depends on MTD_NAND_S3C2410
  104. help
  105. Enable debugging of the S3C2410 NAND driver
  106. config MTD_NAND_S3C2410_HWECC
  107. bool "S3C2410 NAND Hardware ECC"
  108. depends on MTD_NAND_S3C2410
  109. help
  110. Enable the use of the S3C2410's internal ECC generator when
  111. using NAND. Early versions of the chip have had problems with
  112. incorrect ECC generation, and if using these, the default of
  113. software ECC is preferable.
  114. config MTD_NAND_NDFC
  115. tristate "NDFC NanD Flash Controller"
  116. depends on 44x
  117. select MTD_NAND_ECC_SMC
  118. help
  119. NDFC Nand Flash Controllers are integrated in EP44x SoCs
  120. config MTD_NAND_S3C2410_CLKSTOP
  121. bool "S3C2410 NAND IDLE clock stop"
  122. depends on MTD_NAND_S3C2410
  123. default n
  124. help
  125. Stop the clock to the NAND controller when there is no chip
  126. selected to save power. This will mean there is a small delay
  127. when the is NAND chip selected or released, but will save
  128. approximately 5mA of power when there is nothing happening.
  129. config MTD_NAND_DISKONCHIP
  130. tristate "DiskOnChip 2000, Millennium and Millennium Plus (NAND reimplementation) (EXPERIMENTAL)"
  131. depends on EXPERIMENTAL
  132. select REED_SOLOMON
  133. select REED_SOLOMON_DEC16
  134. help
  135. This is a reimplementation of M-Systems DiskOnChip 2000,
  136. Millennium and Millennium Plus as a standard NAND device driver,
  137. as opposed to the earlier self-contained MTD device drivers.
  138. This should enable, among other things, proper JFFS2 operation on
  139. these devices.
  140. config MTD_NAND_DISKONCHIP_PROBE_ADVANCED
  141. bool "Advanced detection options for DiskOnChip"
  142. depends on MTD_NAND_DISKONCHIP
  143. help
  144. This option allows you to specify nonstandard address at which to
  145. probe for a DiskOnChip, or to change the detection options. You
  146. are unlikely to need any of this unless you are using LinuxBIOS.
  147. Say 'N'.
  148. config MTD_NAND_DISKONCHIP_PROBE_ADDRESS
  149. hex "Physical address of DiskOnChip" if MTD_NAND_DISKONCHIP_PROBE_ADVANCED
  150. depends on MTD_NAND_DISKONCHIP
  151. default "0"
  152. ---help---
  153. By default, the probe for DiskOnChip devices will look for a
  154. DiskOnChip at every multiple of 0x2000 between 0xC8000 and 0xEE000.
  155. This option allows you to specify a single address at which to probe
  156. for the device, which is useful if you have other devices in that
  157. range which get upset when they are probed.
  158. (Note that on PowerPC, the normal probe will only check at
  159. 0xE4000000.)
  160. Normally, you should leave this set to zero, to allow the probe at
  161. the normal addresses.
  162. config MTD_NAND_DISKONCHIP_PROBE_HIGH
  163. bool "Probe high addresses"
  164. depends on MTD_NAND_DISKONCHIP_PROBE_ADVANCED
  165. help
  166. By default, the probe for DiskOnChip devices will look for a
  167. DiskOnChip at every multiple of 0x2000 between 0xC8000 and 0xEE000.
  168. This option changes to make it probe between 0xFFFC8000 and
  169. 0xFFFEE000. Unless you are using LinuxBIOS, this is unlikely to be
  170. useful to you. Say 'N'.
  171. config MTD_NAND_DISKONCHIP_BBTWRITE
  172. bool "Allow BBT writes on DiskOnChip Millennium and 2000TSOP"
  173. depends on MTD_NAND_DISKONCHIP
  174. help
  175. On DiskOnChip devices shipped with the INFTL filesystem (Millennium
  176. and 2000 TSOP/Alon), Linux reserves some space at the end of the
  177. device for the Bad Block Table (BBT). If you have existing INFTL
  178. data on your device (created by non-Linux tools such as M-Systems'
  179. DOS drivers), your data might overlap the area Linux wants to use for
  180. the BBT. If this is a concern for you, leave this option disabled and
  181. Linux will not write BBT data into this area.
  182. The downside of leaving this option disabled is that if bad blocks
  183. are detected by Linux, they will not be recorded in the BBT, which
  184. could cause future problems.
  185. Once you enable this option, new filesystems (INFTL or others, created
  186. in Linux or other operating systems) will not use the reserved area.
  187. The only reason not to enable this option is to prevent damage to
  188. preexisting filesystems.
  189. Even if you leave this disabled, you can enable BBT writes at module
  190. load time (assuming you build diskonchip as a module) with the module
  191. parameter "inftl_bbt_write=1".
  192. config MTD_NAND_SHARPSL
  193. tristate "Support for NAND Flash on Sharp SL Series (C7xx + others)"
  194. depends on ARCH_PXA
  195. config MTD_NAND_BASLER_EXCITE
  196. tristate "Support for NAND Flash on Basler eXcite"
  197. depends on BASLER_EXCITE
  198. help
  199. This enables the driver for the NAND flash device found on the
  200. Basler eXcite Smart Camera. If built as a module, the driver
  201. will be named "excite_nandflash.ko".
  202. config MTD_NAND_CAFE
  203. tristate "NAND support for OLPC CAFÉ chip"
  204. depends on PCI
  205. select REED_SOLOMON
  206. select REED_SOLOMON_DEC16
  207. help
  208. Use NAND flash attached to the CAFÉ chip designed for the $100
  209. laptop.
  210. config MTD_NAND_CS553X
  211. tristate "NAND support for CS5535/CS5536 (AMD Geode companion chip)"
  212. depends on X86_32 && (X86_PC || X86_GENERICARCH)
  213. help
  214. The CS553x companion chips for the AMD Geode processor
  215. include NAND flash controllers with built-in hardware ECC
  216. capabilities; enabling this option will allow you to use
  217. these. The driver will check the MSRs to verify that the
  218. controller is enabled for NAND, and currently requires that
  219. the controller be in MMIO mode.
  220. If you say "m", the module will be called "cs553x_nand.ko".
  221. config MTD_NAND_AT91
  222. bool "Support for NAND Flash / SmartMedia on AT91"
  223. depends on ARCH_AT91
  224. help
  225. Enables support for NAND Flash / Smart Media Card interface
  226. on Atmel AT91 processors.
  227. config MTD_NAND_CM_X270
  228. tristate "Support for NAND Flash on CM-X270 modules"
  229. depends on MTD_NAND && MACH_ARMCORE
  230. config MTD_NAND_NANDSIM
  231. tristate "Support for NAND Flash Simulator"
  232. depends on MTD_PARTITIONS
  233. help
  234. The simulator may simulate various NAND flash chips for the
  235. MTD nand layer.
  236. config MTD_NAND_PLATFORM
  237. tristate "Support for generic platform NAND driver"
  238. depends on MTD_NAND
  239. help
  240. This implements a generic NAND driver for on-SOC platform
  241. devices. You will need to provide platform-specific functions
  242. via platform_data.
  243. endif # MTD_NAND