1menu "SPI Flash Support" 2 3config DM_SPI_FLASH 4 bool "Enable Driver Model for SPI flash" 5 depends on DM && DM_SPI 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). 17 18config 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. 27 28config 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 37config 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 45config 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 52if SPI_FLASH 53 54config SPI_FLASH_ATMEL 55 bool "Atmel SPI flash support" 56 help 57 Add support for various Atmel SPI flash chips (AT45xxx and AT25xxx) 58 59config SPI_FLASH_EON 60 bool "EON SPI flash support" 61 help 62 Add support for various EON SPI flash chips (EN25xxx) 63 64config SPI_FLASH_GIGADEVICE 65 bool "GigaDevice SPI flash support" 66 help 67 Add support for various GigaDevice SPI flash chips (GD25xxx) 68 69config SPI_FLASH_ISSI 70 bool "ISSI SPI flash support" 71 help 72 Add support for various ISSI SPI flash chips (ISxxx) 73 74config SPI_FLASH_MACRONIX 75 bool "Macronix SPI flash support" 76 help 77 Add support for various Macronix SPI flash chips (MX25Lxxx) 78 79config SPI_FLASH_SPANSION 80 bool "Spansion SPI flash support" 81 help 82 Add support for various Spansion SPI flash chips (S25FLxxx) 83 84config SPI_FLASH_STMICRO 85 bool "STMicro SPI flash support" 86 help 87 Add support for various STMicro SPI flash chips (M25Pxxx and N25Qxxx) 88 89config SPI_FLASH_SST 90 bool "SST SPI flash support" 91 help 92 Add support for various SST SPI flash chips (SST25xxx) 93 94config SPI_FLASH_WINBOND 95 bool "Winbond SPI flash support" 96 help 97 Add support for various Winbond SPI flash chips (W25xxx) 98 99config 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 105endif 106 107config 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 122config 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 137config 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 149endmenu # menu "SPI Flash Support" 150