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_eet"
321 config TARGET_IMX31_PHYCORE_EET
322 bool "Support imx31_phycore_eet"
325 config TARGET_MX31ADS
326 bool "Support mx31ads"
329 config TARGET_MX31PDK
330 bool "Support mx31pdk"
334 config TARGET_WOODBURN
335 bool "Support woodburn"
338 config TARGET_WOODBURN_SD
339 bool "Support woodburn_sd"
347 config TARGET_MX35PDK
348 bool "Support mx35pdk"
352 bool "Broadcom BCM283X family"
358 config TARGET_VEXPRESS_CA15_TC2
359 bool "Support vexpress_ca15_tc2"
361 select CPU_V7_HAS_NONSEC
362 select CPU_V7_HAS_VIRT
364 config TARGET_VEXPRESS_CA5X2
365 bool "Support vexpress_ca5x2"
368 config TARGET_VEXPRESS_CA9X4
369 bool "Support vexpress_ca9x4"
373 bool "Support BRXRE1"
377 bool "Support BRPPT1"
388 bool "Support thuban"
394 config TARGET_RASTABAN
395 bool "Support rastaban"
402 bool "Support etamin"
422 config TARGET_TI814X_EVM
423 bool "Support ti814x_evm"
426 config TARGET_TI816X_EVM
427 bool "Support ti816x_evm"
430 config TARGET_BCM23550_W1D
431 bool "Support bcm23550_w1d"
434 config TARGET_BCM28155_AP
435 bool "Support bcm28155_ap"
438 config TARGET_BCMCYGNUS
439 bool "Support bcmcygnus"
443 bool "Support bcmnsp"
447 bool "Samsung EXYNOS"
457 bool "Samsung S5PC1XX"
465 bool "Calxeda Highbank"
468 config ARCH_INTEGRATOR
469 bool "ARM Ltd. Integrator family"
482 Support for the Meson SoC family developed by Amlogic Inc.,
483 targeted at media players and tablet computers. We currently
484 support the S905 (GXBaby) 64-bit SoC.
489 select SYS_FSL_HAS_SEC if SECURE_BOOT
490 select SYS_FSL_SEC_COMPAT_4
491 select SYS_FSL_SEC_LE
496 select SYS_FSL_HAS_SEC if SECURE_BOOT
497 select SYS_FSL_SEC_COMPAT_4
498 select SYS_FSL_SEC_LE
505 bool "Support m53evk"
509 config TARGET_MX51EVK
510 bool "Support mx51evk"
513 config TARGET_MX53ARD
514 bool "Support mx53ard"
517 config TARGET_MX53EVK
518 bool "Support mx53evk"
521 config TARGET_MX53LOCO
522 bool "Support mx53loco"
525 config TARGET_MX53SMD
526 bool "Support mx53smd"
532 select USE_TINY_PRINTF
537 select USE_TINY_PRINTF
547 Support for AM43xx SOC from Texas Instruments.
548 The AM43xx high performance SOC features a Cortex-A9
549 ARM core, a quad core PRU-ICSS for industrial Ethernet
550 protocols, dual camera support, optional 3D graphics
551 and an optional customer programmable secure boot.
557 Support for AM335x SOC from Texas Instruments.
558 The AM335x high performance SOC features a Cortex-A8
559 ARM core, a dual core PRU-ICSS for industrial Ethernet
560 protocols, optional 3D graphics and an optional customer
561 programmable secure boot.
564 bool "Renesas ARM SoCs"
568 config TARGET_S32V234EVB
569 bool "Support s32v234evb"
571 select SYS_FSL_ERRATUM_ESDHC111
573 config ARCH_SNAPDRAGON
574 bool "Qualcomm Snapdragon SoCs"
584 bool "Altera SOCFPGA family"
588 select SPL_OF_CONTROL
592 select ENABLE_ARM_SOC_BOOT0_HOOK
595 bool "Support cm_t43"
599 bool "Support sunxi (Allwinner) SoCs"
601 select CMD_MMC if MMC
602 select CMD_USB if DISTRO_DEFAULTS
608 select DM_USB if DISTRO_DEFAULTS
609 select OF_BOARD_SETUP
612 select SPL_STACK_R if SUPPORT_SPL
613 select SPL_SYS_MALLOC_SIMPLE if SUPPORT_SPL
615 select USB if DISTRO_DEFAULTS
616 select USB_STORAGE if DISTRO_DEFAULTS
617 select USB_KEYBOARD if DISTRO_DEFAULTS
618 select USE_TINY_PRINTF
621 bool "Support TS4600"
626 bool "Support TS4800"
628 select SYS_FSL_ERRATUM_ESDHC_A001
630 config TARGET_VF610TWR
631 bool "Support vf610twr"
633 select SYS_FSL_ERRATUM_ESDHC111
635 config TARGET_COLIBRI_VF
636 bool "Support Colibri VF50/61"
638 select SYS_FSL_ERRATUM_ESDHC111
641 bool "Support pcm-052"
643 select SYS_FSL_ERRATUM_ESDHC111
644 select SYS_FSL_ERRATUM_ESDHC135
645 select SYS_FSL_ERRATUM_ESDHC_A001
650 select SYS_FSL_ERRATUM_ESDHC111
651 select SYS_FSL_ERRATUM_ESDHC135
652 select SYS_FSL_ERRATUM_ESDHC_A001
655 bool "Xilinx Zynq Platform"
659 select SPL_OF_CONTROL if SPL
669 select SPL_SEPARATE_BSS if SPL
674 bool "Support Xilinx ZynqMP Platform"
687 config TARGET_VEXPRESS64_AEMV8A
688 bool "Support vexpress_aemv8a"
691 config TARGET_VEXPRESS64_BASE_FVP
692 bool "Support Versatile Express ARMv8a FVP BASE model"
696 config TARGET_VEXPRESS64_BASE_FVP_DRAM
697 bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
700 This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
701 the default config to allow the user to load the images directly into
702 DRAM using model parameters rather than by using semi-hosting to load
703 the files from the host filesystem.
705 config TARGET_VEXPRESS64_JUNO
706 bool "Support Versatile Express Juno Development Platform"
709 config TARGET_LS2080A_EMU
710 bool "Support ls2080a_emu"
713 select ARMV8_MULTIENTRY
715 Support for Freescale LS2080A_EMU platform
716 The LS2080A Development System (EMULATOR) is a pre silicon
717 development platform that supports the QorIQ LS2080A
718 Layerscape Architecture processor.
720 config TARGET_LS2080A_SIMU
721 bool "Support ls2080a_simu"
724 select ARMV8_MULTIENTRY
726 Support for Freescale LS2080A_SIMU platform
727 The LS2080A Development System (QDS) is a pre silicon
728 development platform that supports the QorIQ LS2080A
729 Layerscape Architecture processor.
731 config TARGET_LS2080AQDS
732 bool "Support ls2080aqds"
735 select ARMV8_MULTIENTRY
738 Support for Freescale LS2080AQDS platform
739 The LS2080A Development System (QDS) is a high-performance
740 development platform that supports the QorIQ LS2080A
741 Layerscape Architecture processor.
743 config TARGET_LS2080ARDB
744 bool "Support ls2080ardb"
747 select ARMV8_MULTIENTRY
750 Support for Freescale LS2080ARDB platform.
751 The LS2080A Reference design board (RDB) is a high-performance
752 development platform that supports the QorIQ LS2080A
753 Layerscape Architecture processor.
756 bool "Support HiKey 96boards Consumer Edition Platform"
763 Support for HiKey 96boards platform. It features a HI6220
764 SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
766 config TARGET_LS1012AQDS
767 bool "Support ls1012aqds"
771 Support for Freescale LS1012AQDS platform.
772 The LS1012A Development System (QDS) is a high-performance
773 development platform that supports the QorIQ LS1012A
774 Layerscape Architecture processor.
776 config TARGET_LS1012ARDB
777 bool "Support ls1012ardb"
781 Support for Freescale LS1012ARDB platform.
782 The LS1012A Reference design board (RDB) is a high-performance
783 development platform that supports the QorIQ LS1012A
784 Layerscape Architecture processor.
786 config TARGET_LS1012AFRDM
787 bool "Support ls1012afrdm"
791 Support for Freescale LS1012AFRDM platform.
792 The LS1012A Freedom board (FRDM) is a high-performance
793 development platform that supports the QorIQ LS1012A
794 Layerscape Architecture processor.
796 config TARGET_LS1021AQDS
797 bool "Support ls1021aqds"
799 select CPU_V7_HAS_NONSEC
800 select CPU_V7_HAS_VIRT
803 select ARCH_SUPPORT_PSCI
804 select LS1_DEEP_SLEEP
807 config TARGET_LS1021ATWR
808 bool "Support ls1021atwr"
810 select CPU_V7_HAS_NONSEC
811 select CPU_V7_HAS_VIRT
814 select ARCH_SUPPORT_PSCI
815 select LS1_DEEP_SLEEP
817 config TARGET_LS1021AIOT
818 bool "Support ls1021aiot"
820 select CPU_V7_HAS_NONSEC
821 select CPU_V7_HAS_VIRT
824 select ARCH_SUPPORT_PSCI
826 Support for Freescale LS1021AIOT platform.
827 The LS1021A Freescale board (IOT) is a high-performance
828 development platform that supports the QorIQ LS1021A
829 Layerscape Architecture processor.
831 config TARGET_LS1043AQDS
832 bool "Support ls1043aqds"
835 select ARMV8_MULTIENTRY
838 Support for Freescale LS1043AQDS platform.
840 config TARGET_LS1043ARDB
841 bool "Support ls1043ardb"
844 select ARMV8_MULTIENTRY
847 Support for Freescale LS1043ARDB platform.
849 config TARGET_LS1046AQDS
850 bool "Support ls1046aqds"
853 select ARMV8_MULTIENTRY
855 select DM_SPI_FLASH if DM_SPI
857 Support for Freescale LS1046AQDS platform.
858 The LS1046A Development System (QDS) is a high-performance
859 development platform that supports the QorIQ LS1046A
860 Layerscape Architecture processor.
862 config TARGET_LS1046ARDB
863 bool "Support ls1046ardb"
866 select ARMV8_MULTIENTRY
868 select DM_SPI_FLASH if DM_SPI
869 select POWER_MC34VR500
871 Support for Freescale LS1046ARDB platform.
872 The LS1046A Reference Design Board (RDB) is a high-performance
873 development platform that supports the QorIQ LS1046A
874 Layerscape Architecture processor.
880 config TARGET_ZIPITZ2
881 bool "Support zipitz2"
884 config TARGET_COLIBRI_PXA270
885 bool "Support colibri_pxa270"
889 bool "Socionext UniPhier SoCs"
902 select SPL_LIBCOMMON_SUPPORT if SPL
903 select SPL_LIBGENERIC_SUPPORT if SPL
904 select SPL_OF_CONTROL if SPL
905 select SPL_PINCTRL if SPL
908 Support for UniPhier SoC family developed by Socionext Inc.
909 (formerly, System LSI Business Division of Panasonic Corporation)
918 bool "Support Rockchip SoCs"
924 select SPL_SYS_MALLOC_SIMPLE if SPL
936 config TARGET_THUNDERX_88XX
937 bool "Support ThunderX 88xx"
940 select SYS_CACHE_SHIFT_7
944 source "arch/arm/mach-at91/Kconfig"
946 source "arch/arm/mach-bcm283x/Kconfig"
948 source "arch/arm/mach-davinci/Kconfig"
950 source "arch/arm/mach-exynos/Kconfig"
952 source "arch/arm/mach-highbank/Kconfig"
954 source "arch/arm/mach-integrator/Kconfig"
956 source "arch/arm/mach-keystone/Kconfig"
958 source "arch/arm/mach-kirkwood/Kconfig"
960 source "arch/arm/mach-litesom/Kconfig"
962 source "arch/arm/mach-mvebu/Kconfig"
964 source "arch/arm/cpu/armv7/ls102xa/Kconfig"
966 source "arch/arm/cpu/armv7/mx7/Kconfig"
968 source "arch/arm/cpu/armv7/mx6/Kconfig"
970 source "arch/arm/cpu/armv7/mx5/Kconfig"
972 source "arch/arm/mach-omap2/Kconfig"
974 source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
976 source "arch/arm/mach-orion5x/Kconfig"
978 source "arch/arm/mach-rmobile/Kconfig"
980 source "arch/arm/mach-meson/Kconfig"
982 source "arch/arm/mach-rockchip/Kconfig"
984 source "arch/arm/mach-s5pc1xx/Kconfig"
986 source "arch/arm/mach-snapdragon/Kconfig"
988 source "arch/arm/mach-socfpga/Kconfig"
990 source "arch/arm/mach-stm32/Kconfig"
992 source "arch/arm/mach-tegra/Kconfig"
994 source "arch/arm/mach-uniphier/Kconfig"
996 source "arch/arm/mach-zynq/Kconfig"
998 source "arch/arm/cpu/armv7/Kconfig"
1000 source "arch/arm/cpu/armv8/zynqmp/Kconfig"
1002 source "arch/arm/cpu/armv8/Kconfig"
1004 source "arch/arm/imx-common/Kconfig"
1006 source "board/bosch/shc/Kconfig"
1007 source "board/BuR/brxre1/Kconfig"
1008 source "board/BuR/brppt1/Kconfig"
1009 source "board/CarMediaLab/flea3/Kconfig"
1010 source "board/Marvell/aspenite/Kconfig"
1011 source "board/Marvell/gplugd/Kconfig"
1012 source "board/armadeus/apf27/Kconfig"
1013 source "board/armltd/vexpress/Kconfig"
1014 source "board/armltd/vexpress64/Kconfig"
1015 source "board/bluegiga/apx4devkit/Kconfig"
1016 source "board/broadcom/bcm23550_w1d/Kconfig"
1017 source "board/broadcom/bcm28155_ap/Kconfig"
1018 source "board/broadcom/bcmcygnus/Kconfig"
1019 source "board/broadcom/bcmnsp/Kconfig"
1020 source "board/cavium/thunderx/Kconfig"
1021 source "board/cirrus/edb93xx/Kconfig"
1022 source "board/compulab/cm_t335/Kconfig"
1023 source "board/compulab/cm_t43/Kconfig"
1024 source "board/creative/xfi3/Kconfig"
1025 source "board/denx/m28evk/Kconfig"
1026 source "board/denx/m53evk/Kconfig"
1027 source "board/freescale/ls2080a/Kconfig"
1028 source "board/freescale/ls2080aqds/Kconfig"
1029 source "board/freescale/ls2080ardb/Kconfig"
1030 source "board/freescale/ls1021aqds/Kconfig"
1031 source "board/freescale/ls1043aqds/Kconfig"
1032 source "board/freescale/ls1021atwr/Kconfig"
1033 source "board/freescale/ls1021aiot/Kconfig"
1034 source "board/freescale/ls1046aqds/Kconfig"
1035 source "board/freescale/ls1043ardb/Kconfig"
1036 source "board/freescale/ls1046ardb/Kconfig"
1037 source "board/freescale/ls1012aqds/Kconfig"
1038 source "board/freescale/ls1012ardb/Kconfig"
1039 source "board/freescale/ls1012afrdm/Kconfig"
1040 source "board/freescale/mx23evk/Kconfig"
1041 source "board/freescale/mx25pdk/Kconfig"
1042 source "board/freescale/mx28evk/Kconfig"
1043 source "board/freescale/mx31ads/Kconfig"
1044 source "board/freescale/mx31pdk/Kconfig"
1045 source "board/freescale/mx35pdk/Kconfig"
1046 source "board/freescale/mx51evk/Kconfig"
1047 source "board/freescale/mx53ard/Kconfig"
1048 source "board/freescale/mx53evk/Kconfig"
1049 source "board/freescale/mx53loco/Kconfig"
1050 source "board/freescale/mx53smd/Kconfig"
1051 source "board/freescale/s32v234evb/Kconfig"
1052 source "board/freescale/vf610twr/Kconfig"
1053 source "board/gumstix/pepper/Kconfig"
1054 source "board/h2200/Kconfig"
1055 source "board/hisilicon/hikey/Kconfig"
1056 source "board/imx31_phycore/Kconfig"
1057 source "board/isee/igep0033/Kconfig"
1058 source "board/olimex/mx23_olinuxino/Kconfig"
1059 source "board/phytec/pcm051/Kconfig"
1060 source "board/phytec/pcm052/Kconfig"
1061 source "board/ppcag/bg0900/Kconfig"
1062 source "board/sandisk/sansa_fuze_plus/Kconfig"
1063 source "board/schulercontrol/sc_sps_1/Kconfig"
1064 source "board/siemens/draco/Kconfig"
1065 source "board/siemens/pxm2/Kconfig"
1066 source "board/siemens/rut/Kconfig"
1067 source "board/silica/pengwyn/Kconfig"
1068 source "board/spear/spear300/Kconfig"
1069 source "board/spear/spear310/Kconfig"
1070 source "board/spear/spear320/Kconfig"
1071 source "board/spear/spear600/Kconfig"
1072 source "board/spear/x600/Kconfig"
1073 source "board/st/stv0991/Kconfig"
1074 source "board/sunxi/Kconfig"
1075 source "board/syteco/zmx25/Kconfig"
1076 source "board/tcl/sl50/Kconfig"
1077 source "board/ti/am335x/Kconfig"
1078 source "board/ti/am43xx/Kconfig"
1079 source "board/birdland/bav335x/Kconfig"
1080 source "board/ti/ti814x/Kconfig"
1081 source "board/ti/ti816x/Kconfig"
1082 source "board/timll/devkit3250/Kconfig"
1083 source "board/toradex/colibri_pxa270/Kconfig"
1084 source "board/toradex/colibri_vf/Kconfig"
1085 source "board/technologic/ts4600/Kconfig"
1086 source "board/technologic/ts4800/Kconfig"
1087 source "board/vscom/baltos/Kconfig"
1088 source "board/woodburn/Kconfig"
1089 source "board/work-microwave/work_92105/Kconfig"
1090 source "board/zipitz2/Kconfig"
1092 source "arch/arm/Kconfig.debug"