]> git.ipfire.org Git - people/ms/u-boot.git/blob - arch/arm/Kconfig
da9324b43caeee237e2120191b37ab15aced7132
[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_MMC_OPS
732 select DM_SPI
733 select DM_SERIAL
734 select DM_SPI_FLASH
735 select SPL_SEPARATE_BSS if SPL
736 select DM_USB if USB
737 select BLK
738 select CLK
739 select SPL_CLK
740 select CLK_ZYNQ
741 imply CMD_CLK
742 imply FAT_WRITE
743 imply CMD_SPL
744
745 config ARCH_ZYNQMP
746 bool "Support Xilinx ZynqMP Platform"
747 select ARM64
748 select BOARD_LATE_INIT
749 select DM
750 select OF_CONTROL
751 select DM_SERIAL
752 select SUPPORT_SPL
753 select CLK
754 select SPL_BOARD_INIT if SPL
755 select SPL_CLK
756 select DM_USB if USB
757 imply FAT_WRITE
758
759 config TEGRA
760 bool "NVIDIA Tegra"
761 imply FAT_WRITE
762
763 config TARGET_VEXPRESS64_AEMV8A
764 bool "Support vexpress_aemv8a"
765 select ARM64
766
767 config TARGET_VEXPRESS64_BASE_FVP
768 bool "Support Versatile Express ARMv8a FVP BASE model"
769 select ARM64
770 select SEMIHOSTING
771
772 config TARGET_VEXPRESS64_BASE_FVP_DRAM
773 bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
774 select ARM64
775 help
776 This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
777 the default config to allow the user to load the images directly into
778 DRAM using model parameters rather than by using semi-hosting to load
779 the files from the host filesystem.
780
781 config TARGET_VEXPRESS64_JUNO
782 bool "Support Versatile Express Juno Development Platform"
783 select ARM64
784
785 config TARGET_LS2080A_EMU
786 bool "Support ls2080a_emu"
787 select ARCH_LS2080A
788 select ARM64
789 select ARMV8_MULTIENTRY
790 select ARCH_MISC_INIT
791 help
792 Support for Freescale LS2080A_EMU platform
793 The LS2080A Development System (EMULATOR) is a pre silicon
794 development platform that supports the QorIQ LS2080A
795 Layerscape Architecture processor.
796
797 config TARGET_LS2080A_SIMU
798 bool "Support ls2080a_simu"
799 select ARCH_LS2080A
800 select ARM64
801 select ARMV8_MULTIENTRY
802 select ARCH_MISC_INIT
803 help
804 Support for Freescale LS2080A_SIMU platform
805 The LS2080A Development System (QDS) is a pre silicon
806 development platform that supports the QorIQ LS2080A
807 Layerscape Architecture processor.
808
809 config TARGET_LS2080AQDS
810 bool "Support ls2080aqds"
811 select ARCH_LS2080A
812 select ARM64
813 select ARMV8_MULTIENTRY
814 select BOARD_LATE_INIT
815 select SUPPORT_SPL
816 select ARCH_MISC_INIT
817 imply SCSI
818 help
819 Support for Freescale LS2080AQDS platform
820 The LS2080A Development System (QDS) is a high-performance
821 development platform that supports the QorIQ LS2080A
822 Layerscape Architecture processor.
823
824 config TARGET_LS2080ARDB
825 bool "Support ls2080ardb"
826 select ARCH_LS2080A
827 select ARM64
828 select ARMV8_MULTIENTRY
829 select BOARD_LATE_INIT
830 select SUPPORT_SPL
831 select ARCH_MISC_INIT
832 imply SCSI
833 help
834 Support for Freescale LS2080ARDB platform.
835 The LS2080A Reference design board (RDB) is a high-performance
836 development platform that supports the QorIQ LS2080A
837 Layerscape Architecture processor.
838
839 config TARGET_LS2081ARDB
840 bool "Support ls2081ardb"
841 select ARCH_LS2080A
842 select ARM64
843 select ARMV8_MULTIENTRY
844 select BOARD_LATE_INIT
845 select SUPPORT_SPL
846 select ARCH_MISC_INIT
847 help
848 Support for Freescale LS2081ARDB platform.
849 The LS2081A Reference design board (RDB) is a high-performance
850 development platform that supports the QorIQ LS2081A/LS2041A
851 Layerscape Architecture processor.
852
853 config TARGET_HIKEY
854 bool "Support HiKey 96boards Consumer Edition Platform"
855 select ARM64
856 select DM
857 select DM_GPIO
858 select DM_SERIAL
859 select OF_CONTROL
860 help
861 Support for HiKey 96boards platform. It features a HI6220
862 SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
863
864 config TARGET_POPLAR
865 bool "Support Poplar 96boards Enterprise Edition Platform"
866 select ARM64
867 select DM
868 select OF_CONTROL
869 select DM_SERIAL
870 select DM_USB
871 help
872 Support for Poplar 96boards EE platform. It features a HI3798cv200
873 SoC, with 4xA53 CPU, 1GB RAM and the high performance Mali T720 GPU
874 making it capable of running any commercial set-top solution based on
875 Linux or Android.
876
877 config TARGET_LS1012AQDS
878 bool "Support ls1012aqds"
879 select ARCH_LS1012A
880 select ARM64
881 select BOARD_LATE_INIT
882 help
883 Support for Freescale LS1012AQDS platform.
884 The LS1012A Development System (QDS) is a high-performance
885 development platform that supports the QorIQ LS1012A
886 Layerscape Architecture processor.
887
888 config TARGET_LS1012ARDB
889 bool "Support ls1012ardb"
890 select ARCH_LS1012A
891 select ARM64
892 select BOARD_LATE_INIT
893 imply SCSI
894 help
895 Support for Freescale LS1012ARDB platform.
896 The LS1012A Reference design board (RDB) is a high-performance
897 development platform that supports the QorIQ LS1012A
898 Layerscape Architecture processor.
899
900 config TARGET_LS1012AFRDM
901 bool "Support ls1012afrdm"
902 select ARCH_LS1012A
903 select ARM64
904 help
905 Support for Freescale LS1012AFRDM platform.
906 The LS1012A Freedom board (FRDM) is a high-performance
907 development platform that supports the QorIQ LS1012A
908 Layerscape Architecture processor.
909
910 config TARGET_LS1021AQDS
911 bool "Support ls1021aqds"
912 select BOARD_LATE_INIT
913 select CPU_V7
914 select CPU_V7_HAS_NONSEC
915 select CPU_V7_HAS_VIRT
916 select SUPPORT_SPL
917 select ARCH_LS1021A
918 select ARCH_SUPPORT_PSCI
919 select LS1_DEEP_SLEEP
920 select SYS_FSL_DDR
921 select BOARD_EARLY_INIT_F
922 imply SCSI
923
924 config TARGET_LS1021ATWR
925 bool "Support ls1021atwr"
926 select BOARD_LATE_INIT
927 select CPU_V7
928 select CPU_V7_HAS_NONSEC
929 select CPU_V7_HAS_VIRT
930 select SUPPORT_SPL
931 select ARCH_LS1021A
932 select ARCH_SUPPORT_PSCI
933 select LS1_DEEP_SLEEP
934 select BOARD_EARLY_INIT_F
935 imply SCSI
936
937 config TARGET_LS1021AIOT
938 bool "Support ls1021aiot"
939 select BOARD_LATE_INIT
940 select CPU_V7
941 select CPU_V7_HAS_NONSEC
942 select CPU_V7_HAS_VIRT
943 select SUPPORT_SPL
944 select ARCH_LS1021A
945 select ARCH_SUPPORT_PSCI
946 imply SCSI
947 help
948 Support for Freescale LS1021AIOT platform.
949 The LS1021A Freescale board (IOT) is a high-performance
950 development platform that supports the QorIQ LS1021A
951 Layerscape Architecture processor.
952
953 config TARGET_LS1043AQDS
954 bool "Support ls1043aqds"
955 select ARCH_LS1043A
956 select ARM64
957 select ARMV8_MULTIENTRY
958 select BOARD_LATE_INIT
959 select SUPPORT_SPL
960 select BOARD_EARLY_INIT_F
961 imply SCSI
962 help
963 Support for Freescale LS1043AQDS platform.
964
965 config TARGET_LS1043ARDB
966 bool "Support ls1043ardb"
967 select ARCH_LS1043A
968 select ARM64
969 select ARMV8_MULTIENTRY
970 select BOARD_LATE_INIT
971 select SUPPORT_SPL
972 select BOARD_EARLY_INIT_F
973 imply SCSI
974 help
975 Support for Freescale LS1043ARDB platform.
976
977 config TARGET_LS1046AQDS
978 bool "Support ls1046aqds"
979 select ARCH_LS1046A
980 select ARM64
981 select ARMV8_MULTIENTRY
982 select BOARD_LATE_INIT
983 select SUPPORT_SPL
984 select DM_SPI_FLASH if DM_SPI
985 select BOARD_EARLY_INIT_F
986 imply SCSI
987 help
988 Support for Freescale LS1046AQDS platform.
989 The LS1046A Development System (QDS) is a high-performance
990 development platform that supports the QorIQ LS1046A
991 Layerscape Architecture processor.
992
993 config TARGET_LS1046ARDB
994 bool "Support ls1046ardb"
995 select ARCH_LS1046A
996 select ARM64
997 select ARMV8_MULTIENTRY
998 select BOARD_LATE_INIT
999 select SUPPORT_SPL
1000 select DM_SPI_FLASH if DM_SPI
1001 select POWER_MC34VR500
1002 select BOARD_EARLY_INIT_F
1003 imply SCSI
1004 help
1005 Support for Freescale LS1046ARDB platform.
1006 The LS1046A Reference Design Board (RDB) is a high-performance
1007 development platform that supports the QorIQ LS1046A
1008 Layerscape Architecture processor.
1009
1010 config TARGET_H2200
1011 bool "Support h2200"
1012 select CPU_PXA
1013
1014 config TARGET_ZIPITZ2
1015 bool "Support zipitz2"
1016 select CPU_PXA
1017
1018 config TARGET_COLIBRI_PXA270
1019 bool "Support colibri_pxa270"
1020 select CPU_PXA
1021
1022 config ARCH_UNIPHIER
1023 bool "Socionext UniPhier SoCs"
1024 select BOARD_LATE_INIT
1025 select CLK_UNIPHIER
1026 select DM
1027 select DM_GPIO
1028 select DM_I2C
1029 select DM_MMC
1030 select DM_RESET
1031 select DM_SERIAL
1032 select DM_USB
1033 select OF_CONTROL
1034 select OF_LIBFDT
1035 select PINCTRL
1036 select SPL_BOARD_INIT if SPL
1037 select SPL_DM if SPL
1038 select SPL_LIBCOMMON_SUPPORT if SPL
1039 select SPL_LIBGENERIC_SUPPORT if SPL
1040 select SPL_OF_CONTROL if SPL
1041 select SPL_PINCTRL if SPL
1042 select SUPPORT_SPL
1043 imply FAT_WRITE
1044 help
1045 Support for UniPhier SoC family developed by Socionext Inc.
1046 (formerly, System LSI Business Division of Panasonic Corporation)
1047
1048 config STM32
1049 bool "Support STM32"
1050 select CPU_V7M
1051 select DM
1052 select DM_SERIAL
1053 select SYS_THUMB_BUILD
1054
1055 config ARCH_STI
1056 bool "Support STMicrolectronics SoCs"
1057 select CPU_V7
1058 select DM
1059 select DM_SERIAL
1060 select BLK
1061 select DM_MMC
1062 select DM_RESET
1063 help
1064 Support for STMicroelectronics STiH407/10 SoC family.
1065 This SoC is used on Linaro 96Board STiH410-B2260
1066
1067 config ARCH_ROCKCHIP
1068 bool "Support Rockchip SoCs"
1069 select OF_CONTROL
1070 select BLK
1071 select DM
1072 select SPL_DM if SPL
1073 select SYS_MALLOC_F
1074 select SYS_THUMB_BUILD if !ARM64
1075 select SPL_SYS_MALLOC_SIMPLE if SPL
1076 select DM_GPIO
1077 select DM_I2C
1078 select DM_MMC
1079 select DM_MMC_OPS
1080 select DM_SERIAL
1081 select DM_SPI
1082 select DM_SPI_FLASH
1083 select DM_USB if USB
1084 select DM_PWM
1085 select DM_REGULATOR
1086 imply FAT_WRITE
1087
1088 config TARGET_THUNDERX_88XX
1089 bool "Support ThunderX 88xx"
1090 select ARM64
1091 select OF_CONTROL
1092 select SYS_CACHE_SHIFT_7
1093
1094 config ARCH_ASPEED
1095 bool "Support Aspeed SoCs"
1096 select OF_CONTROL
1097 select DM
1098
1099 endchoice
1100
1101 source "arch/arm/mach-aspeed/Kconfig"
1102
1103 source "arch/arm/mach-at91/Kconfig"
1104
1105 source "arch/arm/mach-bcm283x/Kconfig"
1106
1107 source "arch/arm/mach-davinci/Kconfig"
1108
1109 source "arch/arm/mach-exynos/Kconfig"
1110
1111 source "arch/arm/mach-highbank/Kconfig"
1112
1113 source "arch/arm/mach-integrator/Kconfig"
1114
1115 source "arch/arm/mach-keystone/Kconfig"
1116
1117 source "arch/arm/mach-kirkwood/Kconfig"
1118
1119 source "arch/arm/mach-mvebu/Kconfig"
1120
1121 source "arch/arm/cpu/armv7/ls102xa/Kconfig"
1122
1123 source "arch/arm/mach-imx/mx7ulp/Kconfig"
1124
1125 source "arch/arm/mach-imx/mx7/Kconfig"
1126
1127 source "arch/arm/mach-imx/mx6/Kconfig"
1128
1129 source "arch/arm/mach-imx/mx5/Kconfig"
1130
1131 source "arch/arm/mach-omap2/Kconfig"
1132
1133 source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
1134
1135 source "arch/arm/mach-orion5x/Kconfig"
1136
1137 source "arch/arm/mach-rmobile/Kconfig"
1138
1139 source "arch/arm/mach-meson/Kconfig"
1140
1141 source "arch/arm/mach-rockchip/Kconfig"
1142
1143 source "arch/arm/mach-s5pc1xx/Kconfig"
1144
1145 source "arch/arm/mach-snapdragon/Kconfig"
1146
1147 source "arch/arm/mach-socfpga/Kconfig"
1148
1149 source "arch/arm/mach-sti/Kconfig"
1150
1151 source "arch/arm/mach-stm32/Kconfig"
1152
1153 source "arch/arm/mach-sunxi/Kconfig"
1154
1155 source "arch/arm/mach-tegra/Kconfig"
1156
1157 source "arch/arm/mach-uniphier/Kconfig"
1158
1159 source "arch/arm/cpu/armv7/vf610/Kconfig"
1160
1161 source "arch/arm/mach-zynq/Kconfig"
1162
1163 source "arch/arm/cpu/armv7/Kconfig"
1164
1165 source "arch/arm/cpu/armv8/zynqmp/Kconfig"
1166
1167 source "arch/arm/cpu/armv8/Kconfig"
1168
1169 source "arch/arm/mach-imx/Kconfig"
1170
1171 source "board/aries/m28evk/Kconfig"
1172 source "board/bosch/shc/Kconfig"
1173 source "board/CarMediaLab/flea3/Kconfig"
1174 source "board/Marvell/aspenite/Kconfig"
1175 source "board/Marvell/gplugd/Kconfig"
1176 source "board/armadeus/apf27/Kconfig"
1177 source "board/armltd/vexpress/Kconfig"
1178 source "board/armltd/vexpress64/Kconfig"
1179 source "board/bluegiga/apx4devkit/Kconfig"
1180 source "board/broadcom/bcm23550_w1d/Kconfig"
1181 source "board/broadcom/bcm28155_ap/Kconfig"
1182 source "board/broadcom/bcmcygnus/Kconfig"
1183 source "board/broadcom/bcmnsp/Kconfig"
1184 source "board/broadcom/bcmns2/Kconfig"
1185 source "board/cavium/thunderx/Kconfig"
1186 source "board/cirrus/edb93xx/Kconfig"
1187 source "board/creative/xfi3/Kconfig"
1188 source "board/freescale/ls2080a/Kconfig"
1189 source "board/freescale/ls2080aqds/Kconfig"
1190 source "board/freescale/ls2080ardb/Kconfig"
1191 source "board/freescale/ls1021aqds/Kconfig"
1192 source "board/freescale/ls1043aqds/Kconfig"
1193 source "board/freescale/ls1021atwr/Kconfig"
1194 source "board/freescale/ls1021aiot/Kconfig"
1195 source "board/freescale/ls1046aqds/Kconfig"
1196 source "board/freescale/ls1043ardb/Kconfig"
1197 source "board/freescale/ls1046ardb/Kconfig"
1198 source "board/freescale/ls1012aqds/Kconfig"
1199 source "board/freescale/ls1012ardb/Kconfig"
1200 source "board/freescale/ls1012afrdm/Kconfig"
1201 source "board/freescale/mx23evk/Kconfig"
1202 source "board/freescale/mx25pdk/Kconfig"
1203 source "board/freescale/mx28evk/Kconfig"
1204 source "board/freescale/mx31ads/Kconfig"
1205 source "board/freescale/mx31pdk/Kconfig"
1206 source "board/freescale/mx35pdk/Kconfig"
1207 source "board/freescale/s32v234evb/Kconfig"
1208 source "board/gdsys/a38x/Kconfig"
1209 source "board/grinn/chiliboard/Kconfig"
1210 source "board/gumstix/pepper/Kconfig"
1211 source "board/h2200/Kconfig"
1212 source "board/hisilicon/hikey/Kconfig"
1213 source "board/hisilicon/poplar/Kconfig"
1214 source "board/imx31_phycore/Kconfig"
1215 source "board/isee/igep003x/Kconfig"
1216 source "board/olimex/mx23_olinuxino/Kconfig"
1217 source "board/phytec/pcm051/Kconfig"
1218 source "board/ppcag/bg0900/Kconfig"
1219 source "board/sandisk/sansa_fuze_plus/Kconfig"
1220 source "board/schulercontrol/sc_sps_1/Kconfig"
1221 source "board/silica/pengwyn/Kconfig"
1222 source "board/spear/spear300/Kconfig"
1223 source "board/spear/spear310/Kconfig"
1224 source "board/spear/spear320/Kconfig"
1225 source "board/spear/spear600/Kconfig"
1226 source "board/spear/x600/Kconfig"
1227 source "board/st/stv0991/Kconfig"
1228 source "board/syteco/zmx25/Kconfig"
1229 source "board/tcl/sl50/Kconfig"
1230 source "board/birdland/bav335x/Kconfig"
1231 source "board/timll/devkit3250/Kconfig"
1232 source "board/toradex/colibri_pxa270/Kconfig"
1233 source "board/technologic/ts4600/Kconfig"
1234 source "board/vscom/baltos/Kconfig"
1235 source "board/woodburn/Kconfig"
1236 source "board/work-microwave/work_92105/Kconfig"
1237 source "board/zipitz2/Kconfig"
1238
1239 source "arch/arm/Kconfig.debug"
1240
1241 endmenu
1242
1243 config SPL_LDSCRIPT
1244 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
1245 default "arch/arm/cpu/arm1136/u-boot-spl.lds" if CPU_ARM1136
1246 default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64
1247
1248