]> Git Repo - u-boot.git/blob - drivers/mtd/Kconfig
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh
[u-boot.git] / drivers / mtd / Kconfig
1 menu "MTD Support"
2
3 config MTD_PARTITIONS
4         bool
5         select PARTITIONS
6
7 config MTD
8         bool "Enable MTD layer"
9         help
10           Enable the MTD stack, necessary to interact with NAND, NOR,
11           SPI-NOR, SPI-NAND, OneNAND, etc.
12
13 if MTD
14
15 config DM_MTD
16         bool "Enable Driver Model for MTD drivers"
17         depends on DM
18         help
19           Enable driver model for Memory Technology Devices (MTD), such as
20           flash, RAM and similar chips, often used for solid state file
21           systems on embedded devices.
22
23 config MTD_NOR_FLASH
24         bool "Enable parallel NOR flash support"
25         help
26           Enable support for parallel NOR flash.
27
28 config MTD_CONCAT
29         bool "Enable MTD device concatenation"
30         help
31           Enable support for concatenating multiple physical MTD devices
32           into a single logical device. The larger logical device can then
33           be partitioned.
34
35 config MTD_BLOCK
36         bool "Enable block device access to MTD devices"
37         select BLK
38         help
39           Enable support for block device access to MTD devices
40           using blk_ops abstraction.
41
42 config SYS_MTDPARTS_RUNTIME
43         bool "Allow MTDPARTS to be configured at runtime"
44         help
45           This option allows to call the function board_mtdparts_default to
46           dynamically build the variables mtdids and mtdparts at runtime.
47
48 config FLASH_CFI_DRIVER
49         bool "Enable CFI Flash driver"
50         select USE_SYS_MAX_FLASH_BANKS
51         help
52           The Common Flash Interface specification was developed by Intel,
53           AMD and other flash manufactures. It provides a universal method
54           for probing the capabilities of flash devices. If you wish to
55           support any device that is CFI-compliant, you need to enable this
56           option. Visit <http://www.amd.com/products/nvd/overview/cfi.html>
57           for more information on CFI.
58
59 choice
60         prompt "Data-width of the flash device"
61         depends on FLASH_CFI_DRIVER
62         default SYS_FLASH_CFI_WIDTH_8BIT
63
64 config SYS_FLASH_CFI_WIDTH_8BIT
65         bool "Data-width of the device is 8-bit"
66
67 config SYS_FLASH_CFI_WIDTH_16BIT
68         bool "Data-width of the device is 16-bit"
69
70 config SYS_FLASH_CFI_WIDTH_32BIT
71         bool "Data-width of the device is 32-bit"
72
73 config SYS_FLASH_CFI_WIDTH_64BIT
74         bool "Data-width of the device is 64-bit"
75
76 endchoice
77
78 config SYS_FLASH_CFI_WIDTH
79         hex
80         depends on FLASH_CFI_DRIVER
81         default 0x1 if SYS_FLASH_CFI_WIDTH_8BIT
82         default 0x2 if SYS_FLASH_CFI_WIDTH_16BIT
83         default 0x4 if SYS_FLASH_CFI_WIDTH_32BIT
84         default 0x8 if SYS_FLASH_CFI_WIDTH_64BIT
85         help
86           This must be kept in sync with the table in include/flash.h
87
88 config FLASH_SHOW_PROGRESS
89         int "Print out a countdown durinng writes"
90         depends on FLASH_CFI_DRIVER
91         default 45
92         help
93           If set to a non-zero value, print out countdown digits and dots.
94           Recommended value: 45 (9..1) for 80 column displays, 15 (3..1) for 40
95           column displays.
96
97 config CFI_FLASH
98         bool "Enable Driver Model for CFI Flash driver"
99         depends on DM_MTD
100         select FLASH_CFI_DRIVER
101         help
102           The Common Flash Interface specification was developed by Intel,
103           AMD and other flash manufactures. It provides a universal method
104           for probing the capabilities of flash devices. If you wish to
105           support any device that is CFI-compliant, you need to enable this
106           option. Visit <http://www.amd.com/products/nvd/overview/cfi.html>
107           for more information on CFI.
108
109 config CFI_FLASH_USE_WEAK_ACCESSORS
110         bool "Allow read/write functions to be overridden"
111         depends on FLASH_CFI_DRIVER
112         help
113           Enable this option to allow for the flash_{read,write}{8,16,32,64}
114           functions to be overridden by the platform.
115
116 config SYS_CFI_FLASH_STATUS_POLL
117         bool "Poll status on AMD flash chips"
118         depends on FLASH_CFI_DRIVER
119
120 config SYS_FLASH_USE_BUFFER_WRITE
121         bool "Enable buffered writes to flash"
122         depends on FLASH_CFI_DRIVER
123         help
124           Use buffered writes to flash.
125
126 config SYS_FLASH_EMPTY_INFO
127         bool "Enable displaying empty sectors in flash info"
128         depends on FLASH_CFI_DRIVER
129
130 config FLASH_SPANSION_S29WS_N
131         bool "Non-standard s29ws-n MirrorBit flash"
132         depends on FLASH_CFI_DRIVER
133         help
134           Enable this if the s29ws-n MirrorBit flash has non-standard addresses
135           for buffered write commands.
136
137 config FLASH_CFI_MTD
138         bool "Enable CFI MTD driver"
139         depends on FLASH_CFI_DRIVER && MTD
140         help
141           This option enables the building of the cfi_mtd driver
142           in the drivers directory. The driver exports CFI flash
143           to the MTD layer.
144
145 config SYS_FLASH_PROTECTION
146         bool "Use hardware flash protection"
147         depends on FLASH_CFI_DRIVER
148         help
149           If defined, hardware flash sectors protection is used
150           instead of U-Boot software protection.
151
152 config SYS_FLASH_CFI
153         bool "Define extra elements in CFI for flash geometry"
154         depends on FLASH_CFI_DRIVER
155         help
156           Define if the flash driver uses extra elements in the
157           common flash structure for storing flash geometry.
158
159 config SYS_FLASH_QUIET_TEST
160         bool "Disable printing a warning about not recognizing some flash banks"
161         depends on FLASH_CFI_DRIVER
162         help
163           If this option is enabled, the common CFI flash doesn't print it's
164           warning upon not recognized FLASH banks. This is useful, if some of
165           the configured banks are only optionally available.
166
167 config SYS_FLASH_CHECKSUM
168         bool "Compute and print flash CRC if 'flashchecksum' is set in the environment"
169         depends on MTD_NOR_FLASH
170         help
171           If the variable flashchecksum is set in the environment, perform a CRC
172           of the flash and print the value to console.
173
174 config FLASH_VERIFY
175         bool "Compare writes to NOR flash with source location"
176         depends on MTD_NOR_FLASH
177         help
178           If enabled, the content of the flash (destination) is compared
179           against the source after the write operation. An error message will
180           be printed when the contents are not identical.  Please note that
181           this option is useless in nearly all cases, since such flash
182           programming errors usually are detected earlier while
183           unprotecting/erasing/programming. Please only enable this option if
184           you really know what you are doing.
185
186 config ALTERA_QSPI
187         bool "Altera Generic Quad SPI Controller"
188         depends on DM_MTD
189         select USE_SYS_MAX_FLASH_BANKS
190         help
191           This enables access to Altera EPCQ/EPCS flash chips using the
192           Altera Generic Quad SPI Controller. The controller converts SPI
193           NOR flash to parallel flash interface. Please find details on the
194           "Embedded Peripherals IP User Guide" of Altera.
195
196 config RENESAS_RPC_HF
197         bool "Renesas R-Car Gen3 RPC HyperFlash driver"
198         depends on RCAR_GEN3 && DM_MTD
199         help
200           This enables access to HyperFlash memory through the Renesas
201           R-Car Gen3 RPC controller.
202
203 config HBMC_AM654
204         bool "HyperBus controller driver for AM65x SoC"
205         depends on MULTIPLEXER && MUX_MMIO
206         help
207          This is the driver for HyperBus controller on TI's AM65x and
208          other SoCs
209
210 config STM32_FLASH
211         bool "STM32 MCU Flash driver"
212         depends on ARCH_STM32
213         select USE_SYS_MAX_FLASH_BANKS
214         help
215          This is the driver of embedded flash for some STMicroelectronics
216          STM32 MCU.
217
218 config SYS_MAX_FLASH_SECT
219         int "Maximum number of sectors on a flash chip"
220         depends on MTD_NOR_FLASH || FLASH_CFI_DRIVER
221         default 512
222
223 config SAMSUNG_ONENAND
224         bool "Samsung OneNAND driver support"
225
226 config USE_SYS_MAX_FLASH_BANKS
227         bool "Enable Max number of Flash memory banks"
228         help
229           When this option is enabled, the CONFIG_SYS_MAX_FLASH_BANKS
230           will be defined.
231
232 config SYS_MAX_FLASH_BANKS
233         int "Max number of Flash memory banks"
234         depends on USE_SYS_MAX_FLASH_BANKS
235         default 1
236         help
237          Max number of Flash memory banks using by the MTD framework, in the
238          flash CFI driver and in some other driver to define the flash_info
239          struct declaration.
240
241 config SYS_MAX_FLASH_BANKS_DETECT
242         bool "Detection of flash banks number in CFI driver"
243         depends on CFI_FLASH && FLASH_CFI_DRIVER
244         help
245          This enables detection of number of flash banks in CFI driver,
246          to reduce the effective number of flash bank, between 0 and
247          CONFIG_SYS_MAX_FLASH_BANKS
248
249 source "drivers/mtd/nand/Kconfig"
250
251 config SYS_NAND_MAX_OOBFREE
252         int "Maximum number of free OOB regions supported"
253         depends on SAMSUNG_ONENAND || MTD_RAW_NAND
254         range 2 32
255         default 32
256         help
257           Set the maximum number of free OOB regions supported.  Useful for
258           reducing image size, especially with SPL.
259
260 config SYS_NAND_MAX_ECCPOS
261         int "Maximum number of ECC bytes supported"
262         depends on SAMSUNG_ONENAND || MTD_RAW_NAND
263         range 48 2147483647
264         default 680
265         help
266           Set the maximum number of ECC bytes supported.  Useful for reducing
267           image size, especially with SPL.
268
269 config SYS_NAND_MAX_CHIPS
270         int "NAND max chips"
271         depends on MTD_RAW_NAND || CMD_ONENAND || TARGET_S5PC210_UNIVERSAL || \
272                 SPL_OMAP3_ID_NAND
273         default 1
274         help
275           The maximum number of NAND chips per device to be supported.
276
277 source "drivers/mtd/spi/Kconfig"
278
279 source "drivers/mtd/ubi/Kconfig"
280
281 source "drivers/mtd/nvmxip/Kconfig"
282
283 endif
284
285 endmenu
This page took 0.042703 seconds and 4 git commands to generate.