3 config HAVE_MVEBU_EFUSE
9 select BOARD_EARLY_INIT_F
12 select SPL_DM_SEQ_ALIAS if SPL
13 select SPL_OF_CONTROL if SPL
14 select SPL_SKIP_LOWLEVEL_INIT if SPL
15 select SPL_SIMPLE_BUS if SPL
17 select TRANSLATION_OFFSET
31 select HAVE_MVEBU_EFUSE
33 config ARMADA_38X_HS_IMPEDANCE_THRESH
34 hex "Armada 38x USB 2.0 High-Speed Impedance Threshold (0x0 - 0x7)"
48 # Armada 7K and 8K are very similar - use only one Kconfig symbol for both
53 # Armada PLL frequency (used for NAND clock generation)
54 config SYS_MVEBU_PLL_CLOCK
56 default "2000000000" if ARMADA_XP || ARMADA_3700 || ARMADA_8K || ARMADA_MSYS
57 default "1000000000" if ARMADA_38X || ARMADA_375
59 # Armada XP/38x SoC types...
93 config CUSTOMER_BOARD_SUPPORT
97 prompt "Armada XP/375/38x/3700/7K/8K board select"
100 config TARGET_CLEARFOG
101 bool "Support ClearFog"
103 select BOARD_LATE_INIT
105 config TARGET_HELIOS4
106 bool "Support Helios4"
109 config TARGET_MVEBU_ARMADA_37XX
110 bool "Support Armada 37xx platforms"
114 config TARGET_DB_88F6720
115 bool "Support DB-88F6720 Armada 375"
118 config TARGET_DB_88F6820_GP
119 bool "Support DB-88F6820-GP"
122 config TARGET_DB_88F6820_AMC
123 bool "Support DB-88F6820-AMC"
126 config TARGET_TURRIS_OMNIA
127 bool "Support Turris Omnia"
129 select BOARD_LATE_INIT
132 select I2C_MUX_PCA954x
133 select SPL_DRIVERS_MISC
135 select SPL_SYS_MALLOC_SIMPLE
136 select SYS_I2C_MVTWSI
139 config TARGET_TURRIS_MOX
140 bool "Support Turris Mox"
143 config TARGET_MVEBU_ARMADA_8K
144 bool "Support Armada 7k/8k platforms"
146 select BOARD_LATE_INIT
149 config TARGET_OCTEONTX2_CN913x
150 bool "Support CN913x platforms"
152 imply BOARD_EARLY_INIT_R
153 select BOARD_LATE_INIT
156 config TARGET_DB_MV784MP_GP
157 bool "Support db-mv784mp-gp"
158 select BOARD_ECC_SUPPORT
162 bool "Support Synology DS414"
166 bool "Support maxbcm"
167 select BOARD_ECC_SUPPORT
170 config TARGET_THEADORABLE
171 bool "Support theadorable Armada XP"
172 select BOARD_LATE_INIT if USB
176 config TARGET_CONTROLCENTERDC
177 bool "Support CONTROLCENTERDC"
179 select CUSTOMER_BOARD_SUPPORT
182 bool "Support Allied Telesis x530"
185 config TARGET_DB_XC3_24G4XG
186 bool "Support DB-XC3-24G4XG"
189 config TARGET_CRS3XX_98DX3236
190 bool "Support CRS3XX-98DX3236"
196 prompt "DDR bus width"
201 bool "64bit bus width"
204 bool "32bit bus width"
209 int "DDR training code log level"
214 Amount of information provided on error while running the DDR
215 training code. At level 0, provides an error code in a case of
216 failure, RL, WL errors and other algorithm failure. At level 1,
217 provides the D-Unit setup (SPD/Static configuration). At level 2,
218 provides the windows margin as a results of DQS centeralization.
219 At level 3, rovides the windows margin of each DQ as a results of
222 config DDR_RESET_ON_TRAINING_FAILURE
223 bool "Reset the board on DDR training failure instead of hanging"
224 depends on ARMADA_38X || ARMADA_XP
226 If DDR training fails in SPL, reset the board instead of hanging.
227 Some boards are known to fail DDR training occasionally and an
228 immediate reset may be preferable to waiting until the board is
229 reset by watchdog (if there even is one).
231 Note that if booting via UART and the DDR training fails, the
232 device will still hang - it doesn't make sense to reset the board
235 config BOARD_ECC_SUPPORT
239 default "clearfog" if TARGET_CLEARFOG
240 default "helios4" if TARGET_HELIOS4
241 default "mvebu_armada-37xx" if TARGET_MVEBU_ARMADA_37XX
242 default "db-88f6720" if TARGET_DB_88F6720
243 default "db-88f6820-gp" if TARGET_DB_88F6820_GP
244 default "db-88f6820-amc" if TARGET_DB_88F6820_AMC
245 default "turris_omnia" if TARGET_TURRIS_OMNIA
246 default "turris_mox" if TARGET_TURRIS_MOX
247 default "mvebu_armada-8k" if TARGET_MVEBU_ARMADA_8K
248 default "octeontx2_cn913x" if TARGET_OCTEONTX2_CN913x
249 default "db-mv784mp-gp" if TARGET_DB_MV784MP_GP
250 default "ds414" if TARGET_DS414
251 default "maxbcm" if TARGET_MAXBCM
252 default "theadorable" if TARGET_THEADORABLE
253 default "a38x" if TARGET_CONTROLCENTERDC
254 default "x530" if TARGET_X530
255 default "db-xc3-24g4xg" if TARGET_DB_XC3_24G4XG
256 default "crs3xx-98dx3236" if TARGET_CRS3XX_98DX3236
258 config SYS_CONFIG_NAME
259 default "clearfog" if TARGET_CLEARFOG
260 default "helios4" if TARGET_HELIOS4
261 default "mvebu_armada-37xx" if TARGET_MVEBU_ARMADA_37XX
262 default "db-88f6720" if TARGET_DB_88F6720
263 default "db-88f6820-gp" if TARGET_DB_88F6820_GP
264 default "db-88f6820-amc" if TARGET_DB_88F6820_AMC
265 default "mvebu_armada-8k" if TARGET_MVEBU_ARMADA_8K
266 default "mvebu_armada-8k" if TARGET_OCTEONTX2_CN913x
267 default "db-mv784mp-gp" if TARGET_DB_MV784MP_GP
268 default "ds414" if TARGET_DS414
269 default "maxbcm" if TARGET_MAXBCM
270 default "theadorable" if TARGET_THEADORABLE
271 default "turris_omnia" if TARGET_TURRIS_OMNIA
272 default "turris_mox" if TARGET_TURRIS_MOX
273 default "controlcenterdc" if TARGET_CONTROLCENTERDC
274 default "x530" if TARGET_X530
275 default "db-xc3-24g4xg" if TARGET_DB_XC3_24G4XG
276 default "crs3xx-98dx3236" if TARGET_CRS3XX_98DX3236
279 default "Marvell" if TARGET_DB_MV784MP_GP
280 default "Marvell" if TARGET_MVEBU_ARMADA_37XX
281 default "Marvell" if TARGET_DB_88F6720
282 default "Marvell" if TARGET_DB_88F6820_GP
283 default "Marvell" if TARGET_DB_88F6820_AMC
284 default "Marvell" if TARGET_MVEBU_ARMADA_8K
285 default "Marvell" if TARGET_OCTEONTX2_CN913x
286 default "Marvell" if TARGET_DB_XC3_24G4XG
287 default "Marvell" if TARGET_MVEBU_DB_88F7040
288 default "solidrun" if TARGET_CLEARFOG
289 default "kobol" if TARGET_HELIOS4
290 default "Synology" if TARGET_DS414
291 default "CZ.NIC" if TARGET_TURRIS_OMNIA
292 default "CZ.NIC" if TARGET_TURRIS_MOX
293 default "gdsys" if TARGET_CONTROLCENTERDC
294 default "alliedtelesis" if TARGET_X530
295 default "mikrotik" if TARGET_CRS3XX_98DX3236
304 config MVEBU_SPL_BOOT_DEVICE_SPI
306 imply ENV_IS_IN_SPI_FLASH
308 imply SPL_SPI_FLASH_SUPPORT
311 select SPL_BOOTROM_SUPPORT
313 config MVEBU_SPL_BOOT_DEVICE_MMC
316 # GPIO needed for eMMC/SD card presence detection
320 imply SPL_LIBDISK_SUPPORT
322 select SPL_BOOTROM_SUPPORT
324 config MVEBU_SPL_BOOT_DEVICE_SATA
327 imply SPL_LIBDISK_SUPPORT
328 select SPL_BOOTROM_SUPPORT
330 config MVEBU_SPL_BOOT_DEVICE_UART
332 select SPL_BOOTROM_SUPPORT
337 bool "Enable eFuse support"
338 depends on HAVE_MVEBU_EFUSE
340 Enable support for reading and writing eFuses on mvebu SoCs.
342 config MVEBU_EFUSE_FAKE
343 bool "Fake eFuse access (dry run)"
344 depends on MVEBU_EFUSE
346 This enables a "dry run" mode where eFuses are not really programmed.
347 Instead the eFuse accesses are emulated by writing to and reading
349 This is can be used for testing prog scripts.
351 config SECURED_MODE_IMAGE
352 bool "Build image for trusted boot"
356 Build an image that employs the ARMADA SoC's trusted boot framework
357 for securely booting images.
359 config SECURED_MODE_CSK_INDEX
360 int "Index of active CSK"
362 depends on SECURED_MODE_IMAGE
364 source "board/solidrun/clearfog/Kconfig"
365 source "board/kobol/helios4/Kconfig"