blob: 4ba95d58b3710aaf8bb54e5a420936c5d25aa658 [file] [log] [blame]
Jagan Teki810fd692015-06-27 22:39:36 +05301menu "SPI Flash Support"
2
Simon Glassf94a1be2015-02-05 21:41:35 -07003config DM_SPI_FLASH
4 bool "Enable Driver Model for SPI flash"
Masahiro Yamadab3d023b2015-03-31 12:47:52 +09005 depends on DM && DM_SPI
Simon Glassf94a1be2015-02-05 21:41:35 -07006 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 Glass949dd812015-03-06 13:19:06 -070017
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.
Jagan Teki810fd692015-06-27 22:39:36 +053027
Jagan Teki2ce7e2b2015-06-29 00:59:36 +053028config 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
Vignesh R0c6f1872019-02-05 11:29:20 +053037if SPI_FLASH
38
39config SPI_FLASH_SFDP_SUPPORT
40 bool "SFDP table parsing support for SPI NOR flashes"
41 depends on !SPI_FLASH_BAR
42 help
43 Enable support for parsing and auto discovery of parameters for
44 SPI NOR flashes using Serial Flash Discoverable Parameters (SFDP)
45 tables as per JESD216 standard.
46
Jagan Teki84d31b32015-06-29 23:32:17 +053047config SPI_FLASH_BAR
48 bool "SPI flash Bank/Extended address register support"
Jagan Teki84d31b32015-06-29 23:32:17 +053049 help
50 Enable the SPI flash Bank/Extended address register support.
51 Bank/Extended address registers are used to access the flash
52 which has size > 16MiB in 3-byte addressing.
53
Mike Looijmans988390b2017-06-07 07:42:37 +020054config SF_DUAL_FLASH
55 bool "SPI DUAL flash memory support"
Mike Looijmans988390b2017-06-07 07:42:37 +020056 help
57 Enable this option to support two flash memories connected to a single
58 controller. Currently Xilinx Zynq qspi supports this.
59
Nikita Kiryanovd5af9232015-07-23 17:19:38 +030060config SPI_FLASH_ATMEL
61 bool "Atmel SPI flash support"
62 help
63 Add support for various Atmel SPI flash chips (AT45xxx and AT25xxx)
64
65config SPI_FLASH_EON
66 bool "EON SPI flash support"
67 help
68 Add support for various EON SPI flash chips (EN25xxx)
69
70config SPI_FLASH_GIGADEVICE
71 bool "GigaDevice SPI flash support"
72 help
73 Add support for various GigaDevice SPI flash chips (GD25xxx)
74
Michal Simek13f451b2016-01-25 15:39:26 +010075config SPI_FLASH_ISSI
76 bool "ISSI SPI flash support"
77 help
78 Add support for various ISSI SPI flash chips (ISxxx)
79
Nikita Kiryanovd5af9232015-07-23 17:19:38 +030080config SPI_FLASH_MACRONIX
81 bool "Macronix SPI flash support"
82 help
83 Add support for various Macronix SPI flash chips (MX25Lxxx)
84
85config SPI_FLASH_SPANSION
86 bool "Spansion SPI flash support"
87 help
88 Add support for various Spansion SPI flash chips (S25FLxxx)
89
90config SPI_FLASH_STMICRO
91 bool "STMicro SPI flash support"
92 help
93 Add support for various STMicro SPI flash chips (M25Pxxx and N25Qxxx)
94
95config SPI_FLASH_SST
96 bool "SST SPI flash support"
97 help
98 Add support for various SST SPI flash chips (SST25xxx)
99
100config SPI_FLASH_WINBOND
101 bool "Winbond SPI flash support"
102 help
103 Add support for various Winbond SPI flash chips (W25xxx)
104
Stefan Roese881e4fc2018-08-06 16:33:19 +0200105config SPI_FLASH_XMC
106 bool "XMC SPI flash support"
107 help
108 Add support for various XMC (Wuhan Xinxin Semiconductor
109 Manufacturing Corp.) SPI flash chips (XM25xxx)
110
Nikita Kiryanovd5af9232015-07-23 17:19:38 +0300111endif
112
Marek Vasut0a026552015-08-03 01:28:56 +0200113config SPI_FLASH_USE_4K_SECTORS
114 bool "Use small 4096 B erase sectors"
115 depends on SPI_FLASH
116 default y
117 help
118 Many flash memories support erasing small (4096 B) sectors. Depending
119 on the usage this feature may provide performance gain in comparison
120 to erasing whole blocks (32/64 KiB).
121 Changing a small part of the flash's contents is usually faster with
122 small sectors. On the other hand erasing should be faster when using
123 64 KiB block instead of 16 × 4 KiB sectors.
124
125 Please note that some tools/drivers/filesystems may not work with
126 4096 B erase size (e.g. UBIFS requires 15 KiB as a minimum).
127
Jagan Tekicd9accd2015-07-01 21:22:19 +0530128config SPI_FLASH_DATAFLASH
129 bool "AT45xxx DataFlash support"
130 depends on SPI_FLASH && DM_SPI_FLASH
131 help
132 Enable the access for SPI-flash-based AT45xxx DataFlash chips.
133 DataFlash is a kind of SPI flash. Most AT45 chips have two buffers
134 in each chip, which may be used for double buffered I/O; but this
135 driver doesn't (yet) use these for any kind of i/o overlap or prefetching.
136
137 Sometimes DataFlash is packaged in MMC-format cards, although the
138 MMC stack can't (yet?) distinguish between MMC and DataFlash
139 protocols during enumeration.
140
141 If unsure, say N
142
Jagan Teki7678dd92015-06-27 22:42:35 +0530143config SPI_FLASH_MTD
144 bool "SPI Flash MTD support"
145 depends on SPI_FLASH
146 help
147 Enable the MTD support for spi flash layer, this adapter is for
148 translating mtd_read/mtd_write commands into spi_flash_read/write
149 commands. It is not intended to use it within sf_cmd or the SPI
150 flash subsystem. Such an adapter is needed for subsystems like
151 UBI which can only operate on top of the MTD layer.
152
153 If unsure, say N
154
Jagan Teki810fd692015-06-27 22:39:36 +0530155endmenu # menu "SPI Flash Support"