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