]> git.ipfire.org Git - people/ms/u-boot.git/blame - arch/arm/Kconfig
blanche_defconfig: enable CONFIG_MMC
[people/ms/u-boot.git] / arch / arm / Kconfig
CommitLineData
dd84058d
MY
1menu "ARM architecture"
2 depends on ARM
3
4config SYS_ARCH
dd84058d
MY
5 default "arm"
6
016a954e
MY
7config ARM64
8 bool
bb6b142f 9 select PHYS_64BIT
067716ba 10 select SYS_CACHE_SHIFT_6
016a954e 11
37217f0e
LV
12config DMA_ADDR_T_64BIT
13 bool
14 default y if ARM64
15
2e07c249 16config HAS_VBAR
e009bfa4 17 bool
2e07c249 18
62e92077 19config HAS_THUMB2
e009bfa4 20 bool
62e92077 21
8dda2e2f
TR
22# If set, the workarounds for these ARM errata are applied early during U-Boot
23# startup. Note that in general these options force the workarounds to be
24# applied; no CPU-type/version detection exists, unlike the similar options in
25# the Linux kernel. Do not set these options unless they apply! Also note that
26# the following can be machine specific errata. These do have ability to
27# provide rudimentary version and machine specific checks, but expect no
28# product checks:
29# CONFIG_ARM_ERRATA_430973
30# CONFIG_ARM_ERRATA_454179
31# CONFIG_ARM_ERRATA_621766
32# CONFIG_ARM_ERRATA_798870
33# CONFIG_ARM_ERRATA_801819
34config ARM_ERRATA_430973
35 bool
36
37config ARM_ERRATA_454179
38 bool
39
40config ARM_ERRATA_621766
41 bool
42
43config ARM_ERRATA_716044
44 bool
45
19a75b8c
SS
46config ARM_ERRATA_725233
47 bool
48
8dda2e2f
TR
49config ARM_ERRATA_742230
50 bool
51
52config ARM_ERRATA_743622
53 bool
54
55config ARM_ERRATA_751472
56 bool
57
58config ARM_ERRATA_761320
59 bool
60
61config ARM_ERRATA_773022
62 bool
63
64config ARM_ERRATA_774769
65 bool
66
67config ARM_ERRATA_794072
68 bool
69
70config ARM_ERRATA_798870
71 bool
72
73config ARM_ERRATA_801819
74 bool
75
76config ARM_ERRATA_826974
77 bool
78
79config ARM_ERRATA_828024
80 bool
81
82config ARM_ERRATA_829520
83 bool
84
85config ARM_ERRATA_833069
86 bool
87
88config ARM_ERRATA_833471
89 bool
90
8776350d
NM
91config ARM_ERRATA_852421
92 bool
93
94config ARM_ERRATA_852423
95 bool
96
2e07c249 97config CPU_ARM720T
e009bfa4 98 bool
067716ba 99 select SYS_CACHE_SHIFT_5
2e07c249
GS
100
101config CPU_ARM920T
e009bfa4 102 bool
067716ba 103 select SYS_CACHE_SHIFT_5
2e07c249
GS
104
105config CPU_ARM926EJS
e009bfa4 106 bool
067716ba 107 select SYS_CACHE_SHIFT_5
2e07c249
GS
108
109config CPU_ARM946ES
e009bfa4 110 bool
067716ba 111 select SYS_CACHE_SHIFT_5
2e07c249
GS
112
113config CPU_ARM1136
e009bfa4 114 bool
067716ba 115 select SYS_CACHE_SHIFT_5
2e07c249
GS
116
117config CPU_ARM1176
e009bfa4
TR
118 bool
119 select HAS_VBAR
067716ba 120 select SYS_CACHE_SHIFT_5
2e07c249
GS
121
122config CPU_V7
e009bfa4
TR
123 bool
124 select HAS_VBAR
125 select HAS_THUMB2
067716ba 126 select SYS_CACHE_SHIFT_6
2e07c249 127
12d8a729 128config CPU_V7M
129 bool
e009bfa4 130 select HAS_THUMB2
067716ba 131 select SYS_CACHE_SHIFT_5
12d8a729 132
2e07c249 133config CPU_PXA
e009bfa4 134 bool
067716ba 135 select SYS_CACHE_SHIFT_5
2e07c249
GS
136
137config CPU_SA1100
e009bfa4 138 bool
067716ba 139 select SYS_CACHE_SHIFT_5
2e07c249
GS
140
141config SYS_CPU
e009bfa4
TR
142 default "arm720t" if CPU_ARM720T
143 default "arm920t" if CPU_ARM920T
144 default "arm926ejs" if CPU_ARM926EJS
145 default "arm946es" if CPU_ARM946ES
146 default "arm1136" if CPU_ARM1136
147 default "arm1176" if CPU_ARM1176
148 default "armv7" if CPU_V7
149 default "armv7m" if CPU_V7M
150 default "pxa" if CPU_PXA
151 default "sa1100" if CPU_SA1100
01541eec 152 default "armv8" if ARM64
2e07c249 153
66020a67
MV
154config SYS_ARM_ARCH
155 int
156 default 4 if CPU_ARM720T
157 default 4 if CPU_ARM920T
158 default 5 if CPU_ARM926EJS
159 default 5 if CPU_ARM946ES
160 default 6 if CPU_ARM1136
161 default 6 if CPU_ARM1176
162 default 7 if CPU_V7
163 default 7 if CPU_V7M
164 default 5 if CPU_PXA
165 default 4 if CPU_SA1100
166 default 8 if ARM64
167
067716ba
TR
168config SYS_CACHE_SHIFT_5
169 bool
170
171config SYS_CACHE_SHIFT_6
172 bool
173
174config SYS_CACHE_SHIFT_7
175 bool
176
177config SYS_CACHELINE_SIZE
178 int
179 default 128 if SYS_CACHE_SHIFT_7
180 default 64 if SYS_CACHE_SHIFT_6
181 default 32 if SYS_CACHE_SHIFT_5
182
c54bcf68
MY
183config ARM_SMCCC
184 bool "Support for ARM SMC Calling Convention (SMCCC)"
185 depends on CPU_V7 || ARM64
573a3811 186 select ARM_PSCI_FW
c54bcf68
MY
187 help
188 Say Y here if you want to enable ARM SMC Calling Convention.
189 This should be enabled if U-Boot needs to communicate with system
190 firmware (for example, PSCI) according to SMCCC.
191
f91afc4d
LW
192config SEMIHOSTING
193 bool "support boot from semihosting"
194 help
195 In emulated environments, semihosting is a way for
196 the hosted environment to call out to the emulator to
197 retrieve files from the host machine.
198
3a649407
TR
199config SYS_THUMB_BUILD
200 bool "Build U-Boot using the Thumb instruction set"
201 depends on !ARM64
202 help
203 Use this flag to build U-Boot using the Thumb instruction set for
204 ARM architectures. Thumb instruction set provides better code
205 density. For ARM architectures that support Thumb2 this flag will
206 result in Thumb2 code generated by GCC.
207
208config SPL_SYS_THUMB_BUILD
209 bool "Build SPL using the Thumb instruction set"
210 default y if SYS_THUMB_BUILD
211 depends on !ARM64
212 help
213 Use this flag to build SPL using the Thumb instruction set for
214 ARM architectures. Thumb instruction set provides better code
215 density. For ARM architectures that support Thumb2 this flag will
216 result in Thumb2 code generated by GCC.
217
f3e9bec8
PF
218config SYS_L2CACHE_OFF
219 bool "L2cache off"
220 help
221 If SoC does not support L2CACHE or one do not want to enable
222 L2CACHE, choose this option.
223
cdaa633f
AP
224config ENABLE_ARM_SOC_BOOT0_HOOK
225 bool "prepare BOOT0 header"
226 help
227 If the SoC's BOOT0 requires a header area filled with (magic)
228 values, then choose this option, and create a define called
229 ARM_SOC_BOOT0_HOOK which contains the required assembler
230 preprocessor code.
231
85db5831
AP
232config ARM_CORTEX_CPU_IS_UP
233 bool
234 default n
235
be72591b
FE
236config USE_ARCH_MEMCPY
237 bool "Use an assembly optimized implementation of memcpy"
40d5534c
TR
238 default y
239 depends on !ARM64
240 help
241 Enable the generation of an optimized version of memcpy.
242 Such implementation may be faster under some conditions
243 but may increase the binary size.
244
245config SPL_USE_ARCH_MEMCPY
246 bool "Use an assembly optimized implementation of memcpy"
247 default y if USE_ARCH_MEMCPY
085be482 248 depends on !ARM64
be72591b
FE
249 help
250 Enable the generation of an optimized version of memcpy.
251 Such implementation may be faster under some conditions
252 but may increase the binary size.
253
254config USE_ARCH_MEMSET
255 bool "Use an assembly optimized implementation of memset"
40d5534c
TR
256 default y
257 depends on !ARM64
258 help
259 Enable the generation of an optimized version of memset.
260 Such implementation may be faster under some conditions
261 but may increase the binary size.
262
263config SPL_USE_ARCH_MEMSET
264 bool "Use an assembly optimized implementation of memset"
265 default y if USE_ARCH_MEMSET
085be482 266 depends on !ARM64
be72591b
FE
267 help
268 Enable the generation of an optimized version of memset.
269 Such implementation may be faster under some conditions
270 but may increase the binary size.
271
ec6617c3
AW
272config ARM64_SUPPORT_AARCH32
273 bool "ARM64 system support AArch32 execution state"
274 default y if ARM64 && !TARGET_THUNDERX_88XX
275 help
276 This ARM64 system supports AArch32 execution state.
277
dd84058d
MY
278choice
279 prompt "Target select"
b928e658 280 default TARGET_HIKEY
dd84058d 281
4614b891
MY
282config ARCH_AT91
283 bool "Atmel AT91"
dd84058d
MY
284
285config TARGET_EDB93XX
286 bool "Support edb93xx"
2e07c249 287 select CPU_ARM920T
dd84058d 288
dd84058d
MY
289config TARGET_ASPENITE
290 bool "Support aspenite"
2e07c249 291 select CPU_ARM926EJS
dd84058d
MY
292
293config TARGET_GPLUGD
294 bool "Support gplugd"
2e07c249 295 select CPU_ARM926EJS
dd84058d 296
3491ba63
MY
297config ARCH_DAVINCI
298 bool "TI DaVinci"
2e07c249 299 select CPU_ARM926EJS
3491ba63
MY
300 help
301 Support for TI's DaVinci platform.
dd84058d 302
47539e23
MY
303config KIRKWOOD
304 bool "Marvell Kirkwood"
2e07c249 305 select CPU_ARM926EJS
a5d67547 306 select BOARD_EARLY_INIT_F
4585601a 307 select ARCH_MISC_INIT
dd84058d 308
c3d89140 309config ARCH_MVEBU
21b29fc6 310 bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)"
9cffb233
SR
311 select OF_CONTROL
312 select OF_SEPARATE
313 select DM
e3b9c98a 314 select DM_ETH
1d51ea19 315 select DM_SERIAL
09a54c00
SR
316 select DM_SPI
317 select DM_SPI_FLASH
a4884831 318
dd84058d
MY
319config TARGET_DEVKIT3250
320 bool "Support devkit3250"
2e07c249 321 select CPU_ARM926EJS
e9b3ce3f 322 select SUPPORT_SPL
dd84058d 323
412ae53a
AA
324config TARGET_WORK_92105
325 bool "Support work_92105"
326 select CPU_ARM926EJS
327 select SUPPORT_SPL
328
dd84058d
MY
329config TARGET_MX25PDK
330 bool "Support mx25pdk"
e5ec4815 331 select BOARD_LATE_INIT
2e07c249 332 select CPU_ARM926EJS
a5d67547 333 select BOARD_EARLY_INIT_F
dd84058d 334
dd84058d
MY
335config TARGET_ZMX25
336 bool "Support zmx25"
e5ec4815 337 select BOARD_LATE_INIT
2e07c249 338 select CPU_ARM926EJS
dd84058d
MY
339
340config TARGET_APF27
341 bool "Support apf27"
2e07c249 342 select CPU_ARM926EJS
02627356 343 select SUPPORT_SPL
dd84058d 344
dd84058d
MY
345config TARGET_APX4DEVKIT
346 bool "Support apx4devkit"
2e07c249 347 select CPU_ARM926EJS
02627356 348 select SUPPORT_SPL
dd84058d
MY
349
350config TARGET_XFI3
351 bool "Support xfi3"
2e07c249 352 select CPU_ARM926EJS
02627356 353 select SUPPORT_SPL
dd84058d
MY
354
355config TARGET_M28EVK
356 bool "Support m28evk"
2e07c249 357 select CPU_ARM926EJS
02627356 358 select SUPPORT_SPL
dd84058d
MY
359
360config TARGET_MX23EVK
361 bool "Support mx23evk"
2e07c249 362 select CPU_ARM926EJS
02627356 363 select SUPPORT_SPL
a5d67547 364 select BOARD_EARLY_INIT_F
dd84058d
MY
365
366config TARGET_MX28EVK
367 bool "Support mx28evk"
2e07c249 368 select CPU_ARM926EJS
02627356 369 select SUPPORT_SPL
a5d67547 370 select BOARD_EARLY_INIT_F
dd84058d
MY
371
372config TARGET_MX23_OLINUXINO
373 bool "Support mx23_olinuxino"
2e07c249 374 select CPU_ARM926EJS
02627356 375 select SUPPORT_SPL
a5d67547 376 select BOARD_EARLY_INIT_F
dd84058d
MY
377
378config TARGET_BG0900
379 bool "Support bg0900"
2e07c249 380 select CPU_ARM926EJS
02627356 381 select SUPPORT_SPL
dd84058d
MY
382
383config TARGET_SANSA_FUZE_PLUS
384 bool "Support sansa_fuze_plus"
2e07c249 385 select CPU_ARM926EJS
02627356 386 select SUPPORT_SPL
dd84058d
MY
387
388config TARGET_SC_SPS_1
389 bool "Support sc_sps_1"
2e07c249 390 select CPU_ARM926EJS
02627356 391 select SUPPORT_SPL
dd84058d 392
22f2be7a
MY
393config ORION5X
394 bool "Marvell Orion"
2e07c249 395 select CPU_ARM926EJS
dd84058d 396
dd84058d
MY
397config TARGET_SPEAR300
398 bool "Support spear300"
2e07c249 399 select CPU_ARM926EJS
a5d67547 400 select BOARD_EARLY_INIT_F
dd84058d
MY
401
402config TARGET_SPEAR310
403 bool "Support spear310"
2e07c249 404 select CPU_ARM926EJS
a5d67547 405 select BOARD_EARLY_INIT_F
dd84058d
MY
406
407config TARGET_SPEAR320
408 bool "Support spear320"
2e07c249 409 select CPU_ARM926EJS
a5d67547 410 select BOARD_EARLY_INIT_F
dd84058d
MY
411
412config TARGET_SPEAR600
413 bool "Support spear600"
2e07c249 414 select CPU_ARM926EJS
a5d67547 415 select BOARD_EARLY_INIT_F
dd84058d 416
9fa32b12
VM
417config TARGET_STV0991
418 bool "Support stv0991"
419 select CPU_V7
cac0ca76
MY
420 select DM
421 select DM_SERIAL
e67abcaa
VM
422 select DM_SPI
423 select DM_SPI_FLASH
424 select SPI_FLASH
9fa32b12 425
dd84058d
MY
426config TARGET_X600
427 bool "Support x600"
e5ec4815 428 select BOARD_LATE_INIT
2e07c249 429 select CPU_ARM926EJS
02627356 430 select SUPPORT_SPL
dd84058d 431
dd84058d 432config TARGET_IMX31_PHYCORE
f428268a
TR
433 bool "Support imx31_phycore_eet"
434 select CPU_ARM1136
a5d67547 435 select BOARD_EARLY_INIT_F
f428268a
TR
436
437config TARGET_IMX31_PHYCORE_EET
438 bool "Support imx31_phycore_eet"
e5ec4815 439 select BOARD_LATE_INIT
2e07c249 440 select CPU_ARM1136
a5d67547 441 select BOARD_EARLY_INIT_F
dd84058d 442
dd84058d
MY
443config TARGET_MX31ADS
444 bool "Support mx31ads"
2e07c249 445 select CPU_ARM1136
a5d67547 446 select BOARD_EARLY_INIT_F
dd84058d
MY
447
448config TARGET_MX31PDK
449 bool "Support mx31pdk"
e5ec4815 450 select BOARD_LATE_INIT
2e07c249 451 select CPU_ARM1136
02627356 452 select SUPPORT_SPL
a5d67547 453 select BOARD_EARLY_INIT_F
dd84058d 454
dd84058d
MY
455config TARGET_WOODBURN
456 bool "Support woodburn"
2e07c249 457 select CPU_ARM1136
dd84058d
MY
458
459config TARGET_WOODBURN_SD
460 bool "Support woodburn_sd"
2e07c249 461 select CPU_ARM1136
02627356 462 select SUPPORT_SPL
dd84058d
MY
463
464config TARGET_FLEA3
465 bool "Support flea3"
2e07c249 466 select CPU_ARM1136
dd84058d
MY
467
468config TARGET_MX35PDK
469 bool "Support mx35pdk"
e5ec4815 470 select BOARD_LATE_INIT
2e07c249 471 select CPU_ARM1136
dd84058d 472
ddf6bd48
MY
473config ARCH_BCM283X
474 bool "Broadcom BCM283X family"
58d423b8
MY
475 select DM
476 select DM_SERIAL
477 select DM_GPIO
76709096 478 select OF_CONTROL
46414296 479
dd84058d
MY
480config TARGET_VEXPRESS_CA15_TC2
481 bool "Support vexpress_ca15_tc2"
2e07c249 482 select CPU_V7
ea624e19
HG
483 select CPU_V7_HAS_NONSEC
484 select CPU_V7_HAS_VIRT
dd84058d
MY
485
486config TARGET_VEXPRESS_CA5X2
487 bool "Support vexpress_ca5x2"
2e07c249 488 select CPU_V7
dd84058d
MY
489
490config TARGET_VEXPRESS_CA9X4
491 bool "Support vexpress_ca9x4"
2e07c249 492 select CPU_V7
dd84058d 493
43486e4c
SR
494config TARGET_BCM23550_W1D
495 bool "Support bcm23550_w1d"
496 select CPU_V7
497
dd84058d
MY
498config TARGET_BCM28155_AP
499 bool "Support bcm28155_ap"
2e07c249 500 select CPU_V7
dd84058d 501
abb1678c
SR
502config TARGET_BCMCYGNUS
503 bool "Support bcmcygnus"
2e07c249 504 select CPU_V7
9dec5270 505
abb1678c
SR
506config TARGET_BCMNSP
507 bool "Support bcmnsp"
2e07c249 508 select CPU_V7
9dec5270 509
274bced8
JM
510config TARGET_BCMNS2
511 bool "Support Broadcom Northstar2"
512 select ARM64
513 help
514 Support for Broadcom Northstar 2 SoCs. NS2 is a quad-core 64-bit
515 ARMv8 Cortex-A57 processors targeting a broad range of networking
516 applications
517
72df68cc
MY
518config ARCH_EXYNOS
519 bool "Samsung EXYNOS"
58d423b8 520 select DM
fc47cf9d 521 select DM_I2C
58d423b8
MY
522 select DM_SPI_FLASH
523 select DM_SERIAL
524 select DM_SPI
525 select DM_GPIO
1fa4bfde 526 select DM_KEYBOARD
dd84058d 527
311757be
SG
528config ARCH_S5PC1XX
529 bool "Samsung S5PC1XX"
2e07c249 530 select CPU_V7
58d423b8
MY
531 select DM
532 select DM_SERIAL
533 select DM_GPIO
08848e9c 534 select DM_I2C
311757be 535
ef2b694c
MY
536config ARCH_HIGHBANK
537 bool "Calxeda Highbank"
2e07c249 538 select CPU_V7
dd84058d 539
5cbbd9bd
MY
540config ARCH_INTEGRATOR
541 bool "ARM Ltd. Integrator family"
3f394e70
LW
542 select DM
543 select DM_SERIAL
5cbbd9bd 544
c338f09e
MY
545config ARCH_KEYSTONE
546 bool "TI Keystone"
2e07c249 547 select CPU_V7
02627356 548 select SUPPORT_SPL
3a649407 549 select SYS_THUMB_BUILD
534bc70e 550 select CMD_POWEROFF
46f9ef18 551 imply FIT
dd84058d 552
a93fbf4a
MY
553config ARCH_OMAP2PLUS
554 bool "TI OMAP2+"
555 select CPU_V7
556 select SUPPORT_SPL
557 imply FIT
558
bfcef28a
BG
559config ARCH_MESON
560 bool "Amlogic Meson"
561 help
562 Support for the Meson SoC family developed by Amlogic Inc.,
563 targeted at media players and tablet computers. We currently
564 support the S905 (GXBaby) 64-bit SoC.
565
e90a08da
PF
566config ARCH_MX7ULP
567 bool "NXP MX7ULP"
568 select CPU_V7
569 select ROM_UNIFIED_SECTIONS
570
1a8150d4
AA
571config ARCH_MX7
572 bool "Freescale MX7"
573 select CPU_V7
2c2e2c9e
YS
574 select SYS_FSL_HAS_SEC if SECURE_BOOT
575 select SYS_FSL_SEC_COMPAT_4
90b80386 576 select SYS_FSL_SEC_LE
a5d67547 577 select BOARD_EARLY_INIT_F
4585601a 578 select ARCH_MISC_INIT
1a8150d4 579
89ebc821
BB
580config ARCH_MX6
581 bool "Freescale MX6"
582 select CPU_V7
2c2e2c9e
YS
583 select SYS_FSL_HAS_SEC if SECURE_BOOT
584 select SYS_FSL_SEC_COMPAT_4
90b80386 585 select SYS_FSL_SEC_LE
3a649407 586 select SYS_THUMB_BUILD if SPL
89ebc821 587
424ee3d1
AR
588config ARCH_MX5
589 bool "Freescale MX5"
590 select CPU_V7
a5d67547 591 select BOARD_EARLY_INIT_F
424ee3d1 592
1cc95f6e 593config ARCH_RMOBILE
f40b9898 594 bool "Renesas ARM SoCs"
1cc95f6e
NI
595 select DM
596 select DM_SERIAL
a5d67547 597 select BOARD_EARLY_INIT_F
3a649407 598 imply SYS_THUMB_BUILD
dd84058d 599
9702ec00
EP
600config TARGET_S32V234EVB
601 bool "Support s32v234evb"
602 select ARM64
c01e4a1a 603 select SYS_FSL_ERRATUM_ESDHC111
9702ec00 604
08592136
MK
605config ARCH_SNAPDRAGON
606 bool "Qualcomm Snapdragon SoCs"
607 select ARM64
608 select DM
609 select DM_GPIO
610 select DM_SERIAL
611 select SPMI
612 select OF_CONTROL
613 select OF_SEPARATE
614
7865f4b0
MY
615config ARCH_SOCFPGA
616 bool "Altera SOCFPGA family"
2e07c249 617 select CPU_V7
02627356 618 select SUPPORT_SPL
dfd3dff5
MV
619 select OF_CONTROL
620 select SPL_OF_CONTROL
1d9aa3e5
MY
621 select DM
622 select DM_SPI_FLASH
623 select DM_SPI
beee6a30 624 select ENABLE_ARM_SOC_BOOT0_HOOK
a421192f 625 select ARCH_EARLY_INIT_R
4585601a 626 select ARCH_MISC_INIT
949123e3 627 select SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
3a649407 628 select SYS_THUMB_BUILD
dd84058d 629
2c7e3b90
IC
630config ARCH_SUNXI
631 bool "Support sunxi (Allwinner) SoCs"
88bb800d 632 select CMD_GPIO
0878a8a7 633 select CMD_MMC if MMC
2997ee50 634 select CMD_USB if DISTRO_DEFAULTS
b6006baf 635 select DM
45368827 636 select DM_ETH
211d57a4
HG
637 select DM_GPIO
638 select DM_KEYBOARD
45368827 639 select DM_SERIAL
2997ee50 640 select DM_USB if DISTRO_DEFAULTS
d75111a7 641 select OF_BOARD_SETUP
b6006baf
HG
642 select OF_CONTROL
643 select OF_SEPARATE
8434f035
AG
644 select SPL_STACK_R if SUPPORT_SPL
645 select SPL_SYS_MALLOC_SIMPLE if SUPPORT_SPL
6edf6a21 646 select SYS_NS16550
3a649407 647 select SPL_SYS_THUMB_BUILD if !ARM64
2997ee50
YM
648 select USB if DISTRO_DEFAULTS
649 select USB_STORAGE if DISTRO_DEFAULTS
650 select USB_KEYBOARD if DISTRO_DEFAULTS
8c7d2296 651 select USE_TINY_PRINTF
af83a604
MY
652 imply PRE_CONSOLE_BUFFER
653 imply SPL_GPIO_SUPPORT
654 imply SPL_LIBCOMMON_SUPPORT
655 imply SPL_LIBDISK_SUPPORT
656 imply SPL_LIBGENERIC_SUPPORT
657 imply SPL_MMC_SUPPORT if GENERIC_MMC
658 imply SPL_POWER_SUPPORT
659 imply SPL_SERIAL_SUPPORT
8ebe4f42 660
d9e268ed
SB
661config TARGET_TS4600
662 bool "Support TS4600"
663 select CPU_ARM926EJS
664 select SUPPORT_SPL
665
7966b437
SA
666config ARCH_VF610
667 bool "Freescale Vybrid"
e7b860fa 668 select CPU_V7
c01e4a1a 669 select SYS_FSL_ERRATUM_ESDHC111
e7b860fa 670
5ca269a4 671config ARCH_ZYNQ
44dcb403 672 bool "Xilinx Zynq Platform"
e5ec4815 673 select BOARD_LATE_INIT
2e07c249 674 select CPU_V7
02627356 675 select SUPPORT_SPL
d065cfd9 676 select OF_CONTROL
eb04ab34 677 select SPL_OF_CONTROL if SPL
8981f05c 678 select DM
6889ca71 679 select DM_ETH
2978ae23 680 select DM_GPIO
eb04ab34 681 select SPL_DM if SPL
d9ae52c8 682 select DM_MMC
329a449f 683 select DM_MMC_OPS
9f7a4502 684 select DM_SPI
42800ffa 685 select DM_SERIAL
9f7a4502 686 select DM_SPI_FLASH
eb04ab34 687 select SPL_SEPARATE_BSS if SPL
dec49e86 688 select DM_USB if USB
329a449f 689 select BLK
781745bd
SH
690 select CLK
691 select SPL_CLK
692 select CLK_ZYNQ
d315628e 693 imply CMD_CLK
dd84058d 694
0b54a9dd 695config ARCH_ZYNQMP
84c7204b
MS
696 bool "Support Xilinx ZynqMP Platform"
697 select ARM64
e5ec4815 698 select BOARD_LATE_INIT
c2490bf5
MS
699 select DM
700 select OF_CONTROL
701 select DM_SERIAL
e6a9ed04 702 select SUPPORT_SPL
1f29738a
MS
703 select CLK
704 select SPL_CLK
dec49e86 705 select DM_USB if USB
84c7204b 706
ddd960e6
MY
707config TEGRA
708 bool "NVIDIA Tegra"
dd84058d 709
f91afc4d 710config TARGET_VEXPRESS64_AEMV8A
dd84058d 711 bool "Support vexpress_aemv8a"
016a954e 712 select ARM64
dd84058d 713
f91afc4d
LW
714config TARGET_VEXPRESS64_BASE_FVP
715 bool "Support Versatile Express ARMv8a FVP BASE model"
716 select ARM64
717 select SEMIHOSTING
718
fc04b923
RH
719config TARGET_VEXPRESS64_BASE_FVP_DRAM
720 bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
721 select ARM64
722 help
723 This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
724 the default config to allow the user to load the images directly into
725 DRAM using model parameters rather than by using semi-hosting to load
726 the files from the host filesystem.
727
ffc10373
LW
728config TARGET_VEXPRESS64_JUNO
729 bool "Support Versatile Express Juno Development Platform"
730 select ARM64
731
44937214
PK
732config TARGET_LS2080A_EMU
733 bool "Support ls2080a_emu"
fb2bf8c2 734 select ARCH_LS2080A
016a954e 735 select ARM64
23b5877c 736 select ARMV8_MULTIENTRY
4585601a 737 select ARCH_MISC_INIT
44937214
PK
738 help
739 Support for Freescale LS2080A_EMU platform
740 The LS2080A Development System (EMULATOR) is a pre silicon
741 development platform that supports the QorIQ LS2080A
742 Layerscape Architecture processor.
dd84058d 743
44937214
PK
744config TARGET_LS2080A_SIMU
745 bool "Support ls2080a_simu"
fb2bf8c2 746 select ARCH_LS2080A
016a954e 747 select ARM64
23b5877c 748 select ARMV8_MULTIENTRY
4585601a 749 select ARCH_MISC_INIT
44937214
PK
750 help
751 Support for Freescale LS2080A_SIMU platform
752 The LS2080A Development System (QDS) is a pre silicon
753 development platform that supports the QorIQ LS2080A
754 Layerscape Architecture processor.
dd84058d 755
44937214
PK
756config TARGET_LS2080AQDS
757 bool "Support ls2080aqds"
fb2bf8c2 758 select ARCH_LS2080A
7288c2c2
YS
759 select ARM64
760 select ARMV8_MULTIENTRY
e5ec4815 761 select BOARD_LATE_INIT
b2d5ac59 762 select SUPPORT_SPL
4585601a 763 select ARCH_MISC_INIT
7288c2c2 764 help
44937214
PK
765 Support for Freescale LS2080AQDS platform
766 The LS2080A Development System (QDS) is a high-performance
767 development platform that supports the QorIQ LS2080A
7288c2c2
YS
768 Layerscape Architecture processor.
769
44937214
PK
770config TARGET_LS2080ARDB
771 bool "Support ls2080ardb"
fb2bf8c2 772 select ARCH_LS2080A
e2b65ea9
YS
773 select ARM64
774 select ARMV8_MULTIENTRY
e5ec4815 775 select BOARD_LATE_INIT
32eda7cc 776 select SUPPORT_SPL
4585601a 777 select ARCH_MISC_INIT
e2b65ea9 778 help
44937214
PK
779 Support for Freescale LS2080ARDB platform.
780 The LS2080A Reference design board (RDB) is a high-performance
781 development platform that supports the QorIQ LS2080A
e2b65ea9
YS
782 Layerscape Architecture processor.
783
11ac2363
PG
784config TARGET_HIKEY
785 bool "Support HiKey 96boards Consumer Edition Platform"
786 select ARM64
efd7b60a
PG
787 select DM
788 select DM_GPIO
9c71bcdc 789 select DM_SERIAL
cd593ed6 790 select OF_CONTROL
11ac2363
PG
791 help
792 Support for HiKey 96boards platform. It features a HI6220
793 SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
794
9d044fcb
PK
795config TARGET_LS1012AQDS
796 bool "Support ls1012aqds"
9533acf3 797 select ARCH_LS1012A
9d044fcb 798 select ARM64
e5ec4815 799 select BOARD_LATE_INIT
9d044fcb
PK
800 help
801 Support for Freescale LS1012AQDS platform.
802 The LS1012A Development System (QDS) is a high-performance
803 development platform that supports the QorIQ LS1012A
804 Layerscape Architecture processor.
805
3b6e3898
PK
806config TARGET_LS1012ARDB
807 bool "Support ls1012ardb"
9533acf3 808 select ARCH_LS1012A
3b6e3898 809 select ARM64
e5ec4815 810 select BOARD_LATE_INIT
3b6e3898
PK
811 help
812 Support for Freescale LS1012ARDB platform.
813 The LS1012A Reference design board (RDB) is a high-performance
814 development platform that supports the QorIQ LS1012A
815 Layerscape Architecture processor.
816
ff78aa2b
PK
817config TARGET_LS1012AFRDM
818 bool "Support ls1012afrdm"
9533acf3 819 select ARCH_LS1012A
ff78aa2b
PK
820 select ARM64
821 help
822 Support for Freescale LS1012AFRDM platform.
823 The LS1012A Freedom board (FRDM) is a high-performance
824 development platform that supports the QorIQ LS1012A
825 Layerscape Architecture processor.
826
550e3dc0 827config TARGET_LS1021AQDS
0de15707 828 bool "Support ls1021aqds"
e5ec4815 829 select BOARD_LATE_INIT
2e07c249 830 select CPU_V7
adee1d4c
HZ
831 select CPU_V7_HAS_NONSEC
832 select CPU_V7_HAS_VIRT
50f0c663 833 select SUPPORT_SPL
0a37cf8f 834 select ARCH_LS1021A
217f92bb 835 select ARCH_SUPPORT_PSCI
5e8bd7e1 836 select LS1_DEEP_SLEEP
d26e34c4 837 select SYS_FSL_DDR
a5d67547 838 select BOARD_EARLY_INIT_F
217f92bb 839
c8a7d9da 840config TARGET_LS1021ATWR
0de15707 841 bool "Support ls1021atwr"
e5ec4815 842 select BOARD_LATE_INIT
2e07c249 843 select CPU_V7
adee1d4c
HZ
844 select CPU_V7_HAS_NONSEC
845 select CPU_V7_HAS_VIRT
50f0c663 846 select SUPPORT_SPL
0a37cf8f 847 select ARCH_LS1021A
217f92bb 848 select ARCH_SUPPORT_PSCI
5e8bd7e1 849 select LS1_DEEP_SLEEP
a5d67547 850 select BOARD_EARLY_INIT_F
c8a7d9da 851
20c700f8
FL
852config TARGET_LS1021AIOT
853 bool "Support ls1021aiot"
e5ec4815 854 select BOARD_LATE_INIT
20c700f8
FL
855 select CPU_V7
856 select CPU_V7_HAS_NONSEC
857 select CPU_V7_HAS_VIRT
858 select SUPPORT_SPL
859 select ARCH_LS1021A
860 select ARCH_SUPPORT_PSCI
861 help
862 Support for Freescale LS1021AIOT platform.
863 The LS1021A Freescale board (IOT) is a high-performance
864 development platform that supports the QorIQ LS1021A
865 Layerscape Architecture processor.
866
02b5d2ed
SX
867config TARGET_LS1043AQDS
868 bool "Support ls1043aqds"
0a37cf8f 869 select ARCH_LS1043A
02b5d2ed
SX
870 select ARM64
871 select ARMV8_MULTIENTRY
e5ec4815 872 select BOARD_LATE_INIT
02b5d2ed 873 select SUPPORT_SPL
a5d67547 874 select BOARD_EARLY_INIT_F
02b5d2ed
SX
875 help
876 Support for Freescale LS1043AQDS platform.
877
f3a8e2b7
MH
878config TARGET_LS1043ARDB
879 bool "Support ls1043ardb"
0a37cf8f 880 select ARCH_LS1043A
f3a8e2b7 881 select ARM64
831c068f 882 select ARMV8_MULTIENTRY
e5ec4815 883 select BOARD_LATE_INIT
3ad44729 884 select SUPPORT_SPL
a5d67547 885 select BOARD_EARLY_INIT_F
f3a8e2b7
MH
886 help
887 Support for Freescale LS1043ARDB platform.
888
126fe70d
SX
889config TARGET_LS1046AQDS
890 bool "Support ls1046aqds"
da28e58a 891 select ARCH_LS1046A
126fe70d
SX
892 select ARM64
893 select ARMV8_MULTIENTRY
e5ec4815 894 select BOARD_LATE_INIT
126fe70d
SX
895 select SUPPORT_SPL
896 select DM_SPI_FLASH if DM_SPI
a5d67547 897 select BOARD_EARLY_INIT_F
126fe70d
SX
898 help
899 Support for Freescale LS1046AQDS platform.
900 The LS1046A Development System (QDS) is a high-performance
901 development platform that supports the QorIQ LS1046A
902 Layerscape Architecture processor.
903
dd02936f
MH
904config TARGET_LS1046ARDB
905 bool "Support ls1046ardb"
da28e58a 906 select ARCH_LS1046A
dd02936f
MH
907 select ARM64
908 select ARMV8_MULTIENTRY
e5ec4815 909 select BOARD_LATE_INIT
dd02936f
MH
910 select SUPPORT_SPL
911 select DM_SPI_FLASH if DM_SPI
dccef2ec 912 select POWER_MC34VR500
a5d67547 913 select BOARD_EARLY_INIT_F
dd02936f
MH
914 help
915 Support for Freescale LS1046ARDB platform.
916 The LS1046A Reference Design Board (RDB) is a high-performance
917 development platform that supports the QorIQ LS1046A
918 Layerscape Architecture processor.
919
dd84058d
MY
920config TARGET_H2200
921 bool "Support h2200"
2e07c249 922 select CPU_PXA
dd84058d 923
f19eb154
VK
924config TARGET_ZIPITZ2
925 bool "Support zipitz2"
926 select CPU_PXA
927
dd84058d
MY
928config TARGET_COLIBRI_PXA270
929 bool "Support colibri_pxa270"
2e07c249 930 select CPU_PXA
dd84058d 931
66cba041 932config ARCH_UNIPHIER
b6ef3a3f 933 bool "Socionext UniPhier SoCs"
e5ec4815 934 select BOARD_LATE_INIT
48264d9b 935 select CLK_UNIPHIER
4e819950 936 select DM
b800cbde 937 select DM_GPIO
4e819950 938 select DM_I2C
4aceb3f8 939 select DM_MMC
4fb96c48 940 select DM_RESET
b5550e49 941 select DM_SERIAL
47a79f65 942 select DM_USB
b5550e49
MY
943 select OF_CONTROL
944 select OF_LIBFDT
27350c92 945 select PINCTRL
561ca649
MY
946 select SPL_DM if SPL
947 select SPL_LIBCOMMON_SUPPORT if SPL
948 select SPL_LIBGENERIC_SUPPORT if SPL
949 select SPL_OF_CONTROL if SPL
950 select SPL_PINCTRL if SPL
b5550e49 951 select SUPPORT_SPL
b6ef3a3f
MY
952 help
953 Support for UniPhier SoC family developed by Socionext Inc.
954 (formerly, System LSI Business Division of Panasonic Corporation)
66cba041 955
0a61ee88
VM
956config STM32
957 bool "Support STM32"
ed09a554 958 select CPU_V7M
66562414
KL
959 select DM
960 select DM_SERIAL
3a649407 961 select SYS_THUMB_BUILD
ed09a554 962
94e9a4ef
PC
963config ARCH_STI
964 bool "Support STMicrolectronics SoCs"
965 select CPU_V7
214a17e6
PC
966 select DM
967 select DM_SERIAL
eee20f81
PC
968 select BLK
969 select DM_MMC
584861ff 970 select DM_RESET
94e9a4ef
PC
971 help
972 Support for STMicroelectronics STiH407/10 SoC family.
973 This SoC is used on Linaro 96Board STiH410-B2260
974
2444dae5
SG
975config ARCH_ROCKCHIP
976 bool "Support Rockchip SoCs"
2444dae5 977 select OF_CONTROL
aa15038c 978 select BLK
2444dae5 979 select DM
a381bcf5 980 select SPL_DM if SPL
aa15038c 981 select SYS_MALLOC_F
3a649407 982 select SYS_THUMB_BUILD if !ARM64
a381bcf5 983 select SPL_SYS_MALLOC_SIMPLE if SPL
aa15038c
SG
984 select DM_GPIO
985 select DM_I2C
986 select DM_MMC
42b37d8d 987 select DM_MMC_OPS
aa15038c
SG
988 select DM_SERIAL
989 select DM_SPI
990 select DM_SPI_FLASH
892742df 991 select DM_USB if USB
8d29e3a4
KY
992 select DM_PWM
993 select DM_REGULATOR
2444dae5 994
746f985a
ST
995config TARGET_THUNDERX_88XX
996 bool "Support ThunderX 88xx"
b4ba1693 997 select ARM64
746f985a 998 select OF_CONTROL
067716ba 999 select SYS_CACHE_SHIFT_7
746f985a 1000
4697abea 1001config ARCH_ASPEED
1002 bool "Support Aspeed SoCs"
1003 select OF_CONTROL
1004 select DM
1005
dd84058d
MY
1006endchoice
1007
4697abea 1008source "arch/arm/mach-aspeed/Kconfig"
1009
4614b891
MY
1010source "arch/arm/mach-at91/Kconfig"
1011
ddf6bd48 1012source "arch/arm/mach-bcm283x/Kconfig"
3491ba63 1013
ddf6bd48 1014source "arch/arm/mach-davinci/Kconfig"
34e609ca 1015
77b55e8c 1016source "arch/arm/mach-exynos/Kconfig"
72df68cc 1017
72a8ff4b 1018source "arch/arm/mach-highbank/Kconfig"
ef2b694c 1019
5cbbd9bd
MY
1020source "arch/arm/mach-integrator/Kconfig"
1021
39a72345 1022source "arch/arm/mach-keystone/Kconfig"
c338f09e 1023
56f86e39 1024source "arch/arm/mach-kirkwood/Kconfig"
47539e23 1025
c3d89140
SR
1026source "arch/arm/mach-mvebu/Kconfig"
1027
0a37cf8f
YS
1028source "arch/arm/cpu/armv7/ls102xa/Kconfig"
1029
e90a08da
PF
1030source "arch/arm/cpu/armv7/mx7ulp/Kconfig"
1031
1a8150d4
AA
1032source "arch/arm/cpu/armv7/mx7/Kconfig"
1033
89ebc821
BB
1034source "arch/arm/cpu/armv7/mx6/Kconfig"
1035
424ee3d1
AR
1036source "arch/arm/cpu/armv7/mx5/Kconfig"
1037
983e3700 1038source "arch/arm/mach-omap2/Kconfig"
6384726d 1039
da28e58a
YS
1040source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
1041
3e93b4e6 1042source "arch/arm/mach-orion5x/Kconfig"
22f2be7a 1043
badbb63c 1044source "arch/arm/mach-rmobile/Kconfig"
f40b9898 1045
bfcef28a
BG
1046source "arch/arm/mach-meson/Kconfig"
1047
2444dae5
SG
1048source "arch/arm/mach-rockchip/Kconfig"
1049
225f5eec 1050source "arch/arm/mach-s5pc1xx/Kconfig"
311757be 1051
08592136
MK
1052source "arch/arm/mach-snapdragon/Kconfig"
1053
7865f4b0
MY
1054source "arch/arm/mach-socfpga/Kconfig"
1055
94e9a4ef
PC
1056source "arch/arm/mach-sti/Kconfig"
1057
0a61ee88
VM
1058source "arch/arm/mach-stm32/Kconfig"
1059
3abfd887
MY
1060source "arch/arm/mach-sunxi/Kconfig"
1061
09f455dc 1062source "arch/arm/mach-tegra/Kconfig"
ddd960e6 1063
4c425570 1064source "arch/arm/mach-uniphier/Kconfig"
66cba041 1065
7966b437
SA
1066source "arch/arm/cpu/armv7/vf610/Kconfig"
1067
0107f240 1068source "arch/arm/mach-zynq/Kconfig"
ddd960e6 1069
ea624e19
HG
1070source "arch/arm/cpu/armv7/Kconfig"
1071
75580007
SDPP
1072source "arch/arm/cpu/armv8/zynqmp/Kconfig"
1073
23b5877c
LW
1074source "arch/arm/cpu/armv8/Kconfig"
1075
a05a6045
BB
1076source "arch/arm/imx-common/Kconfig"
1077
fcea480d 1078source "board/aries/m28evk/Kconfig"
d8ccbe93 1079source "board/bosch/shc/Kconfig"
dd84058d 1080source "board/CarMediaLab/flea3/Kconfig"
dd84058d 1081source "board/Marvell/aspenite/Kconfig"
dd84058d 1082source "board/Marvell/gplugd/Kconfig"
dd84058d 1083source "board/armadeus/apf27/Kconfig"
dd84058d
MY
1084source "board/armltd/vexpress/Kconfig"
1085source "board/armltd/vexpress64/Kconfig"
dd84058d 1086source "board/bluegiga/apx4devkit/Kconfig"
43486e4c 1087source "board/broadcom/bcm23550_w1d/Kconfig"
dd84058d 1088source "board/broadcom/bcm28155_ap/Kconfig"
abb1678c
SR
1089source "board/broadcom/bcmcygnus/Kconfig"
1090source "board/broadcom/bcmnsp/Kconfig"
274bced8 1091source "board/broadcom/bcmns2/Kconfig"
746f985a 1092source "board/cavium/thunderx/Kconfig"
dd84058d 1093source "board/cirrus/edb93xx/Kconfig"
dd84058d 1094source "board/creative/xfi3/Kconfig"
44937214
PK
1095source "board/freescale/ls2080a/Kconfig"
1096source "board/freescale/ls2080aqds/Kconfig"
1097source "board/freescale/ls2080ardb/Kconfig"
550e3dc0 1098source "board/freescale/ls1021aqds/Kconfig"
02b5d2ed 1099source "board/freescale/ls1043aqds/Kconfig"
c8a7d9da 1100source "board/freescale/ls1021atwr/Kconfig"
20c700f8 1101source "board/freescale/ls1021aiot/Kconfig"
126fe70d 1102source "board/freescale/ls1046aqds/Kconfig"
f3a8e2b7 1103source "board/freescale/ls1043ardb/Kconfig"
dd02936f 1104source "board/freescale/ls1046ardb/Kconfig"
9d044fcb 1105source "board/freescale/ls1012aqds/Kconfig"
3b6e3898 1106source "board/freescale/ls1012ardb/Kconfig"
ff78aa2b 1107source "board/freescale/ls1012afrdm/Kconfig"
dd84058d
MY
1108source "board/freescale/mx23evk/Kconfig"
1109source "board/freescale/mx25pdk/Kconfig"
1110source "board/freescale/mx28evk/Kconfig"
1111source "board/freescale/mx31ads/Kconfig"
1112source "board/freescale/mx31pdk/Kconfig"
1113source "board/freescale/mx35pdk/Kconfig"
9702ec00 1114source "board/freescale/s32v234evb/Kconfig"
60083261 1115source "board/gdsys/a38x/Kconfig"
ab38bf6a 1116source "board/grinn/chiliboard/Kconfig"
dd84058d
MY
1117source "board/gumstix/pepper/Kconfig"
1118source "board/h2200/Kconfig"
345243ed 1119source "board/hisilicon/hikey/Kconfig"
dd84058d 1120source "board/imx31_phycore/Kconfig"
a96c08f5 1121source "board/isee/igep003x/Kconfig"
dd84058d 1122source "board/olimex/mx23_olinuxino/Kconfig"
dd84058d
MY
1123source "board/phytec/pcm051/Kconfig"
1124source "board/ppcag/bg0900/Kconfig"
dd84058d 1125source "board/sandisk/sansa_fuze_plus/Kconfig"
dd84058d 1126source "board/schulercontrol/sc_sps_1/Kconfig"
dd84058d 1127source "board/silica/pengwyn/Kconfig"
dd84058d
MY
1128source "board/spear/spear300/Kconfig"
1129source "board/spear/spear310/Kconfig"
1130source "board/spear/spear320/Kconfig"
1131source "board/spear/spear600/Kconfig"
1132source "board/spear/x600/Kconfig"
9fa32b12 1133source "board/st/stv0991/Kconfig"
dd84058d 1134source "board/syteco/zmx25/Kconfig"
9d1b2987 1135source "board/tcl/sl50/Kconfig"
a2bc4321 1136source "board/birdland/bav335x/Kconfig"
dd84058d 1137source "board/timll/devkit3250/Kconfig"
dd84058d 1138source "board/toradex/colibri_pxa270/Kconfig"
d9e268ed 1139source "board/technologic/ts4600/Kconfig"
6ce89324 1140source "board/vscom/baltos/Kconfig"
dd84058d 1141source "board/woodburn/Kconfig"
412ae53a 1142source "board/work-microwave/work_92105/Kconfig"
f19eb154 1143source "board/zipitz2/Kconfig"
dd84058d 1144
51b17d49
MY
1145source "arch/arm/Kconfig.debug"
1146
dd84058d 1147endmenu