Merge tag 'u-boot-imx-20190415' of git://git.denx.de/u-boot-imx
[oweals/u-boot.git] / drivers / mtd / spi / Kconfig
index 8b730ff3c55458b5040e5891adcdeab6012948b7..d3b007a731dac0134beb13cecefe51657cca4d82 100644 (file)
@@ -27,6 +27,8 @@ config SPI_FLASH_SANDBOX
 
 config SPI_FLASH
        bool "Legacy SPI Flash Interface support"
+       depends on SPI
+       select SPI_MEM
        help
          Enable the legacy SPI flash support. This will include basic
          standard support for things like probing, read / write, and
@@ -34,15 +36,70 @@ config SPI_FLASH
 
          If unsure, say N
 
+config SF_DEFAULT_BUS
+       int "SPI Flash default bus identifier"
+       depends on SPI_FLASH || DM_SPI_FLASH
+       default 0
+       help
+         The default bus may be provided by the platform
+         to handle the common case when only a single serial
+         flash is present on the system.
+
+config SF_DEFAULT_CS
+       int "SPI Flash default Chip-select"
+       depends on SPI_FLASH || DM_SPI_FLASH
+       default 0
+       help
+         The default chip select may be provided by the platform
+         to handle the common case when only a single serial
+         flash is present on the system.
+
+config SF_DEFAULT_MODE
+       hex "SPI Flash default mode (see include/spi.h)"
+       depends on SPI_FLASH || DM_SPI_FLASH
+       default 3
+       help
+         The default mode may be provided by the platform
+         to handle the common case when only a single serial
+         flash is present on the system.
+         Not used for boot with device tree; the SPI driver reads
+         speed and mode from platdata values computed from
+         available node.
+
+config SF_DEFAULT_SPEED
+       int "SPI Flash default speed in Hz"
+       depends on SPI_FLASH || DM_SPI_FLASH
+       default 1000000
+       help
+         The default speed may be provided by the platform
+         to handle the common case when only a single serial
+         flash is present on the system.
+         Not used for boot with device tree; the SPI driver reads
+         speed and mode from platdata values computed from
+         available node.
+
+if SPI_FLASH
+
+config SPI_FLASH_SFDP_SUPPORT
+       bool "SFDP table parsing support for SPI NOR flashes"
+       depends on !SPI_FLASH_BAR
+       help
+        Enable support for parsing and auto discovery of parameters for
+        SPI NOR flashes using Serial Flash Discoverable Parameters (SFDP)
+        tables as per JESD216 standard.
+
 config SPI_FLASH_BAR
        bool "SPI flash Bank/Extended address register support"
-       depends on SPI_FLASH
        help
          Enable the SPI flash Bank/Extended address register support.
          Bank/Extended address registers are used to access the flash
          which has size > 16MiB in 3-byte addressing.
 
-if SPI_FLASH
+config SF_DUAL_FLASH
+       bool "SPI DUAL flash memory support"
+       help
+         Enable this option to support two flash memories connected to a single
+         controller. Currently Xilinx Zynq qspi supports this.
 
 config SPI_FLASH_ATMEL
        bool "Atmel SPI flash support"
@@ -59,6 +116,11 @@ config SPI_FLASH_GIGADEVICE
        help
          Add support for various GigaDevice SPI flash chips (GD25xxx)
 
+config SPI_FLASH_ISSI
+       bool "ISSI SPI flash support"
+       help
+         Add support for various ISSI SPI flash chips (ISxxx)
+
 config SPI_FLASH_MACRONIX
        bool "Macronix SPI flash support"
        help
@@ -84,8 +146,29 @@ config SPI_FLASH_WINBOND
        help
          Add support for various Winbond SPI flash chips (W25xxx)
 
+config SPI_FLASH_XMC
+       bool "XMC SPI flash support"
+       help
+         Add support for various XMC (Wuhan Xinxin Semiconductor
+         Manufacturing Corp.) SPI flash chips (XM25xxx)
+
 endif
 
+config SPI_FLASH_USE_4K_SECTORS
+       bool "Use small 4096 B erase sectors"
+       depends on SPI_FLASH
+       default y
+       help
+         Many flash memories support erasing small (4096 B) sectors. Depending
+         on the usage this feature may provide performance gain in comparison
+         to erasing whole blocks (32/64 KiB).
+         Changing a small part of the flash's contents is usually faster with
+         small sectors. On the other hand erasing should be faster when using
+         64 KiB block instead of 16 × 4 KiB sectors.
+
+         Please note that some tools/drivers/filesystems may not work with
+         4096 B erase size (e.g. UBIFS requires 15 KiB as a minimum).
+
 config SPI_FLASH_DATAFLASH
        bool "AT45xxx DataFlash support"
        depends on SPI_FLASH && DM_SPI_FLASH