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