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
610 select ARCH_EARLY_INIT_R
613 bool "Support cm_t43"
617 bool "Support sunxi (Allwinner) SoCs"
619 select CMD_MMC if MMC
620 select CMD_USB if DISTRO_DEFAULTS
626 select DM_USB if DISTRO_DEFAULTS
627 select OF_BOARD_SETUP
630 select SPL_STACK_R if SUPPORT_SPL
631 select SPL_SYS_MALLOC_SIMPLE if SUPPORT_SPL
633 select USB if DISTRO_DEFAULTS
634 select USB_STORAGE if DISTRO_DEFAULTS
635 select USB_KEYBOARD if DISTRO_DEFAULTS
636 select USE_TINY_PRINTF
639 bool "Support TS4600"
644 bool "Support TS4800"
646 select SYS_FSL_ERRATUM_ESDHC_A001
648 config TARGET_VF610TWR
649 bool "Support vf610twr"
651 select SYS_FSL_ERRATUM_ESDHC111
653 config TARGET_COLIBRI_VF
654 bool "Support Colibri VF50/61"
655 select BOARD_LATE_INIT
657 select SYS_FSL_ERRATUM_ESDHC111
660 bool "Support pcm-052"
662 select SYS_FSL_ERRATUM_ESDHC111
663 select SYS_FSL_ERRATUM_ESDHC135
664 select SYS_FSL_ERRATUM_ESDHC_A001
669 select SYS_FSL_ERRATUM_ESDHC111
670 select SYS_FSL_ERRATUM_ESDHC135
671 select SYS_FSL_ERRATUM_ESDHC_A001
674 bool "Xilinx Zynq Platform"
675 select BOARD_LATE_INIT
679 select SPL_OF_CONTROL if SPL
689 select SPL_SEPARATE_BSS if SPL
694 bool "Support Xilinx ZynqMP Platform"
696 select BOARD_LATE_INIT
708 config TARGET_VEXPRESS64_AEMV8A
709 bool "Support vexpress_aemv8a"
712 config TARGET_VEXPRESS64_BASE_FVP
713 bool "Support Versatile Express ARMv8a FVP BASE model"
717 config TARGET_VEXPRESS64_BASE_FVP_DRAM
718 bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
721 This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
722 the default config to allow the user to load the images directly into
723 DRAM using model parameters rather than by using semi-hosting to load
724 the files from the host filesystem.
726 config TARGET_VEXPRESS64_JUNO
727 bool "Support Versatile Express Juno Development Platform"
730 config TARGET_LS2080A_EMU
731 bool "Support ls2080a_emu"
734 select ARMV8_MULTIENTRY
736 Support for Freescale LS2080A_EMU platform
737 The LS2080A Development System (EMULATOR) is a pre silicon
738 development platform that supports the QorIQ LS2080A
739 Layerscape Architecture processor.
741 config TARGET_LS2080A_SIMU
742 bool "Support ls2080a_simu"
745 select ARMV8_MULTIENTRY
747 Support for Freescale LS2080A_SIMU platform
748 The LS2080A Development System (QDS) is a pre silicon
749 development platform that supports the QorIQ LS2080A
750 Layerscape Architecture processor.
752 config TARGET_LS2080AQDS
753 bool "Support ls2080aqds"
756 select ARMV8_MULTIENTRY
757 select BOARD_LATE_INIT
760 Support for Freescale LS2080AQDS platform
761 The LS2080A Development System (QDS) is a high-performance
762 development platform that supports the QorIQ LS2080A
763 Layerscape Architecture processor.
765 config TARGET_LS2080ARDB
766 bool "Support ls2080ardb"
769 select ARMV8_MULTIENTRY
770 select BOARD_LATE_INIT
773 Support for Freescale LS2080ARDB platform.
774 The LS2080A Reference design board (RDB) is a high-performance
775 development platform that supports the QorIQ LS2080A
776 Layerscape Architecture processor.
779 bool "Support HiKey 96boards Consumer Edition Platform"
786 Support for HiKey 96boards platform. It features a HI6220
787 SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
789 config TARGET_LS1012AQDS
790 bool "Support ls1012aqds"
793 select BOARD_LATE_INIT
795 Support for Freescale LS1012AQDS platform.
796 The LS1012A Development System (QDS) is a high-performance
797 development platform that supports the QorIQ LS1012A
798 Layerscape Architecture processor.
800 config TARGET_LS1012ARDB
801 bool "Support ls1012ardb"
804 select BOARD_LATE_INIT
806 Support for Freescale LS1012ARDB platform.
807 The LS1012A Reference design board (RDB) is a high-performance
808 development platform that supports the QorIQ LS1012A
809 Layerscape Architecture processor.
811 config TARGET_LS1012AFRDM
812 bool "Support ls1012afrdm"
816 Support for Freescale LS1012AFRDM platform.
817 The LS1012A Freedom board (FRDM) is a high-performance
818 development platform that supports the QorIQ LS1012A
819 Layerscape Architecture processor.
821 config TARGET_LS1021AQDS
822 bool "Support ls1021aqds"
823 select BOARD_LATE_INIT
825 select CPU_V7_HAS_NONSEC
826 select CPU_V7_HAS_VIRT
829 select ARCH_SUPPORT_PSCI
830 select LS1_DEEP_SLEEP
833 config TARGET_LS1021ATWR
834 bool "Support ls1021atwr"
835 select BOARD_LATE_INIT
837 select CPU_V7_HAS_NONSEC
838 select CPU_V7_HAS_VIRT
841 select ARCH_SUPPORT_PSCI
842 select LS1_DEEP_SLEEP
844 config TARGET_LS1021AIOT
845 bool "Support ls1021aiot"
846 select BOARD_LATE_INIT
848 select CPU_V7_HAS_NONSEC
849 select CPU_V7_HAS_VIRT
852 select ARCH_SUPPORT_PSCI
854 Support for Freescale LS1021AIOT platform.
855 The LS1021A Freescale board (IOT) is a high-performance
856 development platform that supports the QorIQ LS1021A
857 Layerscape Architecture processor.
859 config TARGET_LS1043AQDS
860 bool "Support ls1043aqds"
863 select ARMV8_MULTIENTRY
864 select BOARD_LATE_INIT
867 Support for Freescale LS1043AQDS platform.
869 config TARGET_LS1043ARDB
870 bool "Support ls1043ardb"
873 select ARMV8_MULTIENTRY
874 select BOARD_LATE_INIT
877 Support for Freescale LS1043ARDB platform.
879 config TARGET_LS1046AQDS
880 bool "Support ls1046aqds"
883 select ARMV8_MULTIENTRY
884 select BOARD_LATE_INIT
886 select DM_SPI_FLASH if DM_SPI
888 Support for Freescale LS1046AQDS platform.
889 The LS1046A Development System (QDS) is a high-performance
890 development platform that supports the QorIQ LS1046A
891 Layerscape Architecture processor.
893 config TARGET_LS1046ARDB
894 bool "Support ls1046ardb"
897 select ARMV8_MULTIENTRY
898 select BOARD_LATE_INIT
900 select DM_SPI_FLASH if DM_SPI
901 select POWER_MC34VR500
903 Support for Freescale LS1046ARDB platform.
904 The LS1046A Reference Design Board (RDB) is a high-performance
905 development platform that supports the QorIQ LS1046A
906 Layerscape Architecture processor.
912 config TARGET_ZIPITZ2
913 bool "Support zipitz2"
916 config TARGET_COLIBRI_PXA270
917 bool "Support colibri_pxa270"
921 bool "Socionext UniPhier SoCs"
922 select BOARD_LATE_INIT
935 select SPL_LIBCOMMON_SUPPORT if SPL
936 select SPL_LIBGENERIC_SUPPORT if SPL
937 select SPL_OF_CONTROL if SPL
938 select SPL_PINCTRL if SPL
941 Support for UniPhier SoC family developed by Socionext Inc.
942 (formerly, System LSI Business Division of Panasonic Corporation)
951 bool "Support Rockchip SoCs"
957 select SPL_SYS_MALLOC_SIMPLE if SPL
969 config TARGET_THUNDERX_88XX
970 bool "Support ThunderX 88xx"
973 select SYS_CACHE_SHIFT_7
977 source "arch/arm/mach-at91/Kconfig"
979 source "arch/arm/mach-bcm283x/Kconfig"
981 source "arch/arm/mach-davinci/Kconfig"
983 source "arch/arm/mach-exynos/Kconfig"
985 source "arch/arm/mach-highbank/Kconfig"
987 source "arch/arm/mach-integrator/Kconfig"
989 source "arch/arm/mach-keystone/Kconfig"
991 source "arch/arm/mach-kirkwood/Kconfig"
993 source "arch/arm/mach-litesom/Kconfig"
995 source "arch/arm/mach-mvebu/Kconfig"
997 source "arch/arm/cpu/armv7/ls102xa/Kconfig"
999 source "arch/arm/cpu/armv7/mx7/Kconfig"
1001 source "arch/arm/cpu/armv7/mx6/Kconfig"
1003 source "arch/arm/cpu/armv7/mx5/Kconfig"
1005 source "arch/arm/mach-omap2/Kconfig"
1007 source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
1009 source "arch/arm/mach-orion5x/Kconfig"
1011 source "arch/arm/mach-rmobile/Kconfig"
1013 source "arch/arm/mach-meson/Kconfig"
1015 source "arch/arm/mach-rockchip/Kconfig"
1017 source "arch/arm/mach-s5pc1xx/Kconfig"
1019 source "arch/arm/mach-snapdragon/Kconfig"
1021 source "arch/arm/mach-socfpga/Kconfig"
1023 source "arch/arm/mach-stm32/Kconfig"
1025 source "arch/arm/mach-tegra/Kconfig"
1027 source "arch/arm/mach-uniphier/Kconfig"
1029 source "arch/arm/mach-zynq/Kconfig"
1031 source "arch/arm/cpu/armv7/Kconfig"
1033 source "arch/arm/cpu/armv8/zynqmp/Kconfig"
1035 source "arch/arm/cpu/armv8/Kconfig"
1037 source "arch/arm/imx-common/Kconfig"
1039 source "board/bosch/shc/Kconfig"
1040 source "board/BuR/brxre1/Kconfig"
1041 source "board/BuR/brppt1/Kconfig"
1042 source "board/CarMediaLab/flea3/Kconfig"
1043 source "board/Marvell/aspenite/Kconfig"
1044 source "board/Marvell/gplugd/Kconfig"
1045 source "board/armadeus/apf27/Kconfig"
1046 source "board/armltd/vexpress/Kconfig"
1047 source "board/armltd/vexpress64/Kconfig"
1048 source "board/bluegiga/apx4devkit/Kconfig"
1049 source "board/broadcom/bcm23550_w1d/Kconfig"
1050 source "board/broadcom/bcm28155_ap/Kconfig"
1051 source "board/broadcom/bcmcygnus/Kconfig"
1052 source "board/broadcom/bcmnsp/Kconfig"
1053 source "board/cavium/thunderx/Kconfig"
1054 source "board/cirrus/edb93xx/Kconfig"
1055 source "board/compulab/cm_t335/Kconfig"
1056 source "board/compulab/cm_t43/Kconfig"
1057 source "board/creative/xfi3/Kconfig"
1058 source "board/denx/m28evk/Kconfig"
1059 source "board/denx/m53evk/Kconfig"
1060 source "board/freescale/ls2080a/Kconfig"
1061 source "board/freescale/ls2080aqds/Kconfig"
1062 source "board/freescale/ls2080ardb/Kconfig"
1063 source "board/freescale/ls1021aqds/Kconfig"
1064 source "board/freescale/ls1043aqds/Kconfig"
1065 source "board/freescale/ls1021atwr/Kconfig"
1066 source "board/freescale/ls1021aiot/Kconfig"
1067 source "board/freescale/ls1046aqds/Kconfig"
1068 source "board/freescale/ls1043ardb/Kconfig"
1069 source "board/freescale/ls1046ardb/Kconfig"
1070 source "board/freescale/ls1012aqds/Kconfig"
1071 source "board/freescale/ls1012ardb/Kconfig"
1072 source "board/freescale/ls1012afrdm/Kconfig"
1073 source "board/freescale/mx23evk/Kconfig"
1074 source "board/freescale/mx25pdk/Kconfig"
1075 source "board/freescale/mx28evk/Kconfig"
1076 source "board/freescale/mx31ads/Kconfig"
1077 source "board/freescale/mx31pdk/Kconfig"
1078 source "board/freescale/mx35pdk/Kconfig"
1079 source "board/freescale/mx51evk/Kconfig"
1080 source "board/freescale/mx53ard/Kconfig"
1081 source "board/freescale/mx53evk/Kconfig"
1082 source "board/freescale/mx53loco/Kconfig"
1083 source "board/freescale/mx53smd/Kconfig"
1084 source "board/freescale/s32v234evb/Kconfig"
1085 source "board/freescale/vf610twr/Kconfig"
1086 source "board/gumstix/pepper/Kconfig"
1087 source "board/h2200/Kconfig"
1088 source "board/hisilicon/hikey/Kconfig"
1089 source "board/imx31_phycore/Kconfig"
1090 source "board/isee/igep0033/Kconfig"
1091 source "board/olimex/mx23_olinuxino/Kconfig"
1092 source "board/phytec/pcm051/Kconfig"
1093 source "board/phytec/pcm052/Kconfig"
1094 source "board/ppcag/bg0900/Kconfig"
1095 source "board/sandisk/sansa_fuze_plus/Kconfig"
1096 source "board/schulercontrol/sc_sps_1/Kconfig"
1097 source "board/siemens/draco/Kconfig"
1098 source "board/siemens/pxm2/Kconfig"
1099 source "board/siemens/rut/Kconfig"
1100 source "board/silica/pengwyn/Kconfig"
1101 source "board/spear/spear300/Kconfig"
1102 source "board/spear/spear310/Kconfig"
1103 source "board/spear/spear320/Kconfig"
1104 source "board/spear/spear600/Kconfig"
1105 source "board/spear/x600/Kconfig"
1106 source "board/st/stv0991/Kconfig"
1107 source "board/sunxi/Kconfig"
1108 source "board/syteco/zmx25/Kconfig"
1109 source "board/tcl/sl50/Kconfig"
1110 source "board/ti/am335x/Kconfig"
1111 source "board/ti/am43xx/Kconfig"
1112 source "board/birdland/bav335x/Kconfig"
1113 source "board/ti/ti814x/Kconfig"
1114 source "board/ti/ti816x/Kconfig"
1115 source "board/timll/devkit3250/Kconfig"
1116 source "board/toradex/colibri_pxa270/Kconfig"
1117 source "board/toradex/colibri_vf/Kconfig"
1118 source "board/technologic/ts4600/Kconfig"
1119 source "board/technologic/ts4800/Kconfig"
1120 source "board/vscom/baltos/Kconfig"
1121 source "board/woodburn/Kconfig"
1122 source "board/work-microwave/work_92105/Kconfig"
1123 source "board/zipitz2/Kconfig"
1125 source "arch/arm/Kconfig.debug"