]> git.ipfire.org Git - people/ms/u-boot.git/blob - arch/arm/Kconfig
Merge git://www.denx.de/git/u-boot-marvell
[people/ms/u-boot.git] / arch / arm / Kconfig
1 menu "ARM architecture"
2 depends on ARM
3
4 config SYS_ARCH
5 default "arm"
6
7 config ARM64
8 bool
9 select PHYS_64BIT
10 select SYS_CACHE_SHIFT_6
11
12 config DMA_ADDR_T_64BIT
13 bool
14 default y if ARM64
15
16 config HAS_VBAR
17 bool
18
19 config HAS_THUMB2
20 bool
21
22 # Used for compatibility with asm files copied from the kernel
23 config ARM_ASM_UNIFIED
24 bool
25 default y
26
27 # Used for compatibility with asm files copied from the kernel
28 config THUMB2_KERNEL
29 bool
30
31 # If set, the workarounds for these ARM errata are applied early during U-Boot
32 # startup. Note that in general these options force the workarounds to be
33 # applied; no CPU-type/version detection exists, unlike the similar options in
34 # the Linux kernel. Do not set these options unless they apply! Also note that
35 # the following can be machine specific errata. These do have ability to
36 # provide rudimentary version and machine specific checks, but expect no
37 # product checks:
38 # CONFIG_ARM_ERRATA_430973
39 # CONFIG_ARM_ERRATA_454179
40 # CONFIG_ARM_ERRATA_621766
41 # CONFIG_ARM_ERRATA_798870
42 # CONFIG_ARM_ERRATA_801819
43 config ARM_ERRATA_430973
44 bool
45
46 config ARM_ERRATA_454179
47 bool
48
49 config ARM_ERRATA_621766
50 bool
51
52 config ARM_ERRATA_716044
53 bool
54
55 config ARM_ERRATA_725233
56 bool
57
58 config ARM_ERRATA_742230
59 bool
60
61 config ARM_ERRATA_743622
62 bool
63
64 config ARM_ERRATA_751472
65 bool
66
67 config ARM_ERRATA_761320
68 bool
69
70 config ARM_ERRATA_773022
71 bool
72
73 config ARM_ERRATA_774769
74 bool
75
76 config ARM_ERRATA_794072
77 bool
78
79 config ARM_ERRATA_798870
80 bool
81
82 config ARM_ERRATA_801819
83 bool
84
85 config ARM_ERRATA_826974
86 bool
87
88 config ARM_ERRATA_828024
89 bool
90
91 config ARM_ERRATA_829520
92 bool
93
94 config ARM_ERRATA_833069
95 bool
96
97 config ARM_ERRATA_833471
98 bool
99
100 config ARM_ERRATA_845369
101 bool
102
103 config ARM_ERRATA_852421
104 bool
105
106 config ARM_ERRATA_852423
107 bool
108
109 config CPU_ARM720T
110 bool
111 select SYS_CACHE_SHIFT_5
112
113 config CPU_ARM920T
114 bool
115 select SYS_CACHE_SHIFT_5
116
117 config CPU_ARM926EJS
118 bool
119 select SYS_CACHE_SHIFT_5
120
121 config CPU_ARM946ES
122 bool
123 select SYS_CACHE_SHIFT_5
124
125 config CPU_ARM1136
126 bool
127 select SYS_CACHE_SHIFT_5
128
129 config CPU_ARM1176
130 bool
131 select HAS_VBAR
132 select SYS_CACHE_SHIFT_5
133
134 config CPU_V7
135 bool
136 select HAS_VBAR
137 select HAS_THUMB2
138 select SYS_CACHE_SHIFT_6
139
140 config CPU_V7M
141 bool
142 select HAS_THUMB2
143 select THUMB2_KERNEL
144 select SYS_CACHE_SHIFT_5
145
146 config CPU_PXA
147 bool
148 select SYS_CACHE_SHIFT_5
149
150 config CPU_SA1100
151 bool
152 select SYS_CACHE_SHIFT_5
153
154 config SYS_CPU
155 default "arm720t" if CPU_ARM720T
156 default "arm920t" if CPU_ARM920T
157 default "arm926ejs" if CPU_ARM926EJS
158 default "arm946es" if CPU_ARM946ES
159 default "arm1136" if CPU_ARM1136
160 default "arm1176" if CPU_ARM1176
161 default "armv7" if CPU_V7
162 default "armv7m" if CPU_V7M
163 default "pxa" if CPU_PXA
164 default "sa1100" if CPU_SA1100
165 default "armv8" if ARM64
166
167 config SYS_ARM_ARCH
168 int
169 default 4 if CPU_ARM720T
170 default 4 if CPU_ARM920T
171 default 5 if CPU_ARM926EJS
172 default 5 if CPU_ARM946ES
173 default 6 if CPU_ARM1136
174 default 6 if CPU_ARM1176
175 default 7 if CPU_V7
176 default 7 if CPU_V7M
177 default 5 if CPU_PXA
178 default 4 if CPU_SA1100
179 default 8 if ARM64
180
181 config SYS_CACHE_SHIFT_5
182 bool
183
184 config SYS_CACHE_SHIFT_6
185 bool
186
187 config SYS_CACHE_SHIFT_7
188 bool
189
190 config SYS_CACHELINE_SIZE
191 int
192 default 128 if SYS_CACHE_SHIFT_7
193 default 64 if SYS_CACHE_SHIFT_6
194 default 32 if SYS_CACHE_SHIFT_5
195
196 config ARM_SMCCC
197 bool "Support for ARM SMC Calling Convention (SMCCC)"
198 depends on CPU_V7 || ARM64
199 select ARM_PSCI_FW
200 help
201 Say Y here if you want to enable ARM SMC Calling Convention.
202 This should be enabled if U-Boot needs to communicate with system
203 firmware (for example, PSCI) according to SMCCC.
204
205 config SEMIHOSTING
206 bool "support boot from semihosting"
207 help
208 In emulated environments, semihosting is a way for
209 the hosted environment to call out to the emulator to
210 retrieve files from the host machine.
211
212 config SYS_THUMB_BUILD
213 bool "Build U-Boot using the Thumb instruction set"
214 depends on !ARM64
215 help
216 Use this flag to build U-Boot using the Thumb instruction set for
217 ARM architectures. Thumb instruction set provides better code
218 density. For ARM architectures that support Thumb2 this flag will
219 result in Thumb2 code generated by GCC.
220
221 config SPL_SYS_THUMB_BUILD
222 bool "Build SPL using the Thumb instruction set"
223 default y if SYS_THUMB_BUILD
224 depends on !ARM64
225 help
226 Use this flag to build SPL using the Thumb instruction set for
227 ARM architectures. Thumb instruction set provides better code
228 density. For ARM architectures that support Thumb2 this flag will
229 result in Thumb2 code generated by GCC.
230
231 config SYS_L2CACHE_OFF
232 bool "L2cache off"
233 help
234 If SoC does not support L2CACHE or one do not want to enable
235 L2CACHE, choose this option.
236
237 config ENABLE_ARM_SOC_BOOT0_HOOK
238 bool "prepare BOOT0 header"
239 help
240 If the SoC's BOOT0 requires a header area filled with (magic)
241 values, then choose this option, and create a define called
242 ARM_SOC_BOOT0_HOOK which contains the required assembler
243 preprocessor code.
244
245 config ARM_CORTEX_CPU_IS_UP
246 bool
247 default n
248
249 config USE_ARCH_MEMCPY
250 bool "Use an assembly optimized implementation of memcpy"
251 default y
252 depends on !ARM64
253 help
254 Enable the generation of an optimized version of memcpy.
255 Such implementation may be faster under some conditions
256 but may increase the binary size.
257
258 config SPL_USE_ARCH_MEMCPY
259 bool "Use an assembly optimized implementation of memcpy for SPL"
260 default y if USE_ARCH_MEMCPY
261 depends on !ARM64
262 help
263 Enable the generation of an optimized version of memcpy.
264 Such implementation may be faster under some conditions
265 but may increase the binary size.
266
267 config USE_ARCH_MEMSET
268 bool "Use an assembly optimized implementation of memset"
269 default y
270 depends on !ARM64
271 help
272 Enable the generation of an optimized version of memset.
273 Such implementation may be faster under some conditions
274 but may increase the binary size.
275
276 config SPL_USE_ARCH_MEMSET
277 bool "Use an assembly optimized implementation of memset for SPL"
278 default y if USE_ARCH_MEMSET
279 depends on !ARM64
280 help
281 Enable the generation of an optimized version of memset.
282 Such implementation may be faster under some conditions
283 but may increase the binary size.
284
285 config ARM64_SUPPORT_AARCH32
286 bool "ARM64 system support AArch32 execution state"
287 default y if ARM64 && !TARGET_THUNDERX_88XX
288 help
289 This ARM64 system supports AArch32 execution state.
290
291 choice
292 prompt "Target select"
293 default TARGET_HIKEY
294
295 config ARCH_AT91
296 bool "Atmel AT91"
297 select SPL_BOARD_INIT if SPL
298
299 config TARGET_EDB93XX
300 bool "Support edb93xx"
301 select CPU_ARM920T
302
303 config TARGET_ASPENITE
304 bool "Support aspenite"
305 select CPU_ARM926EJS
306
307 config TARGET_GPLUGD
308 bool "Support gplugd"
309 select CPU_ARM926EJS
310
311 config ARCH_DAVINCI
312 bool "TI DaVinci"
313 select CPU_ARM926EJS
314 imply CMD_SAVES
315 help
316 Support for TI's DaVinci platform.
317
318 config KIRKWOOD
319 bool "Marvell Kirkwood"
320 select CPU_ARM926EJS
321 select BOARD_EARLY_INIT_F
322 select ARCH_MISC_INIT
323
324 config ARCH_MVEBU
325 bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)"
326 select OF_CONTROL
327 select OF_SEPARATE
328 select DM
329 select DM_ETH
330 select DM_SERIAL
331 select DM_SPI
332 select DM_SPI_FLASH
333
334 config TARGET_DEVKIT3250
335 bool "Support devkit3250"
336 select CPU_ARM926EJS
337 select SUPPORT_SPL
338
339 config TARGET_WORK_92105
340 bool "Support work_92105"
341 select CPU_ARM926EJS
342 select SUPPORT_SPL
343
344 config TARGET_MX25PDK
345 bool "Support mx25pdk"
346 select BOARD_LATE_INIT
347 select CPU_ARM926EJS
348 select BOARD_EARLY_INIT_F
349
350 config TARGET_ZMX25
351 bool "Support zmx25"
352 select BOARD_LATE_INIT
353 select CPU_ARM926EJS
354
355 config TARGET_APF27
356 bool "Support apf27"
357 select CPU_ARM926EJS
358 select SUPPORT_SPL
359
360 config TARGET_APX4DEVKIT
361 bool "Support apx4devkit"
362 select CPU_ARM926EJS
363 select SUPPORT_SPL
364
365 config TARGET_XFI3
366 bool "Support xfi3"
367 select CPU_ARM926EJS
368 select SUPPORT_SPL
369
370 config TARGET_M28EVK
371 bool "Support m28evk"
372 select CPU_ARM926EJS
373 select SUPPORT_SPL
374
375 config TARGET_MX23EVK
376 bool "Support mx23evk"
377 select CPU_ARM926EJS
378 select SUPPORT_SPL
379 select BOARD_EARLY_INIT_F
380
381 config TARGET_MX28EVK
382 bool "Support mx28evk"
383 select CPU_ARM926EJS
384 select SUPPORT_SPL
385 select BOARD_EARLY_INIT_F
386
387 config TARGET_MX23_OLINUXINO
388 bool "Support mx23_olinuxino"
389 select CPU_ARM926EJS
390 select SUPPORT_SPL
391 select BOARD_EARLY_INIT_F
392
393 config TARGET_BG0900
394 bool "Support bg0900"
395 select CPU_ARM926EJS
396 select SUPPORT_SPL
397
398 config TARGET_SANSA_FUZE_PLUS
399 bool "Support sansa_fuze_plus"
400 select CPU_ARM926EJS
401 select SUPPORT_SPL
402
403 config TARGET_SC_SPS_1
404 bool "Support sc_sps_1"
405 select CPU_ARM926EJS
406 select SUPPORT_SPL
407
408 config ORION5X
409 bool "Marvell Orion"
410 select CPU_ARM926EJS
411
412 config TARGET_SPEAR300
413 bool "Support spear300"
414 select CPU_ARM926EJS
415 select BOARD_EARLY_INIT_F
416 imply CMD_SAVES
417
418 config TARGET_SPEAR310
419 bool "Support spear310"
420 select CPU_ARM926EJS
421 select BOARD_EARLY_INIT_F
422 imply CMD_SAVES
423
424 config TARGET_SPEAR320
425 bool "Support spear320"
426 select CPU_ARM926EJS
427 select BOARD_EARLY_INIT_F
428 imply CMD_SAVES
429
430 config TARGET_SPEAR600
431 bool "Support spear600"
432 select CPU_ARM926EJS
433 select BOARD_EARLY_INIT_F
434 imply CMD_SAVES
435
436 config TARGET_STV0991
437 bool "Support stv0991"
438 select CPU_V7
439 select DM
440 select DM_SERIAL
441 select DM_SPI
442 select DM_SPI_FLASH
443 select SPI_FLASH
444
445 config TARGET_X600
446 bool "Support x600"
447 select BOARD_LATE_INIT
448 select CPU_ARM926EJS
449 select SUPPORT_SPL
450
451 config TARGET_IMX31_PHYCORE
452 bool "Support imx31_phycore_eet"
453 select CPU_ARM1136
454 select BOARD_EARLY_INIT_F
455
456 config TARGET_IMX31_PHYCORE_EET
457 bool "Support imx31_phycore_eet"
458 select BOARD_LATE_INIT
459 select CPU_ARM1136
460 select BOARD_EARLY_INIT_F
461
462 config TARGET_MX31ADS
463 bool "Support mx31ads"
464 select CPU_ARM1136
465 select BOARD_EARLY_INIT_F
466
467 config TARGET_MX31PDK
468 bool "Support mx31pdk"
469 select BOARD_LATE_INIT
470 select CPU_ARM1136
471 select SUPPORT_SPL
472 select BOARD_EARLY_INIT_F
473
474 config TARGET_WOODBURN
475 bool "Support woodburn"
476 select CPU_ARM1136
477
478 config TARGET_WOODBURN_SD
479 bool "Support woodburn_sd"
480 select CPU_ARM1136
481 select SUPPORT_SPL
482
483 config TARGET_FLEA3
484 bool "Support flea3"
485 select CPU_ARM1136
486
487 config TARGET_MX35PDK
488 bool "Support mx35pdk"
489 select BOARD_LATE_INIT
490 select CPU_ARM1136
491
492 config ARCH_BCM283X
493 bool "Broadcom BCM283X family"
494 select DM
495 select DM_SERIAL
496 select DM_GPIO
497 select OF_CONTROL
498 imply FAT_WRITE
499
500 config TARGET_VEXPRESS_CA15_TC2
501 bool "Support vexpress_ca15_tc2"
502 select CPU_V7
503 select CPU_V7_HAS_NONSEC
504 select CPU_V7_HAS_VIRT
505
506 config TARGET_VEXPRESS_CA5X2
507 bool "Support vexpress_ca5x2"
508 select CPU_V7
509
510 config TARGET_VEXPRESS_CA9X4
511 bool "Support vexpress_ca9x4"
512 select CPU_V7
513
514 config TARGET_BCM23550_W1D
515 bool "Support bcm23550_w1d"
516 select CPU_V7
517 imply CRC32_VERIFY
518 imply FAT_WRITE
519
520 config TARGET_BCM28155_AP
521 bool "Support bcm28155_ap"
522 select CPU_V7
523 imply CRC32_VERIFY
524 imply FAT_WRITE
525
526 config TARGET_BCMCYGNUS
527 bool "Support bcmcygnus"
528 select CPU_V7
529 imply CRC32_VERIFY
530 imply CMD_HASH
531 imply FAT_WRITE
532 imply HASH_VERIFY
533 imply NETDEVICES
534 imply BCM_SF2_ETH
535 imply BCM_SF2_ETH_GMAC
536
537 config TARGET_BCMNSP
538 bool "Support bcmnsp"
539 select CPU_V7
540
541 config TARGET_BCMNS2
542 bool "Support Broadcom Northstar2"
543 select ARM64
544 help
545 Support for Broadcom Northstar 2 SoCs. NS2 is a quad-core 64-bit
546 ARMv8 Cortex-A57 processors targeting a broad range of networking
547 applications
548
549 config ARCH_EXYNOS
550 bool "Samsung EXYNOS"
551 select DM
552 select DM_I2C
553 select DM_SPI_FLASH
554 select DM_SERIAL
555 select DM_SPI
556 select DM_GPIO
557 select DM_KEYBOARD
558 imply FAT_WRITE
559
560 config ARCH_S5PC1XX
561 bool "Samsung S5PC1XX"
562 select CPU_V7
563 select DM
564 select DM_SERIAL
565 select DM_GPIO
566 select DM_I2C
567
568 config ARCH_HIGHBANK
569 bool "Calxeda Highbank"
570 select CPU_V7
571
572 config ARCH_INTEGRATOR
573 bool "ARM Ltd. Integrator family"
574 select DM
575 select DM_SERIAL
576
577 config ARCH_KEYSTONE
578 bool "TI Keystone"
579 select CPU_V7
580 select SUPPORT_SPL
581 select SYS_THUMB_BUILD
582 select CMD_POWEROFF
583 imply CMD_MTDPARTS
584 imply FIT
585 imply CMD_SAVES
586
587 config ARCH_OMAP2PLUS
588 bool "TI OMAP2+"
589 select CPU_V7
590 select SPL_BOARD_INIT if SPL
591 select SUPPORT_SPL
592 imply FIT
593
594 config ARCH_MESON
595 bool "Amlogic Meson"
596 help
597 Support for the Meson SoC family developed by Amlogic Inc.,
598 targeted at media players and tablet computers. We currently
599 support the S905 (GXBaby) 64-bit SoC.
600
601 config ARCH_MX7ULP
602 bool "NXP MX7ULP"
603 select CPU_V7
604 select ROM_UNIFIED_SECTIONS
605
606 config ARCH_MX7
607 bool "Freescale MX7"
608 select CPU_V7
609 select SYS_FSL_HAS_SEC if SECURE_BOOT
610 select SYS_FSL_SEC_COMPAT_4
611 select SYS_FSL_SEC_LE
612 select BOARD_EARLY_INIT_F
613 select ARCH_MISC_INIT
614
615 config ARCH_MX6
616 bool "Freescale MX6"
617 select CPU_V7
618 select SYS_FSL_HAS_SEC if SECURE_BOOT
619 select SYS_FSL_SEC_COMPAT_4
620 select SYS_FSL_SEC_LE
621 select SYS_THUMB_BUILD if SPL
622
623 if ARCH_MX6
624 config SPL_LDSCRIPT
625 default "arch/arm/mach-omap2/u-boot-spl.lds"
626 endif
627
628 config ARCH_MX5
629 bool "Freescale MX5"
630 select CPU_V7
631 select BOARD_EARLY_INIT_F
632
633 config ARCH_RMOBILE
634 bool "Renesas ARM SoCs"
635 select DM
636 select DM_SERIAL
637 select BOARD_EARLY_INIT_F
638 imply FAT_WRITE
639 imply SYS_THUMB_BUILD
640
641 config TARGET_S32V234EVB
642 bool "Support s32v234evb"
643 select ARM64
644 select SYS_FSL_ERRATUM_ESDHC111
645
646 config ARCH_SNAPDRAGON
647 bool "Qualcomm Snapdragon SoCs"
648 select ARM64
649 select DM
650 select DM_GPIO
651 select DM_SERIAL
652 select SPMI
653 select OF_CONTROL
654 select OF_SEPARATE
655
656 config ARCH_SOCFPGA
657 bool "Altera SOCFPGA family"
658 select CPU_V7
659 select SUPPORT_SPL
660 select OF_CONTROL
661 select SPL_OF_CONTROL
662 select DM
663 select DM_SPI_FLASH
664 select DM_SPI
665 select ENABLE_ARM_SOC_BOOT0_HOOK
666 select ARCH_EARLY_INIT_R
667 select ARCH_MISC_INIT
668 select SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
669 select SYS_THUMB_BUILD
670 imply CMD_MTDPARTS
671 imply CRC32_VERIFY
672 imply FAT_WRITE
673
674 config ARCH_SUNXI
675 bool "Support sunxi (Allwinner) SoCs"
676 select CMD_GPIO
677 select CMD_MMC if MMC
678 select CMD_USB if DISTRO_DEFAULTS
679 select DM
680 select DM_ETH
681 select DM_GPIO
682 select DM_KEYBOARD
683 select DM_SERIAL
684 select DM_USB if DISTRO_DEFAULTS
685 select OF_BOARD_SETUP
686 select OF_CONTROL
687 select OF_SEPARATE
688 select SPL_STACK_R if SPL
689 select SPL_SYS_MALLOC_SIMPLE if SPL
690 select SYS_NS16550
691 select SPL_SYS_THUMB_BUILD if !ARM64
692 select USB if DISTRO_DEFAULTS
693 select USB_STORAGE if DISTRO_DEFAULTS
694 select USB_KEYBOARD if DISTRO_DEFAULTS
695 select USE_TINY_PRINTF
696 imply FAT_WRITE
697 imply PRE_CONSOLE_BUFFER
698 imply SPL_GPIO_SUPPORT
699 imply SPL_LIBCOMMON_SUPPORT
700 imply SPL_LIBDISK_SUPPORT
701 imply SPL_LIBGENERIC_SUPPORT
702 imply SPL_MMC_SUPPORT if MMC
703 imply SPL_POWER_SUPPORT
704 imply SPL_SERIAL_SUPPORT
705
706 config TARGET_TS4600
707 bool "Support TS4600"
708 select CPU_ARM926EJS
709 select SUPPORT_SPL
710
711 config ARCH_VF610
712 bool "Freescale Vybrid"
713 select CPU_V7
714 select SYS_FSL_ERRATUM_ESDHC111
715 imply CMD_MTDPARTS
716 imply NAND
717
718 config ARCH_ZYNQ
719 bool "Xilinx Zynq Platform"
720 select BOARD_LATE_INIT
721 select CPU_V7
722 select SUPPORT_SPL
723 select OF_CONTROL
724 select SPL_BOARD_INIT if SPL
725 select SPL_OF_CONTROL if SPL
726 select DM
727 select DM_ETH
728 select DM_GPIO
729 select SPL_DM if SPL
730 select DM_MMC
731 select DM_SPI
732 select DM_SERIAL
733 select DM_SPI_FLASH
734 select SPL_SEPARATE_BSS if SPL
735 select DM_USB if USB
736 select BLK
737 select CLK
738 select SPL_CLK
739 select CLK_ZYNQ
740 imply CMD_CLK
741 imply FAT_WRITE
742 imply CMD_SPL
743
744 config ARCH_ZYNQMP
745 bool "Support Xilinx ZynqMP Platform"
746 select ARM64
747 select BOARD_LATE_INIT
748 select DM
749 select OF_CONTROL
750 select DM_SERIAL
751 select SUPPORT_SPL
752 select CLK
753 select SPL_BOARD_INIT if SPL
754 select SPL_CLK
755 select DM_USB if USB
756 imply FAT_WRITE
757
758 config TEGRA
759 bool "NVIDIA Tegra"
760 imply FAT_WRITE
761
762 config TARGET_VEXPRESS64_AEMV8A
763 bool "Support vexpress_aemv8a"
764 select ARM64
765
766 config TARGET_VEXPRESS64_BASE_FVP
767 bool "Support Versatile Express ARMv8a FVP BASE model"
768 select ARM64
769 select SEMIHOSTING
770
771 config TARGET_VEXPRESS64_BASE_FVP_DRAM
772 bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
773 select ARM64
774 help
775 This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
776 the default config to allow the user to load the images directly into
777 DRAM using model parameters rather than by using semi-hosting to load
778 the files from the host filesystem.
779
780 config TARGET_VEXPRESS64_JUNO
781 bool "Support Versatile Express Juno Development Platform"
782 select ARM64
783
784 config TARGET_LS2080A_EMU
785 bool "Support ls2080a_emu"
786 select ARCH_LS2080A
787 select ARM64
788 select ARMV8_MULTIENTRY
789 select ARCH_MISC_INIT
790 help
791 Support for Freescale LS2080A_EMU platform
792 The LS2080A Development System (EMULATOR) is a pre silicon
793 development platform that supports the QorIQ LS2080A
794 Layerscape Architecture processor.
795
796 config TARGET_LS2080A_SIMU
797 bool "Support ls2080a_simu"
798 select ARCH_LS2080A
799 select ARM64
800 select ARMV8_MULTIENTRY
801 select ARCH_MISC_INIT
802 help
803 Support for Freescale LS2080A_SIMU platform
804 The LS2080A Development System (QDS) is a pre silicon
805 development platform that supports the QorIQ LS2080A
806 Layerscape Architecture processor.
807
808 config TARGET_LS2080AQDS
809 bool "Support ls2080aqds"
810 select ARCH_LS2080A
811 select ARM64
812 select ARMV8_MULTIENTRY
813 select BOARD_LATE_INIT
814 select SUPPORT_SPL
815 select ARCH_MISC_INIT
816 imply SCSI
817 help
818 Support for Freescale LS2080AQDS platform
819 The LS2080A Development System (QDS) is a high-performance
820 development platform that supports the QorIQ LS2080A
821 Layerscape Architecture processor.
822
823 config TARGET_LS2080ARDB
824 bool "Support ls2080ardb"
825 select ARCH_LS2080A
826 select ARM64
827 select ARMV8_MULTIENTRY
828 select BOARD_LATE_INIT
829 select SUPPORT_SPL
830 select ARCH_MISC_INIT
831 imply SCSI
832 help
833 Support for Freescale LS2080ARDB platform.
834 The LS2080A Reference design board (RDB) is a high-performance
835 development platform that supports the QorIQ LS2080A
836 Layerscape Architecture processor.
837
838 config TARGET_LS2081ARDB
839 bool "Support ls2081ardb"
840 select ARCH_LS2080A
841 select ARM64
842 select ARMV8_MULTIENTRY
843 select BOARD_LATE_INIT
844 select SUPPORT_SPL
845 select ARCH_MISC_INIT
846 help
847 Support for Freescale LS2081ARDB platform.
848 The LS2081A Reference design board (RDB) is a high-performance
849 development platform that supports the QorIQ LS2081A/LS2041A
850 Layerscape Architecture processor.
851
852 config TARGET_HIKEY
853 bool "Support HiKey 96boards Consumer Edition Platform"
854 select ARM64
855 select DM
856 select DM_GPIO
857 select DM_SERIAL
858 select OF_CONTROL
859 help
860 Support for HiKey 96boards platform. It features a HI6220
861 SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
862
863 config TARGET_POPLAR
864 bool "Support Poplar 96boards Enterprise Edition Platform"
865 select ARM64
866 select DM
867 select OF_CONTROL
868 select DM_SERIAL
869 select DM_USB
870 help
871 Support for Poplar 96boards EE platform. It features a HI3798cv200
872 SoC, with 4xA53 CPU, 1GB RAM and the high performance Mali T720 GPU
873 making it capable of running any commercial set-top solution based on
874 Linux or Android.
875
876 config TARGET_LS1012AQDS
877 bool "Support ls1012aqds"
878 select ARCH_LS1012A
879 select ARM64
880 select BOARD_LATE_INIT
881 help
882 Support for Freescale LS1012AQDS platform.
883 The LS1012A Development System (QDS) is a high-performance
884 development platform that supports the QorIQ LS1012A
885 Layerscape Architecture processor.
886
887 config TARGET_LS1012ARDB
888 bool "Support ls1012ardb"
889 select ARCH_LS1012A
890 select ARM64
891 select BOARD_LATE_INIT
892 imply SCSI
893 help
894 Support for Freescale LS1012ARDB platform.
895 The LS1012A Reference design board (RDB) is a high-performance
896 development platform that supports the QorIQ LS1012A
897 Layerscape Architecture processor.
898
899 config TARGET_LS1012AFRDM
900 bool "Support ls1012afrdm"
901 select ARCH_LS1012A
902 select ARM64
903 help
904 Support for Freescale LS1012AFRDM platform.
905 The LS1012A Freedom board (FRDM) is a high-performance
906 development platform that supports the QorIQ LS1012A
907 Layerscape Architecture processor.
908
909 config TARGET_LS1021AQDS
910 bool "Support ls1021aqds"
911 select BOARD_LATE_INIT
912 select CPU_V7
913 select CPU_V7_HAS_NONSEC
914 select CPU_V7_HAS_VIRT
915 select SUPPORT_SPL
916 select ARCH_LS1021A
917 select ARCH_SUPPORT_PSCI
918 select LS1_DEEP_SLEEP
919 select SYS_FSL_DDR
920 select BOARD_EARLY_INIT_F
921 imply SCSI
922
923 config TARGET_LS1021ATWR
924 bool "Support ls1021atwr"
925 select BOARD_LATE_INIT
926 select CPU_V7
927 select CPU_V7_HAS_NONSEC
928 select CPU_V7_HAS_VIRT
929 select SUPPORT_SPL
930 select ARCH_LS1021A
931 select ARCH_SUPPORT_PSCI
932 select LS1_DEEP_SLEEP
933 select BOARD_EARLY_INIT_F
934 imply SCSI
935
936 config TARGET_LS1021AIOT
937 bool "Support ls1021aiot"
938 select BOARD_LATE_INIT
939 select CPU_V7
940 select CPU_V7_HAS_NONSEC
941 select CPU_V7_HAS_VIRT
942 select SUPPORT_SPL
943 select ARCH_LS1021A
944 select ARCH_SUPPORT_PSCI
945 imply SCSI
946 help
947 Support for Freescale LS1021AIOT platform.
948 The LS1021A Freescale board (IOT) is a high-performance
949 development platform that supports the QorIQ LS1021A
950 Layerscape Architecture processor.
951
952 config TARGET_LS1043AQDS
953 bool "Support ls1043aqds"
954 select ARCH_LS1043A
955 select ARM64
956 select ARMV8_MULTIENTRY
957 select BOARD_LATE_INIT
958 select SUPPORT_SPL
959 select BOARD_EARLY_INIT_F
960 imply SCSI
961 help
962 Support for Freescale LS1043AQDS platform.
963
964 config TARGET_LS1043ARDB
965 bool "Support ls1043ardb"
966 select ARCH_LS1043A
967 select ARM64
968 select ARMV8_MULTIENTRY
969 select BOARD_LATE_INIT
970 select SUPPORT_SPL
971 select BOARD_EARLY_INIT_F
972 imply SCSI
973 help
974 Support for Freescale LS1043ARDB platform.
975
976 config TARGET_LS1046AQDS
977 bool "Support ls1046aqds"
978 select ARCH_LS1046A
979 select ARM64
980 select ARMV8_MULTIENTRY
981 select BOARD_LATE_INIT
982 select SUPPORT_SPL
983 select DM_SPI_FLASH if DM_SPI
984 select BOARD_EARLY_INIT_F
985 imply SCSI
986 help
987 Support for Freescale LS1046AQDS platform.
988 The LS1046A Development System (QDS) is a high-performance
989 development platform that supports the QorIQ LS1046A
990 Layerscape Architecture processor.
991
992 config TARGET_LS1046ARDB
993 bool "Support ls1046ardb"
994 select ARCH_LS1046A
995 select ARM64
996 select ARMV8_MULTIENTRY
997 select BOARD_LATE_INIT
998 select SUPPORT_SPL
999 select DM_SPI_FLASH if DM_SPI
1000 select POWER_MC34VR500
1001 select BOARD_EARLY_INIT_F
1002 imply SCSI
1003 help
1004 Support for Freescale LS1046ARDB platform.
1005 The LS1046A Reference Design Board (RDB) is a high-performance
1006 development platform that supports the QorIQ LS1046A
1007 Layerscape Architecture processor.
1008
1009 config TARGET_H2200
1010 bool "Support h2200"
1011 select CPU_PXA
1012
1013 config TARGET_ZIPITZ2
1014 bool "Support zipitz2"
1015 select CPU_PXA
1016
1017 config TARGET_COLIBRI_PXA270
1018 bool "Support colibri_pxa270"
1019 select CPU_PXA
1020
1021 config ARCH_UNIPHIER
1022 bool "Socionext UniPhier SoCs"
1023 select BOARD_LATE_INIT
1024 select DM
1025 select DM_GPIO
1026 select DM_I2C
1027 select DM_MMC
1028 select DM_RESET
1029 select DM_SERIAL
1030 select DM_USB
1031 select OF_CONTROL
1032 select OF_LIBFDT
1033 select PINCTRL
1034 select SPL_BOARD_INIT if SPL
1035 select SPL_DM if SPL
1036 select SPL_LIBCOMMON_SUPPORT if SPL
1037 select SPL_LIBGENERIC_SUPPORT if SPL
1038 select SPL_OF_CONTROL if SPL
1039 select SPL_PINCTRL if SPL
1040 select SUPPORT_SPL
1041 imply FAT_WRITE
1042 help
1043 Support for UniPhier SoC family developed by Socionext Inc.
1044 (formerly, System LSI Business Division of Panasonic Corporation)
1045
1046 config STM32
1047 bool "Support STM32"
1048 select CPU_V7M
1049 select DM
1050 select DM_SERIAL
1051 select SYS_THUMB_BUILD
1052
1053 config ARCH_STI
1054 bool "Support STMicrolectronics SoCs"
1055 select CPU_V7
1056 select DM
1057 select DM_SERIAL
1058 select BLK
1059 select DM_MMC
1060 select DM_RESET
1061 help
1062 Support for STMicroelectronics STiH407/10 SoC family.
1063 This SoC is used on Linaro 96Board STiH410-B2260
1064
1065 config ARCH_ROCKCHIP
1066 bool "Support Rockchip SoCs"
1067 select OF_CONTROL
1068 select BLK
1069 select DM
1070 select SPL_DM if SPL
1071 select SYS_MALLOC_F
1072 select SYS_THUMB_BUILD if !ARM64
1073 select SPL_SYS_MALLOC_SIMPLE if SPL
1074 select DM_GPIO
1075 select DM_I2C
1076 select DM_MMC
1077 select DM_SERIAL
1078 select DM_SPI
1079 select DM_SPI_FLASH
1080 select DM_USB if USB
1081 select DM_PWM
1082 select DM_REGULATOR
1083 imply FAT_WRITE
1084
1085 config TARGET_THUNDERX_88XX
1086 bool "Support ThunderX 88xx"
1087 select ARM64
1088 select OF_CONTROL
1089 select SYS_CACHE_SHIFT_7
1090
1091 config ARCH_ASPEED
1092 bool "Support Aspeed SoCs"
1093 select OF_CONTROL
1094 select DM
1095
1096 endchoice
1097
1098 source "arch/arm/mach-aspeed/Kconfig"
1099
1100 source "arch/arm/mach-at91/Kconfig"
1101
1102 source "arch/arm/mach-bcm283x/Kconfig"
1103
1104 source "arch/arm/mach-davinci/Kconfig"
1105
1106 source "arch/arm/mach-exynos/Kconfig"
1107
1108 source "arch/arm/mach-highbank/Kconfig"
1109
1110 source "arch/arm/mach-integrator/Kconfig"
1111
1112 source "arch/arm/mach-keystone/Kconfig"
1113
1114 source "arch/arm/mach-kirkwood/Kconfig"
1115
1116 source "arch/arm/mach-mvebu/Kconfig"
1117
1118 source "arch/arm/cpu/armv7/ls102xa/Kconfig"
1119
1120 source "arch/arm/mach-imx/mx7ulp/Kconfig"
1121
1122 source "arch/arm/mach-imx/mx7/Kconfig"
1123
1124 source "arch/arm/mach-imx/mx6/Kconfig"
1125
1126 source "arch/arm/mach-imx/mx5/Kconfig"
1127
1128 source "arch/arm/mach-omap2/Kconfig"
1129
1130 source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
1131
1132 source "arch/arm/mach-orion5x/Kconfig"
1133
1134 source "arch/arm/mach-rmobile/Kconfig"
1135
1136 source "arch/arm/mach-meson/Kconfig"
1137
1138 source "arch/arm/mach-rockchip/Kconfig"
1139
1140 source "arch/arm/mach-s5pc1xx/Kconfig"
1141
1142 source "arch/arm/mach-snapdragon/Kconfig"
1143
1144 source "arch/arm/mach-socfpga/Kconfig"
1145
1146 source "arch/arm/mach-sti/Kconfig"
1147
1148 source "arch/arm/mach-stm32/Kconfig"
1149
1150 source "arch/arm/mach-sunxi/Kconfig"
1151
1152 source "arch/arm/mach-tegra/Kconfig"
1153
1154 source "arch/arm/mach-uniphier/Kconfig"
1155
1156 source "arch/arm/cpu/armv7/vf610/Kconfig"
1157
1158 source "arch/arm/mach-zynq/Kconfig"
1159
1160 source "arch/arm/cpu/armv7/Kconfig"
1161
1162 source "arch/arm/cpu/armv8/zynqmp/Kconfig"
1163
1164 source "arch/arm/cpu/armv8/Kconfig"
1165
1166 source "arch/arm/mach-imx/Kconfig"
1167
1168 source "board/aries/m28evk/Kconfig"
1169 source "board/bosch/shc/Kconfig"
1170 source "board/CarMediaLab/flea3/Kconfig"
1171 source "board/Marvell/aspenite/Kconfig"
1172 source "board/Marvell/gplugd/Kconfig"
1173 source "board/armadeus/apf27/Kconfig"
1174 source "board/armltd/vexpress/Kconfig"
1175 source "board/armltd/vexpress64/Kconfig"
1176 source "board/bluegiga/apx4devkit/Kconfig"
1177 source "board/broadcom/bcm23550_w1d/Kconfig"
1178 source "board/broadcom/bcm28155_ap/Kconfig"
1179 source "board/broadcom/bcmcygnus/Kconfig"
1180 source "board/broadcom/bcmnsp/Kconfig"
1181 source "board/broadcom/bcmns2/Kconfig"
1182 source "board/cavium/thunderx/Kconfig"
1183 source "board/cirrus/edb93xx/Kconfig"
1184 source "board/creative/xfi3/Kconfig"
1185 source "board/freescale/ls2080a/Kconfig"
1186 source "board/freescale/ls2080aqds/Kconfig"
1187 source "board/freescale/ls2080ardb/Kconfig"
1188 source "board/freescale/ls1021aqds/Kconfig"
1189 source "board/freescale/ls1043aqds/Kconfig"
1190 source "board/freescale/ls1021atwr/Kconfig"
1191 source "board/freescale/ls1021aiot/Kconfig"
1192 source "board/freescale/ls1046aqds/Kconfig"
1193 source "board/freescale/ls1043ardb/Kconfig"
1194 source "board/freescale/ls1046ardb/Kconfig"
1195 source "board/freescale/ls1012aqds/Kconfig"
1196 source "board/freescale/ls1012ardb/Kconfig"
1197 source "board/freescale/ls1012afrdm/Kconfig"
1198 source "board/freescale/mx23evk/Kconfig"
1199 source "board/freescale/mx25pdk/Kconfig"
1200 source "board/freescale/mx28evk/Kconfig"
1201 source "board/freescale/mx31ads/Kconfig"
1202 source "board/freescale/mx31pdk/Kconfig"
1203 source "board/freescale/mx35pdk/Kconfig"
1204 source "board/freescale/s32v234evb/Kconfig"
1205 source "board/gdsys/a38x/Kconfig"
1206 source "board/grinn/chiliboard/Kconfig"
1207 source "board/gumstix/pepper/Kconfig"
1208 source "board/h2200/Kconfig"
1209 source "board/hisilicon/hikey/Kconfig"
1210 source "board/hisilicon/poplar/Kconfig"
1211 source "board/imx31_phycore/Kconfig"
1212 source "board/isee/igep003x/Kconfig"
1213 source "board/olimex/mx23_olinuxino/Kconfig"
1214 source "board/phytec/pcm051/Kconfig"
1215 source "board/ppcag/bg0900/Kconfig"
1216 source "board/sandisk/sansa_fuze_plus/Kconfig"
1217 source "board/schulercontrol/sc_sps_1/Kconfig"
1218 source "board/silica/pengwyn/Kconfig"
1219 source "board/spear/spear300/Kconfig"
1220 source "board/spear/spear310/Kconfig"
1221 source "board/spear/spear320/Kconfig"
1222 source "board/spear/spear600/Kconfig"
1223 source "board/spear/x600/Kconfig"
1224 source "board/st/stv0991/Kconfig"
1225 source "board/syteco/zmx25/Kconfig"
1226 source "board/tcl/sl50/Kconfig"
1227 source "board/birdland/bav335x/Kconfig"
1228 source "board/timll/devkit3250/Kconfig"
1229 source "board/toradex/colibri_pxa270/Kconfig"
1230 source "board/technologic/ts4600/Kconfig"
1231 source "board/vscom/baltos/Kconfig"
1232 source "board/woodburn/Kconfig"
1233 source "board/work-microwave/work_92105/Kconfig"
1234 source "board/zipitz2/Kconfig"
1235
1236 source "arch/arm/Kconfig.debug"
1237
1238 endmenu
1239
1240 config SPL_LDSCRIPT
1241 default "arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" if TARGET_APX4DEVKIT || TARGET_BG0900 || TARGET_M28EVK || TARGET_MX23_OLINUXINO || TARGET_MX23EVK || TARGET_MX28EVK || TARGET_SANSA_FUZE_PLUS || TARGET_SC_SPS_1 || TARGET_TS4600 || TARGET_XFI3
1242 default "arch/arm/cpu/arm1136/u-boot-spl.lds" if CPU_ARM1136
1243 default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64
1244
1245