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