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