blob: 588ebe9119b98cfba3ff3c8b1bcdac1061656828 [file] [log] [blame]
Thomas Choue51b65e2015-11-07 14:20:31 +08001menu "MTD Support"
2
Miquel Raynald31c4782018-08-16 17:30:18 +02003config MTD_PARTITIONS
4 bool
5
Miquel Raynal2e35dbb2019-10-03 19:50:05 +02006config MTD
7 bool "Enable MTD layer"
8 help
Heinrich Schuchardt382561d2020-09-17 18:07:44 +02009 Enable the MTD stack, necessary to interact with NAND, NOR,
10 SPI-NOR, SPI-NAND, OneNAND, etc.
Miquel Raynal2e35dbb2019-10-03 19:50:05 +020011
Miquel Raynala903be42019-10-03 19:50:04 +020012config DM_MTD
Thomas Choue51b65e2015-11-07 14:20:31 +080013 bool "Enable Driver Model for MTD drivers"
14 depends on DM
15 help
16 Enable driver model for Memory Technology Devices (MTD), such as
17 flash, RAM and similar chips, often used for solid state file
18 systems on embedded devices.
19
Masahiro Yamada8cea9b52017-02-11 22:43:54 +090020config MTD_NOR_FLASH
21 bool "Enable parallel NOR flash support"
22 help
23 Enable support for parallel NOR flash.
24
Patrick Delaunaye1287ba2020-02-26 10:28:42 +010025config SYS_MTDPARTS_RUNTIME
26 bool "Allow MTDPARTS to be configured at runtime"
27 depends on MTD
28 help
29 This option allows to call the function board_mtdparts_default to
30 dynamically build the variables mtdids and mtdparts at runtime.
31
Adam Ford76da1b22018-10-14 15:10:50 -050032config FLASH_CFI_DRIVER
33 bool "Enable CFI Flash driver"
Patrick Delaunay1576abf2022-01-04 14:24:00 +010034 select USE_SYS_MAX_FLASH_BANKS
Adam Ford76da1b22018-10-14 15:10:50 -050035 help
36 The Common Flash Interface specification was developed by Intel,
37 AMD and other flash manufactures. It provides a universal method
38 for probing the capabilities of flash devices. If you wish to
39 support any device that is CFI-compliant, you need to enable this
40 option. Visit <http://www.amd.com/products/nvd/overview/cfi.html>
41 for more information on CFI.
42
Thomas Chou47eae232015-11-07 14:31:08 +080043config CFI_FLASH
44 bool "Enable Driver Model for CFI Flash driver"
Miquel Raynala903be42019-10-03 19:50:04 +020045 depends on DM_MTD
Bin Mengc78add42021-08-07 13:00:00 +080046 select FLASH_CFI_DRIVER
Thomas Chou47eae232015-11-07 14:31:08 +080047 help
48 The Common Flash Interface specification was developed by Intel,
49 AMD and other flash manufactures. It provides a universal method
50 for probing the capabilities of flash devices. If you wish to
51 support any device that is CFI-compliant, you need to enable this
52 option. Visit <http://www.amd.com/products/nvd/overview/cfi.html>
53 for more information on CFI.
54
Tom Rini18b76772022-02-25 11:19:52 -050055config CFI_FLASH_USE_WEAK_ACCESSORS
56 bool "Allow read/write functions to be overridden"
57 depends on FLASH_CFI_DRIVER
58 help
59 Enable this option to allow for the flash_{read,write}{8,16,32,64}
60 functions to be overridden by the platform.
61
Adam Ford76da1b22018-10-14 15:10:50 -050062config SYS_FLASH_USE_BUFFER_WRITE
63 bool "Enable buffered writes to flash"
64 depends on FLASH_CFI_DRIVER
65 help
66 Use buffered writes to flash.
67
68config FLASH_CFI_MTD
69 bool "Enable CFI MTD driver"
70 depends on FLASH_CFI_DRIVER
71 help
72 This option enables the building of the cfi_mtd driver
73 in the drivers directory. The driver exports CFI flash
74 to the MTD layer.
75
76config SYS_FLASH_PROTECTION
77 bool "Use hardware flash protection"
78 depends on FLASH_CFI_DRIVER
79 help
80 If defined, hardware flash sectors protection is used
81 instead of U-Boot software protection.
82
83config SYS_FLASH_CFI
84 bool "Define extra elements in CFI for flash geometry"
85 depends on FLASH_CFI_DRIVER
86 help
87 Define if the flash driver uses extra elements in the
88 common flash structure for storing flash geometry.
89
Thomas Choucdc11522015-11-09 14:56:02 +080090config ALTERA_QSPI
91 bool "Altera Generic Quad SPI Controller"
Miquel Raynala903be42019-10-03 19:50:04 +020092 depends on DM_MTD
Patrick Delaunay1576abf2022-01-04 14:24:00 +010093 select USE_SYS_MAX_FLASH_BANKS
Thomas Choucdc11522015-11-09 14:56:02 +080094 help
95 This enables access to Altera EPCQ/EPCS flash chips using the
96 Altera Generic Quad SPI Controller. The controller converts SPI
97 NOR flash to parallel flash interface. Please find details on the
98 "Embedded Peripherals IP User Guide" of Altera.
99
Purna Chandra Mandal1d73e9b2016-03-18 18:36:08 +0530100config FLASH_PIC32
101 bool "Microchip PIC32 Flash driver"
Miquel Raynala903be42019-10-03 19:50:04 +0200102 depends on MACH_PIC32 && DM_MTD
Patrick Delaunay1576abf2022-01-04 14:24:00 +0100103 select USE_SYS_MAX_FLASH_BANKS
Purna Chandra Mandal1d73e9b2016-03-18 18:36:08 +0530104 help
105 This enables access to Microchip PIC32 internal non-CFI flash
106 chips through PIC32 Non-Volatile-Memory Controller.
107
Marek Vasutc1cb3562017-08-19 23:24:08 +0200108config RENESAS_RPC_HF
Heinrich Schuchardt382561d2020-09-17 18:07:44 +0200109 bool "Renesas RCar Gen3 RPC HyperFlash driver"
Miquel Raynala903be42019-10-03 19:50:04 +0200110 depends on RCAR_GEN3 && DM_MTD
Marek Vasutc1cb3562017-08-19 23:24:08 +0200111 help
Heinrich Schuchardt382561d2020-09-17 18:07:44 +0200112 This enables access to HyperFlash memory through the Renesas
Marek Vasutc1cb3562017-08-19 23:24:08 +0200113 RCar Gen3 RPC controller.
114
Vignesh Raghavendra2736c672019-10-23 13:30:01 +0530115config HBMC_AM654
116 bool "HyperBus controller driver for AM65x SoC"
117 depends on SYSCON
118 help
119 This is the driver for HyperBus controller on TI's AM65x and
120 other SoCs
121
Patrick Delaunay754ff3b2021-10-04 11:05:52 +0200122config STM32_FLASH
123 bool "STM32 MCU Flash driver"
124 depends on ARCH_STM32
Patrick Delaunay1576abf2022-01-04 14:24:00 +0100125 select USE_SYS_MAX_FLASH_BANKS
Patrick Delaunay754ff3b2021-10-04 11:05:52 +0200126 help
127 This is the driver of embedded flash for some STMicroelectronics
128 STM32 MCU.
129
Patrick Delaunay1576abf2022-01-04 14:24:00 +0100130config USE_SYS_MAX_FLASH_BANKS
131 bool "Enable Max number of Flash memory banks"
132 help
133 When this option is enabled, the CONFIG_SYS_MAX_FLASH_BANKS
134 will be defined.
135
136config SYS_MAX_FLASH_BANKS
137 int "Max number of Flash memory banks"
138 depends on USE_SYS_MAX_FLASH_BANKS
139 default 1
140 help
141 Max number of Flash memory banks using by the MTD framework, in the
142 flash CFI driver and in some other driver to define the flash_info
143 struct declaration.
144
145config SYS_MAX_FLASH_BANKS_DETECT
146 bool "Detection of flash banks number in CFI driver"
147 depends on CFI_FLASH && FLASH_CFI_DRIVER
148 help
149 This enables detection of number of flash banks in CFI driver,
150 to reduce the effective number of flash bank, between 0 and
151 CONFIG_SYS_MAX_FLASH_BANKS
152
Masahiro Yamadac343b382014-10-03 19:21:03 +0900153source "drivers/mtd/nand/Kconfig"
Simon Glassd8b771d2015-02-05 21:41:35 -0700154
Tom Rini64fc3312021-09-22 14:50:36 -0400155config SYS_NAND_MAX_CHIPS
156 int "NAND max chips"
157 depends on MTD_RAW_NAND || CMD_ONENAND || TARGET_S5PC210_UNIVERSAL || \
158 SPL_OMAP3_ID_NAND
159 default 1
160 help
161 The maximum number of NAND chips per device to be supported.
162
Simon Glassd8b771d2015-02-05 21:41:35 -0700163source "drivers/mtd/spi/Kconfig"
Heiko Schocher09dbb852016-09-21 07:58:19 +0200164
165source "drivers/mtd/ubi/Kconfig"
Miquel Raynala4e7e212018-08-16 17:30:06 +0200166
167endmenu