Jagan Teki | 9faaab8 | 2015-06-27 22:39:36 +0530 | [diff] [blame] | 1 | menu "SPI Flash Support" |
| 2 | |
Simon Glass | d8b771d | 2015-02-05 21:41:35 -0700 | [diff] [blame] | 3 | config DM_SPI_FLASH |
| 4 | bool "Enable Driver Model for SPI flash" |
Masahiro Yamada | 1260c38 | 2015-03-31 12:47:52 +0900 | [diff] [blame] | 5 | depends on DM && DM_SPI |
Simon Glass | d8b771d | 2015-02-05 21:41:35 -0700 | [diff] [blame] | 6 | help |
| 7 | Enable driver model for SPI flash. This SPI flash interface |
| 8 | (spi_flash_probe(), spi_flash_write(), etc.) is then |
| 9 | implemented by the SPI flash uclass. There is one standard |
| 10 | SPI flash driver which knows how to probe most chips |
| 11 | supported by U-Boot. The uclass interface is defined in |
| 12 | include/spi_flash.h, but is currently fully compatible |
| 13 | with the old interface to avoid confusion and duplication |
| 14 | during the transition parent. SPI and SPI flash must be |
| 15 | enabled together (it is not possible to use driver model |
| 16 | for one and not the other). |
Simon Glass | 632310b | 2015-03-06 13:19:06 -0700 | [diff] [blame] | 17 | |
| 18 | config SPI_FLASH_SANDBOX |
| 19 | bool "Support sandbox SPI flash device" |
| 20 | depends on SANDBOX && DM_SPI_FLASH |
| 21 | help |
| 22 | Since sandbox cannot access real devices, an emulation mechanism is |
| 23 | provided instead. Drivers can be connected up to the sandbox SPI |
| 24 | bus (see CONFIG_SANDBOX_SPI) and SPI traffic will be routed to this |
| 25 | device. Typically the contents of the emulated SPI flash device is |
| 26 | stored in a file on the host filesystem. |
Jagan Teki | 9faaab8 | 2015-06-27 22:39:36 +0530 | [diff] [blame] | 27 | |
Jagan Teki | ffc1454 | 2015-06-29 00:59:36 +0530 | [diff] [blame] | 28 | config SPI_FLASH |
| 29 | bool "Legacy SPI Flash Interface support" |
| 30 | help |
| 31 | Enable the legacy SPI flash support. This will include basic |
| 32 | standard support for things like probing, read / write, and |
| 33 | erasing through cmd_sf interface. |
| 34 | |
| 35 | If unsure, say N |
| 36 | |
Jagan Teki | 7a8fb0c | 2015-06-29 23:32:17 +0530 | [diff] [blame] | 37 | config SPI_FLASH_BAR |
| 38 | bool "SPI flash Bank/Extended address register support" |
| 39 | depends on SPI_FLASH |
| 40 | help |
| 41 | Enable the SPI flash Bank/Extended address register support. |
| 42 | Bank/Extended address registers are used to access the flash |
| 43 | which has size > 16MiB in 3-byte addressing. |
| 44 | |
Mike Looijmans | 4f1002d | 2017-06-07 07:42:37 +0200 | [diff] [blame] | 45 | config SF_DUAL_FLASH |
| 46 | bool "SPI DUAL flash memory support" |
| 47 | depends on SPI_FLASH |
| 48 | help |
| 49 | Enable this option to support two flash memories connected to a single |
| 50 | controller. Currently Xilinx Zynq qspi supports this. |
| 51 | |
Nikita Kiryanov | b577da6 | 2015-07-23 17:19:38 +0300 | [diff] [blame] | 52 | if SPI_FLASH |
| 53 | |
| 54 | config SPI_FLASH_ATMEL |
| 55 | bool "Atmel SPI flash support" |
| 56 | help |
| 57 | Add support for various Atmel SPI flash chips (AT45xxx and AT25xxx) |
| 58 | |
| 59 | config SPI_FLASH_EON |
| 60 | bool "EON SPI flash support" |
| 61 | help |
| 62 | Add support for various EON SPI flash chips (EN25xxx) |
| 63 | |
| 64 | config SPI_FLASH_GIGADEVICE |
| 65 | bool "GigaDevice SPI flash support" |
| 66 | help |
| 67 | Add support for various GigaDevice SPI flash chips (GD25xxx) |
| 68 | |
Michal Simek | f26b4c7 | 2016-01-25 15:39:26 +0100 | [diff] [blame] | 69 | config SPI_FLASH_ISSI |
| 70 | bool "ISSI SPI flash support" |
| 71 | help |
| 72 | Add support for various ISSI SPI flash chips (ISxxx) |
| 73 | |
Nikita Kiryanov | b577da6 | 2015-07-23 17:19:38 +0300 | [diff] [blame] | 74 | config SPI_FLASH_MACRONIX |
| 75 | bool "Macronix SPI flash support" |
| 76 | help |
| 77 | Add support for various Macronix SPI flash chips (MX25Lxxx) |
| 78 | |
| 79 | config SPI_FLASH_SPANSION |
| 80 | bool "Spansion SPI flash support" |
| 81 | help |
| 82 | Add support for various Spansion SPI flash chips (S25FLxxx) |
| 83 | |
| 84 | config SPI_FLASH_STMICRO |
| 85 | bool "STMicro SPI flash support" |
| 86 | help |
| 87 | Add support for various STMicro SPI flash chips (M25Pxxx and N25Qxxx) |
| 88 | |
| 89 | config SPI_FLASH_SST |
| 90 | bool "SST SPI flash support" |
| 91 | help |
| 92 | Add support for various SST SPI flash chips (SST25xxx) |
| 93 | |
| 94 | config SPI_FLASH_WINBOND |
| 95 | bool "Winbond SPI flash support" |
| 96 | help |
| 97 | Add support for various Winbond SPI flash chips (W25xxx) |
| 98 | |
Stefan Roese | 72191c7 | 2018-08-06 16:33:19 +0200 | [diff] [blame] | 99 | config SPI_FLASH_XMC |
| 100 | bool "XMC SPI flash support" |
| 101 | help |
| 102 | Add support for various XMC (Wuhan Xinxin Semiconductor |
| 103 | Manufacturing Corp.) SPI flash chips (XM25xxx) |
| 104 | |
Nikita Kiryanov | b577da6 | 2015-07-23 17:19:38 +0300 | [diff] [blame] | 105 | endif |
| 106 | |
Marek Vasut | e0bdcb8 | 2015-08-03 01:28:56 +0200 | [diff] [blame] | 107 | config SPI_FLASH_USE_4K_SECTORS |
| 108 | bool "Use small 4096 B erase sectors" |
| 109 | depends on SPI_FLASH |
| 110 | default y |
| 111 | help |
| 112 | Many flash memories support erasing small (4096 B) sectors. Depending |
| 113 | on the usage this feature may provide performance gain in comparison |
| 114 | to erasing whole blocks (32/64 KiB). |
| 115 | Changing a small part of the flash's contents is usually faster with |
| 116 | small sectors. On the other hand erasing should be faster when using |
| 117 | 64 KiB block instead of 16 × 4 KiB sectors. |
| 118 | |
| 119 | Please note that some tools/drivers/filesystems may not work with |
| 120 | 4096 B erase size (e.g. UBIFS requires 15 KiB as a minimum). |
| 121 | |
Jagan Teki | d6a56ae | 2015-07-01 21:22:19 +0530 | [diff] [blame] | 122 | config SPI_FLASH_DATAFLASH |
| 123 | bool "AT45xxx DataFlash support" |
| 124 | depends on SPI_FLASH && DM_SPI_FLASH |
| 125 | help |
| 126 | Enable the access for SPI-flash-based AT45xxx DataFlash chips. |
| 127 | DataFlash is a kind of SPI flash. Most AT45 chips have two buffers |
| 128 | in each chip, which may be used for double buffered I/O; but this |
| 129 | driver doesn't (yet) use these for any kind of i/o overlap or prefetching. |
| 130 | |
| 131 | Sometimes DataFlash is packaged in MMC-format cards, although the |
| 132 | MMC stack can't (yet?) distinguish between MMC and DataFlash |
| 133 | protocols during enumeration. |
| 134 | |
| 135 | If unsure, say N |
| 136 | |
Jagan Teki | 88c5b58 | 2015-06-27 22:42:35 +0530 | [diff] [blame] | 137 | config SPI_FLASH_MTD |
| 138 | bool "SPI Flash MTD support" |
| 139 | depends on SPI_FLASH |
| 140 | help |
| 141 | Enable the MTD support for spi flash layer, this adapter is for |
| 142 | translating mtd_read/mtd_write commands into spi_flash_read/write |
| 143 | commands. It is not intended to use it within sf_cmd or the SPI |
| 144 | flash subsystem. Such an adapter is needed for subsystems like |
| 145 | UBI which can only operate on top of the MTD layer. |
| 146 | |
| 147 | If unsure, say N |
| 148 | |
Jagan Teki | 9faaab8 | 2015-06-27 22:39:36 +0530 | [diff] [blame] | 149 | endmenu # menu "SPI Flash Support" |