xref: /OK3568_Linux_fs/u-boot/arch/arm/Kconfig (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyunmenu "ARM architecture"
2*4882a593Smuzhiyun	depends on ARM
3*4882a593Smuzhiyun
4*4882a593Smuzhiyunconfig SYS_ARCH
5*4882a593Smuzhiyun	default "arm"
6*4882a593Smuzhiyun
7*4882a593Smuzhiyunconfig ARM64
8*4882a593Smuzhiyun	bool
9*4882a593Smuzhiyun	select PHYS_64BIT
10*4882a593Smuzhiyun	select SYS_CACHE_SHIFT_6
11*4882a593Smuzhiyun
12*4882a593Smuzhiyunif ARM64
13*4882a593Smuzhiyunconfig POSITION_INDEPENDENT
14*4882a593Smuzhiyun	bool "Generate position-independent pre-relocation code"
15*4882a593Smuzhiyun	help
16*4882a593Smuzhiyun	  U-Boot expects to be linked to a specific hard-coded address, and to
17*4882a593Smuzhiyun	  be loaded to and run from that address. This option lifts that
18*4882a593Smuzhiyun	  restriction, thus allowing the code to be loaded to and executed
19*4882a593Smuzhiyun	  from almost any address. This logic relies on the relocation
20*4882a593Smuzhiyun	  information that is embedded into the binary to support U-Boot
21*4882a593Smuzhiyun	  relocating itself to the top-of-RAM later during execution.
22*4882a593Smuzhiyunendif
23*4882a593Smuzhiyun
24*4882a593Smuzhiyunconfig STATIC_RELA
25*4882a593Smuzhiyun	bool
26*4882a593Smuzhiyun	default y if ARM64 && !POSITION_INDEPENDENT
27*4882a593Smuzhiyun
28*4882a593Smuzhiyunconfig DMA_ADDR_T_64BIT
29*4882a593Smuzhiyun	bool
30*4882a593Smuzhiyun	default y if ARM64
31*4882a593Smuzhiyun
32*4882a593Smuzhiyunconfig HAS_VBAR
33*4882a593Smuzhiyun	bool
34*4882a593Smuzhiyun
35*4882a593Smuzhiyunconfig HAS_THUMB2
36*4882a593Smuzhiyun	bool
37*4882a593Smuzhiyun
38*4882a593Smuzhiyun# Used for compatibility with asm files copied from the kernel
39*4882a593Smuzhiyunconfig ARM_ASM_UNIFIED
40*4882a593Smuzhiyun	bool
41*4882a593Smuzhiyun	default y
42*4882a593Smuzhiyun
43*4882a593Smuzhiyun# Used for compatibility with asm files copied from the kernel
44*4882a593Smuzhiyunconfig THUMB2_KERNEL
45*4882a593Smuzhiyun	bool
46*4882a593Smuzhiyun
47*4882a593Smuzhiyun# If set, the workarounds for these ARM errata are applied early during U-Boot
48*4882a593Smuzhiyun# startup. Note that in general these options force the workarounds to be
49*4882a593Smuzhiyun# applied; no CPU-type/version detection exists, unlike the similar options in
50*4882a593Smuzhiyun# the Linux kernel. Do not set these options unless they apply!  Also note that
51*4882a593Smuzhiyun# the following can be machine specific errata. These do have ability to
52*4882a593Smuzhiyun# provide rudimentary version and machine specific checks, but expect no
53*4882a593Smuzhiyun# product checks:
54*4882a593Smuzhiyun# CONFIG_ARM_ERRATA_430973
55*4882a593Smuzhiyun# CONFIG_ARM_ERRATA_454179
56*4882a593Smuzhiyun# CONFIG_ARM_ERRATA_621766
57*4882a593Smuzhiyun# CONFIG_ARM_ERRATA_798870
58*4882a593Smuzhiyun# CONFIG_ARM_ERRATA_801819
59*4882a593Smuzhiyunconfig ARM_ERRATA_430973
60*4882a593Smuzhiyun	bool
61*4882a593Smuzhiyun
62*4882a593Smuzhiyunconfig ARM_ERRATA_454179
63*4882a593Smuzhiyun	bool
64*4882a593Smuzhiyun
65*4882a593Smuzhiyunconfig ARM_ERRATA_621766
66*4882a593Smuzhiyun	bool
67*4882a593Smuzhiyun
68*4882a593Smuzhiyunconfig ARM_ERRATA_716044
69*4882a593Smuzhiyun	bool
70*4882a593Smuzhiyun
71*4882a593Smuzhiyunconfig ARM_ERRATA_725233
72*4882a593Smuzhiyun	bool
73*4882a593Smuzhiyun
74*4882a593Smuzhiyunconfig ARM_ERRATA_742230
75*4882a593Smuzhiyun	bool
76*4882a593Smuzhiyun
77*4882a593Smuzhiyunconfig ARM_ERRATA_743622
78*4882a593Smuzhiyun	bool
79*4882a593Smuzhiyun
80*4882a593Smuzhiyunconfig ARM_ERRATA_751472
81*4882a593Smuzhiyun	bool
82*4882a593Smuzhiyun
83*4882a593Smuzhiyunconfig ARM_ERRATA_761320
84*4882a593Smuzhiyun	bool
85*4882a593Smuzhiyun
86*4882a593Smuzhiyunconfig ARM_ERRATA_773022
87*4882a593Smuzhiyun	bool
88*4882a593Smuzhiyun
89*4882a593Smuzhiyunconfig ARM_ERRATA_774769
90*4882a593Smuzhiyun	bool
91*4882a593Smuzhiyun
92*4882a593Smuzhiyunconfig ARM_ERRATA_794072
93*4882a593Smuzhiyun	bool
94*4882a593Smuzhiyun
95*4882a593Smuzhiyunconfig ARM_ERRATA_798870
96*4882a593Smuzhiyun	bool
97*4882a593Smuzhiyun
98*4882a593Smuzhiyunconfig ARM_ERRATA_801819
99*4882a593Smuzhiyun	bool
100*4882a593Smuzhiyun
101*4882a593Smuzhiyunconfig ARM_ERRATA_826974
102*4882a593Smuzhiyun	bool
103*4882a593Smuzhiyun
104*4882a593Smuzhiyunconfig ARM_ERRATA_828024
105*4882a593Smuzhiyun	bool
106*4882a593Smuzhiyun
107*4882a593Smuzhiyunconfig ARM_ERRATA_829520
108*4882a593Smuzhiyun	bool
109*4882a593Smuzhiyun
110*4882a593Smuzhiyunconfig ARM_ERRATA_833069
111*4882a593Smuzhiyun	bool
112*4882a593Smuzhiyun
113*4882a593Smuzhiyunconfig ARM_ERRATA_833471
114*4882a593Smuzhiyun	bool
115*4882a593Smuzhiyun
116*4882a593Smuzhiyunconfig ARM_ERRATA_845369
117*4882a593Smuzhiyun       bool
118*4882a593Smuzhiyun
119*4882a593Smuzhiyunconfig ARM_ERRATA_852421
120*4882a593Smuzhiyun	bool
121*4882a593Smuzhiyun
122*4882a593Smuzhiyunconfig ARM_ERRATA_852423
123*4882a593Smuzhiyun	bool
124*4882a593Smuzhiyun
125*4882a593Smuzhiyunconfig ARM_ZERO_CNTVOFF
126*4882a593Smuzhiyun	bool
127*4882a593Smuzhiyun
128*4882a593Smuzhiyunconfig CPU_ARM720T
129*4882a593Smuzhiyun	bool
130*4882a593Smuzhiyun	select SYS_CACHE_SHIFT_5
131*4882a593Smuzhiyun
132*4882a593Smuzhiyunconfig CPU_ARM920T
133*4882a593Smuzhiyun	bool
134*4882a593Smuzhiyun	select SYS_CACHE_SHIFT_5
135*4882a593Smuzhiyun
136*4882a593Smuzhiyunconfig CPU_ARM926EJS
137*4882a593Smuzhiyun	bool
138*4882a593Smuzhiyun	select SYS_CACHE_SHIFT_5
139*4882a593Smuzhiyun
140*4882a593Smuzhiyunconfig CPU_ARM946ES
141*4882a593Smuzhiyun	bool
142*4882a593Smuzhiyun	select SYS_CACHE_SHIFT_5
143*4882a593Smuzhiyun
144*4882a593Smuzhiyunconfig CPU_ARM1136
145*4882a593Smuzhiyun	bool
146*4882a593Smuzhiyun	select SYS_CACHE_SHIFT_5
147*4882a593Smuzhiyun
148*4882a593Smuzhiyunconfig CPU_ARM1176
149*4882a593Smuzhiyun	bool
150*4882a593Smuzhiyun	select HAS_VBAR
151*4882a593Smuzhiyun	select SYS_CACHE_SHIFT_5
152*4882a593Smuzhiyun
153*4882a593Smuzhiyunconfig CPU_V7
154*4882a593Smuzhiyun	bool
155*4882a593Smuzhiyun	select HAS_VBAR
156*4882a593Smuzhiyun	select HAS_THUMB2
157*4882a593Smuzhiyun	select SYS_CACHE_SHIFT_6
158*4882a593Smuzhiyun
159*4882a593Smuzhiyunconfig CPU_V7M
160*4882a593Smuzhiyun	bool
161*4882a593Smuzhiyun	select HAS_THUMB2
162*4882a593Smuzhiyun	select THUMB2_KERNEL
163*4882a593Smuzhiyun	select SYS_CACHE_SHIFT_5
164*4882a593Smuzhiyun
165*4882a593Smuzhiyunconfig CPU_PXA
166*4882a593Smuzhiyun	bool
167*4882a593Smuzhiyun	select SYS_CACHE_SHIFT_5
168*4882a593Smuzhiyun
169*4882a593Smuzhiyunconfig CPU_SA1100
170*4882a593Smuzhiyun	bool
171*4882a593Smuzhiyun	select SYS_CACHE_SHIFT_5
172*4882a593Smuzhiyun
173*4882a593Smuzhiyunconfig SYS_CPU
174*4882a593Smuzhiyun	default "arm720t" if CPU_ARM720T
175*4882a593Smuzhiyun	default "arm920t" if CPU_ARM920T
176*4882a593Smuzhiyun	default "arm926ejs" if CPU_ARM926EJS
177*4882a593Smuzhiyun	default "arm946es" if CPU_ARM946ES
178*4882a593Smuzhiyun	default "arm1136" if CPU_ARM1136
179*4882a593Smuzhiyun	default "arm1176" if CPU_ARM1176
180*4882a593Smuzhiyun	default "armv7" if CPU_V7
181*4882a593Smuzhiyun	default "armv7m" if CPU_V7M
182*4882a593Smuzhiyun	default "pxa" if CPU_PXA
183*4882a593Smuzhiyun	default "sa1100" if CPU_SA1100
184*4882a593Smuzhiyun	default "armv8" if ARM64
185*4882a593Smuzhiyun
186*4882a593Smuzhiyunconfig SYS_ARM_ARCH
187*4882a593Smuzhiyun	int
188*4882a593Smuzhiyun	default 4 if CPU_ARM720T
189*4882a593Smuzhiyun	default 4 if CPU_ARM920T
190*4882a593Smuzhiyun	default 5 if CPU_ARM926EJS
191*4882a593Smuzhiyun	default 5 if CPU_ARM946ES
192*4882a593Smuzhiyun	default 6 if CPU_ARM1136
193*4882a593Smuzhiyun	default 6 if CPU_ARM1176
194*4882a593Smuzhiyun	default 7 if CPU_V7
195*4882a593Smuzhiyun	default 7 if CPU_V7M
196*4882a593Smuzhiyun	default 5 if CPU_PXA
197*4882a593Smuzhiyun	default 4 if CPU_SA1100
198*4882a593Smuzhiyun	default 8 if ARM64
199*4882a593Smuzhiyun
200*4882a593Smuzhiyunconfig SYS_CACHE_SHIFT_5
201*4882a593Smuzhiyun	bool
202*4882a593Smuzhiyun
203*4882a593Smuzhiyunconfig SYS_CACHE_SHIFT_6
204*4882a593Smuzhiyun	bool
205*4882a593Smuzhiyun
206*4882a593Smuzhiyunconfig SYS_CACHE_SHIFT_7
207*4882a593Smuzhiyun	bool
208*4882a593Smuzhiyun
209*4882a593Smuzhiyunconfig SYS_CACHELINE_SIZE
210*4882a593Smuzhiyun	int
211*4882a593Smuzhiyun	default 128 if SYS_CACHE_SHIFT_7
212*4882a593Smuzhiyun	default 64 if SYS_CACHE_SHIFT_6
213*4882a593Smuzhiyun	default 32 if SYS_CACHE_SHIFT_5
214*4882a593Smuzhiyun
215*4882a593Smuzhiyunconfig ARM_SMCCC
216*4882a593Smuzhiyun	bool "Support for ARM SMC Calling Convention (SMCCC)"
217*4882a593Smuzhiyun	depends on CPU_V7 || ARM64
218*4882a593Smuzhiyun	select ARM_PSCI_FW
219*4882a593Smuzhiyun	help
220*4882a593Smuzhiyun	  Say Y here if you want to enable ARM SMC Calling Convention.
221*4882a593Smuzhiyun	  This should be enabled if U-Boot needs to communicate with system
222*4882a593Smuzhiyun	  firmware (for example, PSCI) according to SMCCC.
223*4882a593Smuzhiyun
224*4882a593Smuzhiyunconfig ARM_CPU_SUSPEND
225*4882a593Smuzhiyun	bool "Support for ARM cpu suspend and resume"
226*4882a593Smuzhiyun	depends on CPU_V7 || ARM64
227*4882a593Smuzhiyun	help
228*4882a593Smuzhiyun	  Say Y here if you want to enable ARM cpu suspend/resume which allows
229*4882a593Smuzhiyun	  to poweroff cpu power supply.
230*4882a593Smuzhiyun
231*4882a593Smuzhiyunconfig SEMIHOSTING
232*4882a593Smuzhiyun	bool "support boot from semihosting"
233*4882a593Smuzhiyun	help
234*4882a593Smuzhiyun	  In emulated environments, semihosting is a way for
235*4882a593Smuzhiyun	  the hosted environment to call out to the emulator to
236*4882a593Smuzhiyun	  retrieve files from the host machine.
237*4882a593Smuzhiyun
238*4882a593Smuzhiyunconfig SYS_THUMB_BUILD
239*4882a593Smuzhiyun	bool "Build U-Boot using the Thumb instruction set"
240*4882a593Smuzhiyun	depends on !ARM64
241*4882a593Smuzhiyun	help
242*4882a593Smuzhiyun	   Use this flag to build U-Boot using the Thumb instruction set for
243*4882a593Smuzhiyun	   ARM architectures. Thumb instruction set provides better code
244*4882a593Smuzhiyun	   density. For ARM architectures that support Thumb2 this flag will
245*4882a593Smuzhiyun	   result in Thumb2 code generated by GCC.
246*4882a593Smuzhiyun
247*4882a593Smuzhiyunconfig SPL_SYS_THUMB_BUILD
248*4882a593Smuzhiyun	bool "Build SPL using the Thumb instruction set"
249*4882a593Smuzhiyun	default y if SYS_THUMB_BUILD
250*4882a593Smuzhiyun	depends on !ARM64
251*4882a593Smuzhiyun	help
252*4882a593Smuzhiyun	   Use this flag to build SPL using the Thumb instruction set for
253*4882a593Smuzhiyun	   ARM architectures. Thumb instruction set provides better code
254*4882a593Smuzhiyun	   density. For ARM architectures that support Thumb2 this flag will
255*4882a593Smuzhiyun	   result in Thumb2 code generated by GCC.
256*4882a593Smuzhiyun
257*4882a593Smuzhiyunconfig TPL_SYS_THUMB_BUILD
258*4882a593Smuzhiyun	bool "Build TPL using the Thumb instruction set"
259*4882a593Smuzhiyun	default y if SYS_THUMB_BUILD
260*4882a593Smuzhiyun	depends on TPL && !ARM64
261*4882a593Smuzhiyun	help
262*4882a593Smuzhiyun	   Use this flag to build SPL using the Thumb instruction set for
263*4882a593Smuzhiyun	   ARM architectures. Thumb instruction set provides better code
264*4882a593Smuzhiyun	   density. For ARM architectures that support Thumb2 this flag will
265*4882a593Smuzhiyun	   result in Thumb2 code generated by GCC.
266*4882a593Smuzhiyun
267*4882a593Smuzhiyun
268*4882a593Smuzhiyunconfig SYS_L2CACHE_OFF
269*4882a593Smuzhiyun	bool "L2cache off"
270*4882a593Smuzhiyun	help
271*4882a593Smuzhiyun	  If SoC does not support L2CACHE or one do not want to enable
272*4882a593Smuzhiyun	  L2CACHE, choose this option.
273*4882a593Smuzhiyun
274*4882a593Smuzhiyunconfig ENABLE_ARM_SOC_BOOT0_HOOK
275*4882a593Smuzhiyun	bool "prepare BOOT0 header"
276*4882a593Smuzhiyun	help
277*4882a593Smuzhiyun	  If the SoC's BOOT0 requires a header area filled with (magic)
278*4882a593Smuzhiyun	  values, then choose this option, and create a define called
279*4882a593Smuzhiyun	  ARM_SOC_BOOT0_HOOK which contains the required assembler
280*4882a593Smuzhiyun	  preprocessor code.
281*4882a593Smuzhiyun
282*4882a593Smuzhiyunconfig ARM_CORTEX_CPU_IS_UP
283*4882a593Smuzhiyun	bool
284*4882a593Smuzhiyun	default n
285*4882a593Smuzhiyun
286*4882a593Smuzhiyunconfig USE_ARCH_MEMCPY
287*4882a593Smuzhiyun	bool "Use an assembly optimized implementation of memcpy"
288*4882a593Smuzhiyun	default y
289*4882a593Smuzhiyun	depends on !ARM64
290*4882a593Smuzhiyun	help
291*4882a593Smuzhiyun	  Enable the generation of an optimized version of memcpy.
292*4882a593Smuzhiyun	  Such implementation may be faster under some conditions
293*4882a593Smuzhiyun	  but may increase the binary size.
294*4882a593Smuzhiyun
295*4882a593Smuzhiyunconfig SPL_USE_ARCH_MEMCPY
296*4882a593Smuzhiyun	bool "Use an assembly optimized implementation of memcpy for SPL"
297*4882a593Smuzhiyun	default y if USE_ARCH_MEMCPY
298*4882a593Smuzhiyun	depends on !ARM64
299*4882a593Smuzhiyun	help
300*4882a593Smuzhiyun	  Enable the generation of an optimized version of memcpy.
301*4882a593Smuzhiyun	  Such implementation may be faster under some conditions
302*4882a593Smuzhiyun	  but may increase the binary size.
303*4882a593Smuzhiyun
304*4882a593Smuzhiyunconfig TPL_USE_ARCH_MEMCPY
305*4882a593Smuzhiyun	bool "Use an assembly optimized implementation of memcpy for TPL"
306*4882a593Smuzhiyun	default y if USE_ARCH_MEMCPY
307*4882a593Smuzhiyun	depends on !ARM64
308*4882a593Smuzhiyun	help
309*4882a593Smuzhiyun	  Enable the generation of an optimized version of memcpy.
310*4882a593Smuzhiyun	  Such implementation may be faster under some conditions
311*4882a593Smuzhiyun	  but may increase the binary size.
312*4882a593Smuzhiyun
313*4882a593Smuzhiyunconfig USE_ARCH_MEMSET
314*4882a593Smuzhiyun	bool "Use an assembly optimized implementation of memset"
315*4882a593Smuzhiyun	default y
316*4882a593Smuzhiyun	depends on !ARM64
317*4882a593Smuzhiyun	help
318*4882a593Smuzhiyun	  Enable the generation of an optimized version of memset.
319*4882a593Smuzhiyun	  Such implementation may be faster under some conditions
320*4882a593Smuzhiyun	  but may increase the binary size.
321*4882a593Smuzhiyun
322*4882a593Smuzhiyunconfig SPL_USE_ARCH_MEMSET
323*4882a593Smuzhiyun	bool "Use an assembly optimized implementation of memset for SPL"
324*4882a593Smuzhiyun	default y if USE_ARCH_MEMSET
325*4882a593Smuzhiyun	depends on !ARM64
326*4882a593Smuzhiyun	help
327*4882a593Smuzhiyun	  Enable the generation of an optimized version of memset.
328*4882a593Smuzhiyun	  Such implementation may be faster under some conditions
329*4882a593Smuzhiyun	  but may increase the binary size.
330*4882a593Smuzhiyun
331*4882a593Smuzhiyunconfig TPL_USE_ARCH_MEMSET
332*4882a593Smuzhiyun	bool "Use an assembly optimized implementation of memset for TPL"
333*4882a593Smuzhiyun	default y if USE_ARCH_MEMSET
334*4882a593Smuzhiyun	depends on !ARM64
335*4882a593Smuzhiyun	help
336*4882a593Smuzhiyun	  Enable the generation of an optimized version of memset.
337*4882a593Smuzhiyun	  Such implementation may be faster under some conditions
338*4882a593Smuzhiyun	  but may increase the binary size.
339*4882a593Smuzhiyun
340*4882a593Smuzhiyunconfig ARM64_SUPPORT_AARCH32
341*4882a593Smuzhiyun	bool "ARM64 system support AArch32 execution state"
342*4882a593Smuzhiyun	default y if ARM64 && !TARGET_THUNDERX_88XX
343*4882a593Smuzhiyun	help
344*4882a593Smuzhiyun	  This ARM64 system supports AArch32 execution state.
345*4882a593Smuzhiyun
346*4882a593Smuzhiyunconfig ARM_SMP
347*4882a593Smuzhiyun	bool "Enable ARM Symmetric Multiprocessing"
348*4882a593Smuzhiyun	default n
349*4882a593Smuzhiyun
350*4882a593Smuzhiyunchoice
351*4882a593Smuzhiyun	prompt "Target select"
352*4882a593Smuzhiyun	default TARGET_HIKEY
353*4882a593Smuzhiyun
354*4882a593Smuzhiyunconfig ARCH_AT91
355*4882a593Smuzhiyun	bool "Atmel AT91"
356*4882a593Smuzhiyun	select SPL_BOARD_INIT if SPL
357*4882a593Smuzhiyun
358*4882a593Smuzhiyunconfig TARGET_EDB93XX
359*4882a593Smuzhiyun	bool "Support edb93xx"
360*4882a593Smuzhiyun	select CPU_ARM920T
361*4882a593Smuzhiyun
362*4882a593Smuzhiyunconfig TARGET_ASPENITE
363*4882a593Smuzhiyun	bool "Support aspenite"
364*4882a593Smuzhiyun	select CPU_ARM926EJS
365*4882a593Smuzhiyun
366*4882a593Smuzhiyunconfig TARGET_GPLUGD
367*4882a593Smuzhiyun	bool "Support gplugd"
368*4882a593Smuzhiyun	select CPU_ARM926EJS
369*4882a593Smuzhiyun
370*4882a593Smuzhiyunconfig ARCH_DAVINCI
371*4882a593Smuzhiyun	bool "TI DaVinci"
372*4882a593Smuzhiyun	select CPU_ARM926EJS
373*4882a593Smuzhiyun	imply CMD_SAVES
374*4882a593Smuzhiyun	help
375*4882a593Smuzhiyun	  Support for TI's DaVinci platform.
376*4882a593Smuzhiyun
377*4882a593Smuzhiyunconfig KIRKWOOD
378*4882a593Smuzhiyun	bool "Marvell Kirkwood"
379*4882a593Smuzhiyun	select CPU_ARM926EJS
380*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
381*4882a593Smuzhiyun	select ARCH_MISC_INIT
382*4882a593Smuzhiyun
383*4882a593Smuzhiyunconfig ARCH_MVEBU
384*4882a593Smuzhiyun	bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)"
385*4882a593Smuzhiyun	select OF_CONTROL
386*4882a593Smuzhiyun	select OF_SEPARATE
387*4882a593Smuzhiyun	select DM
388*4882a593Smuzhiyun	select DM_ETH
389*4882a593Smuzhiyun	select DM_SERIAL
390*4882a593Smuzhiyun	select DM_SPI
391*4882a593Smuzhiyun	select DM_SPI_FLASH
392*4882a593Smuzhiyun	select SPI
393*4882a593Smuzhiyun
394*4882a593Smuzhiyunconfig TARGET_DEVKIT3250
395*4882a593Smuzhiyun	bool "Support devkit3250"
396*4882a593Smuzhiyun	select CPU_ARM926EJS
397*4882a593Smuzhiyun	select SUPPORT_SPL
398*4882a593Smuzhiyun
399*4882a593Smuzhiyunconfig TARGET_WORK_92105
400*4882a593Smuzhiyun	bool "Support work_92105"
401*4882a593Smuzhiyun	select CPU_ARM926EJS
402*4882a593Smuzhiyun	select SUPPORT_SPL
403*4882a593Smuzhiyun
404*4882a593Smuzhiyunconfig TARGET_MX25PDK
405*4882a593Smuzhiyun	bool "Support mx25pdk"
406*4882a593Smuzhiyun	select BOARD_LATE_INIT
407*4882a593Smuzhiyun	select CPU_ARM926EJS
408*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
409*4882a593Smuzhiyun
410*4882a593Smuzhiyunconfig TARGET_ZMX25
411*4882a593Smuzhiyun	bool "Support zmx25"
412*4882a593Smuzhiyun	select BOARD_LATE_INIT
413*4882a593Smuzhiyun	select CPU_ARM926EJS
414*4882a593Smuzhiyun
415*4882a593Smuzhiyunconfig TARGET_APF27
416*4882a593Smuzhiyun	bool "Support apf27"
417*4882a593Smuzhiyun	select CPU_ARM926EJS
418*4882a593Smuzhiyun	select SUPPORT_SPL
419*4882a593Smuzhiyun
420*4882a593Smuzhiyunconfig TARGET_APX4DEVKIT
421*4882a593Smuzhiyun	bool "Support apx4devkit"
422*4882a593Smuzhiyun	select CPU_ARM926EJS
423*4882a593Smuzhiyun	select SUPPORT_SPL
424*4882a593Smuzhiyun
425*4882a593Smuzhiyunconfig TARGET_XFI3
426*4882a593Smuzhiyun	bool "Support xfi3"
427*4882a593Smuzhiyun	select CPU_ARM926EJS
428*4882a593Smuzhiyun	select SUPPORT_SPL
429*4882a593Smuzhiyun
430*4882a593Smuzhiyunconfig TARGET_M28EVK
431*4882a593Smuzhiyun	bool "Support m28evk"
432*4882a593Smuzhiyun	select CPU_ARM926EJS
433*4882a593Smuzhiyun	select SUPPORT_SPL
434*4882a593Smuzhiyun
435*4882a593Smuzhiyunconfig TARGET_MX23EVK
436*4882a593Smuzhiyun	bool "Support mx23evk"
437*4882a593Smuzhiyun	select CPU_ARM926EJS
438*4882a593Smuzhiyun	select SUPPORT_SPL
439*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
440*4882a593Smuzhiyun
441*4882a593Smuzhiyunconfig TARGET_MX28EVK
442*4882a593Smuzhiyun	bool "Support mx28evk"
443*4882a593Smuzhiyun	select CPU_ARM926EJS
444*4882a593Smuzhiyun	select SUPPORT_SPL
445*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
446*4882a593Smuzhiyun
447*4882a593Smuzhiyunconfig TARGET_MX23_OLINUXINO
448*4882a593Smuzhiyun	bool "Support mx23_olinuxino"
449*4882a593Smuzhiyun	select CPU_ARM926EJS
450*4882a593Smuzhiyun	select SUPPORT_SPL
451*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
452*4882a593Smuzhiyun
453*4882a593Smuzhiyunconfig TARGET_BG0900
454*4882a593Smuzhiyun	bool "Support bg0900"
455*4882a593Smuzhiyun	select CPU_ARM926EJS
456*4882a593Smuzhiyun	select SUPPORT_SPL
457*4882a593Smuzhiyun
458*4882a593Smuzhiyunconfig TARGET_SANSA_FUZE_PLUS
459*4882a593Smuzhiyun	bool "Support sansa_fuze_plus"
460*4882a593Smuzhiyun	select CPU_ARM926EJS
461*4882a593Smuzhiyun	select SUPPORT_SPL
462*4882a593Smuzhiyun
463*4882a593Smuzhiyunconfig TARGET_SC_SPS_1
464*4882a593Smuzhiyun	bool "Support sc_sps_1"
465*4882a593Smuzhiyun	select CPU_ARM926EJS
466*4882a593Smuzhiyun	select SUPPORT_SPL
467*4882a593Smuzhiyun
468*4882a593Smuzhiyunconfig ORION5X
469*4882a593Smuzhiyun	bool "Marvell Orion"
470*4882a593Smuzhiyun	select CPU_ARM926EJS
471*4882a593Smuzhiyun
472*4882a593Smuzhiyunconfig TARGET_SPEAR300
473*4882a593Smuzhiyun	bool "Support spear300"
474*4882a593Smuzhiyun	select CPU_ARM926EJS
475*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
476*4882a593Smuzhiyun	imply CMD_SAVES
477*4882a593Smuzhiyun
478*4882a593Smuzhiyunconfig TARGET_SPEAR310
479*4882a593Smuzhiyun	bool "Support spear310"
480*4882a593Smuzhiyun	select CPU_ARM926EJS
481*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
482*4882a593Smuzhiyun	imply CMD_SAVES
483*4882a593Smuzhiyun
484*4882a593Smuzhiyunconfig TARGET_SPEAR320
485*4882a593Smuzhiyun	bool "Support spear320"
486*4882a593Smuzhiyun	select CPU_ARM926EJS
487*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
488*4882a593Smuzhiyun	imply CMD_SAVES
489*4882a593Smuzhiyun
490*4882a593Smuzhiyunconfig TARGET_SPEAR600
491*4882a593Smuzhiyun	bool "Support spear600"
492*4882a593Smuzhiyun	select CPU_ARM926EJS
493*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
494*4882a593Smuzhiyun	imply CMD_SAVES
495*4882a593Smuzhiyun
496*4882a593Smuzhiyunconfig TARGET_STV0991
497*4882a593Smuzhiyun	bool "Support stv0991"
498*4882a593Smuzhiyun	select CPU_V7
499*4882a593Smuzhiyun	select DM
500*4882a593Smuzhiyun	select DM_SERIAL
501*4882a593Smuzhiyun	select DM_SPI
502*4882a593Smuzhiyun	select DM_SPI_FLASH
503*4882a593Smuzhiyun	select SPI
504*4882a593Smuzhiyun	select SPI_FLASH
505*4882a593Smuzhiyun
506*4882a593Smuzhiyunconfig TARGET_X600
507*4882a593Smuzhiyun	bool "Support x600"
508*4882a593Smuzhiyun	select BOARD_LATE_INIT
509*4882a593Smuzhiyun	select CPU_ARM926EJS
510*4882a593Smuzhiyun	select SUPPORT_SPL
511*4882a593Smuzhiyun
512*4882a593Smuzhiyunconfig TARGET_IMX31_PHYCORE
513*4882a593Smuzhiyun	bool "Support imx31_phycore_eet"
514*4882a593Smuzhiyun	select CPU_ARM1136
515*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
516*4882a593Smuzhiyun
517*4882a593Smuzhiyunconfig TARGET_IMX31_PHYCORE_EET
518*4882a593Smuzhiyun	bool "Support imx31_phycore_eet"
519*4882a593Smuzhiyun	select BOARD_LATE_INIT
520*4882a593Smuzhiyun	select CPU_ARM1136
521*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
522*4882a593Smuzhiyun
523*4882a593Smuzhiyunconfig TARGET_MX31ADS
524*4882a593Smuzhiyun	bool "Support mx31ads"
525*4882a593Smuzhiyun	select CPU_ARM1136
526*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
527*4882a593Smuzhiyun
528*4882a593Smuzhiyunconfig TARGET_MX31PDK
529*4882a593Smuzhiyun	bool "Support mx31pdk"
530*4882a593Smuzhiyun	select BOARD_LATE_INIT
531*4882a593Smuzhiyun	select CPU_ARM1136
532*4882a593Smuzhiyun	select SUPPORT_SPL
533*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
534*4882a593Smuzhiyun
535*4882a593Smuzhiyunconfig TARGET_WOODBURN
536*4882a593Smuzhiyun	bool "Support woodburn"
537*4882a593Smuzhiyun	select CPU_ARM1136
538*4882a593Smuzhiyun
539*4882a593Smuzhiyunconfig TARGET_WOODBURN_SD
540*4882a593Smuzhiyun	bool "Support woodburn_sd"
541*4882a593Smuzhiyun	select CPU_ARM1136
542*4882a593Smuzhiyun	select SUPPORT_SPL
543*4882a593Smuzhiyun
544*4882a593Smuzhiyunconfig TARGET_FLEA3
545*4882a593Smuzhiyun	bool "Support flea3"
546*4882a593Smuzhiyun	select CPU_ARM1136
547*4882a593Smuzhiyun
548*4882a593Smuzhiyunconfig TARGET_MX35PDK
549*4882a593Smuzhiyun	bool "Support mx35pdk"
550*4882a593Smuzhiyun	select BOARD_LATE_INIT
551*4882a593Smuzhiyun	select CPU_ARM1136
552*4882a593Smuzhiyun
553*4882a593Smuzhiyunconfig ARCH_BCM283X
554*4882a593Smuzhiyun	bool "Broadcom BCM283X family"
555*4882a593Smuzhiyun	select DM
556*4882a593Smuzhiyun	select DM_SERIAL
557*4882a593Smuzhiyun	select DM_GPIO
558*4882a593Smuzhiyun	select OF_CONTROL
559*4882a593Smuzhiyun	imply FAT_WRITE
560*4882a593Smuzhiyun
561*4882a593Smuzhiyunconfig TARGET_VEXPRESS_CA15_TC2
562*4882a593Smuzhiyun	bool "Support vexpress_ca15_tc2"
563*4882a593Smuzhiyun	select CPU_V7
564*4882a593Smuzhiyun	select CPU_V7_HAS_NONSEC
565*4882a593Smuzhiyun	select CPU_V7_HAS_VIRT
566*4882a593Smuzhiyun
567*4882a593Smuzhiyunconfig ARCH_BCMSTB
568*4882a593Smuzhiyun	bool "Broadcom BCM7XXX family"
569*4882a593Smuzhiyun	select CPU_V7A
570*4882a593Smuzhiyun	select DM
571*4882a593Smuzhiyun	select OF_CONTROL
572*4882a593Smuzhiyun	select OF_PRIOR_STAGE
573*4882a593Smuzhiyun	help
574*4882a593Smuzhiyun	  This enables support for Broadcom ARM-based set-top box
575*4882a593Smuzhiyun	  chipsets, including the 7445 family of chips.
576*4882a593Smuzhiyun
577*4882a593Smuzhiyunconfig TARGET_VEXPRESS_CA5X2
578*4882a593Smuzhiyun	bool "Support vexpress_ca5x2"
579*4882a593Smuzhiyun	select CPU_V7
580*4882a593Smuzhiyun
581*4882a593Smuzhiyunconfig TARGET_VEXPRESS_CA9X4
582*4882a593Smuzhiyun	bool "Support vexpress_ca9x4"
583*4882a593Smuzhiyun	select CPU_V7
584*4882a593Smuzhiyun
585*4882a593Smuzhiyunconfig TARGET_BCM23550_W1D
586*4882a593Smuzhiyun	bool "Support bcm23550_w1d"
587*4882a593Smuzhiyun	select CPU_V7
588*4882a593Smuzhiyun	imply CRC32_VERIFY
589*4882a593Smuzhiyun	imply FAT_WRITE
590*4882a593Smuzhiyun
591*4882a593Smuzhiyunconfig TARGET_BCM28155_AP
592*4882a593Smuzhiyun	bool "Support bcm28155_ap"
593*4882a593Smuzhiyun	select CPU_V7
594*4882a593Smuzhiyun	imply CRC32_VERIFY
595*4882a593Smuzhiyun	imply FAT_WRITE
596*4882a593Smuzhiyun
597*4882a593Smuzhiyunconfig TARGET_BCMCYGNUS
598*4882a593Smuzhiyun	bool "Support bcmcygnus"
599*4882a593Smuzhiyun	select CPU_V7
600*4882a593Smuzhiyun	imply CRC32_VERIFY
601*4882a593Smuzhiyun	imply CMD_HASH
602*4882a593Smuzhiyun	imply FAT_WRITE
603*4882a593Smuzhiyun	imply HASH_VERIFY
604*4882a593Smuzhiyun	imply NETDEVICES
605*4882a593Smuzhiyun	imply BCM_SF2_ETH
606*4882a593Smuzhiyun	imply BCM_SF2_ETH_GMAC
607*4882a593Smuzhiyun
608*4882a593Smuzhiyunconfig TARGET_BCMNSP
609*4882a593Smuzhiyun	bool "Support bcmnsp"
610*4882a593Smuzhiyun	select CPU_V7
611*4882a593Smuzhiyun
612*4882a593Smuzhiyunconfig TARGET_BCMNS2
613*4882a593Smuzhiyun	bool "Support Broadcom Northstar2"
614*4882a593Smuzhiyun	select ARM64
615*4882a593Smuzhiyun	help
616*4882a593Smuzhiyun	  Support for Broadcom Northstar 2 SoCs.  NS2 is a quad-core 64-bit
617*4882a593Smuzhiyun	  ARMv8 Cortex-A57 processors targeting a broad range of networking
618*4882a593Smuzhiyun	  applications
619*4882a593Smuzhiyun
620*4882a593Smuzhiyunconfig ARCH_EXYNOS
621*4882a593Smuzhiyun	bool "Samsung EXYNOS"
622*4882a593Smuzhiyun	select DM
623*4882a593Smuzhiyun	select DM_I2C
624*4882a593Smuzhiyun	select DM_SPI_FLASH
625*4882a593Smuzhiyun	select DM_SERIAL
626*4882a593Smuzhiyun	select DM_SPI
627*4882a593Smuzhiyun	select DM_GPIO
628*4882a593Smuzhiyun	select DM_KEYBOARD
629*4882a593Smuzhiyun	select SPI
630*4882a593Smuzhiyun	imply FAT_WRITE
631*4882a593Smuzhiyun
632*4882a593Smuzhiyunconfig ARCH_S5PC1XX
633*4882a593Smuzhiyun	bool "Samsung S5PC1XX"
634*4882a593Smuzhiyun	select CPU_V7
635*4882a593Smuzhiyun	select DM
636*4882a593Smuzhiyun	select DM_SERIAL
637*4882a593Smuzhiyun	select DM_GPIO
638*4882a593Smuzhiyun	select DM_I2C
639*4882a593Smuzhiyun
640*4882a593Smuzhiyunconfig ARCH_HIGHBANK
641*4882a593Smuzhiyun	bool "Calxeda Highbank"
642*4882a593Smuzhiyun	select CPU_V7
643*4882a593Smuzhiyun
644*4882a593Smuzhiyunconfig ARCH_INTEGRATOR
645*4882a593Smuzhiyun	bool "ARM Ltd. Integrator family"
646*4882a593Smuzhiyun	select DM
647*4882a593Smuzhiyun	select DM_SERIAL
648*4882a593Smuzhiyun
649*4882a593Smuzhiyunconfig ARCH_KEYSTONE
650*4882a593Smuzhiyun	bool "TI Keystone"
651*4882a593Smuzhiyun	select CPU_V7
652*4882a593Smuzhiyun	select SUPPORT_SPL
653*4882a593Smuzhiyun	select SYS_THUMB_BUILD
654*4882a593Smuzhiyun	select CMD_POWEROFF
655*4882a593Smuzhiyun	imply CMD_MTDPARTS
656*4882a593Smuzhiyun	imply FIT
657*4882a593Smuzhiyun	imply CMD_SAVES
658*4882a593Smuzhiyun
659*4882a593Smuzhiyunconfig ARCH_OMAP2PLUS
660*4882a593Smuzhiyun	bool "TI OMAP2+"
661*4882a593Smuzhiyun	select CPU_V7
662*4882a593Smuzhiyun	select SPL_BOARD_INIT if SPL
663*4882a593Smuzhiyun	select SUPPORT_SPL
664*4882a593Smuzhiyun	imply FIT
665*4882a593Smuzhiyun
666*4882a593Smuzhiyunconfig ARCH_MESON
667*4882a593Smuzhiyun	bool "Amlogic Meson"
668*4882a593Smuzhiyun	help
669*4882a593Smuzhiyun	  Support for the Meson SoC family developed by Amlogic Inc.,
670*4882a593Smuzhiyun	  targeted at media players and tablet computers. We currently
671*4882a593Smuzhiyun	  support the S905 (GXBaby) 64-bit SoC.
672*4882a593Smuzhiyun
673*4882a593Smuzhiyunconfig ARCH_MX7ULP
674*4882a593Smuzhiyun        bool "NXP MX7ULP"
675*4882a593Smuzhiyun        select CPU_V7
676*4882a593Smuzhiyun	select ROM_UNIFIED_SECTIONS
677*4882a593Smuzhiyun
678*4882a593Smuzhiyunconfig ARCH_MX7
679*4882a593Smuzhiyun	bool "Freescale MX7"
680*4882a593Smuzhiyun	select CPU_V7
681*4882a593Smuzhiyun	select SYS_FSL_HAS_SEC if SECURE_BOOT
682*4882a593Smuzhiyun	select SYS_FSL_SEC_COMPAT_4
683*4882a593Smuzhiyun	select SYS_FSL_SEC_LE
684*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
685*4882a593Smuzhiyun	select ARCH_MISC_INIT
686*4882a593Smuzhiyun
687*4882a593Smuzhiyunconfig ARCH_MX6
688*4882a593Smuzhiyun	bool "Freescale MX6"
689*4882a593Smuzhiyun	select CPU_V7
690*4882a593Smuzhiyun	select SYS_FSL_HAS_SEC if SECURE_BOOT
691*4882a593Smuzhiyun	select SYS_FSL_SEC_COMPAT_4
692*4882a593Smuzhiyun	select SYS_FSL_SEC_LE
693*4882a593Smuzhiyun	select SYS_THUMB_BUILD if SPL
694*4882a593Smuzhiyun
695*4882a593Smuzhiyunif ARCH_MX6
696*4882a593Smuzhiyunconfig SPL_LDSCRIPT
697*4882a593Smuzhiyun        default "arch/arm/mach-omap2/u-boot-spl.lds"
698*4882a593Smuzhiyunendif
699*4882a593Smuzhiyun
700*4882a593Smuzhiyunconfig ARCH_MX5
701*4882a593Smuzhiyun	bool "Freescale MX5"
702*4882a593Smuzhiyun	select CPU_V7
703*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
704*4882a593Smuzhiyun
705*4882a593Smuzhiyunconfig ARCH_RMOBILE
706*4882a593Smuzhiyun	bool "Renesas ARM SoCs"
707*4882a593Smuzhiyun	select DM
708*4882a593Smuzhiyun	select DM_SERIAL
709*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
710*4882a593Smuzhiyun	imply FAT_WRITE
711*4882a593Smuzhiyun	imply SYS_THUMB_BUILD
712*4882a593Smuzhiyun
713*4882a593Smuzhiyunconfig TARGET_S32V234EVB
714*4882a593Smuzhiyun	bool "Support s32v234evb"
715*4882a593Smuzhiyun	select ARM64
716*4882a593Smuzhiyun	select SYS_FSL_ERRATUM_ESDHC111
717*4882a593Smuzhiyun
718*4882a593Smuzhiyunconfig ARCH_SNAPDRAGON
719*4882a593Smuzhiyun	bool "Qualcomm Snapdragon SoCs"
720*4882a593Smuzhiyun	select ARM64
721*4882a593Smuzhiyun	select DM
722*4882a593Smuzhiyun	select DM_GPIO
723*4882a593Smuzhiyun	select DM_SERIAL
724*4882a593Smuzhiyun	select SPMI
725*4882a593Smuzhiyun	select OF_CONTROL
726*4882a593Smuzhiyun	select OF_SEPARATE
727*4882a593Smuzhiyun
728*4882a593Smuzhiyunconfig ARCH_SOCFPGA
729*4882a593Smuzhiyun	bool "Altera SOCFPGA family"
730*4882a593Smuzhiyun	select CPU_V7
731*4882a593Smuzhiyun	select SUPPORT_SPL
732*4882a593Smuzhiyun	select OF_CONTROL
733*4882a593Smuzhiyun	select SPL_OF_CONTROL
734*4882a593Smuzhiyun	select DM
735*4882a593Smuzhiyun	select DM_SPI_FLASH
736*4882a593Smuzhiyun	select DM_SPI
737*4882a593Smuzhiyun	select ENABLE_ARM_SOC_BOOT0_HOOK
738*4882a593Smuzhiyun	select ARCH_EARLY_INIT_R
739*4882a593Smuzhiyun	select ARCH_MISC_INIT
740*4882a593Smuzhiyun	select SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
741*4882a593Smuzhiyun	select SYS_THUMB_BUILD
742*4882a593Smuzhiyun	imply CMD_MTDPARTS
743*4882a593Smuzhiyun	imply CRC32_VERIFY
744*4882a593Smuzhiyun	imply FAT_WRITE
745*4882a593Smuzhiyun
746*4882a593Smuzhiyunconfig ARCH_SUNXI
747*4882a593Smuzhiyun	bool "Support sunxi (Allwinner) SoCs"
748*4882a593Smuzhiyun	select BINMAN
749*4882a593Smuzhiyun	select CMD_GPIO
750*4882a593Smuzhiyun	select CMD_MMC if MMC
751*4882a593Smuzhiyun	select CMD_USB if DISTRO_DEFAULTS
752*4882a593Smuzhiyun	select DM
753*4882a593Smuzhiyun	select DM_ETH
754*4882a593Smuzhiyun	select DM_GPIO
755*4882a593Smuzhiyun	select DM_KEYBOARD
756*4882a593Smuzhiyun	select DM_SERIAL
757*4882a593Smuzhiyun	select DM_USB if DISTRO_DEFAULTS
758*4882a593Smuzhiyun	select OF_BOARD_SETUP
759*4882a593Smuzhiyun	select OF_CONTROL
760*4882a593Smuzhiyun	select OF_SEPARATE
761*4882a593Smuzhiyun	select SPL_STACK_R if SPL
762*4882a593Smuzhiyun	select SPL_SYS_MALLOC_SIMPLE if SPL
763*4882a593Smuzhiyun	select SYS_NS16550
764*4882a593Smuzhiyun	select SPL_SYS_THUMB_BUILD if !ARM64
765*4882a593Smuzhiyun	select USB if DISTRO_DEFAULTS
766*4882a593Smuzhiyun	select USB_STORAGE if DISTRO_DEFAULTS
767*4882a593Smuzhiyun	select USB_KEYBOARD if DISTRO_DEFAULTS
768*4882a593Smuzhiyun	select USE_TINY_PRINTF
769*4882a593Smuzhiyun	imply CMD_FASTBOOT
770*4882a593Smuzhiyun	imply FASTBOOT
771*4882a593Smuzhiyun	imply FAT_WRITE
772*4882a593Smuzhiyun	imply PRE_CONSOLE_BUFFER
773*4882a593Smuzhiyun	imply SPL_GPIO_SUPPORT
774*4882a593Smuzhiyun	imply SPL_LIBCOMMON_SUPPORT
775*4882a593Smuzhiyun	imply SPL_LIBDISK_SUPPORT
776*4882a593Smuzhiyun	imply SPL_LIBGENERIC_SUPPORT
777*4882a593Smuzhiyun	imply SPL_MMC_SUPPORT if MMC
778*4882a593Smuzhiyun	imply SPL_POWER_SUPPORT
779*4882a593Smuzhiyun	imply SPL_SERIAL_SUPPORT
780*4882a593Smuzhiyun	imply USB_FUNCTION_FASTBOOT
781*4882a593Smuzhiyun
782*4882a593Smuzhiyunconfig TARGET_TS4600
783*4882a593Smuzhiyun	bool "Support TS4600"
784*4882a593Smuzhiyun	select CPU_ARM926EJS
785*4882a593Smuzhiyun	select SUPPORT_SPL
786*4882a593Smuzhiyun
787*4882a593Smuzhiyunconfig ARCH_VF610
788*4882a593Smuzhiyun	bool "Freescale Vybrid"
789*4882a593Smuzhiyun	select CPU_V7
790*4882a593Smuzhiyun	select SYS_FSL_ERRATUM_ESDHC111
791*4882a593Smuzhiyun	imply CMD_MTDPARTS
792*4882a593Smuzhiyun	imply NAND
793*4882a593Smuzhiyun
794*4882a593Smuzhiyunconfig ARCH_ZYNQ
795*4882a593Smuzhiyun	bool "Xilinx Zynq Platform"
796*4882a593Smuzhiyun	select BOARD_LATE_INIT
797*4882a593Smuzhiyun	select CPU_V7
798*4882a593Smuzhiyun	select SUPPORT_SPL
799*4882a593Smuzhiyun	select OF_CONTROL
800*4882a593Smuzhiyun	select SPL_BOARD_INIT if SPL
801*4882a593Smuzhiyun	select SPL_OF_CONTROL if SPL
802*4882a593Smuzhiyun	select DM
803*4882a593Smuzhiyun	select DM_ETH
804*4882a593Smuzhiyun	select DM_GPIO
805*4882a593Smuzhiyun	select SPL_DM if SPL
806*4882a593Smuzhiyun	select DM_MMC
807*4882a593Smuzhiyun	select DM_SPI
808*4882a593Smuzhiyun	select DM_SERIAL
809*4882a593Smuzhiyun	select DM_SPI_FLASH
810*4882a593Smuzhiyun	select SPL_SEPARATE_BSS if SPL
811*4882a593Smuzhiyun	select DM_USB if USB
812*4882a593Smuzhiyun	select BLK
813*4882a593Smuzhiyun	select CLK
814*4882a593Smuzhiyun	select SPL_CLK
815*4882a593Smuzhiyun	select CLK_ZYNQ
816*4882a593Smuzhiyun	select SPI
817*4882a593Smuzhiyun	imply CMD_CLK
818*4882a593Smuzhiyun	imply FAT_WRITE
819*4882a593Smuzhiyun	imply CMD_SPL
820*4882a593Smuzhiyun
821*4882a593Smuzhiyunconfig ARCH_ZYNQMP
822*4882a593Smuzhiyun	bool "Support Xilinx ZynqMP Platform"
823*4882a593Smuzhiyun	select ARM64
824*4882a593Smuzhiyun	select BOARD_LATE_INIT
825*4882a593Smuzhiyun	select DM
826*4882a593Smuzhiyun	select OF_CONTROL
827*4882a593Smuzhiyun	select DM_SERIAL
828*4882a593Smuzhiyun	select SUPPORT_SPL
829*4882a593Smuzhiyun	select CLK
830*4882a593Smuzhiyun	select SPL_BOARD_INIT if SPL
831*4882a593Smuzhiyun	select SPL_CLK
832*4882a593Smuzhiyun	select DM_USB if USB
833*4882a593Smuzhiyun	imply FAT_WRITE
834*4882a593Smuzhiyun	imply DM_USB_GADGET
835*4882a593Smuzhiyun
836*4882a593Smuzhiyunconfig TEGRA
837*4882a593Smuzhiyun	bool "NVIDIA Tegra"
838*4882a593Smuzhiyun	imply FAT_WRITE
839*4882a593Smuzhiyun
840*4882a593Smuzhiyunconfig TARGET_VEXPRESS64_AEMV8A
841*4882a593Smuzhiyun	bool "Support vexpress_aemv8a"
842*4882a593Smuzhiyun	select ARM64
843*4882a593Smuzhiyun
844*4882a593Smuzhiyunconfig TARGET_VEXPRESS64_BASE_FVP
845*4882a593Smuzhiyun	bool "Support Versatile Express ARMv8a FVP BASE model"
846*4882a593Smuzhiyun	select ARM64
847*4882a593Smuzhiyun	select SEMIHOSTING
848*4882a593Smuzhiyun
849*4882a593Smuzhiyunconfig TARGET_VEXPRESS64_BASE_FVP_DRAM
850*4882a593Smuzhiyun	bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
851*4882a593Smuzhiyun	select ARM64
852*4882a593Smuzhiyun	help
853*4882a593Smuzhiyun	  This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
854*4882a593Smuzhiyun	  the default config to allow the user to load the images directly into
855*4882a593Smuzhiyun	  DRAM using model parameters rather than by using semi-hosting to load
856*4882a593Smuzhiyun	  the files from the host filesystem.
857*4882a593Smuzhiyun
858*4882a593Smuzhiyunconfig TARGET_VEXPRESS64_JUNO
859*4882a593Smuzhiyun	bool "Support Versatile Express Juno Development Platform"
860*4882a593Smuzhiyun	select ARM64
861*4882a593Smuzhiyun
862*4882a593Smuzhiyunconfig TARGET_LS2080A_EMU
863*4882a593Smuzhiyun	bool "Support ls2080a_emu"
864*4882a593Smuzhiyun	select ARCH_LS2080A
865*4882a593Smuzhiyun	select ARM64
866*4882a593Smuzhiyun	select ARMV8_MULTIENTRY
867*4882a593Smuzhiyun	select ARCH_MISC_INIT
868*4882a593Smuzhiyun	help
869*4882a593Smuzhiyun	  Support for Freescale LS2080A_EMU platform
870*4882a593Smuzhiyun	  The LS2080A Development System (EMULATOR) is a pre silicon
871*4882a593Smuzhiyun	  development platform that supports the QorIQ LS2080A
872*4882a593Smuzhiyun	  Layerscape Architecture processor.
873*4882a593Smuzhiyun
874*4882a593Smuzhiyunconfig TARGET_LS2080A_SIMU
875*4882a593Smuzhiyun	bool "Support ls2080a_simu"
876*4882a593Smuzhiyun	select ARCH_LS2080A
877*4882a593Smuzhiyun	select ARM64
878*4882a593Smuzhiyun	select ARMV8_MULTIENTRY
879*4882a593Smuzhiyun	select ARCH_MISC_INIT
880*4882a593Smuzhiyun	help
881*4882a593Smuzhiyun	  Support for Freescale LS2080A_SIMU platform
882*4882a593Smuzhiyun	  The LS2080A Development System (QDS) is a pre silicon
883*4882a593Smuzhiyun	  development platform that supports the QorIQ LS2080A
884*4882a593Smuzhiyun	  Layerscape Architecture processor.
885*4882a593Smuzhiyun
886*4882a593Smuzhiyunconfig TARGET_LS2080AQDS
887*4882a593Smuzhiyun	bool "Support ls2080aqds"
888*4882a593Smuzhiyun	select ARCH_LS2080A
889*4882a593Smuzhiyun	select ARM64
890*4882a593Smuzhiyun	select ARMV8_MULTIENTRY
891*4882a593Smuzhiyun	select BOARD_LATE_INIT
892*4882a593Smuzhiyun	select SUPPORT_SPL
893*4882a593Smuzhiyun	select ARCH_MISC_INIT
894*4882a593Smuzhiyun	imply SCSI
895*4882a593Smuzhiyun	help
896*4882a593Smuzhiyun	  Support for Freescale LS2080AQDS platform
897*4882a593Smuzhiyun	  The LS2080A Development System (QDS) is a high-performance
898*4882a593Smuzhiyun	  development platform that supports the QorIQ LS2080A
899*4882a593Smuzhiyun	  Layerscape Architecture processor.
900*4882a593Smuzhiyun
901*4882a593Smuzhiyunconfig TARGET_LS2080ARDB
902*4882a593Smuzhiyun	bool "Support ls2080ardb"
903*4882a593Smuzhiyun	select ARCH_LS2080A
904*4882a593Smuzhiyun	select ARM64
905*4882a593Smuzhiyun	select ARMV8_MULTIENTRY
906*4882a593Smuzhiyun	select BOARD_LATE_INIT
907*4882a593Smuzhiyun	select SUPPORT_SPL
908*4882a593Smuzhiyun	select ARCH_MISC_INIT
909*4882a593Smuzhiyun	imply SCSI
910*4882a593Smuzhiyun	help
911*4882a593Smuzhiyun	  Support for Freescale LS2080ARDB platform.
912*4882a593Smuzhiyun	  The LS2080A Reference design board (RDB) is a high-performance
913*4882a593Smuzhiyun	  development platform that supports the QorIQ LS2080A
914*4882a593Smuzhiyun	  Layerscape Architecture processor.
915*4882a593Smuzhiyun
916*4882a593Smuzhiyunconfig TARGET_LS2081ARDB
917*4882a593Smuzhiyun	bool "Support ls2081ardb"
918*4882a593Smuzhiyun	select ARCH_LS2080A
919*4882a593Smuzhiyun	select ARM64
920*4882a593Smuzhiyun	select ARMV8_MULTIENTRY
921*4882a593Smuzhiyun	select BOARD_LATE_INIT
922*4882a593Smuzhiyun	select SUPPORT_SPL
923*4882a593Smuzhiyun	select ARCH_MISC_INIT
924*4882a593Smuzhiyun	help
925*4882a593Smuzhiyun	  Support for Freescale LS2081ARDB platform.
926*4882a593Smuzhiyun	  The LS2081A Reference design board (RDB) is a high-performance
927*4882a593Smuzhiyun	  development platform that supports the QorIQ LS2081A/LS2041A
928*4882a593Smuzhiyun	  Layerscape Architecture processor.
929*4882a593Smuzhiyun
930*4882a593Smuzhiyunconfig TARGET_HIKEY
931*4882a593Smuzhiyun	bool "Support HiKey 96boards Consumer Edition Platform"
932*4882a593Smuzhiyun	select ARM64
933*4882a593Smuzhiyun	select DM
934*4882a593Smuzhiyun	select DM_GPIO
935*4882a593Smuzhiyun	select DM_SERIAL
936*4882a593Smuzhiyun	select OF_CONTROL
937*4882a593Smuzhiyun	  help
938*4882a593Smuzhiyun	  Support for HiKey 96boards platform. It features a HI6220
939*4882a593Smuzhiyun	  SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
940*4882a593Smuzhiyun
941*4882a593Smuzhiyunconfig TARGET_POPLAR
942*4882a593Smuzhiyun	bool "Support Poplar 96boards Enterprise Edition Platform"
943*4882a593Smuzhiyun	select ARM64
944*4882a593Smuzhiyun	select DM
945*4882a593Smuzhiyun	select OF_CONTROL
946*4882a593Smuzhiyun	select DM_SERIAL
947*4882a593Smuzhiyun	select DM_USB
948*4882a593Smuzhiyun	  help
949*4882a593Smuzhiyun	  Support for Poplar 96boards EE platform. It features a HI3798cv200
950*4882a593Smuzhiyun	  SoC, with 4xA53 CPU, 1GB RAM and the high performance Mali T720 GPU
951*4882a593Smuzhiyun	  making it capable of running any commercial set-top solution based on
952*4882a593Smuzhiyun	  Linux or Android.
953*4882a593Smuzhiyun
954*4882a593Smuzhiyunconfig TARGET_LS1012AQDS
955*4882a593Smuzhiyun	bool "Support ls1012aqds"
956*4882a593Smuzhiyun	select ARCH_LS1012A
957*4882a593Smuzhiyun	select ARM64
958*4882a593Smuzhiyun	select BOARD_LATE_INIT
959*4882a593Smuzhiyun	help
960*4882a593Smuzhiyun	  Support for Freescale LS1012AQDS platform.
961*4882a593Smuzhiyun	  The LS1012A Development System (QDS) is a high-performance
962*4882a593Smuzhiyun	  development platform that supports the QorIQ LS1012A
963*4882a593Smuzhiyun	  Layerscape Architecture processor.
964*4882a593Smuzhiyun
965*4882a593Smuzhiyunconfig TARGET_LS1012ARDB
966*4882a593Smuzhiyun	bool "Support ls1012ardb"
967*4882a593Smuzhiyun	select ARCH_LS1012A
968*4882a593Smuzhiyun	select ARM64
969*4882a593Smuzhiyun	select BOARD_LATE_INIT
970*4882a593Smuzhiyun	imply SCSI
971*4882a593Smuzhiyun	help
972*4882a593Smuzhiyun	  Support for Freescale LS1012ARDB platform.
973*4882a593Smuzhiyun	  The LS1012A Reference design board (RDB) is a high-performance
974*4882a593Smuzhiyun	  development platform that supports the QorIQ LS1012A
975*4882a593Smuzhiyun	  Layerscape Architecture processor.
976*4882a593Smuzhiyun
977*4882a593Smuzhiyunconfig TARGET_LS1012AFRDM
978*4882a593Smuzhiyun	bool "Support ls1012afrdm"
979*4882a593Smuzhiyun	select ARCH_LS1012A
980*4882a593Smuzhiyun	select ARM64
981*4882a593Smuzhiyun	help
982*4882a593Smuzhiyun	  Support for Freescale LS1012AFRDM platform.
983*4882a593Smuzhiyun	  The LS1012A Freedom  board (FRDM) is a high-performance
984*4882a593Smuzhiyun	  development platform that supports the QorIQ LS1012A
985*4882a593Smuzhiyun	  Layerscape Architecture processor.
986*4882a593Smuzhiyun
987*4882a593Smuzhiyunconfig TARGET_LS1021AQDS
988*4882a593Smuzhiyun	bool "Support ls1021aqds"
989*4882a593Smuzhiyun	select BOARD_LATE_INIT
990*4882a593Smuzhiyun	select CPU_V7
991*4882a593Smuzhiyun	select CPU_V7_HAS_NONSEC
992*4882a593Smuzhiyun	select CPU_V7_HAS_VIRT
993*4882a593Smuzhiyun	select SUPPORT_SPL
994*4882a593Smuzhiyun	select ARCH_LS1021A
995*4882a593Smuzhiyun	select ARCH_SUPPORT_PSCI
996*4882a593Smuzhiyun	select LS1_DEEP_SLEEP
997*4882a593Smuzhiyun	select SYS_FSL_DDR
998*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
999*4882a593Smuzhiyun	imply SCSI
1000*4882a593Smuzhiyun
1001*4882a593Smuzhiyunconfig TARGET_LS1021ATWR
1002*4882a593Smuzhiyun	bool "Support ls1021atwr"
1003*4882a593Smuzhiyun	select BOARD_LATE_INIT
1004*4882a593Smuzhiyun	select CPU_V7
1005*4882a593Smuzhiyun	select CPU_V7_HAS_NONSEC
1006*4882a593Smuzhiyun	select CPU_V7_HAS_VIRT
1007*4882a593Smuzhiyun	select SUPPORT_SPL
1008*4882a593Smuzhiyun	select ARCH_LS1021A
1009*4882a593Smuzhiyun	select ARCH_SUPPORT_PSCI
1010*4882a593Smuzhiyun	select LS1_DEEP_SLEEP
1011*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
1012*4882a593Smuzhiyun	imply SCSI
1013*4882a593Smuzhiyun
1014*4882a593Smuzhiyunconfig TARGET_LS1021AIOT
1015*4882a593Smuzhiyun	bool "Support ls1021aiot"
1016*4882a593Smuzhiyun	select BOARD_LATE_INIT
1017*4882a593Smuzhiyun	select CPU_V7
1018*4882a593Smuzhiyun	select CPU_V7_HAS_NONSEC
1019*4882a593Smuzhiyun	select CPU_V7_HAS_VIRT
1020*4882a593Smuzhiyun	select SUPPORT_SPL
1021*4882a593Smuzhiyun	select ARCH_LS1021A
1022*4882a593Smuzhiyun	select ARCH_SUPPORT_PSCI
1023*4882a593Smuzhiyun	imply SCSI
1024*4882a593Smuzhiyun	help
1025*4882a593Smuzhiyun	  Support for Freescale LS1021AIOT platform.
1026*4882a593Smuzhiyun	  The LS1021A Freescale board (IOT) is a high-performance
1027*4882a593Smuzhiyun	  development platform that supports the QorIQ LS1021A
1028*4882a593Smuzhiyun	  Layerscape Architecture processor.
1029*4882a593Smuzhiyun
1030*4882a593Smuzhiyunconfig TARGET_LS1043AQDS
1031*4882a593Smuzhiyun	bool "Support ls1043aqds"
1032*4882a593Smuzhiyun	select ARCH_LS1043A
1033*4882a593Smuzhiyun	select ARM64
1034*4882a593Smuzhiyun	select ARMV8_MULTIENTRY
1035*4882a593Smuzhiyun	select BOARD_LATE_INIT
1036*4882a593Smuzhiyun	select SUPPORT_SPL
1037*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
1038*4882a593Smuzhiyun	imply SCSI
1039*4882a593Smuzhiyun	help
1040*4882a593Smuzhiyun	  Support for Freescale LS1043AQDS platform.
1041*4882a593Smuzhiyun
1042*4882a593Smuzhiyunconfig TARGET_LS1043ARDB
1043*4882a593Smuzhiyun	bool "Support ls1043ardb"
1044*4882a593Smuzhiyun	select ARCH_LS1043A
1045*4882a593Smuzhiyun	select ARM64
1046*4882a593Smuzhiyun	select ARMV8_MULTIENTRY
1047*4882a593Smuzhiyun	select BOARD_LATE_INIT
1048*4882a593Smuzhiyun	select SUPPORT_SPL
1049*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
1050*4882a593Smuzhiyun	imply SCSI
1051*4882a593Smuzhiyun	help
1052*4882a593Smuzhiyun	  Support for Freescale LS1043ARDB platform.
1053*4882a593Smuzhiyun
1054*4882a593Smuzhiyunconfig TARGET_LS1046AQDS
1055*4882a593Smuzhiyun	bool "Support ls1046aqds"
1056*4882a593Smuzhiyun	select ARCH_LS1046A
1057*4882a593Smuzhiyun	select ARM64
1058*4882a593Smuzhiyun	select ARMV8_MULTIENTRY
1059*4882a593Smuzhiyun	select BOARD_LATE_INIT
1060*4882a593Smuzhiyun	select SUPPORT_SPL
1061*4882a593Smuzhiyun	select DM_SPI_FLASH if DM_SPI
1062*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
1063*4882a593Smuzhiyun	imply SCSI
1064*4882a593Smuzhiyun	help
1065*4882a593Smuzhiyun	  Support for Freescale LS1046AQDS platform.
1066*4882a593Smuzhiyun	  The LS1046A Development System (QDS) is a high-performance
1067*4882a593Smuzhiyun	  development platform that supports the QorIQ LS1046A
1068*4882a593Smuzhiyun	  Layerscape Architecture processor.
1069*4882a593Smuzhiyun
1070*4882a593Smuzhiyunconfig TARGET_LS1046ARDB
1071*4882a593Smuzhiyun	bool "Support ls1046ardb"
1072*4882a593Smuzhiyun	select ARCH_LS1046A
1073*4882a593Smuzhiyun	select ARM64
1074*4882a593Smuzhiyun	select ARMV8_MULTIENTRY
1075*4882a593Smuzhiyun	select BOARD_LATE_INIT
1076*4882a593Smuzhiyun	select SUPPORT_SPL
1077*4882a593Smuzhiyun	select DM_SPI_FLASH if DM_SPI
1078*4882a593Smuzhiyun	select POWER_MC34VR500
1079*4882a593Smuzhiyun	select BOARD_EARLY_INIT_F
1080*4882a593Smuzhiyun	imply SCSI
1081*4882a593Smuzhiyun	help
1082*4882a593Smuzhiyun	  Support for Freescale LS1046ARDB platform.
1083*4882a593Smuzhiyun	  The LS1046A Reference Design Board (RDB) is a high-performance
1084*4882a593Smuzhiyun	  development platform that supports the QorIQ LS1046A
1085*4882a593Smuzhiyun	  Layerscape Architecture processor.
1086*4882a593Smuzhiyun
1087*4882a593Smuzhiyunconfig TARGET_H2200
1088*4882a593Smuzhiyun	bool "Support h2200"
1089*4882a593Smuzhiyun	select CPU_PXA
1090*4882a593Smuzhiyun
1091*4882a593Smuzhiyunconfig TARGET_ZIPITZ2
1092*4882a593Smuzhiyun	bool "Support zipitz2"
1093*4882a593Smuzhiyun	select CPU_PXA
1094*4882a593Smuzhiyun
1095*4882a593Smuzhiyunconfig TARGET_COLIBRI_PXA270
1096*4882a593Smuzhiyun	bool "Support colibri_pxa270"
1097*4882a593Smuzhiyun	select CPU_PXA
1098*4882a593Smuzhiyun
1099*4882a593Smuzhiyunconfig ARCH_UNIPHIER
1100*4882a593Smuzhiyun	bool "Socionext UniPhier SoCs"
1101*4882a593Smuzhiyun	select BOARD_LATE_INIT
1102*4882a593Smuzhiyun	select DM
1103*4882a593Smuzhiyun	select DM_GPIO
1104*4882a593Smuzhiyun	select DM_I2C
1105*4882a593Smuzhiyun	select DM_MMC
1106*4882a593Smuzhiyun	select DM_RESET
1107*4882a593Smuzhiyun	select DM_SERIAL
1108*4882a593Smuzhiyun	select DM_USB
1109*4882a593Smuzhiyun	select OF_CONTROL
1110*4882a593Smuzhiyun	select OF_LIBFDT
1111*4882a593Smuzhiyun	select PINCTRL
1112*4882a593Smuzhiyun	select SPL_BOARD_INIT if SPL
1113*4882a593Smuzhiyun	select SPL_DM if SPL
1114*4882a593Smuzhiyun	select SPL_LIBCOMMON_SUPPORT if SPL
1115*4882a593Smuzhiyun	select SPL_LIBGENERIC_SUPPORT if SPL
1116*4882a593Smuzhiyun	select SPL_OF_CONTROL if SPL
1117*4882a593Smuzhiyun	select SPL_PINCTRL if SPL
1118*4882a593Smuzhiyun	select SUPPORT_SPL
1119*4882a593Smuzhiyun	imply FAT_WRITE
1120*4882a593Smuzhiyun	help
1121*4882a593Smuzhiyun	  Support for UniPhier SoC family developed by Socionext Inc.
1122*4882a593Smuzhiyun	  (formerly, System LSI Business Division of Panasonic Corporation)
1123*4882a593Smuzhiyun
1124*4882a593Smuzhiyunconfig STM32
1125*4882a593Smuzhiyun	bool "Support STM32"
1126*4882a593Smuzhiyun	select CPU_V7M
1127*4882a593Smuzhiyun	select DM
1128*4882a593Smuzhiyun	select DM_SERIAL
1129*4882a593Smuzhiyun	select SYS_THUMB_BUILD
1130*4882a593Smuzhiyun
1131*4882a593Smuzhiyunconfig ARCH_STI
1132*4882a593Smuzhiyun	bool "Support STMicrolectronics SoCs"
1133*4882a593Smuzhiyun	select CPU_V7
1134*4882a593Smuzhiyun	select DM
1135*4882a593Smuzhiyun	select DM_SERIAL
1136*4882a593Smuzhiyun	select BLK
1137*4882a593Smuzhiyun	select DM_MMC
1138*4882a593Smuzhiyun	select DM_RESET
1139*4882a593Smuzhiyun	help
1140*4882a593Smuzhiyun	  Support for STMicroelectronics STiH407/10 SoC family.
1141*4882a593Smuzhiyun	  This SoC is used on Linaro 96Board STiH410-B2260
1142*4882a593Smuzhiyun
1143*4882a593Smuzhiyunconfig ARCH_ROCKCHIP
1144*4882a593Smuzhiyun	bool "Support Rockchip SoCs"
1145*4882a593Smuzhiyun	select OF_CONTROL
1146*4882a593Smuzhiyun	select BLK
1147*4882a593Smuzhiyun	select DM
1148*4882a593Smuzhiyun	select SPL_DM if SPL
1149*4882a593Smuzhiyun	select SYS_MALLOC_F
1150*4882a593Smuzhiyun	select SYS_THUMB_BUILD if !ARM64
1151*4882a593Smuzhiyun	select SPL_SYS_MALLOC_SIMPLE if SPL
1152*4882a593Smuzhiyun	imply DM_GPIO
1153*4882a593Smuzhiyun	select DM_SERIAL
1154*4882a593Smuzhiyun	select DM_SPI
1155*4882a593Smuzhiyun	select DM_SPI_FLASH
1156*4882a593Smuzhiyun	select DM_USB if USB
1157*4882a593Smuzhiyun	select ENABLE_ARM_SOC_BOOT0_HOOK
1158*4882a593Smuzhiyun	select SYS_NS16550
1159*4882a593Smuzhiyun	select SPI
1160*4882a593Smuzhiyun	select DEBUG_UART_BOARD_INIT
1161*4882a593Smuzhiyun	select PANIC_HANG
1162*4882a593Smuzhiyun	imply DM_MMC
1163*4882a593Smuzhiyun	imply DM_I2C
1164*4882a593Smuzhiyun	imply DM_PWM
1165*4882a593Smuzhiyun	imply DM_REGULATOR
1166*4882a593Smuzhiyun	imply CMD_FASTBOOT
1167*4882a593Smuzhiyun	imply CMD_ROCKUSB
1168*4882a593Smuzhiyun	imply FASTBOOT
1169*4882a593Smuzhiyun	imply FAT_WRITE
1170*4882a593Smuzhiyun	imply USB_FUNCTION_FASTBOOT
1171*4882a593Smuzhiyun	imply USB_FUNCTION_ROCKUSB
1172*4882a593Smuzhiyun	imply SPL_SYSRESET
1173*4882a593Smuzhiyun	imply TPL_SYSRESET
1174*4882a593Smuzhiyun	imply ADC
1175*4882a593Smuzhiyun	imply SARADC_ROCKCHIP
1176*4882a593Smuzhiyun
1177*4882a593Smuzhiyunconfig TARGET_THUNDERX_88XX
1178*4882a593Smuzhiyun	bool "Support ThunderX 88xx"
1179*4882a593Smuzhiyun	select ARM64
1180*4882a593Smuzhiyun	select OF_CONTROL
1181*4882a593Smuzhiyun	select SYS_CACHE_SHIFT_7
1182*4882a593Smuzhiyun
1183*4882a593Smuzhiyunconfig ARCH_ASPEED
1184*4882a593Smuzhiyun	bool "Support Aspeed SoCs"
1185*4882a593Smuzhiyun	select OF_CONTROL
1186*4882a593Smuzhiyun	select DM
1187*4882a593Smuzhiyun
1188*4882a593Smuzhiyunendchoice
1189*4882a593Smuzhiyun
1190*4882a593Smuzhiyunsource "arch/arm/mach-aspeed/Kconfig"
1191*4882a593Smuzhiyun
1192*4882a593Smuzhiyunsource "arch/arm/mach-at91/Kconfig"
1193*4882a593Smuzhiyun
1194*4882a593Smuzhiyunsource "arch/arm/mach-bcm283x/Kconfig"
1195*4882a593Smuzhiyun
1196*4882a593Smuzhiyunsource "arch/arm/mach-bcmstb/Kconfig"
1197*4882a593Smuzhiyun
1198*4882a593Smuzhiyunsource "arch/arm/mach-davinci/Kconfig"
1199*4882a593Smuzhiyun
1200*4882a593Smuzhiyunsource "arch/arm/mach-exynos/Kconfig"
1201*4882a593Smuzhiyun
1202*4882a593Smuzhiyunsource "arch/arm/mach-highbank/Kconfig"
1203*4882a593Smuzhiyun
1204*4882a593Smuzhiyunsource "arch/arm/mach-integrator/Kconfig"
1205*4882a593Smuzhiyun
1206*4882a593Smuzhiyunsource "arch/arm/mach-keystone/Kconfig"
1207*4882a593Smuzhiyun
1208*4882a593Smuzhiyunsource "arch/arm/mach-kirkwood/Kconfig"
1209*4882a593Smuzhiyun
1210*4882a593Smuzhiyunsource "arch/arm/mach-mvebu/Kconfig"
1211*4882a593Smuzhiyun
1212*4882a593Smuzhiyunsource "arch/arm/cpu/armv7/ls102xa/Kconfig"
1213*4882a593Smuzhiyun
1214*4882a593Smuzhiyunsource "arch/arm/mach-imx/mx7ulp/Kconfig"
1215*4882a593Smuzhiyun
1216*4882a593Smuzhiyunsource "arch/arm/mach-imx/mx7/Kconfig"
1217*4882a593Smuzhiyun
1218*4882a593Smuzhiyunsource "arch/arm/mach-imx/mx6/Kconfig"
1219*4882a593Smuzhiyun
1220*4882a593Smuzhiyunsource "arch/arm/mach-imx/mx5/Kconfig"
1221*4882a593Smuzhiyun
1222*4882a593Smuzhiyunsource "arch/arm/mach-omap2/Kconfig"
1223*4882a593Smuzhiyun
1224*4882a593Smuzhiyunsource "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
1225*4882a593Smuzhiyun
1226*4882a593Smuzhiyunsource "arch/arm/mach-orion5x/Kconfig"
1227*4882a593Smuzhiyun
1228*4882a593Smuzhiyunsource "arch/arm/mach-rmobile/Kconfig"
1229*4882a593Smuzhiyun
1230*4882a593Smuzhiyunsource "arch/arm/mach-meson/Kconfig"
1231*4882a593Smuzhiyun
1232*4882a593Smuzhiyunsource "arch/arm/mach-rockchip/Kconfig"
1233*4882a593Smuzhiyun
1234*4882a593Smuzhiyunsource "arch/arm/mach-s5pc1xx/Kconfig"
1235*4882a593Smuzhiyun
1236*4882a593Smuzhiyunsource "arch/arm/mach-snapdragon/Kconfig"
1237*4882a593Smuzhiyun
1238*4882a593Smuzhiyunsource "arch/arm/mach-socfpga/Kconfig"
1239*4882a593Smuzhiyun
1240*4882a593Smuzhiyunsource "arch/arm/mach-sti/Kconfig"
1241*4882a593Smuzhiyun
1242*4882a593Smuzhiyunsource "arch/arm/mach-stm32/Kconfig"
1243*4882a593Smuzhiyun
1244*4882a593Smuzhiyunsource "arch/arm/mach-sunxi/Kconfig"
1245*4882a593Smuzhiyun
1246*4882a593Smuzhiyunsource "arch/arm/mach-tegra/Kconfig"
1247*4882a593Smuzhiyun
1248*4882a593Smuzhiyunsource "arch/arm/mach-uniphier/Kconfig"
1249*4882a593Smuzhiyun
1250*4882a593Smuzhiyunsource "arch/arm/cpu/armv7/vf610/Kconfig"
1251*4882a593Smuzhiyun
1252*4882a593Smuzhiyunsource "arch/arm/mach-zynq/Kconfig"
1253*4882a593Smuzhiyun
1254*4882a593Smuzhiyunsource "arch/arm/cpu/armv7/Kconfig"
1255*4882a593Smuzhiyun
1256*4882a593Smuzhiyunsource "arch/arm/cpu/armv8/zynqmp/Kconfig"
1257*4882a593Smuzhiyun
1258*4882a593Smuzhiyunsource "arch/arm/cpu/armv8/Kconfig"
1259*4882a593Smuzhiyun
1260*4882a593Smuzhiyunsource "arch/arm/mach-imx/Kconfig"
1261*4882a593Smuzhiyun
1262*4882a593Smuzhiyunsource "board/aries/m28evk/Kconfig"
1263*4882a593Smuzhiyunsource "board/bosch/shc/Kconfig"
1264*4882a593Smuzhiyunsource "board/CarMediaLab/flea3/Kconfig"
1265*4882a593Smuzhiyunsource "board/Marvell/aspenite/Kconfig"
1266*4882a593Smuzhiyunsource "board/Marvell/gplugd/Kconfig"
1267*4882a593Smuzhiyunsource "board/armadeus/apf27/Kconfig"
1268*4882a593Smuzhiyunsource "board/armltd/vexpress/Kconfig"
1269*4882a593Smuzhiyunsource "board/armltd/vexpress64/Kconfig"
1270*4882a593Smuzhiyunsource "board/bluegiga/apx4devkit/Kconfig"
1271*4882a593Smuzhiyunsource "board/broadcom/bcm23550_w1d/Kconfig"
1272*4882a593Smuzhiyunsource "board/broadcom/bcm28155_ap/Kconfig"
1273*4882a593Smuzhiyunsource "board/broadcom/bcmcygnus/Kconfig"
1274*4882a593Smuzhiyunsource "board/broadcom/bcmnsp/Kconfig"
1275*4882a593Smuzhiyunsource "board/broadcom/bcmns2/Kconfig"
1276*4882a593Smuzhiyunsource "board/cavium/thunderx/Kconfig"
1277*4882a593Smuzhiyunsource "board/cirrus/edb93xx/Kconfig"
1278*4882a593Smuzhiyunsource "board/creative/xfi3/Kconfig"
1279*4882a593Smuzhiyunsource "board/freescale/ls2080a/Kconfig"
1280*4882a593Smuzhiyunsource "board/freescale/ls2080aqds/Kconfig"
1281*4882a593Smuzhiyunsource "board/freescale/ls2080ardb/Kconfig"
1282*4882a593Smuzhiyunsource "board/freescale/ls1021aqds/Kconfig"
1283*4882a593Smuzhiyunsource "board/freescale/ls1043aqds/Kconfig"
1284*4882a593Smuzhiyunsource "board/freescale/ls1021atwr/Kconfig"
1285*4882a593Smuzhiyunsource "board/freescale/ls1021aiot/Kconfig"
1286*4882a593Smuzhiyunsource "board/freescale/ls1046aqds/Kconfig"
1287*4882a593Smuzhiyunsource "board/freescale/ls1043ardb/Kconfig"
1288*4882a593Smuzhiyunsource "board/freescale/ls1046ardb/Kconfig"
1289*4882a593Smuzhiyunsource "board/freescale/ls1012aqds/Kconfig"
1290*4882a593Smuzhiyunsource "board/freescale/ls1012ardb/Kconfig"
1291*4882a593Smuzhiyunsource "board/freescale/ls1012afrdm/Kconfig"
1292*4882a593Smuzhiyunsource "board/freescale/mx23evk/Kconfig"
1293*4882a593Smuzhiyunsource "board/freescale/mx25pdk/Kconfig"
1294*4882a593Smuzhiyunsource "board/freescale/mx28evk/Kconfig"
1295*4882a593Smuzhiyunsource "board/freescale/mx31ads/Kconfig"
1296*4882a593Smuzhiyunsource "board/freescale/mx31pdk/Kconfig"
1297*4882a593Smuzhiyunsource "board/freescale/mx35pdk/Kconfig"
1298*4882a593Smuzhiyunsource "board/freescale/s32v234evb/Kconfig"
1299*4882a593Smuzhiyunsource "board/gdsys/a38x/Kconfig"
1300*4882a593Smuzhiyunsource "board/grinn/chiliboard/Kconfig"
1301*4882a593Smuzhiyunsource "board/gumstix/pepper/Kconfig"
1302*4882a593Smuzhiyunsource "board/h2200/Kconfig"
1303*4882a593Smuzhiyunsource "board/hisilicon/hikey/Kconfig"
1304*4882a593Smuzhiyunsource "board/hisilicon/poplar/Kconfig"
1305*4882a593Smuzhiyunsource "board/imx31_phycore/Kconfig"
1306*4882a593Smuzhiyunsource "board/isee/igep003x/Kconfig"
1307*4882a593Smuzhiyunsource "board/olimex/mx23_olinuxino/Kconfig"
1308*4882a593Smuzhiyunsource "board/phytec/pcm051/Kconfig"
1309*4882a593Smuzhiyunsource "board/ppcag/bg0900/Kconfig"
1310*4882a593Smuzhiyunsource "board/sandisk/sansa_fuze_plus/Kconfig"
1311*4882a593Smuzhiyunsource "board/schulercontrol/sc_sps_1/Kconfig"
1312*4882a593Smuzhiyunsource "board/silica/pengwyn/Kconfig"
1313*4882a593Smuzhiyunsource "board/spear/spear300/Kconfig"
1314*4882a593Smuzhiyunsource "board/spear/spear310/Kconfig"
1315*4882a593Smuzhiyunsource "board/spear/spear320/Kconfig"
1316*4882a593Smuzhiyunsource "board/spear/spear600/Kconfig"
1317*4882a593Smuzhiyunsource "board/spear/x600/Kconfig"
1318*4882a593Smuzhiyunsource "board/st/stv0991/Kconfig"
1319*4882a593Smuzhiyunsource "board/syteco/zmx25/Kconfig"
1320*4882a593Smuzhiyunsource "board/tcl/sl50/Kconfig"
1321*4882a593Smuzhiyunsource "board/birdland/bav335x/Kconfig"
1322*4882a593Smuzhiyunsource "board/timll/devkit3250/Kconfig"
1323*4882a593Smuzhiyunsource "board/toradex/colibri_pxa270/Kconfig"
1324*4882a593Smuzhiyunsource "board/technologic/ts4600/Kconfig"
1325*4882a593Smuzhiyunsource "board/vscom/baltos/Kconfig"
1326*4882a593Smuzhiyunsource "board/woodburn/Kconfig"
1327*4882a593Smuzhiyunsource "board/work-microwave/work_92105/Kconfig"
1328*4882a593Smuzhiyunsource "board/zipitz2/Kconfig"
1329*4882a593Smuzhiyun
1330*4882a593Smuzhiyunsource "arch/arm/Kconfig.debug"
1331*4882a593Smuzhiyun
1332*4882a593Smuzhiyunendmenu
1333*4882a593Smuzhiyun
1334*4882a593Smuzhiyunconfig SPL_LDSCRIPT
1335*4882a593Smuzhiyun        default "arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" if TARGET_APX4DEVKIT || TARGET_BG0900 || TARGET_M28EVK || TARGET_MX23_OLINUXINO || TARGET_MX23EVK || TARGET_MX28EVK || TARGET_SANSA_FUZE_PLUS || TARGET_SC_SPS_1 || TARGET_TS4600 || TARGET_XFI3
1336*4882a593Smuzhiyun        default "arch/arm/cpu/arm1136/u-boot-spl.lds" if CPU_ARM1136
1337*4882a593Smuzhiyun	default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64
1338*4882a593Smuzhiyun
1339*4882a593Smuzhiyun
1340