xref: /openbmc/u-boot/arch/arm/Kconfig (revision 3159ec64f5d19a123ed944295b4e974b2ee73b52)
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_WOODBURN
501dd84058dSMasahiro Yamada	bool "Support woodburn"
5022e07c249SGeorges Savoundararadj	select CPU_ARM1136
503dd84058dSMasahiro Yamada
504dd84058dSMasahiro Yamadaconfig TARGET_WOODBURN_SD
505dd84058dSMasahiro Yamada	bool "Support woodburn_sd"
5062e07c249SGeorges Savoundararadj	select CPU_ARM1136
50702627356SMasahiro Yamada	select SUPPORT_SPL
508dd84058dSMasahiro Yamada
509dd84058dSMasahiro Yamadaconfig TARGET_FLEA3
510dd84058dSMasahiro Yamada	bool "Support flea3"
5112e07c249SGeorges Savoundararadj	select CPU_ARM1136
512dd84058dSMasahiro Yamada
513dd84058dSMasahiro Yamadaconfig TARGET_MX35PDK
514dd84058dSMasahiro Yamada	bool "Support mx35pdk"
515e5ec4815STom Rini	select BOARD_LATE_INIT
5162e07c249SGeorges Savoundararadj	select CPU_ARM1136
517dd84058dSMasahiro Yamada
518ddf6bd48SMasahiro Yamadaconfig ARCH_BCM283X
519ddf6bd48SMasahiro Yamada	bool "Broadcom BCM283X family"
52058d423b8SMasahiro Yamada	select DM
52158d423b8SMasahiro Yamada	select DM_SERIAL
52258d423b8SMasahiro Yamada	select DM_GPIO
52376709096SFabian Vogt	select OF_CONTROL
524cf2c7784SAlexander Graf	select PL01X_SERIAL
525ae5326a6SAlexander Graf	select SERIAL_SEARCH_ALL
52691d27a17STom Rini	imply FAT_WRITE
52746414296SStephen Warren
528dd84058dSMasahiro Yamadaconfig TARGET_VEXPRESS_CA15_TC2
529dd84058dSMasahiro Yamada	bool "Support vexpress_ca15_tc2"
530acf15001SLokesh Vutla	select CPU_V7A
531ea624e19SHans de Goede	select CPU_V7_HAS_NONSEC
532ea624e19SHans de Goede	select CPU_V7_HAS_VIRT
533d10fc50fSAlexander Graf	select PL011_SERIAL
534dd84058dSMasahiro Yamada
535dd84058dSMasahiro Yamadaconfig TARGET_VEXPRESS_CA5X2
536dd84058dSMasahiro Yamada	bool "Support vexpress_ca5x2"
537acf15001SLokesh Vutla	select CPU_V7A
538d10fc50fSAlexander Graf	select PL011_SERIAL
539dd84058dSMasahiro Yamada
540dd84058dSMasahiro Yamadaconfig TARGET_VEXPRESS_CA9X4
541dd84058dSMasahiro Yamada	bool "Support vexpress_ca9x4"
542acf15001SLokesh Vutla	select CPU_V7A
543d10fc50fSAlexander Graf	select PL011_SERIAL
544dd84058dSMasahiro Yamada
54543486e4cSSteve Raeconfig TARGET_BCM23550_W1D
54643486e4cSSteve Rae	bool "Support bcm23550_w1d"
547acf15001SLokesh Vutla	select CPU_V7A
548221a949eSDaniel Thompson	imply CRC32_VERIFY
54991d27a17STom Rini	imply FAT_WRITE
55043486e4cSSteve Rae
551dd84058dSMasahiro Yamadaconfig TARGET_BCM28155_AP
552dd84058dSMasahiro Yamada	bool "Support bcm28155_ap"
553acf15001SLokesh Vutla	select CPU_V7A
554221a949eSDaniel Thompson	imply CRC32_VERIFY
55591d27a17STom Rini	imply FAT_WRITE
556dd84058dSMasahiro Yamada
557abb1678cSSteve Raeconfig TARGET_BCMCYGNUS
558abb1678cSSteve Rae	bool "Support bcmcygnus"
559acf15001SLokesh Vutla	select CPU_V7A
560221a949eSDaniel Thompson	imply CRC32_VERIFY
561551c3934SSimon Glass	imply CMD_HASH
56291d27a17STom Rini	imply FAT_WRITE
563221a949eSDaniel Thompson	imply HASH_VERIFY
564c89782dcSSuji Velupillai	imply NETDEVICES
565c89782dcSSuji Velupillai	imply BCM_SF2_ETH
566c89782dcSSuji Velupillai	imply BCM_SF2_ETH_GMAC
5679dec5270SSteve Rae
568abb1678cSSteve Raeconfig TARGET_BCMNSP
569abb1678cSSteve Rae	bool "Support bcmnsp"
570acf15001SLokesh Vutla	select CPU_V7A
5719dec5270SSteve Rae
572274bced8SJon Masonconfig TARGET_BCMNS2
573274bced8SJon Mason	bool "Support Broadcom Northstar2"
574274bced8SJon Mason	select ARM64
575274bced8SJon Mason	help
576274bced8SJon Mason	  Support for Broadcom Northstar 2 SoCs.  NS2 is a quad-core 64-bit
577274bced8SJon Mason	  ARMv8 Cortex-A57 processors targeting a broad range of networking
578274bced8SJon Mason	  applications
579274bced8SJon Mason
58072df68ccSMasahiro Yamadaconfig ARCH_EXYNOS
58172df68ccSMasahiro Yamada	bool "Samsung EXYNOS"
58258d423b8SMasahiro Yamada	select DM
583fc47cf9dSSimon Glass	select DM_I2C
58458d423b8SMasahiro Yamada	select DM_SPI_FLASH
58558d423b8SMasahiro Yamada	select DM_SERIAL
58658d423b8SMasahiro Yamada	select DM_SPI
58758d423b8SMasahiro Yamada	select DM_GPIO
5881fa4bfdeSSimon Glass	select DM_KEYBOARD
589f1b1f770SAdam Ford	select SPI
59091d27a17STom Rini	imply FAT_WRITE
591dd84058dSMasahiro Yamada
592311757beSSimon Glassconfig ARCH_S5PC1XX
593311757beSSimon Glass	bool "Samsung S5PC1XX"
594acf15001SLokesh Vutla	select CPU_V7A
59558d423b8SMasahiro Yamada	select DM
59658d423b8SMasahiro Yamada	select DM_SERIAL
59758d423b8SMasahiro Yamada	select DM_GPIO
59808848e9cSSimon Glass	select DM_I2C
599311757beSSimon Glass
600ef2b694cSMasahiro Yamadaconfig ARCH_HIGHBANK
601ef2b694cSMasahiro Yamada	bool "Calxeda Highbank"
602acf15001SLokesh Vutla	select CPU_V7A
603d10fc50fSAlexander Graf	select PL011_SERIAL
604dd84058dSMasahiro Yamada
6055cbbd9bdSMasahiro Yamadaconfig ARCH_INTEGRATOR
6065cbbd9bdSMasahiro Yamada	bool "ARM Ltd. Integrator family"
6073f394e70SLinus Walleij	select DM
6083f394e70SLinus Walleij	select DM_SERIAL
609cf2c7784SAlexander Graf	select PL01X_SERIAL
6105cbbd9bdSMasahiro Yamada
611c338f09eSMasahiro Yamadaconfig ARCH_KEYSTONE
612c338f09eSMasahiro Yamada	bool "TI Keystone"
613acf15001SLokesh Vutla	select CPU_V7A
61402627356SMasahiro Yamada	select SUPPORT_SPL
6153a649407STom Rini	select SYS_THUMB_BUILD
616534bc70eSTom Rini	select CMD_POWEROFF
6177842b6a9SAndre Przywara	select SYS_ARCH_TIMER
618d56b4b19STom Rini	imply CMD_MTDPARTS
61946f9ef18SAndrew F. Davis	imply FIT
62015dc63d6SSimon Glass	imply CMD_SAVES
621dd84058dSMasahiro Yamada
622a93fbf4aSMasahiro Yamadaconfig ARCH_OMAP2PLUS
623a93fbf4aSMasahiro Yamada	bool "TI OMAP2+"
624acf15001SLokesh Vutla	select CPU_V7A
6250680f1b1SLey Foon Tan	select SPL_BOARD_INIT if SPL
626ff6c3125STom Rini	select SPL_STACK_R if SPL
627a93fbf4aSMasahiro Yamada	select SUPPORT_SPL
628a93fbf4aSMasahiro Yamada	imply FIT
629a93fbf4aSMasahiro Yamada
630bfcef28aSBeniamino Galvaniconfig ARCH_MESON
631bfcef28aSBeniamino Galvani	bool "Amlogic Meson"
6327325f6cfSMasahiro Yamada	imply DISTRO_DEFAULTS
633bfcef28aSBeniamino Galvani	help
634bfcef28aSBeniamino Galvani	  Support for the Meson SoC family developed by Amlogic Inc.,
635bfcef28aSBeniamino Galvani	  targeted at media players and tablet computers. We currently
636bfcef28aSBeniamino Galvani	  support the S905 (GXBaby) 64-bit SoC.
637bfcef28aSBeniamino Galvani
6387a7391fdSPeng Fanconfig ARCH_MX8M
6397a7391fdSPeng Fan	bool "NXP i.MX8M platform"
6407a7391fdSPeng Fan	select ARM64
6417a7391fdSPeng Fan	select DM
6427a7391fdSPeng Fan	select SUPPORT_SPL
6437a7391fdSPeng Fan
644c5343d4eSStefan Agnerconfig ARCH_MX23
645c5343d4eSStefan Agner	bool "NXP i.MX23 family"
646c5343d4eSStefan Agner	select CPU_ARM926EJS
647c5343d4eSStefan Agner	select PL011_SERIAL
648c5343d4eSStefan Agner	select SUPPORT_SPL
649c5343d4eSStefan Agner
65007df697eSFabio Estevamconfig ARCH_MX25
65107df697eSFabio Estevam	bool "NXP MX25"
65207df697eSFabio Estevam	select CPU_ARM926EJS
6538bbff6a7SAdam Ford	imply MXC_GPIO
65407df697eSFabio Estevam
65525c5b4e1SStefan Agnerconfig ARCH_MX28
65625c5b4e1SStefan Agner	bool "NXP i.MX28 family"
65725c5b4e1SStefan Agner	select CPU_ARM926EJS
65825c5b4e1SStefan Agner	select PL011_SERIAL
65925c5b4e1SStefan Agner	select SUPPORT_SPL
66025c5b4e1SStefan Agner
661*3159ec64SMagnus Liljaconfig ARCH_MX31
662*3159ec64SMagnus Lilja	bool "NXP i.MX31 family"
663*3159ec64SMagnus Lilja	select CPU_ARM1136
664*3159ec64SMagnus Lilja
665e90a08daSPeng Fanconfig ARCH_MX7ULP
666e90a08daSPeng Fan        bool "NXP MX7ULP"
667acf15001SLokesh Vutla	select CPU_V7A
668e90a08daSPeng Fan	select ROM_UNIFIED_SECTIONS
6698bbff6a7SAdam Ford	imply MXC_GPIO
670e90a08daSPeng Fan
6711a8150d4SAdrian Alonsoconfig ARCH_MX7
6721a8150d4SAdrian Alonso	bool "Freescale MX7"
673acf15001SLokesh Vutla	select CPU_V7A
6742c2e2c9eSYork Sun	select SYS_FSL_HAS_SEC if SECURE_BOOT
6752c2e2c9eSYork Sun	select SYS_FSL_SEC_COMPAT_4
67690b80386SYork Sun	select SYS_FSL_SEC_LE
677a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
6784585601aSSimon Glass	select ARCH_MISC_INIT
6798bbff6a7SAdam Ford	imply MXC_GPIO
6801a8150d4SAdrian Alonso
68189ebc821SBoris BREZILLONconfig ARCH_MX6
68289ebc821SBoris BREZILLON	bool "Freescale MX6"
683acf15001SLokesh Vutla	select CPU_V7A
6842c2e2c9eSYork Sun	select SYS_FSL_HAS_SEC if SECURE_BOOT
6852c2e2c9eSYork Sun	select SYS_FSL_SEC_COMPAT_4
68690b80386SYork Sun	select SYS_FSL_SEC_LE
6873a649407STom Rini	select SYS_THUMB_BUILD if SPL
6888bbff6a7SAdam Ford	imply MXC_GPIO
68989ebc821SBoris BREZILLON
690b529993eSPhilipp Tomsichif ARCH_MX6
691b529993eSPhilipp Tomsichconfig SPL_LDSCRIPT
692b529993eSPhilipp Tomsich        default "arch/arm/mach-omap2/u-boot-spl.lds"
693b529993eSPhilipp Tomsichendif
694b529993eSPhilipp Tomsich
695424ee3d1SAndrej Rosanoconfig ARCH_MX5
696424ee3d1SAndrej Rosano	bool "Freescale MX5"
697acf15001SLokesh Vutla	select CPU_V7A
698a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
6998bbff6a7SAdam Ford	imply MXC_GPIO
700424ee3d1SAndrej Rosano
70132f11829STuomas Tynkkynenconfig ARCH_QEMU
70232f11829STuomas Tynkkynen	bool "QEMU Virtual Platform"
70332f11829STuomas Tynkkynen	select DM
70432f11829STuomas Tynkkynen	select DM_SERIAL
70532f11829STuomas Tynkkynen	select OF_CONTROL
706cf2c7784SAlexander Graf	select PL01X_SERIAL
70732f11829STuomas Tynkkynen
7081cc95f6eSNobuhiro Iwamatsuconfig ARCH_RMOBILE
709f40b9898SMasahiro Yamada	bool "Renesas ARM SoCs"
7101cc95f6eSNobuhiro Iwamatsu	select DM
7111cc95f6eSNobuhiro Iwamatsu	select DM_SERIAL
712a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
71391d27a17STom Rini	imply FAT_WRITE
7143a649407STom Rini	imply SYS_THUMB_BUILD
715dd84058dSMasahiro Yamada
7169702ec00SEddy Petrișorconfig TARGET_S32V234EVB
7179702ec00SEddy Petrișor	bool "Support s32v234evb"
7189702ec00SEddy Petrișor	select ARM64
719c01e4a1aSYork Sun	select SYS_FSL_ERRATUM_ESDHC111
7209702ec00SEddy Petrișor
72108592136SMateusz Kulikowskiconfig ARCH_SNAPDRAGON
72208592136SMateusz Kulikowski	bool "Qualcomm Snapdragon SoCs"
72308592136SMateusz Kulikowski	select ARM64
72408592136SMateusz Kulikowski	select DM
72508592136SMateusz Kulikowski	select DM_GPIO
72608592136SMateusz Kulikowski	select DM_SERIAL
72708592136SMateusz Kulikowski	select SPMI
72808592136SMateusz Kulikowski	select OF_CONTROL
72908592136SMateusz Kulikowski	select OF_SEPARATE
73008592136SMateusz Kulikowski
7317865f4b0SMasahiro Yamadaconfig ARCH_SOCFPGA
7327865f4b0SMasahiro Yamada	bool "Altera SOCFPGA family"
733acf15001SLokesh Vutla	select CPU_V7A
73402627356SMasahiro Yamada	select SUPPORT_SPL
735dfd3dff5SMarek Vasut	select OF_CONTROL
736dfd3dff5SMarek Vasut	select SPL_OF_CONTROL
7371d9aa3e5SMasahiro Yamada	select DM
738beee6a30SMarek Vasut	select ENABLE_ARM_SOC_BOOT0_HOOK
739a421192fSSimon Glass	select ARCH_EARLY_INIT_R
7404585601aSSimon Glass	select ARCH_MISC_INIT
7413a649407STom Rini	select SYS_THUMB_BUILD
742d56b4b19STom Rini	imply CMD_MTDPARTS
743221a949eSDaniel Thompson	imply CRC32_VERIFY
744fef4a545SSimon Goldschmidt	imply DM_SPI
745fef4a545SSimon Goldschmidt	imply DM_SPI_FLASH
74691d27a17STom Rini	imply FAT_WRITE
747fef4a545SSimon Goldschmidt	imply HW_WATCHDOG
748fef4a545SSimon Goldschmidt	imply SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
749dd84058dSMasahiro Yamada
7502c7e3b90SIan Campbellconfig ARCH_SUNXI
7512c7e3b90SIan Campbell	bool "Support sunxi (Allwinner) SoCs"
752d6a0c78aSMasahiro Yamada	select BINMAN
75388bb800dSHans de Goede	select CMD_GPIO
7540878a8a7SHans de Goede	select CMD_MMC if MMC
7552997ee50SYann E. MORIN	select CMD_USB if DISTRO_DEFAULTS
756b6006bafSHans de Goede	select DM
75745368827STom Rini	select DM_ETH
758211d57a4SHans de Goede	select DM_GPIO
759211d57a4SHans de Goede	select DM_KEYBOARD
76045368827STom Rini	select DM_SERIAL
7612997ee50SYann E. MORIN	select DM_USB if DISTRO_DEFAULTS
762d75111a7SHans de Goede	select OF_BOARD_SETUP
763b6006bafSHans de Goede	select OF_CONTROL
764b6006bafSHans de Goede	select OF_SEPARATE
7656f6b7cfaSTom Rini	select SPECIFY_CONSOLE_INDEX
766ab43de80STom Rini	select SPL_STACK_R if SPL
767ab43de80STom Rini	select SPL_SYS_MALLOC_SIMPLE if SPL
7686edf6a21SHans de Goede	select SYS_NS16550
7693a649407STom Rini	select SPL_SYS_THUMB_BUILD if !ARM64
770ce2e44d8SMaxime Ripard	select SYS_THUMB_BUILD if !ARM64
7712997ee50SYann E. MORIN	select USB if DISTRO_DEFAULTS
7722997ee50SYann E. MORIN	select USB_STORAGE if DISTRO_DEFAULTS
7732997ee50SYann E. MORIN	select USB_KEYBOARD if DISTRO_DEFAULTS
7748c7d2296SHans de Goede	select USE_TINY_PRINTF
775a12fb0e3SMaxime Ripard	imply CMD_GPT
7767325f6cfSMasahiro Yamada	imply DISTRO_DEFAULTS
77791d27a17STom Rini	imply FAT_WRITE
778eff264d7SAndre Heider	imply OF_LIBFDT_OVERLAY
779af83a604SMasahiro Yamada	imply PRE_CONSOLE_BUFFER
780af83a604SMasahiro Yamada	imply SPL_GPIO_SUPPORT
781af83a604SMasahiro Yamada	imply SPL_LIBCOMMON_SUPPORT
782af83a604SMasahiro Yamada	imply SPL_LIBDISK_SUPPORT
783af83a604SMasahiro Yamada	imply SPL_LIBGENERIC_SUPPORT
7844aa2ba3aSMasahiro Yamada	imply SPL_MMC_SUPPORT if MMC
785af83a604SMasahiro Yamada	imply SPL_POWER_SUPPORT
786af83a604SMasahiro Yamada	imply SPL_SERIAL_SUPPORT
787654b02b1SMaxime Ripard	imply USB_GADGET
7888ebe4f42SChen-Yu Tsai
7897966b437SStefan Agnerconfig ARCH_VF610
7907966b437SStefan Agner	bool "Freescale Vybrid"
791acf15001SLokesh Vutla	select CPU_V7A
792c01e4a1aSYork Sun	select SYS_FSL_ERRATUM_ESDHC111
793d56b4b19STom Rini	imply CMD_MTDPARTS
7945bbc265bSAdam Ford	imply NAND
795dd84058dSMasahiro Yamada
7965ca269a4SMasahiro Yamadaconfig ARCH_ZYNQ
797b8d4497fSMichal Simek	bool "Xilinx Zynq based platform"
798e5ec4815STom Rini	select BOARD_LATE_INIT
799acf15001SLokesh Vutla	select CPU_V7A
80002627356SMasahiro Yamada	select SUPPORT_SPL
801d065cfd9SJagan Teki	select OF_CONTROL
8020680f1b1SLey Foon Tan	select SPL_BOARD_INIT if SPL
803e6cc3b25SMichal Simek	select BOARD_EARLY_INIT_F if WDT
804eb04ab34SMichal Simek	select SPL_OF_CONTROL if SPL
8058981f05cSMasahiro Yamada	select DM
806c4a142f4SMichal Simek	select DM_ETH if NET
807eb04ab34SMichal Simek	select SPL_DM if SPL
808c4a142f4SMichal Simek	select DM_MMC if MMC
8099f7a4502SJagan Teki	select DM_SPI
81042800ffaSSimon Glass	select DM_SERIAL
8119f7a4502SJagan Teki	select DM_SPI_FLASH
812eb04ab34SMichal Simek	select SPL_SEPARATE_BSS if SPL
813dec49e86SSimon Glass	select DM_USB if USB
814781745bdSStefan Herbrechtsmeier	select CLK
815578d95e9SEzequiel Garcia	select SPL_CLK if SPL
816781745bdSStefan Herbrechtsmeier	select CLK_ZYNQ
817f1b1f770SAdam Ford	select SPI
818d315628eSSimon Glass	imply CMD_CLK
81991d27a17STom Rini	imply FAT_WRITE
82072c3033fSSimon Glass	imply CMD_SPL
8214aba5fb8SMichal Simek	imply ARCH_EARLY_INIT_R
822dd84058dSMasahiro Yamada
8231d6c54ecSMichal Simekconfig ARCH_ZYNQMP_R5
8241d6c54ecSMichal Simek	bool "Xilinx ZynqMP R5 based platform"
8251d6c54ecSMichal Simek	select CPU_V7R
8261d6c54ecSMichal Simek	select OF_CONTROL
8271d6c54ecSMichal Simek	select DM
8281d6c54ecSMichal Simek	select DM_SERIAL
8291d6c54ecSMichal Simek	select CLK
8301d6c54ecSMichal Simek
8310b54a9ddSSiva Durga Prasad Paladuguconfig ARCH_ZYNQMP
832b8d4497fSMichal Simek	bool "Xilinx ZynqMP based platform"
83384c7204bSMichal Simek	select ARM64
834e5ec4815STom Rini	select BOARD_LATE_INIT
835c2490bf5SMichal Simek	select DM
836c2490bf5SMichal Simek	select OF_CONTROL
837c2490bf5SMichal Simek	select DM_SERIAL
838e6a9ed04SMichal Simek	select SUPPORT_SPL
8391f29738aSMichal Simek	select CLK
8400680f1b1SLey Foon Tan	select SPL_BOARD_INIT if SPL
8412f03968eSMichal Simek	select SPL_CLK if SPL
842dec49e86SSimon Glass	select DM_USB if USB
84391d27a17STom Rini	imply FAT_WRITE
84484c7204bSMichal Simek
845ddd960e6SMasahiro Yamadaconfig TEGRA
846ddd960e6SMasahiro Yamada	bool "NVIDIA Tegra"
8477325f6cfSMasahiro Yamada	imply DISTRO_DEFAULTS
84891d27a17STom Rini	imply FAT_WRITE
849dd84058dSMasahiro Yamada
850f91afc4dSLinus Walleijconfig TARGET_VEXPRESS64_AEMV8A
851dd84058dSMasahiro Yamada	bool "Support vexpress_aemv8a"
852016a954eSMasahiro Yamada	select ARM64
853cf2c7784SAlexander Graf	select PL01X_SERIAL
854dd84058dSMasahiro Yamada
855f91afc4dSLinus Walleijconfig TARGET_VEXPRESS64_BASE_FVP
856f91afc4dSLinus Walleij	bool "Support Versatile Express ARMv8a FVP BASE model"
857f91afc4dSLinus Walleij	select ARM64
858f91afc4dSLinus Walleij	select SEMIHOSTING
859cf2c7784SAlexander Graf	select PL01X_SERIAL
860f91afc4dSLinus Walleij
861fc04b923SRyan Harkinconfig TARGET_VEXPRESS64_BASE_FVP_DRAM
862fc04b923SRyan Harkin	bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
863fc04b923SRyan Harkin	select ARM64
864cf2c7784SAlexander Graf	select PL01X_SERIAL
865fc04b923SRyan Harkin	help
866fc04b923SRyan Harkin	  This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
867fc04b923SRyan Harkin	  the default config to allow the user to load the images directly into
868fc04b923SRyan Harkin	  DRAM using model parameters rather than by using semi-hosting to load
869fc04b923SRyan Harkin	  the files from the host filesystem.
870fc04b923SRyan Harkin
871ffc10373SLinus Walleijconfig TARGET_VEXPRESS64_JUNO
872ffc10373SLinus Walleij	bool "Support Versatile Express Juno Development Platform"
873ffc10373SLinus Walleij	select ARM64
874cf2c7784SAlexander Graf	select PL01X_SERIAL
875ffc10373SLinus Walleij
87644937214SPrabhakar Kushwahaconfig TARGET_LS2080A_EMU
87744937214SPrabhakar Kushwaha	bool "Support ls2080a_emu"
878fb2bf8c2SYork Sun	select ARCH_LS2080A
879016a954eSMasahiro Yamada	select ARM64
88023b5877cSLinus Walleij	select ARMV8_MULTIENTRY
8814585601aSSimon Glass	select ARCH_MISC_INIT
8827288c2c2SYork Sun	help
88344937214SPrabhakar Kushwaha	  Support for Freescale LS2080A_EMU platform
88444937214SPrabhakar Kushwaha	  The LS2080A Development System (EMULATOR) is a pre silicon
88544937214SPrabhakar Kushwaha	  development platform that supports the QorIQ LS2080A
8867288c2c2SYork Sun	  Layerscape Architecture processor.
8877288c2c2SYork Sun
88844937214SPrabhakar Kushwahaconfig TARGET_LS2080A_SIMU
88944937214SPrabhakar Kushwaha	bool "Support ls2080a_simu"
890fb2bf8c2SYork Sun	select ARCH_LS2080A
89144937214SPrabhakar Kushwaha	select ARM64
89244937214SPrabhakar Kushwaha	select ARMV8_MULTIENTRY
8934585601aSSimon Glass	select ARCH_MISC_INIT
89444937214SPrabhakar Kushwaha	help
89544937214SPrabhakar Kushwaha	  Support for Freescale LS2080A_SIMU platform
89644937214SPrabhakar Kushwaha	  The LS2080A Development System (QDS) is a pre silicon
89744937214SPrabhakar Kushwaha	  development platform that supports the QorIQ LS2080A
89844937214SPrabhakar Kushwaha	  Layerscape Architecture processor.
89944937214SPrabhakar Kushwaha
9007769776aSAshish Kumarconfig TARGET_LS1088AQDS
9017769776aSAshish Kumar	bool "Support ls1088aqds"
9027769776aSAshish Kumar	select ARCH_LS1088A
9037769776aSAshish Kumar	select ARM64
9047769776aSAshish Kumar	select ARMV8_MULTIENTRY
9057769776aSAshish Kumar	select ARCH_MISC_INIT
9067769776aSAshish Kumar	select BOARD_LATE_INIT
90791fded62SAshish Kumar	select SUPPORT_SPL
9087769776aSAshish Kumar	help
9097769776aSAshish Kumar	  Support for NXP LS1088AQDS platform
9107769776aSAshish Kumar	  The LS1088A Development System (QDS) is a high-performance
9117769776aSAshish Kumar	  development platform that supports the QorIQ LS1088A
9127769776aSAshish Kumar	  Layerscape Architecture processor.
9137769776aSAshish Kumar
91444937214SPrabhakar Kushwahaconfig TARGET_LS2080AQDS
91544937214SPrabhakar Kushwaha	bool "Support ls2080aqds"
916fb2bf8c2SYork Sun	select ARCH_LS2080A
917e2b65ea9SYork Sun	select ARM64
918e2b65ea9SYork Sun	select ARMV8_MULTIENTRY
919e5ec4815STom Rini	select BOARD_LATE_INIT
92032eda7ccSScott Wood	select SUPPORT_SPL
9214585601aSSimon Glass	select ARCH_MISC_INIT
922fedb428cSSimon Glass	imply SCSI
9239fd95ef0STuomas Tynkkynen	imply SCSI_AHCI
924e2b65ea9SYork Sun	help
92544937214SPrabhakar Kushwaha	  Support for Freescale LS2080AQDS platform
92644937214SPrabhakar Kushwaha	  The LS2080A Development System (QDS) is a high-performance
92744937214SPrabhakar Kushwaha	  development platform that supports the QorIQ LS2080A
92844937214SPrabhakar Kushwaha	  Layerscape Architecture processor.
92944937214SPrabhakar Kushwaha
93044937214SPrabhakar Kushwahaconfig TARGET_LS2080ARDB
93144937214SPrabhakar Kushwaha	bool "Support ls2080ardb"
932fb2bf8c2SYork Sun	select ARCH_LS2080A
93344937214SPrabhakar Kushwaha	select ARM64
93444937214SPrabhakar Kushwaha	select ARMV8_MULTIENTRY
935e5ec4815STom Rini	select BOARD_LATE_INIT
93644937214SPrabhakar Kushwaha	select SUPPORT_SPL
9374585601aSSimon Glass	select ARCH_MISC_INIT
938fedb428cSSimon Glass	imply SCSI
9399fd95ef0STuomas Tynkkynen	imply SCSI_AHCI
94044937214SPrabhakar Kushwaha	help
94144937214SPrabhakar Kushwaha	  Support for Freescale LS2080ARDB platform.
94244937214SPrabhakar Kushwaha	  The LS2080A Reference design board (RDB) is a high-performance
94344937214SPrabhakar Kushwaha	  development platform that supports the QorIQ LS2080A
944e2b65ea9SYork Sun	  Layerscape Architecture processor.
945e2b65ea9SYork Sun
9463049a583SPriyanka Jainconfig TARGET_LS2081ARDB
9473049a583SPriyanka Jain	bool "Support ls2081ardb"
9483049a583SPriyanka Jain	select ARCH_LS2080A
9493049a583SPriyanka Jain	select ARM64
9503049a583SPriyanka Jain	select ARMV8_MULTIENTRY
9513049a583SPriyanka Jain	select BOARD_LATE_INIT
9523049a583SPriyanka Jain	select SUPPORT_SPL
9533049a583SPriyanka Jain	select ARCH_MISC_INIT
9543049a583SPriyanka Jain	help
9553049a583SPriyanka Jain	  Support for Freescale LS2081ARDB platform.
9563049a583SPriyanka Jain	  The LS2081A Reference design board (RDB) is a high-performance
9573049a583SPriyanka Jain	  development platform that supports the QorIQ LS2081A/LS2041A
9583049a583SPriyanka Jain	  Layerscape Architecture processor.
9593049a583SPriyanka Jain
96011ac2363SPeter Griffinconfig TARGET_HIKEY
96111ac2363SPeter Griffin	bool "Support HiKey 96boards Consumer Edition Platform"
96211ac2363SPeter Griffin	select ARM64
963efd7b60aSPeter Griffin	select DM
964efd7b60aSPeter Griffin	select DM_GPIO
9659c71bcdcSPeter Griffin	select DM_SERIAL
966cd593ed6SPeter Griffin	select OF_CONTROL
967cf2c7784SAlexander Graf	select PL01X_SERIAL
9686f6b7cfaSTom Rini	select SPECIFY_CONSOLE_INDEX
96911ac2363SPeter Griffin	  help
97011ac2363SPeter Griffin	  Support for HiKey 96boards platform. It features a HI6220
97111ac2363SPeter Griffin	  SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
97211ac2363SPeter Griffin
973d754254fSJorge Ramirez-Ortizconfig TARGET_POPLAR
974d754254fSJorge Ramirez-Ortiz	bool "Support Poplar 96boards Enterprise Edition Platform"
975d754254fSJorge Ramirez-Ortiz	select ARM64
976d754254fSJorge Ramirez-Ortiz	select DM
977d754254fSJorge Ramirez-Ortiz	select OF_CONTROL
978d754254fSJorge Ramirez-Ortiz	select DM_SERIAL
979d754254fSJorge Ramirez-Ortiz	select DM_USB
980cf2c7784SAlexander Graf	select PL01X_SERIAL
981d754254fSJorge Ramirez-Ortiz	  help
982d754254fSJorge Ramirez-Ortiz	  Support for Poplar 96boards EE platform. It features a HI3798cv200
983d754254fSJorge Ramirez-Ortiz	  SoC, with 4xA53 CPU, 1GB RAM and the high performance Mali T720 GPU
984d754254fSJorge Ramirez-Ortiz	  making it capable of running any commercial set-top solution based on
985d754254fSJorge Ramirez-Ortiz	  Linux or Android.
986d754254fSJorge Ramirez-Ortiz
9879d044fcbSPrabhakar Kushwahaconfig TARGET_LS1012AQDS
9889d044fcbSPrabhakar Kushwaha	bool "Support ls1012aqds"
9899533acf3SYork Sun	select ARCH_LS1012A
9909d044fcbSPrabhakar Kushwaha	select ARM64
991e5ec4815STom Rini	select BOARD_LATE_INIT
9929d044fcbSPrabhakar Kushwaha	help
9939d044fcbSPrabhakar Kushwaha	  Support for Freescale LS1012AQDS platform.
9949d044fcbSPrabhakar Kushwaha	  The LS1012A Development System (QDS) is a high-performance
9959d044fcbSPrabhakar Kushwaha	  development platform that supports the QorIQ LS1012A
9969d044fcbSPrabhakar Kushwaha	  Layerscape Architecture processor.
9979d044fcbSPrabhakar Kushwaha
9983b6e3898SPrabhakar Kushwahaconfig TARGET_LS1012ARDB
9993b6e3898SPrabhakar Kushwaha	bool "Support ls1012ardb"
10009533acf3SYork Sun	select ARCH_LS1012A
10013b6e3898SPrabhakar Kushwaha	select ARM64
1002e5ec4815STom Rini	select BOARD_LATE_INIT
1003fedb428cSSimon Glass	imply SCSI
10049fd95ef0STuomas Tynkkynen	imply SCSI_AHCI
10053b6e3898SPrabhakar Kushwaha	help
10063b6e3898SPrabhakar Kushwaha	  Support for Freescale LS1012ARDB platform.
10073b6e3898SPrabhakar Kushwaha	  The LS1012A Reference design board (RDB) is a high-performance
10083b6e3898SPrabhakar Kushwaha	  development platform that supports the QorIQ LS1012A
10093b6e3898SPrabhakar Kushwaha	  Layerscape Architecture processor.
10103b6e3898SPrabhakar Kushwaha
1011b0ce187bSBhaskar Upadhayaconfig TARGET_LS1012A2G5RDB
1012b0ce187bSBhaskar Upadhaya	bool "Support ls1012a2g5rdb"
1013b0ce187bSBhaskar Upadhaya	select ARCH_LS1012A
1014b0ce187bSBhaskar Upadhaya	select ARM64
1015b0ce187bSBhaskar Upadhaya	select BOARD_LATE_INIT
1016b0ce187bSBhaskar Upadhaya	imply SCSI
1017b0ce187bSBhaskar Upadhaya	help
1018b0ce187bSBhaskar Upadhaya	  Support for Freescale LS1012A2G5RDB platform.
1019b0ce187bSBhaskar Upadhaya	  The LS1012A 2G5 Reference design board (RDB) is a high-performance
1020b0ce187bSBhaskar Upadhaya	  development platform that supports the QorIQ LS1012A
1021b0ce187bSBhaskar Upadhaya	  Layerscape Architecture processor.
1022b0ce187bSBhaskar Upadhaya
1023ff78aa2bSPrabhakar Kushwahaconfig TARGET_LS1012AFRDM
1024ff78aa2bSPrabhakar Kushwaha	bool "Support ls1012afrdm"
10259533acf3SYork Sun	select ARCH_LS1012A
1026ff78aa2bSPrabhakar Kushwaha	select ARM64
1027ff78aa2bSPrabhakar Kushwaha	help
1028ff78aa2bSPrabhakar Kushwaha	  Support for Freescale LS1012AFRDM platform.
1029ff78aa2bSPrabhakar Kushwaha	  The LS1012A Freedom  board (FRDM) is a high-performance
1030ff78aa2bSPrabhakar Kushwaha	  development platform that supports the QorIQ LS1012A
1031ff78aa2bSPrabhakar Kushwaha	  Layerscape Architecture processor.
1032ff78aa2bSPrabhakar Kushwaha
1033e84a324bSAshish Kumarconfig TARGET_LS1088ARDB
1034e84a324bSAshish Kumar	bool "Support ls1088ardb"
1035e84a324bSAshish Kumar	select ARCH_LS1088A
1036e84a324bSAshish Kumar	select ARM64
1037e84a324bSAshish Kumar	select ARMV8_MULTIENTRY
1038e84a324bSAshish Kumar	select ARCH_MISC_INIT
1039e84a324bSAshish Kumar	select BOARD_LATE_INIT
1040099f4093SAshish Kumar	select SUPPORT_SPL
1041e84a324bSAshish Kumar	help
1042e84a324bSAshish Kumar	  Support for NXP LS1088ARDB platform.
1043e84a324bSAshish Kumar	  The LS1088A Reference design board (RDB) is a high-performance
1044e84a324bSAshish Kumar	  development platform that supports the QorIQ LS1088A
1045e84a324bSAshish Kumar	  Layerscape Architecture processor.
1046e84a324bSAshish Kumar
1047550e3dc0SWang Huanconfig TARGET_LS1021AQDS
10480de15707SAlison Wang	bool "Support ls1021aqds"
1049e5ec4815STom Rini	select BOARD_LATE_INIT
1050acf15001SLokesh Vutla	select CPU_V7A
1051adee1d4cSHongbo Zhang	select CPU_V7_HAS_NONSEC
1052adee1d4cSHongbo Zhang	select CPU_V7_HAS_VIRT
105350f0c663SAlison Wang	select SUPPORT_SPL
10540a37cf8fSYork Sun	select ARCH_LS1021A
1055217f92bbSMasahiro Yamada	select ARCH_SUPPORT_PSCI
10565e8bd7e1SYork Sun	select LS1_DEEP_SLEEP
1057d26e34c4SYork Sun	select SYS_FSL_DDR
1058a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
1059fedb428cSSimon Glass	imply SCSI
1060217f92bbSMasahiro Yamada
1061c8a7d9daSWang Huanconfig TARGET_LS1021ATWR
10620de15707SAlison Wang	bool "Support ls1021atwr"
1063e5ec4815STom Rini	select BOARD_LATE_INIT
1064acf15001SLokesh Vutla	select CPU_V7A
1065adee1d4cSHongbo Zhang	select CPU_V7_HAS_NONSEC
1066adee1d4cSHongbo Zhang	select CPU_V7_HAS_VIRT
106750f0c663SAlison Wang	select SUPPORT_SPL
10680a37cf8fSYork Sun	select ARCH_LS1021A
1069217f92bbSMasahiro Yamada	select ARCH_SUPPORT_PSCI
10705e8bd7e1SYork Sun	select LS1_DEEP_SLEEP
1071a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
1072fedb428cSSimon Glass	imply SCSI
1073c8a7d9daSWang Huan
107420c700f8SFeng Liconfig TARGET_LS1021AIOT
107520c700f8SFeng Li	bool "Support ls1021aiot"
1076e5ec4815STom Rini	select BOARD_LATE_INIT
1077acf15001SLokesh Vutla	select CPU_V7A
107820c700f8SFeng Li	select CPU_V7_HAS_NONSEC
107920c700f8SFeng Li	select CPU_V7_HAS_VIRT
108020c700f8SFeng Li	select SUPPORT_SPL
108120c700f8SFeng Li	select ARCH_LS1021A
108220c700f8SFeng Li	select ARCH_SUPPORT_PSCI
1083fedb428cSSimon Glass	imply SCSI
108420c700f8SFeng Li	help
108520c700f8SFeng Li	  Support for Freescale LS1021AIOT platform.
108620c700f8SFeng Li	  The LS1021A Freescale board (IOT) is a high-performance
108720c700f8SFeng Li	  development platform that supports the QorIQ LS1021A
108820c700f8SFeng Li	  Layerscape Architecture processor.
108920c700f8SFeng Li
109002b5d2edSShaohui Xieconfig TARGET_LS1043AQDS
109102b5d2edSShaohui Xie	bool "Support ls1043aqds"
10920a37cf8fSYork Sun	select ARCH_LS1043A
109302b5d2edSShaohui Xie	select ARM64
109402b5d2edSShaohui Xie	select ARMV8_MULTIENTRY
1095e5ec4815STom Rini	select BOARD_LATE_INIT
109602b5d2edSShaohui Xie	select SUPPORT_SPL
1097a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
1098fedb428cSSimon Glass	imply SCSI
109902b5d2edSShaohui Xie	help
110002b5d2edSShaohui Xie	  Support for Freescale LS1043AQDS platform.
110102b5d2edSShaohui Xie
1102f3a8e2b7SMingkai Huconfig TARGET_LS1043ARDB
1103f3a8e2b7SMingkai Hu	bool "Support ls1043ardb"
11040a37cf8fSYork Sun	select ARCH_LS1043A
1105f3a8e2b7SMingkai Hu	select ARM64
1106831c068fSHou Zhiqiang	select ARMV8_MULTIENTRY
1107e5ec4815STom Rini	select BOARD_LATE_INIT
11083ad44729SGong Qianyu	select SUPPORT_SPL
1109a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
1110fedb428cSSimon Glass	imply SCSI
1111f3a8e2b7SMingkai Hu	help
1112f3a8e2b7SMingkai Hu	  Support for Freescale LS1043ARDB platform.
1113f3a8e2b7SMingkai Hu
1114126fe70dSShaohui Xieconfig TARGET_LS1046AQDS
1115126fe70dSShaohui Xie	bool "Support ls1046aqds"
1116da28e58aSYork Sun	select ARCH_LS1046A
1117126fe70dSShaohui Xie	select ARM64
1118126fe70dSShaohui Xie	select ARMV8_MULTIENTRY
1119e5ec4815STom Rini	select BOARD_LATE_INIT
1120126fe70dSShaohui Xie	select SUPPORT_SPL
1121126fe70dSShaohui Xie	select DM_SPI_FLASH if DM_SPI
1122a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
1123fedb428cSSimon Glass	imply SCSI
1124126fe70dSShaohui Xie	help
1125126fe70dSShaohui Xie	  Support for Freescale LS1046AQDS platform.
1126126fe70dSShaohui Xie	  The LS1046A Development System (QDS) is a high-performance
1127126fe70dSShaohui Xie	  development platform that supports the QorIQ LS1046A
1128126fe70dSShaohui Xie	  Layerscape Architecture processor.
1129126fe70dSShaohui Xie
1130dd02936fSMingkai Huconfig TARGET_LS1046ARDB
1131dd02936fSMingkai Hu	bool "Support ls1046ardb"
1132da28e58aSYork Sun	select ARCH_LS1046A
1133dd02936fSMingkai Hu	select ARM64
1134dd02936fSMingkai Hu	select ARMV8_MULTIENTRY
1135e5ec4815STom Rini	select BOARD_LATE_INIT
1136dd02936fSMingkai Hu	select SUPPORT_SPL
1137dd02936fSMingkai Hu	select DM_SPI_FLASH if DM_SPI
1138dccef2ecSHou Zhiqiang	select POWER_MC34VR500
1139a5d67547SSimon Glass	select BOARD_EARLY_INIT_F
1140fedb428cSSimon Glass	imply SCSI
1141dd02936fSMingkai Hu	help
1142dd02936fSMingkai Hu	  Support for Freescale LS1046ARDB platform.
1143dd02936fSMingkai Hu	  The LS1046A Reference Design Board (RDB) is a high-performance
1144dd02936fSMingkai Hu	  development platform that supports the QorIQ LS1046A
1145dd02936fSMingkai Hu	  Layerscape Architecture processor.
1146dd02936fSMingkai Hu
1147dd84058dSMasahiro Yamadaconfig TARGET_H2200
1148dd84058dSMasahiro Yamada	bool "Support h2200"
11492e07c249SGeorges Savoundararadj	select CPU_PXA
1150dd84058dSMasahiro Yamada
1151f19eb154SVasily Khoruzhickconfig TARGET_ZIPITZ2
1152f19eb154SVasily Khoruzhick	bool "Support zipitz2"
1153f19eb154SVasily Khoruzhick	select CPU_PXA
1154f19eb154SVasily Khoruzhick
1155dd84058dSMasahiro Yamadaconfig TARGET_COLIBRI_PXA270
1156dd84058dSMasahiro Yamada	bool "Support colibri_pxa270"
11572e07c249SGeorges Savoundararadj	select CPU_PXA
1158dd84058dSMasahiro Yamada
115966cba041SMasahiro Yamadaconfig ARCH_UNIPHIER
1160b6ef3a3fSMasahiro Yamada	bool "Socionext UniPhier SoCs"
1161e5ec4815STom Rini	select BOARD_LATE_INIT
11624e819950SMasahiro Yamada	select DM
1163b800cbdeSMasahiro Yamada	select DM_GPIO
11644e819950SMasahiro Yamada	select DM_I2C
11654aceb3f8SMasahiro Yamada	select DM_MMC
11664fb96c48SMasahiro Yamada	select DM_RESET
1167b5550e49SMasahiro Yamada	select DM_SERIAL
116847a79f65SMasahiro Yamada	select DM_USB
1169b5550e49SMasahiro Yamada	select OF_CONTROL
1170b5550e49SMasahiro Yamada	select OF_LIBFDT
117127350c92SMasahiro Yamada	select PINCTRL
11720680f1b1SLey Foon Tan	select SPL_BOARD_INIT if SPL
1173561ca649SMasahiro Yamada	select SPL_DM if SPL
1174561ca649SMasahiro Yamada	select SPL_LIBCOMMON_SUPPORT if SPL
1175561ca649SMasahiro Yamada	select SPL_LIBGENERIC_SUPPORT if SPL
1176561ca649SMasahiro Yamada	select SPL_OF_CONTROL if SPL
1177561ca649SMasahiro Yamada	select SPL_PINCTRL if SPL
1178b5550e49SMasahiro Yamada	select SUPPORT_SPL
117991d27a17STom Rini	imply FAT_WRITE
1180b6ef3a3fSMasahiro Yamada	help
1181b6ef3a3fSMasahiro Yamada	  Support for UniPhier SoC family developed by Socionext Inc.
1182b6ef3a3fSMasahiro Yamada	  (formerly, System LSI Business Division of Panasonic Corporation)
118366cba041SMasahiro Yamada
11840a61ee88SVikas Manochaconfig STM32
11852514c2d0SPatrick Delaunay	bool "Support STMicroelectronics STM32 MCU with cortex M"
1186ed09a554Srev13@wp.pl	select CPU_V7M
118766562414SKamil Lulko	select DM
118866562414SKamil Lulko	select DM_SERIAL
11893a649407STom Rini	select SYS_THUMB_BUILD
1190ed09a554Srev13@wp.pl
119194e9a4efSPatrice Chotardconfig ARCH_STI
119294e9a4efSPatrice Chotard	bool "Support STMicrolectronics SoCs"
1193acf15001SLokesh Vutla	select CPU_V7A
1194214a17e6SPatrice Chotard	select DM
1195214a17e6SPatrice Chotard	select DM_SERIAL
1196eee20f81SPatrice Chotard	select BLK
1197eee20f81SPatrice Chotard	select DM_MMC
1198584861ffSPatrice Chotard	select DM_RESET
119994e9a4efSPatrice Chotard	help
120094e9a4efSPatrice Chotard	  Support for STMicroelectronics STiH407/10 SoC family.
120194e9a4efSPatrice Chotard	  This SoC is used on Linaro 96Board STiH410-B2260
120294e9a4efSPatrice Chotard
12032514c2d0SPatrick Delaunayconfig ARCH_STM32MP
12042514c2d0SPatrick Delaunay	bool "Support STMicroelectronics STM32MP Socs with cortex A"
120508772f6eSPatrick Delaunay	select ARCH_MISC_INIT
12062514c2d0SPatrick Delaunay	select BOARD_LATE_INIT
12072514c2d0SPatrick Delaunay	select CLK
12082514c2d0SPatrick Delaunay	select DM
12092514c2d0SPatrick Delaunay	select DM_GPIO
12102514c2d0SPatrick Delaunay	select DM_RESET
12112514c2d0SPatrick Delaunay	select DM_SERIAL
12122514c2d0SPatrick Delaunay	select OF_CONTROL
12132514c2d0SPatrick Delaunay	select OF_LIBFDT
12142514c2d0SPatrick Delaunay	select PINCTRL
12152514c2d0SPatrick Delaunay	select REGMAP
12162514c2d0SPatrick Delaunay	select SUPPORT_SPL
12172514c2d0SPatrick Delaunay	select SYSCON
121886634a93SPatrick Delaunay	select SYSRESET
12192514c2d0SPatrick Delaunay	select SYS_THUMB_BUILD
12202514c2d0SPatrick Delaunay	help
12212514c2d0SPatrick Delaunay	  Support for STM32MP SoC family developed by STMicroelectronics,
12222514c2d0SPatrick Delaunay	  MPUs based on ARM cortex A core
12232514c2d0SPatrick Delaunay	  U-BOOT is running in DDR and SPL support is the unsecure First Stage
12242514c2d0SPatrick Delaunay	  BootLoader (FSBL)
12252514c2d0SPatrick Delaunay
12262444dae5SSimon Glassconfig ARCH_ROCKCHIP
12272444dae5SSimon Glass	bool "Support Rockchip SoCs"
12282444dae5SSimon Glass	select OF_CONTROL
1229aa15038cSSimon Glass	select BLK
12302444dae5SSimon Glass	select DM
1231a381bcf5SKever Yang	select SPL_DM if SPL
1232aa15038cSSimon Glass	select SYS_MALLOC_F
12333a649407STom Rini	select SYS_THUMB_BUILD if !ARM64
1234a381bcf5SKever Yang	select SPL_SYS_MALLOC_SIMPLE if SPL
1235aa15038cSSimon Glass	select DM_GPIO
1236aa15038cSSimon Glass	select DM_I2C
1237aa15038cSSimon Glass	select DM_MMC
1238aa15038cSSimon Glass	select DM_SERIAL
1239aa15038cSSimon Glass	select DM_SPI
1240aa15038cSSimon Glass	select DM_SPI_FLASH
1241892742dfSMengDongyang	select DM_USB if USB
12428d29e3a4SKever Yang	select DM_PWM
12438d29e3a4SKever Yang	select DM_REGULATOR
124414ad6eb2SPhilipp Tomsich	select ENABLE_ARM_SOC_BOOT0_HOOK
1245f1b1f770SAdam Ford	select SPI
124648f6232eSTom Rini	imply CMD_FASTBOOT
12477325f6cfSMasahiro Yamada	imply DISTRO_DEFAULTS
124848f6232eSTom Rini	imply FASTBOOT
124991d27a17STom Rini	imply FAT_WRITE
125048f6232eSTom Rini	imply USB_FUNCTION_FASTBOOT
12510532ceefSKever Yang	imply SPL_SYSRESET
1252e19fa89cSKever Yang	imply TPL_SYSRESET
12538e8bccccSPhilipp Tomsich	imply ADC
12548e8bccccSPhilipp Tomsich	imply SARADC_ROCKCHIP
1255c3c0331dSKever Yang	imply SYS_NS16550
12562444dae5SSimon Glass
1257746f985aSSergey Temerkhanovconfig TARGET_THUNDERX_88XX
1258746f985aSSergey Temerkhanov	bool "Support ThunderX 88xx"
1259b4ba1693SMarek Vasut	select ARM64
1260746f985aSSergey Temerkhanov	select OF_CONTROL
1261067716baSTom Rini	select SYS_CACHE_SHIFT_7
1262cf2c7784SAlexander Graf	select PL01X_SERIAL
1263746f985aSSergey Temerkhanov
12644697abeaSmaxims@google.comconfig ARCH_ASPEED
12654697abeaSmaxims@google.com	bool "Support Aspeed SoCs"
12664697abeaSmaxims@google.com	select OF_CONTROL
12674697abeaSmaxims@google.com	select DM
12684697abeaSmaxims@google.com
1269dd84058dSMasahiro Yamadaendchoice
1270dd84058dSMasahiro Yamada
12715fbed8f2SAndrew F. Davisconfig TI_SECURE_DEVICE
12725fbed8f2SAndrew F. Davis	bool "HS Device Type Support"
12735fbed8f2SAndrew F. Davis	depends on ARCH_KEYSTONE || ARCH_OMAP2PLUS
12745fbed8f2SAndrew F. Davis	help
12755fbed8f2SAndrew F. Davis	  If a high secure (HS) device type is being used, this config
12765fbed8f2SAndrew F. Davis	  must be set. This option impacts various aspects of the
12775fbed8f2SAndrew F. Davis	  build system (to create signed boot images that can be
12785fbed8f2SAndrew F. Davis	  authenticated) and the code. See the doc/README.ti-secure
12795fbed8f2SAndrew F. Davis	  file for further details.
12805fbed8f2SAndrew F. Davis
12814697abeaSmaxims@google.comsource "arch/arm/mach-aspeed/Kconfig"
12824697abeaSmaxims@google.com
12834614b891SMasahiro Yamadasource "arch/arm/mach-at91/Kconfig"
12844614b891SMasahiro Yamada
1285ddf6bd48SMasahiro Yamadasource "arch/arm/mach-bcm283x/Kconfig"
12863491ba63SMasahiro Yamada
1287ddf6bd48SMasahiro Yamadasource "arch/arm/mach-davinci/Kconfig"
128834e609caSSimon Glass
128977b55e8cSThomas Abrahamsource "arch/arm/mach-exynos/Kconfig"
129072df68ccSMasahiro Yamada
129172a8ff4bSMasahiro Yamadasource "arch/arm/mach-highbank/Kconfig"
1292ef2b694cSMasahiro Yamada
12935cbbd9bdSMasahiro Yamadasource "arch/arm/mach-integrator/Kconfig"
12945cbbd9bdSMasahiro Yamada
129539a72345SMasahiro Yamadasource "arch/arm/mach-keystone/Kconfig"
1296c338f09eSMasahiro Yamada
129756f86e39SMasahiro Yamadasource "arch/arm/mach-kirkwood/Kconfig"
129847539e23SMasahiro Yamada
1299c3d89140SStefan Roesesource "arch/arm/mach-mvebu/Kconfig"
1300c3d89140SStefan Roese
13010a37cf8fSYork Sunsource "arch/arm/cpu/armv7/ls102xa/Kconfig"
13020a37cf8fSYork Sun
130307df697eSFabio Estevamsource "arch/arm/mach-imx/mx2/Kconfig"
130407df697eSFabio Estevam
1305*3159ec64SMagnus Liljasource "arch/arm/mach-imx/mx3/Kconfig"
1306*3159ec64SMagnus Lilja
13077a7391fdSPeng Fansource "arch/arm/mach-imx/mx5/Kconfig"
13081a8150d4SAdrian Alonso
1309552a848eSStefano Babicsource "arch/arm/mach-imx/mx6/Kconfig"
131089ebc821SBoris BREZILLON
13117a7391fdSPeng Fansource "arch/arm/mach-imx/mx7/Kconfig"
13127a7391fdSPeng Fan
13137a7391fdSPeng Fansource "arch/arm/mach-imx/mx7ulp/Kconfig"
13147a7391fdSPeng Fan
13157a7391fdSPeng Fansource "arch/arm/mach-imx/mx8m/Kconfig"
1316424ee3d1SAndrej Rosano
1317c5343d4eSStefan Agnersource "arch/arm/mach-imx/mxs/Kconfig"
1318c5343d4eSStefan Agner
1319983e3700STom Rinisource "arch/arm/mach-omap2/Kconfig"
13206384726dSMadan Srinivas
1321da28e58aSYork Sunsource "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
1322da28e58aSYork Sun
13233e93b4e6SMasahiro Yamadasource "arch/arm/mach-orion5x/Kconfig"
132422f2be7aSMasahiro Yamada
1325badbb63cSNobuhiro Iwamatsusource "arch/arm/mach-rmobile/Kconfig"
1326f40b9898SMasahiro Yamada
1327bfcef28aSBeniamino Galvanisource "arch/arm/mach-meson/Kconfig"
1328bfcef28aSBeniamino Galvani
132932f11829STuomas Tynkkynensource "arch/arm/mach-qemu/Kconfig"
133032f11829STuomas Tynkkynen
13312444dae5SSimon Glasssource "arch/arm/mach-rockchip/Kconfig"
13322444dae5SSimon Glass
1333225f5eecSMinkyu Kangsource "arch/arm/mach-s5pc1xx/Kconfig"
1334311757beSSimon Glass
133508592136SMateusz Kulikowskisource "arch/arm/mach-snapdragon/Kconfig"
133608592136SMateusz Kulikowski
13377865f4b0SMasahiro Yamadasource "arch/arm/mach-socfpga/Kconfig"
13387865f4b0SMasahiro Yamada
133994e9a4efSPatrice Chotardsource "arch/arm/mach-sti/Kconfig"
134094e9a4efSPatrice Chotard
13410a61ee88SVikas Manochasource "arch/arm/mach-stm32/Kconfig"
13420a61ee88SVikas Manocha
13432514c2d0SPatrick Delaunaysource "arch/arm/mach-stm32mp/Kconfig"
13442514c2d0SPatrick Delaunay
13453abfd887SMasahiro Yamadasource "arch/arm/mach-sunxi/Kconfig"
13463abfd887SMasahiro Yamada
134709f455dcSMasahiro Yamadasource "arch/arm/mach-tegra/Kconfig"
1348ddd960e6SMasahiro Yamada
13494c425570SMasahiro Yamadasource "arch/arm/mach-uniphier/Kconfig"
135066cba041SMasahiro Yamada
13517966b437SStefan Agnersource "arch/arm/cpu/armv7/vf610/Kconfig"
13527966b437SStefan Agner
13530107f240SMasahiro Yamadasource "arch/arm/mach-zynq/Kconfig"
1354ddd960e6SMasahiro Yamada
13551d6c54ecSMichal Simeksource "arch/arm/mach-zynqmp-r5/Kconfig"
13561d6c54ecSMichal Simek
1357ea624e19SHans de Goedesource "arch/arm/cpu/armv7/Kconfig"
1358ea624e19SHans de Goede
135975580007SSiva Durga Prasad Paladugusource "arch/arm/cpu/armv8/zynqmp/Kconfig"
136075580007SSiva Durga Prasad Paladugu
136123b5877cSLinus Walleijsource "arch/arm/cpu/armv8/Kconfig"
136223b5877cSLinus Walleij
1363552a848eSStefano Babicsource "arch/arm/mach-imx/Kconfig"
1364a05a6045SBoris BREZILLON
1365d8ccbe93SHeiko Schochersource "board/bosch/shc/Kconfig"
1366dd84058dSMasahiro Yamadasource "board/CarMediaLab/flea3/Kconfig"
1367dd84058dSMasahiro Yamadasource "board/Marvell/aspenite/Kconfig"
1368dd84058dSMasahiro Yamadasource "board/Marvell/gplugd/Kconfig"
1369dd84058dSMasahiro Yamadasource "board/armadeus/apf27/Kconfig"
1370dd84058dSMasahiro Yamadasource "board/armltd/vexpress/Kconfig"
1371dd84058dSMasahiro Yamadasource "board/armltd/vexpress64/Kconfig"
137243486e4cSSteve Raesource "board/broadcom/bcm23550_w1d/Kconfig"
1373dd84058dSMasahiro Yamadasource "board/broadcom/bcm28155_ap/Kconfig"
1374abb1678cSSteve Raesource "board/broadcom/bcmcygnus/Kconfig"
1375abb1678cSSteve Raesource "board/broadcom/bcmnsp/Kconfig"
1376274bced8SJon Masonsource "board/broadcom/bcmns2/Kconfig"
1377746f985aSSergey Temerkhanovsource "board/cavium/thunderx/Kconfig"
1378dd84058dSMasahiro Yamadasource "board/cirrus/edb93xx/Kconfig"
137985ab0452SFelix Bracksource "board/eets/pdu001/Kconfig"
138044937214SPrabhakar Kushwahasource "board/freescale/ls2080a/Kconfig"
138144937214SPrabhakar Kushwahasource "board/freescale/ls2080aqds/Kconfig"
138244937214SPrabhakar Kushwahasource "board/freescale/ls2080ardb/Kconfig"
1383e84a324bSAshish Kumarsource "board/freescale/ls1088a/Kconfig"
1384550e3dc0SWang Huansource "board/freescale/ls1021aqds/Kconfig"
138502b5d2edSShaohui Xiesource "board/freescale/ls1043aqds/Kconfig"
1386c8a7d9daSWang Huansource "board/freescale/ls1021atwr/Kconfig"
138720c700f8SFeng Lisource "board/freescale/ls1021aiot/Kconfig"
1388126fe70dSShaohui Xiesource "board/freescale/ls1046aqds/Kconfig"
1389f3a8e2b7SMingkai Husource "board/freescale/ls1043ardb/Kconfig"
1390dd02936fSMingkai Husource "board/freescale/ls1046ardb/Kconfig"
13919d044fcbSPrabhakar Kushwahasource "board/freescale/ls1012aqds/Kconfig"
13923b6e3898SPrabhakar Kushwahasource "board/freescale/ls1012ardb/Kconfig"
1393ff78aa2bSPrabhakar Kushwahasource "board/freescale/ls1012afrdm/Kconfig"
1394dd84058dSMasahiro Yamadasource "board/freescale/mx35pdk/Kconfig"
13959702ec00SEddy Petrișorsource "board/freescale/s32v234evb/Kconfig"
139660083261SDirk Eibachsource "board/gdsys/a38x/Kconfig"
1397ab38bf6aSMarcin Niestrojsource "board/grinn/chiliboard/Kconfig"
1398dd84058dSMasahiro Yamadasource "board/gumstix/pepper/Kconfig"
1399dd84058dSMasahiro Yamadasource "board/h2200/Kconfig"
1400345243edSTom Rinisource "board/hisilicon/hikey/Kconfig"
1401d754254fSJorge Ramirez-Ortizsource "board/hisilicon/poplar/Kconfig"
1402a96c08f5SLadislav Michlsource "board/isee/igep003x/Kconfig"
1403dd84058dSMasahiro Yamadasource "board/phytec/pcm051/Kconfig"
1404dd84058dSMasahiro Yamadasource "board/silica/pengwyn/Kconfig"
1405dd84058dSMasahiro Yamadasource "board/spear/spear300/Kconfig"
1406dd84058dSMasahiro Yamadasource "board/spear/spear310/Kconfig"
1407dd84058dSMasahiro Yamadasource "board/spear/spear320/Kconfig"
1408dd84058dSMasahiro Yamadasource "board/spear/spear600/Kconfig"
1409dd84058dSMasahiro Yamadasource "board/spear/x600/Kconfig"
14109fa32b12SVikas Manochasource "board/st/stv0991/Kconfig"
14119d1b2987SEnric Balletbò i Serrasource "board/tcl/sl50/Kconfig"
1412a2bc4321SGilles Gameirosource "board/birdland/bav335x/Kconfig"
1413dd84058dSMasahiro Yamadasource "board/timll/devkit3250/Kconfig"
1414dd84058dSMasahiro Yamadasource "board/toradex/colibri_pxa270/Kconfig"
14156ce89324SYegor Yefremovsource "board/vscom/baltos/Kconfig"
1416dd84058dSMasahiro Yamadasource "board/woodburn/Kconfig"
1417412ae53aSAlbert ARIBAUD \(3ADEV\)source "board/work-microwave/work_92105/Kconfig"
1418c436bf92SSiva Durga Prasad Paladugusource "board/xilinx/zynqmp/Kconfig"
1419f19eb154SVasily Khoruzhicksource "board/zipitz2/Kconfig"
1420dd84058dSMasahiro Yamada
142151b17d49SMasahiro Yamadasource "arch/arm/Kconfig.debug"
142251b17d49SMasahiro Yamada
1423dd84058dSMasahiro Yamadaendmenu
1424b529993eSPhilipp Tomsich
1425b529993eSPhilipp Tomsichconfig SPL_LDSCRIPT
142607a8f79eSMans Rullgard        default "arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" if (ARCH_MX23 || ARCH_MX28) && !SPL_FRAMEWORK
1427b529993eSPhilipp Tomsich        default "arch/arm/cpu/arm1136/u-boot-spl.lds" if CPU_ARM1136
1428b529993eSPhilipp Tomsich	default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64
1429b529993eSPhilipp Tomsich
1430b529993eSPhilipp Tomsich
1431