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"
227 select BOARD_LATE_INIT
232 select BOARD_LATE_INIT
240 config TARGET_APX4DEVKIT
241 bool "Support apx4devkit"
251 bool "Support m28evk"
255 config TARGET_MX23EVK
256 bool "Support mx23evk"
260 config TARGET_MX28EVK
261 bool "Support mx28evk"
265 config TARGET_MX23_OLINUXINO
266 bool "Support mx23_olinuxino"
271 bool "Support bg0900"
275 config TARGET_SANSA_FUZE_PLUS
276 bool "Support sansa_fuze_plus"
280 config TARGET_SC_SPS_1
281 bool "Support sc_sps_1"
289 config TARGET_SPEAR300
290 bool "Support spear300"
293 config TARGET_SPEAR310
294 bool "Support spear310"
297 config TARGET_SPEAR320
298 bool "Support spear320"
301 config TARGET_SPEAR600
302 bool "Support spear600"
305 config TARGET_STV0991
306 bool "Support stv0991"
316 select BOARD_LATE_INIT
320 config TARGET_IMX31_PHYCORE
321 bool "Support imx31_phycore_eet"
324 config TARGET_IMX31_PHYCORE_EET
325 bool "Support imx31_phycore_eet"
326 select BOARD_LATE_INIT
329 config TARGET_MX31ADS
330 bool "Support mx31ads"
333 config TARGET_MX31PDK
334 bool "Support mx31pdk"
335 select BOARD_LATE_INIT
339 config TARGET_WOODBURN
340 bool "Support woodburn"
343 config TARGET_WOODBURN_SD
344 bool "Support woodburn_sd"
352 config TARGET_MX35PDK
353 bool "Support mx35pdk"
354 select BOARD_LATE_INIT
358 bool "Broadcom BCM283X family"
364 config TARGET_VEXPRESS_CA15_TC2
365 bool "Support vexpress_ca15_tc2"
367 select CPU_V7_HAS_NONSEC
368 select CPU_V7_HAS_VIRT
370 config TARGET_VEXPRESS_CA5X2
371 bool "Support vexpress_ca5x2"
374 config TARGET_VEXPRESS_CA9X4
375 bool "Support vexpress_ca9x4"
379 bool "Support BRXRE1"
381 select BOARD_LATE_INIT
384 bool "Support BRPPT1"
386 select BOARD_LATE_INIT
391 select BOARD_LATE_INIT
397 bool "Support thuban"
399 select BOARD_LATE_INIT
404 config TARGET_RASTABAN
405 bool "Support rastaban"
407 select BOARD_LATE_INIT
413 bool "Support etamin"
415 select BOARD_LATE_INIT
423 select BOARD_LATE_INIT
431 select BOARD_LATE_INIT
436 config TARGET_TI814X_EVM
437 bool "Support ti814x_evm"
440 config TARGET_TI816X_EVM
441 bool "Support ti816x_evm"
444 config TARGET_BCM23550_W1D
445 bool "Support bcm23550_w1d"
448 config TARGET_BCM28155_AP
449 bool "Support bcm28155_ap"
452 config TARGET_BCMCYGNUS
453 bool "Support bcmcygnus"
457 bool "Support bcmnsp"
461 bool "Samsung EXYNOS"
471 bool "Samsung S5PC1XX"
479 bool "Calxeda Highbank"
482 config ARCH_INTEGRATOR
483 bool "ARM Ltd. Integrator family"
496 Support for the Meson SoC family developed by Amlogic Inc.,
497 targeted at media players and tablet computers. We currently
498 support the S905 (GXBaby) 64-bit SoC.
503 select SYS_FSL_HAS_SEC if SECURE_BOOT
504 select SYS_FSL_SEC_COMPAT_4
505 select SYS_FSL_SEC_LE
510 select SYS_FSL_HAS_SEC if SECURE_BOOT
511 select SYS_FSL_SEC_COMPAT_4
512 select SYS_FSL_SEC_LE
519 bool "Support m53evk"
523 config TARGET_MX51EVK
524 bool "Support mx51evk"
525 select BOARD_LATE_INIT
528 config TARGET_MX53ARD
529 bool "Support mx53ard"
532 config TARGET_MX53EVK
533 bool "Support mx53evk"
534 select BOARD_LATE_INIT
537 config TARGET_MX53LOCO
538 bool "Support mx53loco"
539 select BOARD_LATE_INIT
542 config TARGET_MX53SMD
543 bool "Support mx53smd"
549 select USE_TINY_PRINTF
554 select USE_TINY_PRINTF
564 Support for AM43xx SOC from Texas Instruments.
565 The AM43xx high performance SOC features a Cortex-A9
566 ARM core, a quad core PRU-ICSS for industrial Ethernet
567 protocols, dual camera support, optional 3D graphics
568 and an optional customer programmable secure boot.
574 Support for AM335x SOC from Texas Instruments.
575 The AM335x high performance SOC features a Cortex-A8
576 ARM core, a dual core PRU-ICSS for industrial Ethernet
577 protocols, optional 3D graphics and an optional customer
578 programmable secure boot.
581 bool "Renesas ARM SoCs"
585 config TARGET_S32V234EVB
586 bool "Support s32v234evb"
588 select SYS_FSL_ERRATUM_ESDHC111
590 config ARCH_SNAPDRAGON
591 bool "Qualcomm Snapdragon SoCs"
601 bool "Altera SOCFPGA family"
605 select SPL_OF_CONTROL
609 select ENABLE_ARM_SOC_BOOT0_HOOK
612 bool "Support cm_t43"
616 bool "Support sunxi (Allwinner) SoCs"
618 select CMD_MMC if MMC
619 select CMD_USB if DISTRO_DEFAULTS
625 select DM_USB if DISTRO_DEFAULTS
626 select OF_BOARD_SETUP
629 select SPL_STACK_R if SUPPORT_SPL
630 select SPL_SYS_MALLOC_SIMPLE if SUPPORT_SPL
632 select USB if DISTRO_DEFAULTS
633 select USB_STORAGE if DISTRO_DEFAULTS
634 select USB_KEYBOARD if DISTRO_DEFAULTS
635 select USE_TINY_PRINTF
638 bool "Support TS4600"
643 bool "Support TS4800"
645 select SYS_FSL_ERRATUM_ESDHC_A001
647 config TARGET_VF610TWR
648 bool "Support vf610twr"
650 select SYS_FSL_ERRATUM_ESDHC111
652 config TARGET_COLIBRI_VF
653 bool "Support Colibri VF50/61"
654 select BOARD_LATE_INIT
656 select SYS_FSL_ERRATUM_ESDHC111
659 bool "Support pcm-052"
661 select SYS_FSL_ERRATUM_ESDHC111
662 select SYS_FSL_ERRATUM_ESDHC135
663 select SYS_FSL_ERRATUM_ESDHC_A001
668 select SYS_FSL_ERRATUM_ESDHC111
669 select SYS_FSL_ERRATUM_ESDHC135
670 select SYS_FSL_ERRATUM_ESDHC_A001
673 bool "Xilinx Zynq Platform"
674 select BOARD_LATE_INIT
678 select SPL_OF_CONTROL if SPL
688 select SPL_SEPARATE_BSS if SPL
693 bool "Support Xilinx ZynqMP Platform"
695 select BOARD_LATE_INIT
707 config TARGET_VEXPRESS64_AEMV8A
708 bool "Support vexpress_aemv8a"
711 config TARGET_VEXPRESS64_BASE_FVP
712 bool "Support Versatile Express ARMv8a FVP BASE model"
716 config TARGET_VEXPRESS64_BASE_FVP_DRAM
717 bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
720 This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
721 the default config to allow the user to load the images directly into
722 DRAM using model parameters rather than by using semi-hosting to load
723 the files from the host filesystem.
725 config TARGET_VEXPRESS64_JUNO
726 bool "Support Versatile Express Juno Development Platform"
729 config TARGET_LS2080A_EMU
730 bool "Support ls2080a_emu"
733 select ARMV8_MULTIENTRY
735 Support for Freescale LS2080A_EMU platform
736 The LS2080A Development System (EMULATOR) is a pre silicon
737 development platform that supports the QorIQ LS2080A
738 Layerscape Architecture processor.
740 config TARGET_LS2080A_SIMU
741 bool "Support ls2080a_simu"
744 select ARMV8_MULTIENTRY
746 Support for Freescale LS2080A_SIMU platform
747 The LS2080A Development System (QDS) is a pre silicon
748 development platform that supports the QorIQ LS2080A
749 Layerscape Architecture processor.
751 config TARGET_LS2080AQDS
752 bool "Support ls2080aqds"
755 select ARMV8_MULTIENTRY
756 select BOARD_LATE_INIT
759 Support for Freescale LS2080AQDS platform
760 The LS2080A Development System (QDS) is a high-performance
761 development platform that supports the QorIQ LS2080A
762 Layerscape Architecture processor.
764 config TARGET_LS2080ARDB
765 bool "Support ls2080ardb"
768 select ARMV8_MULTIENTRY
769 select BOARD_LATE_INIT
772 Support for Freescale LS2080ARDB platform.
773 The LS2080A Reference design board (RDB) is a high-performance
774 development platform that supports the QorIQ LS2080A
775 Layerscape Architecture processor.
778 bool "Support HiKey 96boards Consumer Edition Platform"
785 Support for HiKey 96boards platform. It features a HI6220
786 SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
788 config TARGET_LS1012AQDS
789 bool "Support ls1012aqds"
792 select BOARD_LATE_INIT
794 Support for Freescale LS1012AQDS platform.
795 The LS1012A Development System (QDS) is a high-performance
796 development platform that supports the QorIQ LS1012A
797 Layerscape Architecture processor.
799 config TARGET_LS1012ARDB
800 bool "Support ls1012ardb"
803 select BOARD_LATE_INIT
805 Support for Freescale LS1012ARDB platform.
806 The LS1012A Reference design board (RDB) is a high-performance
807 development platform that supports the QorIQ LS1012A
808 Layerscape Architecture processor.
810 config TARGET_LS1012AFRDM
811 bool "Support ls1012afrdm"
815 Support for Freescale LS1012AFRDM platform.
816 The LS1012A Freedom board (FRDM) is a high-performance
817 development platform that supports the QorIQ LS1012A
818 Layerscape Architecture processor.
820 config TARGET_LS1021AQDS
821 bool "Support ls1021aqds"
822 select BOARD_LATE_INIT
824 select CPU_V7_HAS_NONSEC
825 select CPU_V7_HAS_VIRT
828 select ARCH_SUPPORT_PSCI
829 select LS1_DEEP_SLEEP
832 config TARGET_LS1021ATWR
833 bool "Support ls1021atwr"
834 select BOARD_LATE_INIT
836 select CPU_V7_HAS_NONSEC
837 select CPU_V7_HAS_VIRT
840 select ARCH_SUPPORT_PSCI
841 select LS1_DEEP_SLEEP
843 config TARGET_LS1021AIOT
844 bool "Support ls1021aiot"
845 select BOARD_LATE_INIT
847 select CPU_V7_HAS_NONSEC
848 select CPU_V7_HAS_VIRT
851 select ARCH_SUPPORT_PSCI
853 Support for Freescale LS1021AIOT platform.
854 The LS1021A Freescale board (IOT) is a high-performance
855 development platform that supports the QorIQ LS1021A
856 Layerscape Architecture processor.
858 config TARGET_LS1043AQDS
859 bool "Support ls1043aqds"
862 select ARMV8_MULTIENTRY
863 select BOARD_LATE_INIT
866 Support for Freescale LS1043AQDS platform.
868 config TARGET_LS1043ARDB
869 bool "Support ls1043ardb"
872 select ARMV8_MULTIENTRY
873 select BOARD_LATE_INIT
876 Support for Freescale LS1043ARDB platform.
878 config TARGET_LS1046AQDS
879 bool "Support ls1046aqds"
882 select ARMV8_MULTIENTRY
883 select BOARD_LATE_INIT
885 select DM_SPI_FLASH if DM_SPI
887 Support for Freescale LS1046AQDS platform.
888 The LS1046A Development System (QDS) is a high-performance
889 development platform that supports the QorIQ LS1046A
890 Layerscape Architecture processor.
892 config TARGET_LS1046ARDB
893 bool "Support ls1046ardb"
896 select ARMV8_MULTIENTRY
897 select BOARD_LATE_INIT
899 select DM_SPI_FLASH if DM_SPI
900 select POWER_MC34VR500
902 Support for Freescale LS1046ARDB platform.
903 The LS1046A Reference Design Board (RDB) is a high-performance
904 development platform that supports the QorIQ LS1046A
905 Layerscape Architecture processor.
911 config TARGET_ZIPITZ2
912 bool "Support zipitz2"
915 config TARGET_COLIBRI_PXA270
916 bool "Support colibri_pxa270"
920 bool "Socionext UniPhier SoCs"
921 select BOARD_LATE_INIT
934 select SPL_LIBCOMMON_SUPPORT if SPL
935 select SPL_LIBGENERIC_SUPPORT if SPL
936 select SPL_OF_CONTROL if SPL
937 select SPL_PINCTRL if SPL
940 Support for UniPhier SoC family developed by Socionext Inc.
941 (formerly, System LSI Business Division of Panasonic Corporation)
950 bool "Support Rockchip SoCs"
956 select SPL_SYS_MALLOC_SIMPLE if SPL
968 config TARGET_THUNDERX_88XX
969 bool "Support ThunderX 88xx"
972 select SYS_CACHE_SHIFT_7
976 source "arch/arm/mach-at91/Kconfig"
978 source "arch/arm/mach-bcm283x/Kconfig"
980 source "arch/arm/mach-davinci/Kconfig"
982 source "arch/arm/mach-exynos/Kconfig"
984 source "arch/arm/mach-highbank/Kconfig"
986 source "arch/arm/mach-integrator/Kconfig"
988 source "arch/arm/mach-keystone/Kconfig"
990 source "arch/arm/mach-kirkwood/Kconfig"
992 source "arch/arm/mach-litesom/Kconfig"
994 source "arch/arm/mach-mvebu/Kconfig"
996 source "arch/arm/cpu/armv7/ls102xa/Kconfig"
998 source "arch/arm/cpu/armv7/mx7/Kconfig"
1000 source "arch/arm/cpu/armv7/mx6/Kconfig"
1002 source "arch/arm/cpu/armv7/mx5/Kconfig"
1004 source "arch/arm/mach-omap2/Kconfig"
1006 source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
1008 source "arch/arm/mach-orion5x/Kconfig"
1010 source "arch/arm/mach-rmobile/Kconfig"
1012 source "arch/arm/mach-meson/Kconfig"
1014 source "arch/arm/mach-rockchip/Kconfig"
1016 source "arch/arm/mach-s5pc1xx/Kconfig"
1018 source "arch/arm/mach-snapdragon/Kconfig"
1020 source "arch/arm/mach-socfpga/Kconfig"
1022 source "arch/arm/mach-stm32/Kconfig"
1024 source "arch/arm/mach-tegra/Kconfig"
1026 source "arch/arm/mach-uniphier/Kconfig"
1028 source "arch/arm/mach-zynq/Kconfig"
1030 source "arch/arm/cpu/armv7/Kconfig"
1032 source "arch/arm/cpu/armv8/zynqmp/Kconfig"
1034 source "arch/arm/cpu/armv8/Kconfig"
1036 source "arch/arm/imx-common/Kconfig"
1038 source "board/bosch/shc/Kconfig"
1039 source "board/BuR/brxre1/Kconfig"
1040 source "board/BuR/brppt1/Kconfig"
1041 source "board/CarMediaLab/flea3/Kconfig"
1042 source "board/Marvell/aspenite/Kconfig"
1043 source "board/Marvell/gplugd/Kconfig"
1044 source "board/armadeus/apf27/Kconfig"
1045 source "board/armltd/vexpress/Kconfig"
1046 source "board/armltd/vexpress64/Kconfig"
1047 source "board/bluegiga/apx4devkit/Kconfig"
1048 source "board/broadcom/bcm23550_w1d/Kconfig"
1049 source "board/broadcom/bcm28155_ap/Kconfig"
1050 source "board/broadcom/bcmcygnus/Kconfig"
1051 source "board/broadcom/bcmnsp/Kconfig"
1052 source "board/cavium/thunderx/Kconfig"
1053 source "board/cirrus/edb93xx/Kconfig"
1054 source "board/compulab/cm_t335/Kconfig"
1055 source "board/compulab/cm_t43/Kconfig"
1056 source "board/creative/xfi3/Kconfig"
1057 source "board/denx/m28evk/Kconfig"
1058 source "board/denx/m53evk/Kconfig"
1059 source "board/freescale/ls2080a/Kconfig"
1060 source "board/freescale/ls2080aqds/Kconfig"
1061 source "board/freescale/ls2080ardb/Kconfig"
1062 source "board/freescale/ls1021aqds/Kconfig"
1063 source "board/freescale/ls1043aqds/Kconfig"
1064 source "board/freescale/ls1021atwr/Kconfig"
1065 source "board/freescale/ls1021aiot/Kconfig"
1066 source "board/freescale/ls1046aqds/Kconfig"
1067 source "board/freescale/ls1043ardb/Kconfig"
1068 source "board/freescale/ls1046ardb/Kconfig"
1069 source "board/freescale/ls1012aqds/Kconfig"
1070 source "board/freescale/ls1012ardb/Kconfig"
1071 source "board/freescale/ls1012afrdm/Kconfig"
1072 source "board/freescale/mx23evk/Kconfig"
1073 source "board/freescale/mx25pdk/Kconfig"
1074 source "board/freescale/mx28evk/Kconfig"
1075 source "board/freescale/mx31ads/Kconfig"
1076 source "board/freescale/mx31pdk/Kconfig"
1077 source "board/freescale/mx35pdk/Kconfig"
1078 source "board/freescale/mx51evk/Kconfig"
1079 source "board/freescale/mx53ard/Kconfig"
1080 source "board/freescale/mx53evk/Kconfig"
1081 source "board/freescale/mx53loco/Kconfig"
1082 source "board/freescale/mx53smd/Kconfig"
1083 source "board/freescale/s32v234evb/Kconfig"
1084 source "board/freescale/vf610twr/Kconfig"
1085 source "board/gumstix/pepper/Kconfig"
1086 source "board/h2200/Kconfig"
1087 source "board/hisilicon/hikey/Kconfig"
1088 source "board/imx31_phycore/Kconfig"
1089 source "board/isee/igep0033/Kconfig"
1090 source "board/olimex/mx23_olinuxino/Kconfig"
1091 source "board/phytec/pcm051/Kconfig"
1092 source "board/phytec/pcm052/Kconfig"
1093 source "board/ppcag/bg0900/Kconfig"
1094 source "board/sandisk/sansa_fuze_plus/Kconfig"
1095 source "board/schulercontrol/sc_sps_1/Kconfig"
1096 source "board/siemens/draco/Kconfig"
1097 source "board/siemens/pxm2/Kconfig"
1098 source "board/siemens/rut/Kconfig"
1099 source "board/silica/pengwyn/Kconfig"
1100 source "board/spear/spear300/Kconfig"
1101 source "board/spear/spear310/Kconfig"
1102 source "board/spear/spear320/Kconfig"
1103 source "board/spear/spear600/Kconfig"
1104 source "board/spear/x600/Kconfig"
1105 source "board/st/stv0991/Kconfig"
1106 source "board/sunxi/Kconfig"
1107 source "board/syteco/zmx25/Kconfig"
1108 source "board/tcl/sl50/Kconfig"
1109 source "board/ti/am335x/Kconfig"
1110 source "board/ti/am43xx/Kconfig"
1111 source "board/birdland/bav335x/Kconfig"
1112 source "board/ti/ti814x/Kconfig"
1113 source "board/ti/ti816x/Kconfig"
1114 source "board/timll/devkit3250/Kconfig"
1115 source "board/toradex/colibri_pxa270/Kconfig"
1116 source "board/toradex/colibri_vf/Kconfig"
1117 source "board/technologic/ts4600/Kconfig"
1118 source "board/technologic/ts4800/Kconfig"
1119 source "board/vscom/baltos/Kconfig"
1120 source "board/woodburn/Kconfig"
1121 source "board/work-microwave/work_92105/Kconfig"
1122 source "board/zipitz2/Kconfig"
1124 source "arch/arm/Kconfig.debug"