Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0-only
0002 menuconfig MTD_ONENAND
0003         tristate "OneNAND Device Support"
0004         depends on HAS_IOMEM
0005         help
0006           This enables support for accessing all type of OneNAND flash
0007           devices.
0008 
0009 if MTD_ONENAND
0010 
0011 config MTD_ONENAND_VERIFY_WRITE
0012         bool "Verify OneNAND page writes"
0013         help
0014           This adds an extra check when data is written to the flash. The
0015           OneNAND flash device internally checks only bits transitioning
0016           from 1 to 0. There is a rare possibility that even though the
0017           device thinks the write was successful, a bit could have been
0018           flipped accidentally due to device wear or something else.
0019 
0020 config MTD_ONENAND_GENERIC
0021         tristate "OneNAND Flash device via platform device driver"
0022         help
0023           Support for OneNAND flash via platform device driver.
0024 
0025 config MTD_ONENAND_OMAP2
0026         tristate "OneNAND on OMAP2/OMAP3 support"
0027         depends on ARCH_OMAP2 || ARCH_OMAP3 || (COMPILE_TEST && ARM)
0028         depends on OF || COMPILE_TEST
0029         help
0030           Support for a OneNAND flash device connected to an OMAP2/OMAP3 SoC
0031           via the GPMC memory controller.
0032           Enable dmaengine and gpiolib for better performance.
0033 
0034 config MTD_ONENAND_SAMSUNG
0035         tristate "OneNAND on Samsung SOC controller support"
0036         depends on ARCH_S3C64XX || ARCH_S5PV210 || COMPILE_TEST
0037         help
0038           Support for a OneNAND flash device connected to Samsung S3C64XX
0039           (using command mapping method) and S5PC110/S5PC210 (using generic
0040           OneNAND method) SoCs.
0041           Choose Y here only if you build for such Samsung SoC.
0042 
0043 config MTD_ONENAND_OTP
0044         bool "OneNAND OTP Support"
0045         help
0046           One Block of the NAND Flash Array memory is reserved as
0047           a One-Time Programmable Block memory area.
0048           Also, 1st Block of NAND Flash Array can be used as OTP.
0049 
0050           The OTP block can be read, programmed and locked using the same
0051           operations as any other NAND Flash Array memory block.
0052           OTP block cannot be erased.
0053 
0054           OTP block is fully-guaranteed to be a valid block.
0055 
0056 config MTD_ONENAND_2X_PROGRAM
0057         bool "OneNAND 2X program support"
0058         help
0059           The 2X Program is an extension of Program Operation.
0060           Since the device is equipped with two DataRAMs, and two-plane NAND
0061           Flash memory array, these two component enables simultaneous program
0062           of 4KiB. Plane1 has only even blocks such as block0, block2, block4
0063           while Plane2 has only odd blocks such as block1, block3, block5.
0064           So MTD regards it as 4KiB page size and 256KiB block size
0065 
0066           Now the following chips support it. (KFXXX16Q2M)
0067             Demux: KFG2G16Q2M, KFH4G16Q2M, KFW8G16Q2M,
0068             Mux:   KFM2G16Q2M, KFN4G16Q2M,
0069 
0070           And more recent chips
0071 
0072 endif # MTD_ONENAND