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