Kconfig 25.8 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
config DMA_ADDR_T_64BIT
	bool
	default y if ARM64

16
config HAS_VBAR
17
	bool
18

19
config HAS_THUMB2
20
	bool
21

T
Tom Rini 已提交
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
# 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
config ARM_ERRATA_430973
	bool

config ARM_ERRATA_454179
	bool

config ARM_ERRATA_621766
	bool

config ARM_ERRATA_716044
	bool

46 47 48
config ARM_ERRATA_725233
	bool

T
Tom Rini 已提交
49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
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

91 92 93 94 95 96
config ARM_ERRATA_852421
	bool

config ARM_ERRATA_852423
	bool

97
config CPU_ARM720T
98
	bool
99
	select SYS_CACHE_SHIFT_5
100 101

config CPU_ARM920T
102
	bool
103
	select SYS_CACHE_SHIFT_5
104 105

config CPU_ARM926EJS
106
	bool
107
	select SYS_CACHE_SHIFT_5
108 109

config CPU_ARM946ES
110
	bool
111
	select SYS_CACHE_SHIFT_5
112 113

config CPU_ARM1136
114
	bool
115
	select SYS_CACHE_SHIFT_5
116 117

config CPU_ARM1176
118 119
	bool
	select HAS_VBAR
120
	select SYS_CACHE_SHIFT_5
121 122

config CPU_V7
123 124 125
	bool
	select HAS_VBAR
	select HAS_THUMB2
126
	select SYS_CACHE_SHIFT_6
127

R
rev13@wp.pl 已提交
128 129
config CPU_V7M
	bool
130
	select HAS_THUMB2
131
	select SYS_CACHE_SHIFT_5
R
rev13@wp.pl 已提交
132

133
config CPU_PXA
134
	bool
135
	select SYS_CACHE_SHIFT_5
136 137

config CPU_SA1100
138
	bool
139
	select SYS_CACHE_SHIFT_5
140 141

config SYS_CPU
142 143 144 145 146 147 148 149 150 151
	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
	default "armv7" if CPU_V7
	default "armv7m" if CPU_V7M
	default "pxa" if CPU_PXA
	default "sa1100" if CPU_SA1100
152
	default "armv8" if ARM64
153

154 155 156 157 158 159 160 161 162 163 164 165 166 167
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
	default 7 if CPU_V7
	default 7 if CPU_V7M
	default 5 if CPU_PXA
	default 4 if CPU_SA1100
	default 8 if ARM64

168 169 170 171 172 173 174 175 176 177 178 179 180 181 182
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

183 184 185
config ARM_SMCCC
	bool "Support for ARM SMC Calling Convention (SMCCC)"
	depends on CPU_V7 || ARM64
186
	select ARM_PSCI_FW
187 188 189 190 191
	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.

192 193 194 195 196 197 198
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.

199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217
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.

218 219 220 221 222 223
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.

224 225 226 227 228 229 230 231
config ENABLE_ARM_SOC_BOOT0_HOOK
	bool "prepare BOOT0 header"
	help
	  If the SoC's BOOT0 requires a header area filled with (magic)
	  values, then choose this option, and create a define called
	  ARM_SOC_BOOT0_HOOK which contains the required assembler
	  preprocessor code.

232 233 234 235
config ARM_CORTEX_CPU_IS_UP
	bool
	default n

236 237
config USE_ARCH_MEMCPY
	bool "Use an assembly optimized implementation of memcpy"
238 239 240 241 242 243 244 245 246 247
	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
	bool "Use an assembly optimized implementation of memcpy"
	default y if USE_ARCH_MEMCPY
248
	depends on !ARM64
249 250 251 252 253 254 255
	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"
256 257 258 259 260 261 262 263 264 265
	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
	bool "Use an assembly optimized implementation of memset"
	default y if USE_ARCH_MEMSET
266
	depends on !ARM64
267 268 269 270 271
	help
	  Enable the generation of an optimized version of memset.
	  Such implementation may be faster under some conditions
	  but may increase the binary size.

272 273 274 275 276 277
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.

278 279
choice
	prompt "Target select"
S
Simon Glass 已提交
280
	default TARGET_HIKEY
281

282 283
config ARCH_AT91
	bool "Atmel AT91"
284
	select SPL_BOARD_INIT if SPL
285 286 287

config TARGET_EDB93XX
	bool "Support edb93xx"
288
	select CPU_ARM920T
289 290 291

config TARGET_ASPENITE
	bool "Support aspenite"
292
	select CPU_ARM926EJS
293 294 295

config TARGET_GPLUGD
	bool "Support gplugd"
296
	select CPU_ARM926EJS
297

298 299
config ARCH_DAVINCI
	bool "TI DaVinci"
300
	select CPU_ARM926EJS
301 302
	help
	  Support for TI's DaVinci platform.
303

304 305
config KIRKWOOD
	bool "Marvell Kirkwood"
306
	select CPU_ARM926EJS
307
	select BOARD_EARLY_INIT_F
308
	select ARCH_MISC_INIT
309

310
config ARCH_MVEBU
311
	bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)"
312 313 314
	select OF_CONTROL
	select OF_SEPARATE
	select DM
315
	select DM_ETH
316
	select DM_SERIAL
317 318
	select DM_SPI
	select DM_SPI_FLASH
319

320 321
config TARGET_DEVKIT3250
	bool "Support devkit3250"
322
	select CPU_ARM926EJS
323
	select SUPPORT_SPL
324

325 326 327 328 329
config TARGET_WORK_92105
	bool "Support work_92105"
	select CPU_ARM926EJS
	select SUPPORT_SPL

330 331
config TARGET_MX25PDK
	bool "Support mx25pdk"
332
	select BOARD_LATE_INIT
333
	select CPU_ARM926EJS
334
	select BOARD_EARLY_INIT_F
335 336 337

config TARGET_ZMX25
	bool "Support zmx25"
338
	select BOARD_LATE_INIT
339
	select CPU_ARM926EJS
340 341 342

config TARGET_APF27
	bool "Support apf27"
343
	select CPU_ARM926EJS
M
Masahiro Yamada 已提交
344
	select SUPPORT_SPL
345 346 347

config TARGET_APX4DEVKIT
	bool "Support apx4devkit"
348
	select CPU_ARM926EJS
M
Masahiro Yamada 已提交
349
	select SUPPORT_SPL
350 351 352

config TARGET_XFI3
	bool "Support xfi3"
353
	select CPU_ARM926EJS
M
Masahiro Yamada 已提交
354
	select SUPPORT_SPL
355 356 357

config TARGET_M28EVK
	bool "Support m28evk"
358
	select CPU_ARM926EJS
M
Masahiro Yamada 已提交
359
	select SUPPORT_SPL
360 361 362

config TARGET_MX23EVK
	bool "Support mx23evk"
363
	select CPU_ARM926EJS
M
Masahiro Yamada 已提交
364
	select SUPPORT_SPL
365
	select BOARD_EARLY_INIT_F
366 367 368

config TARGET_MX28EVK
	bool "Support mx28evk"
369
	select CPU_ARM926EJS
M
Masahiro Yamada 已提交
370
	select SUPPORT_SPL
371
	select BOARD_EARLY_INIT_F
372 373 374

config TARGET_MX23_OLINUXINO
	bool "Support mx23_olinuxino"
375
	select CPU_ARM926EJS
M
Masahiro Yamada 已提交
376
	select SUPPORT_SPL
377
	select BOARD_EARLY_INIT_F
378 379 380

config TARGET_BG0900
	bool "Support bg0900"
381
	select CPU_ARM926EJS
M
Masahiro Yamada 已提交
382
	select SUPPORT_SPL
383 384 385

config TARGET_SANSA_FUZE_PLUS
	bool "Support sansa_fuze_plus"
386
	select CPU_ARM926EJS
M
Masahiro Yamada 已提交
387
	select SUPPORT_SPL
388 389 390

config TARGET_SC_SPS_1
	bool "Support sc_sps_1"
391
	select CPU_ARM926EJS
M
Masahiro Yamada 已提交
392
	select SUPPORT_SPL
393

394 395
config ORION5X
	bool "Marvell Orion"
396
	select CPU_ARM926EJS
397 398 399

config TARGET_SPEAR300
	bool "Support spear300"
400
	select CPU_ARM926EJS
401
	select BOARD_EARLY_INIT_F
402 403 404

config TARGET_SPEAR310
	bool "Support spear310"
405
	select CPU_ARM926EJS
406
	select BOARD_EARLY_INIT_F
407 408 409

config TARGET_SPEAR320
	bool "Support spear320"
410
	select CPU_ARM926EJS
411
	select BOARD_EARLY_INIT_F
412 413 414

config TARGET_SPEAR600
	bool "Support spear600"
415
	select CPU_ARM926EJS
416
	select BOARD_EARLY_INIT_F
417

418 419 420
config TARGET_STV0991
	bool "Support stv0991"
	select CPU_V7
421 422
	select DM
	select DM_SERIAL
423 424 425
	select DM_SPI
	select DM_SPI_FLASH
	select SPI_FLASH
426

427 428
config TARGET_X600
	bool "Support x600"
429
	select BOARD_LATE_INIT
430
	select CPU_ARM926EJS
M
Masahiro Yamada 已提交
431
	select SUPPORT_SPL
432 433

config TARGET_IMX31_PHYCORE
434 435
	bool "Support imx31_phycore_eet"
	select CPU_ARM1136
436
	select BOARD_EARLY_INIT_F
437 438 439

config TARGET_IMX31_PHYCORE_EET
	bool "Support imx31_phycore_eet"
440
	select BOARD_LATE_INIT
441
	select CPU_ARM1136
442
	select BOARD_EARLY_INIT_F
443 444 445

config TARGET_MX31ADS
	bool "Support mx31ads"
446
	select CPU_ARM1136
447
	select BOARD_EARLY_INIT_F
448 449 450

config TARGET_MX31PDK
	bool "Support mx31pdk"
451
	select BOARD_LATE_INIT
452
	select CPU_ARM1136
M
Masahiro Yamada 已提交
453
	select SUPPORT_SPL
454
	select BOARD_EARLY_INIT_F
455 456 457

config TARGET_WOODBURN
	bool "Support woodburn"
458
	select CPU_ARM1136
459 460 461

config TARGET_WOODBURN_SD
	bool "Support woodburn_sd"
462
	select CPU_ARM1136
M
Masahiro Yamada 已提交
463
	select SUPPORT_SPL
464 465 466

config TARGET_FLEA3
	bool "Support flea3"
467
	select CPU_ARM1136
468 469 470

config TARGET_MX35PDK
	bool "Support mx35pdk"
471
	select BOARD_LATE_INIT
472
	select CPU_ARM1136
473

474 475
config ARCH_BCM283X
	bool "Broadcom BCM283X family"
M
Masahiro Yamada 已提交
476 477 478
	select DM
	select DM_SERIAL
	select DM_GPIO
479
	select OF_CONTROL
480

481 482
config TARGET_VEXPRESS_CA15_TC2
	bool "Support vexpress_ca15_tc2"
483
	select CPU_V7
484 485
	select CPU_V7_HAS_NONSEC
	select CPU_V7_HAS_VIRT
486 487 488

config TARGET_VEXPRESS_CA5X2
	bool "Support vexpress_ca5x2"
489
	select CPU_V7
490 491 492

config TARGET_VEXPRESS_CA9X4
	bool "Support vexpress_ca9x4"
493
	select CPU_V7
494

495 496 497 498
config TARGET_BCM23550_W1D
	bool "Support bcm23550_w1d"
	select CPU_V7

499 500
config TARGET_BCM28155_AP
	bool "Support bcm28155_ap"
501
	select CPU_V7
502

S
Steve Rae 已提交
503 504
config TARGET_BCMCYGNUS
	bool "Support bcmcygnus"
505
	select CPU_V7
S
Simon Glass 已提交
506
	imply CMD_HASH
507

S
Steve Rae 已提交
508 509
config TARGET_BCMNSP
	bool "Support bcmnsp"
510
	select CPU_V7
511

512 513 514 515 516 517 518 519
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

520 521
config ARCH_EXYNOS
	bool "Samsung EXYNOS"
M
Masahiro Yamada 已提交
522
	select DM
523
	select DM_I2C
M
Masahiro Yamada 已提交
524 525 526 527
	select DM_SPI_FLASH
	select DM_SERIAL
	select DM_SPI
	select DM_GPIO
528
	select DM_KEYBOARD
529

530 531
config ARCH_S5PC1XX
	bool "Samsung S5PC1XX"
532
	select CPU_V7
M
Masahiro Yamada 已提交
533 534 535
	select DM
	select DM_SERIAL
	select DM_GPIO
536
	select DM_I2C
537

538 539
config ARCH_HIGHBANK
	bool "Calxeda Highbank"
540
	select CPU_V7
541

542 543
config ARCH_INTEGRATOR
	bool "ARM Ltd. Integrator family"
544 545
	select DM
	select DM_SERIAL
546

547 548
config ARCH_KEYSTONE
	bool "TI Keystone"
549
	select CPU_V7
M
Masahiro Yamada 已提交
550
	select SUPPORT_SPL
551
	select SYS_THUMB_BUILD
552
	select CMD_POWEROFF
553
	imply FIT
554

555 556 557
config ARCH_OMAP2PLUS
	bool "TI OMAP2+"
	select CPU_V7
558
	select SPL_BOARD_INIT if SPL
559 560 561
	select SUPPORT_SPL
	imply FIT

562 563 564 565 566 567 568
config ARCH_MESON
	bool "Amlogic Meson"
	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 已提交
569 570 571 572 573
config ARCH_MX7ULP
        bool "NXP MX7ULP"
        select CPU_V7
	select ROM_UNIFIED_SECTIONS

574 575 576
config ARCH_MX7
	bool "Freescale MX7"
	select CPU_V7
577 578
	select SYS_FSL_HAS_SEC if SECURE_BOOT
	select SYS_FSL_SEC_COMPAT_4
579
	select SYS_FSL_SEC_LE
580
	select BOARD_EARLY_INIT_F
581
	select ARCH_MISC_INIT
582

583 584 585
config ARCH_MX6
	bool "Freescale MX6"
	select CPU_V7
586 587
	select SYS_FSL_HAS_SEC if SECURE_BOOT
	select SYS_FSL_SEC_COMPAT_4
588
	select SYS_FSL_SEC_LE
589
	select SYS_THUMB_BUILD if SPL
590

591 592 593
config ARCH_MX5
	bool "Freescale MX5"
	select CPU_V7
594
	select BOARD_EARLY_INIT_F
595

596
config ARCH_RMOBILE
597
	bool "Renesas ARM SoCs"
598 599
	select DM
	select DM_SERIAL
600
	select BOARD_EARLY_INIT_F
601
	imply SYS_THUMB_BUILD
602

603 604 605
config TARGET_S32V234EVB
	bool "Support s32v234evb"
	select ARM64
606
	select SYS_FSL_ERRATUM_ESDHC111
607

608 609 610 611 612 613 614 615 616 617
config ARCH_SNAPDRAGON
	bool "Qualcomm Snapdragon SoCs"
	select ARM64
	select DM
	select DM_GPIO
	select DM_SERIAL
	select SPMI
	select OF_CONTROL
	select OF_SEPARATE

618 619
config ARCH_SOCFPGA
	bool "Altera SOCFPGA family"
620
	select CPU_V7
M
Masahiro Yamada 已提交
621
	select SUPPORT_SPL
622 623
	select OF_CONTROL
	select SPL_OF_CONTROL
624 625 626
	select DM
	select DM_SPI_FLASH
	select DM_SPI
627
	select ENABLE_ARM_SOC_BOOT0_HOOK
628
	select ARCH_EARLY_INIT_R
629
	select ARCH_MISC_INIT
630
	select SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
631
	select SYS_THUMB_BUILD
632

633 634
config ARCH_SUNXI
	bool "Support sunxi (Allwinner) SoCs"
635
	select CMD_GPIO
636
	select CMD_MMC if MMC
637
	select CMD_USB if DISTRO_DEFAULTS
638
	select DM
639
	select DM_ETH
H
Hans de Goede 已提交
640 641
	select DM_GPIO
	select DM_KEYBOARD
642
	select DM_SERIAL
643
	select DM_USB if DISTRO_DEFAULTS
644
	select OF_BOARD_SETUP
645 646
	select OF_CONTROL
	select OF_SEPARATE
647 648
	select SPL_STACK_R if SUPPORT_SPL
	select SPL_SYS_MALLOC_SIMPLE if SUPPORT_SPL
649
	select SYS_NS16550
650
	select SPL_SYS_THUMB_BUILD if !ARM64
651 652 653
	select USB if DISTRO_DEFAULTS
	select USB_STORAGE if DISTRO_DEFAULTS
	select USB_KEYBOARD if DISTRO_DEFAULTS
H
Hans de Goede 已提交
654
	select USE_TINY_PRINTF
655 656 657 658 659
	imply PRE_CONSOLE_BUFFER
	imply SPL_GPIO_SUPPORT
	imply SPL_LIBCOMMON_SUPPORT
	imply SPL_LIBDISK_SUPPORT
	imply SPL_LIBGENERIC_SUPPORT
660
	imply SPL_MMC_SUPPORT if MMC
661 662
	imply SPL_POWER_SUPPORT
	imply SPL_SERIAL_SUPPORT
C
Chen-Yu Tsai 已提交
663

664 665 666 667 668
config TARGET_TS4600
	bool "Support TS4600"
	select CPU_ARM926EJS
	select SUPPORT_SPL

669 670
config ARCH_VF610
	bool "Freescale Vybrid"
671
	select CPU_V7
672
	select SYS_FSL_ERRATUM_ESDHC111
673

674
config ARCH_ZYNQ
675
	bool "Xilinx Zynq Platform"
676
	select BOARD_LATE_INIT
677
	select CPU_V7
M
Masahiro Yamada 已提交
678
	select SUPPORT_SPL
679
	select OF_CONTROL
680
	select SPL_BOARD_INIT if SPL
681
	select SPL_OF_CONTROL if SPL
682
	select DM
M
Michal Simek 已提交
683
	select DM_ETH
684
	select DM_GPIO
685
	select SPL_DM if SPL
M
Michal Simek 已提交
686
	select DM_MMC
687
	select DM_MMC_OPS
688
	select DM_SPI
689
	select DM_SERIAL
690
	select DM_SPI_FLASH
691
	select SPL_SEPARATE_BSS if SPL
692
	select DM_USB if USB
693
	select BLK
694 695 696
	select CLK
	select SPL_CLK
	select CLK_ZYNQ
S
Simon Glass 已提交
697
	imply CMD_CLK
698

699
config ARCH_ZYNQMP
M
Michal Simek 已提交
700 701
	bool "Support Xilinx ZynqMP Platform"
	select ARM64
702
	select BOARD_LATE_INIT
703 704 705
	select DM
	select OF_CONTROL
	select DM_SERIAL
706
	select SUPPORT_SPL
707
	select CLK
708
	select SPL_BOARD_INIT if SPL
709
	select SPL_CLK
710
	select DM_USB if USB
M
Michal Simek 已提交
711

712 713
config TEGRA
	bool "NVIDIA Tegra"
714

715
config TARGET_VEXPRESS64_AEMV8A
716
	bool "Support vexpress_aemv8a"
717
	select ARM64
718

719 720 721 722 723
config TARGET_VEXPRESS64_BASE_FVP
	bool "Support Versatile Express ARMv8a FVP BASE model"
	select ARM64
	select SEMIHOSTING

724 725 726 727 728 729 730 731 732
config TARGET_VEXPRESS64_BASE_FVP_DRAM
	bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
	select ARM64
	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.

733 734 735 736
config TARGET_VEXPRESS64_JUNO
	bool "Support Versatile Express Juno Development Platform"
	select ARM64

737 738
config TARGET_LS2080A_EMU
	bool "Support ls2080a_emu"
739
	select ARCH_LS2080A
740
	select ARM64
741
	select ARMV8_MULTIENTRY
742
	select ARCH_MISC_INIT
743 744 745 746 747
	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.
748

749 750
config TARGET_LS2080A_SIMU
	bool "Support ls2080a_simu"
751
	select ARCH_LS2080A
752
	select ARM64
753
	select ARMV8_MULTIENTRY
754
	select ARCH_MISC_INIT
755 756 757 758 759
	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.
760

761 762
config TARGET_LS2080AQDS
	bool "Support ls2080aqds"
763
	select ARCH_LS2080A
764 765
	select ARM64
	select ARMV8_MULTIENTRY
766
	select BOARD_LATE_INIT
S
Scott Wood 已提交
767
	select SUPPORT_SPL
768
	select ARCH_MISC_INIT
769
	help
770 771 772
	  Support for Freescale LS2080AQDS platform
	  The LS2080A Development System (QDS) is a high-performance
	  development platform that supports the QorIQ LS2080A
773 774
	  Layerscape Architecture processor.

775 776
config TARGET_LS2080ARDB
	bool "Support ls2080ardb"
777
	select ARCH_LS2080A
778 779
	select ARM64
	select ARMV8_MULTIENTRY
780
	select BOARD_LATE_INIT
781
	select SUPPORT_SPL
782
	select ARCH_MISC_INIT
783
	help
784 785 786
	  Support for Freescale LS2080ARDB platform.
	  The LS2080A Reference design board (RDB) is a high-performance
	  development platform that supports the QorIQ LS2080A
787 788
	  Layerscape Architecture processor.

789 790 791 792 793 794 795 796 797 798 799 800 801 802
config TARGET_LS2081ARDB
	bool "Support ls2081ardb"
	select ARCH_LS2080A
	select ARM64
	select ARMV8_MULTIENTRY
	select BOARD_LATE_INIT
	select SUPPORT_SPL
	select ARCH_MISC_INIT
	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.

803 804 805
config TARGET_HIKEY
	bool "Support HiKey 96boards Consumer Edition Platform"
	select ARM64
806 807
	select DM
	select DM_GPIO
808
	select DM_SERIAL
809
	select OF_CONTROL
810 811 812 813
	  help
	  Support for HiKey 96boards platform. It features a HI6220
	  SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.

814 815
config TARGET_LS1012AQDS
	bool "Support ls1012aqds"
816
	select ARCH_LS1012A
817
	select ARM64
818
	select BOARD_LATE_INIT
819 820 821 822 823 824
	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.

825 826
config TARGET_LS1012ARDB
	bool "Support ls1012ardb"
827
	select ARCH_LS1012A
828
	select ARM64
829
	select BOARD_LATE_INIT
830 831 832 833 834 835
	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.

836 837
config TARGET_LS1012AFRDM
	bool "Support ls1012afrdm"
838
	select ARCH_LS1012A
839 840 841 842 843 844 845
	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.

846
config TARGET_LS1021AQDS
847
	bool "Support ls1021aqds"
848
	select BOARD_LATE_INIT
849
	select CPU_V7
850 851
	select CPU_V7_HAS_NONSEC
	select CPU_V7_HAS_VIRT
A
Alison Wang 已提交
852
	select SUPPORT_SPL
853
	select ARCH_LS1021A
854
	select ARCH_SUPPORT_PSCI
855
	select LS1_DEEP_SLEEP
856
	select SYS_FSL_DDR
857
	select BOARD_EARLY_INIT_F
858

859
config TARGET_LS1021ATWR
860
	bool "Support ls1021atwr"
861
	select BOARD_LATE_INIT
862
	select CPU_V7
863 864
	select CPU_V7_HAS_NONSEC
	select CPU_V7_HAS_VIRT
A
Alison Wang 已提交
865
	select SUPPORT_SPL
866
	select ARCH_LS1021A
867
	select ARCH_SUPPORT_PSCI
868
	select LS1_DEEP_SLEEP
869
	select BOARD_EARLY_INIT_F
870

F
Feng Li 已提交
871 872
config TARGET_LS1021AIOT
	bool "Support ls1021aiot"
873
	select BOARD_LATE_INIT
F
Feng Li 已提交
874 875 876 877 878 879 880 881 882 883 884 885
	select CPU_V7
	select CPU_V7_HAS_NONSEC
	select CPU_V7_HAS_VIRT
	select SUPPORT_SPL
	select ARCH_LS1021A
	select ARCH_SUPPORT_PSCI
	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.

886 887
config TARGET_LS1043AQDS
	bool "Support ls1043aqds"
888
	select ARCH_LS1043A
889 890
	select ARM64
	select ARMV8_MULTIENTRY
891
	select BOARD_LATE_INIT
892
	select SUPPORT_SPL
893
	select BOARD_EARLY_INIT_F
894 895 896
	help
	  Support for Freescale LS1043AQDS platform.

897 898
config TARGET_LS1043ARDB
	bool "Support ls1043ardb"
899
	select ARCH_LS1043A
900
	select ARM64
901
	select ARMV8_MULTIENTRY
902
	select BOARD_LATE_INIT
903
	select SUPPORT_SPL
904
	select BOARD_EARLY_INIT_F
905 906 907
	help
	  Support for Freescale LS1043ARDB platform.

908 909
config TARGET_LS1046AQDS
	bool "Support ls1046aqds"
910
	select ARCH_LS1046A
911 912
	select ARM64
	select ARMV8_MULTIENTRY
913
	select BOARD_LATE_INIT
914 915
	select SUPPORT_SPL
	select DM_SPI_FLASH if DM_SPI
916
	select BOARD_EARLY_INIT_F
917 918 919 920 921 922
	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.

923 924
config TARGET_LS1046ARDB
	bool "Support ls1046ardb"
925
	select ARCH_LS1046A
926 927
	select ARM64
	select ARMV8_MULTIENTRY
928
	select BOARD_LATE_INIT
929 930
	select SUPPORT_SPL
	select DM_SPI_FLASH if DM_SPI
931
	select POWER_MC34VR500
932
	select BOARD_EARLY_INIT_F
933 934 935 936 937 938
	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.

939 940
config TARGET_H2200
	bool "Support h2200"
941
	select CPU_PXA
942

943 944 945 946
config TARGET_ZIPITZ2
	bool "Support zipitz2"
	select CPU_PXA

947 948
config TARGET_COLIBRI_PXA270
	bool "Support colibri_pxa270"
949
	select CPU_PXA
950

951
config ARCH_UNIPHIER
952
	bool "Socionext UniPhier SoCs"
953
	select BOARD_LATE_INIT
954
	select CLK_UNIPHIER
955
	select DM
956
	select DM_GPIO
957
	select DM_I2C
958
	select DM_MMC
959
	select DM_RESET
960
	select DM_SERIAL
961
	select DM_USB
962 963
	select OF_CONTROL
	select OF_LIBFDT
964
	select PINCTRL
965
	select SPL_BOARD_INIT if SPL
966 967 968 969 970
	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
971
	select SUPPORT_SPL
972 973 974
	help
	  Support for UniPhier SoC family developed by Socionext Inc.
	  (formerly, System LSI Business Division of Panasonic Corporation)
975

976 977
config STM32
	bool "Support STM32"
978
	select CPU_V7M
K
Kamil Lulko 已提交
979 980
	select DM
	select DM_SERIAL
981
	select SYS_THUMB_BUILD
982

983 984 985
config ARCH_STI
	bool "Support STMicrolectronics SoCs"
	select CPU_V7
P
Patrice Chotard 已提交
986 987
	select DM
	select DM_SERIAL
P
Patrice Chotard 已提交
988 989
	select BLK
	select DM_MMC
P
Patrice Chotard 已提交
990
	select DM_RESET
991 992 993 994
	help
	  Support for STMicroelectronics STiH407/10 SoC family.
	  This SoC is used on Linaro 96Board STiH410-B2260

995 996 997
config ARCH_ROCKCHIP
	bool "Support Rockchip SoCs"
	select OF_CONTROL
998
	select BLK
999
	select DM
1000
	select SPL_DM if SPL
1001
	select SYS_MALLOC_F
1002
	select SYS_THUMB_BUILD if !ARM64
1003
	select SPL_SYS_MALLOC_SIMPLE if SPL
1004 1005 1006
	select DM_GPIO
	select DM_I2C
	select DM_MMC
1007
	select DM_MMC_OPS
1008 1009 1010
	select DM_SERIAL
	select DM_SPI
	select DM_SPI_FLASH
1011
	select DM_USB if USB
1012 1013
	select DM_PWM
	select DM_REGULATOR
1014

1015 1016
config TARGET_THUNDERX_88XX
	bool "Support ThunderX 88xx"
1017
	select ARM64
1018
	select OF_CONTROL
1019
	select SYS_CACHE_SHIFT_7
1020

1021 1022 1023 1024 1025
config ARCH_ASPEED
	bool "Support Aspeed SoCs"
	select OF_CONTROL
	select DM

1026 1027
endchoice

1028 1029
source "arch/arm/mach-aspeed/Kconfig"

1030 1031
source "arch/arm/mach-at91/Kconfig"

1032
source "arch/arm/mach-bcm283x/Kconfig"
1033

1034
source "arch/arm/mach-davinci/Kconfig"
1035

1036
source "arch/arm/mach-exynos/Kconfig"
1037

1038
source "arch/arm/mach-highbank/Kconfig"
1039

1040 1041
source "arch/arm/mach-integrator/Kconfig"

1042
source "arch/arm/mach-keystone/Kconfig"
1043

1044
source "arch/arm/mach-kirkwood/Kconfig"
1045

1046 1047
source "arch/arm/mach-mvebu/Kconfig"

1048 1049
source "arch/arm/cpu/armv7/ls102xa/Kconfig"

P
Peng Fan 已提交
1050 1051
source "arch/arm/cpu/armv7/mx7ulp/Kconfig"

1052 1053
source "arch/arm/cpu/armv7/mx7/Kconfig"

1054 1055
source "arch/arm/cpu/armv7/mx6/Kconfig"

1056 1057
source "arch/arm/cpu/armv7/mx5/Kconfig"

1058
source "arch/arm/mach-omap2/Kconfig"
1059

1060 1061
source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"

1062
source "arch/arm/mach-orion5x/Kconfig"
1063

1064
source "arch/arm/mach-rmobile/Kconfig"
1065

1066 1067
source "arch/arm/mach-meson/Kconfig"

1068 1069
source "arch/arm/mach-rockchip/Kconfig"

1070
source "arch/arm/mach-s5pc1xx/Kconfig"
1071

1072 1073
source "arch/arm/mach-snapdragon/Kconfig"

1074 1075
source "arch/arm/mach-socfpga/Kconfig"

1076 1077
source "arch/arm/mach-sti/Kconfig"

1078 1079
source "arch/arm/mach-stm32/Kconfig"

1080 1081
source "arch/arm/mach-sunxi/Kconfig"

1082
source "arch/arm/mach-tegra/Kconfig"
1083

1084
source "arch/arm/mach-uniphier/Kconfig"
1085

1086 1087
source "arch/arm/cpu/armv7/vf610/Kconfig"

1088
source "arch/arm/mach-zynq/Kconfig"
1089

1090 1091
source "arch/arm/cpu/armv7/Kconfig"

1092 1093
source "arch/arm/cpu/armv8/zynqmp/Kconfig"

1094 1095
source "arch/arm/cpu/armv8/Kconfig"

1096 1097
source "arch/arm/imx-common/Kconfig"

M
Marek Vasut 已提交
1098
source "board/aries/m28evk/Kconfig"
1099
source "board/bosch/shc/Kconfig"
1100 1101 1102 1103 1104 1105 1106
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"
source "board/bluegiga/apx4devkit/Kconfig"
1107
source "board/broadcom/bcm23550_w1d/Kconfig"
1108
source "board/broadcom/bcm28155_ap/Kconfig"
S
Steve Rae 已提交
1109 1110
source "board/broadcom/bcmcygnus/Kconfig"
source "board/broadcom/bcmnsp/Kconfig"
1111
source "board/broadcom/bcmns2/Kconfig"
1112
source "board/cavium/thunderx/Kconfig"
1113 1114
source "board/cirrus/edb93xx/Kconfig"
source "board/creative/xfi3/Kconfig"
1115 1116 1117
source "board/freescale/ls2080a/Kconfig"
source "board/freescale/ls2080aqds/Kconfig"
source "board/freescale/ls2080ardb/Kconfig"
1118
source "board/freescale/ls1021aqds/Kconfig"
1119
source "board/freescale/ls1043aqds/Kconfig"
1120
source "board/freescale/ls1021atwr/Kconfig"
F
Feng Li 已提交
1121
source "board/freescale/ls1021aiot/Kconfig"
1122
source "board/freescale/ls1046aqds/Kconfig"
1123
source "board/freescale/ls1043ardb/Kconfig"
1124
source "board/freescale/ls1046ardb/Kconfig"
1125
source "board/freescale/ls1012aqds/Kconfig"
1126
source "board/freescale/ls1012ardb/Kconfig"
1127
source "board/freescale/ls1012afrdm/Kconfig"
1128 1129 1130 1131 1132 1133
source "board/freescale/mx23evk/Kconfig"
source "board/freescale/mx25pdk/Kconfig"
source "board/freescale/mx28evk/Kconfig"
source "board/freescale/mx31ads/Kconfig"
source "board/freescale/mx31pdk/Kconfig"
source "board/freescale/mx35pdk/Kconfig"
1134
source "board/freescale/s32v234evb/Kconfig"
1135
source "board/gdsys/a38x/Kconfig"
1136
source "board/grinn/chiliboard/Kconfig"
1137 1138
source "board/gumstix/pepper/Kconfig"
source "board/h2200/Kconfig"
1139
source "board/hisilicon/hikey/Kconfig"
1140
source "board/imx31_phycore/Kconfig"
L
Ladislav Michl 已提交
1141
source "board/isee/igep003x/Kconfig"
1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152
source "board/olimex/mx23_olinuxino/Kconfig"
source "board/phytec/pcm051/Kconfig"
source "board/ppcag/bg0900/Kconfig"
source "board/sandisk/sansa_fuze_plus/Kconfig"
source "board/schulercontrol/sc_sps_1/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"
1153
source "board/st/stv0991/Kconfig"
1154
source "board/syteco/zmx25/Kconfig"
1155
source "board/tcl/sl50/Kconfig"
1156
source "board/birdland/bav335x/Kconfig"
1157 1158
source "board/timll/devkit3250/Kconfig"
source "board/toradex/colibri_pxa270/Kconfig"
1159
source "board/technologic/ts4600/Kconfig"
1160
source "board/vscom/baltos/Kconfig"
1161
source "board/woodburn/Kconfig"
1162
source "board/work-microwave/work_92105/Kconfig"
1163
source "board/zipitz2/Kconfig"
1164

1165 1166
source "arch/arm/Kconfig.debug"

1167
endmenu