Convert CONFIG_SYS_FLASH_ERASE_TOUT et al to Kconfig
[platform/kernel/u-boot.git] / drivers / mtd / Kconfig
index 83c055a..e28ff04 100644 (file)
@@ -22,6 +22,14 @@ config MTD_NOR_FLASH
        help
          Enable support for parallel NOR flash.
 
        help
          Enable support for parallel NOR flash.
 
+config MTD_CONCAT
+       bool "Enable MTD device concatenation"
+       depends on MTD
+       help
+         Enable support for concatenating multiple physical MTD devices
+         into a single logical device. The larger logical device can then
+         be partitioned.
+
 config SYS_MTDPARTS_RUNTIME
        bool "Allow MTDPARTS to be configured at runtime"
        depends on MTD
 config SYS_MTDPARTS_RUNTIME
        bool "Allow MTDPARTS to be configured at runtime"
        depends on MTD
@@ -31,6 +39,7 @@ config SYS_MTDPARTS_RUNTIME
 
 config FLASH_CFI_DRIVER
        bool "Enable CFI Flash driver"
 
 config FLASH_CFI_DRIVER
        bool "Enable CFI Flash driver"
+       select USE_SYS_MAX_FLASH_BANKS
        help
          The Common Flash Interface specification was developed by Intel,
          AMD and other flash manufactures. It provides a universal method
        help
          The Common Flash Interface specification was developed by Intel,
          AMD and other flash manufactures. It provides a universal method
@@ -39,6 +48,35 @@ config FLASH_CFI_DRIVER
          option. Visit <http://www.amd.com/products/nvd/overview/cfi.html>
          for more information on CFI.
 
          option. Visit <http://www.amd.com/products/nvd/overview/cfi.html>
          for more information on CFI.
 
+choice
+       prompt "Data-width of the flash device"
+       depends on FLASH_CFI_DRIVER
+       default SYS_FLASH_CFI_WIDTH_8BIT
+
+config SYS_FLASH_CFI_WIDTH_8BIT
+       bool "Data-width of the device is 8-bit"
+
+config SYS_FLASH_CFI_WIDTH_16BIT
+       bool "Data-width of the device is 16-bit"
+
+config SYS_FLASH_CFI_WIDTH_32BIT
+       bool "Data-width of the device is 32-bit"
+
+config SYS_FLASH_CFI_WIDTH_64BIT
+       bool "Data-width of the device is 64-bit"
+
+endchoice
+
+config SYS_FLASH_CFI_WIDTH
+       hex
+       depends on FLASH_CFI_DRIVER
+       default 0x1 if SYS_FLASH_CFI_WIDTH_8BIT
+       default 0x2 if SYS_FLASH_CFI_WIDTH_16BIT
+       default 0x4 if SYS_FLASH_CFI_WIDTH_32BIT
+       default 0x8 if SYS_FLASH_CFI_WIDTH_64BIT
+       help
+         This must be kept in sync with the table in include/flash.h
+
 config CFI_FLASH
        bool "Enable Driver Model for CFI Flash driver"
        depends on DM_MTD
 config CFI_FLASH
        bool "Enable Driver Model for CFI Flash driver"
        depends on DM_MTD
@@ -51,12 +89,27 @@ config CFI_FLASH
          option. Visit <http://www.amd.com/products/nvd/overview/cfi.html>
          for more information on CFI.
 
          option. Visit <http://www.amd.com/products/nvd/overview/cfi.html>
          for more information on CFI.
 
+config CFI_FLASH_USE_WEAK_ACCESSORS
+       bool "Allow read/write functions to be overridden"
+       depends on FLASH_CFI_DRIVER
+       help
+         Enable this option to allow for the flash_{read,write}{8,16,32,64}
+         functions to be overridden by the platform.
+
+config SYS_CFI_FLASH_STATUS_POLL
+       bool "Poll status on AMD flash chips"
+       depends on FLASH_CFI_DRIVER
+
 config SYS_FLASH_USE_BUFFER_WRITE
        bool "Enable buffered writes to flash"
        depends on FLASH_CFI_DRIVER
        help
          Use buffered writes to flash.
 
 config SYS_FLASH_USE_BUFFER_WRITE
        bool "Enable buffered writes to flash"
        depends on FLASH_CFI_DRIVER
        help
          Use buffered writes to flash.
 
+config SYS_FLASH_EMPTY_INFO
+       bool "Enable displaying empty sectors in flash info"
+       depends on FLASH_CFI_DRIVER
+
 config FLASH_CFI_MTD
        bool "Enable CFI MTD driver"
        depends on FLASH_CFI_DRIVER
 config FLASH_CFI_MTD
        bool "Enable CFI MTD driver"
        depends on FLASH_CFI_DRIVER
@@ -79,9 +132,17 @@ config SYS_FLASH_CFI
          Define if the flash driver uses extra elements in the
          common flash structure for storing flash geometry.
 
          Define if the flash driver uses extra elements in the
          common flash structure for storing flash geometry.
 
+config SYS_FLASH_CHECKSUM
+       bool "Compute and print flash CRC if 'flashchecksum' is set in the environment"
+       depends on MTD_NOR_FLASH
+       help
+         If the variable flashchecksum is set in the environment, perform a CRC
+         of the flash and print the value to console.
+
 config ALTERA_QSPI
        bool "Altera Generic Quad SPI Controller"
        depends on DM_MTD
 config ALTERA_QSPI
        bool "Altera Generic Quad SPI Controller"
        depends on DM_MTD
+       select USE_SYS_MAX_FLASH_BANKS
        help
          This enables access to Altera EPCQ/EPCS flash chips using the
          Altera Generic Quad SPI Controller. The controller converts SPI
        help
          This enables access to Altera EPCQ/EPCS flash chips using the
          Altera Generic Quad SPI Controller. The controller converts SPI
@@ -91,10 +152,23 @@ config ALTERA_QSPI
 config FLASH_PIC32
        bool "Microchip PIC32 Flash driver"
        depends on MACH_PIC32 && DM_MTD
 config FLASH_PIC32
        bool "Microchip PIC32 Flash driver"
        depends on MACH_PIC32 && DM_MTD
+       select USE_SYS_MAX_FLASH_BANKS
        help
          This enables access to Microchip PIC32 internal non-CFI flash
          chips through PIC32 Non-Volatile-Memory Controller.
 
        help
          This enables access to Microchip PIC32 internal non-CFI flash
          chips through PIC32 Non-Volatile-Memory Controller.
 
+config SYS_FLASH_ERASE_TOUT
+       int "Timeout in ms for performing an erase operation on the flash"
+       depends on FLASH_PIC32
+       help
+         Timeout for Flash erase operations (in ms)
+
+config SYS_FLASH_WRITE_TOUT
+       int "Timeout in ms for performing a write operation on the flash"
+       depends on FLASH_PIC32
+       help
+         Timeout for Flash write operations (in ms)
+
 config RENESAS_RPC_HF
        bool "Renesas RCar Gen3 RPC HyperFlash driver"
        depends on RCAR_GEN3 && DM_MTD
 config RENESAS_RPC_HF
        bool "Renesas RCar Gen3 RPC HyperFlash driver"
        depends on RCAR_GEN3 && DM_MTD
@@ -109,6 +183,40 @@ config HBMC_AM654
         This is the driver for HyperBus controller on TI's AM65x and
         other SoCs
 
         This is the driver for HyperBus controller on TI's AM65x and
         other SoCs
 
+config STM32_FLASH
+       bool "STM32 MCU Flash driver"
+       depends on ARCH_STM32
+       select USE_SYS_MAX_FLASH_BANKS
+       help
+        This is the driver of embedded flash for some STMicroelectronics
+        STM32 MCU.
+
+config SAMSUNG_ONENAND
+       bool "Samsung OneNAND driver support"
+
+config USE_SYS_MAX_FLASH_BANKS
+       bool "Enable Max number of Flash memory banks"
+       help
+         When this option is enabled, the CONFIG_SYS_MAX_FLASH_BANKS
+         will be defined.
+
+config SYS_MAX_FLASH_BANKS
+       int "Max number of Flash memory banks"
+       depends on USE_SYS_MAX_FLASH_BANKS
+       default 1
+       help
+        Max number of Flash memory banks using by the MTD framework, in the
+        flash CFI driver and in some other driver to define the flash_info
+        struct declaration.
+
+config SYS_MAX_FLASH_BANKS_DETECT
+       bool "Detection of flash banks number in CFI driver"
+       depends on CFI_FLASH && FLASH_CFI_DRIVER
+       help
+        This enables detection of number of flash banks in CFI driver,
+        to reduce the effective number of flash bank, between 0 and
+        CONFIG_SYS_MAX_FLASH_BANKS
+
 source "drivers/mtd/nand/Kconfig"
 
 config SYS_NAND_MAX_CHIPS
 source "drivers/mtd/nand/Kconfig"
 
 config SYS_NAND_MAX_CHIPS