Kconfig 34.7 KB
Newer Older
1 2 3 4 5 6
menu "ARM architecture"
	depends on ARM

config SYS_ARCH
	default "arm"

7 8
config ARM64
	bool
9
	select PHYS_64BIT
10
	select SYS_CACHE_SHIFT_6
11

12 13 14 15 16 17 18 19 20 21
if ARM64
config POSITION_INDEPENDENT
	bool "Generate position-independent pre-relocation code"
	help
	  U-Boot expects to be linked to a specific hard-coded address, and to
	  be loaded to and run from that address. This option lifts that
	  restriction, thus allowing the code to be loaded to and executed
	  from almost any address. This logic relies on the relocation
	  information that is embedded into the binary to support U-Boot
	  relocating itself to the top-of-RAM later during execution.
22 23 24 25 26 27 28 29 30 31 32 33 34

config SYS_INIT_SP_BSS_OFFSET
	int
	help
	  U-Boot typically uses a hard-coded value for the stack pointer
	  before relocation. Define this option to instead calculate the
	  initial SP at run-time. This is useful to avoid hard-coding addresses
	  into U-Boot, so that can be loaded and executed at arbitrary
	  addresses and thus avoid using arbitrary addresses at runtime. This
	  option's value is the offset added to &_bss_start in order to
	  calculate the stack pointer. This offset should be large enough so
	  that the early malloc region, global data (gd), and early stack usage
	  do not overlap any appended DTB.
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51

config LINUX_KERNEL_IMAGE_HEADER
	bool
	help
	  Place a Linux kernel image header at the start of the U-Boot binary.
	  The format of the header is described in the Linux kernel source at
	  Documentation/arm64/booting.txt. This feature is useful since the
	  image header reports the amount of memory (BSS and similar) that
	  U-Boot needs to use, but which isn't part of the binary.

if LINUX_KERNEL_IMAGE_HEADER
config LNX_KRNL_IMG_TEXT_OFFSET_BASE
	hex
	help
	  The value subtracted from CONFIG_SYS_TEXT_BASE to calculate the
	  TEXT_OFFSET value written in to the Linux kernel image header.
endif
52 53 54 55 56 57
endif

config STATIC_RELA
	bool
	default y if ARM64 && !POSITION_INDEPENDENT

58 59 60 61
config DMA_ADDR_T_64BIT
	bool
	default y if ARM64

62
config HAS_VBAR
63
	bool
64

65
config HAS_THUMB2
66
	bool
67

68 69 70 71 72 73 74 75 76
# Used for compatibility with asm files copied from the kernel
config ARM_ASM_UNIFIED
	bool
	default y

# Used for compatibility with asm files copied from the kernel
config THUMB2_KERNEL
	bool

77 78 79 80 81 82
config SYS_ARM_CACHE_CP15
	bool "CP15 based cache enabling support"
	help
	  Select this if your processor suports enabling caches by using
	  CP15 registers.

83 84
config SYS_ARM_MMU
	bool "MMU-based Paged Memory Management Support"
85
	select SYS_ARM_CACHE_CP15
86 87 88 89
	help
	  Select if you want MMU-based virtualised addressing space
	  support by paged memory management.

L
Lokesh Vutla 已提交
90 91 92 93 94 95 96 97 98
config SYS_ARM_MPU
	bool 'Use the ARM v7 PMSA Compliant MPU'
	help
	  Some ARM systems without an MMU have instead a Memory Protection
	  Unit (MPU) that defines the type and permissions for regions of
	  memory.
	  If your CPU has an MPU then you should choose 'y' here unless you
	  know that you do not want to use the MPU.

T
Tom Rini 已提交
99 100 101 102 103 104 105 106 107 108 109 110
# If set, the workarounds for these ARM errata are applied early during U-Boot
# startup. Note that in general these options force the workarounds to be
# applied; no CPU-type/version detection exists, unlike the similar options in
# the Linux kernel. Do not set these options unless they apply!  Also note that
# the following can be machine specific errata. These do have ability to
# provide rudimentary version and machine specific checks, but expect no
# product checks:
# CONFIG_ARM_ERRATA_430973
# CONFIG_ARM_ERRATA_454179
# CONFIG_ARM_ERRATA_621766
# CONFIG_ARM_ERRATA_798870
# CONFIG_ARM_ERRATA_801819
111
# CONFIG_ARM_CORTEX_A8_CVE_2017_5715
112
# CONFIG_ARM_CORTEX_A15_CVE_2017_5715
113

T
Tom Rini 已提交
114 115 116 117 118 119 120 121 122 123 124 125
config ARM_ERRATA_430973
	bool

config ARM_ERRATA_454179
	bool

config ARM_ERRATA_621766
	bool

config ARM_ERRATA_716044
	bool

126 127 128
config ARM_ERRATA_725233
	bool

T
Tom Rini 已提交
129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170
config ARM_ERRATA_742230
	bool

config ARM_ERRATA_743622
	bool

config ARM_ERRATA_751472
	bool

config ARM_ERRATA_761320
	bool

config ARM_ERRATA_773022
	bool

config ARM_ERRATA_774769
	bool

config ARM_ERRATA_794072
	bool

config ARM_ERRATA_798870
	bool

config ARM_ERRATA_801819
	bool

config ARM_ERRATA_826974
	bool

config ARM_ERRATA_828024
	bool

config ARM_ERRATA_829520
	bool

config ARM_ERRATA_833069
	bool

config ARM_ERRATA_833471
	bool

171
config ARM_ERRATA_845369
172
	bool
173

174 175 176 177 178 179
config ARM_ERRATA_852421
	bool

config ARM_ERRATA_852423
	bool

180 181 182
config ARM_ERRATA_855873
	bool

183 184 185
config ARM_CORTEX_A8_CVE_2017_5715
	bool

186 187 188
config ARM_CORTEX_A15_CVE_2017_5715
	bool

189
config CPU_ARM720T
190
	bool
191
	select SYS_CACHE_SHIFT_5
192
	imply SYS_ARM_MMU
193 194

config CPU_ARM920T
195
	bool
196
	select SYS_CACHE_SHIFT_5
197
	imply SYS_ARM_MMU
198 199

config CPU_ARM926EJS
200
	bool
201
	select SYS_CACHE_SHIFT_5
202
	imply SYS_ARM_MMU
203 204

config CPU_ARM946ES
205
	bool
206
	select SYS_CACHE_SHIFT_5
207
	imply SYS_ARM_MMU
208 209

config CPU_ARM1136
210
	bool
211
	select SYS_CACHE_SHIFT_5
212
	imply SYS_ARM_MMU
213 214

config CPU_ARM1176
215 216
	bool
	select HAS_VBAR
217
	select SYS_CACHE_SHIFT_5
218
	imply SYS_ARM_MMU
219

220
config CPU_V7A
221 222
	bool
	select HAS_THUMB2
223
	select HAS_VBAR
224
	select SYS_CACHE_SHIFT_6
225
	imply SYS_ARM_MMU
226

R
rev13@wp.pl 已提交
227 228
config CPU_V7M
	bool
229
	select HAS_THUMB2
L
Lokesh Vutla 已提交
230
	select SYS_ARM_MPU
231
	select SYS_CACHE_SHIFT_5
232
	select SYS_THUMB_BUILD
233
	select THUMB2_KERNEL
R
rev13@wp.pl 已提交
234

M
Michal Simek 已提交
235 236 237
config CPU_V7R
	bool
	select HAS_THUMB2
L
Lokesh Vutla 已提交
238
	select SYS_ARM_CACHE_CP15
239 240
	select SYS_ARM_MPU
	select SYS_CACHE_SHIFT_6
M
Michal Simek 已提交
241

242
config CPU_PXA
243
	bool
244
	select SYS_CACHE_SHIFT_5
245
	imply SYS_ARM_MMU
246 247

config CPU_SA1100
248
	bool
249
	select SYS_CACHE_SHIFT_5
250
	imply SYS_ARM_MMU
251 252

config SYS_CPU
253 254 255 256 257 258
	default "arm720t" if CPU_ARM720T
	default "arm920t" if CPU_ARM920T
	default "arm926ejs" if CPU_ARM926EJS
	default "arm946es" if CPU_ARM946ES
	default "arm1136" if CPU_ARM1136
	default "arm1176" if CPU_ARM1176
259
	default "armv7" if CPU_V7A
M
Michal Simek 已提交
260
	default "armv7" if CPU_V7R
261 262 263
	default "armv7m" if CPU_V7M
	default "pxa" if CPU_PXA
	default "sa1100" if CPU_SA1100
264
	default "armv8" if ARM64
265

266 267 268 269 270 271 272 273
config SYS_ARM_ARCH
	int
	default 4 if CPU_ARM720T
	default 4 if CPU_ARM920T
	default 5 if CPU_ARM926EJS
	default 5 if CPU_ARM946ES
	default 6 if CPU_ARM1136
	default 6 if CPU_ARM1176
274
	default 7 if CPU_V7A
275
	default 7 if CPU_V7M
M
Michal Simek 已提交
276
	default 7 if CPU_V7R
277 278 279 280
	default 5 if CPU_PXA
	default 4 if CPU_SA1100
	default 8 if ARM64

281 282 283 284 285 286 287 288 289 290 291 292 293 294 295
config SYS_CACHE_SHIFT_5
	bool

config SYS_CACHE_SHIFT_6
	bool

config SYS_CACHE_SHIFT_7
	bool

config SYS_CACHELINE_SIZE
	int
	default 128 if SYS_CACHE_SHIFT_7
	default 64 if SYS_CACHE_SHIFT_6
	default 32 if SYS_CACHE_SHIFT_5

296 297
config SYS_ARCH_TIMER
	bool "ARM Generic Timer support"
298
	depends on CPU_V7A || ARM64
299 300 301 302 303 304 305
	default y if ARM64
	help
	  The ARM Generic Timer (aka arch-timer) provides an architected
	  interface to a timer source on an SoC.
	  It is mandantory for ARMv8 implementation and widely available
	  on ARMv7 systems.

306 307
config ARM_SMCCC
	bool "Support for ARM SMC Calling Convention (SMCCC)"
308
	depends on CPU_V7A || ARM64
309
	select ARM_PSCI_FW
310 311 312 313 314
	help
	  Say Y here if you want to enable ARM SMC Calling Convention.
	  This should be enabled if U-Boot needs to communicate with system
	  firmware (for example, PSCI) according to SMCCC.

315 316 317 318 319 320 321
config SEMIHOSTING
	bool "support boot from semihosting"
	help
	  In emulated environments, semihosting is a way for
	  the hosted environment to call out to the emulator to
	  retrieve files from the host machine.

322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340
config SYS_THUMB_BUILD
	bool "Build U-Boot using the Thumb instruction set"
	depends on !ARM64
	help
	   Use this flag to build U-Boot using the Thumb instruction set for
	   ARM architectures. Thumb instruction set provides better code
	   density. For ARM architectures that support Thumb2 this flag will
	   result in Thumb2 code generated by GCC.

config SPL_SYS_THUMB_BUILD
	bool "Build SPL using the Thumb instruction set"
	default y if SYS_THUMB_BUILD
	depends on !ARM64
	help
	   Use this flag to build SPL using the Thumb instruction set for
	   ARM architectures. Thumb instruction set provides better code
	   density. For ARM architectures that support Thumb2 this flag will
	   result in Thumb2 code generated by GCC.

341 342 343 344 345 346
config SYS_L2CACHE_OFF
	bool "L2cache off"
	help
	  If SoC does not support L2CACHE or one do not want to enable
	  L2CACHE, choose this option.

347 348 349 350
config ENABLE_ARM_SOC_BOOT0_HOOK
	bool "prepare BOOT0 header"
	help
	  If the SoC's BOOT0 requires a header area filled with (magic)
351 352
	  values, then choose this option, and create a file included as
	  <asm/arch/boot0.h> which contains the required assembler code.
353

354 355 356 357
config ARM_CORTEX_CPU_IS_UP
	bool
	default n

358 359
config USE_ARCH_MEMCPY
	bool "Use an assembly optimized implementation of memcpy"
360 361 362 363 364 365 366 367
	default y
	depends on !ARM64
	help
	  Enable the generation of an optimized version of memcpy.
	  Such implementation may be faster under some conditions
	  but may increase the binary size.

config SPL_USE_ARCH_MEMCPY
368
	bool "Use an assembly optimized implementation of memcpy for SPL"
369
	default y if USE_ARCH_MEMCPY
370
	depends on !ARM64
371 372 373 374 375 376 377
	help
	  Enable the generation of an optimized version of memcpy.
	  Such implementation may be faster under some conditions
	  but may increase the binary size.

config USE_ARCH_MEMSET
	bool "Use an assembly optimized implementation of memset"
378 379 380 381 382 383 384 385
	default y
	depends on !ARM64
	help
	  Enable the generation of an optimized version of memset.
	  Such implementation may be faster under some conditions
	  but may increase the binary size.

config SPL_USE_ARCH_MEMSET
386
	bool "Use an assembly optimized implementation of memset for SPL"
387
	default y if USE_ARCH_MEMSET
388
	depends on !ARM64
389 390 391 392 393
	help
	  Enable the generation of an optimized version of memset.
	  Such implementation may be faster under some conditions
	  but may increase the binary size.

394 395 396 397 398 399
config ARM64_SUPPORT_AARCH32
	bool "ARM64 system support AArch32 execution state"
	default y if ARM64 && !TARGET_THUNDERX_88XX
	help
	  This ARM64 system supports AArch32 execution state.

400 401
choice
	prompt "Target select"
S
Simon Glass 已提交
402
	default TARGET_HIKEY
403

404 405
config ARCH_AT91
	bool "Atmel AT91"
406
	select SPL_BOARD_INIT if SPL && !TARGET_SMARTWEB
407 408 409

config TARGET_EDB93XX
	bool "Support edb93xx"
410
	select CPU_ARM920T
411
	select PL010_SERIAL
412 413 414

config TARGET_ASPENITE
	bool "Support aspenite"
415
	select CPU_ARM926EJS
416 417 418

config TARGET_GPLUGD
	bool "Support gplugd"
419
	select CPU_ARM926EJS
420

421 422
config ARCH_DAVINCI
	bool "TI DaVinci"
423
	select CPU_ARM926EJS
424
	imply CMD_SAVES
425 426
	help
	  Support for TI's DaVinci platform.
427

428 429
config KIRKWOOD
	bool "Marvell Kirkwood"
430
	select ARCH_MISC_INIT
431 432
	select BOARD_EARLY_INIT_F
	select CPU_ARM926EJS
433

434
config ARCH_MVEBU
435
	bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)"
436
	select DM
437
	select DM_ETH
438
	select DM_SERIAL
439 440
	select DM_SPI
	select DM_SPI_FLASH
441 442
	select OF_CONTROL
	select OF_SEPARATE
A
Adam Ford 已提交
443
	select SPI
M
Michal Simek 已提交
444
	imply CMD_DM
445

446 447
config TARGET_DEVKIT3250
	bool "Support devkit3250"
448
	select CPU_ARM926EJS
449
	select SUPPORT_SPL
450

451 452 453 454 455
config TARGET_WORK_92105
	bool "Support work_92105"
	select CPU_ARM926EJS
	select SUPPORT_SPL

456 457
config TARGET_APF27
	bool "Support apf27"
458
	select CPU_ARM926EJS
M
Masahiro Yamada 已提交
459
	select SUPPORT_SPL
460

461 462
config ORION5X
	bool "Marvell Orion"
463
	select CPU_ARM926EJS
464 465 466

config TARGET_SPEAR300
	bool "Support spear300"
467
	select BOARD_EARLY_INIT_F
468
	select CPU_ARM926EJS
469
	select PL011_SERIAL
470
	imply CMD_SAVES
471 472 473

config TARGET_SPEAR310
	bool "Support spear310"
474
	select BOARD_EARLY_INIT_F
475
	select CPU_ARM926EJS
476
	select PL011_SERIAL
477
	imply CMD_SAVES
478 479 480

config TARGET_SPEAR320
	bool "Support spear320"
481
	select BOARD_EARLY_INIT_F
482
	select CPU_ARM926EJS
483
	select PL011_SERIAL
484
	imply CMD_SAVES
485 486 487

config TARGET_SPEAR600
	bool "Support spear600"
488
	select BOARD_EARLY_INIT_F
489
	select CPU_ARM926EJS
490
	select PL011_SERIAL
491
	imply CMD_SAVES
492

493 494
config TARGET_STV0991
	bool "Support stv0991"
495
	select CPU_V7A
496 497
	select DM
	select DM_SERIAL
498 499
	select DM_SPI
	select DM_SPI_FLASH
500
	select PL01X_SERIAL
A
Adam Ford 已提交
501
	select SPI
502
	select SPI_FLASH
M
Michal Simek 已提交
503
	imply CMD_DM
504

505 506
config TARGET_X600
	bool "Support x600"
507
	select BOARD_LATE_INIT
508
	select CPU_ARM926EJS
509
	select PL011_SERIAL
510
	select SUPPORT_SPL
511 512 513

config TARGET_WOODBURN
	bool "Support woodburn"
514
	select CPU_ARM1136
515 516 517

config TARGET_WOODBURN_SD
	bool "Support woodburn_sd"
518
	select CPU_ARM1136
M
Masahiro Yamada 已提交
519
	select SUPPORT_SPL
520 521 522

config TARGET_FLEA3
	bool "Support flea3"
523
	select CPU_ARM1136
524 525 526

config TARGET_MX35PDK
	bool "Support mx35pdk"
527
	select BOARD_LATE_INIT
528
	select CPU_ARM1136
529

530 531
config ARCH_BCM283X
	bool "Broadcom BCM283X family"
M
Masahiro Yamada 已提交
532 533
	select DM
	select DM_GPIO
534
	select DM_SERIAL
535
	select OF_CONTROL
536
	select PL01X_SERIAL
537
	select SERIAL_SEARCH_ALL
M
Michal Simek 已提交
538
	imply CMD_DM
T
Tom Rini 已提交
539
	imply FAT_WRITE
540

541 542
config TARGET_VEXPRESS_CA15_TC2
	bool "Support vexpress_ca15_tc2"
543
	select CPU_V7A
544 545
	select CPU_V7_HAS_NONSEC
	select CPU_V7_HAS_VIRT
546
	select PL011_SERIAL
547

548 549 550 551 552 553
config ARCH_BCMSTB
	bool "Broadcom BCM7XXX family"
	select CPU_V7A
	select DM
	select OF_CONTROL
	select OF_PRIOR_STAGE
M
Michal Simek 已提交
554
	imply CMD_DM
555 556 557 558
	help
	  This enables support for Broadcom ARM-based set-top box
	  chipsets, including the 7445 family of chips.

559 560
config TARGET_VEXPRESS_CA5X2
	bool "Support vexpress_ca5x2"
561
	select CPU_V7A
562
	select PL011_SERIAL
563 564 565

config TARGET_VEXPRESS_CA9X4
	bool "Support vexpress_ca9x4"
566
	select CPU_V7A
567
	select PL011_SERIAL
568

569 570
config TARGET_BCM23550_W1D
	bool "Support bcm23550_w1d"
571
	select CPU_V7A
572
	imply CRC32_VERIFY
T
Tom Rini 已提交
573
	imply FAT_WRITE
574

575 576
config TARGET_BCM28155_AP
	bool "Support bcm28155_ap"
577
	select CPU_V7A
578
	imply CRC32_VERIFY
T
Tom Rini 已提交
579
	imply FAT_WRITE
580

S
Steve Rae 已提交
581 582
config TARGET_BCMCYGNUS
	bool "Support bcmcygnus"
583
	select CPU_V7A
584 585
	imply BCM_SF2_ETH
	imply BCM_SF2_ETH_GMAC
S
Simon Glass 已提交
586
	imply CMD_HASH
587
	imply CRC32_VERIFY
T
Tom Rini 已提交
588
	imply FAT_WRITE
589
	imply HASH_VERIFY
590
	imply NETDEVICES
591

S
Steve Rae 已提交
592 593
config TARGET_BCMNSP
	bool "Support bcmnsp"
594
	select CPU_V7A
595

596 597 598 599 600 601 602 603
config TARGET_BCMNS2
	bool "Support Broadcom Northstar2"
	select ARM64
	help
	  Support for Broadcom Northstar 2 SoCs.  NS2 is a quad-core 64-bit
	  ARMv8 Cortex-A57 processors targeting a broad range of networking
	  applications

604 605
config ARCH_EXYNOS
	bool "Samsung EXYNOS"
M
Masahiro Yamada 已提交
606
	select DM
607
	select DM_GPIO
608
	select DM_I2C
609
	select DM_KEYBOARD
M
Masahiro Yamada 已提交
610 611
	select DM_SERIAL
	select DM_SPI
612
	select DM_SPI_FLASH
A
Adam Ford 已提交
613
	select SPI
M
Michal Simek 已提交
614
	imply CMD_DM
T
Tom Rini 已提交
615
	imply FAT_WRITE
616

617 618
config ARCH_S5PC1XX
	bool "Samsung S5PC1XX"
619
	select CPU_V7A
M
Masahiro Yamada 已提交
620 621
	select DM
	select DM_GPIO
622
	select DM_I2C
623
	select DM_SERIAL
M
Michal Simek 已提交
624
	imply CMD_DM
625

626 627
config ARCH_HIGHBANK
	bool "Calxeda Highbank"
628
	select CPU_V7A
629
	select PL011_SERIAL
630

631 632
config ARCH_INTEGRATOR
	bool "ARM Ltd. Integrator family"
633 634
	select DM
	select DM_SERIAL
635
	select PL01X_SERIAL
M
Michal Simek 已提交
636
	imply CMD_DM
637

638 639
config ARCH_KEYSTONE
	bool "TI Keystone"
640
	select CMD_POWEROFF
641
	select CPU_V7A
M
Masahiro Yamada 已提交
642
	select SUPPORT_SPL
643
	select SYS_ARCH_TIMER
644
	select SYS_THUMB_BUILD
645
	imply CMD_MTDPARTS
646
	imply CMD_SAVES
647
	imply FIT
648

649 650
config ARCH_OMAP2PLUS
	bool "TI OMAP2+"
651
	select CPU_V7A
652
	select SPL_BOARD_INIT if SPL
653
	select SPL_STACK_R if SPL
654 655 656
	select SUPPORT_SPL
	imply FIT

657 658
config ARCH_MESON
	bool "Amlogic Meson"
659
	imply DISTRO_DEFAULTS
660 661 662 663 664
	help
	  Support for the Meson SoC family developed by Amlogic Inc.,
	  targeted at media players and tablet computers. We currently
	  support the S905 (GXBaby) 64-bit SoC.

P
Peng Fan 已提交
665 666 667 668 669
config ARCH_MX8M
	bool "NXP i.MX8M platform"
	select ARM64
	select DM
	select SUPPORT_SPL
M
Michal Simek 已提交
670
	imply CMD_DM
P
Peng Fan 已提交
671

672 673 674 675 676 677
config ARCH_MX23
	bool "NXP i.MX23 family"
	select CPU_ARM926EJS
	select PL011_SERIAL
	select SUPPORT_SPL

678 679 680
config ARCH_MX25
	bool "NXP MX25"
	select CPU_ARM926EJS
A
Adam Ford 已提交
681
	imply MXC_GPIO
682

683 684 685 686 687 688
config ARCH_MX28
	bool "NXP i.MX28 family"
	select CPU_ARM926EJS
	select PL011_SERIAL
	select SUPPORT_SPL

689 690 691 692
config ARCH_MX31
	bool "NXP i.MX31 family"
	select CPU_ARM1136

P
Peng Fan 已提交
693
config ARCH_MX7ULP
694
	bool "NXP MX7ULP"
695
	select CPU_V7A
P
Peng Fan 已提交
696
	select ROM_UNIFIED_SECTIONS
A
Adam Ford 已提交
697
	imply MXC_GPIO
P
Peng Fan 已提交
698

699 700
config ARCH_MX7
	bool "Freescale MX7"
701 702
	select ARCH_MISC_INIT
	select BOARD_EARLY_INIT_F
703
	select CPU_V7A
704 705
	select SYS_FSL_HAS_SEC if SECURE_BOOT
	select SYS_FSL_SEC_COMPAT_4
706
	select SYS_FSL_SEC_LE
A
Adam Ford 已提交
707
	imply MXC_GPIO
708

709 710
config ARCH_MX6
	bool "Freescale MX6"
711
	select CPU_V7A
712 713
	select SYS_FSL_HAS_SEC if SECURE_BOOT
	select SYS_FSL_SEC_COMPAT_4
714
	select SYS_FSL_SEC_LE
715
	select SYS_THUMB_BUILD if SPL
A
Adam Ford 已提交
716
	imply MXC_GPIO
717

718 719
if ARCH_MX6
config SPL_LDSCRIPT
720
	default "arch/arm/mach-omap2/u-boot-spl.lds"
721 722
endif

723 724
config ARCH_MX5
	bool "Freescale MX5"
725
	select BOARD_EARLY_INIT_F
726
	select CPU_V7A
A
Adam Ford 已提交
727
	imply MXC_GPIO
728

729 730 731 732 733 734
config ARCH_OWL
	bool "Actions Semi OWL SoCs"
	select ARM64
	select DM
	select DM_SERIAL
	select OF_CONTROL
M
Michal Simek 已提交
735
	imply CMD_DM
736

737 738 739 740 741
config ARCH_QEMU
	bool "QEMU Virtual Platform"
	select DM
	select DM_SERIAL
	select OF_CONTROL
742
	select PL01X_SERIAL
M
Michal Simek 已提交
743
	imply CMD_DM
744

745
config ARCH_RMOBILE
746
	bool "Renesas ARM SoCs"
747
	select BOARD_EARLY_INIT_F
748 749
	select DM
	select DM_SERIAL
M
Michal Simek 已提交
750
	imply CMD_DM
T
Tom Rini 已提交
751
	imply FAT_WRITE
752
	imply SYS_THUMB_BUILD
753

754 755 756
config TARGET_S32V234EVB
	bool "Support s32v234evb"
	select ARM64
757
	select SYS_FSL_ERRATUM_ESDHC111
758

759 760 761 762 763 764
config ARCH_SNAPDRAGON
	bool "Qualcomm Snapdragon SoCs"
	select ARM64
	select DM
	select DM_GPIO
	select DM_SERIAL
765
	select MSM_SMEM
766 767
	select OF_CONTROL
	select OF_SEPARATE
768
	select SMEM
769
	select SPMI
M
Michal Simek 已提交
770
	imply CMD_DM
771

772 773
config ARCH_SOCFPGA
	bool "Altera SOCFPGA family"
774
	select ARCH_EARLY_INIT_R
775
	select ARCH_MISC_INIT if !TARGET_SOCFPGA_ARRIA10
776
	select ARM64 if TARGET_SOCFPGA_STRATIX10
777
	select CPU_V7A if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
778
	select DM
M
Marek Vasut 已提交
779
	select DM_SERIAL
780
	select ENABLE_ARM_SOC_BOOT0_HOOK if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
781
	select OF_CONTROL
782
	select SPL_DM_RESET if DM_RESET
783
	select SPL_DM_SERIAL
784 785 786 787 788 789
	select SPL_LIBCOMMON_SUPPORT
	select SPL_LIBDISK_SUPPORT
	select SPL_LIBGENERIC_SUPPORT
	select SPL_MMC_SUPPORT if DM_MMC
	select SPL_NAND_SUPPORT if SPL_NAND_DENALI
	select SPL_OF_CONTROL
790
	select SPL_SEPARATE_BSS if TARGET_SOCFPGA_STRATIX10
791 792 793 794 795 796
	select SPL_SERIAL_SUPPORT
	select SPL_SPI_FLASH_SUPPORT if SPL_SPI_SUPPORT
	select SPL_SPI_SUPPORT if DM_SPI
	select SPL_WATCHDOG_SUPPORT
	select SUPPORT_SPL
	select SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE
M
Marek Vasut 已提交
797
	select SYS_NS16550
798
	select SYS_THUMB_BUILD if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
M
Michal Simek 已提交
799
	imply CMD_DM
800
	imply CMD_MTDPARTS
801
	imply CRC32_VERIFY
802 803
	imply DM_SPI
	imply DM_SPI_FLASH
T
Tom Rini 已提交
804
	imply FAT_WRITE
805
	imply SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
806

807 808
config ARCH_SUNXI
	bool "Support sunxi (Allwinner) SoCs"
809
	select BINMAN
810
	select CMD_GPIO
811
	select CMD_MMC if MMC
812
	select CMD_USB if DISTRO_DEFAULTS
813
	select DM
814
	select DM_ETH
H
Hans de Goede 已提交
815 816
	select DM_GPIO
	select DM_KEYBOARD
817
	select DM_SERIAL
818
	select DM_USB if DISTRO_DEFAULTS
819
	select OF_BOARD_SETUP
820 821
	select OF_CONTROL
	select OF_SEPARATE
822
	select SPECIFY_CONSOLE_INDEX
823 824
	select SPL_STACK_R if SPL
	select SPL_SYS_MALLOC_SIMPLE if SPL
825
	select SPL_SYS_THUMB_BUILD if !ARM64
826
	select SYS_NS16550
827
	select SYS_THUMB_BUILD if !ARM64
828 829
	select USB if DISTRO_DEFAULTS
	select USB_KEYBOARD if DISTRO_DEFAULTS
830
	select USB_STORAGE if DISTRO_DEFAULTS
H
Hans de Goede 已提交
831
	select USE_TINY_PRINTF
M
Michal Simek 已提交
832
	imply CMD_DM
M
Maxime Ripard 已提交
833
	imply CMD_GPT
834
	imply CMD_UBI if NAND
835
	imply DISTRO_DEFAULTS
T
Tom Rini 已提交
836
	imply FAT_WRITE
837
	imply OF_LIBFDT_OVERLAY
838 839 840 841 842
	imply PRE_CONSOLE_BUFFER
	imply SPL_GPIO_SUPPORT
	imply SPL_LIBCOMMON_SUPPORT
	imply SPL_LIBDISK_SUPPORT
	imply SPL_LIBGENERIC_SUPPORT
843
	imply SPL_MMC_SUPPORT if MMC
844 845
	imply SPL_POWER_SUPPORT
	imply SPL_SERIAL_SUPPORT
M
Maxime Ripard 已提交
846
	imply USB_GADGET
C
Chen-Yu Tsai 已提交
847

848 849
config ARCH_VF610
	bool "Freescale Vybrid"
850
	select CPU_V7A
851
	select SYS_FSL_ERRATUM_ESDHC111
852
	imply CMD_MTDPARTS
A
Adam Ford 已提交
853
	imply NAND
854

855
config ARCH_ZYNQ
856
	bool "Xilinx Zynq based platform"
857
	select BOARD_EARLY_INIT_F if WDT
858
	select BOARD_LATE_INIT
859 860
	select CLK
	select CLK_ZYNQ
861
	select CPU_V7A
862
	select DM
863 864
	select DM_ETH if NET
	select DM_MMC if MMC
865
	select DM_SERIAL
866
	select DM_SPI
867
	select DM_SPI_FLASH
868
	select DM_USB if USB
869
	select OF_CONTROL
A
Adam Ford 已提交
870
	select SPI
871 872 873 874 875 876 877
	select SPL_BOARD_INIT if SPL
	select SPL_CLK if SPL
	select SPL_DM if SPL
	select SPL_OF_CONTROL if SPL
	select SPL_SEPARATE_BSS if SPL
	select SUPPORT_SPL
	imply ARCH_EARLY_INIT_R
S
Simon Glass 已提交
878
	imply CMD_CLK
M
Michal Simek 已提交
879
	imply CMD_DM
S
Simon Glass 已提交
880
	imply CMD_SPL
881
	imply FAT_WRITE
882

883 884
config ARCH_ZYNQMP_R5
	bool "Xilinx ZynqMP R5 based platform"
885
	select CLK
886 887 888
	select CPU_V7R
	select DM
	select DM_SERIAL
889
	select OF_CONTROL
M
Michal Simek 已提交
890
	imply CMD_DM
891

892
config ARCH_ZYNQMP
893
	bool "Xilinx ZynqMP based platform"
M
Michal Simek 已提交
894
	select ARM64
895
	select BOARD_LATE_INIT
896
	select CLK
897 898
	select DM
	select DM_SERIAL
899 900
	select DM_USB if USB
	select OF_CONTROL
901
	select SPL_BOARD_INIT if SPL
902
	select SPL_CLK if SPL
903
	select SUPPORT_SPL
M
Michal Simek 已提交
904
	imply CMD_DM
T
Tom Rini 已提交
905
	imply FAT_WRITE
M
Michal Simek 已提交
906

907 908
config TEGRA
	bool "NVIDIA Tegra"
909
	imply DISTRO_DEFAULTS
T
Tom Rini 已提交
910
	imply FAT_WRITE
911

912
config TARGET_VEXPRESS64_AEMV8A
913
	bool "Support vexpress_aemv8a"
914
	select ARM64
915
	select PL01X_SERIAL
916

917 918 919
config TARGET_VEXPRESS64_BASE_FVP
	bool "Support Versatile Express ARMv8a FVP BASE model"
	select ARM64
920
	select PL01X_SERIAL
921
	select SEMIHOSTING
922

923 924 925
config TARGET_VEXPRESS64_BASE_FVP_DRAM
	bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
	select ARM64
926
	select PL01X_SERIAL
927 928 929 930 931 932
	help
	  This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
	  the default config to allow the user to load the images directly into
	  DRAM using model parameters rather than by using semi-hosting to load
	  the files from the host filesystem.

933 934 935
config TARGET_VEXPRESS64_JUNO
	bool "Support Versatile Express Juno Development Platform"
	select ARM64
936
	select PL01X_SERIAL
937

938 939
config TARGET_LS2080A_EMU
	bool "Support ls2080a_emu"
940
	select ARCH_LS2080A
941
	select ARCH_MISC_INIT
942
	select ARM64
943
	select ARMV8_MULTIENTRY
944 945 946 947 948
	help
	  Support for Freescale LS2080A_EMU platform
	  The LS2080A Development System (EMULATOR) is a pre silicon
	  development platform that supports the QorIQ LS2080A
	  Layerscape Architecture processor.
949

950 951
config TARGET_LS2080A_SIMU
	bool "Support ls2080a_simu"
952
	select ARCH_LS2080A
953
	select ARCH_MISC_INIT
954
	select ARM64
955
	select ARMV8_MULTIENTRY
956 957 958 959 960
	help
	  Support for Freescale LS2080A_SIMU platform
	  The LS2080A Development System (QDS) is a pre silicon
	  development platform that supports the QorIQ LS2080A
	  Layerscape Architecture processor.
961

962 963 964
config TARGET_LS1088AQDS
	bool "Support ls1088aqds"
	select ARCH_LS1088A
965
	select ARCH_MISC_INIT
966 967 968
	select ARM64
	select ARMV8_MULTIENTRY
	select BOARD_LATE_INIT
969
	select SUPPORT_SPL
970 971 972 973 974 975
	help
	  Support for NXP LS1088AQDS platform
	  The LS1088A Development System (QDS) is a high-performance
	  development platform that supports the QorIQ LS1088A
	  Layerscape Architecture processor.

976 977
config TARGET_LS2080AQDS
	bool "Support ls2080aqds"
978
	select ARCH_LS2080A
979
	select ARCH_MISC_INIT
980 981
	select ARM64
	select ARMV8_MULTIENTRY
982
	select BOARD_LATE_INIT
S
Scott Wood 已提交
983
	select SUPPORT_SPL
S
Simon Glass 已提交
984
	imply SCSI
985
	imply SCSI_AHCI
986
	help
987 988 989
	  Support for Freescale LS2080AQDS platform
	  The LS2080A Development System (QDS) is a high-performance
	  development platform that supports the QorIQ LS2080A
990 991
	  Layerscape Architecture processor.

992 993
config TARGET_LS2080ARDB
	bool "Support ls2080ardb"
994
	select ARCH_LS2080A
995
	select ARCH_MISC_INIT
996 997
	select ARM64
	select ARMV8_MULTIENTRY
998
	select BOARD_LATE_INIT
999
	select SUPPORT_SPL
S
Simon Glass 已提交
1000
	imply SCSI
1001
	imply SCSI_AHCI
1002
	help
1003 1004 1005
	  Support for Freescale LS2080ARDB platform.
	  The LS2080A Reference design board (RDB) is a high-performance
	  development platform that supports the QorIQ LS2080A
1006 1007
	  Layerscape Architecture processor.

1008 1009 1010
config TARGET_LS2081ARDB
	bool "Support ls2081ardb"
	select ARCH_LS2080A
1011
	select ARCH_MISC_INIT
1012 1013 1014 1015 1016 1017 1018 1019 1020 1021
	select ARM64
	select ARMV8_MULTIENTRY
	select BOARD_LATE_INIT
	select SUPPORT_SPL
	help
	  Support for Freescale LS2081ARDB platform.
	  The LS2081A Reference design board (RDB) is a high-performance
	  development platform that supports the QorIQ LS2081A/LS2041A
	  Layerscape Architecture processor.

1022 1023 1024
config TARGET_HIKEY
	bool "Support HiKey 96boards Consumer Edition Platform"
	select ARM64
1025 1026
	select DM
	select DM_GPIO
1027
	select DM_SERIAL
1028
	select OF_CONTROL
1029
	select PL01X_SERIAL
1030
	select SPECIFY_CONSOLE_INDEX
M
Michal Simek 已提交
1031
	imply CMD_DM
1032 1033 1034 1035
	  help
	  Support for HiKey 96boards platform. It features a HI6220
	  SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.

1036 1037 1038 1039 1040 1041
config TARGET_POPLAR
	bool "Support Poplar 96boards Enterprise Edition Platform"
	select ARM64
	select DM
	select DM_SERIAL
	select DM_USB
1042
	select OF_CONTROL
1043
	select PL01X_SERIAL
M
Michal Simek 已提交
1044
	imply CMD_DM
1045 1046 1047 1048 1049 1050
	  help
	  Support for Poplar 96boards EE platform. It features a HI3798cv200
	  SoC, with 4xA53 CPU, 1GB RAM and the high performance Mali T720 GPU
	  making it capable of running any commercial set-top solution based on
	  Linux or Android.

1051 1052
config TARGET_LS1012AQDS
	bool "Support ls1012aqds"
1053
	select ARCH_LS1012A
1054
	select ARM64
1055
	select BOARD_LATE_INIT
1056 1057 1058 1059 1060 1061
	help
	  Support for Freescale LS1012AQDS platform.
	  The LS1012A Development System (QDS) is a high-performance
	  development platform that supports the QorIQ LS1012A
	  Layerscape Architecture processor.

1062 1063
config TARGET_LS1012ARDB
	bool "Support ls1012ardb"
1064
	select ARCH_LS1012A
1065
	select ARM64
1066
	select BOARD_LATE_INIT
S
Simon Glass 已提交
1067
	imply SCSI
1068
	imply SCSI_AHCI
1069 1070 1071 1072 1073 1074
	help
	  Support for Freescale LS1012ARDB platform.
	  The LS1012A Reference design board (RDB) is a high-performance
	  development platform that supports the QorIQ LS1012A
	  Layerscape Architecture processor.

1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086
config TARGET_LS1012A2G5RDB
	bool "Support ls1012a2g5rdb"
	select ARCH_LS1012A
	select ARM64
	select BOARD_LATE_INIT
	imply SCSI
	help
	  Support for Freescale LS1012A2G5RDB platform.
	  The LS1012A 2G5 Reference design board (RDB) is a high-performance
	  development platform that supports the QorIQ LS1012A
	  Layerscape Architecture processor.

1087 1088 1089 1090
config TARGET_LS1012AFRWY
	bool "Support ls1012afrwy"
	select ARCH_LS1012A
	select ARM64
1091
	select BOARD_LATE_INIT
1092 1093 1094 1095 1096 1097 1098 1099
	imply SCSI
	imply SCSI_AHCI
	help
	 Support for Freescale LS1012AFRWY platform.
	 The LS1012A FRWY board (FRWY) is a high-performance
	 development platform that supports the QorIQ LS1012A
	 Layerscape Architecture processor.

1100 1101
config TARGET_LS1012AFRDM
	bool "Support ls1012afrdm"
1102
	select ARCH_LS1012A
1103 1104 1105 1106 1107 1108 1109
	select ARM64
	help
	  Support for Freescale LS1012AFRDM platform.
	  The LS1012A Freedom  board (FRDM) is a high-performance
	  development platform that supports the QorIQ LS1012A
	  Layerscape Architecture processor.

1110 1111 1112
config TARGET_LS1088ARDB
	bool "Support ls1088ardb"
	select ARCH_LS1088A
1113
	select ARCH_MISC_INIT
1114 1115 1116
	select ARM64
	select ARMV8_MULTIENTRY
	select BOARD_LATE_INIT
1117
	select SUPPORT_SPL
1118 1119 1120 1121 1122 1123
	help
	  Support for NXP LS1088ARDB platform.
	  The LS1088A Reference design board (RDB) is a high-performance
	  development platform that supports the QorIQ LS1088A
	  Layerscape Architecture processor.

1124
config TARGET_LS1021AQDS
1125
	bool "Support ls1021aqds"
1126 1127 1128
	select ARCH_LS1021A
	select ARCH_SUPPORT_PSCI
	select BOARD_EARLY_INIT_F
1129
	select BOARD_LATE_INIT
1130
	select CPU_V7A
1131 1132
	select CPU_V7_HAS_NONSEC
	select CPU_V7_HAS_VIRT
1133
	select LS1_DEEP_SLEEP
1134
	select SUPPORT_SPL
1135
	select SYS_FSL_DDR
S
Simon Glass 已提交
1136
	imply SCSI
1137

1138
config TARGET_LS1021ATWR
1139
	bool "Support ls1021atwr"
1140 1141 1142
	select ARCH_LS1021A
	select ARCH_SUPPORT_PSCI
	select BOARD_EARLY_INIT_F
1143
	select BOARD_LATE_INIT
1144
	select CPU_V7A
1145 1146
	select CPU_V7_HAS_NONSEC
	select CPU_V7_HAS_VIRT
1147
	select LS1_DEEP_SLEEP
1148
	select SUPPORT_SPL
S
Simon Glass 已提交
1149
	imply SCSI
1150

F
Feng Li 已提交
1151 1152
config TARGET_LS1021AIOT
	bool "Support ls1021aiot"
1153 1154
	select ARCH_LS1021A
	select ARCH_SUPPORT_PSCI
1155
	select BOARD_LATE_INIT
1156
	select CPU_V7A
F
Feng Li 已提交
1157 1158 1159
	select CPU_V7_HAS_NONSEC
	select CPU_V7_HAS_VIRT
	select SUPPORT_SPL
S
Simon Glass 已提交
1160
	imply SCSI
F
Feng Li 已提交
1161 1162 1163 1164 1165 1166
	help
	  Support for Freescale LS1021AIOT platform.
	  The LS1021A Freescale board (IOT) is a high-performance
	  development platform that supports the QorIQ LS1021A
	  Layerscape Architecture processor.

1167 1168
config TARGET_LS1043AQDS
	bool "Support ls1043aqds"
1169
	select ARCH_LS1043A
1170 1171
	select ARM64
	select ARMV8_MULTIENTRY
1172
	select BOARD_EARLY_INIT_F
1173
	select BOARD_LATE_INIT
1174
	select SUPPORT_SPL
S
Simon Glass 已提交
1175
	imply SCSI
1176 1177 1178
	help
	  Support for Freescale LS1043AQDS platform.

1179 1180
config TARGET_LS1043ARDB
	bool "Support ls1043ardb"
1181
	select ARCH_LS1043A
1182
	select ARM64
1183
	select ARMV8_MULTIENTRY
1184
	select BOARD_EARLY_INIT_F
1185
	select BOARD_LATE_INIT
1186
	select SUPPORT_SPL
S
Simon Glass 已提交
1187
	imply SCSI
1188 1189 1190
	help
	  Support for Freescale LS1043ARDB platform.

1191 1192
config TARGET_LS1046AQDS
	bool "Support ls1046aqds"
1193
	select ARCH_LS1046A
1194 1195
	select ARM64
	select ARMV8_MULTIENTRY
1196
	select BOARD_EARLY_INIT_F
1197
	select BOARD_LATE_INIT
1198
	select DM_SPI_FLASH if DM_SPI
1199
	select SUPPORT_SPL
S
Simon Glass 已提交
1200
	imply SCSI
1201 1202 1203 1204 1205 1206
	help
	  Support for Freescale LS1046AQDS platform.
	  The LS1046A Development System (QDS) is a high-performance
	  development platform that supports the QorIQ LS1046A
	  Layerscape Architecture processor.

1207 1208
config TARGET_LS1046ARDB
	bool "Support ls1046ardb"
1209
	select ARCH_LS1046A
1210 1211
	select ARM64
	select ARMV8_MULTIENTRY
1212
	select BOARD_EARLY_INIT_F
1213
	select BOARD_LATE_INIT
1214
	select DM_SPI_FLASH if DM_SPI
1215
	select POWER_MC34VR500
1216
	select SUPPORT_SPL
S
Simon Glass 已提交
1217
	imply SCSI
1218 1219 1220 1221 1222 1223
	help
	  Support for Freescale LS1046ARDB platform.
	  The LS1046A Reference Design Board (RDB) is a high-performance
	  development platform that supports the QorIQ LS1046A
	  Layerscape Architecture processor.

1224 1225
config TARGET_H2200
	bool "Support h2200"
1226
	select CPU_PXA
1227

1228 1229 1230 1231
config TARGET_ZIPITZ2
	bool "Support zipitz2"
	select CPU_PXA

1232 1233
config TARGET_COLIBRI_PXA270
	bool "Support colibri_pxa270"
1234
	select CPU_PXA
1235

1236
config ARCH_UNIPHIER
1237
	bool "Socionext UniPhier SoCs"
1238
	select BOARD_LATE_INIT
1239
	select DM
1240
	select DM_GPIO
1241
	select DM_I2C
1242
	select DM_MMC
1243
	select DM_RESET
1244
	select DM_SERIAL
1245
	select DM_USB
1246
	select OF_BOARD_SETUP
1247 1248
	select OF_CONTROL
	select OF_LIBFDT
1249
	select PINCTRL
1250
	select SPL_BOARD_INIT if SPL
1251 1252 1253 1254 1255
	select SPL_DM if SPL
	select SPL_LIBCOMMON_SUPPORT if SPL
	select SPL_LIBGENERIC_SUPPORT if SPL
	select SPL_OF_CONTROL if SPL
	select SPL_PINCTRL if SPL
1256
	select SUPPORT_SPL
M
Michal Simek 已提交
1257
	imply CMD_DM
1258
	imply DISTRO_DEFAULTS
T
Tom Rini 已提交
1259
	imply FAT_WRITE
1260 1261 1262
	help
	  Support for UniPhier SoC family developed by Socionext Inc.
	  (formerly, System LSI Business Division of Panasonic Corporation)
1263

1264
config STM32
1265
	bool "Support STMicroelectronics STM32 MCU with cortex M"
1266
	select CPU_V7M
K
Kamil Lulko 已提交
1267 1268
	select DM
	select DM_SERIAL
M
Michal Simek 已提交
1269
	imply CMD_DM
1270

1271 1272
config ARCH_STI
	bool "Support STMicrolectronics SoCs"
1273
	select BLK
1274
	select CPU_V7A
P
Patrice Chotard 已提交
1275
	select DM
P
Patrice Chotard 已提交
1276
	select DM_MMC
P
Patrice Chotard 已提交
1277
	select DM_RESET
1278
	select DM_SERIAL
M
Michal Simek 已提交
1279
	imply CMD_DM
1280 1281 1282 1283
	help
	  Support for STMicroelectronics STiH407/10 SoC family.
	  This SoC is used on Linaro 96Board STiH410-B2260

1284 1285
config ARCH_STM32MP
	bool "Support STMicroelectronics STM32MP Socs with cortex A"
1286
	select ARCH_MISC_INIT
1287 1288 1289 1290 1291 1292
	select BOARD_LATE_INIT
	select CLK
	select DM
	select DM_GPIO
	select DM_RESET
	select DM_SERIAL
1293
	select MISC
1294 1295 1296 1297 1298 1299
	select OF_CONTROL
	select OF_LIBFDT
	select PINCTRL
	select REGMAP
	select SUPPORT_SPL
	select SYSCON
P
Patrick Delaunay 已提交
1300
	select SYSRESET
1301
	select SYS_THUMB_BUILD
M
Michal Simek 已提交
1302
	imply CMD_DM
1303 1304 1305 1306 1307 1308
	help
	  Support for STM32MP SoC family developed by STMicroelectronics,
	  MPUs based on ARM cortex A core
	  U-BOOT is running in DDR and SPL support is the unsecure First Stage
	  BootLoader (FSBL)

1309 1310
config ARCH_ROCKCHIP
	bool "Support Rockchip SoCs"
1311
	select BLK
1312
	select DM
1313 1314 1315
	select DM_GPIO
	select DM_I2C
	select DM_MMC
1316 1317
	select DM_PWM
	select DM_REGULATOR
1318 1319 1320
	select DM_SERIAL
	select DM_SPI
	select DM_SPI_FLASH
1321
	select DM_USB if USB
1322
	select ENABLE_ARM_SOC_BOOT0_HOOK
1323
	select OF_CONTROL
A
Adam Ford 已提交
1324
	select SPI
1325 1326 1327 1328 1329
	select SPL_DM if SPL
	select SPL_SYS_MALLOC_SIMPLE if SPL
	select SYS_MALLOC_F
	select SYS_THUMB_BUILD if !ARM64
	imply ADC
M
Michal Simek 已提交
1330
	imply CMD_DM
1331
	imply DISTRO_DEFAULTS
T
Tom Rini 已提交
1332
	imply FAT_WRITE
1333
	imply SARADC_ROCKCHIP
1334
	imply SPL_SYSRESET
1335
	imply SYS_NS16550
1336 1337
	imply TPL_SYSRESET
	imply USB_FUNCTION_FASTBOOT
1338

1339 1340
config TARGET_THUNDERX_88XX
	bool "Support ThunderX 88xx"
1341
	select ARM64
1342
	select OF_CONTROL
1343
	select PL01X_SERIAL
1344
	select SYS_CACHE_SHIFT_7
1345

1346 1347 1348
config ARCH_ASPEED
	bool "Support Aspeed SoCs"
	select DM
1349
	select OF_CONTROL
M
Michal Simek 已提交
1350
	imply CMD_DM
1351

1352 1353
endchoice

1354 1355 1356 1357 1358 1359 1360 1361 1362 1363
config TI_SECURE_DEVICE
	bool "HS Device Type Support"
	depends on ARCH_KEYSTONE || ARCH_OMAP2PLUS
	help
	  If a high secure (HS) device type is being used, this config
	  must be set. This option impacts various aspects of the
	  build system (to create signed boot images that can be
	  authenticated) and the code. See the doc/README.ti-secure
	  file for further details.

1364 1365
source "arch/arm/mach-aspeed/Kconfig"

1366 1367
source "arch/arm/mach-at91/Kconfig"

1368
source "arch/arm/mach-bcm283x/Kconfig"
1369

1370 1371
source "arch/arm/mach-bcmstb/Kconfig"

1372
source "arch/arm/mach-davinci/Kconfig"
1373

1374
source "arch/arm/mach-exynos/Kconfig"
1375

1376
source "arch/arm/mach-highbank/Kconfig"
1377

1378 1379
source "arch/arm/mach-integrator/Kconfig"

1380
source "arch/arm/mach-keystone/Kconfig"
1381

1382
source "arch/arm/mach-kirkwood/Kconfig"
1383

1384 1385
source "arch/arm/mach-mvebu/Kconfig"

1386 1387
source "arch/arm/cpu/armv7/ls102xa/Kconfig"

1388 1389
source "arch/arm/mach-imx/mx2/Kconfig"

1390 1391
source "arch/arm/mach-imx/mx3/Kconfig"

P
Peng Fan 已提交
1392 1393 1394
source "arch/arm/mach-imx/mx5/Kconfig"

source "arch/arm/mach-imx/mx6/Kconfig"
P
Peng Fan 已提交
1395

1396
source "arch/arm/mach-imx/mx7/Kconfig"
1397

P
Peng Fan 已提交
1398
source "arch/arm/mach-imx/mx7ulp/Kconfig"
1399

P
Peng Fan 已提交
1400
source "arch/arm/mach-imx/mx8m/Kconfig"
1401

1402 1403
source "arch/arm/mach-imx/mxs/Kconfig"

1404
source "arch/arm/mach-omap2/Kconfig"
1405

1406 1407
source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"

1408
source "arch/arm/mach-orion5x/Kconfig"
1409

1410 1411
source "arch/arm/mach-owl/Kconfig"

1412
source "arch/arm/mach-rmobile/Kconfig"
1413

1414 1415
source "arch/arm/mach-meson/Kconfig"

1416 1417
source "arch/arm/mach-qemu/Kconfig"

1418 1419
source "arch/arm/mach-rockchip/Kconfig"

1420
source "arch/arm/mach-s5pc1xx/Kconfig"
1421

1422 1423
source "arch/arm/mach-snapdragon/Kconfig"

1424 1425
source "arch/arm/mach-socfpga/Kconfig"

1426 1427
source "arch/arm/mach-sti/Kconfig"

1428 1429
source "arch/arm/mach-stm32/Kconfig"

1430 1431
source "arch/arm/mach-stm32mp/Kconfig"

1432 1433
source "arch/arm/mach-sunxi/Kconfig"

1434
source "arch/arm/mach-tegra/Kconfig"
1435

1436
source "arch/arm/mach-uniphier/Kconfig"
1437

1438 1439
source "arch/arm/cpu/armv7/vf610/Kconfig"

1440
source "arch/arm/mach-zynq/Kconfig"
1441

1442 1443
source "arch/arm/mach-zynqmp-r5/Kconfig"

1444 1445
source "arch/arm/cpu/armv7/Kconfig"

1446 1447
source "arch/arm/cpu/armv8/zynqmp/Kconfig"

1448 1449
source "arch/arm/cpu/armv8/Kconfig"

1450
source "arch/arm/mach-imx/Kconfig"
1451

1452
source "board/bosch/shc/Kconfig"
1453 1454 1455 1456 1457 1458
source "board/CarMediaLab/flea3/Kconfig"
source "board/Marvell/aspenite/Kconfig"
source "board/Marvell/gplugd/Kconfig"
source "board/armadeus/apf27/Kconfig"
source "board/armltd/vexpress/Kconfig"
source "board/armltd/vexpress64/Kconfig"
1459
source "board/broadcom/bcm23550_w1d/Kconfig"
1460
source "board/broadcom/bcm28155_ap/Kconfig"
S
Steve Rae 已提交
1461 1462
source "board/broadcom/bcmcygnus/Kconfig"
source "board/broadcom/bcmnsp/Kconfig"
1463
source "board/broadcom/bcmns2/Kconfig"
1464
source "board/cavium/thunderx/Kconfig"
1465
source "board/cirrus/edb93xx/Kconfig"
F
Felix Brack 已提交
1466
source "board/eets/pdu001/Kconfig"
1467 1468 1469
source "board/freescale/ls2080a/Kconfig"
source "board/freescale/ls2080aqds/Kconfig"
source "board/freescale/ls2080ardb/Kconfig"
1470
source "board/freescale/ls1088a/Kconfig"
1471
source "board/freescale/ls1021aqds/Kconfig"
1472
source "board/freescale/ls1043aqds/Kconfig"
1473
source "board/freescale/ls1021atwr/Kconfig"
F
Feng Li 已提交
1474
source "board/freescale/ls1021aiot/Kconfig"
1475
source "board/freescale/ls1046aqds/Kconfig"
1476
source "board/freescale/ls1043ardb/Kconfig"
1477
source "board/freescale/ls1046ardb/Kconfig"
1478
source "board/freescale/ls1012aqds/Kconfig"
1479
source "board/freescale/ls1012ardb/Kconfig"
1480
source "board/freescale/ls1012afrdm/Kconfig"
1481
source "board/freescale/mx35pdk/Kconfig"
1482
source "board/freescale/s32v234evb/Kconfig"
1483
source "board/grinn/chiliboard/Kconfig"
1484 1485
source "board/gumstix/pepper/Kconfig"
source "board/h2200/Kconfig"
1486
source "board/hisilicon/hikey/Kconfig"
1487
source "board/hisilicon/poplar/Kconfig"
L
Ladislav Michl 已提交
1488
source "board/isee/igep003x/Kconfig"
1489 1490 1491 1492 1493 1494 1495
source "board/phytec/pcm051/Kconfig"
source "board/silica/pengwyn/Kconfig"
source "board/spear/spear300/Kconfig"
source "board/spear/spear310/Kconfig"
source "board/spear/spear320/Kconfig"
source "board/spear/spear600/Kconfig"
source "board/spear/x600/Kconfig"
1496
source "board/st/stv0991/Kconfig"
1497
source "board/tcl/sl50/Kconfig"
1498
source "board/ucRobotics/bubblegum_96/Kconfig"
1499
source "board/birdland/bav335x/Kconfig"
1500 1501
source "board/timll/devkit3250/Kconfig"
source "board/toradex/colibri_pxa270/Kconfig"
1502
source "board/vscom/baltos/Kconfig"
1503
source "board/woodburn/Kconfig"
1504
source "board/work-microwave/work_92105/Kconfig"
1505
source "board/xilinx/Kconfig"
1506
source "board/xilinx/zynq/Kconfig"
1507
source "board/xilinx/zynqmp/Kconfig"
1508
source "board/zipitz2/Kconfig"
1509

1510 1511
source "arch/arm/Kconfig.debug"

1512
endmenu
1513 1514

config SPL_LDSCRIPT
1515 1516
	default "arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" if (ARCH_MX23 || ARCH_MX28) && !SPL_FRAMEWORK
	default "arch/arm/cpu/arm1136/u-boot-spl.lds" if CPU_ARM1136
1517 1518 1519
	default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64