xref: /openbmc/u-boot/arch/arm/Kconfig (revision 1d6c54ecb39b8591a98f02f9b47af225ff07cd0b)
1dd84058dSMasahiro Yamadamenu "ARM architecture"
2dd84058dSMasahiro Yamada	depends on ARM
3dd84058dSMasahiro Yamada
4dd84058dSMasahiro Yamadaconfig SYS_ARCH
5dd84058dSMasahiro Yamada	default "arm"
6dd84058dSMasahiro Yamada
7016a954eSMasahiro Yamadaconfig ARM64
8016a954eSMasahiro Yamada	bool
9bb6b142fSMasahiro Yamada	select PHYS_64BIT
10067716baSTom Rini	select SYS_CACHE_SHIFT_6
11016a954eSMasahiro Yamada
1249e93875SStephen Warrenif ARM64
1349e93875SStephen Warrenconfig POSITION_INDEPENDENT
1449e93875SStephen Warren	bool "Generate position-independent pre-relocation code"
1549e93875SStephen Warren	help
1649e93875SStephen Warren	  U-Boot expects to be linked to a specific hard-coded address, and to
1749e93875SStephen Warren	  be loaded to and run from that address. This option lifts that
1849e93875SStephen Warren	  restriction, thus allowing the code to be loaded to and executed
1949e93875SStephen Warren	  from almost any address. This logic relies on the relocation
2049e93875SStephen Warren	  information that is embedded into the binary to support U-Boot
2149e93875SStephen Warren	  relocating itself to the top-of-RAM later during execution.
22e6c90448SStephen Warren
23e6c90448SStephen Warrenconfig SYS_INIT_SP_BSS_OFFSET
24e6c90448SStephen Warren	int
25e6c90448SStephen Warren	help
26e6c90448SStephen Warren	  U-Boot typically uses a hard-coded value for the stack pointer
27e6c90448SStephen Warren	  before relocation. Define this option to instead calculate the
28e6c90448SStephen Warren	  initial SP at run-time. This is useful to avoid hard-coding addresses
29e6c90448SStephen Warren	  into U-Boot, so that can be loaded and executed at arbitrary
30e6c90448SStephen Warren	  addresses and thus avoid using arbitrary addresses at runtime. This
31e6c90448SStephen Warren	  option's value is the offset added to &_bss_start in order to
32e6c90448SStephen Warren	  calculate the stack pointer. This offset should be large enough so
33e6c90448SStephen Warren	  that the early malloc region, global data (gd), and early stack usage
34e6c90448SStephen Warren	  do not overlap any appended DTB.
358163faf9SStephen Warren
368163faf9SStephen Warrenconfig LINUX_KERNEL_IMAGE_HEADER
378163faf9SStephen Warren	bool
388163faf9SStephen Warren	help
398163faf9SStephen Warren	  Place a Linux kernel image header at the start of the U-Boot binary.
408163faf9SStephen Warren	  The format of the header is described in the Linux kernel source at
418163faf9SStephen Warren	  Documentation/arm64/booting.txt. This feature is useful since the
428163faf9SStephen Warren	  image header reports the amount of memory (BSS and similar) that
438163faf9SStephen Warren	  U-Boot needs to use, but which isn't part of the binary.
448163faf9SStephen Warren
458163faf9SStephen Warrenif LINUX_KERNEL_IMAGE_HEADER
468163faf9SStephen Warrenconfig LNX_KRNL_IMG_TEXT_OFFSET_BASE
478163faf9SStephen Warren	hex
488163faf9SStephen Warren	help
498163faf9SStephen Warren	  The value subtracted from CONFIG_SYS_TEXT_BASE to calculate the
508163faf9SStephen Warren	  TEXT_OFFSET value written in to the Linux kernel image header.
518163faf9SStephen Warrenendif
5249e93875SStephen Warrenendif
5349e93875SStephen Warren
5449e93875SStephen Warrenconfig STATIC_RELA
5549e93875SStephen Warren	bool
5649e93875SStephen Warren	default y if ARM64 && !POSITION_INDEPENDENT
5749e93875SStephen Warren
5837217f0eSLokesh Vutlaconfig DMA_ADDR_T_64BIT
5937217f0eSLokesh Vutla	bool
6037217f0eSLokesh Vutla	default y if ARM64
6137217f0eSLokesh Vutla
622e07c249SGeorges Savoundararadjconfig HAS_VBAR
632e07c249SGeorges Savoundararadj	bool
642e07c249SGeorges Savoundararadj
6562e92077SAlbert ARIBAUDconfig HAS_THUMB2
6662e92077SAlbert ARIBAUD	bool
6762e92077SAlbert ARIBAUD
68111a6af9SPhil Edworthy# Used for compatibility with asm files copied from the kernel
69111a6af9SPhil Edworthyconfig ARM_ASM_UNIFIED
70111a6af9SPhil Edworthy	bool
71111a6af9SPhil Edworthy	default y
72111a6af9SPhil Edworthy
73111a6af9SPhil Edworthy# Used for compatibility with asm files copied from the kernel
74111a6af9SPhil Edworthyconfig THUMB2_KERNEL
75111a6af9SPhil Edworthy	bool
76111a6af9SPhil Edworthy
77f4bcd767SLokesh Vutlaconfig SYS_ARM_CACHE_CP15
78f4bcd767SLokesh Vutla	bool "CP15 based cache enabling support"
79f4bcd767SLokesh Vutla	help
80f4bcd767SLokesh Vutla	  Select this if your processor suports enabling caches by using
81f4bcd767SLokesh Vutla	  CP15 registers.
82f4bcd767SLokesh Vutla
837240b80eSLokesh Vutlaconfig SYS_ARM_MMU
847240b80eSLokesh Vutla	bool "MMU-based Paged Memory Management Support"
85f4bcd767SLokesh Vutla	select SYS_ARM_CACHE_CP15
867240b80eSLokesh Vutla	help
877240b80eSLokesh Vutla	  Select if you want MMU-based virtualised addressing space
887240b80eSLokesh Vutla	  support by paged memory management.
897240b80eSLokesh Vutla
90f2ef2043SLokesh Vutlaconfig SYS_ARM_MPU
91f2ef2043SLokesh Vutla	bool 'Use the ARM v7 PMSA Compliant MPU'
92f2ef2043SLokesh Vutla	help
93f2ef2043SLokesh Vutla	  Some ARM systems without an MMU have instead a Memory Protection
94f2ef2043SLokesh Vutla	  Unit (MPU) that defines the type and permissions for regions of
95f2ef2043SLokesh Vutla	  memory.
96f2ef2043SLokesh Vutla	  If your CPU has an MPU then you should choose 'y' here unless you
97f2ef2043SLokesh Vutla	  know that you do not want to use the MPU.
98f2ef2043SLokesh Vutla
998dda2e2fSTom Rini# If set, the workarounds for these ARM errata are applied early during U-Boot
1008dda2e2fSTom Rini# startup. Note that in general these options force the workarounds to be
1018dda2e2fSTom Rini# applied; no CPU-type/version detection exists, unlike the similar options in
1028dda2e2fSTom Rini# the Linux kernel. Do not set these options unless they apply!  Also note that
1038dda2e2fSTom Rini# the following can be machine specific errata. These do have ability to
1048dda2e2fSTom Rini# provide rudimentary version and machine specific checks, but expect no
1058dda2e2fSTom Rini# product checks:
1068dda2e2fSTom Rini# CONFIG_ARM_ERRATA_430973
1078dda2e2fSTom Rini# CONFIG_ARM_ERRATA_454179
1088dda2e2fSTom Rini# CONFIG_ARM_ERRATA_621766
1098dda2e2fSTom Rini# CONFIG_ARM_ERRATA_798870
1108dda2e2fSTom Rini# CONFIG_ARM_ERRATA_801819
1118dda2e2fSTom Riniconfig ARM_ERRATA_430973
1128dda2e2fSTom Rini	bool
1138dda2e2fSTom Rini
1148dda2e2fSTom Riniconfig ARM_ERRATA_454179
1158dda2e2fSTom Rini	bool
1168dda2e2fSTom Rini
1178dda2e2fSTom Riniconfig ARM_ERRATA_621766
1188dda2e2fSTom Rini	bool
1198dda2e2fSTom Rini
1208dda2e2fSTom Riniconfig ARM_ERRATA_716044
1218dda2e2fSTom Rini	bool
1228dda2e2fSTom Rini
12319a75b8cSSiarhei Siamashkaconfig ARM_ERRATA_725233
12419a75b8cSSiarhei Siamashka	bool
12519a75b8cSSiarhei Siamashka
1268dda2e2fSTom Riniconfig ARM_ERRATA_742230
1278dda2e2fSTom Rini	bool
1288dda2e2fSTom Rini
1298dda2e2fSTom Riniconfig ARM_ERRATA_743622
1308dda2e2fSTom Rini	bool
1318dda2e2fSTom Rini
1328dda2e2fSTom Riniconfig ARM_ERRATA_751472
1338dda2e2fSTom Rini	bool
1348dda2e2fSTom Rini
1358dda2e2fSTom Riniconfig ARM_ERRATA_761320
1368dda2e2fSTom Rini	bool
1378dda2e2fSTom Rini
1388dda2e2fSTom Riniconfig ARM_ERRATA_773022
1398dda2e2fSTom Rini	bool
1408dda2e2fSTom Rini
1418dda2e2fSTom Riniconfig ARM_ERRATA_774769
1428dda2e2fSTom Rini	bool
1438dda2e2fSTom Rini
1448dda2e2fSTom Riniconfig ARM_ERRATA_794072
1458dda2e2fSTom Rini	bool
1468dda2e2fSTom Rini
1478dda2e2fSTom Riniconfig ARM_ERRATA_798870
1488dda2e2fSTom Rini	bool
1498dda2e2fSTom Rini
1508dda2e2fSTom Riniconfig ARM_ERRATA_801819
1518dda2e2fSTom Rini	bool
1528dda2e2fSTom Rini
1538dda2e2fSTom Riniconfig ARM_ERRATA_826974
1548dda2e2fSTom Rini	bool
1558dda2e2fSTom Rini
1568dda2e2fSTom Riniconfig ARM_ERRATA_828024
1578dda2e2fSTom Rini	bool
1588dda2e2fSTom Rini
1598dda2e2fSTom Riniconfig ARM_ERRATA_829520
1608dda2e2fSTom Rini	bool
1618dda2e2fSTom Rini
1628dda2e2fSTom Riniconfig ARM_ERRATA_833069
1638dda2e2fSTom Rini	bool
1648dda2e2fSTom Rini
1658dda2e2fSTom Riniconfig ARM_ERRATA_833471
1668dda2e2fSTom Rini	bool
1678dda2e2fSTom Rini
16811d94319SPeng Fanconfig ARM_ERRATA_845369
16911d94319SPeng Fan       bool
17011d94319SPeng Fan
1718776350dSNisal Menukaconfig ARM_ERRATA_852421
1728776350dSNisal Menuka	bool
1738776350dSNisal Menuka
1748776350dSNisal Menukaconfig ARM_ERRATA_852423
1758776350dSNisal Menuka	bool
1768776350dSNisal Menuka
177ab0ab54eSAlison Wangconfig ARM_ERRATA_855873
178ab0ab54eSAlison Wang	bool
179ab0ab54eSAlison Wang
1802e07c249SGeorges Savoundararadjconfig CPU_ARM720T
1812e07c249SGeorges Savoundararadj	bool
182067716baSTom Rini	select SYS_CACHE_SHIFT_5
1837240b80eSLokesh Vutla	imply SYS_ARM_MMU
1842e07c249SGeorges Savoundararadj
1852e07c249SGeorges Savoundararadjconfig CPU_ARM920T
1862e07c249SGeorges Savoundararadj	bool
187067716baSTom Rini	select SYS_CACHE_SHIFT_5
1887240b80eSLokesh Vutla	imply SYS_ARM_MMU
1892e07c249SGeorges Savoundararadj
1902e07c249SGeorges Savoundararadjconfig CPU_ARM926EJS
1912e07c249SGeorges Savoundararadj	bool
192067716baSTom Rini	select SYS_CACHE_SHIFT_5
1937240b80eSLokesh Vutla	imply SYS_ARM_MMU
1942e07c249SGeorges Savoundararadj
1952e07c249SGeorges Savoundararadjconfig CPU_ARM946ES
1962e07c249SGeorges Savoundararadj	bool
197067716baSTom Rini	select SYS_CACHE_SHIFT_5
1987240b80eSLokesh Vutla	imply SYS_ARM_MMU
1992e07c249SGeorges Savoundararadj
2002e07c249SGeorges Savoundararadjconfig CPU_ARM1136
2012e07c249SGeorges Savoundararadj	bool
202067716baSTom Rini	select SYS_CACHE_SHIFT_5
2037240b80eSLokesh Vutla	imply SYS_ARM_MMU
2042e07c249SGeorges Savoundararadj
2052e07c249SGeorges Savoundararadjconfig CPU_ARM1176
2062e07c249SGeorges Savoundararadj	bool
2072e07c249SGeorges Savoundararadj	select HAS_VBAR
208067716baSTom Rini	select SYS_CACHE_SHIFT_5
2097240b80eSLokesh Vutla	imply SYS_ARM_MMU
2102e07c249SGeorges Savoundararadj
211acf15001SLokesh Vutlaconfig CPU_V7A
2122e07c249SGeorges Savoundararadj	bool
2132e07c249SGeorges Savoundararadj	select HAS_VBAR
21462e92077SAlbert ARIBAUD	select HAS_THUMB2
215067716baSTom Rini	select SYS_CACHE_SHIFT_6
2167240b80eSLokesh Vutla	imply SYS_ARM_MMU
2172e07c249SGeorges Savoundararadj
21812d8a729Srev13@wp.plconfig CPU_V7M
21912d8a729Srev13@wp.pl	bool
22062e92077SAlbert ARIBAUD	select HAS_THUMB2
221111a6af9SPhil Edworthy	select THUMB2_KERNEL
222067716baSTom Rini	select SYS_CACHE_SHIFT_5
223f2ef2043SLokesh Vutla	select SYS_ARM_MPU
22412d8a729Srev13@wp.pl
2254bbd6b1dSMichal Simekconfig CPU_V7R
2264bbd6b1dSMichal Simek	bool
2274bbd6b1dSMichal Simek	select HAS_THUMB2
2284bbd6b1dSMichal Simek	select SYS_CACHE_SHIFT_6
229f2ef2043SLokesh Vutla	select SYS_ARM_MPU
230f2ef2043SLokesh Vutla	select SYS_ARM_CACHE_CP15
2314bbd6b1dSMichal Simek
2322e07c249SGeorges Savoundararadjconfig CPU_PXA
2332e07c249SGeorges Savoundararadj	bool
234067716baSTom Rini	select SYS_CACHE_SHIFT_5
2357240b80eSLokesh Vutla	imply SYS_ARM_MMU
2362e07c249SGeorges Savoundararadj
2372e07c249SGeorges Savoundararadjconfig CPU_SA1100
2382e07c249SGeorges Savoundararadj	bool
239067716baSTom Rini	select SYS_CACHE_SHIFT_5
2407240b80eSLokesh Vutla	imply SYS_ARM_MMU
2412e07c249SGeorges Savoundararadj
2422e07c249SGeorges Savoundararadjconfig SYS_CPU
2432e07c249SGeorges Savoundararadj	default "arm720t" if CPU_ARM720T
2442e07c249SGeorges Savoundararadj	default "arm920t" if CPU_ARM920T
2452e07c249SGeorges Savoundararadj	default "arm926ejs" if CPU_ARM926EJS
2462e07c249SGeorges Savoundararadj	default "arm946es" if CPU_ARM946ES
2472e07c249SGeorges Savoundararadj	default "arm1136" if CPU_ARM1136
2482e07c249SGeorges Savoundararadj	default "arm1176" if CPU_ARM1176
249acf15001SLokesh Vutla	default "armv7" if CPU_V7A
2504bbd6b1dSMichal Simek	default "armv7" if CPU_V7R
25112d8a729Srev13@wp.pl	default "armv7m" if CPU_V7M
2522e07c249SGeorges Savoundararadj	default "pxa" if CPU_PXA
2532e07c249SGeorges Savoundararadj	default "sa1100" if CPU_SA1100
25401541eecSMasahiro Yamada	default "armv8" if ARM64
2552e07c249SGeorges Savoundararadj
25666020a67SMarek Vasutconfig SYS_ARM_ARCH
25766020a67SMarek Vasut	int
25866020a67SMarek Vasut	default 4 if CPU_ARM720T
25966020a67SMarek Vasut	default 4 if CPU_ARM920T
26066020a67SMarek Vasut	default 5 if CPU_ARM926EJS
26166020a67SMarek Vasut	default 5 if CPU_ARM946ES
26266020a67SMarek Vasut	default 6 if CPU_ARM1136
26366020a67SMarek Vasut	default 6 if CPU_ARM1176
264acf15001SLokesh Vutla	default 7 if CPU_V7A
26566020a67SMarek Vasut	default 7 if CPU_V7M
2664bbd6b1dSMichal Simek	default 7 if CPU_V7R
26766020a67SMarek Vasut	default 5 if CPU_PXA
26866020a67SMarek Vasut	default 4 if CPU_SA1100
26966020a67SMarek Vasut	default 8 if ARM64
27066020a67SMarek Vasut
271067716baSTom Riniconfig SYS_CACHE_SHIFT_5
272067716baSTom Rini	bool
273067716baSTom Rini
274067716baSTom Riniconfig SYS_CACHE_SHIFT_6
275067716baSTom Rini	bool
276067716baSTom Rini
277067716baSTom Riniconfig SYS_CACHE_SHIFT_7
278067716baSTom Rini	bool
279067716baSTom Rini
280067716baSTom Riniconfig SYS_CACHELINE_SIZE
281067716baSTom Rini	int
282067716baSTom Rini	default 128 if SYS_CACHE_SHIFT_7
283067716baSTom Rini	default 64 if SYS_CACHE_SHIFT_6
284067716baSTom Rini	default 32 if SYS_CACHE_SHIFT_5
285067716baSTom Rini
2867842b6a9SAndre Przywaraconfig SYS_ARCH_TIMER
2877842b6a9SAndre Przywara	bool "ARM Generic Timer support"
288acf15001SLokesh Vutla	depends on CPU_V7A || ARM64
2897842b6a9SAndre Przywara	default y if ARM64
2907842b6a9SAndre Przywara	help
2917842b6a9SAndre Przywara	  The ARM Generic Timer (aka arch-timer) provides an architected
2927842b6a9SAndre Przywara	  interface to a timer source on an SoC.
2937842b6a9SAndre Przywara	  It is mandantory for ARMv8 implementation and widely available
2947842b6a9SAndre Przywara	  on ARMv7 systems.
2957842b6a9SAndre Przywara
296c54bcf68SMasahiro Yamadaconfig ARM_SMCCC
297c54bcf68SMasahiro Yamada	bool "Support for ARM SMC Calling Convention (SMCCC)"
298acf15001SLokesh Vutla	depends on CPU_V7A || ARM64
299573a3811SMasahiro Yamada	select ARM_PSCI_FW
300c54bcf68SMasahiro Yamada	help
301c54bcf68SMasahiro Yamada	  Say Y here if you want to enable ARM SMC Calling Convention.
302c54bcf68SMasahiro Yamada	  This should be enabled if U-Boot needs to communicate with system
303c54bcf68SMasahiro Yamada	  firmware (for example, PSCI) according to SMCCC.
304c54bcf68SMasahiro Yamada
305f91afc4dSLinus Walleijconfig SEMIHOSTING
306f91afc4dSLinus Walleij	bool "support boot from semihosting"
307f91afc4dSLinus Walleij	help
308f91afc4dSLinus Walleij	  In emulated environments, semihosting is a way for
309f91afc4dSLinus Walleij	  the hosted environment to call out to the emulator to
310f91afc4dSLinus Walleij	  retrieve files from the host machine.
311f91afc4dSLinus Walleij
3123a649407STom Riniconfig SYS_THUMB_BUILD
3133a649407STom Rini	bool "Build U-Boot using the Thumb instruction set"
3143a649407STom Rini	depends on !ARM64
3153a649407STom Rini	help
3163a649407STom Rini	   Use this flag to build U-Boot using the Thumb instruction set for
3173a649407STom Rini	   ARM architectures. Thumb instruction set provides better code
3183a649407STom Rini	   density. For ARM architectures that support Thumb2 this flag will
3193a649407STom Rini	   result in Thumb2 code generated by GCC.
3203a649407STom Rini
3213a649407STom Riniconfig SPL_SYS_THUMB_BUILD
3223a649407STom Rini	bool "Build SPL using the Thumb instruction set"
3233a649407STom Rini	default y if SYS_THUMB_BUILD
3243a649407STom Rini	depends on !ARM64
3253a649407STom Rini	help
3263a649407STom Rini	   Use this flag to build SPL using the Thumb instruction set for
3273a649407STom Rini	   ARM architectures. Thumb instruction set provides better code
3283a649407STom Rini	   density. For ARM architectures that support Thumb2 this flag will
3293a649407STom Rini	   result in Thumb2 code generated by GCC.
3303a649407STom Rini
331f3e9bec8SPeng Fanconfig SYS_L2CACHE_OFF
332f3e9bec8SPeng Fan	bool "L2cache off"
333f3e9bec8SPeng Fan	help
334f3e9bec8SPeng Fan	  If SoC does not support L2CACHE or one do not want to enable
335f3e9bec8SPeng Fan	  L2CACHE, choose this option.
336f3e9bec8SPeng Fan
337cdaa633fSAndre Przywaraconfig ENABLE_ARM_SOC_BOOT0_HOOK
338cdaa633fSAndre Przywara	bool "prepare BOOT0 header"
339cdaa633fSAndre Przywara	help
340cdaa633fSAndre Przywara	  If the SoC's BOOT0 requires a header area filled with (magic)
3417d531e8aSSimon Goldschmidt	  values, then choose this option, and create a file included as
3427d531e8aSSimon Goldschmidt	  <asm/arch/boot0.h> which contains the required assembler code.
343cdaa633fSAndre Przywara
34485db5831SAndre Przywaraconfig ARM_CORTEX_CPU_IS_UP
34585db5831SAndre Przywara	bool
34685db5831SAndre Przywara	default n
34785db5831SAndre Przywara
348be72591bSFabio Estevamconfig USE_ARCH_MEMCPY
349be72591bSFabio Estevam	bool "Use an assembly optimized implementation of memcpy"
35040d5534cSTom Rini	default y
35140d5534cSTom Rini	depends on !ARM64
35240d5534cSTom Rini	help
35340d5534cSTom Rini	  Enable the generation of an optimized version of memcpy.
35440d5534cSTom Rini	  Such implementation may be faster under some conditions
35540d5534cSTom Rini	  but may increase the binary size.
35640d5534cSTom Rini
35740d5534cSTom Riniconfig SPL_USE_ARCH_MEMCPY
358f8136e68SAndy Yan	bool "Use an assembly optimized implementation of memcpy for SPL"
35940d5534cSTom Rini	default y if USE_ARCH_MEMCPY
360085be482SMasahiro Yamada	depends on !ARM64
361be72591bSFabio Estevam	help
362be72591bSFabio Estevam	  Enable the generation of an optimized version of memcpy.
363be72591bSFabio Estevam	  Such implementation may be faster under some conditions
364be72591bSFabio Estevam	  but may increase the binary size.
365be72591bSFabio Estevam
366be72591bSFabio Estevamconfig USE_ARCH_MEMSET
367be72591bSFabio Estevam	bool "Use an assembly optimized implementation of memset"
36840d5534cSTom Rini	default y
36940d5534cSTom Rini	depends on !ARM64
37040d5534cSTom Rini	help
37140d5534cSTom Rini	  Enable the generation of an optimized version of memset.
37240d5534cSTom Rini	  Such implementation may be faster under some conditions
37340d5534cSTom Rini	  but may increase the binary size.
37440d5534cSTom Rini
37540d5534cSTom Riniconfig SPL_USE_ARCH_MEMSET
376f8136e68SAndy Yan	bool "Use an assembly optimized implementation of memset for SPL"
37740d5534cSTom Rini	default y if USE_ARCH_MEMSET
378085be482SMasahiro Yamada	depends on !ARM64
379be72591bSFabio Estevam	help
380be72591bSFabio Estevam	  Enable the generation of an optimized version of memset.
381be72591bSFabio Estevam	  Such implementation may be faster under some conditions
382be72591bSFabio Estevam	  but may increase the binary size.
383be72591bSFabio Estevam
384ec6617c3SAlison Wangconfig ARM64_SUPPORT_AARCH32
385ec6617c3SAlison Wang	bool "ARM64 system support AArch32 execution state"
386ec6617c3SAlison Wang	default y if ARM64 && !TARGET_THUNDERX_88XX
387ec6617c3SAlison Wang	help
388ec6617c3SAlison Wang	  This ARM64 system supports AArch32 execution state.
389ec6617c3SAlison Wang
390dd84058dSMasahiro Yamadachoice
391dd84058dSMasahiro Yamada	prompt "Target select"
392b928e658SSimon Glass	default TARGET_HIKEY
393dd84058dSMasahiro Yamada
3944614b891SMasahiro Yamadaconfig ARCH_AT91
3954614b891SMasahiro Yamada	bool "Atmel AT91"
3960680f1b1SLey Foon Tan	select SPL_BOARD_INIT if SPL
397dd84058dSMasahiro Yamada
398dd84058dSMasahiro Yamadaconfig TARGET_EDB93XX
399dd84058dSMasahiro Yamada	bool "Support edb93xx"
4002e07c249SGeorges Savoundararadj	select CPU_ARM920T
401884f9013SAlexander Graf	select PL010_SERIAL
402dd84058dSMasahiro Yamada
403dd84058dSMasahiro Yamadaconfig TARGET_ASPENITE
404dd84058dSMasahiro Yamada	bool "Support aspenite"
4052e07c249SGeorges Savoundararadj	select CPU_ARM926EJS
406dd84058dSMasahiro Yamada
407dd84058dSMasahiro Yamadaconfig TARGET_GPLUGD
408dd84058dSMasahiro Yamada	bool "Support gplugd"
4092e07c249SGeorges Savoundararadj	select CPU_ARM926EJS
410dd84058dSMasahiro Yamada
4113491ba63SMasahiro Yamadaconfig ARCH_DAVINCI
4123491ba63SMasahiro Yamada	bool "TI DaVinci"
4132e07c249SGeorges Savoundararadj	select CPU_ARM926EJS
41415dc63d6SSimon Glass	imply CMD_SAVES
4153491ba63SMasahiro Yamada	help
4163491ba63SMasahiro Yamada	  Support for TI's DaVinci platform.
417dd84058dSMasahiro Yamada
41847539e23SMasahiro Yamadaconfig KIRKWOOD
41947539e23SMasahiro Yamada	bool "Marvell Kirkwood"
4202e07c249SGeorges Savoundararadj	select CPU_ARM926EJS
421a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
4224585601aSSimon Glass	select ARCH_MISC_INIT
423dd84058dSMasahiro Yamada
424c3d89140SStefan Roeseconfig ARCH_MVEBU
42521b29fc6SStefan Roese	bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)"
4269cffb233SStefan Roese	select OF_CONTROL
4279cffb233SStefan Roese	select OF_SEPARATE
4289cffb233SStefan Roese	select DM
429e3b9c98aSStefan Roese	select DM_ETH
4301d51ea19SStefan Roese	select DM_SERIAL
43109a54c00SStefan Roese	select DM_SPI
43209a54c00SStefan Roese	select DM_SPI_FLASH
433f1b1f770SAdam Ford	select SPI
434a4884831SStefan Roese
435dd84058dSMasahiro Yamadaconfig TARGET_DEVKIT3250
436dd84058dSMasahiro Yamada	bool "Support devkit3250"
4372e07c249SGeorges Savoundararadj	select CPU_ARM926EJS
438e9b3ce3fSVladimir Zapolskiy	select SUPPORT_SPL
439dd84058dSMasahiro Yamada
440412ae53aSAlbert ARIBAUD \(3ADEV\)config TARGET_WORK_92105
441412ae53aSAlbert ARIBAUD \(3ADEV\)	bool "Support work_92105"
442412ae53aSAlbert ARIBAUD \(3ADEV\)	select CPU_ARM926EJS
443412ae53aSAlbert ARIBAUD \(3ADEV\)	select SUPPORT_SPL
444412ae53aSAlbert ARIBAUD \(3ADEV\)
445dd84058dSMasahiro Yamadaconfig TARGET_APF27
446dd84058dSMasahiro Yamada	bool "Support apf27"
4472e07c249SGeorges Savoundararadj	select CPU_ARM926EJS
44802627356SMasahiro Yamada	select SUPPORT_SPL
449dd84058dSMasahiro Yamada
45022f2be7aSMasahiro Yamadaconfig ORION5X
45122f2be7aSMasahiro Yamada	bool "Marvell Orion"
4522e07c249SGeorges Savoundararadj	select CPU_ARM926EJS
453dd84058dSMasahiro Yamada
454dd84058dSMasahiro Yamadaconfig TARGET_SPEAR300
455dd84058dSMasahiro Yamada	bool "Support spear300"
4562e07c249SGeorges Savoundararadj	select CPU_ARM926EJS
457a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
45815dc63d6SSimon Glass	imply CMD_SAVES
459d10fc50fSAlexander Graf	select PL011_SERIAL
460dd84058dSMasahiro Yamada
461dd84058dSMasahiro Yamadaconfig TARGET_SPEAR310
462dd84058dSMasahiro Yamada	bool "Support spear310"
4632e07c249SGeorges Savoundararadj	select CPU_ARM926EJS
464a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
46515dc63d6SSimon Glass	imply CMD_SAVES
466d10fc50fSAlexander Graf	select PL011_SERIAL
467dd84058dSMasahiro Yamada
468dd84058dSMasahiro Yamadaconfig TARGET_SPEAR320
469dd84058dSMasahiro Yamada	bool "Support spear320"
4702e07c249SGeorges Savoundararadj	select CPU_ARM926EJS
471a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
47215dc63d6SSimon Glass	imply CMD_SAVES
473d10fc50fSAlexander Graf	select PL011_SERIAL
474dd84058dSMasahiro Yamada
475dd84058dSMasahiro Yamadaconfig TARGET_SPEAR600
476dd84058dSMasahiro Yamada	bool "Support spear600"
4772e07c249SGeorges Savoundararadj	select CPU_ARM926EJS
478a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
47915dc63d6SSimon Glass	imply CMD_SAVES
480d10fc50fSAlexander Graf	select PL011_SERIAL
481dd84058dSMasahiro Yamada
4829fa32b12SVikas Manochaconfig TARGET_STV0991
4839fa32b12SVikas Manocha	bool "Support stv0991"
484acf15001SLokesh Vutla	select CPU_V7A
485cac0ca76SMasahiro Yamada	select DM
486cac0ca76SMasahiro Yamada	select DM_SERIAL
487e67abcaaSVikas Manocha	select DM_SPI
488e67abcaaSVikas Manocha	select DM_SPI_FLASH
489f1b1f770SAdam Ford	select SPI
490e67abcaaSVikas Manocha	select SPI_FLASH
491cf2c7784SAlexander Graf	select PL01X_SERIAL
4929fa32b12SVikas Manocha
493dd84058dSMasahiro Yamadaconfig TARGET_X600
494dd84058dSMasahiro Yamada	bool "Support x600"
495e5ec4815STom Rini	select BOARD_LATE_INIT
4962e07c249SGeorges Savoundararadj	select CPU_ARM926EJS
49702627356SMasahiro Yamada	select SUPPORT_SPL
498d10fc50fSAlexander Graf	select PL011_SERIAL
499dd84058dSMasahiro Yamada
500dd84058dSMasahiro Yamadaconfig TARGET_MX31PDK
501dd84058dSMasahiro Yamada	bool "Support mx31pdk"
502e5ec4815STom Rini	select BOARD_LATE_INIT
5032e07c249SGeorges Savoundararadj	select CPU_ARM1136
50402627356SMasahiro Yamada	select SUPPORT_SPL
505a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
506dd84058dSMasahiro Yamada
507dd84058dSMasahiro Yamadaconfig TARGET_WOODBURN
508dd84058dSMasahiro Yamada	bool "Support woodburn"
5092e07c249SGeorges Savoundararadj	select CPU_ARM1136
510dd84058dSMasahiro Yamada
511dd84058dSMasahiro Yamadaconfig TARGET_WOODBURN_SD
512dd84058dSMasahiro Yamada	bool "Support woodburn_sd"
5132e07c249SGeorges Savoundararadj	select CPU_ARM1136
51402627356SMasahiro Yamada	select SUPPORT_SPL
515dd84058dSMasahiro Yamada
516dd84058dSMasahiro Yamadaconfig TARGET_FLEA3
517dd84058dSMasahiro Yamada	bool "Support flea3"
5182e07c249SGeorges Savoundararadj	select CPU_ARM1136
519dd84058dSMasahiro Yamada
520dd84058dSMasahiro Yamadaconfig TARGET_MX35PDK
521dd84058dSMasahiro Yamada	bool "Support mx35pdk"
522e5ec4815STom Rini	select BOARD_LATE_INIT
5232e07c249SGeorges Savoundararadj	select CPU_ARM1136
524dd84058dSMasahiro Yamada
525ddf6bd48SMasahiro Yamadaconfig ARCH_BCM283X
526ddf6bd48SMasahiro Yamada	bool "Broadcom BCM283X family"
52758d423b8SMasahiro Yamada	select DM
52858d423b8SMasahiro Yamada	select DM_SERIAL
52958d423b8SMasahiro Yamada	select DM_GPIO
53076709096SFabian Vogt	select OF_CONTROL
531cf2c7784SAlexander Graf	select PL01X_SERIAL
532ae5326a6SAlexander Graf	select SERIAL_SEARCH_ALL
53391d27a17STom Rini	imply FAT_WRITE
53446414296SStephen Warren
535dd84058dSMasahiro Yamadaconfig TARGET_VEXPRESS_CA15_TC2
536dd84058dSMasahiro Yamada	bool "Support vexpress_ca15_tc2"
537acf15001SLokesh Vutla	select CPU_V7A
538ea624e19SHans de Goede	select CPU_V7_HAS_NONSEC
539ea624e19SHans de Goede	select CPU_V7_HAS_VIRT
540d10fc50fSAlexander Graf	select PL011_SERIAL
541dd84058dSMasahiro Yamada
542dd84058dSMasahiro Yamadaconfig TARGET_VEXPRESS_CA5X2
543dd84058dSMasahiro Yamada	bool "Support vexpress_ca5x2"
544acf15001SLokesh Vutla	select CPU_V7A
545d10fc50fSAlexander Graf	select PL011_SERIAL
546dd84058dSMasahiro Yamada
547dd84058dSMasahiro Yamadaconfig TARGET_VEXPRESS_CA9X4
548dd84058dSMasahiro Yamada	bool "Support vexpress_ca9x4"
549acf15001SLokesh Vutla	select CPU_V7A
550d10fc50fSAlexander Graf	select PL011_SERIAL
551dd84058dSMasahiro Yamada
55243486e4cSSteve Raeconfig TARGET_BCM23550_W1D
55343486e4cSSteve Rae	bool "Support bcm23550_w1d"
554acf15001SLokesh Vutla	select CPU_V7A
555221a949eSDaniel Thompson	imply CRC32_VERIFY
55691d27a17STom Rini	imply FAT_WRITE
55743486e4cSSteve Rae
558dd84058dSMasahiro Yamadaconfig TARGET_BCM28155_AP
559dd84058dSMasahiro Yamada	bool "Support bcm28155_ap"
560acf15001SLokesh Vutla	select CPU_V7A
561221a949eSDaniel Thompson	imply CRC32_VERIFY
56291d27a17STom Rini	imply FAT_WRITE
563dd84058dSMasahiro Yamada
564abb1678cSSteve Raeconfig TARGET_BCMCYGNUS
565abb1678cSSteve Rae	bool "Support bcmcygnus"
566acf15001SLokesh Vutla	select CPU_V7A
567221a949eSDaniel Thompson	imply CRC32_VERIFY
568551c3934SSimon Glass	imply CMD_HASH
56991d27a17STom Rini	imply FAT_WRITE
570221a949eSDaniel Thompson	imply HASH_VERIFY
571c89782dcSSuji Velupillai	imply NETDEVICES
572c89782dcSSuji Velupillai	imply BCM_SF2_ETH
573c89782dcSSuji Velupillai	imply BCM_SF2_ETH_GMAC
5749dec5270SSteve Rae
575abb1678cSSteve Raeconfig TARGET_BCMNSP
576abb1678cSSteve Rae	bool "Support bcmnsp"
577acf15001SLokesh Vutla	select CPU_V7A
5789dec5270SSteve Rae
579274bced8SJon Masonconfig TARGET_BCMNS2
580274bced8SJon Mason	bool "Support Broadcom Northstar2"
581274bced8SJon Mason	select ARM64
582274bced8SJon Mason	help
583274bced8SJon Mason	  Support for Broadcom Northstar 2 SoCs.  NS2 is a quad-core 64-bit
584274bced8SJon Mason	  ARMv8 Cortex-A57 processors targeting a broad range of networking
585274bced8SJon Mason	  applications
586274bced8SJon Mason
58772df68ccSMasahiro Yamadaconfig ARCH_EXYNOS
58872df68ccSMasahiro Yamada	bool "Samsung EXYNOS"
58958d423b8SMasahiro Yamada	select DM
590fc47cf9dSSimon Glass	select DM_I2C
59158d423b8SMasahiro Yamada	select DM_SPI_FLASH
59258d423b8SMasahiro Yamada	select DM_SERIAL
59358d423b8SMasahiro Yamada	select DM_SPI
59458d423b8SMasahiro Yamada	select DM_GPIO
5951fa4bfdeSSimon Glass	select DM_KEYBOARD
596f1b1f770SAdam Ford	select SPI
59791d27a17STom Rini	imply FAT_WRITE
598dd84058dSMasahiro Yamada
599311757beSSimon Glassconfig ARCH_S5PC1XX
600311757beSSimon Glass	bool "Samsung S5PC1XX"
601acf15001SLokesh Vutla	select CPU_V7A
60258d423b8SMasahiro Yamada	select DM
60358d423b8SMasahiro Yamada	select DM_SERIAL
60458d423b8SMasahiro Yamada	select DM_GPIO
60508848e9cSSimon Glass	select DM_I2C
606311757beSSimon Glass
607ef2b694cSMasahiro Yamadaconfig ARCH_HIGHBANK
608ef2b694cSMasahiro Yamada	bool "Calxeda Highbank"
609acf15001SLokesh Vutla	select CPU_V7A
610d10fc50fSAlexander Graf	select PL011_SERIAL
611dd84058dSMasahiro Yamada
6125cbbd9bdSMasahiro Yamadaconfig ARCH_INTEGRATOR
6135cbbd9bdSMasahiro Yamada	bool "ARM Ltd. Integrator family"
6143f394e70SLinus Walleij	select DM
6153f394e70SLinus Walleij	select DM_SERIAL
616cf2c7784SAlexander Graf	select PL01X_SERIAL
6175cbbd9bdSMasahiro Yamada
618c338f09eSMasahiro Yamadaconfig ARCH_KEYSTONE
619c338f09eSMasahiro Yamada	bool "TI Keystone"
620acf15001SLokesh Vutla	select CPU_V7A
62102627356SMasahiro Yamada	select SUPPORT_SPL
6223a649407STom Rini	select SYS_THUMB_BUILD
623534bc70eSTom Rini	select CMD_POWEROFF
6247842b6a9SAndre Przywara	select SYS_ARCH_TIMER
625d56b4b19STom Rini	imply CMD_MTDPARTS
62646f9ef18SAndrew F. Davis	imply FIT
62715dc63d6SSimon Glass	imply CMD_SAVES
628dd84058dSMasahiro Yamada
629a93fbf4aSMasahiro Yamadaconfig ARCH_OMAP2PLUS
630a93fbf4aSMasahiro Yamada	bool "TI OMAP2+"
631acf15001SLokesh Vutla	select CPU_V7A
6320680f1b1SLey Foon Tan	select SPL_BOARD_INIT if SPL
633ff6c3125STom Rini	select SPL_STACK_R if SPL
634a93fbf4aSMasahiro Yamada	select SUPPORT_SPL
635a93fbf4aSMasahiro Yamada	imply FIT
636a93fbf4aSMasahiro Yamada
637bfcef28aSBeniamino Galvaniconfig ARCH_MESON
638bfcef28aSBeniamino Galvani	bool "Amlogic Meson"
6397325f6cfSMasahiro Yamada	imply DISTRO_DEFAULTS
640bfcef28aSBeniamino Galvani	help
641bfcef28aSBeniamino Galvani	  Support for the Meson SoC family developed by Amlogic Inc.,
642bfcef28aSBeniamino Galvani	  targeted at media players and tablet computers. We currently
643bfcef28aSBeniamino Galvani	  support the S905 (GXBaby) 64-bit SoC.
644bfcef28aSBeniamino Galvani
6457a7391fdSPeng Fanconfig ARCH_MX8M
6467a7391fdSPeng Fan	bool "NXP i.MX8M platform"
6477a7391fdSPeng Fan	select ARM64
6487a7391fdSPeng Fan	select DM
6497a7391fdSPeng Fan	select SUPPORT_SPL
6507a7391fdSPeng Fan
651c5343d4eSStefan Agnerconfig ARCH_MX23
652c5343d4eSStefan Agner	bool "NXP i.MX23 family"
653c5343d4eSStefan Agner	select CPU_ARM926EJS
654c5343d4eSStefan Agner	select PL011_SERIAL
655c5343d4eSStefan Agner	select SUPPORT_SPL
656c5343d4eSStefan Agner
65707df697eSFabio Estevamconfig ARCH_MX25
65807df697eSFabio Estevam	bool "NXP MX25"
65907df697eSFabio Estevam	select CPU_ARM926EJS
6608bbff6a7SAdam Ford	imply MXC_GPIO
66107df697eSFabio Estevam
66225c5b4e1SStefan Agnerconfig ARCH_MX28
66325c5b4e1SStefan Agner	bool "NXP i.MX28 family"
66425c5b4e1SStefan Agner	select CPU_ARM926EJS
66525c5b4e1SStefan Agner	select PL011_SERIAL
66625c5b4e1SStefan Agner	select SUPPORT_SPL
66725c5b4e1SStefan Agner
668e90a08daSPeng Fanconfig ARCH_MX7ULP
669e90a08daSPeng Fan        bool "NXP MX7ULP"
670acf15001SLokesh Vutla	select CPU_V7A
671e90a08daSPeng Fan	select ROM_UNIFIED_SECTIONS
6728bbff6a7SAdam Ford	imply MXC_GPIO
673e90a08daSPeng Fan
6741a8150d4SAdrian Alonsoconfig ARCH_MX7
6751a8150d4SAdrian Alonso	bool "Freescale MX7"
676acf15001SLokesh Vutla	select CPU_V7A
6772c2e2c9eSYork Sun	select SYS_FSL_HAS_SEC if SECURE_BOOT
6782c2e2c9eSYork Sun	select SYS_FSL_SEC_COMPAT_4
67990b80386SYork Sun	select SYS_FSL_SEC_LE
680a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
6814585601aSSimon Glass	select ARCH_MISC_INIT
6828bbff6a7SAdam Ford	imply MXC_GPIO
6831a8150d4SAdrian Alonso
68489ebc821SBoris BREZILLONconfig ARCH_MX6
68589ebc821SBoris BREZILLON	bool "Freescale MX6"
686acf15001SLokesh Vutla	select CPU_V7A
6872c2e2c9eSYork Sun	select SYS_FSL_HAS_SEC if SECURE_BOOT
6882c2e2c9eSYork Sun	select SYS_FSL_SEC_COMPAT_4
68990b80386SYork Sun	select SYS_FSL_SEC_LE
6903a649407STom Rini	select SYS_THUMB_BUILD if SPL
6918bbff6a7SAdam Ford	imply MXC_GPIO
69289ebc821SBoris BREZILLON
693b529993eSPhilipp Tomsichif ARCH_MX6
694b529993eSPhilipp Tomsichconfig SPL_LDSCRIPT
695b529993eSPhilipp Tomsich        default "arch/arm/mach-omap2/u-boot-spl.lds"
696b529993eSPhilipp Tomsichendif
697b529993eSPhilipp Tomsich
698424ee3d1SAndrej Rosanoconfig ARCH_MX5
699424ee3d1SAndrej Rosano	bool "Freescale MX5"
700acf15001SLokesh Vutla	select CPU_V7A
701a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
7028bbff6a7SAdam Ford	imply MXC_GPIO
703424ee3d1SAndrej Rosano
70432f11829STuomas Tynkkynenconfig ARCH_QEMU
70532f11829STuomas Tynkkynen	bool "QEMU Virtual Platform"
70632f11829STuomas Tynkkynen	select DM
70732f11829STuomas Tynkkynen	select DM_SERIAL
70832f11829STuomas Tynkkynen	select OF_CONTROL
709cf2c7784SAlexander Graf	select PL01X_SERIAL
71032f11829STuomas Tynkkynen
7111cc95f6eSNobuhiro Iwamatsuconfig ARCH_RMOBILE
712f40b9898SMasahiro Yamada	bool "Renesas ARM SoCs"
7131cc95f6eSNobuhiro Iwamatsu	select DM
7141cc95f6eSNobuhiro Iwamatsu	select DM_SERIAL
715a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
71691d27a17STom Rini	imply FAT_WRITE
7173a649407STom Rini	imply SYS_THUMB_BUILD
718dd84058dSMasahiro Yamada
7199702ec00SEddy Petrișorconfig TARGET_S32V234EVB
7209702ec00SEddy Petrișor	bool "Support s32v234evb"
7219702ec00SEddy Petrișor	select ARM64
722c01e4a1aSYork Sun	select SYS_FSL_ERRATUM_ESDHC111
7239702ec00SEddy Petrișor
72408592136SMateusz Kulikowskiconfig ARCH_SNAPDRAGON
72508592136SMateusz Kulikowski	bool "Qualcomm Snapdragon SoCs"
72608592136SMateusz Kulikowski	select ARM64
72708592136SMateusz Kulikowski	select DM
72808592136SMateusz Kulikowski	select DM_GPIO
72908592136SMateusz Kulikowski	select DM_SERIAL
73008592136SMateusz Kulikowski	select SPMI
73108592136SMateusz Kulikowski	select OF_CONTROL
73208592136SMateusz Kulikowski	select OF_SEPARATE
73308592136SMateusz Kulikowski
7347865f4b0SMasahiro Yamadaconfig ARCH_SOCFPGA
7357865f4b0SMasahiro Yamada	bool "Altera SOCFPGA family"
736acf15001SLokesh Vutla	select CPU_V7A
73702627356SMasahiro Yamada	select SUPPORT_SPL
738dfd3dff5SMarek Vasut	select OF_CONTROL
739dfd3dff5SMarek Vasut	select SPL_OF_CONTROL
7401d9aa3e5SMasahiro Yamada	select DM
741beee6a30SMarek Vasut	select ENABLE_ARM_SOC_BOOT0_HOOK
742a421192fSSimon Glass	select ARCH_EARLY_INIT_R
7434585601aSSimon Glass	select ARCH_MISC_INIT
7443a649407STom Rini	select SYS_THUMB_BUILD
745d56b4b19STom Rini	imply CMD_MTDPARTS
746221a949eSDaniel Thompson	imply CRC32_VERIFY
747fef4a545SSimon Goldschmidt	imply DM_SPI
748fef4a545SSimon Goldschmidt	imply DM_SPI_FLASH
74991d27a17STom Rini	imply FAT_WRITE
750fef4a545SSimon Goldschmidt	imply HW_WATCHDOG
751fef4a545SSimon Goldschmidt	imply SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
752dd84058dSMasahiro Yamada
7532c7e3b90SIan Campbellconfig ARCH_SUNXI
7542c7e3b90SIan Campbell	bool "Support sunxi (Allwinner) SoCs"
755d6a0c78aSMasahiro Yamada	select BINMAN
75688bb800dSHans de Goede	select CMD_GPIO
7570878a8a7SHans de Goede	select CMD_MMC if MMC
7582997ee50SYann E. MORIN	select CMD_USB if DISTRO_DEFAULTS
759b6006bafSHans de Goede	select DM
76045368827STom Rini	select DM_ETH
761211d57a4SHans de Goede	select DM_GPIO
762211d57a4SHans de Goede	select DM_KEYBOARD
76345368827STom Rini	select DM_SERIAL
7642997ee50SYann E. MORIN	select DM_USB if DISTRO_DEFAULTS
765d75111a7SHans de Goede	select OF_BOARD_SETUP
766b6006bafSHans de Goede	select OF_CONTROL
767b6006bafSHans de Goede	select OF_SEPARATE
7686f6b7cfaSTom Rini	select SPECIFY_CONSOLE_INDEX
769ab43de80STom Rini	select SPL_STACK_R if SPL
770ab43de80STom Rini	select SPL_SYS_MALLOC_SIMPLE if SPL
7716edf6a21SHans de Goede	select SYS_NS16550
7723a649407STom Rini	select SPL_SYS_THUMB_BUILD if !ARM64
773ce2e44d8SMaxime Ripard	select SYS_THUMB_BUILD if !ARM64
7742997ee50SYann E. MORIN	select USB if DISTRO_DEFAULTS
7752997ee50SYann E. MORIN	select USB_STORAGE if DISTRO_DEFAULTS
7762997ee50SYann E. MORIN	select USB_KEYBOARD if DISTRO_DEFAULTS
7778c7d2296SHans de Goede	select USE_TINY_PRINTF
778a12fb0e3SMaxime Ripard	imply CMD_GPT
7797325f6cfSMasahiro Yamada	imply DISTRO_DEFAULTS
78091d27a17STom Rini	imply FAT_WRITE
781eff264d7SAndre Heider	imply OF_LIBFDT_OVERLAY
782af83a604SMasahiro Yamada	imply PRE_CONSOLE_BUFFER
783af83a604SMasahiro Yamada	imply SPL_GPIO_SUPPORT
784af83a604SMasahiro Yamada	imply SPL_LIBCOMMON_SUPPORT
785af83a604SMasahiro Yamada	imply SPL_LIBDISK_SUPPORT
786af83a604SMasahiro Yamada	imply SPL_LIBGENERIC_SUPPORT
7874aa2ba3aSMasahiro Yamada	imply SPL_MMC_SUPPORT if MMC
788af83a604SMasahiro Yamada	imply SPL_POWER_SUPPORT
789af83a604SMasahiro Yamada	imply SPL_SERIAL_SUPPORT
790654b02b1SMaxime Ripard	imply USB_GADGET
7918ebe4f42SChen-Yu Tsai
7927966b437SStefan Agnerconfig ARCH_VF610
7937966b437SStefan Agner	bool "Freescale Vybrid"
794acf15001SLokesh Vutla	select CPU_V7A
795c01e4a1aSYork Sun	select SYS_FSL_ERRATUM_ESDHC111
796d56b4b19STom Rini	imply CMD_MTDPARTS
7975bbc265bSAdam Ford	imply NAND
798dd84058dSMasahiro Yamada
7995ca269a4SMasahiro Yamadaconfig ARCH_ZYNQ
800b8d4497fSMichal Simek	bool "Xilinx Zynq based platform"
801e5ec4815STom Rini	select BOARD_LATE_INIT
802acf15001SLokesh Vutla	select CPU_V7A
80302627356SMasahiro Yamada	select SUPPORT_SPL
804d065cfd9SJagan Teki	select OF_CONTROL
8050680f1b1SLey Foon Tan	select SPL_BOARD_INIT if SPL
806e6cc3b25SMichal Simek	select BOARD_EARLY_INIT_F if WDT
807eb04ab34SMichal Simek	select SPL_OF_CONTROL if SPL
8088981f05cSMasahiro Yamada	select DM
809c4a142f4SMichal Simek	select DM_ETH if NET
810eb04ab34SMichal Simek	select SPL_DM if SPL
811c4a142f4SMichal Simek	select DM_MMC if MMC
8129f7a4502SJagan Teki	select DM_SPI
81342800ffaSSimon Glass	select DM_SERIAL
8149f7a4502SJagan Teki	select DM_SPI_FLASH
815eb04ab34SMichal Simek	select SPL_SEPARATE_BSS if SPL
816dec49e86SSimon Glass	select DM_USB if USB
817781745bdSStefan Herbrechtsmeier	select CLK
818578d95e9SEzequiel Garcia	select SPL_CLK if SPL
819781745bdSStefan Herbrechtsmeier	select CLK_ZYNQ
820f1b1f770SAdam Ford	select SPI
821d315628eSSimon Glass	imply CMD_CLK
82291d27a17STom Rini	imply FAT_WRITE
82372c3033fSSimon Glass	imply CMD_SPL
8244aba5fb8SMichal Simek	imply ARCH_EARLY_INIT_R
825dd84058dSMasahiro Yamada
826*1d6c54ecSMichal Simekconfig ARCH_ZYNQMP_R5
827*1d6c54ecSMichal Simek	bool "Xilinx ZynqMP R5 based platform"
828*1d6c54ecSMichal Simek	select CPU_V7R
829*1d6c54ecSMichal Simek	select OF_CONTROL
830*1d6c54ecSMichal Simek	select DM
831*1d6c54ecSMichal Simek	select DM_SERIAL
832*1d6c54ecSMichal Simek	select CLK
833*1d6c54ecSMichal Simek
8340b54a9ddSSiva Durga Prasad Paladuguconfig ARCH_ZYNQMP
835b8d4497fSMichal Simek	bool "Xilinx ZynqMP based platform"
83684c7204bSMichal Simek	select ARM64
837e5ec4815STom Rini	select BOARD_LATE_INIT
838c2490bf5SMichal Simek	select DM
839c2490bf5SMichal Simek	select OF_CONTROL
840c2490bf5SMichal Simek	select DM_SERIAL
841e6a9ed04SMichal Simek	select SUPPORT_SPL
8421f29738aSMichal Simek	select CLK
8430680f1b1SLey Foon Tan	select SPL_BOARD_INIT if SPL
8442f03968eSMichal Simek	select SPL_CLK if SPL
845dec49e86SSimon Glass	select DM_USB if USB
84691d27a17STom Rini	imply FAT_WRITE
84784c7204bSMichal Simek
848ddd960e6SMasahiro Yamadaconfig TEGRA
849ddd960e6SMasahiro Yamada	bool "NVIDIA Tegra"
8507325f6cfSMasahiro Yamada	imply DISTRO_DEFAULTS
85191d27a17STom Rini	imply FAT_WRITE
852dd84058dSMasahiro Yamada
853f91afc4dSLinus Walleijconfig TARGET_VEXPRESS64_AEMV8A
854dd84058dSMasahiro Yamada	bool "Support vexpress_aemv8a"
855016a954eSMasahiro Yamada	select ARM64
856cf2c7784SAlexander Graf	select PL01X_SERIAL
857dd84058dSMasahiro Yamada
858f91afc4dSLinus Walleijconfig TARGET_VEXPRESS64_BASE_FVP
859f91afc4dSLinus Walleij	bool "Support Versatile Express ARMv8a FVP BASE model"
860f91afc4dSLinus Walleij	select ARM64
861f91afc4dSLinus Walleij	select SEMIHOSTING
862cf2c7784SAlexander Graf	select PL01X_SERIAL
863f91afc4dSLinus Walleij
864fc04b923SRyan Harkinconfig TARGET_VEXPRESS64_BASE_FVP_DRAM
865fc04b923SRyan Harkin	bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
866fc04b923SRyan Harkin	select ARM64
867cf2c7784SAlexander Graf	select PL01X_SERIAL
868fc04b923SRyan Harkin	help
869fc04b923SRyan Harkin	  This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
870fc04b923SRyan Harkin	  the default config to allow the user to load the images directly into
871fc04b923SRyan Harkin	  DRAM using model parameters rather than by using semi-hosting to load
872fc04b923SRyan Harkin	  the files from the host filesystem.
873fc04b923SRyan Harkin
874ffc10373SLinus Walleijconfig TARGET_VEXPRESS64_JUNO
875ffc10373SLinus Walleij	bool "Support Versatile Express Juno Development Platform"
876ffc10373SLinus Walleij	select ARM64
877cf2c7784SAlexander Graf	select PL01X_SERIAL
878ffc10373SLinus Walleij
87944937214SPrabhakar Kushwahaconfig TARGET_LS2080A_EMU
88044937214SPrabhakar Kushwaha	bool "Support ls2080a_emu"
881fb2bf8c2SYork Sun	select ARCH_LS2080A
882016a954eSMasahiro Yamada	select ARM64
88323b5877cSLinus Walleij	select ARMV8_MULTIENTRY
8844585601aSSimon Glass	select ARCH_MISC_INIT
8857288c2c2SYork Sun	help
88644937214SPrabhakar Kushwaha	  Support for Freescale LS2080A_EMU platform
88744937214SPrabhakar Kushwaha	  The LS2080A Development System (EMULATOR) is a pre silicon
88844937214SPrabhakar Kushwaha	  development platform that supports the QorIQ LS2080A
8897288c2c2SYork Sun	  Layerscape Architecture processor.
8907288c2c2SYork Sun
89144937214SPrabhakar Kushwahaconfig TARGET_LS2080A_SIMU
89244937214SPrabhakar Kushwaha	bool "Support ls2080a_simu"
893fb2bf8c2SYork Sun	select ARCH_LS2080A
89444937214SPrabhakar Kushwaha	select ARM64
89544937214SPrabhakar Kushwaha	select ARMV8_MULTIENTRY
8964585601aSSimon Glass	select ARCH_MISC_INIT
89744937214SPrabhakar Kushwaha	help
89844937214SPrabhakar Kushwaha	  Support for Freescale LS2080A_SIMU platform
89944937214SPrabhakar Kushwaha	  The LS2080A Development System (QDS) is a pre silicon
90044937214SPrabhakar Kushwaha	  development platform that supports the QorIQ LS2080A
90144937214SPrabhakar Kushwaha	  Layerscape Architecture processor.
90244937214SPrabhakar Kushwaha
9037769776aSAshish Kumarconfig TARGET_LS1088AQDS
9047769776aSAshish Kumar	bool "Support ls1088aqds"
9057769776aSAshish Kumar	select ARCH_LS1088A
9067769776aSAshish Kumar	select ARM64
9077769776aSAshish Kumar	select ARMV8_MULTIENTRY
9087769776aSAshish Kumar	select ARCH_MISC_INIT
9097769776aSAshish Kumar	select BOARD_LATE_INIT
91091fded62SAshish Kumar	select SUPPORT_SPL
9117769776aSAshish Kumar	help
9127769776aSAshish Kumar	  Support for NXP LS1088AQDS platform
9137769776aSAshish Kumar	  The LS1088A Development System (QDS) is a high-performance
9147769776aSAshish Kumar	  development platform that supports the QorIQ LS1088A
9157769776aSAshish Kumar	  Layerscape Architecture processor.
9167769776aSAshish Kumar
91744937214SPrabhakar Kushwahaconfig TARGET_LS2080AQDS
91844937214SPrabhakar Kushwaha	bool "Support ls2080aqds"
919fb2bf8c2SYork Sun	select ARCH_LS2080A
920e2b65ea9SYork Sun	select ARM64
921e2b65ea9SYork Sun	select ARMV8_MULTIENTRY
922e5ec4815STom Rini	select BOARD_LATE_INIT
92332eda7ccSScott Wood	select SUPPORT_SPL
9244585601aSSimon Glass	select ARCH_MISC_INIT
925fedb428cSSimon Glass	imply SCSI
9269fd95ef0STuomas Tynkkynen	imply SCSI_AHCI
927e2b65ea9SYork Sun	help
92844937214SPrabhakar Kushwaha	  Support for Freescale LS2080AQDS platform
92944937214SPrabhakar Kushwaha	  The LS2080A Development System (QDS) is a high-performance
93044937214SPrabhakar Kushwaha	  development platform that supports the QorIQ LS2080A
93144937214SPrabhakar Kushwaha	  Layerscape Architecture processor.
93244937214SPrabhakar Kushwaha
93344937214SPrabhakar Kushwahaconfig TARGET_LS2080ARDB
93444937214SPrabhakar Kushwaha	bool "Support ls2080ardb"
935fb2bf8c2SYork Sun	select ARCH_LS2080A
93644937214SPrabhakar Kushwaha	select ARM64
93744937214SPrabhakar Kushwaha	select ARMV8_MULTIENTRY
938e5ec4815STom Rini	select BOARD_LATE_INIT
93944937214SPrabhakar Kushwaha	select SUPPORT_SPL
9404585601aSSimon Glass	select ARCH_MISC_INIT
941fedb428cSSimon Glass	imply SCSI
9429fd95ef0STuomas Tynkkynen	imply SCSI_AHCI
94344937214SPrabhakar Kushwaha	help
94444937214SPrabhakar Kushwaha	  Support for Freescale LS2080ARDB platform.
94544937214SPrabhakar Kushwaha	  The LS2080A Reference design board (RDB) is a high-performance
94644937214SPrabhakar Kushwaha	  development platform that supports the QorIQ LS2080A
947e2b65ea9SYork Sun	  Layerscape Architecture processor.
948e2b65ea9SYork Sun
9493049a583SPriyanka Jainconfig TARGET_LS2081ARDB
9503049a583SPriyanka Jain	bool "Support ls2081ardb"
9513049a583SPriyanka Jain	select ARCH_LS2080A
9523049a583SPriyanka Jain	select ARM64
9533049a583SPriyanka Jain	select ARMV8_MULTIENTRY
9543049a583SPriyanka Jain	select BOARD_LATE_INIT
9553049a583SPriyanka Jain	select SUPPORT_SPL
9563049a583SPriyanka Jain	select ARCH_MISC_INIT
9573049a583SPriyanka Jain	help
9583049a583SPriyanka Jain	  Support for Freescale LS2081ARDB platform.
9593049a583SPriyanka Jain	  The LS2081A Reference design board (RDB) is a high-performance
9603049a583SPriyanka Jain	  development platform that supports the QorIQ LS2081A/LS2041A
9613049a583SPriyanka Jain	  Layerscape Architecture processor.
9623049a583SPriyanka Jain
96311ac2363SPeter Griffinconfig TARGET_HIKEY
96411ac2363SPeter Griffin	bool "Support HiKey 96boards Consumer Edition Platform"
96511ac2363SPeter Griffin	select ARM64
966efd7b60aSPeter Griffin	select DM
967efd7b60aSPeter Griffin	select DM_GPIO
9689c71bcdcSPeter Griffin	select DM_SERIAL
969cd593ed6SPeter Griffin	select OF_CONTROL
970cf2c7784SAlexander Graf	select PL01X_SERIAL
9716f6b7cfaSTom Rini	select SPECIFY_CONSOLE_INDEX
97211ac2363SPeter Griffin	  help
97311ac2363SPeter Griffin	  Support for HiKey 96boards platform. It features a HI6220
97411ac2363SPeter Griffin	  SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
97511ac2363SPeter Griffin
976d754254fSJorge Ramirez-Ortizconfig TARGET_POPLAR
977d754254fSJorge Ramirez-Ortiz	bool "Support Poplar 96boards Enterprise Edition Platform"
978d754254fSJorge Ramirez-Ortiz	select ARM64
979d754254fSJorge Ramirez-Ortiz	select DM
980d754254fSJorge Ramirez-Ortiz	select OF_CONTROL
981d754254fSJorge Ramirez-Ortiz	select DM_SERIAL
982d754254fSJorge Ramirez-Ortiz	select DM_USB
983cf2c7784SAlexander Graf	select PL01X_SERIAL
984d754254fSJorge Ramirez-Ortiz	  help
985d754254fSJorge Ramirez-Ortiz	  Support for Poplar 96boards EE platform. It features a HI3798cv200
986d754254fSJorge Ramirez-Ortiz	  SoC, with 4xA53 CPU, 1GB RAM and the high performance Mali T720 GPU
987d754254fSJorge Ramirez-Ortiz	  making it capable of running any commercial set-top solution based on
988d754254fSJorge Ramirez-Ortiz	  Linux or Android.
989d754254fSJorge Ramirez-Ortiz
9909d044fcbSPrabhakar Kushwahaconfig TARGET_LS1012AQDS
9919d044fcbSPrabhakar Kushwaha	bool "Support ls1012aqds"
9929533acf3SYork Sun	select ARCH_LS1012A
9939d044fcbSPrabhakar Kushwaha	select ARM64
994e5ec4815STom Rini	select BOARD_LATE_INIT
9959d044fcbSPrabhakar Kushwaha	help
9969d044fcbSPrabhakar Kushwaha	  Support for Freescale LS1012AQDS platform.
9979d044fcbSPrabhakar Kushwaha	  The LS1012A Development System (QDS) is a high-performance
9989d044fcbSPrabhakar Kushwaha	  development platform that supports the QorIQ LS1012A
9999d044fcbSPrabhakar Kushwaha	  Layerscape Architecture processor.
10009d044fcbSPrabhakar Kushwaha
10013b6e3898SPrabhakar Kushwahaconfig TARGET_LS1012ARDB
10023b6e3898SPrabhakar Kushwaha	bool "Support ls1012ardb"
10039533acf3SYork Sun	select ARCH_LS1012A
10043b6e3898SPrabhakar Kushwaha	select ARM64
1005e5ec4815STom Rini	select BOARD_LATE_INIT
1006fedb428cSSimon Glass	imply SCSI
10079fd95ef0STuomas Tynkkynen	imply SCSI_AHCI
10083b6e3898SPrabhakar Kushwaha	help
10093b6e3898SPrabhakar Kushwaha	  Support for Freescale LS1012ARDB platform.
10103b6e3898SPrabhakar Kushwaha	  The LS1012A Reference design board (RDB) is a high-performance
10113b6e3898SPrabhakar Kushwaha	  development platform that supports the QorIQ LS1012A
10123b6e3898SPrabhakar Kushwaha	  Layerscape Architecture processor.
10133b6e3898SPrabhakar Kushwaha
1014b0ce187bSBhaskar Upadhayaconfig TARGET_LS1012A2G5RDB
1015b0ce187bSBhaskar Upadhaya	bool "Support ls1012a2g5rdb"
1016b0ce187bSBhaskar Upadhaya	select ARCH_LS1012A
1017b0ce187bSBhaskar Upadhaya	select ARM64
1018b0ce187bSBhaskar Upadhaya	select BOARD_LATE_INIT
1019b0ce187bSBhaskar Upadhaya	imply SCSI
1020b0ce187bSBhaskar Upadhaya	help
1021b0ce187bSBhaskar Upadhaya	  Support for Freescale LS1012A2G5RDB platform.
1022b0ce187bSBhaskar Upadhaya	  The LS1012A 2G5 Reference design board (RDB) is a high-performance
1023b0ce187bSBhaskar Upadhaya	  development platform that supports the QorIQ LS1012A
1024b0ce187bSBhaskar Upadhaya	  Layerscape Architecture processor.
1025b0ce187bSBhaskar Upadhaya
1026ff78aa2bSPrabhakar Kushwahaconfig TARGET_LS1012AFRDM
1027ff78aa2bSPrabhakar Kushwaha	bool "Support ls1012afrdm"
10289533acf3SYork Sun	select ARCH_LS1012A
1029ff78aa2bSPrabhakar Kushwaha	select ARM64
1030ff78aa2bSPrabhakar Kushwaha	help
1031ff78aa2bSPrabhakar Kushwaha	  Support for Freescale LS1012AFRDM platform.
1032ff78aa2bSPrabhakar Kushwaha	  The LS1012A Freedom  board (FRDM) is a high-performance
1033ff78aa2bSPrabhakar Kushwaha	  development platform that supports the QorIQ LS1012A
1034ff78aa2bSPrabhakar Kushwaha	  Layerscape Architecture processor.
1035ff78aa2bSPrabhakar Kushwaha
1036e84a324bSAshish Kumarconfig TARGET_LS1088ARDB
1037e84a324bSAshish Kumar	bool "Support ls1088ardb"
1038e84a324bSAshish Kumar	select ARCH_LS1088A
1039e84a324bSAshish Kumar	select ARM64
1040e84a324bSAshish Kumar	select ARMV8_MULTIENTRY
1041e84a324bSAshish Kumar	select ARCH_MISC_INIT
1042e84a324bSAshish Kumar	select BOARD_LATE_INIT
1043099f4093SAshish Kumar	select SUPPORT_SPL
1044e84a324bSAshish Kumar	help
1045e84a324bSAshish Kumar	  Support for NXP LS1088ARDB platform.
1046e84a324bSAshish Kumar	  The LS1088A Reference design board (RDB) is a high-performance
1047e84a324bSAshish Kumar	  development platform that supports the QorIQ LS1088A
1048e84a324bSAshish Kumar	  Layerscape Architecture processor.
1049e84a324bSAshish Kumar
1050550e3dc0SWang Huanconfig TARGET_LS1021AQDS
10510de15707SAlison Wang	bool "Support ls1021aqds"
1052e5ec4815STom Rini	select BOARD_LATE_INIT
1053acf15001SLokesh Vutla	select CPU_V7A
1054adee1d4cSHongbo Zhang	select CPU_V7_HAS_NONSEC
1055adee1d4cSHongbo Zhang	select CPU_V7_HAS_VIRT
105650f0c663SAlison Wang	select SUPPORT_SPL
10570a37cf8fSYork Sun	select ARCH_LS1021A
1058217f92bbSMasahiro Yamada	select ARCH_SUPPORT_PSCI
10595e8bd7e1SYork Sun	select LS1_DEEP_SLEEP
1060d26e34c4SYork Sun	select SYS_FSL_DDR
1061a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
1062fedb428cSSimon Glass	imply SCSI
1063217f92bbSMasahiro Yamada
1064c8a7d9daSWang Huanconfig TARGET_LS1021ATWR
10650de15707SAlison Wang	bool "Support ls1021atwr"
1066e5ec4815STom Rini	select BOARD_LATE_INIT
1067acf15001SLokesh Vutla	select CPU_V7A
1068adee1d4cSHongbo Zhang	select CPU_V7_HAS_NONSEC
1069adee1d4cSHongbo Zhang	select CPU_V7_HAS_VIRT
107050f0c663SAlison Wang	select SUPPORT_SPL
10710a37cf8fSYork Sun	select ARCH_LS1021A
1072217f92bbSMasahiro Yamada	select ARCH_SUPPORT_PSCI
10735e8bd7e1SYork Sun	select LS1_DEEP_SLEEP
1074a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
1075fedb428cSSimon Glass	imply SCSI
1076c8a7d9daSWang Huan
107720c700f8SFeng Liconfig TARGET_LS1021AIOT
107820c700f8SFeng Li	bool "Support ls1021aiot"
1079e5ec4815STom Rini	select BOARD_LATE_INIT
1080acf15001SLokesh Vutla	select CPU_V7A
108120c700f8SFeng Li	select CPU_V7_HAS_NONSEC
108220c700f8SFeng Li	select CPU_V7_HAS_VIRT
108320c700f8SFeng Li	select SUPPORT_SPL
108420c700f8SFeng Li	select ARCH_LS1021A
108520c700f8SFeng Li	select ARCH_SUPPORT_PSCI
1086fedb428cSSimon Glass	imply SCSI
108720c700f8SFeng Li	help
108820c700f8SFeng Li	  Support for Freescale LS1021AIOT platform.
108920c700f8SFeng Li	  The LS1021A Freescale board (IOT) is a high-performance
109020c700f8SFeng Li	  development platform that supports the QorIQ LS1021A
109120c700f8SFeng Li	  Layerscape Architecture processor.
109220c700f8SFeng Li
109302b5d2edSShaohui Xieconfig TARGET_LS1043AQDS
109402b5d2edSShaohui Xie	bool "Support ls1043aqds"
10950a37cf8fSYork Sun	select ARCH_LS1043A
109602b5d2edSShaohui Xie	select ARM64
109702b5d2edSShaohui Xie	select ARMV8_MULTIENTRY
1098e5ec4815STom Rini	select BOARD_LATE_INIT
109902b5d2edSShaohui Xie	select SUPPORT_SPL
1100a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
1101fedb428cSSimon Glass	imply SCSI
110202b5d2edSShaohui Xie	help
110302b5d2edSShaohui Xie	  Support for Freescale LS1043AQDS platform.
110402b5d2edSShaohui Xie
1105f3a8e2b7SMingkai Huconfig TARGET_LS1043ARDB
1106f3a8e2b7SMingkai Hu	bool "Support ls1043ardb"
11070a37cf8fSYork Sun	select ARCH_LS1043A
1108f3a8e2b7SMingkai Hu	select ARM64
1109831c068fSHou Zhiqiang	select ARMV8_MULTIENTRY
1110e5ec4815STom Rini	select BOARD_LATE_INIT
11113ad44729SGong Qianyu	select SUPPORT_SPL
1112a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
1113fedb428cSSimon Glass	imply SCSI
1114f3a8e2b7SMingkai Hu	help
1115f3a8e2b7SMingkai Hu	  Support for Freescale LS1043ARDB platform.
1116f3a8e2b7SMingkai Hu
1117126fe70dSShaohui Xieconfig TARGET_LS1046AQDS
1118126fe70dSShaohui Xie	bool "Support ls1046aqds"
1119da28e58aSYork Sun	select ARCH_LS1046A
1120126fe70dSShaohui Xie	select ARM64
1121126fe70dSShaohui Xie	select ARMV8_MULTIENTRY
1122e5ec4815STom Rini	select BOARD_LATE_INIT
1123126fe70dSShaohui Xie	select SUPPORT_SPL
1124126fe70dSShaohui Xie	select DM_SPI_FLASH if DM_SPI
1125a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
1126fedb428cSSimon Glass	imply SCSI
1127126fe70dSShaohui Xie	help
1128126fe70dSShaohui Xie	  Support for Freescale LS1046AQDS platform.
1129126fe70dSShaohui Xie	  The LS1046A Development System (QDS) is a high-performance
1130126fe70dSShaohui Xie	  development platform that supports the QorIQ LS1046A
1131126fe70dSShaohui Xie	  Layerscape Architecture processor.
1132126fe70dSShaohui Xie
1133dd02936fSMingkai Huconfig TARGET_LS1046ARDB
1134dd02936fSMingkai Hu	bool "Support ls1046ardb"
1135da28e58aSYork Sun	select ARCH_LS1046A
1136dd02936fSMingkai Hu	select ARM64
1137dd02936fSMingkai Hu	select ARMV8_MULTIENTRY
1138e5ec4815STom Rini	select BOARD_LATE_INIT
1139dd02936fSMingkai Hu	select SUPPORT_SPL
1140dd02936fSMingkai Hu	select DM_SPI_FLASH if DM_SPI
1141dccef2ecSHou Zhiqiang	select POWER_MC34VR500
1142a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
1143fedb428cSSimon Glass	imply SCSI
1144dd02936fSMingkai Hu	help
1145dd02936fSMingkai Hu	  Support for Freescale LS1046ARDB platform.
1146dd02936fSMingkai Hu	  The LS1046A Reference Design Board (RDB) is a high-performance
1147dd02936fSMingkai Hu	  development platform that supports the QorIQ LS1046A
1148dd02936fSMingkai Hu	  Layerscape Architecture processor.
1149dd02936fSMingkai Hu
1150dd84058dSMasahiro Yamadaconfig TARGET_H2200
1151dd84058dSMasahiro Yamada	bool "Support h2200"
11522e07c249SGeorges Savoundararadj	select CPU_PXA
1153dd84058dSMasahiro Yamada
1154f19eb154SVasily Khoruzhickconfig TARGET_ZIPITZ2
1155f19eb154SVasily Khoruzhick	bool "Support zipitz2"
1156f19eb154SVasily Khoruzhick	select CPU_PXA
1157f19eb154SVasily Khoruzhick
1158dd84058dSMasahiro Yamadaconfig TARGET_COLIBRI_PXA270
1159dd84058dSMasahiro Yamada	bool "Support colibri_pxa270"
11602e07c249SGeorges Savoundararadj	select CPU_PXA
1161dd84058dSMasahiro Yamada
116266cba041SMasahiro Yamadaconfig ARCH_UNIPHIER
1163b6ef3a3fSMasahiro Yamada	bool "Socionext UniPhier SoCs"
1164e5ec4815STom Rini	select BOARD_LATE_INIT
11654e819950SMasahiro Yamada	select DM
1166b800cbdeSMasahiro Yamada	select DM_GPIO
11674e819950SMasahiro Yamada	select DM_I2C
11684aceb3f8SMasahiro Yamada	select DM_MMC
11694fb96c48SMasahiro Yamada	select DM_RESET
1170b5550e49SMasahiro Yamada	select DM_SERIAL
117147a79f65SMasahiro Yamada	select DM_USB
1172b5550e49SMasahiro Yamada	select OF_CONTROL
1173b5550e49SMasahiro Yamada	select OF_LIBFDT
117427350c92SMasahiro Yamada	select PINCTRL
11750680f1b1SLey Foon Tan	select SPL_BOARD_INIT if SPL
1176561ca649SMasahiro Yamada	select SPL_DM if SPL
1177561ca649SMasahiro Yamada	select SPL_LIBCOMMON_SUPPORT if SPL
1178561ca649SMasahiro Yamada	select SPL_LIBGENERIC_SUPPORT if SPL
1179561ca649SMasahiro Yamada	select SPL_OF_CONTROL if SPL
1180561ca649SMasahiro Yamada	select SPL_PINCTRL if SPL
1181b5550e49SMasahiro Yamada	select SUPPORT_SPL
118291d27a17STom Rini	imply FAT_WRITE
1183b6ef3a3fSMasahiro Yamada	help
1184b6ef3a3fSMasahiro Yamada	  Support for UniPhier SoC family developed by Socionext Inc.
1185b6ef3a3fSMasahiro Yamada	  (formerly, System LSI Business Division of Panasonic Corporation)
118666cba041SMasahiro Yamada
11870a61ee88SVikas Manochaconfig STM32
11882514c2d0SPatrick Delaunay	bool "Support STMicroelectronics STM32 MCU with cortex M"
1189ed09a554Srev13@wp.pl	select CPU_V7M
119066562414SKamil Lulko	select DM
119166562414SKamil Lulko	select DM_SERIAL
11923a649407STom Rini	select SYS_THUMB_BUILD
1193ed09a554Srev13@wp.pl
119494e9a4efSPatrice Chotardconfig ARCH_STI
119594e9a4efSPatrice Chotard	bool "Support STMicrolectronics SoCs"
1196acf15001SLokesh Vutla	select CPU_V7A
1197214a17e6SPatrice Chotard	select DM
1198214a17e6SPatrice Chotard	select DM_SERIAL
1199eee20f81SPatrice Chotard	select BLK
1200eee20f81SPatrice Chotard	select DM_MMC
1201584861ffSPatrice Chotard	select DM_RESET
120294e9a4efSPatrice Chotard	help
120394e9a4efSPatrice Chotard	  Support for STMicroelectronics STiH407/10 SoC family.
120494e9a4efSPatrice Chotard	  This SoC is used on Linaro 96Board STiH410-B2260
120594e9a4efSPatrice Chotard
12062514c2d0SPatrick Delaunayconfig ARCH_STM32MP
12072514c2d0SPatrick Delaunay	bool "Support STMicroelectronics STM32MP Socs with cortex A"
120808772f6eSPatrick Delaunay	select ARCH_MISC_INIT
12092514c2d0SPatrick Delaunay	select BOARD_LATE_INIT
12102514c2d0SPatrick Delaunay	select CLK
12112514c2d0SPatrick Delaunay	select DM
12122514c2d0SPatrick Delaunay	select DM_GPIO
12132514c2d0SPatrick Delaunay	select DM_RESET
12142514c2d0SPatrick Delaunay	select DM_SERIAL
12152514c2d0SPatrick Delaunay	select OF_CONTROL
12162514c2d0SPatrick Delaunay	select OF_LIBFDT
12172514c2d0SPatrick Delaunay	select PINCTRL
12182514c2d0SPatrick Delaunay	select REGMAP
12192514c2d0SPatrick Delaunay	select SUPPORT_SPL
12202514c2d0SPatrick Delaunay	select SYSCON
122186634a93SPatrick Delaunay	select SYSRESET
12222514c2d0SPatrick Delaunay	select SYS_THUMB_BUILD
12232514c2d0SPatrick Delaunay	help
12242514c2d0SPatrick Delaunay	  Support for STM32MP SoC family developed by STMicroelectronics,
12252514c2d0SPatrick Delaunay	  MPUs based on ARM cortex A core
12262514c2d0SPatrick Delaunay	  U-BOOT is running in DDR and SPL support is the unsecure First Stage
12272514c2d0SPatrick Delaunay	  BootLoader (FSBL)
12282514c2d0SPatrick Delaunay
12292444dae5SSimon Glassconfig ARCH_ROCKCHIP
12302444dae5SSimon Glass	bool "Support Rockchip SoCs"
12312444dae5SSimon Glass	select OF_CONTROL
1232aa15038cSSimon Glass	select BLK
12332444dae5SSimon Glass	select DM
1234a381bcf5SKever Yang	select SPL_DM if SPL
1235aa15038cSSimon Glass	select SYS_MALLOC_F
12363a649407STom Rini	select SYS_THUMB_BUILD if !ARM64
1237a381bcf5SKever Yang	select SPL_SYS_MALLOC_SIMPLE if SPL
1238aa15038cSSimon Glass	select DM_GPIO
1239aa15038cSSimon Glass	select DM_I2C
1240aa15038cSSimon Glass	select DM_MMC
1241aa15038cSSimon Glass	select DM_SERIAL
1242aa15038cSSimon Glass	select DM_SPI
1243aa15038cSSimon Glass	select DM_SPI_FLASH
1244892742dfSMengDongyang	select DM_USB if USB
12458d29e3a4SKever Yang	select DM_PWM
12468d29e3a4SKever Yang	select DM_REGULATOR
124714ad6eb2SPhilipp Tomsich	select ENABLE_ARM_SOC_BOOT0_HOOK
1248f1b1f770SAdam Ford	select SPI
124948f6232eSTom Rini	imply CMD_FASTBOOT
12507325f6cfSMasahiro Yamada	imply DISTRO_DEFAULTS
125148f6232eSTom Rini	imply FASTBOOT
125291d27a17STom Rini	imply FAT_WRITE
125348f6232eSTom Rini	imply USB_FUNCTION_FASTBOOT
12540532ceefSKever Yang	imply SPL_SYSRESET
1255e19fa89cSKever Yang	imply TPL_SYSRESET
12568e8bccccSPhilipp Tomsich	imply ADC
12578e8bccccSPhilipp Tomsich	imply SARADC_ROCKCHIP
1258c3c0331dSKever Yang	imply SYS_NS16550
12592444dae5SSimon Glass
1260746f985aSSergey Temerkhanovconfig TARGET_THUNDERX_88XX
1261746f985aSSergey Temerkhanov	bool "Support ThunderX 88xx"
1262b4ba1693SMarek Vasut	select ARM64
1263746f985aSSergey Temerkhanov	select OF_CONTROL
1264067716baSTom Rini	select SYS_CACHE_SHIFT_7
1265cf2c7784SAlexander Graf	select PL01X_SERIAL
1266746f985aSSergey Temerkhanov
12674697abeaSmaxims@google.comconfig ARCH_ASPEED
12684697abeaSmaxims@google.com	bool "Support Aspeed SoCs"
12694697abeaSmaxims@google.com	select OF_CONTROL
12704697abeaSmaxims@google.com	select DM
12714697abeaSmaxims@google.com
1272dd84058dSMasahiro Yamadaendchoice
1273dd84058dSMasahiro Yamada
12745fbed8f2SAndrew F. Davisconfig TI_SECURE_DEVICE
12755fbed8f2SAndrew F. Davis	bool "HS Device Type Support"
12765fbed8f2SAndrew F. Davis	depends on ARCH_KEYSTONE || ARCH_OMAP2PLUS
12775fbed8f2SAndrew F. Davis	help
12785fbed8f2SAndrew F. Davis	  If a high secure (HS) device type is being used, this config
12795fbed8f2SAndrew F. Davis	  must be set. This option impacts various aspects of the
12805fbed8f2SAndrew F. Davis	  build system (to create signed boot images that can be
12815fbed8f2SAndrew F. Davis	  authenticated) and the code. See the doc/README.ti-secure
12825fbed8f2SAndrew F. Davis	  file for further details.
12835fbed8f2SAndrew F. Davis
12844697abeaSmaxims@google.comsource "arch/arm/mach-aspeed/Kconfig"
12854697abeaSmaxims@google.com
12864614b891SMasahiro Yamadasource "arch/arm/mach-at91/Kconfig"
12874614b891SMasahiro Yamada
1288ddf6bd48SMasahiro Yamadasource "arch/arm/mach-bcm283x/Kconfig"
12893491ba63SMasahiro Yamada
1290ddf6bd48SMasahiro Yamadasource "arch/arm/mach-davinci/Kconfig"
129134e609caSSimon Glass
129277b55e8cSThomas Abrahamsource "arch/arm/mach-exynos/Kconfig"
129372df68ccSMasahiro Yamada
129472a8ff4bSMasahiro Yamadasource "arch/arm/mach-highbank/Kconfig"
1295ef2b694cSMasahiro Yamada
12965cbbd9bdSMasahiro Yamadasource "arch/arm/mach-integrator/Kconfig"
12975cbbd9bdSMasahiro Yamada
129839a72345SMasahiro Yamadasource "arch/arm/mach-keystone/Kconfig"
1299c338f09eSMasahiro Yamada
130056f86e39SMasahiro Yamadasource "arch/arm/mach-kirkwood/Kconfig"
130147539e23SMasahiro Yamada
1302c3d89140SStefan Roesesource "arch/arm/mach-mvebu/Kconfig"
1303c3d89140SStefan Roese
13040a37cf8fSYork Sunsource "arch/arm/cpu/armv7/ls102xa/Kconfig"
13050a37cf8fSYork Sun
130607df697eSFabio Estevamsource "arch/arm/mach-imx/mx2/Kconfig"
130707df697eSFabio Estevam
13087a7391fdSPeng Fansource "arch/arm/mach-imx/mx5/Kconfig"
13091a8150d4SAdrian Alonso
1310552a848eSStefano Babicsource "arch/arm/mach-imx/mx6/Kconfig"
131189ebc821SBoris BREZILLON
13127a7391fdSPeng Fansource "arch/arm/mach-imx/mx7/Kconfig"
13137a7391fdSPeng Fan
13147a7391fdSPeng Fansource "arch/arm/mach-imx/mx7ulp/Kconfig"
13157a7391fdSPeng Fan
13167a7391fdSPeng Fansource "arch/arm/mach-imx/mx8m/Kconfig"
1317424ee3d1SAndrej Rosano
1318c5343d4eSStefan Agnersource "arch/arm/mach-imx/mxs/Kconfig"
1319c5343d4eSStefan Agner
1320983e3700STom Rinisource "arch/arm/mach-omap2/Kconfig"
13216384726dSMadan Srinivas
1322da28e58aSYork Sunsource "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
1323da28e58aSYork Sun
13243e93b4e6SMasahiro Yamadasource "arch/arm/mach-orion5x/Kconfig"
132522f2be7aSMasahiro Yamada
1326badbb63cSNobuhiro Iwamatsusource "arch/arm/mach-rmobile/Kconfig"
1327f40b9898SMasahiro Yamada
1328bfcef28aSBeniamino Galvanisource "arch/arm/mach-meson/Kconfig"
1329bfcef28aSBeniamino Galvani
133032f11829STuomas Tynkkynensource "arch/arm/mach-qemu/Kconfig"
133132f11829STuomas Tynkkynen
13322444dae5SSimon Glasssource "arch/arm/mach-rockchip/Kconfig"
13332444dae5SSimon Glass
1334225f5eecSMinkyu Kangsource "arch/arm/mach-s5pc1xx/Kconfig"
1335311757beSSimon Glass
133608592136SMateusz Kulikowskisource "arch/arm/mach-snapdragon/Kconfig"
133708592136SMateusz Kulikowski
13387865f4b0SMasahiro Yamadasource "arch/arm/mach-socfpga/Kconfig"
13397865f4b0SMasahiro Yamada
134094e9a4efSPatrice Chotardsource "arch/arm/mach-sti/Kconfig"
134194e9a4efSPatrice Chotard
13420a61ee88SVikas Manochasource "arch/arm/mach-stm32/Kconfig"
13430a61ee88SVikas Manocha
13442514c2d0SPatrick Delaunaysource "arch/arm/mach-stm32mp/Kconfig"
13452514c2d0SPatrick Delaunay
13463abfd887SMasahiro Yamadasource "arch/arm/mach-sunxi/Kconfig"
13473abfd887SMasahiro Yamada
134809f455dcSMasahiro Yamadasource "arch/arm/mach-tegra/Kconfig"
1349ddd960e6SMasahiro Yamada
13504c425570SMasahiro Yamadasource "arch/arm/mach-uniphier/Kconfig"
135166cba041SMasahiro Yamada
13527966b437SStefan Agnersource "arch/arm/cpu/armv7/vf610/Kconfig"
13537966b437SStefan Agner
13540107f240SMasahiro Yamadasource "arch/arm/mach-zynq/Kconfig"
1355ddd960e6SMasahiro Yamada
1356*1d6c54ecSMichal Simeksource "arch/arm/mach-zynqmp-r5/Kconfig"
1357*1d6c54ecSMichal Simek
1358ea624e19SHans de Goedesource "arch/arm/cpu/armv7/Kconfig"
1359ea624e19SHans de Goede
136075580007SSiva Durga Prasad Paladugusource "arch/arm/cpu/armv8/zynqmp/Kconfig"
136175580007SSiva Durga Prasad Paladugu
136223b5877cSLinus Walleijsource "arch/arm/cpu/armv8/Kconfig"
136323b5877cSLinus Walleij
1364552a848eSStefano Babicsource "arch/arm/mach-imx/Kconfig"
1365a05a6045SBoris BREZILLON
1366d8ccbe93SHeiko Schochersource "board/bosch/shc/Kconfig"
1367dd84058dSMasahiro Yamadasource "board/CarMediaLab/flea3/Kconfig"
1368dd84058dSMasahiro Yamadasource "board/Marvell/aspenite/Kconfig"
1369dd84058dSMasahiro Yamadasource "board/Marvell/gplugd/Kconfig"
1370dd84058dSMasahiro Yamadasource "board/armadeus/apf27/Kconfig"
1371dd84058dSMasahiro Yamadasource "board/armltd/vexpress/Kconfig"
1372dd84058dSMasahiro Yamadasource "board/armltd/vexpress64/Kconfig"
137343486e4cSSteve Raesource "board/broadcom/bcm23550_w1d/Kconfig"
1374dd84058dSMasahiro Yamadasource "board/broadcom/bcm28155_ap/Kconfig"
1375abb1678cSSteve Raesource "board/broadcom/bcmcygnus/Kconfig"
1376abb1678cSSteve Raesource "board/broadcom/bcmnsp/Kconfig"
1377274bced8SJon Masonsource "board/broadcom/bcmns2/Kconfig"
1378746f985aSSergey Temerkhanovsource "board/cavium/thunderx/Kconfig"
1379dd84058dSMasahiro Yamadasource "board/cirrus/edb93xx/Kconfig"
138085ab0452SFelix Bracksource "board/eets/pdu001/Kconfig"
138144937214SPrabhakar Kushwahasource "board/freescale/ls2080a/Kconfig"
138244937214SPrabhakar Kushwahasource "board/freescale/ls2080aqds/Kconfig"
138344937214SPrabhakar Kushwahasource "board/freescale/ls2080ardb/Kconfig"
1384e84a324bSAshish Kumarsource "board/freescale/ls1088a/Kconfig"
1385550e3dc0SWang Huansource "board/freescale/ls1021aqds/Kconfig"
138602b5d2edSShaohui Xiesource "board/freescale/ls1043aqds/Kconfig"
1387c8a7d9daSWang Huansource "board/freescale/ls1021atwr/Kconfig"
138820c700f8SFeng Lisource "board/freescale/ls1021aiot/Kconfig"
1389126fe70dSShaohui Xiesource "board/freescale/ls1046aqds/Kconfig"
1390f3a8e2b7SMingkai Husource "board/freescale/ls1043ardb/Kconfig"
1391dd02936fSMingkai Husource "board/freescale/ls1046ardb/Kconfig"
13929d044fcbSPrabhakar Kushwahasource "board/freescale/ls1012aqds/Kconfig"
13933b6e3898SPrabhakar Kushwahasource "board/freescale/ls1012ardb/Kconfig"
1394ff78aa2bSPrabhakar Kushwahasource "board/freescale/ls1012afrdm/Kconfig"
1395dd84058dSMasahiro Yamadasource "board/freescale/mx31pdk/Kconfig"
1396dd84058dSMasahiro Yamadasource "board/freescale/mx35pdk/Kconfig"
13979702ec00SEddy Petrișorsource "board/freescale/s32v234evb/Kconfig"
139860083261SDirk Eibachsource "board/gdsys/a38x/Kconfig"
1399ab38bf6aSMarcin Niestrojsource "board/grinn/chiliboard/Kconfig"
1400dd84058dSMasahiro Yamadasource "board/gumstix/pepper/Kconfig"
1401dd84058dSMasahiro Yamadasource "board/h2200/Kconfig"
1402345243edSTom Rinisource "board/hisilicon/hikey/Kconfig"
1403d754254fSJorge Ramirez-Ortizsource "board/hisilicon/poplar/Kconfig"
1404a96c08f5SLadislav Michlsource "board/isee/igep003x/Kconfig"
1405dd84058dSMasahiro Yamadasource "board/phytec/pcm051/Kconfig"
1406dd84058dSMasahiro Yamadasource "board/silica/pengwyn/Kconfig"
1407dd84058dSMasahiro Yamadasource "board/spear/spear300/Kconfig"
1408dd84058dSMasahiro Yamadasource "board/spear/spear310/Kconfig"
1409dd84058dSMasahiro Yamadasource "board/spear/spear320/Kconfig"
1410dd84058dSMasahiro Yamadasource "board/spear/spear600/Kconfig"
1411dd84058dSMasahiro Yamadasource "board/spear/x600/Kconfig"
14129fa32b12SVikas Manochasource "board/st/stv0991/Kconfig"
14139d1b2987SEnric Balletbò i Serrasource "board/tcl/sl50/Kconfig"
1414a2bc4321SGilles Gameirosource "board/birdland/bav335x/Kconfig"
1415dd84058dSMasahiro Yamadasource "board/timll/devkit3250/Kconfig"
1416dd84058dSMasahiro Yamadasource "board/toradex/colibri_pxa270/Kconfig"
14176ce89324SYegor Yefremovsource "board/vscom/baltos/Kconfig"
1418dd84058dSMasahiro Yamadasource "board/woodburn/Kconfig"
1419412ae53aSAlbert ARIBAUD \(3ADEV\)source "board/work-microwave/work_92105/Kconfig"
1420c436bf92SSiva Durga Prasad Paladugusource "board/xilinx/zynqmp/Kconfig"
1421f19eb154SVasily Khoruzhicksource "board/zipitz2/Kconfig"
1422dd84058dSMasahiro Yamada
142351b17d49SMasahiro Yamadasource "arch/arm/Kconfig.debug"
142451b17d49SMasahiro Yamada
1425dd84058dSMasahiro Yamadaendmenu
1426b529993eSPhilipp Tomsich
1427b529993eSPhilipp Tomsichconfig SPL_LDSCRIPT
142807a8f79eSMans Rullgard        default "arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" if (ARCH_MX23 || ARCH_MX28) && !SPL_FRAMEWORK
1429b529993eSPhilipp Tomsich        default "arch/arm/cpu/arm1136/u-boot-spl.lds" if CPU_ARM1136
1430b529993eSPhilipp Tomsich	default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64
1431b529993eSPhilipp Tomsich
1432b529993eSPhilipp Tomsich
1433