1 menu "ARM architecture"
10 select SYS_CACHE_SHIFT_6
12 config DMA_ADDR_T_64BIT
24 select SYS_CACHE_SHIFT_5
28 select SYS_CACHE_SHIFT_5
32 select SYS_CACHE_SHIFT_5
36 select SYS_CACHE_SHIFT_5
40 select SYS_CACHE_SHIFT_5
45 select SYS_CACHE_SHIFT_5
51 select SYS_CACHE_SHIFT_6
56 select SYS_CACHE_SHIFT_5
60 select SYS_CACHE_SHIFT_5
64 select SYS_CACHE_SHIFT_5
67 default "arm720t" if CPU_ARM720T
68 default "arm920t" if CPU_ARM920T
69 default "arm926ejs" if CPU_ARM926EJS
70 default "arm946es" if CPU_ARM946ES
71 default "arm1136" if CPU_ARM1136
72 default "arm1176" if CPU_ARM1176
73 default "armv7" if CPU_V7
74 default "armv7m" if CPU_V7M
75 default "pxa" if CPU_PXA
76 default "sa1100" if CPU_SA1100
77 default "armv8" if ARM64
81 default 4 if CPU_ARM720T
82 default 4 if CPU_ARM920T
83 default 5 if CPU_ARM926EJS
84 default 5 if CPU_ARM946ES
85 default 6 if CPU_ARM1136
86 default 6 if CPU_ARM1176
90 default 4 if CPU_SA1100
93 config SYS_CACHE_SHIFT_5
96 config SYS_CACHE_SHIFT_6
99 config SYS_CACHE_SHIFT_7
102 config SYS_CACHELINE_SIZE
104 default 128 if SYS_CACHE_SHIFT_7
105 default 64 if SYS_CACHE_SHIFT_6
106 default 32 if SYS_CACHE_SHIFT_5
109 bool "support boot from semihosting"
111 In emulated environments, semihosting is a way for
112 the hosted environment to call out to the emulator to
113 retrieve files from the host machine.
115 config SYS_L2CACHE_OFF
118 If SoC does not support L2CACHE or one do not want to enable
119 L2CACHE, choose this option.
121 config ENABLE_ARM_SOC_BOOT0_HOOK
122 bool "prepare BOOT0 header"
124 If the SoC's BOOT0 requires a header area filled with (magic)
125 values, then choose this option, and create a define called
126 ARM_SOC_BOOT0_HOOK which contains the required assembler
129 config USE_ARCH_MEMCPY
130 bool "Use an assembly optimized implementation of memcpy"
132 depends on !ARM64 && !SPL
134 Enable the generation of an optimized version of memcpy.
135 Such implementation may be faster under some conditions
136 but may increase the binary size.
138 config USE_ARCH_MEMSET
139 bool "Use an assembly optimized implementation of memset"
141 depends on !ARM64 && !SPL
143 Enable the generation of an optimized version of memset.
144 Such implementation may be faster under some conditions
145 but may increase the binary size.
152 config ARM64_SUPPORT_AARCH32
153 bool "ARM64 system support AArch32 execution state"
154 default y if ARM64 && !TARGET_THUNDERX_88XX
156 This ARM64 system supports AArch32 execution state.
159 prompt "Target select"
165 config TARGET_EDB93XX
166 bool "Support edb93xx"
169 config TARGET_ASPENITE
170 bool "Support aspenite"
174 bool "Support gplugd"
181 Support for TI's DaVinci platform.
184 bool "Marvell Kirkwood"
188 bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)"
197 config TARGET_DEVKIT3250
198 bool "Support devkit3250"
202 config TARGET_WORK_92105
203 bool "Support work_92105"
207 config TARGET_MX25PDK
208 bool "Support mx25pdk"
220 config TARGET_APX4DEVKIT
221 bool "Support apx4devkit"
231 bool "Support m28evk"
235 config TARGET_MX23EVK
236 bool "Support mx23evk"
240 config TARGET_MX28EVK
241 bool "Support mx28evk"
245 config TARGET_MX23_OLINUXINO
246 bool "Support mx23_olinuxino"
251 bool "Support bg0900"
255 config TARGET_SANSA_FUZE_PLUS
256 bool "Support sansa_fuze_plus"
260 config TARGET_SC_SPS_1
261 bool "Support sc_sps_1"
269 config TARGET_SPEAR300
270 bool "Support spear300"
273 config TARGET_SPEAR310
274 bool "Support spear310"
277 config TARGET_SPEAR320
278 bool "Support spear320"
281 config TARGET_SPEAR600
282 bool "Support spear600"
285 config TARGET_STV0991
286 bool "Support stv0991"
299 config TARGET_IMX31_PHYCORE
300 bool "Support imx31_phycore"
303 config TARGET_MX31ADS
304 bool "Support mx31ads"
307 config TARGET_MX31PDK
308 bool "Support mx31pdk"
312 config TARGET_WOODBURN
313 bool "Support woodburn"
316 config TARGET_WOODBURN_SD
317 bool "Support woodburn_sd"
325 config TARGET_MX35PDK
326 bool "Support mx35pdk"
330 bool "Broadcom BCM283X family"
336 config TARGET_VEXPRESS_CA15_TC2
337 bool "Support vexpress_ca15_tc2"
339 select CPU_V7_HAS_NONSEC
340 select CPU_V7_HAS_VIRT
342 config TARGET_VEXPRESS_CA5X2
343 bool "Support vexpress_ca5x2"
346 config TARGET_VEXPRESS_CA9X4
347 bool "Support vexpress_ca9x4"
351 bool "Support BRXRE1"
355 bool "Support BRPPT1"
366 bool "Support thuban"
372 config TARGET_RASTABAN
373 bool "Support rastaban"
380 bool "Support etamin"
400 config TARGET_TI814X_EVM
401 bool "Support ti814x_evm"
404 config TARGET_TI816X_EVM
405 bool "Support ti816x_evm"
408 config TARGET_BCM23550_W1D
409 bool "Support bcm23550_w1d"
412 config TARGET_BCM28155_AP
413 bool "Support bcm28155_ap"
416 config TARGET_BCMCYGNUS
417 bool "Support bcmcygnus"
421 bool "Support bcmnsp"
425 bool "Samsung EXYNOS"
435 bool "Samsung S5PC1XX"
443 bool "Calxeda Highbank"
446 config ARCH_INTEGRATOR
447 bool "ARM Ltd. Integrator family"
460 Support for the Meson SoC family developed by Amlogic Inc.,
461 targeted at media players and tablet computers. We currently
462 support the S905 (GXBaby) 64-bit SoC.
477 bool "Support m53evk"
481 config TARGET_MX51EVK
482 bool "Support mx51evk"
485 config TARGET_MX53ARD
486 bool "Support mx53ard"
489 config TARGET_MX53EVK
490 bool "Support mx53evk"
493 config TARGET_MX53LOCO
494 bool "Support mx53loco"
497 config TARGET_MX53SMD
498 bool "Support mx53smd"
504 select USE_TINY_PRINTF
509 select USE_TINY_PRINTF
519 Support for AM43xx SOC from Texas Instruments.
520 The AM43xx high performance SOC features a Cortex-A9
521 ARM core, a quad core PRU-ICSS for industrial Ethernet
522 protocols, dual camera support, optional 3D graphics
523 and an optional customer programmable secure boot.
529 Support for AM335x SOC from Texas Instruments.
530 The AM335x high performance SOC features a Cortex-A8
531 ARM core, a dual core PRU-ICSS for industrial Ethernet
532 protocols, optional 3D graphics and an optional customer
533 programmable secure boot.
536 bool "Renesas ARM SoCs"
540 config TARGET_S32V234EVB
541 bool "Support s32v234evb"
544 config ARCH_SNAPDRAGON
545 bool "Qualcomm Snapdragon SoCs"
555 bool "Altera SOCFPGA family"
559 select SPL_OF_CONTROL
563 select ENABLE_ARM_SOC_BOOT0_HOOK
566 bool "Support cm_t43"
570 bool "Support sunxi (Allwinner) SoCs"
572 select CMD_MMC if MMC
573 select CMD_USB if DISTRO_DEFAULTS
579 select DM_USB if DISTRO_DEFAULTS
580 select OF_BOARD_SETUP
583 select SPL_STACK_R if SUPPORT_SPL
584 select SPL_SYS_MALLOC_SIMPLE if SUPPORT_SPL
586 select USB if DISTRO_DEFAULTS
587 select USB_STORAGE if DISTRO_DEFAULTS
588 select USB_KEYBOARD if DISTRO_DEFAULTS
589 select USE_TINY_PRINTF
592 bool "Support TS4600"
597 bool "Support TS4800"
600 config TARGET_VF610TWR
601 bool "Support vf610twr"
604 config TARGET_COLIBRI_VF
605 bool "Support Colibri VF50/61"
609 bool "Support pcm-052"
617 bool "Xilinx Zynq Platform"
621 select SPL_OF_CONTROL if SPL
631 select SPL_SEPARATE_BSS if SPL
636 bool "Support Xilinx ZynqMP Platform"
649 config TARGET_VEXPRESS64_AEMV8A
650 bool "Support vexpress_aemv8a"
653 config TARGET_VEXPRESS64_BASE_FVP
654 bool "Support Versatile Express ARMv8a FVP BASE model"
658 config TARGET_VEXPRESS64_BASE_FVP_DRAM
659 bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
662 This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
663 the default config to allow the user to load the images directly into
664 DRAM using model parameters rather than by using semi-hosting to load
665 the files from the host filesystem.
667 config TARGET_VEXPRESS64_JUNO
668 bool "Support Versatile Express Juno Development Platform"
671 config TARGET_LS2080A_EMU
672 bool "Support ls2080a_emu"
675 select ARMV8_MULTIENTRY
677 Support for Freescale LS2080A_EMU platform
678 The LS2080A Development System (EMULATOR) is a pre silicon
679 development platform that supports the QorIQ LS2080A
680 Layerscape Architecture processor.
682 config TARGET_LS2080A_SIMU
683 bool "Support ls2080a_simu"
686 select ARMV8_MULTIENTRY
688 Support for Freescale LS2080A_SIMU platform
689 The LS2080A Development System (QDS) is a pre silicon
690 development platform that supports the QorIQ LS2080A
691 Layerscape Architecture processor.
693 config TARGET_LS2080AQDS
694 bool "Support ls2080aqds"
697 select ARMV8_MULTIENTRY
700 Support for Freescale LS2080AQDS platform
701 The LS2080A Development System (QDS) is a high-performance
702 development platform that supports the QorIQ LS2080A
703 Layerscape Architecture processor.
705 config TARGET_LS2080ARDB
706 bool "Support ls2080ardb"
709 select ARMV8_MULTIENTRY
712 Support for Freescale LS2080ARDB platform.
713 The LS2080A Reference design board (RDB) is a high-performance
714 development platform that supports the QorIQ LS2080A
715 Layerscape Architecture processor.
718 bool "Support HiKey 96boards Consumer Edition Platform"
725 Support for HiKey 96boards platform. It features a HI6220
726 SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
728 config TARGET_LS1012AQDS
729 bool "Support ls1012aqds"
733 Support for Freescale LS1012AQDS platform.
734 The LS1012A Development System (QDS) is a high-performance
735 development platform that supports the QorIQ LS1012A
736 Layerscape Architecture processor.
738 config TARGET_LS1012ARDB
739 bool "Support ls1012ardb"
743 Support for Freescale LS1012ARDB platform.
744 The LS1012A Reference design board (RDB) is a high-performance
745 development platform that supports the QorIQ LS1012A
746 Layerscape Architecture processor.
748 config TARGET_LS1012AFRDM
749 bool "Support ls1012afrdm"
753 Support for Freescale LS1012AFRDM platform.
754 The LS1012A Freedom board (FRDM) is a high-performance
755 development platform that supports the QorIQ LS1012A
756 Layerscape Architecture processor.
758 config TARGET_LS1021AQDS
759 bool "Support ls1021aqds"
761 select CPU_V7_HAS_NONSEC
762 select CPU_V7_HAS_VIRT
765 select ARCH_SUPPORT_PSCI
766 select LS1_DEEP_SLEEP
768 config TARGET_LS1021ATWR
769 bool "Support ls1021atwr"
771 select CPU_V7_HAS_NONSEC
772 select CPU_V7_HAS_VIRT
775 select ARCH_SUPPORT_PSCI
776 select LS1_DEEP_SLEEP
778 config TARGET_LS1021AIOT
779 bool "Support ls1021aiot"
781 select CPU_V7_HAS_NONSEC
782 select CPU_V7_HAS_VIRT
785 select ARCH_SUPPORT_PSCI
787 Support for Freescale LS1021AIOT platform.
788 The LS1021A Freescale board (IOT) is a high-performance
789 development platform that supports the QorIQ LS1021A
790 Layerscape Architecture processor.
792 config TARGET_LS1043AQDS
793 bool "Support ls1043aqds"
796 select ARMV8_MULTIENTRY
799 Support for Freescale LS1043AQDS platform.
801 config TARGET_LS1043ARDB
802 bool "Support ls1043ardb"
805 select ARMV8_MULTIENTRY
808 Support for Freescale LS1043ARDB platform.
810 config TARGET_LS1046AQDS
811 bool "Support ls1046aqds"
814 select ARMV8_MULTIENTRY
816 select DM_SPI_FLASH if DM_SPI
818 Support for Freescale LS1046AQDS platform.
819 The LS1046A Development System (QDS) is a high-performance
820 development platform that supports the QorIQ LS1046A
821 Layerscape Architecture processor.
823 config TARGET_LS1046ARDB
824 bool "Support ls1046ardb"
827 select ARMV8_MULTIENTRY
829 select DM_SPI_FLASH if DM_SPI
831 Support for Freescale LS1046ARDB platform.
832 The LS1046A Reference Design Board (RDB) is a high-performance
833 development platform that supports the QorIQ LS1046A
834 Layerscape Architecture processor.
840 config TARGET_ZIPITZ2
841 bool "Support zipitz2"
844 config TARGET_COLIBRI_PXA270
845 bool "Support colibri_pxa270"
849 bool "Socionext UniPhier SoCs"
863 select SPL_LIBCOMMON_SUPPORT
864 select SPL_LIBGENERIC_SUPPORT
865 select SPL_OF_CONTROL
869 Support for UniPhier SoC family developed by Socionext Inc.
870 (formerly, System LSI Business Division of Panasonic Corporation)
879 bool "Support Rockchip SoCs"
885 select SPL_SYS_MALLOC_SIMPLE if SPL
897 config TARGET_THUNDERX_88XX
898 bool "Support ThunderX 88xx"
901 select SYS_CACHE_SHIFT_7
905 source "arch/arm/mach-at91/Kconfig"
907 source "arch/arm/mach-bcm283x/Kconfig"
909 source "arch/arm/mach-davinci/Kconfig"
911 source "arch/arm/mach-exynos/Kconfig"
913 source "arch/arm/mach-highbank/Kconfig"
915 source "arch/arm/mach-integrator/Kconfig"
917 source "arch/arm/mach-keystone/Kconfig"
919 source "arch/arm/mach-kirkwood/Kconfig"
921 source "arch/arm/mach-litesom/Kconfig"
923 source "arch/arm/mach-mvebu/Kconfig"
925 source "arch/arm/cpu/armv7/ls102xa/Kconfig"
927 source "arch/arm/cpu/armv7/mx7/Kconfig"
929 source "arch/arm/cpu/armv7/mx6/Kconfig"
931 source "arch/arm/cpu/armv7/mx5/Kconfig"
933 source "arch/arm/mach-omap2/Kconfig"
935 source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
937 source "arch/arm/mach-orion5x/Kconfig"
939 source "arch/arm/mach-rmobile/Kconfig"
941 source "arch/arm/mach-meson/Kconfig"
943 source "arch/arm/mach-rockchip/Kconfig"
945 source "arch/arm/mach-s5pc1xx/Kconfig"
947 source "arch/arm/mach-snapdragon/Kconfig"
949 source "arch/arm/mach-socfpga/Kconfig"
951 source "arch/arm/mach-stm32/Kconfig"
953 source "arch/arm/mach-tegra/Kconfig"
955 source "arch/arm/mach-uniphier/Kconfig"
957 source "arch/arm/mach-zynq/Kconfig"
959 source "arch/arm/cpu/armv7/Kconfig"
961 source "arch/arm/cpu/armv8/zynqmp/Kconfig"
963 source "arch/arm/cpu/armv8/Kconfig"
965 source "arch/arm/imx-common/Kconfig"
967 source "board/bosch/shc/Kconfig"
968 source "board/BuR/brxre1/Kconfig"
969 source "board/BuR/brppt1/Kconfig"
970 source "board/CarMediaLab/flea3/Kconfig"
971 source "board/Marvell/aspenite/Kconfig"
972 source "board/Marvell/gplugd/Kconfig"
973 source "board/armadeus/apf27/Kconfig"
974 source "board/armltd/vexpress/Kconfig"
975 source "board/armltd/vexpress64/Kconfig"
976 source "board/bluegiga/apx4devkit/Kconfig"
977 source "board/broadcom/bcm23550_w1d/Kconfig"
978 source "board/broadcom/bcm28155_ap/Kconfig"
979 source "board/broadcom/bcmcygnus/Kconfig"
980 source "board/broadcom/bcmnsp/Kconfig"
981 source "board/cavium/thunderx/Kconfig"
982 source "board/cirrus/edb93xx/Kconfig"
983 source "board/compulab/cm_t335/Kconfig"
984 source "board/compulab/cm_t43/Kconfig"
985 source "board/creative/xfi3/Kconfig"
986 source "board/denx/m28evk/Kconfig"
987 source "board/denx/m53evk/Kconfig"
988 source "board/freescale/ls2080a/Kconfig"
989 source "board/freescale/ls2080aqds/Kconfig"
990 source "board/freescale/ls2080ardb/Kconfig"
991 source "board/freescale/ls1021aqds/Kconfig"
992 source "board/freescale/ls1043aqds/Kconfig"
993 source "board/freescale/ls1021atwr/Kconfig"
994 source "board/freescale/ls1021aiot/Kconfig"
995 source "board/freescale/ls1046aqds/Kconfig"
996 source "board/freescale/ls1043ardb/Kconfig"
997 source "board/freescale/ls1046ardb/Kconfig"
998 source "board/freescale/ls1012aqds/Kconfig"
999 source "board/freescale/ls1012ardb/Kconfig"
1000 source "board/freescale/ls1012afrdm/Kconfig"
1001 source "board/freescale/mx23evk/Kconfig"
1002 source "board/freescale/mx25pdk/Kconfig"
1003 source "board/freescale/mx28evk/Kconfig"
1004 source "board/freescale/mx31ads/Kconfig"
1005 source "board/freescale/mx31pdk/Kconfig"
1006 source "board/freescale/mx35pdk/Kconfig"
1007 source "board/freescale/mx51evk/Kconfig"
1008 source "board/freescale/mx53ard/Kconfig"
1009 source "board/freescale/mx53evk/Kconfig"
1010 source "board/freescale/mx53loco/Kconfig"
1011 source "board/freescale/mx53smd/Kconfig"
1012 source "board/freescale/s32v234evb/Kconfig"
1013 source "board/freescale/vf610twr/Kconfig"
1014 source "board/gumstix/pepper/Kconfig"
1015 source "board/h2200/Kconfig"
1016 source "board/hisilicon/hikey/Kconfig"
1017 source "board/imx31_phycore/Kconfig"
1018 source "board/isee/igep0033/Kconfig"
1019 source "board/olimex/mx23_olinuxino/Kconfig"
1020 source "board/phytec/pcm051/Kconfig"
1021 source "board/phytec/pcm052/Kconfig"
1022 source "board/ppcag/bg0900/Kconfig"
1023 source "board/sandisk/sansa_fuze_plus/Kconfig"
1024 source "board/schulercontrol/sc_sps_1/Kconfig"
1025 source "board/siemens/draco/Kconfig"
1026 source "board/siemens/pxm2/Kconfig"
1027 source "board/siemens/rut/Kconfig"
1028 source "board/silica/pengwyn/Kconfig"
1029 source "board/spear/spear300/Kconfig"
1030 source "board/spear/spear310/Kconfig"
1031 source "board/spear/spear320/Kconfig"
1032 source "board/spear/spear600/Kconfig"
1033 source "board/spear/x600/Kconfig"
1034 source "board/st/stv0991/Kconfig"
1035 source "board/sunxi/Kconfig"
1036 source "board/syteco/zmx25/Kconfig"
1037 source "board/tcl/sl50/Kconfig"
1038 source "board/ti/am335x/Kconfig"
1039 source "board/ti/am43xx/Kconfig"
1040 source "board/birdland/bav335x/Kconfig"
1041 source "board/ti/ti814x/Kconfig"
1042 source "board/ti/ti816x/Kconfig"
1043 source "board/timll/devkit3250/Kconfig"
1044 source "board/toradex/colibri_pxa270/Kconfig"
1045 source "board/toradex/colibri_vf/Kconfig"
1046 source "board/technologic/ts4600/Kconfig"
1047 source "board/technologic/ts4800/Kconfig"
1048 source "board/vscom/baltos/Kconfig"
1049 source "board/woodburn/Kconfig"
1050 source "board/work-microwave/work_92105/Kconfig"
1051 source "board/zipitz2/Kconfig"
1053 source "arch/arm/Kconfig.debug"