]> 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_APF27
345 bool "Support apf27"
346 select CPU_ARM926EJS
347 select SUPPORT_SPL
348
349 config TARGET_APX4DEVKIT
350 bool "Support apx4devkit"
351 select CPU_ARM926EJS
352 select SUPPORT_SPL
353
354 config TARGET_XFI3
355 bool "Support xfi3"
356 select CPU_ARM926EJS
357 select SUPPORT_SPL
358
359 config TARGET_M28EVK
360 bool "Support m28evk"
361 select CPU_ARM926EJS
362 select SUPPORT_SPL
363
364 config TARGET_MX23EVK
365 bool "Support mx23evk"
366 select CPU_ARM926EJS
367 select SUPPORT_SPL
368 select BOARD_EARLY_INIT_F
369
370 config TARGET_MX28EVK
371 bool "Support mx28evk"
372 select CPU_ARM926EJS
373 select SUPPORT_SPL
374 select BOARD_EARLY_INIT_F
375
376 config TARGET_MX23_OLINUXINO
377 bool "Support mx23_olinuxino"
378 select CPU_ARM926EJS
379 select SUPPORT_SPL
380 select BOARD_EARLY_INIT_F
381
382 config TARGET_BG0900
383 bool "Support bg0900"
384 select CPU_ARM926EJS
385 select SUPPORT_SPL
386
387 config TARGET_SANSA_FUZE_PLUS
388 bool "Support sansa_fuze_plus"
389 select CPU_ARM926EJS
390 select SUPPORT_SPL
391
392 config TARGET_SC_SPS_1
393 bool "Support sc_sps_1"
394 select CPU_ARM926EJS
395 select SUPPORT_SPL
396
397 config ORION5X
398 bool "Marvell Orion"
399 select CPU_ARM926EJS
400
401 config TARGET_SPEAR300
402 bool "Support spear300"
403 select CPU_ARM926EJS
404 select BOARD_EARLY_INIT_F
405 imply CMD_SAVES
406
407 config TARGET_SPEAR310
408 bool "Support spear310"
409 select CPU_ARM926EJS
410 select BOARD_EARLY_INIT_F
411 imply CMD_SAVES
412
413 config TARGET_SPEAR320
414 bool "Support spear320"
415 select CPU_ARM926EJS
416 select BOARD_EARLY_INIT_F
417 imply CMD_SAVES
418
419 config TARGET_SPEAR600
420 bool "Support spear600"
421 select CPU_ARM926EJS
422 select BOARD_EARLY_INIT_F
423 imply CMD_SAVES
424
425 config TARGET_STV0991
426 bool "Support stv0991"
427 select CPU_V7
428 select DM
429 select DM_SERIAL
430 select DM_SPI
431 select DM_SPI_FLASH
432 select SPI_FLASH
433
434 config TARGET_X600
435 bool "Support x600"
436 select BOARD_LATE_INIT
437 select CPU_ARM926EJS
438 select SUPPORT_SPL
439
440 config TARGET_IMX31_PHYCORE
441 bool "Support imx31_phycore_eet"
442 select CPU_ARM1136
443 select BOARD_EARLY_INIT_F
444
445 config TARGET_IMX31_PHYCORE_EET
446 bool "Support imx31_phycore_eet"
447 select BOARD_LATE_INIT
448 select CPU_ARM1136
449 select BOARD_EARLY_INIT_F
450
451 config TARGET_MX31ADS
452 bool "Support mx31ads"
453 select CPU_ARM1136
454 select BOARD_EARLY_INIT_F
455
456 config TARGET_MX31PDK
457 bool "Support mx31pdk"
458 select BOARD_LATE_INIT
459 select CPU_ARM1136
460 select SUPPORT_SPL
461 select BOARD_EARLY_INIT_F
462
463 config TARGET_WOODBURN
464 bool "Support woodburn"
465 select CPU_ARM1136
466
467 config TARGET_WOODBURN_SD
468 bool "Support woodburn_sd"
469 select CPU_ARM1136
470 select SUPPORT_SPL
471
472 config TARGET_FLEA3
473 bool "Support flea3"
474 select CPU_ARM1136
475
476 config TARGET_MX35PDK
477 bool "Support mx35pdk"
478 select BOARD_LATE_INIT
479 select CPU_ARM1136
480
481 config ARCH_BCM283X
482 bool "Broadcom BCM283X family"
483 select DM
484 select DM_SERIAL
485 select DM_GPIO
486 select OF_CONTROL
487 imply FAT_WRITE
488
489 config TARGET_VEXPRESS_CA15_TC2
490 bool "Support vexpress_ca15_tc2"
491 select CPU_V7
492 select CPU_V7_HAS_NONSEC
493 select CPU_V7_HAS_VIRT
494
495 config TARGET_VEXPRESS_CA5X2
496 bool "Support vexpress_ca5x2"
497 select CPU_V7
498
499 config TARGET_VEXPRESS_CA9X4
500 bool "Support vexpress_ca9x4"
501 select CPU_V7
502
503 config TARGET_BCM23550_W1D
504 bool "Support bcm23550_w1d"
505 select CPU_V7
506 imply CRC32_VERIFY
507 imply FAT_WRITE
508
509 config TARGET_BCM28155_AP
510 bool "Support bcm28155_ap"
511 select CPU_V7
512 imply CRC32_VERIFY
513 imply FAT_WRITE
514
515 config TARGET_BCMCYGNUS
516 bool "Support bcmcygnus"
517 select CPU_V7
518 imply CRC32_VERIFY
519 imply CMD_HASH
520 imply FAT_WRITE
521 imply HASH_VERIFY
522 imply NETDEVICES
523 imply BCM_SF2_ETH
524 imply BCM_SF2_ETH_GMAC
525
526 config TARGET_BCMNSP
527 bool "Support bcmnsp"
528 select CPU_V7
529
530 config TARGET_BCMNS2
531 bool "Support Broadcom Northstar2"
532 select ARM64
533 help
534 Support for Broadcom Northstar 2 SoCs. NS2 is a quad-core 64-bit
535 ARMv8 Cortex-A57 processors targeting a broad range of networking
536 applications
537
538 config ARCH_EXYNOS
539 bool "Samsung EXYNOS"
540 select DM
541 select DM_I2C
542 select DM_SPI_FLASH
543 select DM_SERIAL
544 select DM_SPI
545 select DM_GPIO
546 select DM_KEYBOARD
547 imply FAT_WRITE
548
549 config ARCH_S5PC1XX
550 bool "Samsung S5PC1XX"
551 select CPU_V7
552 select DM
553 select DM_SERIAL
554 select DM_GPIO
555 select DM_I2C
556
557 config ARCH_HIGHBANK
558 bool "Calxeda Highbank"
559 select CPU_V7
560
561 config ARCH_INTEGRATOR
562 bool "ARM Ltd. Integrator family"
563 select DM
564 select DM_SERIAL
565
566 config ARCH_KEYSTONE
567 bool "TI Keystone"
568 select CPU_V7
569 select SUPPORT_SPL
570 select SYS_THUMB_BUILD
571 select CMD_POWEROFF
572 imply CMD_MTDPARTS
573 imply FIT
574 imply CMD_SAVES
575
576 config ARCH_OMAP2PLUS
577 bool "TI OMAP2+"
578 select CPU_V7
579 select SPL_BOARD_INIT if SPL
580 select SPL_STACK_R if SPL
581 select SUPPORT_SPL
582 imply FIT
583
584 config ARCH_MESON
585 bool "Amlogic Meson"
586 help
587 Support for the Meson SoC family developed by Amlogic Inc.,
588 targeted at media players and tablet computers. We currently
589 support the S905 (GXBaby) 64-bit SoC.
590
591 config ARCH_MX25
592 bool "NXP MX25"
593 select CPU_ARM926EJS
594
595 config ARCH_MX7ULP
596 bool "NXP MX7ULP"
597 select CPU_V7
598 select ROM_UNIFIED_SECTIONS
599
600 config ARCH_MX7
601 bool "Freescale MX7"
602 select CPU_V7
603 select SYS_FSL_HAS_SEC if SECURE_BOOT
604 select SYS_FSL_SEC_COMPAT_4
605 select SYS_FSL_SEC_LE
606 select BOARD_EARLY_INIT_F
607 select ARCH_MISC_INIT
608
609 config ARCH_MX6
610 bool "Freescale MX6"
611 select CPU_V7
612 select SYS_FSL_HAS_SEC if SECURE_BOOT
613 select SYS_FSL_SEC_COMPAT_4
614 select SYS_FSL_SEC_LE
615 select SYS_THUMB_BUILD if SPL
616
617 if ARCH_MX6
618 config SPL_LDSCRIPT
619 default "arch/arm/mach-omap2/u-boot-spl.lds"
620 endif
621
622 config ARCH_MX5
623 bool "Freescale MX5"
624 select CPU_V7
625 select BOARD_EARLY_INIT_F
626
627 config ARCH_QEMU
628 bool "QEMU Virtual Platform"
629 select CPU_V7
630 select ARCH_SUPPORT_PSCI
631 select DM
632 select DM_SERIAL
633 select OF_CONTROL
634
635 config ARCH_RMOBILE
636 bool "Renesas ARM SoCs"
637 select DM
638 select DM_SERIAL
639 select BOARD_EARLY_INIT_F
640 imply FAT_WRITE
641 imply SYS_THUMB_BUILD
642
643 config TARGET_S32V234EVB
644 bool "Support s32v234evb"
645 select ARM64
646 select SYS_FSL_ERRATUM_ESDHC111
647
648 config ARCH_SNAPDRAGON
649 bool "Qualcomm Snapdragon SoCs"
650 select ARM64
651 select DM
652 select DM_GPIO
653 select DM_SERIAL
654 select SPMI
655 select OF_CONTROL
656 select OF_SEPARATE
657
658 config ARCH_SOCFPGA
659 bool "Altera SOCFPGA family"
660 select CPU_V7
661 select SUPPORT_SPL
662 select OF_CONTROL
663 select SPL_OF_CONTROL
664 select DM
665 select DM_SPI_FLASH
666 select DM_SPI
667 select ENABLE_ARM_SOC_BOOT0_HOOK
668 select ARCH_EARLY_INIT_R
669 select ARCH_MISC_INIT
670 select SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
671 select SYS_THUMB_BUILD
672 imply CMD_MTDPARTS
673 imply CRC32_VERIFY
674 imply FAT_WRITE
675
676 config ARCH_SUNXI
677 bool "Support sunxi (Allwinner) SoCs"
678 select CMD_GPIO
679 select CMD_MMC if MMC
680 select CMD_USB if DISTRO_DEFAULTS
681 select DM
682 select DM_ETH
683 select DM_GPIO
684 select DM_KEYBOARD
685 select DM_SERIAL
686 select DM_USB if DISTRO_DEFAULTS
687 select OF_BOARD_SETUP
688 select OF_CONTROL
689 select OF_SEPARATE
690 select SPL_STACK_R if SPL
691 select SPL_SYS_MALLOC_SIMPLE if SPL
692 select SYS_NS16550
693 select SPL_SYS_THUMB_BUILD if !ARM64
694 select SYS_THUMB_BUILD if !ARM64
695 select USB if DISTRO_DEFAULTS
696 select USB_STORAGE if DISTRO_DEFAULTS
697 select USB_KEYBOARD if DISTRO_DEFAULTS
698 select USE_TINY_PRINTF
699 imply CMD_GPT
700 imply FAT_WRITE
701 imply PRE_CONSOLE_BUFFER
702 imply SPL_GPIO_SUPPORT
703 imply SPL_LIBCOMMON_SUPPORT
704 imply SPL_LIBDISK_SUPPORT
705 imply SPL_LIBGENERIC_SUPPORT
706 imply SPL_MMC_SUPPORT if MMC
707 imply SPL_POWER_SUPPORT
708 imply SPL_SERIAL_SUPPORT
709 imply USB_GADGET
710
711 config TARGET_TS4600
712 bool "Support TS4600"
713 select CPU_ARM926EJS
714 select SUPPORT_SPL
715
716 config ARCH_VF610
717 bool "Freescale Vybrid"
718 select CPU_V7
719 select SYS_FSL_ERRATUM_ESDHC111
720 imply CMD_MTDPARTS
721 imply NAND
722
723 config ARCH_ZYNQ
724 bool "Xilinx Zynq Platform"
725 select BOARD_LATE_INIT
726 select CPU_V7
727 select SUPPORT_SPL
728 select OF_CONTROL
729 select SPL_BOARD_INIT if SPL
730 select SPL_OF_CONTROL if SPL
731 select DM
732 select DM_ETH
733 select DM_GPIO
734 select SPL_DM if SPL
735 select DM_MMC
736 select DM_SPI
737 select DM_SERIAL
738 select DM_SPI_FLASH
739 select SPL_SEPARATE_BSS if SPL
740 select DM_USB if USB
741 select BLK
742 select CLK
743 select SPL_CLK
744 select CLK_ZYNQ
745 imply CMD_CLK
746 imply FAT_WRITE
747 imply CMD_SPL
748
749 config ARCH_ZYNQMP
750 bool "Support Xilinx ZynqMP Platform"
751 select ARM64
752 select BOARD_LATE_INIT
753 select DM
754 select OF_CONTROL
755 select DM_SERIAL
756 select SUPPORT_SPL
757 select CLK
758 select SPL_BOARD_INIT if SPL
759 select SPL_CLK
760 select DM_USB if USB
761 imply FAT_WRITE
762
763 config TEGRA
764 bool "NVIDIA Tegra"
765 imply FAT_WRITE
766
767 config TARGET_VEXPRESS64_AEMV8A
768 bool "Support vexpress_aemv8a"
769 select ARM64
770
771 config TARGET_VEXPRESS64_BASE_FVP
772 bool "Support Versatile Express ARMv8a FVP BASE model"
773 select ARM64
774 select SEMIHOSTING
775
776 config TARGET_VEXPRESS64_BASE_FVP_DRAM
777 bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
778 select ARM64
779 help
780 This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
781 the default config to allow the user to load the images directly into
782 DRAM using model parameters rather than by using semi-hosting to load
783 the files from the host filesystem.
784
785 config TARGET_VEXPRESS64_JUNO
786 bool "Support Versatile Express Juno Development Platform"
787 select ARM64
788
789 config TARGET_LS2080A_EMU
790 bool "Support ls2080a_emu"
791 select ARCH_LS2080A
792 select ARM64
793 select ARMV8_MULTIENTRY
794 select ARCH_MISC_INIT
795 help
796 Support for Freescale LS2080A_EMU platform
797 The LS2080A Development System (EMULATOR) is a pre silicon
798 development platform that supports the QorIQ LS2080A
799 Layerscape Architecture processor.
800
801 config TARGET_LS2080A_SIMU
802 bool "Support ls2080a_simu"
803 select ARCH_LS2080A
804 select ARM64
805 select ARMV8_MULTIENTRY
806 select ARCH_MISC_INIT
807 help
808 Support for Freescale LS2080A_SIMU platform
809 The LS2080A Development System (QDS) is a pre silicon
810 development platform that supports the QorIQ LS2080A
811 Layerscape Architecture processor.
812
813 config TARGET_LS1088AQDS
814 bool "Support ls1088aqds"
815 select ARCH_LS1088A
816 select ARM64
817 select ARMV8_MULTIENTRY
818 select ARCH_MISC_INIT
819 select BOARD_LATE_INIT
820 select SUPPORT_SPL
821 help
822 Support for NXP LS1088AQDS platform
823 The LS1088A Development System (QDS) is a high-performance
824 development platform that supports the QorIQ LS1088A
825 Layerscape Architecture processor.
826
827 config TARGET_LS2080AQDS
828 bool "Support ls2080aqds"
829 select ARCH_LS2080A
830 select ARM64
831 select ARMV8_MULTIENTRY
832 select BOARD_LATE_INIT
833 select SUPPORT_SPL
834 select ARCH_MISC_INIT
835 imply SCSI
836 help
837 Support for Freescale LS2080AQDS platform
838 The LS2080A Development System (QDS) is a high-performance
839 development platform that supports the QorIQ LS2080A
840 Layerscape Architecture processor.
841
842 config TARGET_LS2080ARDB
843 bool "Support ls2080ardb"
844 select ARCH_LS2080A
845 select ARM64
846 select ARMV8_MULTIENTRY
847 select BOARD_LATE_INIT
848 select SUPPORT_SPL
849 select ARCH_MISC_INIT
850 imply SCSI
851 help
852 Support for Freescale LS2080ARDB platform.
853 The LS2080A Reference design board (RDB) is a high-performance
854 development platform that supports the QorIQ LS2080A
855 Layerscape Architecture processor.
856
857 config TARGET_LS2081ARDB
858 bool "Support ls2081ardb"
859 select ARCH_LS2080A
860 select ARM64
861 select ARMV8_MULTIENTRY
862 select BOARD_LATE_INIT
863 select SUPPORT_SPL
864 select ARCH_MISC_INIT
865 help
866 Support for Freescale LS2081ARDB platform.
867 The LS2081A Reference design board (RDB) is a high-performance
868 development platform that supports the QorIQ LS2081A/LS2041A
869 Layerscape Architecture processor.
870
871 config TARGET_HIKEY
872 bool "Support HiKey 96boards Consumer Edition Platform"
873 select ARM64
874 select DM
875 select DM_GPIO
876 select DM_SERIAL
877 select OF_CONTROL
878 help
879 Support for HiKey 96boards platform. It features a HI6220
880 SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
881
882 config TARGET_POPLAR
883 bool "Support Poplar 96boards Enterprise Edition Platform"
884 select ARM64
885 select DM
886 select OF_CONTROL
887 select DM_SERIAL
888 select DM_USB
889 help
890 Support for Poplar 96boards EE platform. It features a HI3798cv200
891 SoC, with 4xA53 CPU, 1GB RAM and the high performance Mali T720 GPU
892 making it capable of running any commercial set-top solution based on
893 Linux or Android.
894
895 config TARGET_LS1012AQDS
896 bool "Support ls1012aqds"
897 select ARCH_LS1012A
898 select ARM64
899 select BOARD_LATE_INIT
900 help
901 Support for Freescale LS1012AQDS platform.
902 The LS1012A Development System (QDS) is a high-performance
903 development platform that supports the QorIQ LS1012A
904 Layerscape Architecture processor.
905
906 config TARGET_LS1012ARDB
907 bool "Support ls1012ardb"
908 select ARCH_LS1012A
909 select ARM64
910 select BOARD_LATE_INIT
911 imply SCSI
912 help
913 Support for Freescale LS1012ARDB platform.
914 The LS1012A Reference design board (RDB) is a high-performance
915 development platform that supports the QorIQ LS1012A
916 Layerscape Architecture processor.
917
918 config TARGET_LS1012AFRDM
919 bool "Support ls1012afrdm"
920 select ARCH_LS1012A
921 select ARM64
922 help
923 Support for Freescale LS1012AFRDM platform.
924 The LS1012A Freedom board (FRDM) is a high-performance
925 development platform that supports the QorIQ LS1012A
926 Layerscape Architecture processor.
927
928 config TARGET_LS1088ARDB
929 bool "Support ls1088ardb"
930 select ARCH_LS1088A
931 select ARM64
932 select ARMV8_MULTIENTRY
933 select ARCH_MISC_INIT
934 select BOARD_LATE_INIT
935 select SUPPORT_SPL
936 help
937 Support for NXP LS1088ARDB platform.
938 The LS1088A Reference design board (RDB) is a high-performance
939 development platform that supports the QorIQ LS1088A
940 Layerscape Architecture processor.
941
942 config TARGET_LS1021AQDS
943 bool "Support ls1021aqds"
944 select BOARD_LATE_INIT
945 select CPU_V7
946 select CPU_V7_HAS_NONSEC
947 select CPU_V7_HAS_VIRT
948 select SUPPORT_SPL
949 select ARCH_LS1021A
950 select ARCH_SUPPORT_PSCI
951 select LS1_DEEP_SLEEP
952 select SYS_FSL_DDR
953 select BOARD_EARLY_INIT_F
954 imply SCSI
955
956 config TARGET_LS1021ATWR
957 bool "Support ls1021atwr"
958 select BOARD_LATE_INIT
959 select CPU_V7
960 select CPU_V7_HAS_NONSEC
961 select CPU_V7_HAS_VIRT
962 select SUPPORT_SPL
963 select ARCH_LS1021A
964 select ARCH_SUPPORT_PSCI
965 select LS1_DEEP_SLEEP
966 select BOARD_EARLY_INIT_F
967 imply SCSI
968
969 config TARGET_LS1021AIOT
970 bool "Support ls1021aiot"
971 select BOARD_LATE_INIT
972 select CPU_V7
973 select CPU_V7_HAS_NONSEC
974 select CPU_V7_HAS_VIRT
975 select SUPPORT_SPL
976 select ARCH_LS1021A
977 select ARCH_SUPPORT_PSCI
978 imply SCSI
979 help
980 Support for Freescale LS1021AIOT platform.
981 The LS1021A Freescale board (IOT) is a high-performance
982 development platform that supports the QorIQ LS1021A
983 Layerscape Architecture processor.
984
985 config TARGET_LS1043AQDS
986 bool "Support ls1043aqds"
987 select ARCH_LS1043A
988 select ARM64
989 select ARMV8_MULTIENTRY
990 select BOARD_LATE_INIT
991 select SUPPORT_SPL
992 select BOARD_EARLY_INIT_F
993 imply SCSI
994 help
995 Support for Freescale LS1043AQDS platform.
996
997 config TARGET_LS1043ARDB
998 bool "Support ls1043ardb"
999 select ARCH_LS1043A
1000 select ARM64
1001 select ARMV8_MULTIENTRY
1002 select BOARD_LATE_INIT
1003 select SUPPORT_SPL
1004 select BOARD_EARLY_INIT_F
1005 imply SCSI
1006 help
1007 Support for Freescale LS1043ARDB platform.
1008
1009 config TARGET_LS1046AQDS
1010 bool "Support ls1046aqds"
1011 select ARCH_LS1046A
1012 select ARM64
1013 select ARMV8_MULTIENTRY
1014 select BOARD_LATE_INIT
1015 select SUPPORT_SPL
1016 select DM_SPI_FLASH if DM_SPI
1017 select BOARD_EARLY_INIT_F
1018 imply SCSI
1019 help
1020 Support for Freescale LS1046AQDS platform.
1021 The LS1046A Development System (QDS) is a high-performance
1022 development platform that supports the QorIQ LS1046A
1023 Layerscape Architecture processor.
1024
1025 config TARGET_LS1046ARDB
1026 bool "Support ls1046ardb"
1027 select ARCH_LS1046A
1028 select ARM64
1029 select ARMV8_MULTIENTRY
1030 select BOARD_LATE_INIT
1031 select SUPPORT_SPL
1032 select DM_SPI_FLASH if DM_SPI
1033 select POWER_MC34VR500
1034 select BOARD_EARLY_INIT_F
1035 imply SCSI
1036 help
1037 Support for Freescale LS1046ARDB platform.
1038 The LS1046A Reference Design Board (RDB) is a high-performance
1039 development platform that supports the QorIQ LS1046A
1040 Layerscape Architecture processor.
1041
1042 config TARGET_H2200
1043 bool "Support h2200"
1044 select CPU_PXA
1045
1046 config TARGET_ZIPITZ2
1047 bool "Support zipitz2"
1048 select CPU_PXA
1049
1050 config TARGET_COLIBRI_PXA270
1051 bool "Support colibri_pxa270"
1052 select CPU_PXA
1053
1054 config ARCH_UNIPHIER
1055 bool "Socionext UniPhier SoCs"
1056 select BOARD_LATE_INIT
1057 select DM
1058 select DM_GPIO
1059 select DM_I2C
1060 select DM_MMC
1061 select DM_RESET
1062 select DM_SERIAL
1063 select DM_USB
1064 select OF_CONTROL
1065 select OF_LIBFDT
1066 select PINCTRL
1067 select SPL_BOARD_INIT if SPL
1068 select SPL_DM if SPL
1069 select SPL_LIBCOMMON_SUPPORT if SPL
1070 select SPL_LIBGENERIC_SUPPORT if SPL
1071 select SPL_OF_CONTROL if SPL
1072 select SPL_PINCTRL if SPL
1073 select SUPPORT_SPL
1074 imply FAT_WRITE
1075 help
1076 Support for UniPhier SoC family developed by Socionext Inc.
1077 (formerly, System LSI Business Division of Panasonic Corporation)
1078
1079 config STM32
1080 bool "Support STM32"
1081 select CPU_V7M
1082 select DM
1083 select DM_SERIAL
1084 select SYS_THUMB_BUILD
1085
1086 config ARCH_STI
1087 bool "Support STMicrolectronics SoCs"
1088 select CPU_V7
1089 select DM
1090 select DM_SERIAL
1091 select BLK
1092 select DM_MMC
1093 select DM_RESET
1094 help
1095 Support for STMicroelectronics STiH407/10 SoC family.
1096 This SoC is used on Linaro 96Board STiH410-B2260
1097
1098 config ARCH_ROCKCHIP
1099 bool "Support Rockchip SoCs"
1100 select OF_CONTROL
1101 select BLK
1102 select DM
1103 select SPL_DM if SPL
1104 select SYS_MALLOC_F
1105 select SYS_THUMB_BUILD if !ARM64
1106 select SPL_SYS_MALLOC_SIMPLE if SPL
1107 select DM_GPIO
1108 select DM_I2C
1109 select DM_MMC
1110 select DM_SERIAL
1111 select DM_SPI
1112 select DM_SPI_FLASH
1113 select DM_USB if USB
1114 select DM_PWM
1115 select DM_REGULATOR
1116 imply CMD_FASTBOOT
1117 imply FASTBOOT
1118 imply FAT_WRITE
1119 imply USB_FUNCTION_FASTBOOT
1120 imply SPL_SYSRESET
1121 imply TPL_SYSRESET
1122 imply ADC
1123 imply SARADC_ROCKCHIP
1124
1125 config TARGET_THUNDERX_88XX
1126 bool "Support ThunderX 88xx"
1127 select ARM64
1128 select OF_CONTROL
1129 select SYS_CACHE_SHIFT_7
1130
1131 config ARCH_ASPEED
1132 bool "Support Aspeed SoCs"
1133 select OF_CONTROL
1134 select DM
1135
1136 endchoice
1137
1138 source "arch/arm/mach-aspeed/Kconfig"
1139
1140 source "arch/arm/mach-at91/Kconfig"
1141
1142 source "arch/arm/mach-bcm283x/Kconfig"
1143
1144 source "arch/arm/mach-davinci/Kconfig"
1145
1146 source "arch/arm/mach-exynos/Kconfig"
1147
1148 source "arch/arm/mach-highbank/Kconfig"
1149
1150 source "arch/arm/mach-integrator/Kconfig"
1151
1152 source "arch/arm/mach-keystone/Kconfig"
1153
1154 source "arch/arm/mach-kirkwood/Kconfig"
1155
1156 source "arch/arm/mach-mvebu/Kconfig"
1157
1158 source "arch/arm/cpu/armv7/ls102xa/Kconfig"
1159
1160 source "arch/arm/mach-imx/mx2/Kconfig"
1161
1162 source "arch/arm/mach-imx/mx7ulp/Kconfig"
1163
1164 source "arch/arm/mach-imx/mx7/Kconfig"
1165
1166 source "arch/arm/mach-imx/mx6/Kconfig"
1167
1168 source "arch/arm/mach-imx/mx5/Kconfig"
1169
1170 source "arch/arm/mach-omap2/Kconfig"
1171
1172 source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
1173
1174 source "arch/arm/mach-orion5x/Kconfig"
1175
1176 source "arch/arm/mach-rmobile/Kconfig"
1177
1178 source "arch/arm/mach-meson/Kconfig"
1179
1180 source "arch/arm/mach-qemu/Kconfig"
1181
1182 source "arch/arm/mach-rockchip/Kconfig"
1183
1184 source "arch/arm/mach-s5pc1xx/Kconfig"
1185
1186 source "arch/arm/mach-snapdragon/Kconfig"
1187
1188 source "arch/arm/mach-socfpga/Kconfig"
1189
1190 source "arch/arm/mach-sti/Kconfig"
1191
1192 source "arch/arm/mach-stm32/Kconfig"
1193
1194 source "arch/arm/mach-sunxi/Kconfig"
1195
1196 source "arch/arm/mach-tegra/Kconfig"
1197
1198 source "arch/arm/mach-uniphier/Kconfig"
1199
1200 source "arch/arm/cpu/armv7/vf610/Kconfig"
1201
1202 source "arch/arm/mach-zynq/Kconfig"
1203
1204 source "arch/arm/cpu/armv7/Kconfig"
1205
1206 source "arch/arm/cpu/armv8/zynqmp/Kconfig"
1207
1208 source "arch/arm/cpu/armv8/Kconfig"
1209
1210 source "arch/arm/mach-imx/Kconfig"
1211
1212 source "board/aries/m28evk/Kconfig"
1213 source "board/bosch/shc/Kconfig"
1214 source "board/CarMediaLab/flea3/Kconfig"
1215 source "board/Marvell/aspenite/Kconfig"
1216 source "board/Marvell/gplugd/Kconfig"
1217 source "board/armadeus/apf27/Kconfig"
1218 source "board/armltd/vexpress/Kconfig"
1219 source "board/armltd/vexpress64/Kconfig"
1220 source "board/bluegiga/apx4devkit/Kconfig"
1221 source "board/broadcom/bcm23550_w1d/Kconfig"
1222 source "board/broadcom/bcm28155_ap/Kconfig"
1223 source "board/broadcom/bcmcygnus/Kconfig"
1224 source "board/broadcom/bcmnsp/Kconfig"
1225 source "board/broadcom/bcmns2/Kconfig"
1226 source "board/cavium/thunderx/Kconfig"
1227 source "board/cirrus/edb93xx/Kconfig"
1228 source "board/creative/xfi3/Kconfig"
1229 source "board/freescale/ls2080a/Kconfig"
1230 source "board/freescale/ls2080aqds/Kconfig"
1231 source "board/freescale/ls2080ardb/Kconfig"
1232 source "board/freescale/ls1088a/Kconfig"
1233 source "board/freescale/ls1021aqds/Kconfig"
1234 source "board/freescale/ls1043aqds/Kconfig"
1235 source "board/freescale/ls1021atwr/Kconfig"
1236 source "board/freescale/ls1021aiot/Kconfig"
1237 source "board/freescale/ls1046aqds/Kconfig"
1238 source "board/freescale/ls1043ardb/Kconfig"
1239 source "board/freescale/ls1046ardb/Kconfig"
1240 source "board/freescale/ls1012aqds/Kconfig"
1241 source "board/freescale/ls1012ardb/Kconfig"
1242 source "board/freescale/ls1012afrdm/Kconfig"
1243 source "board/freescale/mx23evk/Kconfig"
1244 source "board/freescale/mx28evk/Kconfig"
1245 source "board/freescale/mx31ads/Kconfig"
1246 source "board/freescale/mx31pdk/Kconfig"
1247 source "board/freescale/mx35pdk/Kconfig"
1248 source "board/freescale/s32v234evb/Kconfig"
1249 source "board/gdsys/a38x/Kconfig"
1250 source "board/grinn/chiliboard/Kconfig"
1251 source "board/gumstix/pepper/Kconfig"
1252 source "board/h2200/Kconfig"
1253 source "board/hisilicon/hikey/Kconfig"
1254 source "board/hisilicon/poplar/Kconfig"
1255 source "board/imx31_phycore/Kconfig"
1256 source "board/isee/igep003x/Kconfig"
1257 source "board/olimex/mx23_olinuxino/Kconfig"
1258 source "board/phytec/pcm051/Kconfig"
1259 source "board/ppcag/bg0900/Kconfig"
1260 source "board/sandisk/sansa_fuze_plus/Kconfig"
1261 source "board/schulercontrol/sc_sps_1/Kconfig"
1262 source "board/silica/pengwyn/Kconfig"
1263 source "board/spear/spear300/Kconfig"
1264 source "board/spear/spear310/Kconfig"
1265 source "board/spear/spear320/Kconfig"
1266 source "board/spear/spear600/Kconfig"
1267 source "board/spear/x600/Kconfig"
1268 source "board/st/stv0991/Kconfig"
1269 source "board/tcl/sl50/Kconfig"
1270 source "board/birdland/bav335x/Kconfig"
1271 source "board/timll/devkit3250/Kconfig"
1272 source "board/toradex/colibri_pxa270/Kconfig"
1273 source "board/technologic/ts4600/Kconfig"
1274 source "board/vscom/baltos/Kconfig"
1275 source "board/woodburn/Kconfig"
1276 source "board/work-microwave/work_92105/Kconfig"
1277 source "board/zipitz2/Kconfig"
1278
1279 source "arch/arm/Kconfig.debug"
1280
1281 endmenu
1282
1283 config SPL_LDSCRIPT
1284 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
1285 default "arch/arm/cpu/arm1136/u-boot-spl.lds" if CPU_ARM1136
1286 default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64
1287
1288