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"
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 SPL_USE_ARCH_MEMCPY
139 bool "Use an assembly optimized implementation of memcpy"
140 default y if USE_ARCH_MEMCPY
143 Enable the generation of an optimized version of memcpy.
144 Such implementation may be faster under some conditions
145 but may increase the binary size.
147 config USE_ARCH_MEMSET
148 bool "Use an assembly optimized implementation of memset"
152 Enable the generation of an optimized version of memset.
153 Such implementation may be faster under some conditions
154 but may increase the binary size.
156 config SPL_USE_ARCH_MEMSET
157 bool "Use an assembly optimized implementation of memset"
158 default y if USE_ARCH_MEMSET
161 Enable the generation of an optimized version of memset.
162 Such implementation may be faster under some conditions
163 but may increase the binary size.
170 config ARM64_SUPPORT_AARCH32
171 bool "ARM64 system support AArch32 execution state"
172 default y if ARM64 && !TARGET_THUNDERX_88XX
174 This ARM64 system supports AArch32 execution state.
177 prompt "Target select"
183 config TARGET_EDB93XX
184 bool "Support edb93xx"
187 config TARGET_ASPENITE
188 bool "Support aspenite"
192 bool "Support gplugd"
199 Support for TI's DaVinci platform.
202 bool "Marvell Kirkwood"
206 bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)"
215 config TARGET_DEVKIT3250
216 bool "Support devkit3250"
220 config TARGET_WORK_92105
221 bool "Support work_92105"
225 config TARGET_MX25PDK
226 bool "Support mx25pdk"
238 config TARGET_APX4DEVKIT
239 bool "Support apx4devkit"
249 bool "Support m28evk"
253 config TARGET_MX23EVK
254 bool "Support mx23evk"
258 config TARGET_MX28EVK
259 bool "Support mx28evk"
263 config TARGET_MX23_OLINUXINO
264 bool "Support mx23_olinuxino"
269 bool "Support bg0900"
273 config TARGET_SANSA_FUZE_PLUS
274 bool "Support sansa_fuze_plus"
278 config TARGET_SC_SPS_1
279 bool "Support sc_sps_1"
287 config TARGET_SPEAR300
288 bool "Support spear300"
291 config TARGET_SPEAR310
292 bool "Support spear310"
295 config TARGET_SPEAR320
296 bool "Support spear320"
299 config TARGET_SPEAR600
300 bool "Support spear600"
303 config TARGET_STV0991
304 bool "Support stv0991"
317 config TARGET_IMX31_PHYCORE
318 bool "Support imx31_phycore"
321 config TARGET_MX31ADS
322 bool "Support mx31ads"
325 config TARGET_MX31PDK
326 bool "Support mx31pdk"
330 config TARGET_WOODBURN
331 bool "Support woodburn"
334 config TARGET_WOODBURN_SD
335 bool "Support woodburn_sd"
343 config TARGET_MX35PDK
344 bool "Support mx35pdk"
348 bool "Broadcom BCM283X family"
354 config TARGET_VEXPRESS_CA15_TC2
355 bool "Support vexpress_ca15_tc2"
357 select CPU_V7_HAS_NONSEC
358 select CPU_V7_HAS_VIRT
360 config TARGET_VEXPRESS_CA5X2
361 bool "Support vexpress_ca5x2"
364 config TARGET_VEXPRESS_CA9X4
365 bool "Support vexpress_ca9x4"
369 bool "Support BRXRE1"
373 bool "Support BRPPT1"
384 bool "Support thuban"
390 config TARGET_RASTABAN
391 bool "Support rastaban"
398 bool "Support etamin"
418 config TARGET_TI814X_EVM
419 bool "Support ti814x_evm"
422 config TARGET_TI816X_EVM
423 bool "Support ti816x_evm"
426 config TARGET_BCM23550_W1D
427 bool "Support bcm23550_w1d"
430 config TARGET_BCM28155_AP
431 bool "Support bcm28155_ap"
434 config TARGET_BCMCYGNUS
435 bool "Support bcmcygnus"
439 bool "Support bcmnsp"
443 bool "Samsung EXYNOS"
453 bool "Samsung S5PC1XX"
461 bool "Calxeda Highbank"
464 config ARCH_INTEGRATOR
465 bool "ARM Ltd. Integrator family"
478 Support for the Meson SoC family developed by Amlogic Inc.,
479 targeted at media players and tablet computers. We currently
480 support the S905 (GXBaby) 64-bit SoC.
485 select SYS_FSL_HAS_SEC if SECURE_BOOT
486 select SYS_FSL_SEC_COMPAT_4
487 select SYS_FSL_SEC_LE
492 select SYS_FSL_HAS_SEC if SECURE_BOOT
493 select SYS_FSL_SEC_COMPAT_4
494 select SYS_FSL_SEC_LE
501 bool "Support m53evk"
505 config TARGET_MX51EVK
506 bool "Support mx51evk"
509 config TARGET_MX53ARD
510 bool "Support mx53ard"
513 config TARGET_MX53EVK
514 bool "Support mx53evk"
517 config TARGET_MX53LOCO
518 bool "Support mx53loco"
521 config TARGET_MX53SMD
522 bool "Support mx53smd"
528 select USE_TINY_PRINTF
533 select USE_TINY_PRINTF
543 Support for AM43xx SOC from Texas Instruments.
544 The AM43xx high performance SOC features a Cortex-A9
545 ARM core, a quad core PRU-ICSS for industrial Ethernet
546 protocols, dual camera support, optional 3D graphics
547 and an optional customer programmable secure boot.
553 Support for AM335x SOC from Texas Instruments.
554 The AM335x high performance SOC features a Cortex-A8
555 ARM core, a dual core PRU-ICSS for industrial Ethernet
556 protocols, optional 3D graphics and an optional customer
557 programmable secure boot.
560 bool "Renesas ARM SoCs"
564 config TARGET_S32V234EVB
565 bool "Support s32v234evb"
567 select SYS_FSL_ERRATUM_ESDHC111
569 config ARCH_SNAPDRAGON
570 bool "Qualcomm Snapdragon SoCs"
580 bool "Altera SOCFPGA family"
584 select SPL_OF_CONTROL
588 select ENABLE_ARM_SOC_BOOT0_HOOK
591 bool "Support cm_t43"
595 bool "Support sunxi (Allwinner) SoCs"
597 select CMD_MMC if MMC
598 select CMD_USB if DISTRO_DEFAULTS
604 select DM_USB if DISTRO_DEFAULTS
605 select OF_BOARD_SETUP
608 select SPL_STACK_R if SUPPORT_SPL
609 select SPL_SYS_MALLOC_SIMPLE if SUPPORT_SPL
611 select USB if DISTRO_DEFAULTS
612 select USB_STORAGE if DISTRO_DEFAULTS
613 select USB_KEYBOARD if DISTRO_DEFAULTS
614 select USE_TINY_PRINTF
617 bool "Support TS4600"
622 bool "Support TS4800"
624 select SYS_FSL_ERRATUM_ESDHC_A001
626 config TARGET_VF610TWR
627 bool "Support vf610twr"
629 select SYS_FSL_ERRATUM_ESDHC111
631 config TARGET_COLIBRI_VF
632 bool "Support Colibri VF50/61"
634 select SYS_FSL_ERRATUM_ESDHC111
637 bool "Support pcm-052"
639 select SYS_FSL_ERRATUM_ESDHC111
640 select SYS_FSL_ERRATUM_ESDHC135
641 select SYS_FSL_ERRATUM_ESDHC_A001
646 select SYS_FSL_ERRATUM_ESDHC111
647 select SYS_FSL_ERRATUM_ESDHC135
648 select SYS_FSL_ERRATUM_ESDHC_A001
651 bool "Xilinx Zynq Platform"
655 select SPL_OF_CONTROL if SPL
665 select SPL_SEPARATE_BSS if SPL
670 bool "Support Xilinx ZynqMP Platform"
683 config TARGET_VEXPRESS64_AEMV8A
684 bool "Support vexpress_aemv8a"
687 config TARGET_VEXPRESS64_BASE_FVP
688 bool "Support Versatile Express ARMv8a FVP BASE model"
692 config TARGET_VEXPRESS64_BASE_FVP_DRAM
693 bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
696 This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
697 the default config to allow the user to load the images directly into
698 DRAM using model parameters rather than by using semi-hosting to load
699 the files from the host filesystem.
701 config TARGET_VEXPRESS64_JUNO
702 bool "Support Versatile Express Juno Development Platform"
705 config TARGET_LS2080A_EMU
706 bool "Support ls2080a_emu"
709 select ARMV8_MULTIENTRY
711 Support for Freescale LS2080A_EMU platform
712 The LS2080A Development System (EMULATOR) is a pre silicon
713 development platform that supports the QorIQ LS2080A
714 Layerscape Architecture processor.
716 config TARGET_LS2080A_SIMU
717 bool "Support ls2080a_simu"
720 select ARMV8_MULTIENTRY
722 Support for Freescale LS2080A_SIMU platform
723 The LS2080A Development System (QDS) is a pre silicon
724 development platform that supports the QorIQ LS2080A
725 Layerscape Architecture processor.
727 config TARGET_LS2080AQDS
728 bool "Support ls2080aqds"
731 select ARMV8_MULTIENTRY
734 Support for Freescale LS2080AQDS platform
735 The LS2080A Development System (QDS) is a high-performance
736 development platform that supports the QorIQ LS2080A
737 Layerscape Architecture processor.
739 config TARGET_LS2080ARDB
740 bool "Support ls2080ardb"
743 select ARMV8_MULTIENTRY
746 Support for Freescale LS2080ARDB platform.
747 The LS2080A Reference design board (RDB) is a high-performance
748 development platform that supports the QorIQ LS2080A
749 Layerscape Architecture processor.
752 bool "Support HiKey 96boards Consumer Edition Platform"
759 Support for HiKey 96boards platform. It features a HI6220
760 SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
762 config TARGET_LS1012AQDS
763 bool "Support ls1012aqds"
767 Support for Freescale LS1012AQDS platform.
768 The LS1012A Development System (QDS) is a high-performance
769 development platform that supports the QorIQ LS1012A
770 Layerscape Architecture processor.
772 config TARGET_LS1012ARDB
773 bool "Support ls1012ardb"
777 Support for Freescale LS1012ARDB platform.
778 The LS1012A Reference design board (RDB) is a high-performance
779 development platform that supports the QorIQ LS1012A
780 Layerscape Architecture processor.
782 config TARGET_LS1012AFRDM
783 bool "Support ls1012afrdm"
787 Support for Freescale LS1012AFRDM platform.
788 The LS1012A Freedom board (FRDM) is a high-performance
789 development platform that supports the QorIQ LS1012A
790 Layerscape Architecture processor.
792 config TARGET_LS1021AQDS
793 bool "Support ls1021aqds"
795 select CPU_V7_HAS_NONSEC
796 select CPU_V7_HAS_VIRT
799 select ARCH_SUPPORT_PSCI
800 select LS1_DEEP_SLEEP
803 config TARGET_LS1021ATWR
804 bool "Support ls1021atwr"
806 select CPU_V7_HAS_NONSEC
807 select CPU_V7_HAS_VIRT
810 select ARCH_SUPPORT_PSCI
811 select LS1_DEEP_SLEEP
813 config TARGET_LS1021AIOT
814 bool "Support ls1021aiot"
816 select CPU_V7_HAS_NONSEC
817 select CPU_V7_HAS_VIRT
820 select ARCH_SUPPORT_PSCI
822 Support for Freescale LS1021AIOT platform.
823 The LS1021A Freescale board (IOT) is a high-performance
824 development platform that supports the QorIQ LS1021A
825 Layerscape Architecture processor.
827 config TARGET_LS1043AQDS
828 bool "Support ls1043aqds"
831 select ARMV8_MULTIENTRY
834 Support for Freescale LS1043AQDS platform.
836 config TARGET_LS1043ARDB
837 bool "Support ls1043ardb"
840 select ARMV8_MULTIENTRY
843 Support for Freescale LS1043ARDB platform.
845 config TARGET_LS1046AQDS
846 bool "Support ls1046aqds"
849 select ARMV8_MULTIENTRY
851 select DM_SPI_FLASH if DM_SPI
853 Support for Freescale LS1046AQDS platform.
854 The LS1046A Development System (QDS) is a high-performance
855 development platform that supports the QorIQ LS1046A
856 Layerscape Architecture processor.
858 config TARGET_LS1046ARDB
859 bool "Support ls1046ardb"
862 select ARMV8_MULTIENTRY
864 select DM_SPI_FLASH if DM_SPI
865 select POWER_MC34VR500
867 Support for Freescale LS1046ARDB platform.
868 The LS1046A Reference Design Board (RDB) is a high-performance
869 development platform that supports the QorIQ LS1046A
870 Layerscape Architecture processor.
876 config TARGET_ZIPITZ2
877 bool "Support zipitz2"
880 config TARGET_COLIBRI_PXA270
881 bool "Support colibri_pxa270"
885 bool "Socionext UniPhier SoCs"
898 select SPL_LIBCOMMON_SUPPORT if SPL
899 select SPL_LIBGENERIC_SUPPORT if SPL
900 select SPL_OF_CONTROL if SPL
901 select SPL_PINCTRL if SPL
904 Support for UniPhier SoC family developed by Socionext Inc.
905 (formerly, System LSI Business Division of Panasonic Corporation)
914 bool "Support Rockchip SoCs"
920 select SPL_SYS_MALLOC_SIMPLE if SPL
932 config TARGET_THUNDERX_88XX
933 bool "Support ThunderX 88xx"
936 select SYS_CACHE_SHIFT_7
940 source "arch/arm/mach-at91/Kconfig"
942 source "arch/arm/mach-bcm283x/Kconfig"
944 source "arch/arm/mach-davinci/Kconfig"
946 source "arch/arm/mach-exynos/Kconfig"
948 source "arch/arm/mach-highbank/Kconfig"
950 source "arch/arm/mach-integrator/Kconfig"
952 source "arch/arm/mach-keystone/Kconfig"
954 source "arch/arm/mach-kirkwood/Kconfig"
956 source "arch/arm/mach-litesom/Kconfig"
958 source "arch/arm/mach-mvebu/Kconfig"
960 source "arch/arm/cpu/armv7/ls102xa/Kconfig"
962 source "arch/arm/cpu/armv7/mx7/Kconfig"
964 source "arch/arm/cpu/armv7/mx6/Kconfig"
966 source "arch/arm/cpu/armv7/mx5/Kconfig"
968 source "arch/arm/mach-omap2/Kconfig"
970 source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
972 source "arch/arm/mach-orion5x/Kconfig"
974 source "arch/arm/mach-rmobile/Kconfig"
976 source "arch/arm/mach-meson/Kconfig"
978 source "arch/arm/mach-rockchip/Kconfig"
980 source "arch/arm/mach-s5pc1xx/Kconfig"
982 source "arch/arm/mach-snapdragon/Kconfig"
984 source "arch/arm/mach-socfpga/Kconfig"
986 source "arch/arm/mach-stm32/Kconfig"
988 source "arch/arm/mach-tegra/Kconfig"
990 source "arch/arm/mach-uniphier/Kconfig"
992 source "arch/arm/mach-zynq/Kconfig"
994 source "arch/arm/cpu/armv7/Kconfig"
996 source "arch/arm/cpu/armv8/zynqmp/Kconfig"
998 source "arch/arm/cpu/armv8/Kconfig"
1000 source "arch/arm/imx-common/Kconfig"
1002 source "board/bosch/shc/Kconfig"
1003 source "board/BuR/brxre1/Kconfig"
1004 source "board/BuR/brppt1/Kconfig"
1005 source "board/CarMediaLab/flea3/Kconfig"
1006 source "board/Marvell/aspenite/Kconfig"
1007 source "board/Marvell/gplugd/Kconfig"
1008 source "board/armadeus/apf27/Kconfig"
1009 source "board/armltd/vexpress/Kconfig"
1010 source "board/armltd/vexpress64/Kconfig"
1011 source "board/bluegiga/apx4devkit/Kconfig"
1012 source "board/broadcom/bcm23550_w1d/Kconfig"
1013 source "board/broadcom/bcm28155_ap/Kconfig"
1014 source "board/broadcom/bcmcygnus/Kconfig"
1015 source "board/broadcom/bcmnsp/Kconfig"
1016 source "board/cavium/thunderx/Kconfig"
1017 source "board/cirrus/edb93xx/Kconfig"
1018 source "board/compulab/cm_t335/Kconfig"
1019 source "board/compulab/cm_t43/Kconfig"
1020 source "board/creative/xfi3/Kconfig"
1021 source "board/denx/m28evk/Kconfig"
1022 source "board/denx/m53evk/Kconfig"
1023 source "board/freescale/ls2080a/Kconfig"
1024 source "board/freescale/ls2080aqds/Kconfig"
1025 source "board/freescale/ls2080ardb/Kconfig"
1026 source "board/freescale/ls1021aqds/Kconfig"
1027 source "board/freescale/ls1043aqds/Kconfig"
1028 source "board/freescale/ls1021atwr/Kconfig"
1029 source "board/freescale/ls1021aiot/Kconfig"
1030 source "board/freescale/ls1046aqds/Kconfig"
1031 source "board/freescale/ls1043ardb/Kconfig"
1032 source "board/freescale/ls1046ardb/Kconfig"
1033 source "board/freescale/ls1012aqds/Kconfig"
1034 source "board/freescale/ls1012ardb/Kconfig"
1035 source "board/freescale/ls1012afrdm/Kconfig"
1036 source "board/freescale/mx23evk/Kconfig"
1037 source "board/freescale/mx25pdk/Kconfig"
1038 source "board/freescale/mx28evk/Kconfig"
1039 source "board/freescale/mx31ads/Kconfig"
1040 source "board/freescale/mx31pdk/Kconfig"
1041 source "board/freescale/mx35pdk/Kconfig"
1042 source "board/freescale/mx51evk/Kconfig"
1043 source "board/freescale/mx53ard/Kconfig"
1044 source "board/freescale/mx53evk/Kconfig"
1045 source "board/freescale/mx53loco/Kconfig"
1046 source "board/freescale/mx53smd/Kconfig"
1047 source "board/freescale/s32v234evb/Kconfig"
1048 source "board/freescale/vf610twr/Kconfig"
1049 source "board/gumstix/pepper/Kconfig"
1050 source "board/h2200/Kconfig"
1051 source "board/hisilicon/hikey/Kconfig"
1052 source "board/imx31_phycore/Kconfig"
1053 source "board/isee/igep0033/Kconfig"
1054 source "board/olimex/mx23_olinuxino/Kconfig"
1055 source "board/phytec/pcm051/Kconfig"
1056 source "board/phytec/pcm052/Kconfig"
1057 source "board/ppcag/bg0900/Kconfig"
1058 source "board/sandisk/sansa_fuze_plus/Kconfig"
1059 source "board/schulercontrol/sc_sps_1/Kconfig"
1060 source "board/siemens/draco/Kconfig"
1061 source "board/siemens/pxm2/Kconfig"
1062 source "board/siemens/rut/Kconfig"
1063 source "board/silica/pengwyn/Kconfig"
1064 source "board/spear/spear300/Kconfig"
1065 source "board/spear/spear310/Kconfig"
1066 source "board/spear/spear320/Kconfig"
1067 source "board/spear/spear600/Kconfig"
1068 source "board/spear/x600/Kconfig"
1069 source "board/st/stv0991/Kconfig"
1070 source "board/sunxi/Kconfig"
1071 source "board/syteco/zmx25/Kconfig"
1072 source "board/tcl/sl50/Kconfig"
1073 source "board/ti/am335x/Kconfig"
1074 source "board/ti/am43xx/Kconfig"
1075 source "board/birdland/bav335x/Kconfig"
1076 source "board/ti/ti814x/Kconfig"
1077 source "board/ti/ti816x/Kconfig"
1078 source "board/timll/devkit3250/Kconfig"
1079 source "board/toradex/colibri_pxa270/Kconfig"
1080 source "board/toradex/colibri_vf/Kconfig"
1081 source "board/technologic/ts4600/Kconfig"
1082 source "board/technologic/ts4800/Kconfig"
1083 source "board/vscom/baltos/Kconfig"
1084 source "board/woodburn/Kconfig"
1085 source "board/work-microwave/work_92105/Kconfig"
1086 source "board/zipitz2/Kconfig"
1088 source "arch/arm/Kconfig.debug"