]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/mtd/onenand/Kconfig
[MTD] [OneNAND] Add OMAP2 / OMAP3 OneNAND driver
[linux-2.6-omap-h63xx.git] / drivers / mtd / onenand / Kconfig
index 373bddce8f1c661354c9f5b568db564f70ab142a..79fa79e8f8de9b67a5949888d029f93b7dbebb27 100644 (file)
@@ -2,20 +2,18 @@
 # linux/drivers/mtd/onenand/Kconfig
 #
 
-menu "OneNAND Flash Device Drivers"
-       depends on MTD != n
-
-config MTD_ONENAND
+menuconfig MTD_ONENAND
        tristate "OneNAND Device Support"
        depends on MTD
        help
          This enables support for accessing all type of OneNAND flash
          devices. For further information see
-         <http://www.samsung.com/Products/Semiconductor/Flash/OneNAND_TM/index.htm>.
+         <http://www.samsung.com/Products/Semiconductor/OneNAND/index.htm>
+
+if MTD_ONENAND
 
 config MTD_ONENAND_VERIFY_WRITE
        bool "Verify OneNAND page writes"
-       depends on MTD_ONENAND
        help
          This adds an extra check when data is written to the flash. The
          OneNAND flash device internally checks only bits transitioning
@@ -25,13 +23,20 @@ config MTD_ONENAND_VERIFY_WRITE
 
 config MTD_ONENAND_GENERIC
        tristate "OneNAND Flash device via platform device driver"
-       depends on MTD_ONENAND && ARM
+       depends on ARM
        help
          Support for OneNAND flash via platform device driver.
 
+config MTD_ONENAND_OMAP2
+       tristate "OneNAND on OMAP2/OMAP3 support"
+       depends on MTD_ONENAND && (ARCH_OMAP2 || ARCH_OMAP3)
+       help
+         Support for a OneNAND flash device connected to an OMAP2/OMAP3 CPU
+         via the GPMC memory controller.
+
 config MTD_ONENAND_OTP
        bool "OneNAND OTP Support"
-       depends on MTD_ONENAND
+       select HAVE_MTD_OTP
        help
          One Block of the NAND Flash Array memory is reserved as
          a One-Time Programmable Block memory area.
@@ -43,4 +48,27 @@ config MTD_ONENAND_OTP
 
          OTP block is fully-guaranteed to be a valid block.
 
-endmenu
+config MTD_ONENAND_2X_PROGRAM
+       bool "OneNAND 2X program support"
+       help
+         The 2X Program is an extension of Program Operation.
+         Since the device is equipped with two DataRAMs, and two-plane NAND
+         Flash memory array, these two component enables simultaneous program
+         of 4KiB. Plane1 has only even blocks such as block0, block2, block4
+         while Plane2 has only odd blocks such as block1, block3, block5.
+         So MTD regards it as 4KiB page size and 256KiB block size
+
+         Now the following chips support it. (KFXXX16Q2M)
+           Demux: KFG2G16Q2M, KFH4G16Q2M, KFW8G16Q2M,
+           Mux:   KFM2G16Q2M, KFN4G16Q2M,
+
+         And more recent chips
+
+config MTD_ONENAND_SIM
+       tristate "OneNAND simulator support"
+       depends on MTD_PARTITIONS
+       help
+         The simulator may simulate various OneNAND flash chips for the
+         OneNAND MTD layer.
+
+endif # MTD_ONENAND