]> Git Repo - u-boot.git/blame - arch/arm/Kconfig
watchdog: Add reset support for OcteonTX / TX2
[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"
f071cdab 15 select INIT_SP_RELATIVE
49e93875
SW
16 help
17 U-Boot expects to be linked to a specific hard-coded address, and to
18 be loaded to and run from that address. This option lifts that
19 restriction, thus allowing the code to be loaded to and executed
20 from almost any address. This logic relies on the relocation
e852b30b 21 information that is embedded in the binary to support U-Boot
49e93875 22 relocating itself to the top-of-RAM later during execution.
e6c90448 23
382de4a7
MY
24config INIT_SP_RELATIVE
25 bool "Specify the early stack pointer relative to the .bss section"
e6c90448
SW
26 help
27 U-Boot typically uses a hard-coded value for the stack pointer
382de4a7 28 before relocation. Enable this option to instead calculate the
e6c90448 29 initial SP at run-time. This is useful to avoid hard-coding addresses
e852b30b 30 into U-Boot, so that it can be loaded and executed at arbitrary
382de4a7
MY
31 addresses and thus avoid using arbitrary addresses at runtime.
32
33 If this option is enabled, the early stack pointer is set to
34 &_bss_start with a offset value added. The offset is specified by
35 SYS_INIT_SP_BSS_OFFSET.
36
37config SYS_INIT_SP_BSS_OFFSET
38 int "Early stack offset from the .bss base address"
39 depends on INIT_SP_RELATIVE
40 default 524288
41 help
42 This option's value is the offset added to &_bss_start in order to
e6c90448
SW
43 calculate the stack pointer. This offset should be large enough so
44 that the early malloc region, global data (gd), and early stack usage
45 do not overlap any appended DTB.
8163faf9
SW
46
47config LINUX_KERNEL_IMAGE_HEADER
48 bool
49 help
50 Place a Linux kernel image header at the start of the U-Boot binary.
51 The format of the header is described in the Linux kernel source at
52 Documentation/arm64/booting.txt. This feature is useful since the
53 image header reports the amount of memory (BSS and similar) that
54 U-Boot needs to use, but which isn't part of the binary.
55
56if LINUX_KERNEL_IMAGE_HEADER
57config LNX_KRNL_IMG_TEXT_OFFSET_BASE
58 hex
59 help
60 The value subtracted from CONFIG_SYS_TEXT_BASE to calculate the
e852b30b 61 TEXT_OFFSET value written to the Linux kernel image header.
8163faf9 62endif
49e93875
SW
63endif
64
0bc4356d
BKRG
65config GIC_V3_ITS
66 bool "ARM GICV3 ITS"
2ae7adc6
RK
67 select REGMAP
68 select SYSCON
0bc4356d
BKRG
69 help
70 ARM GICV3 Interrupt translation service (ITS).
71 Basic support for programming locality specific peripheral
72 interrupts (LPI) configuration tables and enable LPI tables.
73 LPI configuration table can be used by u-boot or Linux.
74 ARM GICV3 has limitation, once the LPI table is enabled, LPI
75 configuration table can not be re-programmed, unless GICV3 reset.
76
49e93875
SW
77config STATIC_RELA
78 bool
79 default y if ARM64 && !POSITION_INDEPENDENT
80
37217f0e
LV
81config DMA_ADDR_T_64BIT
82 bool
83 default y if ARM64
84
2e07c249 85config HAS_VBAR
e009bfa4 86 bool
2e07c249 87
62e92077 88config HAS_THUMB2
e009bfa4 89 bool
62e92077 90
111a6af9
PE
91# Used for compatibility with asm files copied from the kernel
92config ARM_ASM_UNIFIED
93 bool
94 default y
95
96# Used for compatibility with asm files copied from the kernel
97config THUMB2_KERNEL
98 bool
99
a0aba8a2
TW
100config SYS_ICACHE_OFF
101 bool "Do not enable icache"
102 default n
103 help
104 Do not enable instruction cache in U-Boot.
105
10015025
TW
106config SPL_SYS_ICACHE_OFF
107 bool "Do not enable icache in SPL"
108 depends on SPL
109 default SYS_ICACHE_OFF
110 help
111 Do not enable instruction cache in SPL.
112
a0aba8a2
TW
113config SYS_DCACHE_OFF
114 bool "Do not enable dcache"
115 default n
116 help
117 Do not enable data cache in U-Boot.
118
10015025
TW
119config SPL_SYS_DCACHE_OFF
120 bool "Do not enable dcache in SPL"
121 depends on SPL
122 default SYS_DCACHE_OFF
123 help
124 Do not enable data cache in SPL.
125
f4bcd767
LV
126config SYS_ARM_CACHE_CP15
127 bool "CP15 based cache enabling support"
128 help
129 Select this if your processor suports enabling caches by using
130 CP15 registers.
131
7240b80e
LV
132config SYS_ARM_MMU
133 bool "MMU-based Paged Memory Management Support"
f4bcd767 134 select SYS_ARM_CACHE_CP15
7240b80e
LV
135 help
136 Select if you want MMU-based virtualised addressing space
e852b30b 137 support via paged memory management.
7240b80e 138
f2ef2043
LV
139config SYS_ARM_MPU
140 bool 'Use the ARM v7 PMSA Compliant MPU'
141 help
142 Some ARM systems without an MMU have instead a Memory Protection
143 Unit (MPU) that defines the type and permissions for regions of
144 memory.
145 If your CPU has an MPU then you should choose 'y' here unless you
146 know that you do not want to use the MPU.
147
8dda2e2f
TR
148# If set, the workarounds for these ARM errata are applied early during U-Boot
149# startup. Note that in general these options force the workarounds to be
150# applied; no CPU-type/version detection exists, unlike the similar options in
151# the Linux kernel. Do not set these options unless they apply! Also note that
e852b30b
RD
152# the following can be machine-specific errata. These do have ability to
153# provide rudimentary version and machine-specific checks, but expect no
8dda2e2f
TR
154# product checks:
155# CONFIG_ARM_ERRATA_430973
156# CONFIG_ARM_ERRATA_454179
157# CONFIG_ARM_ERRATA_621766
158# CONFIG_ARM_ERRATA_798870
159# CONFIG_ARM_ERRATA_801819
7b37a9c7 160# CONFIG_ARM_CORTEX_A8_CVE_2017_5715
c2ca3fdf 161# CONFIG_ARM_CORTEX_A15_CVE_2017_5715
7b37a9c7 162
8dda2e2f
TR
163config ARM_ERRATA_430973
164 bool
165
166config ARM_ERRATA_454179
167 bool
168
169config ARM_ERRATA_621766
170 bool
171
172config ARM_ERRATA_716044
173 bool
174
19a75b8c
SS
175config ARM_ERRATA_725233
176 bool
177
8dda2e2f
TR
178config ARM_ERRATA_742230
179 bool
180
181config ARM_ERRATA_743622
182 bool
183
184config ARM_ERRATA_751472
185 bool
186
187config ARM_ERRATA_761320
188 bool
189
190config ARM_ERRATA_773022
191 bool
192
193config ARM_ERRATA_774769
194 bool
195
196config ARM_ERRATA_794072
197 bool
198
199config ARM_ERRATA_798870
200 bool
201
202config ARM_ERRATA_801819
203 bool
204
205config ARM_ERRATA_826974
206 bool
207
208config ARM_ERRATA_828024
209 bool
210
211config ARM_ERRATA_829520
212 bool
213
214config ARM_ERRATA_833069
215 bool
216
217config ARM_ERRATA_833471
218 bool
219
11d94319 220config ARM_ERRATA_845369
6e7bdde4 221 bool
11d94319 222
8776350d
NM
223config ARM_ERRATA_852421
224 bool
225
226config ARM_ERRATA_852423
227 bool
228
ab0ab54e
AW
229config ARM_ERRATA_855873
230 bool
231
7b37a9c7
NM
232config ARM_CORTEX_A8_CVE_2017_5715
233 bool
234
c2ca3fdf
NM
235config ARM_CORTEX_A15_CVE_2017_5715
236 bool
237
2e07c249 238config CPU_ARM720T
e009bfa4 239 bool
067716ba 240 select SYS_CACHE_SHIFT_5
7240b80e 241 imply SYS_ARM_MMU
2e07c249
GS
242
243config CPU_ARM920T
e009bfa4 244 bool
067716ba 245 select SYS_CACHE_SHIFT_5
7240b80e 246 imply SYS_ARM_MMU
2e07c249
GS
247
248config CPU_ARM926EJS
e009bfa4 249 bool
067716ba 250 select SYS_CACHE_SHIFT_5
7240b80e 251 imply SYS_ARM_MMU
2e07c249
GS
252
253config CPU_ARM946ES
e009bfa4 254 bool
067716ba 255 select SYS_CACHE_SHIFT_5
7240b80e 256 imply SYS_ARM_MMU
2e07c249
GS
257
258config CPU_ARM1136
e009bfa4 259 bool
067716ba 260 select SYS_CACHE_SHIFT_5
7240b80e 261 imply SYS_ARM_MMU
2e07c249
GS
262
263config CPU_ARM1176
e009bfa4
TR
264 bool
265 select HAS_VBAR
067716ba 266 select SYS_CACHE_SHIFT_5
7240b80e 267 imply SYS_ARM_MMU
2e07c249 268
acf15001 269config CPU_V7A
e009bfa4 270 bool
e009bfa4 271 select HAS_THUMB2
5ed063d1 272 select HAS_VBAR
067716ba 273 select SYS_CACHE_SHIFT_6
7240b80e 274 imply SYS_ARM_MMU
2e07c249 275
12d8a729 276config CPU_V7M
277 bool
e009bfa4 278 select HAS_THUMB2
f2ef2043 279 select SYS_ARM_MPU
5ed063d1 280 select SYS_CACHE_SHIFT_5
ea37f0b3 281 select SYS_THUMB_BUILD
5ed063d1 282 select THUMB2_KERNEL
12d8a729 283
4bbd6b1d
MS
284config CPU_V7R
285 bool
286 select HAS_THUMB2
f2ef2043 287 select SYS_ARM_CACHE_CP15
5ed063d1
MS
288 select SYS_ARM_MPU
289 select SYS_CACHE_SHIFT_6
4bbd6b1d 290
2e07c249 291config CPU_PXA
e009bfa4 292 bool
067716ba 293 select SYS_CACHE_SHIFT_5
7240b80e 294 imply SYS_ARM_MMU
2e07c249
GS
295
296config CPU_SA1100
e009bfa4 297 bool
067716ba 298 select SYS_CACHE_SHIFT_5
7240b80e 299 imply SYS_ARM_MMU
2e07c249
GS
300
301config SYS_CPU
e009bfa4
TR
302 default "arm720t" if CPU_ARM720T
303 default "arm920t" if CPU_ARM920T
304 default "arm926ejs" if CPU_ARM926EJS
305 default "arm946es" if CPU_ARM946ES
306 default "arm1136" if CPU_ARM1136
307 default "arm1176" if CPU_ARM1176
acf15001 308 default "armv7" if CPU_V7A
4bbd6b1d 309 default "armv7" if CPU_V7R
e009bfa4
TR
310 default "armv7m" if CPU_V7M
311 default "pxa" if CPU_PXA
312 default "sa1100" if CPU_SA1100
01541eec 313 default "armv8" if ARM64
2e07c249 314
66020a67
MV
315config SYS_ARM_ARCH
316 int
317 default 4 if CPU_ARM720T
318 default 4 if CPU_ARM920T
319 default 5 if CPU_ARM926EJS
320 default 5 if CPU_ARM946ES
321 default 6 if CPU_ARM1136
322 default 6 if CPU_ARM1176
acf15001 323 default 7 if CPU_V7A
66020a67 324 default 7 if CPU_V7M
4bbd6b1d 325 default 7 if CPU_V7R
66020a67
MV
326 default 5 if CPU_PXA
327 default 4 if CPU_SA1100
328 default 8 if ARM64
329
067716ba
TR
330config SYS_CACHE_SHIFT_5
331 bool
332
333config SYS_CACHE_SHIFT_6
334 bool
335
336config SYS_CACHE_SHIFT_7
337 bool
338
339config SYS_CACHELINE_SIZE
340 int
341 default 128 if SYS_CACHE_SHIFT_7
342 default 64 if SYS_CACHE_SHIFT_6
343 default 32 if SYS_CACHE_SHIFT_5
344
f8dc7f2f
PD
345choice
346 prompt "Select the ARM data write cache policy"
347 default SYS_ARM_CACHE_WRITETHROUGH if TARGET_BCMCYGNUS || \
348 TARGET_BCMNSP || CPU_PXA || RZA1
349 default SYS_ARM_CACHE_WRITEBACK
350
351config SYS_ARM_CACHE_WRITEBACK
352 bool "Write-back (WB)"
353 help
354 A write updates the cache only and marks the cache line as dirty.
355 External memory is updated only when the line is evicted or explicitly
356 cleaned.
357
358config SYS_ARM_CACHE_WRITETHROUGH
359 bool "Write-through (WT)"
360 help
361 A write updates both the cache and the external memory system.
362 This does not mark the cache line as dirty.
363
364config SYS_ARM_CACHE_WRITEALLOC
365 bool "Write allocation (WA)"
366 help
367 A cache line is allocated on a write miss. This means that executing a
368 store instruction on the processor might cause a burst read to occur.
369 There is a linefill to obtain the data for the cache line, before the
370 write is performed.
371endchoice
372
1bf33015
AF
373config ARCH_CPU_INIT
374 bool "Enable ARCH_CPU_INIT"
375 help
e852b30b 376 Some architectures require a call to arch_cpu_init().
1bf33015
AF
377 Say Y here to enable it
378
7842b6a9
AP
379config SYS_ARCH_TIMER
380 bool "ARM Generic Timer support"
acf15001 381 depends on CPU_V7A || ARM64
7842b6a9
AP
382 default y if ARM64
383 help
384 The ARM Generic Timer (aka arch-timer) provides an architected
385 interface to a timer source on an SoC.
e852b30b 386 It is mandatory for ARMv8 implementation and widely available
7842b6a9
AP
387 on ARMv7 systems.
388
c54bcf68
MY
389config ARM_SMCCC
390 bool "Support for ARM SMC Calling Convention (SMCCC)"
acf15001 391 depends on CPU_V7A || ARM64
573a3811 392 select ARM_PSCI_FW
c54bcf68
MY
393 help
394 Say Y here if you want to enable ARM SMC Calling Convention.
395 This should be enabled if U-Boot needs to communicate with system
396 firmware (for example, PSCI) according to SMCCC.
397
f91afc4d
LW
398config SEMIHOSTING
399 bool "support boot from semihosting"
400 help
401 In emulated environments, semihosting is a way for
402 the hosted environment to call out to the emulator to
403 retrieve files from the host machine.
404
3a649407
TR
405config SYS_THUMB_BUILD
406 bool "Build U-Boot using the Thumb instruction set"
407 depends on !ARM64
408 help
409 Use this flag to build U-Boot using the Thumb instruction set for
410 ARM architectures. Thumb instruction set provides better code
411 density. For ARM architectures that support Thumb2 this flag will
412 result in Thumb2 code generated by GCC.
413
414config SPL_SYS_THUMB_BUILD
415 bool "Build SPL using the Thumb instruction set"
416 default y if SYS_THUMB_BUILD
05705566 417 depends on !ARM64 && SPL
3a649407
TR
418 help
419 Use this flag to build SPL using the Thumb instruction set for
420 ARM architectures. Thumb instruction set provides better code
421 density. For ARM architectures that support Thumb2 this flag will
422 result in Thumb2 code generated by GCC.
423
1e32c519
KY
424config TPL_SYS_THUMB_BUILD
425 bool "Build TPL using the Thumb instruction set"
426 default y if SYS_THUMB_BUILD
427 depends on TPL && !ARM64
428 help
e852b30b 429 Use this flag to build TPL using the Thumb instruction set for
1e32c519
KY
430 ARM architectures. Thumb instruction set provides better code
431 density. For ARM architectures that support Thumb2 this flag will
432 result in Thumb2 code generated by GCC.
433
434
f3e9bec8
PF
435config SYS_L2CACHE_OFF
436 bool "L2cache off"
437 help
e852b30b 438 If SoC does not support L2CACHE or one does not want to enable
f3e9bec8
PF
439 L2CACHE, choose this option.
440
cdaa633f
AP
441config ENABLE_ARM_SOC_BOOT0_HOOK
442 bool "prepare BOOT0 header"
443 help
444 If the SoC's BOOT0 requires a header area filled with (magic)
7d531e8a
SG
445 values, then choose this option, and create a file included as
446 <asm/arch/boot0.h> which contains the required assembler code.
cdaa633f 447
85db5831
AP
448config ARM_CORTEX_CPU_IS_UP
449 bool
450 default n
451
be72591b
FE
452config USE_ARCH_MEMCPY
453 bool "Use an assembly optimized implementation of memcpy"
40d5534c
TR
454 default y
455 depends on !ARM64
456 help
457 Enable the generation of an optimized version of memcpy.
e852b30b 458 Such an implementation may be faster under some conditions
40d5534c
TR
459 but may increase the binary size.
460
461config SPL_USE_ARCH_MEMCPY
f8136e68 462 bool "Use an assembly optimized implementation of memcpy for SPL"
40d5534c 463 default y if USE_ARCH_MEMCPY
05705566 464 depends on !ARM64 && SPL
be72591b
FE
465 help
466 Enable the generation of an optimized version of memcpy.
e852b30b 467 Such an implementation may be faster under some conditions
be72591b
FE
468 but may increase the binary size.
469
1e32c519
KY
470config TPL_USE_ARCH_MEMCPY
471 bool "Use an assembly optimized implementation of memcpy for TPL"
472 default y if USE_ARCH_MEMCPY
05705566 473 depends on !ARM64 && TPL
1e32c519
KY
474 help
475 Enable the generation of an optimized version of memcpy.
e852b30b 476 Such an implementation may be faster under some conditions
1e32c519
KY
477 but may increase the binary size.
478
be72591b
FE
479config USE_ARCH_MEMSET
480 bool "Use an assembly optimized implementation of memset"
40d5534c
TR
481 default y
482 depends on !ARM64
483 help
484 Enable the generation of an optimized version of memset.
e852b30b 485 Such an implementation may be faster under some conditions
40d5534c
TR
486 but may increase the binary size.
487
488config SPL_USE_ARCH_MEMSET
f8136e68 489 bool "Use an assembly optimized implementation of memset for SPL"
40d5534c 490 default y if USE_ARCH_MEMSET
05705566 491 depends on !ARM64 && SPL
be72591b
FE
492 help
493 Enable the generation of an optimized version of memset.
e852b30b 494 Such an implementation may be faster under some conditions
be72591b
FE
495 but may increase the binary size.
496
1e32c519
KY
497config TPL_USE_ARCH_MEMSET
498 bool "Use an assembly optimized implementation of memset for TPL"
499 default y if USE_ARCH_MEMSET
05705566 500 depends on !ARM64 && TPL
1e32c519
KY
501 help
502 Enable the generation of an optimized version of memset.
e852b30b 503 Such an implementation may be faster under some conditions
1e32c519
KY
504 but may increase the binary size.
505
ec6617c3
AW
506config ARM64_SUPPORT_AARCH32
507 bool "ARM64 system support AArch32 execution state"
05705566
AF
508 depends on ARM64
509 default y if !TARGET_THUNDERX_88XX
ec6617c3
AW
510 help
511 This ARM64 system supports AArch32 execution state.
512
dd84058d
MY
513choice
514 prompt "Target select"
b928e658 515 default TARGET_HIKEY
dd84058d 516
4614b891
MY
517config ARCH_AT91
518 bool "Atmel AT91"
f58e9460 519 select SPL_BOARD_INIT if SPL && !TARGET_SMARTWEB
c7c120c2 520 select SPL_SEPARATE_BSS if SPL
dd84058d
MY
521
522config TARGET_EDB93XX
523 bool "Support edb93xx"
2e07c249 524 select CPU_ARM920T
884f9013 525 select PL010_SERIAL
dd84058d 526
dd84058d
MY
527config TARGET_ASPENITE
528 bool "Support aspenite"
2e07c249 529 select CPU_ARM926EJS
dd84058d
MY
530
531config TARGET_GPLUGD
532 bool "Support gplugd"
2e07c249 533 select CPU_ARM926EJS
dd84058d 534
3491ba63
MY
535config ARCH_DAVINCI
536 bool "TI DaVinci"
2e07c249 537 select CPU_ARM926EJS
56c40460 538 select SPL_DM_SPI if SPL
15dc63d6 539 imply CMD_SAVES
3491ba63
MY
540 help
541 Support for TI's DaVinci platform.
dd84058d 542
bb0fb4c0 543config ARCH_KIRKWOOD
47539e23 544 bool "Marvell Kirkwood"
4585601a 545 select ARCH_MISC_INIT
5ed063d1
MS
546 select BOARD_EARLY_INIT_F
547 select CPU_ARM926EJS
dd84058d 548
c3d89140 549config ARCH_MVEBU
21b29fc6 550 bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)"
9cffb233 551 select DM
e3b9c98a 552 select DM_ETH
1d51ea19 553 select DM_SERIAL
09a54c00
SR
554 select DM_SPI
555 select DM_SPI_FLASH
56c40460
LM
556 select SPL_DM_SPI if SPL
557 select SPL_DM_SPI_FLASH if SPL
5ed063d1
MS
558 select OF_CONTROL
559 select OF_SEPARATE
f1b1f770 560 select SPI
08a00cba 561 imply CMD_DM
a4884831 562
dd84058d
MY
563config TARGET_APF27
564 bool "Support apf27"
2e07c249 565 select CPU_ARM926EJS
02627356 566 select SUPPORT_SPL
dd84058d 567
b16a3316 568config ARCH_ORION5X
22f2be7a 569 bool "Marvell Orion"
2e07c249 570 select CPU_ARM926EJS
dd84058d 571
dd84058d
MY
572config TARGET_SPEAR300
573 bool "Support spear300"
a5d67547 574 select BOARD_EARLY_INIT_F
5ed063d1 575 select CPU_ARM926EJS
d10fc50f 576 select PL011_SERIAL
5ed063d1 577 imply CMD_SAVES
dd84058d
MY
578
579config TARGET_SPEAR310
580 bool "Support spear310"
a5d67547 581 select BOARD_EARLY_INIT_F
5ed063d1 582 select CPU_ARM926EJS
d10fc50f 583 select PL011_SERIAL
5ed063d1 584 imply CMD_SAVES
dd84058d
MY
585
586config TARGET_SPEAR320
587 bool "Support spear320"
a5d67547 588 select BOARD_EARLY_INIT_F
5ed063d1 589 select CPU_ARM926EJS
d10fc50f 590 select PL011_SERIAL
5ed063d1 591 imply CMD_SAVES
dd84058d
MY
592
593config TARGET_SPEAR600
594 bool "Support spear600"
a5d67547 595 select BOARD_EARLY_INIT_F
5ed063d1 596 select CPU_ARM926EJS
d10fc50f 597 select PL011_SERIAL
5ed063d1 598 imply CMD_SAVES
dd84058d 599
9fa32b12
VM
600config TARGET_STV0991
601 bool "Support stv0991"
acf15001 602 select CPU_V7A
cac0ca76
MY
603 select DM
604 select DM_SERIAL
e67abcaa
VM
605 select DM_SPI
606 select DM_SPI_FLASH
5ed063d1 607 select PL01X_SERIAL
f1b1f770 608 select SPI
e67abcaa 609 select SPI_FLASH
08a00cba 610 imply CMD_DM
9fa32b12 611
dd84058d
MY
612config TARGET_X600
613 bool "Support x600"
e5ec4815 614 select BOARD_LATE_INIT
2e07c249 615 select CPU_ARM926EJS
d10fc50f 616 select PL011_SERIAL
5ed063d1 617 select SUPPORT_SPL
dd84058d 618
dd84058d
MY
619config TARGET_FLEA3
620 bool "Support flea3"
2e07c249 621 select CPU_ARM1136
dd84058d
MY
622
623config TARGET_MX35PDK
624 bool "Support mx35pdk"
e5ec4815 625 select BOARD_LATE_INIT
2e07c249 626 select CPU_ARM1136
dd84058d 627
ddf6bd48
MY
628config ARCH_BCM283X
629 bool "Broadcom BCM283X family"
58d423b8 630 select DM
58d423b8 631 select DM_GPIO
5ed063d1 632 select DM_SERIAL
76709096 633 select OF_CONTROL
cf2c7784 634 select PL01X_SERIAL
ae5326a6 635 select SERIAL_SEARCH_ALL
08a00cba 636 imply CMD_DM
91d27a17 637 imply FAT_WRITE
46414296 638
ea1a7de5
PR
639config ARCH_BCM63158
640 bool "Broadcom BCM63158 family"
641 select DM
642 select OF_CONTROL
643 imply CMD_DM
644
6454e95f
PR
645config ARCH_BCM68360
646 bool "Broadcom BCM68360 family"
647 select DM
648 select OF_CONTROL
649 imply CMD_DM
650
40b59b05
PR
651config ARCH_BCM6858
652 bool "Broadcom BCM6858 family"
653 select DM
654 select OF_CONTROL
655 imply CMD_DM
656
dd84058d
MY
657config TARGET_VEXPRESS_CA15_TC2
658 bool "Support vexpress_ca15_tc2"
acf15001 659 select CPU_V7A
ea624e19
HG
660 select CPU_V7_HAS_NONSEC
661 select CPU_V7_HAS_VIRT
d10fc50f 662 select PL011_SERIAL
dd84058d 663
894c3ad2
TF
664config ARCH_BCMSTB
665 bool "Broadcom BCM7XXX family"
666 select CPU_V7A
667 select DM
668 select OF_CONTROL
669 select OF_PRIOR_STAGE
08a00cba 670 imply CMD_DM
894c3ad2
TF
671 help
672 This enables support for Broadcom ARM-based set-top box
673 chipsets, including the 7445 family of chips.
674
dd84058d
MY
675config TARGET_VEXPRESS_CA5X2
676 bool "Support vexpress_ca5x2"
acf15001 677 select CPU_V7A
d10fc50f 678 select PL011_SERIAL
dd84058d
MY
679
680config TARGET_VEXPRESS_CA9X4
681 bool "Support vexpress_ca9x4"
acf15001 682 select CPU_V7A
d10fc50f 683 select PL011_SERIAL
dd84058d 684
43486e4c
SR
685config TARGET_BCM23550_W1D
686 bool "Support bcm23550_w1d"
acf15001 687 select CPU_V7A
221a949e 688 imply CRC32_VERIFY
91d27a17 689 imply FAT_WRITE
43486e4c 690
dd84058d
MY
691config TARGET_BCM28155_AP
692 bool "Support bcm28155_ap"
acf15001 693 select CPU_V7A
221a949e 694 imply CRC32_VERIFY
91d27a17 695 imply FAT_WRITE
dd84058d 696
abb1678c
SR
697config TARGET_BCMCYGNUS
698 bool "Support bcmcygnus"
acf15001 699 select CPU_V7A
5ed063d1
MS
700 imply BCM_SF2_ETH
701 imply BCM_SF2_ETH_GMAC
551c3934 702 imply CMD_HASH
5ed063d1 703 imply CRC32_VERIFY
91d27a17 704 imply FAT_WRITE
221a949e 705 imply HASH_VERIFY
c89782dc 706 imply NETDEVICES
9dec5270 707
abb1678c
SR
708config TARGET_BCMNSP
709 bool "Support bcmnsp"
acf15001 710 select CPU_V7A
9dec5270 711
274bced8
JM
712config TARGET_BCMNS2
713 bool "Support Broadcom Northstar2"
714 select ARM64
715 help
716 Support for Broadcom Northstar 2 SoCs. NS2 is a quad-core 64-bit
717 ARMv8 Cortex-A57 processors targeting a broad range of networking
e852b30b 718 applications.
274bced8 719
291635ae
RK
720config TARGET_BCMNS3
721 bool "Support Broadcom NS3"
722 select ARM64
723 select BOARD_LATE_INIT
724 help
725 Support for Broadcom Northstar 3 SoCs. NS3 is a octo-core 64-bit
726 ARMv8 Cortex-A72 processors targeting a broad range of networking
727 applications.
728
72df68cc
MY
729config ARCH_EXYNOS
730 bool "Samsung EXYNOS"
58d423b8 731 select DM
5ed063d1 732 select DM_GPIO
fc47cf9d 733 select DM_I2C
5ed063d1 734 select DM_KEYBOARD
58d423b8
MY
735 select DM_SERIAL
736 select DM_SPI
5ed063d1 737 select DM_SPI_FLASH
f1b1f770 738 select SPI
c96d9036 739 imply SYS_THUMB_BUILD
08a00cba 740 imply CMD_DM
91d27a17 741 imply FAT_WRITE
dd84058d 742
311757be
SG
743config ARCH_S5PC1XX
744 bool "Samsung S5PC1XX"
acf15001 745 select CPU_V7A
58d423b8 746 select DM
58d423b8 747 select DM_GPIO
08848e9c 748 select DM_I2C
5ed063d1 749 select DM_SERIAL
08a00cba 750 imply CMD_DM
311757be 751
ef2b694c
MY
752config ARCH_HIGHBANK
753 bool "Calxeda Highbank"
acf15001 754 select CPU_V7A
d10fc50f 755 select PL011_SERIAL
dd84058d 756
5cbbd9bd
MY
757config ARCH_INTEGRATOR
758 bool "ARM Ltd. Integrator family"
3f394e70
LW
759 select DM
760 select DM_SERIAL
cf2c7784 761 select PL01X_SERIAL
08a00cba 762 imply CMD_DM
5cbbd9bd 763
e479a7d5
RM
764config ARCH_IPQ40XX
765 bool "Qualcomm IPQ40xx SoCs"
766 select CPU_V7A
767 select DM
768 select DM_GPIO
769 select DM_SERIAL
770 select PINCTRL
771 select CLK
772 select OF_CONTROL
773 imply CMD_DM
774
c338f09e
MY
775config ARCH_KEYSTONE
776 bool "TI Keystone"
5ed063d1 777 select CMD_POWEROFF
acf15001 778 select CPU_V7A
02627356 779 select SUPPORT_SPL
7842b6a9 780 select SYS_ARCH_TIMER
5ed063d1 781 select SYS_THUMB_BUILD
d56b4b19 782 imply CMD_MTDPARTS
15dc63d6 783 imply CMD_SAVES
5ed063d1 784 imply FIT
dd84058d 785
586bde93
LV
786config ARCH_K3
787 bool "Texas Instruments' K3 Architecture"
788 select SPL
789 select SUPPORT_SPL
790 select FIT
791
a93fbf4a
MY
792config ARCH_OMAP2PLUS
793 bool "TI OMAP2+"
acf15001 794 select CPU_V7A
0680f1b1 795 select SPL_BOARD_INIT if SPL
ff6c3125 796 select SPL_STACK_R if SPL
a93fbf4a
MY
797 select SUPPORT_SPL
798 imply FIT
799
bfcef28a
BG
800config ARCH_MESON
801 bool "Amlogic Meson"
7325f6cf 802 imply DISTRO_DEFAULTS
6da749d8 803 imply DM_RNG
bfcef28a
BG
804 help
805 Support for the Meson SoC family developed by Amlogic Inc.,
806 targeted at media players and tablet computers. We currently
807 support the S905 (GXBaby) 64-bit SoC.
808
cbd2fba1
RL
809config ARCH_MEDIATEK
810 bool "MediaTek SoCs"
cbd2fba1
RL
811 select DM
812 select OF_CONTROL
813 select SPL_DM if SPL
814 select SPL_LIBCOMMON_SUPPORT if SPL
815 select SPL_LIBGENERIC_SUPPORT if SPL
816 select SPL_OF_CONTROL if SPL
817 select SUPPORT_SPL
818 help
819 Support for the MediaTek SoCs family developed by MediaTek Inc.
820 Please refer to doc/README.mediatek for more information.
821
ee54dfea
VZ
822config ARCH_LPC32XX
823 bool "NXP LPC32xx platform"
824 select CPU_ARM926EJS
825 select DM
826 select DM_GPIO
827 select DM_SERIAL
828 select SPL_DM if SPL
829 select SUPPORT_SPL
830 imply CMD_DM
831
b2b8b9be
PF
832config ARCH_IMX8
833 bool "NXP i.MX8 platform"
834 select ARM64
835 select DM
836 select OF_CONTROL
9a273858 837 select ENABLE_ARM_SOC_BOOT0_HOOK
b2b8b9be 838
cd357ad1 839config ARCH_IMX8M
7a7391fd
PF
840 bool "NXP i.MX8M platform"
841 select ARM64
842 select DM
843 select SUPPORT_SPL
08a00cba 844 imply CMD_DM
7a7391fd 845
77eb9a90
GB
846config ARCH_IMXRT
847 bool "NXP i.MXRT platform"
848 select CPU_V7M
849 select DM
850 select DM_SERIAL
851 select SUPPORT_SPL
852 imply CMD_DM
853
c5343d4e
SA
854config ARCH_MX23
855 bool "NXP i.MX23 family"
856 select CPU_ARM926EJS
857 select PL011_SERIAL
858 select SUPPORT_SPL
859
07df697e
FE
860config ARCH_MX25
861 bool "NXP MX25"
862 select CPU_ARM926EJS
8bbff6a7 863 imply MXC_GPIO
07df697e 864
25c5b4e1
SA
865config ARCH_MX28
866 bool "NXP i.MX28 family"
867 select CPU_ARM926EJS
868 select PL011_SERIAL
869 select SUPPORT_SPL
870
3159ec64
ML
871config ARCH_MX31
872 bool "NXP i.MX31 family"
873 select CPU_ARM1136
874
e90a08da 875config ARCH_MX7ULP
6e7bdde4 876 bool "NXP MX7ULP"
acf15001 877 select CPU_V7A
e90a08da 878 select ROM_UNIFIED_SECTIONS
8bbff6a7 879 imply MXC_GPIO
44ad4961 880 imply SYS_THUMB_BUILD
e90a08da 881
1a8150d4
AA
882config ARCH_MX7
883 bool "Freescale MX7"
5ed063d1 884 select ARCH_MISC_INIT
acf15001 885 select CPU_V7A
d714a75f 886 select SYS_FSL_HAS_SEC if IMX_HAB
2c2e2c9e 887 select SYS_FSL_SEC_COMPAT_4
90b80386 888 select SYS_FSL_SEC_LE
72041603 889 imply BOARD_EARLY_INIT_F
8bbff6a7 890 imply MXC_GPIO
44ad4961 891 imply SYS_THUMB_BUILD
1a8150d4 892
89ebc821
BB
893config ARCH_MX6
894 bool "Freescale MX6"
acf15001 895 select CPU_V7A
90865614 896 select SYS_FSL_HAS_SEC
2c2e2c9e 897 select SYS_FSL_SEC_COMPAT_4
90b80386 898 select SYS_FSL_SEC_LE
8bbff6a7 899 imply MXC_GPIO
44ad4961 900 imply SYS_THUMB_BUILD
89ebc821 901
b529993e
PT
902if ARCH_MX6
903config SPL_LDSCRIPT
6e7bdde4 904 default "arch/arm/mach-omap2/u-boot-spl.lds"
b529993e
PT
905endif
906
424ee3d1
AR
907config ARCH_MX5
908 bool "Freescale MX5"
a5d67547 909 select BOARD_EARLY_INIT_F
5ed063d1 910 select CPU_V7A
8bbff6a7 911 imply MXC_GPIO
424ee3d1 912
95e9a8e2
SB
913config ARCH_NEXELL
914 bool "Nexell S5P4418/S5P6818 SoC"
915 select ENABLE_ARM_SOC_BOOT0_HOOK
916 select DM
917
97775d26
MS
918config ARCH_OWL
919 bool "Actions Semi OWL SoCs"
97775d26 920 select DM
cd2baaf7 921 select DM_ETH
97775d26 922 select DM_SERIAL
b1a6bb3b 923 select OWL_SERIAL
8b520ac1
AST
924 select CLK
925 select CLK_OWL
97775d26 926 select OF_CONTROL
36c2f020 927 select SYS_RELOC_GD_ENV_ADDR
08a00cba 928 imply CMD_DM
97775d26 929
32f11829
TT
930config ARCH_QEMU
931 bool "QEMU Virtual Platform"
70a64a07 932 select ARCH_SUPPORT_TFABOOT
32f11829
TT
933 select DM
934 select DM_SERIAL
935 select OF_CONTROL
cf2c7784 936 select PL01X_SERIAL
08a00cba 937 imply CMD_DM
a47c1b5b
AT
938 imply DM_RTC
939 imply RTC_PL031
32f11829 940
1cc95f6e 941config ARCH_RMOBILE
f40b9898 942 bool "Renesas ARM SoCs"
35295964 943 select BOARD_EARLY_INIT_F if !RZA1
1cc95f6e
NI
944 select DM
945 select DM_SERIAL
08a00cba 946 imply CMD_DM
91d27a17 947 imply FAT_WRITE
3a649407 948 imply SYS_THUMB_BUILD
00e4b57e 949 imply ARCH_MISC_INIT if DISPLAY_CPUINFO
dd84058d 950
9702ec00
EP
951config TARGET_S32V234EVB
952 bool "Support s32v234evb"
953 select ARM64
c01e4a1a 954 select SYS_FSL_ERRATUM_ESDHC111
9702ec00 955
08592136
MK
956config ARCH_SNAPDRAGON
957 bool "Qualcomm Snapdragon SoCs"
958 select ARM64
959 select DM
960 select DM_GPIO
961 select DM_SERIAL
5ed063d1 962 select MSM_SMEM
08592136
MK
963 select OF_CONTROL
964 select OF_SEPARATE
654dd4a8 965 select SMEM
5ed063d1 966 select SPMI
08a00cba 967 imply CMD_DM
08592136 968
7865f4b0
MY
969config ARCH_SOCFPGA
970 bool "Altera SOCFPGA family"
48befc00 971 select ARCH_EARLY_INIT_R
d6a61da4 972 select ARCH_MISC_INIT if !TARGET_SOCFPGA_ARRIA10
a76b711d 973 select ARM64 if TARGET_SOCFPGA_STRATIX10 || TARGET_SOCFPGA_AGILEX
a684729a 974 select CPU_V7A if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
1d9aa3e5 975 select DM
73172753 976 select DM_SERIAL
a684729a 977 select ENABLE_ARM_SOC_BOOT0_HOOK if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
48befc00 978 select OF_CONTROL
00057eea 979 select SPL_DM_RESET if DM_RESET
5ed063d1 980 select SPL_DM_SERIAL
48befc00 981 select SPL_LIBCOMMON_SUPPORT
48befc00 982 select SPL_LIBGENERIC_SUPPORT
48befc00
MV
983 select SPL_NAND_SUPPORT if SPL_NAND_DENALI
984 select SPL_OF_CONTROL
a76b711d 985 select SPL_SEPARATE_BSS if TARGET_SOCFPGA_STRATIX10 || TARGET_SOCFPGA_AGILEX
48befc00 986 select SPL_SERIAL_SUPPORT
ef72ba0b 987 select SPL_SYSRESET
48befc00
MV
988 select SPL_WATCHDOG_SUPPORT
989 select SUPPORT_SPL
73172753 990 select SYS_NS16550
a684729a 991 select SYS_THUMB_BUILD if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
ef72ba0b
SG
992 select SYSRESET
993 select SYSRESET_SOCFPGA if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
63b312d8 994 select SYSRESET_SOCFPGA_S10 if TARGET_SOCFPGA_STRATIX10
08a00cba 995 imply CMD_DM
d56b4b19 996 imply CMD_MTDPARTS
221a949e 997 imply CRC32_VERIFY
fef4a545
SG
998 imply DM_SPI
999 imply DM_SPI_FLASH
91d27a17 1000 imply FAT_WRITE
aef44283
SG
1001 imply SPL
1002 imply SPL_DM
56c40460
LM
1003 imply SPL_DM_SPI
1004 imply SPL_DM_SPI_FLASH
a9024dc1
SG
1005 imply SPL_LIBDISK_SUPPORT
1006 imply SPL_MMC_SUPPORT
fef4a545 1007 imply SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
f48db4ed 1008 imply SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE
a9024dc1
SG
1009 imply SPL_SPI_FLASH_SUPPORT
1010 imply SPL_SPI_SUPPORT
aaa64803 1011 imply L2X0_CACHE
dd84058d 1012
2c7e3b90
IC
1013config ARCH_SUNXI
1014 bool "Support sunxi (Allwinner) SoCs"
d6a0c78a 1015 select BINMAN
88bb800d 1016 select CMD_GPIO
0878a8a7 1017 select CMD_MMC if MMC
2997ee50 1018 select CMD_USB if DISTRO_DEFAULTS
e236ff0a 1019 select CLK
b6006baf 1020 select DM
45368827 1021 select DM_ETH
211d57a4
HG
1022 select DM_GPIO
1023 select DM_KEYBOARD
bb3362b0
JT
1024 select DM_MMC if MMC
1025 select DM_SCSI if SCSI
45368827 1026 select DM_SERIAL
2997ee50 1027 select DM_USB if DISTRO_DEFAULTS
d75111a7 1028 select OF_BOARD_SETUP
b6006baf
HG
1029 select OF_CONTROL
1030 select OF_SEPARATE
6f6b7cfa 1031 select SPECIFY_CONSOLE_INDEX
ab43de80
TR
1032 select SPL_STACK_R if SPL
1033 select SPL_SYS_MALLOC_SIMPLE if SPL
3a649407 1034 select SPL_SYS_THUMB_BUILD if !ARM64
10cfbaab 1035 select SUNXI_GPIO
5ed063d1 1036 select SYS_NS16550
ce2e44d8 1037 select SYS_THUMB_BUILD if !ARM64
2997ee50 1038 select USB if DISTRO_DEFAULTS
2997ee50 1039 select USB_KEYBOARD if DISTRO_DEFAULTS
5ed063d1 1040 select USB_STORAGE if DISTRO_DEFAULTS
27084c03 1041 select SPL_USE_TINY_PRINTF
48313fe5
AP
1042 select USE_PREBOOT
1043 select SYS_RELOC_GD_ENV_ADDR
08a00cba 1044 imply CMD_DM
a12fb0e3 1045 imply CMD_GPT
88718be3 1046 imply CMD_UBI if MTD_RAW_NAND
7325f6cf 1047 imply DISTRO_DEFAULTS
91d27a17 1048 imply FAT_WRITE
2f13cf35 1049 imply FIT
eff264d7 1050 imply OF_LIBFDT_OVERLAY
af83a604
MY
1051 imply PRE_CONSOLE_BUFFER
1052 imply SPL_GPIO_SUPPORT
1053 imply SPL_LIBCOMMON_SUPPORT
af83a604 1054 imply SPL_LIBGENERIC_SUPPORT
4aa2ba3a 1055 imply SPL_MMC_SUPPORT if MMC
af83a604
MY
1056 imply SPL_POWER_SUPPORT
1057 imply SPL_SERIAL_SUPPORT
654b02b1 1058 imply USB_GADGET
8ebe4f42 1059
689088f9
SG
1060config ARCH_U8500
1061 bool "ST-Ericsson U8500 Series"
1062 select CPU_V7A
1063 select DM
1064 select DM_GPIO
1065 select DM_MMC if MMC
1066 select DM_SERIAL
1067 select DM_USB if USB
1068 select OF_CONTROL
1069 select SYSRESET
1070 select TIMER
1071 imply ARM_PL180_MMCI
1072 imply DM_RTC
1073 imply NOMADIK_MTU_TIMER
1074 imply PL01X_SERIAL
1075 imply RTC_PL031
1076 imply SYSRESET_SYSCON
1077
ec48b6c9
MS
1078config ARCH_VERSAL
1079 bool "Support Xilinx Versal Platform"
1080 select ARM64
1081 select CLK
1082 select DM
fa797157
MS
1083 select DM_ETH if NET
1084 select DM_MMC if MMC
ec48b6c9
MS
1085 select DM_SERIAL
1086 select OF_CONTROL
bfd092f9 1087 imply BOARD_LATE_INIT
62b96262 1088 imply ENV_VARS_UBOOT_RUNTIME_CONFIG
ec48b6c9 1089
7966b437
SA
1090config ARCH_VF610
1091 bool "Freescale Vybrid"
acf15001 1092 select CPU_V7A
c01e4a1a 1093 select SYS_FSL_ERRATUM_ESDHC111
d56b4b19 1094 imply CMD_MTDPARTS
88718be3 1095 imply MTD_RAW_NAND
e7b860fa 1096
5ca269a4 1097config ARCH_ZYNQ
b8d4497f 1098 bool "Xilinx Zynq based platform"
5ed063d1
MS
1099 select CLK
1100 select CLK_ZYNQ
acf15001 1101 select CPU_V7A
8981f05c 1102 select DM
c4a142f4 1103 select DM_ETH if NET
c4a142f4 1104 select DM_MMC if MMC
42800ffa 1105 select DM_SERIAL
5ed063d1 1106 select DM_SPI
9f7a4502 1107 select DM_SPI_FLASH
dec49e86 1108 select DM_USB if USB
5ed063d1 1109 select OF_CONTROL
f1b1f770 1110 select SPI
5ed063d1
MS
1111 select SPL_BOARD_INIT if SPL
1112 select SPL_CLK if SPL
1113 select SPL_DM if SPL
56c40460
LM
1114 select SPL_DM_SPI if SPL
1115 select SPL_DM_SPI_FLASH if SPL
5ed063d1
MS
1116 select SPL_OF_CONTROL if SPL
1117 select SPL_SEPARATE_BSS if SPL
1118 select SUPPORT_SPL
1119 imply ARCH_EARLY_INIT_R
8eb55e19 1120 imply BOARD_LATE_INIT
d315628e 1121 imply CMD_CLK
08a00cba 1122 imply CMD_DM
72c3033f 1123 imply CMD_SPL
62b96262 1124 imply ENV_VARS_UBOOT_RUNTIME_CONFIG
5ed063d1 1125 imply FAT_WRITE
dd84058d 1126
1d6c54ec
MS
1127config ARCH_ZYNQMP_R5
1128 bool "Xilinx ZynqMP R5 based platform"
5ed063d1 1129 select CLK
1d6c54ec 1130 select CPU_V7R
1d6c54ec 1131 select DM
6f96fb50
MS
1132 select DM_ETH if NET
1133 select DM_MMC if MMC
1d6c54ec 1134 select DM_SERIAL
5ed063d1 1135 select OF_CONTROL
08a00cba 1136 imply CMD_DM
687ab545 1137 imply DM_USB_GADGET
1d6c54ec 1138
0b54a9dd 1139config ARCH_ZYNQMP
b8d4497f 1140 bool "Xilinx ZynqMP based platform"
84c7204b 1141 select ARM64
5ed063d1 1142 select CLK
c2490bf5 1143 select DM
fb693108 1144 select DM_ETH if NET
1327d167 1145 select DM_MAILBOX
fb693108 1146 select DM_MMC if MMC
c2490bf5 1147 select DM_SERIAL
088f83ee
MS
1148 select DM_SPI if SPI
1149 select DM_SPI_FLASH if DM_SPI
5ed063d1 1150 select DM_USB if USB
325a22dc 1151 select FIRMWARE
5ed063d1 1152 select OF_CONTROL
0680f1b1 1153 select SPL_BOARD_INIT if SPL
2f03968e 1154 select SPL_CLK if SPL
56c40460
LM
1155 select SPL_DM_SPI if SPI
1156 select SPL_DM_SPI_FLASH if SPL_DM_SPI
325a22dc
IE
1157 select SPL_DM_MAILBOX if SPL
1158 select SPL_FIRMWARE if SPL
850e7795 1159 select SPL_SEPARATE_BSS if SPL
5ed063d1 1160 select SUPPORT_SPL
1327d167 1161 select ZYNQMP_IPI
8eb55e19 1162 imply BOARD_LATE_INIT
08a00cba 1163 imply CMD_DM
62b96262 1164 imply ENV_VARS_UBOOT_RUNTIME_CONFIG
91d27a17 1165 imply FAT_WRITE
22270ca0 1166 imply MP
687ab545 1167 imply DM_USB_GADGET
84c7204b 1168
18138ab2 1169config ARCH_TEGRA
ddd960e6 1170 bool "NVIDIA Tegra"
7325f6cf 1171 imply DISTRO_DEFAULTS
91d27a17 1172 imply FAT_WRITE
dd84058d 1173
f91afc4d 1174config TARGET_VEXPRESS64_AEMV8A
dd84058d 1175 bool "Support vexpress_aemv8a"
016a954e 1176 select ARM64
cf2c7784 1177 select PL01X_SERIAL
dd84058d 1178
f91afc4d
LW
1179config TARGET_VEXPRESS64_BASE_FVP
1180 bool "Support Versatile Express ARMv8a FVP BASE model"
1181 select ARM64
cf2c7784 1182 select PL01X_SERIAL
5ed063d1 1183 select SEMIHOSTING
f91afc4d 1184
ffc10373
LW
1185config TARGET_VEXPRESS64_JUNO
1186 bool "Support Versatile Express Juno Development Platform"
1187 select ARM64
cf2c7784 1188 select PL01X_SERIAL
b3270e91
AP
1189 select DM
1190 select OF_CONTROL
1191 select OF_BOARD
1192 select CLK
1193 select DM_SERIAL
be0d0969
AP
1194 select ARM_PSCI_FW
1195 select PSCI_RESET
cc696e7c 1196 select DM_ETH
56e403d9
AP
1197 select BLK
1198 select USB
1199 select DM_USB
ffc10373 1200
44937214
PK
1201config TARGET_LS2080A_EMU
1202 bool "Support ls2080a_emu"
fb2bf8c2 1203 select ARCH_LS2080A
016a954e 1204 select ARM64
23b5877c 1205 select ARMV8_MULTIENTRY
32413125 1206 select FSL_DDR_SYNC_REFRESH
44937214 1207 help
e852b30b
RD
1208 Support for Freescale LS2080A_EMU platform.
1209 The LS2080A Development System (EMULATOR) is a pre-silicon
44937214
PK
1210 development platform that supports the QorIQ LS2080A
1211 Layerscape Architecture processor.
dd84058d 1212
44937214
PK
1213config TARGET_LS2080A_SIMU
1214 bool "Support ls2080a_simu"
fb2bf8c2 1215 select ARCH_LS2080A
016a954e 1216 select ARM64
23b5877c 1217 select ARMV8_MULTIENTRY
acf40f50 1218 select BOARD_LATE_INIT
44937214 1219 help
e852b30b 1220 Support for Freescale LS2080A_SIMU platform.
44937214
PK
1221 The LS2080A Development System (QDS) is a pre silicon
1222 development platform that supports the QorIQ LS2080A
1223 Layerscape Architecture processor.
dd84058d 1224
7769776a
AK
1225config TARGET_LS1088AQDS
1226 bool "Support ls1088aqds"
1227 select ARCH_LS1088A
1228 select ARM64
1229 select ARMV8_MULTIENTRY
6324d506 1230 select ARCH_SUPPORT_TFABOOT
7769776a 1231 select BOARD_LATE_INIT
91fded62 1232 select SUPPORT_SPL
32413125 1233 select FSL_DDR_INTERACTIVE if !SD_BOOT
7769776a 1234 help
e852b30b 1235 Support for NXP LS1088AQDS platform.
7769776a
AK
1236 The LS1088A Development System (QDS) is a high-performance
1237 development platform that supports the QorIQ LS1088A
1238 Layerscape Architecture processor.
1239
44937214
PK
1240config TARGET_LS2080AQDS
1241 bool "Support ls2080aqds"
fb2bf8c2 1242 select ARCH_LS2080A
7288c2c2
YS
1243 select ARM64
1244 select ARMV8_MULTIENTRY
6324d506 1245 select ARCH_SUPPORT_TFABOOT
e5ec4815 1246 select BOARD_LATE_INIT
b2d5ac59 1247 select SUPPORT_SPL
fedb428c 1248 imply SCSI
9fd95ef0 1249 imply SCSI_AHCI
32413125
RB
1250 select FSL_DDR_BIST
1251 select FSL_DDR_INTERACTIVE if !SPL
7288c2c2 1252 help
e852b30b 1253 Support for Freescale LS2080AQDS platform.
44937214
PK
1254 The LS2080A Development System (QDS) is a high-performance
1255 development platform that supports the QorIQ LS2080A
7288c2c2
YS
1256 Layerscape Architecture processor.
1257
44937214
PK
1258config TARGET_LS2080ARDB
1259 bool "Support ls2080ardb"
fb2bf8c2 1260 select ARCH_LS2080A
e2b65ea9
YS
1261 select ARM64
1262 select ARMV8_MULTIENTRY
6324d506 1263 select ARCH_SUPPORT_TFABOOT
e5ec4815 1264 select BOARD_LATE_INIT
32eda7cc 1265 select SUPPORT_SPL
32413125
RB
1266 select FSL_DDR_BIST
1267 select FSL_DDR_INTERACTIVE if !SPL
fedb428c 1268 imply SCSI
9fd95ef0 1269 imply SCSI_AHCI
e2b65ea9 1270 help
44937214
PK
1271 Support for Freescale LS2080ARDB platform.
1272 The LS2080A Reference design board (RDB) is a high-performance
1273 development platform that supports the QorIQ LS2080A
e2b65ea9
YS
1274 Layerscape Architecture processor.
1275
3049a583
PJ
1276config TARGET_LS2081ARDB
1277 bool "Support ls2081ardb"
1278 select ARCH_LS2080A
1279 select ARM64
1280 select ARMV8_MULTIENTRY
1281 select BOARD_LATE_INIT
1282 select SUPPORT_SPL
3049a583
PJ
1283 help
1284 Support for Freescale LS2081ARDB platform.
1285 The LS2081A Reference design board (RDB) is a high-performance
1286 development platform that supports the QorIQ LS2081A/LS2041A
1287 Layerscape Architecture processor.
1288
58c3e620
PJ
1289config TARGET_LX2160ARDB
1290 bool "Support lx2160ardb"
1291 select ARCH_LX2160A
58c3e620
PJ
1292 select ARM64
1293 select ARMV8_MULTIENTRY
6324d506 1294 select ARCH_SUPPORT_TFABOOT
58c3e620
PJ
1295 select BOARD_LATE_INIT
1296 help
1297 Support for NXP LX2160ARDB platform.
1298 The lx2160ardb (LX2160A Reference design board (RDB)
1299 is a high-performance development platform that supports the
1300 QorIQ LX2160A/LX2120A/LX2080A Layerscape Architecture processor.
1301
1eba723c
PB
1302config TARGET_LX2160AQDS
1303 bool "Support lx2160aqds"
1304 select ARCH_LX2160A
1eba723c
PB
1305 select ARM64
1306 select ARMV8_MULTIENTRY
6324d506 1307 select ARCH_SUPPORT_TFABOOT
1eba723c
PB
1308 select BOARD_LATE_INIT
1309 help
1310 Support for NXP LX2160AQDS platform.
1311 The lx2160aqds (LX2160A QorIQ Development System (QDS)
1312 is a high-performance development platform that supports the
1313 QorIQ LX2160A/LX2120A/LX2080A Layerscape Architecture processor.
1314
11ac2363
PG
1315config TARGET_HIKEY
1316 bool "Support HiKey 96boards Consumer Edition Platform"
1317 select ARM64
efd7b60a
PG
1318 select DM
1319 select DM_GPIO
9c71bcdc 1320 select DM_SERIAL
cd593ed6 1321 select OF_CONTROL
cf2c7784 1322 select PL01X_SERIAL
6f6b7cfa 1323 select SPECIFY_CONSOLE_INDEX
08a00cba 1324 imply CMD_DM
11ac2363
PG
1325 help
1326 Support for HiKey 96boards platform. It features a HI6220
1327 SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
1328
c62c7ef7
MS
1329config TARGET_HIKEY960
1330 bool "Support HiKey960 96boards Consumer Edition Platform"
1331 select ARM64
1332 select DM
1333 select DM_SERIAL
1334 select OF_CONTROL
1335 select PL01X_SERIAL
1336 imply CMD_DM
1337 help
1338 Support for HiKey960 96boards platform. It features a HI3660
1339 SoC, with 4xA73 CPU, 4xA53 CPU, MALI-G71 GPU, and 3GB RAM.
1340
d754254f
JRO
1341config TARGET_POPLAR
1342 bool "Support Poplar 96boards Enterprise Edition Platform"
1343 select ARM64
1344 select DM
d754254f
JRO
1345 select DM_SERIAL
1346 select DM_USB
5ed063d1 1347 select OF_CONTROL
cf2c7784 1348 select PL01X_SERIAL
08a00cba 1349 imply CMD_DM
d754254f
JRO
1350 help
1351 Support for Poplar 96boards EE platform. It features a HI3798cv200
1352 SoC, with 4xA53 CPU, 1GB RAM and the high performance Mali T720 GPU
1353 making it capable of running any commercial set-top solution based on
1354 Linux or Android.
1355
9d044fcb
PK
1356config TARGET_LS1012AQDS
1357 bool "Support ls1012aqds"
9533acf3 1358 select ARCH_LS1012A
9d044fcb 1359 select ARM64
6324d506 1360 select ARCH_SUPPORT_TFABOOT
e5ec4815 1361 select BOARD_LATE_INIT
9d044fcb
PK
1362 help
1363 Support for Freescale LS1012AQDS platform.
1364 The LS1012A Development System (QDS) is a high-performance
1365 development platform that supports the QorIQ LS1012A
1366 Layerscape Architecture processor.
1367
3b6e3898
PK
1368config TARGET_LS1012ARDB
1369 bool "Support ls1012ardb"
9533acf3 1370 select ARCH_LS1012A
3b6e3898 1371 select ARM64
6324d506 1372 select ARCH_SUPPORT_TFABOOT
e5ec4815 1373 select BOARD_LATE_INIT
fedb428c 1374 imply SCSI
9fd95ef0 1375 imply SCSI_AHCI
3b6e3898
PK
1376 help
1377 Support for Freescale LS1012ARDB platform.
1378 The LS1012A Reference design board (RDB) is a high-performance
1379 development platform that supports the QorIQ LS1012A
1380 Layerscape Architecture processor.
1381
b0ce187b
BU
1382config TARGET_LS1012A2G5RDB
1383 bool "Support ls1012a2g5rdb"
1384 select ARCH_LS1012A
1385 select ARM64
6324d506 1386 select ARCH_SUPPORT_TFABOOT
b0ce187b
BU
1387 select BOARD_LATE_INIT
1388 imply SCSI
1389 help
1390 Support for Freescale LS1012A2G5RDB platform.
1391 The LS1012A 2G5 Reference design board (RDB) is a high-performance
1392 development platform that supports the QorIQ LS1012A
1393 Layerscape Architecture processor.
1394
9629ccdd
BU
1395config TARGET_LS1012AFRWY
1396 bool "Support ls1012afrwy"
1397 select ARCH_LS1012A
1398 select ARM64
6324d506 1399 select ARCH_SUPPORT_TFABOOT
5ed063d1 1400 select BOARD_LATE_INIT
9629ccdd
BU
1401 imply SCSI
1402 imply SCSI_AHCI
1403 help
1404 Support for Freescale LS1012AFRWY platform.
1405 The LS1012A FRWY board (FRWY) is a high-performance
1406 development platform that supports the QorIQ LS1012A
1407 Layerscape Architecture processor.
1408
ff78aa2b
PK
1409config TARGET_LS1012AFRDM
1410 bool "Support ls1012afrdm"
9533acf3 1411 select ARCH_LS1012A
ff78aa2b 1412 select ARM64
6324d506 1413 select ARCH_SUPPORT_TFABOOT
ff78aa2b
PK
1414 help
1415 Support for Freescale LS1012AFRDM platform.
1416 The LS1012A Freedom board (FRDM) is a high-performance
1417 development platform that supports the QorIQ LS1012A
1418 Layerscape Architecture processor.
1419
f278a217
YT
1420config TARGET_LS1028AQDS
1421 bool "Support ls1028aqds"
1422 select ARCH_LS1028A
1423 select ARM64
1424 select ARMV8_MULTIENTRY
6324d506 1425 select ARCH_SUPPORT_TFABOOT
acf40f50 1426 select BOARD_LATE_INIT
f278a217
YT
1427 help
1428 Support for Freescale LS1028AQDS platform
1429 The LS1028A Development System (QDS) is a high-performance
1430 development platform that supports the QorIQ LS1028A
1431 Layerscape Architecture processor.
1432
353f36d9
YT
1433config TARGET_LS1028ARDB
1434 bool "Support ls1028ardb"
1435 select ARCH_LS1028A
1436 select ARM64
1437 select ARMV8_MULTIENTRY
6324d506 1438 select ARCH_SUPPORT_TFABOOT
c40ebf7e 1439 select BOARD_LATE_INIT
353f36d9
YT
1440 help
1441 Support for Freescale LS1028ARDB platform
1442 The LS1028A Development System (RDB) is a high-performance
1443 development platform that supports the QorIQ LS1028A
1444 Layerscape Architecture processor.
1445
e84a324b
AK
1446config TARGET_LS1088ARDB
1447 bool "Support ls1088ardb"
1448 select ARCH_LS1088A
1449 select ARM64
1450 select ARMV8_MULTIENTRY
6324d506 1451 select ARCH_SUPPORT_TFABOOT
e84a324b 1452 select BOARD_LATE_INIT
099f4093 1453 select SUPPORT_SPL
32413125 1454 select FSL_DDR_INTERACTIVE if !SD_BOOT
e84a324b
AK
1455 help
1456 Support for NXP LS1088ARDB platform.
1457 The LS1088A Reference design board (RDB) is a high-performance
1458 development platform that supports the QorIQ LS1088A
1459 Layerscape Architecture processor.
1460
550e3dc0 1461config TARGET_LS1021AQDS
0de15707 1462 bool "Support ls1021aqds"
5ed063d1
MS
1463 select ARCH_LS1021A
1464 select ARCH_SUPPORT_PSCI
1465 select BOARD_EARLY_INIT_F
e5ec4815 1466 select BOARD_LATE_INIT
acf15001 1467 select CPU_V7A
adee1d4c
HZ
1468 select CPU_V7_HAS_NONSEC
1469 select CPU_V7_HAS_VIRT
5e8bd7e1 1470 select LS1_DEEP_SLEEP
5ed063d1 1471 select SUPPORT_SPL
d26e34c4 1472 select SYS_FSL_DDR
32413125 1473 select FSL_DDR_INTERACTIVE
28964227
LM
1474 select DM_SPI_FLASH if FSL_DSPI || FSL_QSPI
1475 select SPI_FLASH_DATAFLASH if FSL_DSPI || FSL_QSPI
fedb428c 1476 imply SCSI
217f92bb 1477
c8a7d9da 1478config TARGET_LS1021ATWR
0de15707 1479 bool "Support ls1021atwr"
5ed063d1
MS
1480 select ARCH_LS1021A
1481 select ARCH_SUPPORT_PSCI
1482 select BOARD_EARLY_INIT_F
e5ec4815 1483 select BOARD_LATE_INIT
acf15001 1484 select CPU_V7A
adee1d4c
HZ
1485 select CPU_V7_HAS_NONSEC
1486 select CPU_V7_HAS_VIRT
5e8bd7e1 1487 select LS1_DEEP_SLEEP
5ed063d1 1488 select SUPPORT_SPL
28964227 1489 select DM_SPI_FLASH if FSL_DSPI || FSL_QSPI
fedb428c 1490 imply SCSI
c8a7d9da 1491
87821220
JW
1492config TARGET_LS1021ATSN
1493 bool "Support ls1021atsn"
1494 select ARCH_LS1021A
1495 select ARCH_SUPPORT_PSCI
1496 select BOARD_EARLY_INIT_F
1497 select BOARD_LATE_INIT
1498 select CPU_V7A
1499 select CPU_V7_HAS_NONSEC
1500 select CPU_V7_HAS_VIRT
1501 select LS1_DEEP_SLEEP
1502 select SUPPORT_SPL
1503 imply SCSI
1504
20c700f8
FL
1505config TARGET_LS1021AIOT
1506 bool "Support ls1021aiot"
5ed063d1
MS
1507 select ARCH_LS1021A
1508 select ARCH_SUPPORT_PSCI
e5ec4815 1509 select BOARD_LATE_INIT
acf15001 1510 select CPU_V7A
20c700f8
FL
1511 select CPU_V7_HAS_NONSEC
1512 select CPU_V7_HAS_VIRT
1513 select SUPPORT_SPL
28964227 1514 select DM_SPI_FLASH if FSL_DSPI || FSL_QSPI
fedb428c 1515 imply SCSI
20c700f8
FL
1516 help
1517 Support for Freescale LS1021AIOT platform.
1518 The LS1021A Freescale board (IOT) is a high-performance
1519 development platform that supports the QorIQ LS1021A
1520 Layerscape Architecture processor.
1521
02b5d2ed
SX
1522config TARGET_LS1043AQDS
1523 bool "Support ls1043aqds"
0a37cf8f 1524 select ARCH_LS1043A
02b5d2ed
SX
1525 select ARM64
1526 select ARMV8_MULTIENTRY
6324d506 1527 select ARCH_SUPPORT_TFABOOT
5ed063d1 1528 select BOARD_EARLY_INIT_F
e5ec4815 1529 select BOARD_LATE_INIT
02b5d2ed 1530 select SUPPORT_SPL
32413125 1531 select FSL_DDR_INTERACTIVE if !SPL
044a66cb
LM
1532 select FSL_DSPI if !SPL_NO_DSPI
1533 select DM_SPI_FLASH if FSL_DSPI
fedb428c 1534 imply SCSI
f11e492a 1535 imply SCSI_AHCI
02b5d2ed
SX
1536 help
1537 Support for Freescale LS1043AQDS platform.
1538
f3a8e2b7
MH
1539config TARGET_LS1043ARDB
1540 bool "Support ls1043ardb"
0a37cf8f 1541 select ARCH_LS1043A
f3a8e2b7 1542 select ARM64
831c068f 1543 select ARMV8_MULTIENTRY
6324d506 1544 select ARCH_SUPPORT_TFABOOT
5ed063d1 1545 select BOARD_EARLY_INIT_F
e5ec4815 1546 select BOARD_LATE_INIT
3ad44729 1547 select SUPPORT_SPL
044a66cb
LM
1548 select FSL_DSPI if !SPL_NO_DSPI
1549 select DM_SPI_FLASH if FSL_DSPI
f3a8e2b7
MH
1550 help
1551 Support for Freescale LS1043ARDB platform.
1552
126fe70d
SX
1553config TARGET_LS1046AQDS
1554 bool "Support ls1046aqds"
da28e58a 1555 select ARCH_LS1046A
126fe70d
SX
1556 select ARM64
1557 select ARMV8_MULTIENTRY
6324d506 1558 select ARCH_SUPPORT_TFABOOT
5ed063d1 1559 select BOARD_EARLY_INIT_F
e5ec4815 1560 select BOARD_LATE_INIT
126fe70d 1561 select DM_SPI_FLASH if DM_SPI
5ed063d1 1562 select SUPPORT_SPL
32413125
RB
1563 select FSL_DDR_BIST if !SPL
1564 select FSL_DDR_INTERACTIVE if !SPL
1565 select FSL_DDR_INTERACTIVE if !SPL
fedb428c 1566 imply SCSI
126fe70d
SX
1567 help
1568 Support for Freescale LS1046AQDS platform.
1569 The LS1046A Development System (QDS) is a high-performance
1570 development platform that supports the QorIQ LS1046A
1571 Layerscape Architecture processor.
1572
dd02936f
MH
1573config TARGET_LS1046ARDB
1574 bool "Support ls1046ardb"
da28e58a 1575 select ARCH_LS1046A
dd02936f
MH
1576 select ARM64
1577 select ARMV8_MULTIENTRY
6324d506 1578 select ARCH_SUPPORT_TFABOOT
5ed063d1 1579 select BOARD_EARLY_INIT_F
e5ec4815 1580 select BOARD_LATE_INIT
dd02936f 1581 select DM_SPI_FLASH if DM_SPI
dccef2ec 1582 select POWER_MC34VR500
5ed063d1 1583 select SUPPORT_SPL
32413125
RB
1584 select FSL_DDR_BIST
1585 select FSL_DDR_INTERACTIVE if !SPL
fedb428c 1586 imply SCSI
dd02936f
MH
1587 help
1588 Support for Freescale LS1046ARDB platform.
1589 The LS1046A Reference Design Board (RDB) is a high-performance
1590 development platform that supports the QorIQ LS1046A
1591 Layerscape Architecture processor.
1592
d90c7ac7
VS
1593config TARGET_LS1046AFRWY
1594 bool "Support ls1046afrwy"
1595 select ARCH_LS1046A
1596 select ARM64
1597 select ARMV8_MULTIENTRY
6324d506 1598 select ARCH_SUPPORT_TFABOOT
d90c7ac7
VS
1599 select BOARD_EARLY_INIT_F
1600 select BOARD_LATE_INIT
1601 select DM_SPI_FLASH if DM_SPI
1602 imply SCSI
1603 help
1604 Support for Freescale LS1046AFRWY platform.
1605 The LS1046A Freeway Board (FRWY) is a high-performance
1606 development platform that supports the QorIQ LS1046A
1607 Layerscape Architecture processor.
dd84058d 1608
dd84058d
MY
1609config TARGET_COLIBRI_PXA270
1610 bool "Support colibri_pxa270"
2e07c249 1611 select CPU_PXA
dd84058d 1612
66cba041 1613config ARCH_UNIPHIER
b6ef3a3f 1614 bool "Socionext UniPhier SoCs"
e5ec4815 1615 select BOARD_LATE_INIT
4e819950 1616 select DM
1517126f 1617 select DM_ETH
b800cbde 1618 select DM_GPIO
4e819950 1619 select DM_I2C
4aceb3f8 1620 select DM_MMC
407b01b3 1621 select DM_MTD
4fb96c48 1622 select DM_RESET
b5550e49 1623 select DM_SERIAL
47a79f65 1624 select DM_USB
65fce763 1625 select OF_BOARD_SETUP
b5550e49
MY
1626 select OF_CONTROL
1627 select OF_LIBFDT
27350c92 1628 select PINCTRL
0680f1b1 1629 select SPL_BOARD_INIT if SPL
561ca649
MY
1630 select SPL_DM if SPL
1631 select SPL_LIBCOMMON_SUPPORT if SPL
1632 select SPL_LIBGENERIC_SUPPORT if SPL
1633 select SPL_OF_CONTROL if SPL
1634 select SPL_PINCTRL if SPL
b5550e49 1635 select SUPPORT_SPL
08a00cba 1636 imply CMD_DM
7ef5b1e7 1637 imply DISTRO_DEFAULTS
91d27a17 1638 imply FAT_WRITE
b6ef3a3f
MY
1639 help
1640 Support for UniPhier SoC family developed by Socionext Inc.
1641 (formerly, System LSI Business Division of Panasonic Corporation)
66cba041 1642
71f6354b 1643config ARCH_STM32
2514c2d0 1644 bool "Support STMicroelectronics STM32 MCU with cortex M"
ed09a554 1645 select CPU_V7M
66562414
KL
1646 select DM
1647 select DM_SERIAL
08a00cba 1648 imply CMD_DM
ed09a554 1649
94e9a4ef
PC
1650config ARCH_STI
1651 bool "Support STMicrolectronics SoCs"
5ed063d1 1652 select BLK
acf15001 1653 select CPU_V7A
214a17e6 1654 select DM
eee20f81 1655 select DM_MMC
584861ff 1656 select DM_RESET
5ed063d1 1657 select DM_SERIAL
08a00cba 1658 imply CMD_DM
94e9a4ef
PC
1659 help
1660 Support for STMicroelectronics STiH407/10 SoC family.
1661 This SoC is used on Linaro 96Board STiH410-B2260
1662
2514c2d0
PD
1663config ARCH_STM32MP
1664 bool "Support STMicroelectronics STM32MP Socs with cortex A"
08772f6e 1665 select ARCH_MISC_INIT
654706be 1666 select ARCH_SUPPORT_TFABOOT
2514c2d0
PD
1667 select BOARD_LATE_INIT
1668 select CLK
1669 select DM
1670 select DM_GPIO
1671 select DM_RESET
1672 select DM_SERIAL
5ed063d1 1673 select MISC
2514c2d0
PD
1674 select OF_CONTROL
1675 select OF_LIBFDT
05d36936 1676 select OF_SYSTEM_SETUP
2514c2d0
PD
1677 select PINCTRL
1678 select REGMAP
1679 select SUPPORT_SPL
1680 select SYSCON
86634a93 1681 select SYSRESET
2514c2d0 1682 select SYS_THUMB_BUILD
09259fce 1683 imply SPL_SYSRESET
08a00cba 1684 imply CMD_DM
c16cc4f6 1685 imply CMD_POWEROFF
f219361d 1686 imply OF_LIBFDT_OVERLAY
b4ae34b6 1687 imply ENV_VARS_UBOOT_RUNTIME_CONFIG
ce3772ca 1688 imply USE_PREBOOT
2514c2d0
PD
1689 help
1690 Support for STM32MP SoC family developed by STMicroelectronics,
1691 MPUs based on ARM cortex A core
abf2678f
PD
1692 U-BOOT is running in DDR, loaded by the First Stage BootLoader (FSBL).
1693 FSBL can be TF-A: Trusted Firmware for Cortex A, for trusted boot
1694 chain.
1695 SPL is the unsecure FSBL for the basic boot chain.
2514c2d0 1696
2444dae5
SG
1697config ARCH_ROCKCHIP
1698 bool "Support Rockchip SoCs"
aa15038c 1699 select BLK
79030a48 1700 select BINMAN if !ARM64
2444dae5 1701 select DM
aa15038c
SG
1702 select DM_GPIO
1703 select DM_I2C
1704 select DM_MMC
5ed063d1
MS
1705 select DM_PWM
1706 select DM_REGULATOR
aa15038c
SG
1707 select DM_SERIAL
1708 select DM_SPI
1709 select DM_SPI_FLASH
892742df 1710 select DM_USB if USB
14ad6eb2 1711 select ENABLE_ARM_SOC_BOOT0_HOOK
5ed063d1 1712 select OF_CONTROL
f1b1f770 1713 select SPI
5ed063d1 1714 select SPL_DM if SPL
56c40460
LM
1715 select SPL_DM_SPI if SPL
1716 select SPL_DM_SPI_FLASH if SPL
5ed063d1
MS
1717 select SYS_MALLOC_F
1718 select SYS_THUMB_BUILD if !ARM64
1719 imply ADC
08a00cba 1720 imply CMD_DM
b0a569da 1721 imply DEBUG_UART_BOARD_INIT
7325f6cf 1722 imply DISTRO_DEFAULTS
91d27a17 1723 imply FAT_WRITE
8e8bcccc 1724 imply SARADC_ROCKCHIP
5ed063d1 1725 imply SPL_SYSRESET
64eff47c 1726 imply SPL_SYS_MALLOC_SIMPLE
c3c0331d 1727 imply SYS_NS16550
5ed063d1
MS
1728 imply TPL_SYSRESET
1729 imply USB_FUNCTION_FASTBOOT
2444dae5 1730
746f985a
ST
1731config TARGET_THUNDERX_88XX
1732 bool "Support ThunderX 88xx"
b4ba1693 1733 select ARM64
746f985a 1734 select OF_CONTROL
cf2c7784 1735 select PL01X_SERIAL
5ed063d1 1736 select SYS_CACHE_SHIFT_7
746f985a 1737
4697abea 1738config ARCH_ASPEED
1739 bool "Support Aspeed SoCs"
4697abea 1740 select DM
5ed063d1 1741 select OF_CONTROL
08a00cba 1742 imply CMD_DM
4697abea 1743
e3aafef4 1744config TARGET_DURIAN
1745 bool "Support Phytium Durian Platform"
1746 select ARM64
1747 help
1748 Support for durian platform.
1749 It has 2GB Sdram, uart and pcie.
1750
7d706a88
AN
1751config TARGET_PRESIDIO_ASIC
1752 bool "Support Cortina Presidio ASIC Platform"
1753 select ARM64
1754
770a8eef
AA
1755config TARGET_XENGUEST_ARM64
1756 bool "Xen guest ARM64"
1757 select ARM64
1758 select XEN
1759 select OF_CONTROL
1760 select LINUX_KERNEL_IMAGE_HEADER
384d5cfe 1761 select XEN_SERIAL
60e49ff1 1762 select SSCANF
dd84058d
MY
1763endchoice
1764
6324d506
AT
1765config ARCH_SUPPORT_TFABOOT
1766 bool
1767
1768config TFABOOT
1769 bool "Support for booting from TF-A"
1770 depends on ARCH_SUPPORT_TFABOOT
1771 default n
1772 help
1773 Enabling this will make a U-Boot binary that is capable of being
e852b30b 1774 booted via TF-A (Trusted Firmware for Cortex-A).
6324d506 1775
5fbed8f2
AD
1776config TI_SECURE_DEVICE
1777 bool "HS Device Type Support"
3a543a80 1778 depends on ARCH_KEYSTONE || ARCH_OMAP2PLUS || ARCH_K3
5fbed8f2
AD
1779 help
1780 If a high secure (HS) device type is being used, this config
1781 must be set. This option impacts various aspects of the
1782 build system (to create signed boot images that can be
1783 authenticated) and the code. See the doc/README.ti-secure
1784 file for further details.
1785
9c4b0131
TR
1786if AM43XX || AM33XX || OMAP54XX || ARCH_KEYSTONE
1787config ISW_ENTRY_ADDR
1788 hex "Address in memory or XIP address of bootloader entry point"
1789 default 0x402F4000 if AM43XX
1790 default 0x402F0400 if AM33XX
1791 default 0x40301350 if OMAP54XX
1792 help
1793 After any reset, the boot ROM searches the boot media for a valid
1794 boot image. For non-XIP devices, the ROM then copies the image into
1795 internal memory. For all boot modes, after the ROM processes the
1796 boot image it eventually computes the entry point address depending
1797 on the device type (secure/non-secure), boot media (xip/non-xip) and
1798 image headers.
1799endif
1800
4697abea 1801source "arch/arm/mach-aspeed/Kconfig"
1802
4614b891
MY
1803source "arch/arm/mach-at91/Kconfig"
1804
ddf6bd48 1805source "arch/arm/mach-bcm283x/Kconfig"
3491ba63 1806
894c3ad2
TF
1807source "arch/arm/mach-bcmstb/Kconfig"
1808
ddf6bd48 1809source "arch/arm/mach-davinci/Kconfig"
34e609ca 1810
77b55e8c 1811source "arch/arm/mach-exynos/Kconfig"
72df68cc 1812
72a8ff4b 1813source "arch/arm/mach-highbank/Kconfig"
ef2b694c 1814
5cbbd9bd
MY
1815source "arch/arm/mach-integrator/Kconfig"
1816
e479a7d5
RM
1817source "arch/arm/mach-ipq40xx/Kconfig"
1818
586bde93
LV
1819source "arch/arm/mach-k3/Kconfig"
1820
39a72345 1821source "arch/arm/mach-keystone/Kconfig"
c338f09e 1822
56f86e39 1823source "arch/arm/mach-kirkwood/Kconfig"
47539e23 1824
b3d9a8b1 1825source "arch/arm/mach-lpc32xx/Kconfig"
ee54dfea 1826
c3d89140
SR
1827source "arch/arm/mach-mvebu/Kconfig"
1828
0a37cf8f
YS
1829source "arch/arm/cpu/armv7/ls102xa/Kconfig"
1830
07df697e
FE
1831source "arch/arm/mach-imx/mx2/Kconfig"
1832
3159ec64
ML
1833source "arch/arm/mach-imx/mx3/Kconfig"
1834
7a7391fd
PF
1835source "arch/arm/mach-imx/mx5/Kconfig"
1836
1837source "arch/arm/mach-imx/mx6/Kconfig"
e90a08da 1838
552a848e 1839source "arch/arm/mach-imx/mx7/Kconfig"
1a8150d4 1840
7a7391fd 1841source "arch/arm/mach-imx/mx7ulp/Kconfig"
89ebc821 1842
b2b8b9be
PF
1843source "arch/arm/mach-imx/imx8/Kconfig"
1844
cd357ad1 1845source "arch/arm/mach-imx/imx8m/Kconfig"
424ee3d1 1846
77eb9a90
GB
1847source "arch/arm/mach-imx/imxrt/Kconfig"
1848
c5343d4e
SA
1849source "arch/arm/mach-imx/mxs/Kconfig"
1850
983e3700 1851source "arch/arm/mach-omap2/Kconfig"
6384726d 1852
da28e58a
YS
1853source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
1854
3e93b4e6 1855source "arch/arm/mach-orion5x/Kconfig"
22f2be7a 1856
97775d26
MS
1857source "arch/arm/mach-owl/Kconfig"
1858
badbb63c 1859source "arch/arm/mach-rmobile/Kconfig"
f40b9898 1860
bfcef28a
BG
1861source "arch/arm/mach-meson/Kconfig"
1862
cbd2fba1
RL
1863source "arch/arm/mach-mediatek/Kconfig"
1864
32f11829
TT
1865source "arch/arm/mach-qemu/Kconfig"
1866
2444dae5
SG
1867source "arch/arm/mach-rockchip/Kconfig"
1868
225f5eec 1869source "arch/arm/mach-s5pc1xx/Kconfig"
311757be 1870
08592136
MK
1871source "arch/arm/mach-snapdragon/Kconfig"
1872
7865f4b0
MY
1873source "arch/arm/mach-socfpga/Kconfig"
1874
94e9a4ef
PC
1875source "arch/arm/mach-sti/Kconfig"
1876
0a61ee88
VM
1877source "arch/arm/mach-stm32/Kconfig"
1878
2514c2d0
PD
1879source "arch/arm/mach-stm32mp/Kconfig"
1880
3abfd887
MY
1881source "arch/arm/mach-sunxi/Kconfig"
1882
09f455dc 1883source "arch/arm/mach-tegra/Kconfig"
ddd960e6 1884
689088f9
SG
1885source "arch/arm/mach-u8500/Kconfig"
1886
4c425570 1887source "arch/arm/mach-uniphier/Kconfig"
66cba041 1888
7966b437
SA
1889source "arch/arm/cpu/armv7/vf610/Kconfig"
1890
0107f240 1891source "arch/arm/mach-zynq/Kconfig"
ddd960e6 1892
274ccb5b
MS
1893source "arch/arm/mach-zynqmp/Kconfig"
1894
ec48b6c9
MS
1895source "arch/arm/mach-versal/Kconfig"
1896
1d6c54ec
MS
1897source "arch/arm/mach-zynqmp-r5/Kconfig"
1898
ea624e19
HG
1899source "arch/arm/cpu/armv7/Kconfig"
1900
23b5877c
LW
1901source "arch/arm/cpu/armv8/Kconfig"
1902
552a848e 1903source "arch/arm/mach-imx/Kconfig"
a05a6045 1904
95e9a8e2
SB
1905source "arch/arm/mach-nexell/Kconfig"
1906
d8ccbe93 1907source "board/bosch/shc/Kconfig"
45123804 1908source "board/bosch/guardian/Kconfig"
dd84058d 1909source "board/CarMediaLab/flea3/Kconfig"
dd84058d 1910source "board/Marvell/aspenite/Kconfig"
dd84058d 1911source "board/Marvell/gplugd/Kconfig"
dd84058d 1912source "board/armadeus/apf27/Kconfig"
dd84058d
MY
1913source "board/armltd/vexpress/Kconfig"
1914source "board/armltd/vexpress64/Kconfig"
7d706a88 1915source "board/cortina/presidio-asic/Kconfig"
43486e4c 1916source "board/broadcom/bcm23550_w1d/Kconfig"
dd84058d 1917source "board/broadcom/bcm28155_ap/Kconfig"
be2fc084 1918source "board/broadcom/bcm963158/Kconfig"
645b7ec5 1919source "board/broadcom/bcm968360bg/Kconfig"
40b59b05 1920source "board/broadcom/bcm968580xref/Kconfig"
abb1678c
SR
1921source "board/broadcom/bcmcygnus/Kconfig"
1922source "board/broadcom/bcmnsp/Kconfig"
274bced8 1923source "board/broadcom/bcmns2/Kconfig"
291635ae 1924source "board/broadcom/bcmns3/Kconfig"
746f985a 1925source "board/cavium/thunderx/Kconfig"
dd84058d 1926source "board/cirrus/edb93xx/Kconfig"
85ab0452 1927source "board/eets/pdu001/Kconfig"
6f332765 1928source "board/emulation/qemu-arm/Kconfig"
44937214
PK
1929source "board/freescale/ls2080a/Kconfig"
1930source "board/freescale/ls2080aqds/Kconfig"
1931source "board/freescale/ls2080ardb/Kconfig"
e84a324b 1932source "board/freescale/ls1088a/Kconfig"
353f36d9 1933source "board/freescale/ls1028a/Kconfig"
550e3dc0 1934source "board/freescale/ls1021aqds/Kconfig"
02b5d2ed 1935source "board/freescale/ls1043aqds/Kconfig"
c8a7d9da 1936source "board/freescale/ls1021atwr/Kconfig"
87821220 1937source "board/freescale/ls1021atsn/Kconfig"
20c700f8 1938source "board/freescale/ls1021aiot/Kconfig"
126fe70d 1939source "board/freescale/ls1046aqds/Kconfig"
f3a8e2b7 1940source "board/freescale/ls1043ardb/Kconfig"
dd02936f 1941source "board/freescale/ls1046ardb/Kconfig"
d90c7ac7 1942source "board/freescale/ls1046afrwy/Kconfig"
9d044fcb 1943source "board/freescale/ls1012aqds/Kconfig"
3b6e3898 1944source "board/freescale/ls1012ardb/Kconfig"
ff78aa2b 1945source "board/freescale/ls1012afrdm/Kconfig"
58c3e620 1946source "board/freescale/lx2160a/Kconfig"
dd84058d 1947source "board/freescale/mx35pdk/Kconfig"
9702ec00 1948source "board/freescale/s32v234evb/Kconfig"
ab38bf6a 1949source "board/grinn/chiliboard/Kconfig"
345243ed 1950source "board/hisilicon/hikey/Kconfig"
c62c7ef7 1951source "board/hisilicon/hikey960/Kconfig"
d754254f 1952source "board/hisilicon/poplar/Kconfig"
a96c08f5 1953source "board/isee/igep003x/Kconfig"
10e959a1 1954source "board/myir/mys_6ulx/Kconfig"
dd84058d
MY
1955source "board/spear/spear300/Kconfig"
1956source "board/spear/spear310/Kconfig"
1957source "board/spear/spear320/Kconfig"
1958source "board/spear/spear600/Kconfig"
1959source "board/spear/x600/Kconfig"
9fa32b12 1960source "board/st/stv0991/Kconfig"
9d1b2987 1961source "board/tcl/sl50/Kconfig"
dd84058d 1962source "board/toradex/colibri_pxa270/Kconfig"
d8d33b6d 1963source "board/variscite/dart_6ul/Kconfig"
6ce89324 1964source "board/vscom/baltos/Kconfig"
6da4f67a 1965source "board/xilinx/Kconfig"
37e3a36a 1966source "board/xilinx/zynq/Kconfig"
c436bf92 1967source "board/xilinx/zynqmp/Kconfig"
526a67eb 1968source "board/xilinx/versal/Kconfig"
e3aafef4 1969source "board/phytium/durian/Kconfig"
770a8eef 1970source "board/xen/xenguest_arm64/Kconfig"
dd84058d 1971
51b17d49
MY
1972source "arch/arm/Kconfig.debug"
1973
dd84058d 1974endmenu
b529993e
PT
1975
1976config SPL_LDSCRIPT
6e7bdde4
MS
1977 default "arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" if (ARCH_MX23 || ARCH_MX28) && !SPL_FRAMEWORK
1978 default "arch/arm/cpu/arm1136/u-boot-spl.lds" if CPU_ARM1136
b529993e 1979 default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64
This page took 0.713072 seconds and 4 git commands to generate.