]> git.ipfire.org Git - thirdparty/u-boot.git/blame - arch/arm/Kconfig
arm: v7: Update VBAR only if available
[thirdparty/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
49e93875
SW
12if ARM64
13config POSITION_INDEPENDENT
14 bool "Generate position-independent pre-relocation code"
15 help
16 U-Boot expects to be linked to a specific hard-coded address, and to
17 be loaded to and run from that address. This option lifts that
18 restriction, thus allowing the code to be loaded to and executed
19 from almost any address. This logic relies on the relocation
20 information that is embedded into the binary to support U-Boot
21 relocating itself to the top-of-RAM later during execution.
e6c90448
SW
22
23config SYS_INIT_SP_BSS_OFFSET
24 int
25 help
26 U-Boot typically uses a hard-coded value for the stack pointer
27 before relocation. Define this option to instead calculate the
28 initial SP at run-time. This is useful to avoid hard-coding addresses
29 into U-Boot, so that can be loaded and executed at arbitrary
30 addresses and thus avoid using arbitrary addresses at runtime. This
31 option's value is the offset added to &_bss_start in order to
32 calculate the stack pointer. This offset should be large enough so
33 that the early malloc region, global data (gd), and early stack usage
34 do not overlap any appended DTB.
8163faf9
SW
35
36config LINUX_KERNEL_IMAGE_HEADER
37 bool
38 help
39 Place a Linux kernel image header at the start of the U-Boot binary.
40 The format of the header is described in the Linux kernel source at
41 Documentation/arm64/booting.txt. This feature is useful since the
42 image header reports the amount of memory (BSS and similar) that
43 U-Boot needs to use, but which isn't part of the binary.
44
45if LINUX_KERNEL_IMAGE_HEADER
46config LNX_KRNL_IMG_TEXT_OFFSET_BASE
47 hex
48 help
49 The value subtracted from CONFIG_SYS_TEXT_BASE to calculate the
50 TEXT_OFFSET value written in to the Linux kernel image header.
51endif
49e93875
SW
52endif
53
54config STATIC_RELA
55 bool
56 default y if ARM64 && !POSITION_INDEPENDENT
57
37217f0e
LV
58config DMA_ADDR_T_64BIT
59 bool
60 default y if ARM64
61
2e07c249 62config HAS_VBAR
e009bfa4 63 bool
2e07c249 64
62e92077 65config HAS_THUMB2
e009bfa4 66 bool
62e92077 67
111a6af9
PE
68# Used for compatibility with asm files copied from the kernel
69config ARM_ASM_UNIFIED
70 bool
71 default y
72
73# Used for compatibility with asm files copied from the kernel
74config THUMB2_KERNEL
75 bool
76
8dda2e2f
TR
77# If set, the workarounds for these ARM errata are applied early during U-Boot
78# startup. Note that in general these options force the workarounds to be
79# applied; no CPU-type/version detection exists, unlike the similar options in
80# the Linux kernel. Do not set these options unless they apply! Also note that
81# the following can be machine specific errata. These do have ability to
82# provide rudimentary version and machine specific checks, but expect no
83# product checks:
84# CONFIG_ARM_ERRATA_430973
85# CONFIG_ARM_ERRATA_454179
86# CONFIG_ARM_ERRATA_621766
87# CONFIG_ARM_ERRATA_798870
88# CONFIG_ARM_ERRATA_801819
89config ARM_ERRATA_430973
90 bool
91
92config ARM_ERRATA_454179
93 bool
94
95config ARM_ERRATA_621766
96 bool
97
98config ARM_ERRATA_716044
99 bool
100
19a75b8c
SS
101config ARM_ERRATA_725233
102 bool
103
8dda2e2f
TR
104config ARM_ERRATA_742230
105 bool
106
107config ARM_ERRATA_743622
108 bool
109
110config ARM_ERRATA_751472
111 bool
112
113config ARM_ERRATA_761320
114 bool
115
116config ARM_ERRATA_773022
117 bool
118
119config ARM_ERRATA_774769
120 bool
121
122config ARM_ERRATA_794072
123 bool
124
125config ARM_ERRATA_798870
126 bool
127
128config ARM_ERRATA_801819
129 bool
130
131config ARM_ERRATA_826974
132 bool
133
134config ARM_ERRATA_828024
135 bool
136
137config ARM_ERRATA_829520
138 bool
139
140config ARM_ERRATA_833069
141 bool
142
143config ARM_ERRATA_833471
144 bool
145
11d94319
PF
146config ARM_ERRATA_845369
147 bool
148
8776350d
NM
149config ARM_ERRATA_852421
150 bool
151
152config ARM_ERRATA_852423
153 bool
154
ab0ab54e
AW
155config ARM_ERRATA_855873
156 bool
157
2e07c249 158config CPU_ARM720T
e009bfa4 159 bool
067716ba 160 select SYS_CACHE_SHIFT_5
2e07c249
GS
161
162config CPU_ARM920T
e009bfa4 163 bool
067716ba 164 select SYS_CACHE_SHIFT_5
2e07c249
GS
165
166config CPU_ARM926EJS
e009bfa4 167 bool
067716ba 168 select SYS_CACHE_SHIFT_5
2e07c249
GS
169
170config CPU_ARM946ES
e009bfa4 171 bool
067716ba 172 select SYS_CACHE_SHIFT_5
2e07c249
GS
173
174config CPU_ARM1136
e009bfa4 175 bool
067716ba 176 select SYS_CACHE_SHIFT_5
2e07c249
GS
177
178config CPU_ARM1176
e009bfa4
TR
179 bool
180 select HAS_VBAR
067716ba 181 select SYS_CACHE_SHIFT_5
2e07c249
GS
182
183config CPU_V7
e009bfa4
TR
184 bool
185 select HAS_VBAR
186 select HAS_THUMB2
067716ba 187 select SYS_CACHE_SHIFT_6
2e07c249 188
12d8a729 189config CPU_V7M
190 bool
e009bfa4 191 select HAS_THUMB2
111a6af9 192 select THUMB2_KERNEL
067716ba 193 select SYS_CACHE_SHIFT_5
12d8a729 194
2e07c249 195config CPU_PXA
e009bfa4 196 bool
067716ba 197 select SYS_CACHE_SHIFT_5
2e07c249
GS
198
199config CPU_SA1100
e009bfa4 200 bool
067716ba 201 select SYS_CACHE_SHIFT_5
2e07c249
GS
202
203config SYS_CPU
e009bfa4
TR
204 default "arm720t" if CPU_ARM720T
205 default "arm920t" if CPU_ARM920T
206 default "arm926ejs" if CPU_ARM926EJS
207 default "arm946es" if CPU_ARM946ES
208 default "arm1136" if CPU_ARM1136
209 default "arm1176" if CPU_ARM1176
210 default "armv7" if CPU_V7
211 default "armv7m" if CPU_V7M
212 default "pxa" if CPU_PXA
213 default "sa1100" if CPU_SA1100
01541eec 214 default "armv8" if ARM64
2e07c249 215
66020a67
MV
216config SYS_ARM_ARCH
217 int
218 default 4 if CPU_ARM720T
219 default 4 if CPU_ARM920T
220 default 5 if CPU_ARM926EJS
221 default 5 if CPU_ARM946ES
222 default 6 if CPU_ARM1136
223 default 6 if CPU_ARM1176
224 default 7 if CPU_V7
225 default 7 if CPU_V7M
226 default 5 if CPU_PXA
227 default 4 if CPU_SA1100
228 default 8 if ARM64
229
067716ba
TR
230config SYS_CACHE_SHIFT_5
231 bool
232
233config SYS_CACHE_SHIFT_6
234 bool
235
236config SYS_CACHE_SHIFT_7
237 bool
238
239config SYS_CACHELINE_SIZE
240 int
241 default 128 if SYS_CACHE_SHIFT_7
242 default 64 if SYS_CACHE_SHIFT_6
243 default 32 if SYS_CACHE_SHIFT_5
244
7842b6a9
AP
245config SYS_ARCH_TIMER
246 bool "ARM Generic Timer support"
247 depends on CPU_V7 || ARM64
248 default y if ARM64
249 help
250 The ARM Generic Timer (aka arch-timer) provides an architected
251 interface to a timer source on an SoC.
252 It is mandantory for ARMv8 implementation and widely available
253 on ARMv7 systems.
254
c54bcf68
MY
255config ARM_SMCCC
256 bool "Support for ARM SMC Calling Convention (SMCCC)"
257 depends on CPU_V7 || ARM64
573a3811 258 select ARM_PSCI_FW
c54bcf68
MY
259 help
260 Say Y here if you want to enable ARM SMC Calling Convention.
261 This should be enabled if U-Boot needs to communicate with system
262 firmware (for example, PSCI) according to SMCCC.
263
f91afc4d
LW
264config SEMIHOSTING
265 bool "support boot from semihosting"
266 help
267 In emulated environments, semihosting is a way for
268 the hosted environment to call out to the emulator to
269 retrieve files from the host machine.
270
3a649407
TR
271config SYS_THUMB_BUILD
272 bool "Build U-Boot using the Thumb instruction set"
273 depends on !ARM64
274 help
275 Use this flag to build U-Boot using the Thumb instruction set for
276 ARM architectures. Thumb instruction set provides better code
277 density. For ARM architectures that support Thumb2 this flag will
278 result in Thumb2 code generated by GCC.
279
280config SPL_SYS_THUMB_BUILD
281 bool "Build SPL using the Thumb instruction set"
282 default y if SYS_THUMB_BUILD
283 depends on !ARM64
284 help
285 Use this flag to build SPL using the Thumb instruction set for
286 ARM architectures. Thumb instruction set provides better code
287 density. For ARM architectures that support Thumb2 this flag will
288 result in Thumb2 code generated by GCC.
289
f3e9bec8
PF
290config SYS_L2CACHE_OFF
291 bool "L2cache off"
292 help
293 If SoC does not support L2CACHE or one do not want to enable
294 L2CACHE, choose this option.
295
cdaa633f
AP
296config ENABLE_ARM_SOC_BOOT0_HOOK
297 bool "prepare BOOT0 header"
298 help
299 If the SoC's BOOT0 requires a header area filled with (magic)
7d531e8a
SG
300 values, then choose this option, and create a file included as
301 <asm/arch/boot0.h> which contains the required assembler code.
cdaa633f 302
85db5831
AP
303config ARM_CORTEX_CPU_IS_UP
304 bool
305 default n
306
be72591b
FE
307config USE_ARCH_MEMCPY
308 bool "Use an assembly optimized implementation of memcpy"
40d5534c
TR
309 default y
310 depends on !ARM64
311 help
312 Enable the generation of an optimized version of memcpy.
313 Such implementation may be faster under some conditions
314 but may increase the binary size.
315
316config SPL_USE_ARCH_MEMCPY
f8136e68 317 bool "Use an assembly optimized implementation of memcpy for SPL"
40d5534c 318 default y if USE_ARCH_MEMCPY
085be482 319 depends on !ARM64
be72591b
FE
320 help
321 Enable the generation of an optimized version of memcpy.
322 Such implementation may be faster under some conditions
323 but may increase the binary size.
324
325config USE_ARCH_MEMSET
326 bool "Use an assembly optimized implementation of memset"
40d5534c
TR
327 default y
328 depends on !ARM64
329 help
330 Enable the generation of an optimized version of memset.
331 Such implementation may be faster under some conditions
332 but may increase the binary size.
333
334config SPL_USE_ARCH_MEMSET
f8136e68 335 bool "Use an assembly optimized implementation of memset for SPL"
40d5534c 336 default y if USE_ARCH_MEMSET
085be482 337 depends on !ARM64
be72591b
FE
338 help
339 Enable the generation of an optimized version of memset.
340 Such implementation may be faster under some conditions
341 but may increase the binary size.
342
ec6617c3
AW
343config ARM64_SUPPORT_AARCH32
344 bool "ARM64 system support AArch32 execution state"
345 default y if ARM64 && !TARGET_THUNDERX_88XX
346 help
347 This ARM64 system supports AArch32 execution state.
348
dd84058d
MY
349choice
350 prompt "Target select"
b928e658 351 default TARGET_HIKEY
dd84058d 352
4614b891
MY
353config ARCH_AT91
354 bool "Atmel AT91"
0680f1b1 355 select SPL_BOARD_INIT if SPL
dd84058d
MY
356
357config TARGET_EDB93XX
358 bool "Support edb93xx"
2e07c249 359 select CPU_ARM920T
884f9013 360 select PL010_SERIAL
dd84058d 361
dd84058d
MY
362config TARGET_ASPENITE
363 bool "Support aspenite"
2e07c249 364 select CPU_ARM926EJS
dd84058d
MY
365
366config TARGET_GPLUGD
367 bool "Support gplugd"
2e07c249 368 select CPU_ARM926EJS
dd84058d 369
3491ba63
MY
370config ARCH_DAVINCI
371 bool "TI DaVinci"
2e07c249 372 select CPU_ARM926EJS
15dc63d6 373 imply CMD_SAVES
3491ba63
MY
374 help
375 Support for TI's DaVinci platform.
dd84058d 376
47539e23
MY
377config KIRKWOOD
378 bool "Marvell Kirkwood"
2e07c249 379 select CPU_ARM926EJS
a5d67547 380 select BOARD_EARLY_INIT_F
4585601a 381 select ARCH_MISC_INIT
dd84058d 382
c3d89140 383config ARCH_MVEBU
21b29fc6 384 bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)"
9cffb233
SR
385 select OF_CONTROL
386 select OF_SEPARATE
387 select DM
e3b9c98a 388 select DM_ETH
1d51ea19 389 select DM_SERIAL
09a54c00
SR
390 select DM_SPI
391 select DM_SPI_FLASH
f1b1f770 392 select SPI
a4884831 393
dd84058d
MY
394config TARGET_DEVKIT3250
395 bool "Support devkit3250"
2e07c249 396 select CPU_ARM926EJS
e9b3ce3f 397 select SUPPORT_SPL
dd84058d 398
412ae53a
AA
399config TARGET_WORK_92105
400 bool "Support work_92105"
401 select CPU_ARM926EJS
402 select SUPPORT_SPL
403
dd84058d
MY
404config TARGET_APF27
405 bool "Support apf27"
2e07c249 406 select CPU_ARM926EJS
02627356 407 select SUPPORT_SPL
dd84058d 408
22f2be7a
MY
409config ORION5X
410 bool "Marvell Orion"
2e07c249 411 select CPU_ARM926EJS
dd84058d 412
dd84058d
MY
413config TARGET_SPEAR300
414 bool "Support spear300"
2e07c249 415 select CPU_ARM926EJS
a5d67547 416 select BOARD_EARLY_INIT_F
15dc63d6 417 imply CMD_SAVES
d10fc50f 418 select PL011_SERIAL
dd84058d
MY
419
420config TARGET_SPEAR310
421 bool "Support spear310"
2e07c249 422 select CPU_ARM926EJS
a5d67547 423 select BOARD_EARLY_INIT_F
15dc63d6 424 imply CMD_SAVES
d10fc50f 425 select PL011_SERIAL
dd84058d
MY
426
427config TARGET_SPEAR320
428 bool "Support spear320"
2e07c249 429 select CPU_ARM926EJS
a5d67547 430 select BOARD_EARLY_INIT_F
15dc63d6 431 imply CMD_SAVES
d10fc50f 432 select PL011_SERIAL
dd84058d
MY
433
434config TARGET_SPEAR600
435 bool "Support spear600"
2e07c249 436 select CPU_ARM926EJS
a5d67547 437 select BOARD_EARLY_INIT_F
15dc63d6 438 imply CMD_SAVES
d10fc50f 439 select PL011_SERIAL
dd84058d 440
9fa32b12
VM
441config TARGET_STV0991
442 bool "Support stv0991"
443 select CPU_V7
cac0ca76
MY
444 select DM
445 select DM_SERIAL
e67abcaa
VM
446 select DM_SPI
447 select DM_SPI_FLASH
f1b1f770 448 select SPI
e67abcaa 449 select SPI_FLASH
cf2c7784 450 select PL01X_SERIAL
9fa32b12 451
dd84058d
MY
452config TARGET_X600
453 bool "Support x600"
e5ec4815 454 select BOARD_LATE_INIT
2e07c249 455 select CPU_ARM926EJS
02627356 456 select SUPPORT_SPL
d10fc50f 457 select PL011_SERIAL
dd84058d 458
dd84058d
MY
459config TARGET_MX31PDK
460 bool "Support mx31pdk"
e5ec4815 461 select BOARD_LATE_INIT
2e07c249 462 select CPU_ARM1136
02627356 463 select SUPPORT_SPL
a5d67547 464 select BOARD_EARLY_INIT_F
dd84058d 465
dd84058d
MY
466config TARGET_WOODBURN
467 bool "Support woodburn"
2e07c249 468 select CPU_ARM1136
dd84058d
MY
469
470config TARGET_WOODBURN_SD
471 bool "Support woodburn_sd"
2e07c249 472 select CPU_ARM1136
02627356 473 select SUPPORT_SPL
dd84058d
MY
474
475config TARGET_FLEA3
476 bool "Support flea3"
2e07c249 477 select CPU_ARM1136
dd84058d
MY
478
479config TARGET_MX35PDK
480 bool "Support mx35pdk"
e5ec4815 481 select BOARD_LATE_INIT
2e07c249 482 select CPU_ARM1136
dd84058d 483
ddf6bd48
MY
484config ARCH_BCM283X
485 bool "Broadcom BCM283X family"
58d423b8
MY
486 select DM
487 select DM_SERIAL
488 select DM_GPIO
76709096 489 select OF_CONTROL
cf2c7784 490 select PL01X_SERIAL
ae5326a6 491 select SERIAL_SEARCH_ALL
91d27a17 492 imply FAT_WRITE
46414296 493
dd84058d
MY
494config TARGET_VEXPRESS_CA15_TC2
495 bool "Support vexpress_ca15_tc2"
2e07c249 496 select CPU_V7
ea624e19
HG
497 select CPU_V7_HAS_NONSEC
498 select CPU_V7_HAS_VIRT
d10fc50f 499 select PL011_SERIAL
dd84058d
MY
500
501config TARGET_VEXPRESS_CA5X2
502 bool "Support vexpress_ca5x2"
2e07c249 503 select CPU_V7
d10fc50f 504 select PL011_SERIAL
dd84058d
MY
505
506config TARGET_VEXPRESS_CA9X4
507 bool "Support vexpress_ca9x4"
2e07c249 508 select CPU_V7
d10fc50f 509 select PL011_SERIAL
dd84058d 510
43486e4c
SR
511config TARGET_BCM23550_W1D
512 bool "Support bcm23550_w1d"
513 select CPU_V7
221a949e 514 imply CRC32_VERIFY
91d27a17 515 imply FAT_WRITE
43486e4c 516
dd84058d
MY
517config TARGET_BCM28155_AP
518 bool "Support bcm28155_ap"
2e07c249 519 select CPU_V7
221a949e 520 imply CRC32_VERIFY
91d27a17 521 imply FAT_WRITE
dd84058d 522
abb1678c
SR
523config TARGET_BCMCYGNUS
524 bool "Support bcmcygnus"
2e07c249 525 select CPU_V7
221a949e 526 imply CRC32_VERIFY
551c3934 527 imply CMD_HASH
91d27a17 528 imply FAT_WRITE
221a949e 529 imply HASH_VERIFY
c89782dc
SV
530 imply NETDEVICES
531 imply BCM_SF2_ETH
532 imply BCM_SF2_ETH_GMAC
9dec5270 533
abb1678c
SR
534config TARGET_BCMNSP
535 bool "Support bcmnsp"
2e07c249 536 select CPU_V7
9dec5270 537
274bced8
JM
538config TARGET_BCMNS2
539 bool "Support Broadcom Northstar2"
540 select ARM64
541 help
542 Support for Broadcom Northstar 2 SoCs. NS2 is a quad-core 64-bit
543 ARMv8 Cortex-A57 processors targeting a broad range of networking
544 applications
545
72df68cc
MY
546config ARCH_EXYNOS
547 bool "Samsung EXYNOS"
58d423b8 548 select DM
fc47cf9d 549 select DM_I2C
58d423b8
MY
550 select DM_SPI_FLASH
551 select DM_SERIAL
552 select DM_SPI
553 select DM_GPIO
1fa4bfde 554 select DM_KEYBOARD
f1b1f770 555 select SPI
91d27a17 556 imply FAT_WRITE
dd84058d 557
311757be
SG
558config ARCH_S5PC1XX
559 bool "Samsung S5PC1XX"
2e07c249 560 select CPU_V7
58d423b8
MY
561 select DM
562 select DM_SERIAL
563 select DM_GPIO
08848e9c 564 select DM_I2C
311757be 565
ef2b694c
MY
566config ARCH_HIGHBANK
567 bool "Calxeda Highbank"
2e07c249 568 select CPU_V7
d10fc50f 569 select PL011_SERIAL
dd84058d 570
5cbbd9bd
MY
571config ARCH_INTEGRATOR
572 bool "ARM Ltd. Integrator family"
3f394e70
LW
573 select DM
574 select DM_SERIAL
cf2c7784 575 select PL01X_SERIAL
5cbbd9bd 576
c338f09e
MY
577config ARCH_KEYSTONE
578 bool "TI Keystone"
2e07c249 579 select CPU_V7
02627356 580 select SUPPORT_SPL
3a649407 581 select SYS_THUMB_BUILD
534bc70e 582 select CMD_POWEROFF
7842b6a9 583 select SYS_ARCH_TIMER
d56b4b19 584 imply CMD_MTDPARTS
46f9ef18 585 imply FIT
15dc63d6 586 imply CMD_SAVES
dd84058d 587
a93fbf4a
MY
588config ARCH_OMAP2PLUS
589 bool "TI OMAP2+"
590 select CPU_V7
0680f1b1 591 select SPL_BOARD_INIT if SPL
ff6c3125 592 select SPL_STACK_R if SPL
a93fbf4a
MY
593 select SUPPORT_SPL
594 imply FIT
595
bfcef28a
BG
596config ARCH_MESON
597 bool "Amlogic Meson"
7325f6cf 598 imply DISTRO_DEFAULTS
bfcef28a
BG
599 help
600 Support for the Meson SoC family developed by Amlogic Inc.,
601 targeted at media players and tablet computers. We currently
602 support the S905 (GXBaby) 64-bit SoC.
603
7a7391fd
PF
604config ARCH_MX8M
605 bool "NXP i.MX8M platform"
606 select ARM64
607 select DM
608 select SUPPORT_SPL
609
c5343d4e
SA
610config ARCH_MX23
611 bool "NXP i.MX23 family"
612 select CPU_ARM926EJS
613 select PL011_SERIAL
614 select SUPPORT_SPL
615
07df697e
FE
616config ARCH_MX25
617 bool "NXP MX25"
618 select CPU_ARM926EJS
8bbff6a7 619 imply MXC_GPIO
07df697e 620
25c5b4e1
SA
621config ARCH_MX28
622 bool "NXP i.MX28 family"
623 select CPU_ARM926EJS
624 select PL011_SERIAL
625 select SUPPORT_SPL
626
e90a08da
PF
627config ARCH_MX7ULP
628 bool "NXP MX7ULP"
629 select CPU_V7
630 select ROM_UNIFIED_SECTIONS
8bbff6a7 631 imply MXC_GPIO
e90a08da 632
1a8150d4
AA
633config ARCH_MX7
634 bool "Freescale MX7"
635 select CPU_V7
2c2e2c9e
YS
636 select SYS_FSL_HAS_SEC if SECURE_BOOT
637 select SYS_FSL_SEC_COMPAT_4
90b80386 638 select SYS_FSL_SEC_LE
a5d67547 639 select BOARD_EARLY_INIT_F
4585601a 640 select ARCH_MISC_INIT
8bbff6a7 641 imply MXC_GPIO
1a8150d4 642
89ebc821
BB
643config ARCH_MX6
644 bool "Freescale MX6"
645 select CPU_V7
2c2e2c9e
YS
646 select SYS_FSL_HAS_SEC if SECURE_BOOT
647 select SYS_FSL_SEC_COMPAT_4
90b80386 648 select SYS_FSL_SEC_LE
3a649407 649 select SYS_THUMB_BUILD if SPL
8bbff6a7 650 imply MXC_GPIO
89ebc821 651
b529993e
PT
652if ARCH_MX6
653config SPL_LDSCRIPT
654 default "arch/arm/mach-omap2/u-boot-spl.lds"
655endif
656
424ee3d1
AR
657config ARCH_MX5
658 bool "Freescale MX5"
659 select CPU_V7
a5d67547 660 select BOARD_EARLY_INIT_F
8bbff6a7 661 imply MXC_GPIO
424ee3d1 662
32f11829
TT
663config ARCH_QEMU
664 bool "QEMU Virtual Platform"
32f11829
TT
665 select DM
666 select DM_SERIAL
667 select OF_CONTROL
cf2c7784 668 select PL01X_SERIAL
32f11829 669
1cc95f6e 670config ARCH_RMOBILE
f40b9898 671 bool "Renesas ARM SoCs"
1cc95f6e
NI
672 select DM
673 select DM_SERIAL
a5d67547 674 select BOARD_EARLY_INIT_F
91d27a17 675 imply FAT_WRITE
3a649407 676 imply SYS_THUMB_BUILD
dd84058d 677
9702ec00
EP
678config TARGET_S32V234EVB
679 bool "Support s32v234evb"
680 select ARM64
c01e4a1a 681 select SYS_FSL_ERRATUM_ESDHC111
9702ec00 682
08592136
MK
683config ARCH_SNAPDRAGON
684 bool "Qualcomm Snapdragon SoCs"
685 select ARM64
686 select DM
687 select DM_GPIO
688 select DM_SERIAL
689 select SPMI
690 select OF_CONTROL
691 select OF_SEPARATE
692
7865f4b0
MY
693config ARCH_SOCFPGA
694 bool "Altera SOCFPGA family"
2e07c249 695 select CPU_V7
02627356 696 select SUPPORT_SPL
dfd3dff5
MV
697 select OF_CONTROL
698 select SPL_OF_CONTROL
1d9aa3e5 699 select DM
beee6a30 700 select ENABLE_ARM_SOC_BOOT0_HOOK
a421192f 701 select ARCH_EARLY_INIT_R
4585601a 702 select ARCH_MISC_INIT
3a649407 703 select SYS_THUMB_BUILD
d56b4b19 704 imply CMD_MTDPARTS
221a949e 705 imply CRC32_VERIFY
fef4a545
SG
706 imply DM_SPI
707 imply DM_SPI_FLASH
91d27a17 708 imply FAT_WRITE
fef4a545
SG
709 imply HW_WATCHDOG
710 imply SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
dd84058d 711
2c7e3b90
IC
712config ARCH_SUNXI
713 bool "Support sunxi (Allwinner) SoCs"
d6a0c78a 714 select BINMAN
88bb800d 715 select CMD_GPIO
0878a8a7 716 select CMD_MMC if MMC
2997ee50 717 select CMD_USB if DISTRO_DEFAULTS
b6006baf 718 select DM
45368827 719 select DM_ETH
211d57a4
HG
720 select DM_GPIO
721 select DM_KEYBOARD
45368827 722 select DM_SERIAL
2997ee50 723 select DM_USB if DISTRO_DEFAULTS
d75111a7 724 select OF_BOARD_SETUP
b6006baf
HG
725 select OF_CONTROL
726 select OF_SEPARATE
6f6b7cfa 727 select SPECIFY_CONSOLE_INDEX
ab43de80
TR
728 select SPL_STACK_R if SPL
729 select SPL_SYS_MALLOC_SIMPLE if SPL
6edf6a21 730 select SYS_NS16550
3a649407 731 select SPL_SYS_THUMB_BUILD if !ARM64
ce2e44d8 732 select SYS_THUMB_BUILD if !ARM64
2997ee50
YM
733 select USB if DISTRO_DEFAULTS
734 select USB_STORAGE if DISTRO_DEFAULTS
735 select USB_KEYBOARD if DISTRO_DEFAULTS
8c7d2296 736 select USE_TINY_PRINTF
a12fb0e3 737 imply CMD_GPT
7325f6cf 738 imply DISTRO_DEFAULTS
91d27a17 739 imply FAT_WRITE
eff264d7 740 imply OF_LIBFDT_OVERLAY
af83a604
MY
741 imply PRE_CONSOLE_BUFFER
742 imply SPL_GPIO_SUPPORT
743 imply SPL_LIBCOMMON_SUPPORT
744 imply SPL_LIBDISK_SUPPORT
745 imply SPL_LIBGENERIC_SUPPORT
4aa2ba3a 746 imply SPL_MMC_SUPPORT if MMC
af83a604
MY
747 imply SPL_POWER_SUPPORT
748 imply SPL_SERIAL_SUPPORT
654b02b1 749 imply USB_GADGET
8ebe4f42 750
7966b437
SA
751config ARCH_VF610
752 bool "Freescale Vybrid"
e7b860fa 753 select CPU_V7
c01e4a1a 754 select SYS_FSL_ERRATUM_ESDHC111
d56b4b19 755 imply CMD_MTDPARTS
5bbc265b 756 imply NAND
e7b860fa 757
5ca269a4 758config ARCH_ZYNQ
b8d4497f 759 bool "Xilinx Zynq based platform"
e5ec4815 760 select BOARD_LATE_INIT
2e07c249 761 select CPU_V7
02627356 762 select SUPPORT_SPL
d065cfd9 763 select OF_CONTROL
0680f1b1 764 select SPL_BOARD_INIT if SPL
e6cc3b25 765 select BOARD_EARLY_INIT_F if WDT
eb04ab34 766 select SPL_OF_CONTROL if SPL
8981f05c 767 select DM
c4a142f4 768 select DM_ETH if NET
eb04ab34 769 select SPL_DM if SPL
c4a142f4 770 select DM_MMC if MMC
9f7a4502 771 select DM_SPI
42800ffa 772 select DM_SERIAL
9f7a4502 773 select DM_SPI_FLASH
eb04ab34 774 select SPL_SEPARATE_BSS if SPL
dec49e86 775 select DM_USB if USB
781745bd 776 select CLK
578d95e9 777 select SPL_CLK if SPL
781745bd 778 select CLK_ZYNQ
f1b1f770 779 select SPI
d315628e 780 imply CMD_CLK
91d27a17 781 imply FAT_WRITE
72c3033f 782 imply CMD_SPL
dd84058d 783
0b54a9dd 784config ARCH_ZYNQMP
b8d4497f 785 bool "Xilinx ZynqMP based platform"
84c7204b 786 select ARM64
e5ec4815 787 select BOARD_LATE_INIT
c2490bf5
MS
788 select DM
789 select OF_CONTROL
790 select DM_SERIAL
e6a9ed04 791 select SUPPORT_SPL
1f29738a 792 select CLK
0680f1b1 793 select SPL_BOARD_INIT if SPL
2f03968e 794 select SPL_CLK if SPL
dec49e86 795 select DM_USB if USB
91d27a17 796 imply FAT_WRITE
84c7204b 797
ddd960e6
MY
798config TEGRA
799 bool "NVIDIA Tegra"
7325f6cf 800 imply DISTRO_DEFAULTS
91d27a17 801 imply FAT_WRITE
dd84058d 802
f91afc4d 803config TARGET_VEXPRESS64_AEMV8A
dd84058d 804 bool "Support vexpress_aemv8a"
016a954e 805 select ARM64
cf2c7784 806 select PL01X_SERIAL
dd84058d 807
f91afc4d
LW
808config TARGET_VEXPRESS64_BASE_FVP
809 bool "Support Versatile Express ARMv8a FVP BASE model"
810 select ARM64
811 select SEMIHOSTING
cf2c7784 812 select PL01X_SERIAL
f91afc4d 813
fc04b923
RH
814config TARGET_VEXPRESS64_BASE_FVP_DRAM
815 bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
816 select ARM64
cf2c7784 817 select PL01X_SERIAL
fc04b923
RH
818 help
819 This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
820 the default config to allow the user to load the images directly into
821 DRAM using model parameters rather than by using semi-hosting to load
822 the files from the host filesystem.
823
ffc10373
LW
824config TARGET_VEXPRESS64_JUNO
825 bool "Support Versatile Express Juno Development Platform"
826 select ARM64
cf2c7784 827 select PL01X_SERIAL
ffc10373 828
44937214
PK
829config TARGET_LS2080A_EMU
830 bool "Support ls2080a_emu"
fb2bf8c2 831 select ARCH_LS2080A
016a954e 832 select ARM64
23b5877c 833 select ARMV8_MULTIENTRY
4585601a 834 select ARCH_MISC_INIT
44937214
PK
835 help
836 Support for Freescale LS2080A_EMU platform
837 The LS2080A Development System (EMULATOR) is a pre silicon
838 development platform that supports the QorIQ LS2080A
839 Layerscape Architecture processor.
dd84058d 840
44937214
PK
841config TARGET_LS2080A_SIMU
842 bool "Support ls2080a_simu"
fb2bf8c2 843 select ARCH_LS2080A
016a954e 844 select ARM64
23b5877c 845 select ARMV8_MULTIENTRY
4585601a 846 select ARCH_MISC_INIT
44937214
PK
847 help
848 Support for Freescale LS2080A_SIMU platform
849 The LS2080A Development System (QDS) is a pre silicon
850 development platform that supports the QorIQ LS2080A
851 Layerscape Architecture processor.
dd84058d 852
7769776a
AK
853config TARGET_LS1088AQDS
854 bool "Support ls1088aqds"
855 select ARCH_LS1088A
856 select ARM64
857 select ARMV8_MULTIENTRY
858 select ARCH_MISC_INIT
859 select BOARD_LATE_INIT
91fded62 860 select SUPPORT_SPL
7769776a
AK
861 help
862 Support for NXP LS1088AQDS platform
863 The LS1088A Development System (QDS) is a high-performance
864 development platform that supports the QorIQ LS1088A
865 Layerscape Architecture processor.
866
44937214
PK
867config TARGET_LS2080AQDS
868 bool "Support ls2080aqds"
fb2bf8c2 869 select ARCH_LS2080A
7288c2c2
YS
870 select ARM64
871 select ARMV8_MULTIENTRY
e5ec4815 872 select BOARD_LATE_INIT
b2d5ac59 873 select SUPPORT_SPL
4585601a 874 select ARCH_MISC_INIT
fedb428c 875 imply SCSI
9fd95ef0 876 imply SCSI_AHCI
7288c2c2 877 help
44937214
PK
878 Support for Freescale LS2080AQDS platform
879 The LS2080A Development System (QDS) is a high-performance
880 development platform that supports the QorIQ LS2080A
7288c2c2
YS
881 Layerscape Architecture processor.
882
44937214
PK
883config TARGET_LS2080ARDB
884 bool "Support ls2080ardb"
fb2bf8c2 885 select ARCH_LS2080A
e2b65ea9
YS
886 select ARM64
887 select ARMV8_MULTIENTRY
e5ec4815 888 select BOARD_LATE_INIT
32eda7cc 889 select SUPPORT_SPL
4585601a 890 select ARCH_MISC_INIT
fedb428c 891 imply SCSI
9fd95ef0 892 imply SCSI_AHCI
e2b65ea9 893 help
44937214
PK
894 Support for Freescale LS2080ARDB platform.
895 The LS2080A Reference design board (RDB) is a high-performance
896 development platform that supports the QorIQ LS2080A
e2b65ea9
YS
897 Layerscape Architecture processor.
898
3049a583
PJ
899config TARGET_LS2081ARDB
900 bool "Support ls2081ardb"
901 select ARCH_LS2080A
902 select ARM64
903 select ARMV8_MULTIENTRY
904 select BOARD_LATE_INIT
905 select SUPPORT_SPL
906 select ARCH_MISC_INIT
907 help
908 Support for Freescale LS2081ARDB platform.
909 The LS2081A Reference design board (RDB) is a high-performance
910 development platform that supports the QorIQ LS2081A/LS2041A
911 Layerscape Architecture processor.
912
11ac2363
PG
913config TARGET_HIKEY
914 bool "Support HiKey 96boards Consumer Edition Platform"
915 select ARM64
efd7b60a
PG
916 select DM
917 select DM_GPIO
9c71bcdc 918 select DM_SERIAL
cd593ed6 919 select OF_CONTROL
cf2c7784 920 select PL01X_SERIAL
6f6b7cfa 921 select SPECIFY_CONSOLE_INDEX
11ac2363
PG
922 help
923 Support for HiKey 96boards platform. It features a HI6220
924 SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
925
d754254f
JRO
926config TARGET_POPLAR
927 bool "Support Poplar 96boards Enterprise Edition Platform"
928 select ARM64
929 select DM
930 select OF_CONTROL
931 select DM_SERIAL
932 select DM_USB
cf2c7784 933 select PL01X_SERIAL
d754254f
JRO
934 help
935 Support for Poplar 96boards EE platform. It features a HI3798cv200
936 SoC, with 4xA53 CPU, 1GB RAM and the high performance Mali T720 GPU
937 making it capable of running any commercial set-top solution based on
938 Linux or Android.
939
9d044fcb
PK
940config TARGET_LS1012AQDS
941 bool "Support ls1012aqds"
9533acf3 942 select ARCH_LS1012A
9d044fcb 943 select ARM64
e5ec4815 944 select BOARD_LATE_INIT
9d044fcb
PK
945 help
946 Support for Freescale LS1012AQDS platform.
947 The LS1012A Development System (QDS) is a high-performance
948 development platform that supports the QorIQ LS1012A
949 Layerscape Architecture processor.
950
3b6e3898
PK
951config TARGET_LS1012ARDB
952 bool "Support ls1012ardb"
9533acf3 953 select ARCH_LS1012A
3b6e3898 954 select ARM64
e5ec4815 955 select BOARD_LATE_INIT
fedb428c 956 imply SCSI
9fd95ef0 957 imply SCSI_AHCI
3b6e3898
PK
958 help
959 Support for Freescale LS1012ARDB platform.
960 The LS1012A Reference design board (RDB) is a high-performance
961 development platform that supports the QorIQ LS1012A
962 Layerscape Architecture processor.
963
b0ce187b
BU
964config TARGET_LS1012A2G5RDB
965 bool "Support ls1012a2g5rdb"
966 select ARCH_LS1012A
967 select ARM64
968 select BOARD_LATE_INIT
969 imply SCSI
970 help
971 Support for Freescale LS1012A2G5RDB platform.
972 The LS1012A 2G5 Reference design board (RDB) is a high-performance
973 development platform that supports the QorIQ LS1012A
974 Layerscape Architecture processor.
975
ff78aa2b
PK
976config TARGET_LS1012AFRDM
977 bool "Support ls1012afrdm"
9533acf3 978 select ARCH_LS1012A
ff78aa2b
PK
979 select ARM64
980 help
981 Support for Freescale LS1012AFRDM platform.
982 The LS1012A Freedom board (FRDM) is a high-performance
983 development platform that supports the QorIQ LS1012A
984 Layerscape Architecture processor.
985
e84a324b
AK
986config TARGET_LS1088ARDB
987 bool "Support ls1088ardb"
988 select ARCH_LS1088A
989 select ARM64
990 select ARMV8_MULTIENTRY
991 select ARCH_MISC_INIT
992 select BOARD_LATE_INIT
099f4093 993 select SUPPORT_SPL
e84a324b
AK
994 help
995 Support for NXP LS1088ARDB platform.
996 The LS1088A Reference design board (RDB) is a high-performance
997 development platform that supports the QorIQ LS1088A
998 Layerscape Architecture processor.
999
550e3dc0 1000config TARGET_LS1021AQDS
0de15707 1001 bool "Support ls1021aqds"
e5ec4815 1002 select BOARD_LATE_INIT
2e07c249 1003 select CPU_V7
adee1d4c
HZ
1004 select CPU_V7_HAS_NONSEC
1005 select CPU_V7_HAS_VIRT
50f0c663 1006 select SUPPORT_SPL
0a37cf8f 1007 select ARCH_LS1021A
217f92bb 1008 select ARCH_SUPPORT_PSCI
5e8bd7e1 1009 select LS1_DEEP_SLEEP
d26e34c4 1010 select SYS_FSL_DDR
a5d67547 1011 select BOARD_EARLY_INIT_F
fedb428c 1012 imply SCSI
217f92bb 1013
c8a7d9da 1014config TARGET_LS1021ATWR
0de15707 1015 bool "Support ls1021atwr"
e5ec4815 1016 select BOARD_LATE_INIT
2e07c249 1017 select CPU_V7
adee1d4c
HZ
1018 select CPU_V7_HAS_NONSEC
1019 select CPU_V7_HAS_VIRT
50f0c663 1020 select SUPPORT_SPL
0a37cf8f 1021 select ARCH_LS1021A
217f92bb 1022 select ARCH_SUPPORT_PSCI
5e8bd7e1 1023 select LS1_DEEP_SLEEP
a5d67547 1024 select BOARD_EARLY_INIT_F
fedb428c 1025 imply SCSI
c8a7d9da 1026
20c700f8
FL
1027config TARGET_LS1021AIOT
1028 bool "Support ls1021aiot"
e5ec4815 1029 select BOARD_LATE_INIT
20c700f8
FL
1030 select CPU_V7
1031 select CPU_V7_HAS_NONSEC
1032 select CPU_V7_HAS_VIRT
1033 select SUPPORT_SPL
1034 select ARCH_LS1021A
1035 select ARCH_SUPPORT_PSCI
fedb428c 1036 imply SCSI
20c700f8
FL
1037 help
1038 Support for Freescale LS1021AIOT platform.
1039 The LS1021A Freescale board (IOT) is a high-performance
1040 development platform that supports the QorIQ LS1021A
1041 Layerscape Architecture processor.
1042
02b5d2ed
SX
1043config TARGET_LS1043AQDS
1044 bool "Support ls1043aqds"
0a37cf8f 1045 select ARCH_LS1043A
02b5d2ed
SX
1046 select ARM64
1047 select ARMV8_MULTIENTRY
e5ec4815 1048 select BOARD_LATE_INIT
02b5d2ed 1049 select SUPPORT_SPL
a5d67547 1050 select BOARD_EARLY_INIT_F
fedb428c 1051 imply SCSI
02b5d2ed
SX
1052 help
1053 Support for Freescale LS1043AQDS platform.
1054
f3a8e2b7
MH
1055config TARGET_LS1043ARDB
1056 bool "Support ls1043ardb"
0a37cf8f 1057 select ARCH_LS1043A
f3a8e2b7 1058 select ARM64
831c068f 1059 select ARMV8_MULTIENTRY
e5ec4815 1060 select BOARD_LATE_INIT
3ad44729 1061 select SUPPORT_SPL
a5d67547 1062 select BOARD_EARLY_INIT_F
fedb428c 1063 imply SCSI
f3a8e2b7
MH
1064 help
1065 Support for Freescale LS1043ARDB platform.
1066
126fe70d
SX
1067config TARGET_LS1046AQDS
1068 bool "Support ls1046aqds"
da28e58a 1069 select ARCH_LS1046A
126fe70d
SX
1070 select ARM64
1071 select ARMV8_MULTIENTRY
e5ec4815 1072 select BOARD_LATE_INIT
126fe70d
SX
1073 select SUPPORT_SPL
1074 select DM_SPI_FLASH if DM_SPI
a5d67547 1075 select BOARD_EARLY_INIT_F
fedb428c 1076 imply SCSI
126fe70d
SX
1077 help
1078 Support for Freescale LS1046AQDS platform.
1079 The LS1046A Development System (QDS) is a high-performance
1080 development platform that supports the QorIQ LS1046A
1081 Layerscape Architecture processor.
1082
dd02936f
MH
1083config TARGET_LS1046ARDB
1084 bool "Support ls1046ardb"
da28e58a 1085 select ARCH_LS1046A
dd02936f
MH
1086 select ARM64
1087 select ARMV8_MULTIENTRY
e5ec4815 1088 select BOARD_LATE_INIT
dd02936f
MH
1089 select SUPPORT_SPL
1090 select DM_SPI_FLASH if DM_SPI
dccef2ec 1091 select POWER_MC34VR500
a5d67547 1092 select BOARD_EARLY_INIT_F
fedb428c 1093 imply SCSI
dd02936f
MH
1094 help
1095 Support for Freescale LS1046ARDB platform.
1096 The LS1046A Reference Design Board (RDB) is a high-performance
1097 development platform that supports the QorIQ LS1046A
1098 Layerscape Architecture processor.
1099
dd84058d
MY
1100config TARGET_H2200
1101 bool "Support h2200"
2e07c249 1102 select CPU_PXA
dd84058d 1103
f19eb154
VK
1104config TARGET_ZIPITZ2
1105 bool "Support zipitz2"
1106 select CPU_PXA
1107
dd84058d
MY
1108config TARGET_COLIBRI_PXA270
1109 bool "Support colibri_pxa270"
2e07c249 1110 select CPU_PXA
dd84058d 1111
66cba041 1112config ARCH_UNIPHIER
b6ef3a3f 1113 bool "Socionext UniPhier SoCs"
e5ec4815 1114 select BOARD_LATE_INIT
4e819950 1115 select DM
b800cbde 1116 select DM_GPIO
4e819950 1117 select DM_I2C
4aceb3f8 1118 select DM_MMC
4fb96c48 1119 select DM_RESET
b5550e49 1120 select DM_SERIAL
47a79f65 1121 select DM_USB
b5550e49
MY
1122 select OF_CONTROL
1123 select OF_LIBFDT
27350c92 1124 select PINCTRL
0680f1b1 1125 select SPL_BOARD_INIT if SPL
561ca649
MY
1126 select SPL_DM if SPL
1127 select SPL_LIBCOMMON_SUPPORT if SPL
1128 select SPL_LIBGENERIC_SUPPORT if SPL
1129 select SPL_OF_CONTROL if SPL
1130 select SPL_PINCTRL if SPL
b5550e49 1131 select SUPPORT_SPL
91d27a17 1132 imply FAT_WRITE
b6ef3a3f
MY
1133 help
1134 Support for UniPhier SoC family developed by Socionext Inc.
1135 (formerly, System LSI Business Division of Panasonic Corporation)
66cba041 1136
0a61ee88 1137config STM32
2514c2d0 1138 bool "Support STMicroelectronics STM32 MCU with cortex M"
ed09a554 1139 select CPU_V7M
66562414
KL
1140 select DM
1141 select DM_SERIAL
3a649407 1142 select SYS_THUMB_BUILD
ed09a554 1143
94e9a4ef
PC
1144config ARCH_STI
1145 bool "Support STMicrolectronics SoCs"
1146 select CPU_V7
214a17e6
PC
1147 select DM
1148 select DM_SERIAL
eee20f81
PC
1149 select BLK
1150 select DM_MMC
584861ff 1151 select DM_RESET
94e9a4ef
PC
1152 help
1153 Support for STMicroelectronics STiH407/10 SoC family.
1154 This SoC is used on Linaro 96Board STiH410-B2260
1155
2514c2d0
PD
1156config ARCH_STM32MP
1157 bool "Support STMicroelectronics STM32MP Socs with cortex A"
08772f6e 1158 select ARCH_MISC_INIT
2514c2d0
PD
1159 select BOARD_LATE_INIT
1160 select CLK
1161 select DM
1162 select DM_GPIO
1163 select DM_RESET
1164 select DM_SERIAL
1165 select OF_CONTROL
1166 select OF_LIBFDT
1167 select PINCTRL
1168 select REGMAP
1169 select SUPPORT_SPL
1170 select SYSCON
86634a93 1171 select SYSRESET
2514c2d0
PD
1172 select SYS_THUMB_BUILD
1173 help
1174 Support for STM32MP SoC family developed by STMicroelectronics,
1175 MPUs based on ARM cortex A core
1176 U-BOOT is running in DDR and SPL support is the unsecure First Stage
1177 BootLoader (FSBL)
1178
2444dae5
SG
1179config ARCH_ROCKCHIP
1180 bool "Support Rockchip SoCs"
2444dae5 1181 select OF_CONTROL
aa15038c 1182 select BLK
2444dae5 1183 select DM
a381bcf5 1184 select SPL_DM if SPL
aa15038c 1185 select SYS_MALLOC_F
3a649407 1186 select SYS_THUMB_BUILD if !ARM64
a381bcf5 1187 select SPL_SYS_MALLOC_SIMPLE if SPL
aa15038c
SG
1188 select DM_GPIO
1189 select DM_I2C
1190 select DM_MMC
1191 select DM_SERIAL
1192 select DM_SPI
1193 select DM_SPI_FLASH
892742df 1194 select DM_USB if USB
8d29e3a4
KY
1195 select DM_PWM
1196 select DM_REGULATOR
14ad6eb2 1197 select ENABLE_ARM_SOC_BOOT0_HOOK
f1b1f770 1198 select SPI
48f6232e 1199 imply CMD_FASTBOOT
7325f6cf 1200 imply DISTRO_DEFAULTS
48f6232e 1201 imply FASTBOOT
91d27a17 1202 imply FAT_WRITE
48f6232e 1203 imply USB_FUNCTION_FASTBOOT
0532ceef 1204 imply SPL_SYSRESET
e19fa89c 1205 imply TPL_SYSRESET
8e8bcccc
PT
1206 imply ADC
1207 imply SARADC_ROCKCHIP
c3c0331d 1208 imply SYS_NS16550
2444dae5 1209
746f985a
ST
1210config TARGET_THUNDERX_88XX
1211 bool "Support ThunderX 88xx"
b4ba1693 1212 select ARM64
746f985a 1213 select OF_CONTROL
067716ba 1214 select SYS_CACHE_SHIFT_7
cf2c7784 1215 select PL01X_SERIAL
746f985a 1216
4697abea 1217config ARCH_ASPEED
1218 bool "Support Aspeed SoCs"
1219 select OF_CONTROL
1220 select DM
1221
dd84058d
MY
1222endchoice
1223
5fbed8f2
AD
1224config TI_SECURE_DEVICE
1225 bool "HS Device Type Support"
1226 depends on ARCH_KEYSTONE || ARCH_OMAP2PLUS
1227 help
1228 If a high secure (HS) device type is being used, this config
1229 must be set. This option impacts various aspects of the
1230 build system (to create signed boot images that can be
1231 authenticated) and the code. See the doc/README.ti-secure
1232 file for further details.
1233
4697abea 1234source "arch/arm/mach-aspeed/Kconfig"
1235
4614b891
MY
1236source "arch/arm/mach-at91/Kconfig"
1237
ddf6bd48 1238source "arch/arm/mach-bcm283x/Kconfig"
3491ba63 1239
ddf6bd48 1240source "arch/arm/mach-davinci/Kconfig"
34e609ca 1241
77b55e8c 1242source "arch/arm/mach-exynos/Kconfig"
72df68cc 1243
72a8ff4b 1244source "arch/arm/mach-highbank/Kconfig"
ef2b694c 1245
5cbbd9bd
MY
1246source "arch/arm/mach-integrator/Kconfig"
1247
39a72345 1248source "arch/arm/mach-keystone/Kconfig"
c338f09e 1249
56f86e39 1250source "arch/arm/mach-kirkwood/Kconfig"
47539e23 1251
c3d89140
SR
1252source "arch/arm/mach-mvebu/Kconfig"
1253
0a37cf8f
YS
1254source "arch/arm/cpu/armv7/ls102xa/Kconfig"
1255
07df697e
FE
1256source "arch/arm/mach-imx/mx2/Kconfig"
1257
7a7391fd
PF
1258source "arch/arm/mach-imx/mx5/Kconfig"
1259
1260source "arch/arm/mach-imx/mx6/Kconfig"
e90a08da 1261
552a848e 1262source "arch/arm/mach-imx/mx7/Kconfig"
1a8150d4 1263
7a7391fd 1264source "arch/arm/mach-imx/mx7ulp/Kconfig"
89ebc821 1265
7a7391fd 1266source "arch/arm/mach-imx/mx8m/Kconfig"
424ee3d1 1267
c5343d4e
SA
1268source "arch/arm/mach-imx/mxs/Kconfig"
1269
983e3700 1270source "arch/arm/mach-omap2/Kconfig"
6384726d 1271
da28e58a
YS
1272source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
1273
3e93b4e6 1274source "arch/arm/mach-orion5x/Kconfig"
22f2be7a 1275
badbb63c 1276source "arch/arm/mach-rmobile/Kconfig"
f40b9898 1277
bfcef28a
BG
1278source "arch/arm/mach-meson/Kconfig"
1279
32f11829
TT
1280source "arch/arm/mach-qemu/Kconfig"
1281
2444dae5
SG
1282source "arch/arm/mach-rockchip/Kconfig"
1283
225f5eec 1284source "arch/arm/mach-s5pc1xx/Kconfig"
311757be 1285
08592136
MK
1286source "arch/arm/mach-snapdragon/Kconfig"
1287
7865f4b0
MY
1288source "arch/arm/mach-socfpga/Kconfig"
1289
94e9a4ef
PC
1290source "arch/arm/mach-sti/Kconfig"
1291
0a61ee88
VM
1292source "arch/arm/mach-stm32/Kconfig"
1293
2514c2d0
PD
1294source "arch/arm/mach-stm32mp/Kconfig"
1295
3abfd887
MY
1296source "arch/arm/mach-sunxi/Kconfig"
1297
09f455dc 1298source "arch/arm/mach-tegra/Kconfig"
ddd960e6 1299
4c425570 1300source "arch/arm/mach-uniphier/Kconfig"
66cba041 1301
7966b437
SA
1302source "arch/arm/cpu/armv7/vf610/Kconfig"
1303
0107f240 1304source "arch/arm/mach-zynq/Kconfig"
ddd960e6 1305
ea624e19
HG
1306source "arch/arm/cpu/armv7/Kconfig"
1307
75580007
SDPP
1308source "arch/arm/cpu/armv8/zynqmp/Kconfig"
1309
23b5877c
LW
1310source "arch/arm/cpu/armv8/Kconfig"
1311
552a848e 1312source "arch/arm/mach-imx/Kconfig"
a05a6045 1313
d8ccbe93 1314source "board/bosch/shc/Kconfig"
dd84058d 1315source "board/CarMediaLab/flea3/Kconfig"
dd84058d 1316source "board/Marvell/aspenite/Kconfig"
dd84058d 1317source "board/Marvell/gplugd/Kconfig"
dd84058d 1318source "board/armadeus/apf27/Kconfig"
dd84058d
MY
1319source "board/armltd/vexpress/Kconfig"
1320source "board/armltd/vexpress64/Kconfig"
43486e4c 1321source "board/broadcom/bcm23550_w1d/Kconfig"
dd84058d 1322source "board/broadcom/bcm28155_ap/Kconfig"
abb1678c
SR
1323source "board/broadcom/bcmcygnus/Kconfig"
1324source "board/broadcom/bcmnsp/Kconfig"
274bced8 1325source "board/broadcom/bcmns2/Kconfig"
746f985a 1326source "board/cavium/thunderx/Kconfig"
dd84058d 1327source "board/cirrus/edb93xx/Kconfig"
85ab0452 1328source "board/eets/pdu001/Kconfig"
44937214
PK
1329source "board/freescale/ls2080a/Kconfig"
1330source "board/freescale/ls2080aqds/Kconfig"
1331source "board/freescale/ls2080ardb/Kconfig"
e84a324b 1332source "board/freescale/ls1088a/Kconfig"
550e3dc0 1333source "board/freescale/ls1021aqds/Kconfig"
02b5d2ed 1334source "board/freescale/ls1043aqds/Kconfig"
c8a7d9da 1335source "board/freescale/ls1021atwr/Kconfig"
20c700f8 1336source "board/freescale/ls1021aiot/Kconfig"
126fe70d 1337source "board/freescale/ls1046aqds/Kconfig"
f3a8e2b7 1338source "board/freescale/ls1043ardb/Kconfig"
dd02936f 1339source "board/freescale/ls1046ardb/Kconfig"
9d044fcb 1340source "board/freescale/ls1012aqds/Kconfig"
3b6e3898 1341source "board/freescale/ls1012ardb/Kconfig"
ff78aa2b 1342source "board/freescale/ls1012afrdm/Kconfig"
dd84058d
MY
1343source "board/freescale/mx31pdk/Kconfig"
1344source "board/freescale/mx35pdk/Kconfig"
9702ec00 1345source "board/freescale/s32v234evb/Kconfig"
60083261 1346source "board/gdsys/a38x/Kconfig"
ab38bf6a 1347source "board/grinn/chiliboard/Kconfig"
dd84058d
MY
1348source "board/gumstix/pepper/Kconfig"
1349source "board/h2200/Kconfig"
345243ed 1350source "board/hisilicon/hikey/Kconfig"
d754254f 1351source "board/hisilicon/poplar/Kconfig"
a96c08f5 1352source "board/isee/igep003x/Kconfig"
dd84058d 1353source "board/phytec/pcm051/Kconfig"
dd84058d 1354source "board/silica/pengwyn/Kconfig"
dd84058d
MY
1355source "board/spear/spear300/Kconfig"
1356source "board/spear/spear310/Kconfig"
1357source "board/spear/spear320/Kconfig"
1358source "board/spear/spear600/Kconfig"
1359source "board/spear/x600/Kconfig"
9fa32b12 1360source "board/st/stv0991/Kconfig"
9d1b2987 1361source "board/tcl/sl50/Kconfig"
a2bc4321 1362source "board/birdland/bav335x/Kconfig"
dd84058d 1363source "board/timll/devkit3250/Kconfig"
dd84058d 1364source "board/toradex/colibri_pxa270/Kconfig"
6ce89324 1365source "board/vscom/baltos/Kconfig"
dd84058d 1366source "board/woodburn/Kconfig"
412ae53a 1367source "board/work-microwave/work_92105/Kconfig"
c436bf92 1368source "board/xilinx/zynqmp/Kconfig"
f19eb154 1369source "board/zipitz2/Kconfig"
dd84058d 1370
51b17d49
MY
1371source "arch/arm/Kconfig.debug"
1372
dd84058d 1373endmenu
b529993e
PT
1374
1375config SPL_LDSCRIPT
07a8f79e 1376 default "arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" if (ARCH_MX23 || ARCH_MX28) && !SPL_FRAMEWORK
b529993e
PT
1377 default "arch/arm/cpu/arm1136/u-boot-spl.lds" if CPU_ARM1136
1378 default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64
1379
1380