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 99endif 100 101config SPI_FLASH_USE_4K_SECTORS 102 bool "Use small 4096 B erase sectors" 103 depends on SPI_FLASH 104 default y 105 help 106 Many flash memories support erasing small (4096 B) sectors. Depending 107 on the usage this feature may provide performance gain in comparison 108 to erasing whole blocks (32/64 KiB). 109 Changing a small part of the flash's contents is usually faster with 110 small sectors. On the other hand erasing should be faster when using 111 64 KiB block instead of 16 × 4 KiB sectors. 112 113 Please note that some tools/drivers/filesystems may not work with 114 4096 B erase size (e.g. UBIFS requires 15 KiB as a minimum). 115 116config SPI_FLASH_DATAFLASH 117 bool "AT45xxx DataFlash support" 118 depends on SPI_FLASH && DM_SPI_FLASH 119 help 120 Enable the access for SPI-flash-based AT45xxx DataFlash chips. 121 DataFlash is a kind of SPI flash. Most AT45 chips have two buffers 122 in each chip, which may be used for double buffered I/O; but this 123 driver doesn't (yet) use these for any kind of i/o overlap or prefetching. 124 125 Sometimes DataFlash is packaged in MMC-format cards, although the 126 MMC stack can't (yet?) distinguish between MMC and DataFlash 127 protocols during enumeration. 128 129 If unsure, say N 130 131config SPI_FLASH_MTD 132 bool "SPI Flash MTD support" 133 depends on SPI_FLASH 134 help 135 Enable the MTD support for spi flash layer, this adapter is for 136 translating mtd_read/mtd_write commands into spi_flash_read/write 137 commands. It is not intended to use it within sf_cmd or the SPI 138 flash subsystem. Such an adapter is needed for subsystems like 139 UBI which can only operate on top of the MTD layer. 140 141 If unsure, say N 142 143endmenu # menu "SPI Flash Support" 144