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 depends on SPI 31 select SPI_MEM 32 help 33 Enable the legacy SPI flash support. This will include basic 34 standard support for things like probing, read / write, and 35 erasing through cmd_sf interface. 36 37 If unsure, say N 38 39if SPI_FLASH 40 41config SPI_FLASH_SFDP_SUPPORT 42 bool "SFDP table parsing support for SPI NOR flashes" 43 depends on !SPI_FLASH_BAR 44 help 45 Enable support for parsing and auto discovery of parameters for 46 SPI NOR flashes using Serial Flash Discoverable Parameters (SFDP) 47 tables as per JESD216 standard. 48 49config SPI_FLASH_BAR 50 bool "SPI flash Bank/Extended address register support" 51 help 52 Enable the SPI flash Bank/Extended address register support. 53 Bank/Extended address registers are used to access the flash 54 which has size > 16MiB in 3-byte addressing. 55 56config SF_DUAL_FLASH 57 bool "SPI DUAL flash memory support" 58 help 59 Enable this option to support two flash memories connected to a single 60 controller. Currently Xilinx Zynq qspi supports this. 61 62config SPI_FLASH_ATMEL 63 bool "Atmel SPI flash support" 64 help 65 Add support for various Atmel SPI flash chips (AT45xxx and AT25xxx) 66 67config SPI_FLASH_EON 68 bool "EON SPI flash support" 69 help 70 Add support for various EON SPI flash chips (EN25xxx) 71 72config SPI_FLASH_GIGADEVICE 73 bool "GigaDevice SPI flash support" 74 help 75 Add support for various GigaDevice SPI flash chips (GD25xxx) 76 77config SPI_FLASH_ISSI 78 bool "ISSI SPI flash support" 79 help 80 Add support for various ISSI SPI flash chips (ISxxx) 81 82config SPI_FLASH_MACRONIX 83 bool "Macronix SPI flash support" 84 help 85 Add support for various Macronix SPI flash chips (MX25Lxxx) 86 87config SPI_FLASH_SPANSION 88 bool "Spansion SPI flash support" 89 help 90 Add support for various Spansion SPI flash chips (S25FLxxx) 91 92config SPI_FLASH_STMICRO 93 bool "STMicro SPI flash support" 94 help 95 Add support for various STMicro SPI flash chips (M25Pxxx and N25Qxxx) 96 97config SPI_FLASH_SST 98 bool "SST SPI flash support" 99 help 100 Add support for various SST SPI flash chips (SST25xxx) 101 102config SPI_FLASH_WINBOND 103 bool "Winbond SPI flash support" 104 help 105 Add support for various Winbond SPI flash chips (W25xxx) 106 107config SPI_FLASH_XMC 108 bool "XMC SPI flash support" 109 help 110 Add support for various XMC (Wuhan Xinxin Semiconductor 111 Manufacturing Corp.) SPI flash chips (XM25xxx) 112 113endif 114 115config SPI_FLASH_USE_4K_SECTORS 116 bool "Use small 4096 B erase sectors" 117 depends on SPI_FLASH 118 default y 119 help 120 Many flash memories support erasing small (4096 B) sectors. Depending 121 on the usage this feature may provide performance gain in comparison 122 to erasing whole blocks (32/64 KiB). 123 Changing a small part of the flash's contents is usually faster with 124 small sectors. On the other hand erasing should be faster when using 125 64 KiB block instead of 16 × 4 KiB sectors. 126 127 Please note that some tools/drivers/filesystems may not work with 128 4096 B erase size (e.g. UBIFS requires 15 KiB as a minimum). 129 130config SPI_FLASH_DATAFLASH 131 bool "AT45xxx DataFlash support" 132 depends on SPI_FLASH && DM_SPI_FLASH 133 help 134 Enable the access for SPI-flash-based AT45xxx DataFlash chips. 135 DataFlash is a kind of SPI flash. Most AT45 chips have two buffers 136 in each chip, which may be used for double buffered I/O; but this 137 driver doesn't (yet) use these for any kind of i/o overlap or prefetching. 138 139 Sometimes DataFlash is packaged in MMC-format cards, although the 140 MMC stack can't (yet?) distinguish between MMC and DataFlash 141 protocols during enumeration. 142 143 If unsure, say N 144 145config SPI_FLASH_MTD 146 bool "SPI Flash MTD support" 147 depends on SPI_FLASH 148 help 149 Enable the MTD support for spi flash layer, this adapter is for 150 translating mtd_read/mtd_write commands into spi_flash_read/write 151 commands. It is not intended to use it within sf_cmd or the SPI 152 flash subsystem. Such an adapter is needed for subsystems like 153 UBI which can only operate on top of the MTD layer. 154 155 If unsure, say N 156 157endmenu # menu "SPI Flash Support" 158