arm: Remove spear310 boards
[platform/kernel/u-boot.git] / arch / arm / Kconfig
1 menu "ARM architecture"
2         depends on ARM
3
4 config SYS_ARCH
5         default "arm"
6
7 config ARM64
8         bool
9         select PHYS_64BIT
10         select SYS_CACHE_SHIFT_6
11
12 if ARM64
13 config POSITION_INDEPENDENT
14         bool "Generate position-independent pre-relocation code"
15         help
16           U-Boot expects to be linked to a specific hard-coded address, and to
17           be loaded to and run from that address. This option lifts that
18           restriction, thus allowing the code to be loaded to and executed from
19           almost any 4K aligned address. This logic relies on the relocation
20           information that is embedded in the binary to support U-Boot
21           relocating itself to the top-of-RAM later during execution.
22
23 config INIT_SP_RELATIVE
24         bool "Specify the early stack pointer relative to the .bss section"
25         default n if ARCH_QEMU
26         default y if POSITION_INDEPENDENT
27         help
28           U-Boot typically uses a hard-coded value for the stack pointer
29           before relocation. Enable this option to instead calculate the
30           initial SP at run-time. This is useful to avoid hard-coding addresses
31           into U-Boot, so that it can be loaded and executed at arbitrary
32           addresses and thus avoid using arbitrary addresses at runtime.
33
34           If this option is enabled, the early stack pointer is set to
35           &_bss_start with a offset value added. The offset is specified by
36           SYS_INIT_SP_BSS_OFFSET.
37
38 config SYS_INIT_SP_BSS_OFFSET
39         int "Early stack offset from the .bss base address"
40         depends on INIT_SP_RELATIVE
41         default 524288
42         help
43           This option's value is the offset added to &_bss_start in order to
44           calculate the stack pointer. This offset should be large enough so
45           that the early malloc region, global data (gd), and early stack usage
46           do not overlap any appended DTB.
47
48 config LINUX_KERNEL_IMAGE_HEADER
49         bool
50         help
51           Place a Linux kernel image header at the start of the U-Boot binary.
52           The format of the header is described in the Linux kernel source at
53           Documentation/arm64/booting.txt. This feature is useful since the
54           image header reports the amount of memory (BSS and similar) that
55           U-Boot needs to use, but which isn't part of the binary.
56
57 if LINUX_KERNEL_IMAGE_HEADER
58 config LNX_KRNL_IMG_TEXT_OFFSET_BASE
59         hex
60         help
61           The value subtracted from CONFIG_SYS_TEXT_BASE to calculate the
62           TEXT_OFFSET value written to the Linux kernel image header.
63 endif
64 endif
65
66 config GIC_V3_ITS
67         bool "ARM GICV3 ITS"
68         select REGMAP
69         select SYSCON
70         select IRQ
71         help
72           ARM GICV3 Interrupt translation service (ITS).
73           Basic support for programming locality specific peripheral
74           interrupts (LPI) configuration tables and enable LPI tables.
75           LPI configuration table can be used by u-boot or Linux.
76           ARM GICV3 has limitation, once the LPI table is enabled, LPI
77           configuration table can not be re-programmed, unless GICV3 reset.
78
79 config STATIC_RELA
80         bool
81         default y if ARM64
82
83 config DMA_ADDR_T_64BIT
84         bool
85         default y if ARM64
86
87 config HAS_VBAR
88         bool
89
90 config HAS_THUMB2
91         bool
92
93 config GPIO_EXTRA_HEADER
94         bool
95
96 # Used for compatibility with asm files copied from the kernel
97 config ARM_ASM_UNIFIED
98         bool
99         default y
100
101 # Used for compatibility with asm files copied from the kernel
102 config THUMB2_KERNEL
103         bool
104
105 config SYS_ICACHE_OFF
106         bool "Do not enable icache"
107         default n
108         help
109           Do not enable instruction cache in U-Boot.
110
111 config SPL_SYS_ICACHE_OFF
112         bool "Do not enable icache in SPL"
113         depends on SPL
114         default SYS_ICACHE_OFF
115         help
116           Do not enable instruction cache in SPL.
117
118 config SYS_DCACHE_OFF
119         bool "Do not enable dcache"
120         default n
121         help
122           Do not enable data cache in U-Boot.
123
124 config SPL_SYS_DCACHE_OFF
125         bool "Do not enable dcache in SPL"
126         depends on SPL
127         default SYS_DCACHE_OFF
128         help
129           Do not enable data cache in SPL.
130
131 config SYS_ARM_CACHE_CP15
132         bool "CP15 based cache enabling support"
133         help
134           Select this if your processor suports enabling caches by using
135           CP15 registers.
136
137 config SYS_ARM_MMU
138         bool "MMU-based Paged Memory Management Support"
139         select SYS_ARM_CACHE_CP15
140         help
141           Select if you want MMU-based virtualised addressing space
142           support via paged memory management.
143
144 config SYS_ARM_MPU
145         bool 'Use the ARM v7 PMSA Compliant MPU'
146         help
147           Some ARM systems without an MMU have instead a Memory Protection
148           Unit (MPU) that defines the type and permissions for regions of
149           memory.
150           If your CPU has an MPU then you should choose 'y' here unless you
151           know that you do not want to use the MPU.
152
153 # If set, the workarounds for these ARM errata are applied early during U-Boot
154 # startup. Note that in general these options force the workarounds to be
155 # applied; no CPU-type/version detection exists, unlike the similar options in
156 # the Linux kernel. Do not set these options unless they apply!  Also note that
157 # the following can be machine-specific errata. These do have ability to
158 # provide rudimentary version and machine-specific checks, but expect no
159 # product checks:
160 # CONFIG_ARM_ERRATA_430973
161 # CONFIG_ARM_ERRATA_454179
162 # CONFIG_ARM_ERRATA_621766
163 # CONFIG_ARM_ERRATA_798870
164 # CONFIG_ARM_ERRATA_801819
165 # CONFIG_ARM_CORTEX_A8_CVE_2017_5715
166 # CONFIG_ARM_CORTEX_A15_CVE_2017_5715
167
168 config ARM_ERRATA_430973
169         bool
170
171 config ARM_ERRATA_454179
172         bool
173
174 config ARM_ERRATA_621766
175         bool
176
177 config ARM_ERRATA_716044
178         bool
179
180 config ARM_ERRATA_725233
181         bool
182
183 config ARM_ERRATA_742230
184         bool
185
186 config ARM_ERRATA_743622
187         bool
188
189 config ARM_ERRATA_751472
190         bool
191
192 config ARM_ERRATA_761320
193         bool
194
195 config ARM_ERRATA_773022
196         bool
197
198 config ARM_ERRATA_774769
199         bool
200
201 config ARM_ERRATA_794072
202         bool
203
204 config ARM_ERRATA_798870
205         bool
206
207 config ARM_ERRATA_801819
208         bool
209
210 config ARM_ERRATA_826974
211         bool
212
213 config ARM_ERRATA_828024
214         bool
215
216 config ARM_ERRATA_829520
217         bool
218
219 config ARM_ERRATA_833069
220         bool
221
222 config ARM_ERRATA_833471
223         bool
224
225 config ARM_ERRATA_845369
226         bool
227
228 config ARM_ERRATA_852421
229         bool
230
231 config ARM_ERRATA_852423
232         bool
233
234 config ARM_ERRATA_855873
235         bool
236
237 config ARM_CORTEX_A8_CVE_2017_5715
238         bool
239
240 config ARM_CORTEX_A15_CVE_2017_5715
241         bool
242
243 config CPU_ARM720T
244         bool
245         select SYS_CACHE_SHIFT_5
246         imply SYS_ARM_MMU
247
248 config CPU_ARM920T
249         bool
250         select SYS_CACHE_SHIFT_5
251         imply SYS_ARM_MMU
252
253 config CPU_ARM926EJS
254         bool
255         select SYS_CACHE_SHIFT_5
256         imply SYS_ARM_MMU
257
258 config CPU_ARM946ES
259         bool
260         select SYS_CACHE_SHIFT_5
261         imply SYS_ARM_MMU
262
263 config CPU_ARM1136
264         bool
265         select SYS_CACHE_SHIFT_5
266         imply SYS_ARM_MMU
267
268 config CPU_ARM1176
269         bool
270         select HAS_VBAR
271         select SYS_CACHE_SHIFT_5
272         imply SYS_ARM_MMU
273
274 config CPU_V7A
275         bool
276         select HAS_THUMB2
277         select HAS_VBAR
278         select SYS_CACHE_SHIFT_6
279         imply SYS_ARM_MMU
280
281 config CPU_V7M
282         bool
283         select HAS_THUMB2
284         select SYS_ARM_MPU
285         select SYS_CACHE_SHIFT_5
286         select SYS_THUMB_BUILD
287         select THUMB2_KERNEL
288
289 config CPU_V7R
290         bool
291         select HAS_THUMB2
292         select SYS_ARM_CACHE_CP15
293         select SYS_ARM_MPU
294         select SYS_CACHE_SHIFT_6
295
296 config CPU_PXA
297         bool
298         select SYS_CACHE_SHIFT_5
299         imply SYS_ARM_MMU
300
301 config CPU_SA1100
302         bool
303         select SYS_CACHE_SHIFT_5
304         imply SYS_ARM_MMU
305
306 config SYS_CPU
307         default "arm720t" if CPU_ARM720T
308         default "arm920t" if CPU_ARM920T
309         default "arm926ejs" if CPU_ARM926EJS
310         default "arm946es" if CPU_ARM946ES
311         default "arm1136" if CPU_ARM1136
312         default "arm1176" if CPU_ARM1176
313         default "armv7" if CPU_V7A
314         default "armv7" if CPU_V7R
315         default "armv7m" if CPU_V7M
316         default "pxa" if CPU_PXA
317         default "sa1100" if CPU_SA1100
318         default "armv8" if ARM64
319
320 config SYS_ARM_ARCH
321         int
322         default 4 if CPU_ARM720T
323         default 4 if CPU_ARM920T
324         default 5 if CPU_ARM926EJS
325         default 5 if CPU_ARM946ES
326         default 6 if CPU_ARM1136
327         default 6 if CPU_ARM1176
328         default 7 if CPU_V7A
329         default 7 if CPU_V7M
330         default 7 if CPU_V7R
331         default 5 if CPU_PXA
332         default 4 if CPU_SA1100
333         default 8 if ARM64
334
335 config SYS_CACHE_SHIFT_5
336         bool
337
338 config SYS_CACHE_SHIFT_6
339         bool
340
341 config SYS_CACHE_SHIFT_7
342         bool
343
344 config SYS_CACHELINE_SIZE
345         int
346         default 128 if SYS_CACHE_SHIFT_7
347         default 64 if SYS_CACHE_SHIFT_6
348         default 32 if SYS_CACHE_SHIFT_5
349
350 choice
351         prompt "Select the ARM data write cache policy"
352         default SYS_ARM_CACHE_WRITETHROUGH if TARGET_BCMCYGNUS || \
353                                               CPU_PXA || RZA1
354         default SYS_ARM_CACHE_WRITEBACK
355
356 config SYS_ARM_CACHE_WRITEBACK
357         bool "Write-back (WB)"
358         help
359           A write updates the cache only and marks the cache line as dirty.
360           External memory is updated only when the line is evicted or explicitly
361           cleaned.
362
363 config SYS_ARM_CACHE_WRITETHROUGH
364         bool "Write-through (WT)"
365         help
366           A write updates both the cache and the external memory system.
367           This does not mark the cache line as dirty.
368
369 config SYS_ARM_CACHE_WRITEALLOC
370         bool "Write allocation (WA)"
371         help
372           A cache line is allocated on a write miss. This means that executing a
373           store instruction on the processor might cause a burst read to occur.
374           There is a linefill to obtain the data for the cache line, before the
375           write is performed.
376 endchoice
377
378 config ARCH_CPU_INIT
379         bool "Enable ARCH_CPU_INIT"
380         help
381           Some architectures require a call to arch_cpu_init().
382           Say Y here to enable it
383
384 config SYS_ARCH_TIMER
385         bool "ARM Generic Timer support"
386         depends on CPU_V7A || ARM64
387         default y if ARM64
388         help
389           The ARM Generic Timer (aka arch-timer) provides an architected
390           interface to a timer source on an SoC.
391           It is mandatory for ARMv8 implementation and widely available
392           on ARMv7 systems.
393
394 config ARM_SMCCC
395         bool "Support for ARM SMC Calling Convention (SMCCC)"
396         depends on CPU_V7A || ARM64
397         select ARM_PSCI_FW
398         help
399           Say Y here if you want to enable ARM SMC Calling Convention.
400           This should be enabled if U-Boot needs to communicate with system
401           firmware (for example, PSCI) according to SMCCC.
402
403 config SEMIHOSTING
404         bool "support boot from semihosting"
405         help
406           In emulated environments, semihosting is a way for
407           the hosted environment to call out to the emulator to
408           retrieve files from the host machine.
409
410 config SYS_THUMB_BUILD
411         bool "Build U-Boot using the Thumb instruction set"
412         depends on !ARM64
413         help
414            Use this flag to build U-Boot using the Thumb instruction set for
415            ARM architectures. Thumb instruction set provides better code
416            density. For ARM architectures that support Thumb2 this flag will
417            result in Thumb2 code generated by GCC.
418
419 config SPL_SYS_THUMB_BUILD
420         bool "Build SPL using the Thumb instruction set"
421         default y if SYS_THUMB_BUILD
422         depends on !ARM64 && SPL
423         help
424            Use this flag to build SPL using the Thumb instruction set for
425            ARM architectures. Thumb instruction set provides better code
426            density. For ARM architectures that support Thumb2 this flag will
427            result in Thumb2 code generated by GCC.
428
429 config TPL_SYS_THUMB_BUILD
430         bool "Build TPL using the Thumb instruction set"
431         default y if SYS_THUMB_BUILD
432         depends on TPL && !ARM64
433         help
434            Use this flag to build TPL using the Thumb instruction set for
435            ARM architectures. Thumb instruction set provides better code
436            density. For ARM architectures that support Thumb2 this flag will
437            result in Thumb2 code generated by GCC.
438
439
440 config SYS_L2CACHE_OFF
441         bool "L2cache off"
442         help
443           If SoC does not support L2CACHE or one does not want to enable
444           L2CACHE, choose this option.
445
446 config ENABLE_ARM_SOC_BOOT0_HOOK
447         bool "prepare BOOT0 header"
448         help
449           If the SoC's BOOT0 requires a header area filled with (magic)
450           values, then choose this option, and create a file included as
451           <asm/arch/boot0.h> which contains the required assembler code.
452
453 config ARM_CORTEX_CPU_IS_UP
454         bool
455         default n
456
457 config USE_ARCH_MEMCPY
458         bool "Use an assembly optimized implementation of memcpy"
459         default y
460         depends on !ARM64
461         help
462           Enable the generation of an optimized version of memcpy.
463           Such an implementation may be faster under some conditions
464           but may increase the binary size.
465
466 config SPL_USE_ARCH_MEMCPY
467         bool "Use an assembly optimized implementation of memcpy for SPL"
468         default y if USE_ARCH_MEMCPY
469         depends on !ARM64 && SPL
470         help
471           Enable the generation of an optimized version of memcpy.
472           Such an implementation may be faster under some conditions
473           but may increase the binary size.
474
475 config TPL_USE_ARCH_MEMCPY
476         bool "Use an assembly optimized implementation of memcpy for TPL"
477         default y if USE_ARCH_MEMCPY
478         depends on !ARM64 && TPL
479         help
480           Enable the generation of an optimized version of memcpy.
481           Such an implementation may be faster under some conditions
482           but may increase the binary size.
483
484 config USE_ARCH_MEMSET
485         bool "Use an assembly optimized implementation of memset"
486         default y
487         depends on !ARM64
488         help
489           Enable the generation of an optimized version of memset.
490           Such an implementation may be faster under some conditions
491           but may increase the binary size.
492
493 config SPL_USE_ARCH_MEMSET
494         bool "Use an assembly optimized implementation of memset for SPL"
495         default y if USE_ARCH_MEMSET
496         depends on !ARM64 && SPL
497         help
498           Enable the generation of an optimized version of memset.
499           Such an implementation may be faster under some conditions
500           but may increase the binary size.
501
502 config TPL_USE_ARCH_MEMSET
503         bool "Use an assembly optimized implementation of memset for TPL"
504         default y if USE_ARCH_MEMSET
505         depends on !ARM64 && TPL
506         help
507           Enable the generation of an optimized version of memset.
508           Such an implementation may be faster under some conditions
509           but may increase the binary size.
510
511 config ARM64_SUPPORT_AARCH32
512         bool "ARM64 system support AArch32 execution state"
513         depends on ARM64
514         default y if !TARGET_THUNDERX_88XX
515         help
516           This ARM64 system supports AArch32 execution state.
517
518 choice
519         prompt "Target select"
520         default TARGET_HIKEY
521
522 config ARCH_AT91
523         bool "Atmel AT91"
524         select GPIO_EXTRA_HEADER
525         select SPL_BOARD_INIT if SPL && !TARGET_SMARTWEB
526         select SPL_SEPARATE_BSS if SPL
527
528 config TARGET_ASPENITE
529         bool "Support aspenite"
530         select CPU_ARM926EJS
531         select GPIO_EXTRA_HEADER
532
533 config ARCH_DAVINCI
534         bool "TI DaVinci"
535         select CPU_ARM926EJS
536         select GPIO_EXTRA_HEADER
537         select SPL_DM_SPI if SPL
538         imply CMD_SAVES
539         help
540           Support for TI's DaVinci platform.
541
542 config ARCH_KIRKWOOD
543         bool "Marvell Kirkwood"
544         select ARCH_MISC_INIT
545         select BOARD_EARLY_INIT_F
546         select CPU_ARM926EJS
547         select GPIO_EXTRA_HEADER
548
549 config ARCH_MVEBU
550         bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)"
551         select DM
552         select DM_ETH
553         select DM_SERIAL
554         select DM_SPI
555         select DM_SPI_FLASH
556         select GPIO_EXTRA_HEADER
557         select SPL_DM_SPI if SPL
558         select SPL_DM_SPI_FLASH if SPL
559         select OF_CONTROL
560         select OF_SEPARATE
561         select SPI
562         imply CMD_DM
563
564 config ARCH_ORION5X
565         bool "Marvell Orion"
566         select CPU_ARM926EJS
567         select GPIO_EXTRA_HEADER
568
569 config TARGET_SPEAR320
570         bool "Support spear320"
571         select BOARD_EARLY_INIT_F
572         select CPU_ARM926EJS
573         select GPIO_EXTRA_HEADER
574         select PL011_SERIAL
575         imply CMD_SAVES
576
577 config TARGET_SPEAR600
578         bool "Support spear600"
579         select BOARD_EARLY_INIT_F
580         select CPU_ARM926EJS
581         select GPIO_EXTRA_HEADER
582         select PL011_SERIAL
583         imply CMD_SAVES
584
585 config TARGET_STV0991
586         bool "Support stv0991"
587         select CPU_V7A
588         select DM
589         select DM_SERIAL
590         select DM_SPI
591         select DM_SPI_FLASH
592         select GPIO_EXTRA_HEADER
593         select PL01X_SERIAL
594         select SPI
595         select SPI_FLASH
596         imply CMD_DM
597
598 config TARGET_X600
599         bool "Support x600"
600         select BOARD_LATE_INIT
601         select CPU_ARM926EJS
602         select GPIO_EXTRA_HEADER
603         select PL011_SERIAL
604         select SUPPORT_SPL
605
606 config TARGET_FLEA3
607         bool "Support flea3"
608         select CPU_ARM1136
609         select GPIO_EXTRA_HEADER
610
611 config ARCH_BCM283X
612         bool "Broadcom BCM283X family"
613         select DM
614         select DM_GPIO
615         select DM_SERIAL
616         select GPIO_EXTRA_HEADER
617         select OF_CONTROL
618         select PL01X_SERIAL
619         select SERIAL_SEARCH_ALL
620         imply CMD_DM
621         imply FAT_WRITE
622
623 config ARCH_BCM63158
624         bool "Broadcom BCM63158 family"
625         select DM
626         select OF_CONTROL
627         imply CMD_DM
628
629 config ARCH_BCM68360
630         bool "Broadcom BCM68360 family"
631         select DM
632         select OF_CONTROL
633         imply CMD_DM
634
635 config ARCH_BCM6858
636         bool "Broadcom BCM6858 family"
637         select DM
638         select OF_CONTROL
639         imply CMD_DM
640
641 config ARCH_BCMSTB
642         bool "Broadcom BCM7XXX family"
643         select CPU_V7A
644         select DM
645         select GPIO_EXTRA_HEADER
646         select OF_CONTROL
647         select OF_PRIOR_STAGE
648         imply CMD_DM
649         help
650           This enables support for Broadcom ARM-based set-top box
651           chipsets, including the 7445 family of chips.
652
653 config TARGET_BCMCYGNUS
654         bool "Support bcmcygnus"
655         select CPU_V7A
656         select GPIO_EXTRA_HEADER
657         imply BCM_SF2_ETH
658         imply BCM_SF2_ETH_GMAC
659         imply CMD_HASH
660         imply CRC32_VERIFY
661         imply FAT_WRITE
662         imply HASH_VERIFY
663         imply NETDEVICES
664
665 config TARGET_BCMNS2
666         bool "Support Broadcom Northstar2"
667         select ARM64
668         select GPIO_EXTRA_HEADER
669         help
670           Support for Broadcom Northstar 2 SoCs.  NS2 is a quad-core 64-bit
671           ARMv8 Cortex-A57 processors targeting a broad range of networking
672           applications.
673
674 config TARGET_BCMNS3
675         bool "Support Broadcom NS3"
676         select ARM64
677         select BOARD_LATE_INIT
678         help
679           Support for Broadcom Northstar 3 SoCs. NS3 is a octo-core 64-bit
680           ARMv8 Cortex-A72 processors targeting a broad range of networking
681           applications.
682
683 config ARCH_EXYNOS
684         bool "Samsung EXYNOS"
685         select DM
686         select DM_GPIO
687         select DM_I2C
688         select DM_KEYBOARD
689         select DM_SERIAL
690         select DM_SPI
691         select DM_SPI_FLASH
692         select SPI
693         select GPIO_EXTRA_HEADER
694         imply SYS_THUMB_BUILD
695         imply CMD_DM
696         imply FAT_WRITE
697
698 config ARCH_S5PC1XX
699         bool "Samsung S5PC1XX"
700         select CPU_V7A
701         select DM
702         select DM_GPIO
703         select DM_I2C
704         select DM_SERIAL
705         select GPIO_EXTRA_HEADER
706         imply CMD_DM
707
708 config ARCH_HIGHBANK
709         bool "Calxeda Highbank"
710         select CPU_V7A
711         select PL01X_SERIAL
712         select DM
713         select DM_SERIAL
714         select OF_CONTROL
715         select OF_BOARD
716         select CLK
717         select CLK_CCF
718         select AHCI
719         select DM_ETH
720         select PHYS_64BIT
721
722 config ARCH_INTEGRATOR
723         bool "ARM Ltd. Integrator family"
724         select DM
725         select DM_SERIAL
726         select GPIO_EXTRA_HEADER
727         select PL01X_SERIAL
728         imply CMD_DM
729
730 config ARCH_IPQ40XX
731         bool "Qualcomm IPQ40xx SoCs"
732         select CPU_V7A
733         select DM
734         select DM_GPIO
735         select DM_SERIAL
736         select DM_RESET
737         select GPIO_EXTRA_HEADER
738         select MSM_SMEM
739         select PINCTRL
740         select CLK
741         select SMEM
742         select OF_CONTROL
743         imply CMD_DM
744
745 config ARCH_KEYSTONE
746         bool "TI Keystone"
747         select CMD_POWEROFF
748         select CPU_V7A
749         select GPIO_EXTRA_HEADER
750         select SUPPORT_SPL
751         select SYS_ARCH_TIMER
752         select SYS_THUMB_BUILD
753         imply CMD_MTDPARTS
754         imply CMD_SAVES
755         imply FIT
756
757 config ARCH_K3
758         bool "Texas Instruments' K3 Architecture"
759         select SPL
760         select SUPPORT_SPL
761         select FIT
762
763 config ARCH_OMAP2PLUS
764         bool "TI OMAP2+"
765         select CPU_V7A
766         select GPIO_EXTRA_HEADER
767         select SPL_BOARD_INIT if SPL
768         select SPL_STACK_R if SPL
769         select SUPPORT_SPL
770         imply TI_SYSC if DM && OF_CONTROL
771         imply FIT
772
773 config ARCH_MESON
774         bool "Amlogic Meson"
775         select GPIO_EXTRA_HEADER
776         imply DISTRO_DEFAULTS
777         imply DM_RNG
778         help
779           Support for the Meson SoC family developed by Amlogic Inc.,
780           targeted at media players and tablet computers. We currently
781           support the S905 (GXBaby) 64-bit SoC.
782
783 config ARCH_MEDIATEK
784         bool "MediaTek SoCs"
785         select DM
786         select GPIO_EXTRA_HEADER
787         select OF_CONTROL
788         select SPL_DM if SPL
789         select SPL_LIBCOMMON_SUPPORT if SPL
790         select SPL_LIBGENERIC_SUPPORT if SPL
791         select SPL_OF_CONTROL if SPL
792         select SUPPORT_SPL
793         help
794           Support for the MediaTek SoCs family developed by MediaTek Inc.
795           Please refer to doc/README.mediatek for more information.
796
797 config ARCH_LPC32XX
798         bool "NXP LPC32xx platform"
799         select CPU_ARM926EJS
800         select DM
801         select DM_GPIO
802         select DM_SERIAL
803         select GPIO_EXTRA_HEADER
804         select SPL_DM if SPL
805         select SUPPORT_SPL
806         imply CMD_DM
807
808 config ARCH_IMX8
809         bool "NXP i.MX8 platform"
810         select ARM64
811         select DM
812         select GPIO_EXTRA_HEADER
813         select OF_CONTROL
814         select ENABLE_ARM_SOC_BOOT0_HOOK
815
816 config ARCH_IMX8M
817         bool "NXP i.MX8M platform"
818         select ARM64
819         select GPIO_EXTRA_HEADER
820         select SYS_FSL_HAS_SEC if IMX_HAB
821         select SYS_FSL_SEC_COMPAT_4
822         select SYS_FSL_SEC_LE
823         select DM
824         select SUPPORT_SPL
825         imply CMD_DM
826
827 config ARCH_IMXRT
828         bool "NXP i.MXRT platform"
829         select CPU_V7M
830         select DM
831         select DM_SERIAL
832         select GPIO_EXTRA_HEADER
833         select SUPPORT_SPL
834         imply CMD_DM
835
836 config ARCH_MX23
837         bool "NXP i.MX23 family"
838         select CPU_ARM926EJS
839         select GPIO_EXTRA_HEADER
840         select PL011_SERIAL
841         select SUPPORT_SPL
842
843 config ARCH_MX25
844         bool "NXP MX25"
845         select CPU_ARM926EJS
846         select GPIO_EXTRA_HEADER
847         imply MXC_GPIO
848
849 config ARCH_MX28
850         bool "NXP i.MX28 family"
851         select CPU_ARM926EJS
852         select GPIO_EXTRA_HEADER
853         select PL011_SERIAL
854         select SUPPORT_SPL
855
856 config ARCH_MX31
857         bool "NXP i.MX31 family"
858         select CPU_ARM1136
859         select GPIO_EXTRA_HEADER
860
861 config ARCH_MX7ULP
862         bool "NXP MX7ULP"
863         select CPU_V7A
864         select GPIO_EXTRA_HEADER
865         select SYS_FSL_HAS_SEC if IMX_HAB
866         select SYS_FSL_SEC_COMPAT_4
867         select SYS_FSL_SEC_LE
868         select ROM_UNIFIED_SECTIONS
869         imply MXC_GPIO
870         imply SYS_THUMB_BUILD
871
872 config ARCH_MX7
873         bool "Freescale MX7"
874         select ARCH_MISC_INIT
875         select CPU_V7A
876         select GPIO_EXTRA_HEADER
877         select SYS_FSL_HAS_SEC if IMX_HAB
878         select SYS_FSL_SEC_COMPAT_4
879         select SYS_FSL_SEC_LE
880         imply BOARD_EARLY_INIT_F
881         imply MXC_GPIO
882         imply SYS_THUMB_BUILD
883
884 config ARCH_MX6
885         bool "Freescale MX6"
886         select CPU_V7A
887         select GPIO_EXTRA_HEADER
888         select SYS_FSL_HAS_SEC
889         select SYS_FSL_SEC_COMPAT_4
890         select SYS_FSL_SEC_LE
891         imply MXC_GPIO
892         imply SYS_THUMB_BUILD
893
894 if ARCH_MX6
895 config SPL_LDSCRIPT
896         default "arch/arm/mach-omap2/u-boot-spl.lds"
897 endif
898
899 config ARCH_MX5
900         bool "Freescale MX5"
901         select BOARD_EARLY_INIT_F
902         select CPU_V7A
903         select GPIO_EXTRA_HEADER
904         imply MXC_GPIO
905
906 config ARCH_NEXELL
907         bool "Nexell S5P4418/S5P6818 SoC"
908         select ENABLE_ARM_SOC_BOOT0_HOOK
909         select DM
910         select GPIO_EXTRA_HEADER
911
912 config ARCH_OWL
913         bool "Actions Semi OWL SoCs"
914         select DM
915         select DM_ETH
916         select DM_SERIAL
917         select GPIO_EXTRA_HEADER
918         select OWL_SERIAL
919         select CLK
920         select CLK_OWL
921         select OF_CONTROL
922         select SYS_RELOC_GD_ENV_ADDR
923         imply CMD_DM
924
925 config ARCH_QEMU
926         bool "QEMU Virtual Platform"
927         select DM
928         select DM_SERIAL
929         select OF_CONTROL
930         select PL01X_SERIAL
931         imply CMD_DM
932         imply DM_RNG
933         imply DM_RTC
934         imply RTC_PL031
935
936 config ARCH_RMOBILE
937         bool "Renesas ARM SoCs"
938         select DM
939         select DM_SERIAL
940         select GPIO_EXTRA_HEADER
941         imply BOARD_EARLY_INIT_F
942         imply CMD_DM
943         imply FAT_WRITE
944         imply SYS_THUMB_BUILD
945         imply ARCH_MISC_INIT if DISPLAY_CPUINFO
946
947 config ARCH_SNAPDRAGON
948         bool "Qualcomm Snapdragon SoCs"
949         select ARM64
950         select DM
951         select DM_GPIO
952         select DM_SERIAL
953         select GPIO_EXTRA_HEADER
954         select MSM_SMEM
955         select OF_CONTROL
956         select OF_SEPARATE
957         select SMEM
958         select SPMI
959         imply CMD_DM
960
961 config ARCH_SOCFPGA
962         bool "Altera SOCFPGA family"
963         select ARCH_EARLY_INIT_R
964         select ARCH_MISC_INIT if !TARGET_SOCFPGA_ARRIA10
965         select ARM64 if TARGET_SOCFPGA_SOC64
966         select CPU_V7A if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
967         select DM
968         select DM_SERIAL
969         select GPIO_EXTRA_HEADER
970         select ENABLE_ARM_SOC_BOOT0_HOOK if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
971         select OF_CONTROL
972         select SPL_DM_RESET if DM_RESET
973         select SPL_DM_SERIAL
974         select SPL_LIBCOMMON_SUPPORT
975         select SPL_LIBGENERIC_SUPPORT
976         select SPL_NAND_SUPPORT if SPL_NAND_DENALI
977         select SPL_OF_CONTROL
978         select SPL_SEPARATE_BSS if TARGET_SOCFPGA_SOC64
979         select SPL_SERIAL_SUPPORT
980         select SPL_SYSRESET
981         select SPL_WATCHDOG_SUPPORT
982         select SUPPORT_SPL
983         select SYS_NS16550
984         select SYS_THUMB_BUILD if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
985         select SYSRESET
986         select SYSRESET_SOCFPGA if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
987         select SYSRESET_SOCFPGA_SOC64 if TARGET_SOCFPGA_SOC64
988         imply CMD_DM
989         imply CMD_MTDPARTS
990         imply CRC32_VERIFY
991         imply DM_SPI
992         imply DM_SPI_FLASH
993         imply FAT_WRITE
994         imply SPL
995         imply SPL_DM
996         imply SPL_DM_SPI
997         imply SPL_DM_SPI_FLASH
998         imply SPL_LIBDISK_SUPPORT
999         imply SPL_MMC_SUPPORT
1000         imply SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
1001         imply SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE
1002         imply SPL_SPI_FLASH_SUPPORT
1003         imply SPL_SPI_SUPPORT
1004         imply L2X0_CACHE
1005
1006 config ARCH_SUNXI
1007         bool "Support sunxi (Allwinner) SoCs"
1008         select BINMAN
1009         select CMD_GPIO
1010         select CMD_MMC if MMC
1011         select CMD_USB if DISTRO_DEFAULTS
1012         select CLK
1013         select DM
1014         select DM_ETH
1015         select DM_GPIO
1016         select DM_KEYBOARD
1017         select DM_MMC if MMC
1018         select DM_SCSI if SCSI
1019         select DM_SERIAL
1020         select DM_USB if DISTRO_DEFAULTS
1021         select GPIO_EXTRA_HEADER
1022         select OF_BOARD_SETUP
1023         select OF_CONTROL
1024         select OF_SEPARATE
1025         select SPECIFY_CONSOLE_INDEX
1026         select SPL_STACK_R if SPL
1027         select SPL_SYS_MALLOC_SIMPLE if SPL
1028         select SPL_SYS_THUMB_BUILD if !ARM64
1029         select SUNXI_GPIO
1030         select SYS_NS16550
1031         select SYS_THUMB_BUILD if !ARM64
1032         select USB if DISTRO_DEFAULTS
1033         select USB_KEYBOARD if DISTRO_DEFAULTS
1034         select USB_STORAGE if DISTRO_DEFAULTS
1035         select SPL_USE_TINY_PRINTF
1036         select USE_PREBOOT
1037         select SYS_RELOC_GD_ENV_ADDR
1038         imply BOARD_LATE_INIT
1039         imply CMD_DM
1040         imply CMD_GPT
1041         imply CMD_UBI if MTD_RAW_NAND
1042         imply DISTRO_DEFAULTS
1043         imply FAT_WRITE
1044         imply FIT
1045         imply OF_LIBFDT_OVERLAY
1046         imply PRE_CONSOLE_BUFFER
1047         imply SPL_GPIO_SUPPORT
1048         imply SPL_LIBCOMMON_SUPPORT
1049         imply SPL_LIBGENERIC_SUPPORT
1050         imply SPL_MMC_SUPPORT if MMC
1051         imply SPL_POWER_SUPPORT
1052         imply SPL_SERIAL_SUPPORT
1053         imply USB_GADGET
1054
1055 config ARCH_U8500
1056         bool "ST-Ericsson U8500 Series"
1057         select CPU_V7A
1058         select DM
1059         select DM_GPIO
1060         select DM_MMC if MMC
1061         select DM_SERIAL
1062         select DM_USB if USB
1063         select OF_CONTROL
1064         select SYSRESET
1065         select TIMER
1066         imply ARM_PL180_MMCI
1067         imply DM_RTC
1068         imply NOMADIK_MTU_TIMER
1069         imply PL01X_SERIAL
1070         imply RTC_PL031
1071         imply SYSRESET_SYSCON
1072
1073 config ARCH_VERSAL
1074         bool "Support Xilinx Versal Platform"
1075         select ARM64
1076         select CLK
1077         select DM
1078         select DM_ETH if NET
1079         select DM_MMC if MMC
1080         select DM_SERIAL
1081         select GPIO_EXTRA_HEADER
1082         select OF_CONTROL
1083         imply BOARD_LATE_INIT
1084         imply ENV_VARS_UBOOT_RUNTIME_CONFIG
1085
1086 config ARCH_VF610
1087         bool "Freescale Vybrid"
1088         select CPU_V7A
1089         select GPIO_EXTRA_HEADER
1090         select SYS_FSL_ERRATUM_ESDHC111
1091         imply CMD_MTDPARTS
1092         imply MTD_RAW_NAND
1093
1094 config ARCH_ZYNQ
1095         bool "Xilinx Zynq based platform"
1096         select CLK
1097         select CLK_ZYNQ
1098         select CPU_V7A
1099         select DM
1100         select DM_ETH if NET
1101         select DM_MMC if MMC
1102         select DM_SERIAL
1103         select DM_SPI
1104         select DM_SPI_FLASH
1105         select DM_USB if USB
1106         select GPIO_EXTRA_HEADER
1107         select OF_CONTROL
1108         select SPI
1109         select SPL_BOARD_INIT if SPL
1110         select SPL_CLK if SPL
1111         select SPL_DM if SPL
1112         select SPL_DM_SPI if SPL
1113         select SPL_DM_SPI_FLASH if SPL
1114         select SPL_OF_CONTROL if SPL
1115         select SPL_SEPARATE_BSS if SPL
1116         select SUPPORT_SPL
1117         imply ARCH_EARLY_INIT_R
1118         imply BOARD_LATE_INIT
1119         imply CMD_CLK
1120         imply CMD_DM
1121         imply CMD_SPL
1122         imply ENV_VARS_UBOOT_RUNTIME_CONFIG
1123         imply FAT_WRITE
1124
1125 config ARCH_ZYNQMP_R5
1126         bool "Xilinx ZynqMP R5 based platform"
1127         select CLK
1128         select CPU_V7R
1129         select DM
1130         select DM_ETH if NET
1131         select DM_MMC if MMC
1132         select DM_SERIAL
1133         select GPIO_EXTRA_HEADER
1134         select OF_CONTROL
1135         imply CMD_DM
1136         imply DM_USB_GADGET
1137
1138 config ARCH_ZYNQMP
1139         bool "Xilinx ZynqMP based platform"
1140         select ARM64
1141         select CLK
1142         select DM
1143         select DM_ETH if NET
1144         select DM_MAILBOX
1145         select DM_MMC if MMC
1146         select DM_SERIAL
1147         select DM_SPI if SPI
1148         select DM_SPI_FLASH if DM_SPI
1149         select DM_USB if USB
1150         select FIRMWARE
1151         select GPIO_EXTRA_HEADER
1152         select OF_CONTROL
1153         select SPL_BOARD_INIT if SPL
1154         select SPL_CLK if SPL
1155         select SPL_DM if SPL
1156         select SPL_DM_SPI if SPI && SPL_DM
1157         select SPL_DM_SPI_FLASH if SPL_DM_SPI
1158         select SPL_DM_MAILBOX if SPL
1159         select SPL_FIRMWARE if SPL
1160         select SPL_SEPARATE_BSS if SPL
1161         select SUPPORT_SPL
1162         select ZYNQMP_IPI
1163         imply BOARD_LATE_INIT
1164         imply CMD_DM
1165         imply ENV_VARS_UBOOT_RUNTIME_CONFIG
1166         imply FAT_WRITE
1167         imply MP
1168         imply DM_USB_GADGET
1169
1170 config ARCH_TEGRA
1171         bool "NVIDIA Tegra"
1172         select GPIO_EXTRA_HEADER
1173         imply DISTRO_DEFAULTS
1174         imply FAT_WRITE
1175
1176 config TARGET_VEXPRESS64_AEMV8A
1177         bool "Support vexpress_aemv8a"
1178         select ARM64
1179         select GPIO_EXTRA_HEADER
1180         select PL01X_SERIAL
1181
1182 config TARGET_VEXPRESS64_BASE_FVP
1183         bool "Support Versatile Express ARMv8a FVP BASE model"
1184         select ARM64
1185         select GPIO_EXTRA_HEADER
1186         select PL01X_SERIAL
1187         select SEMIHOSTING
1188
1189 config TARGET_VEXPRESS64_JUNO
1190         bool "Support Versatile Express Juno Development Platform"
1191         select ARM64
1192         select GPIO_EXTRA_HEADER
1193         select PL01X_SERIAL
1194         select DM
1195         select OF_CONTROL
1196         select OF_BOARD
1197         select CLK
1198         select DM_SERIAL
1199         select ARM_PSCI_FW
1200         select PSCI_RESET
1201         select DM_ETH
1202         select BLK
1203         select USB
1204         select DM_USB
1205
1206 config TARGET_TOTAL_COMPUTE
1207         bool "Support Total Compute Platform"
1208         select ARM64
1209         select PL01X_SERIAL
1210         select DM
1211         select DM_SERIAL
1212         select DM_MMC
1213         select DM_GPIO
1214
1215 config TARGET_LS2080A_EMU
1216         bool "Support ls2080a_emu"
1217         select ARCH_LS2080A
1218         select ARM64
1219         select ARMV8_MULTIENTRY
1220         select FSL_DDR_SYNC_REFRESH
1221         select GPIO_EXTRA_HEADER
1222         help
1223           Support for Freescale LS2080A_EMU platform.
1224           The LS2080A Development System (EMULATOR) is a pre-silicon
1225           development platform that supports the QorIQ LS2080A
1226           Layerscape Architecture processor.
1227
1228 config TARGET_LS1088AQDS
1229         bool "Support ls1088aqds"
1230         select ARCH_LS1088A
1231         select ARM64
1232         select ARMV8_MULTIENTRY
1233         select ARCH_SUPPORT_TFABOOT
1234         select BOARD_LATE_INIT
1235         select GPIO_EXTRA_HEADER
1236         select SUPPORT_SPL
1237         select FSL_DDR_INTERACTIVE if !SD_BOOT
1238         help
1239           Support for NXP LS1088AQDS platform.
1240           The LS1088A Development System (QDS) is a high-performance
1241           development platform that supports the QorIQ LS1088A
1242           Layerscape Architecture processor.
1243
1244 config TARGET_LS2080AQDS
1245         bool "Support ls2080aqds"
1246         select ARCH_LS2080A
1247         select ARM64
1248         select ARMV8_MULTIENTRY
1249         select ARCH_SUPPORT_TFABOOT
1250         select BOARD_LATE_INIT
1251         select GPIO_EXTRA_HEADER
1252         select SUPPORT_SPL
1253         imply SCSI
1254         imply SCSI_AHCI
1255         select FSL_DDR_BIST
1256         select FSL_DDR_INTERACTIVE if !SPL
1257         help
1258           Support for Freescale LS2080AQDS platform.
1259           The LS2080A Development System (QDS) is a high-performance
1260           development platform that supports the QorIQ LS2080A
1261           Layerscape Architecture processor.
1262
1263 config TARGET_LS2080ARDB
1264         bool "Support ls2080ardb"
1265         select ARCH_LS2080A
1266         select ARM64
1267         select ARMV8_MULTIENTRY
1268         select ARCH_SUPPORT_TFABOOT
1269         select BOARD_LATE_INIT
1270         select SUPPORT_SPL
1271         select FSL_DDR_BIST
1272         select FSL_DDR_INTERACTIVE if !SPL
1273         select GPIO_EXTRA_HEADER
1274         imply SCSI
1275         imply SCSI_AHCI
1276         help
1277           Support for Freescale LS2080ARDB platform.
1278           The LS2080A Reference design board (RDB) is a high-performance
1279           development platform that supports the QorIQ LS2080A
1280           Layerscape Architecture processor.
1281
1282 config TARGET_LS2081ARDB
1283         bool "Support ls2081ardb"
1284         select ARCH_LS2080A
1285         select ARM64
1286         select ARMV8_MULTIENTRY
1287         select BOARD_LATE_INIT
1288         select GPIO_EXTRA_HEADER
1289         select SUPPORT_SPL
1290         help
1291           Support for Freescale LS2081ARDB platform.
1292           The LS2081A Reference design board (RDB) is a high-performance
1293           development platform that supports the QorIQ LS2081A/LS2041A
1294           Layerscape Architecture processor.
1295
1296 config TARGET_LX2160ARDB
1297         bool "Support lx2160ardb"
1298         select ARCH_LX2160A
1299         select ARM64
1300         select ARMV8_MULTIENTRY
1301         select ARCH_SUPPORT_TFABOOT
1302         select BOARD_LATE_INIT
1303         select GPIO_EXTRA_HEADER
1304         help
1305           Support for NXP LX2160ARDB platform.
1306           The lx2160ardb (LX2160A Reference design board (RDB)
1307           is a high-performance development platform that supports the
1308           QorIQ LX2160A/LX2120A/LX2080A Layerscape Architecture processor.
1309
1310 config TARGET_LX2160AQDS
1311         bool "Support lx2160aqds"
1312         select ARCH_LX2160A
1313         select ARM64
1314         select ARMV8_MULTIENTRY
1315         select ARCH_SUPPORT_TFABOOT
1316         select BOARD_LATE_INIT
1317         select GPIO_EXTRA_HEADER
1318         help
1319           Support for NXP LX2160AQDS platform.
1320           The lx2160aqds (LX2160A QorIQ Development System (QDS)
1321           is a high-performance development platform that supports the
1322           QorIQ LX2160A/LX2120A/LX2080A Layerscape Architecture processor.
1323
1324 config TARGET_LX2162AQDS
1325         bool "Support lx2162aqds"
1326         select ARCH_LX2162A
1327         select ARCH_MISC_INIT
1328         select ARM64
1329         select ARMV8_MULTIENTRY
1330         select ARCH_SUPPORT_TFABOOT
1331         select BOARD_LATE_INIT
1332         select GPIO_EXTRA_HEADER
1333         help
1334           Support for NXP LX2162AQDS platform.
1335           The lx2162aqds support is based on LX2160A Layerscape Architecture processor.
1336
1337 config TARGET_HIKEY
1338         bool "Support HiKey 96boards Consumer Edition Platform"
1339         select ARM64
1340         select DM
1341         select DM_GPIO
1342         select DM_SERIAL
1343         select GPIO_EXTRA_HEADER
1344         select OF_CONTROL
1345         select PL01X_SERIAL
1346         select SPECIFY_CONSOLE_INDEX
1347         imply CMD_DM
1348           help
1349           Support for HiKey 96boards platform. It features a HI6220
1350           SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
1351
1352 config TARGET_HIKEY960
1353         bool "Support HiKey960 96boards Consumer Edition Platform"
1354         select ARM64
1355         select DM
1356         select DM_SERIAL
1357         select GPIO_EXTRA_HEADER
1358         select OF_CONTROL
1359         select PL01X_SERIAL
1360         imply CMD_DM
1361           help
1362           Support for HiKey960 96boards platform. It features a HI3660
1363           SoC, with 4xA73 CPU, 4xA53 CPU, MALI-G71 GPU, and 3GB RAM.
1364
1365 config TARGET_POPLAR
1366         bool "Support Poplar 96boards Enterprise Edition Platform"
1367         select ARM64
1368         select DM
1369         select DM_SERIAL
1370         select DM_USB
1371         select GPIO_EXTRA_HEADER
1372         select OF_CONTROL
1373         select PL01X_SERIAL
1374         imply CMD_DM
1375           help
1376           Support for Poplar 96boards EE platform. It features a HI3798cv200
1377           SoC, with 4xA53 CPU, 1GB RAM and the high performance Mali T720 GPU
1378           making it capable of running any commercial set-top solution based on
1379           Linux or Android.
1380
1381 config TARGET_LS1012AQDS
1382         bool "Support ls1012aqds"
1383         select ARCH_LS1012A
1384         select ARM64
1385         select ARCH_SUPPORT_TFABOOT
1386         select BOARD_LATE_INIT
1387         select GPIO_EXTRA_HEADER
1388         help
1389           Support for Freescale LS1012AQDS platform.
1390           The LS1012A Development System (QDS) is a high-performance
1391           development platform that supports the QorIQ LS1012A
1392           Layerscape Architecture processor.
1393
1394 config TARGET_LS1012ARDB
1395         bool "Support ls1012ardb"
1396         select ARCH_LS1012A
1397         select ARM64
1398         select ARCH_SUPPORT_TFABOOT
1399         select BOARD_LATE_INIT
1400         select GPIO_EXTRA_HEADER
1401         imply SCSI
1402         imply SCSI_AHCI
1403         help
1404           Support for Freescale LS1012ARDB platform.
1405           The LS1012A Reference design board (RDB) is a high-performance
1406           development platform that supports the QorIQ LS1012A
1407           Layerscape Architecture processor.
1408
1409 config TARGET_LS1012A2G5RDB
1410         bool "Support ls1012a2g5rdb"
1411         select ARCH_LS1012A
1412         select ARM64
1413         select ARCH_SUPPORT_TFABOOT
1414         select BOARD_LATE_INIT
1415         select GPIO_EXTRA_HEADER
1416         imply SCSI
1417         help
1418           Support for Freescale LS1012A2G5RDB platform.
1419           The LS1012A 2G5 Reference design board (RDB) is a high-performance
1420           development platform that supports the QorIQ LS1012A
1421           Layerscape Architecture processor.
1422
1423 config TARGET_LS1012AFRWY
1424         bool "Support ls1012afrwy"
1425         select ARCH_LS1012A
1426         select ARM64
1427         select ARCH_SUPPORT_TFABOOT
1428         select BOARD_LATE_INIT
1429         select GPIO_EXTRA_HEADER
1430         imply SCSI
1431         imply SCSI_AHCI
1432         help
1433          Support for Freescale LS1012AFRWY platform.
1434          The LS1012A FRWY board (FRWY) is a high-performance
1435          development platform that supports the QorIQ LS1012A
1436          Layerscape Architecture processor.
1437
1438 config TARGET_LS1012AFRDM
1439         bool "Support ls1012afrdm"
1440         select ARCH_LS1012A
1441         select ARM64
1442         select ARCH_SUPPORT_TFABOOT
1443         select GPIO_EXTRA_HEADER
1444         help
1445           Support for Freescale LS1012AFRDM platform.
1446           The LS1012A Freedom  board (FRDM) is a high-performance
1447           development platform that supports the QorIQ LS1012A
1448           Layerscape Architecture processor.
1449
1450 config TARGET_LS1028AQDS
1451         bool "Support ls1028aqds"
1452         select ARCH_LS1028A
1453         select ARM64
1454         select ARMV8_MULTIENTRY
1455         select ARCH_SUPPORT_TFABOOT
1456         select BOARD_LATE_INIT
1457         select GPIO_EXTRA_HEADER
1458         help
1459           Support for Freescale LS1028AQDS platform
1460           The LS1028A Development System (QDS) is a high-performance
1461           development platform that supports the QorIQ LS1028A
1462           Layerscape Architecture processor.
1463
1464 config TARGET_LS1028ARDB
1465         bool "Support ls1028ardb"
1466         select ARCH_LS1028A
1467         select ARM64
1468         select ARMV8_MULTIENTRY
1469         select ARCH_SUPPORT_TFABOOT
1470         select BOARD_LATE_INIT
1471         select GPIO_EXTRA_HEADER
1472         help
1473           Support for Freescale LS1028ARDB platform
1474           The LS1028A Development System (RDB) is a high-performance
1475           development platform that supports the QorIQ LS1028A
1476           Layerscape Architecture processor.
1477
1478 config TARGET_LS1088ARDB
1479         bool "Support ls1088ardb"
1480         select ARCH_LS1088A
1481         select ARM64
1482         select ARMV8_MULTIENTRY
1483         select ARCH_SUPPORT_TFABOOT
1484         select BOARD_LATE_INIT
1485         select SUPPORT_SPL
1486         select FSL_DDR_INTERACTIVE if !SD_BOOT
1487         select GPIO_EXTRA_HEADER
1488         help
1489           Support for NXP LS1088ARDB platform.
1490           The LS1088A Reference design board (RDB) is a high-performance
1491           development platform that supports the QorIQ LS1088A
1492           Layerscape Architecture processor.
1493
1494 config TARGET_LS1021AQDS
1495         bool "Support ls1021aqds"
1496         select ARCH_LS1021A
1497         select ARCH_SUPPORT_PSCI
1498         select BOARD_EARLY_INIT_F
1499         select BOARD_LATE_INIT
1500         select CPU_V7A
1501         select CPU_V7_HAS_NONSEC
1502         select CPU_V7_HAS_VIRT
1503         select LS1_DEEP_SLEEP
1504         select SUPPORT_SPL
1505         select SYS_FSL_DDR
1506         select FSL_DDR_INTERACTIVE
1507         select DM_SPI_FLASH if FSL_DSPI || FSL_QSPI
1508         select GPIO_EXTRA_HEADER
1509         select SPI_FLASH_DATAFLASH if FSL_DSPI || FSL_QSPI
1510         imply SCSI
1511
1512 config TARGET_LS1021ATWR
1513         bool "Support ls1021atwr"
1514         select ARCH_LS1021A
1515         select ARCH_SUPPORT_PSCI
1516         select BOARD_EARLY_INIT_F
1517         select BOARD_LATE_INIT
1518         select CPU_V7A
1519         select CPU_V7_HAS_NONSEC
1520         select CPU_V7_HAS_VIRT
1521         select LS1_DEEP_SLEEP
1522         select SUPPORT_SPL
1523         select DM_SPI_FLASH if FSL_DSPI || FSL_QSPI
1524         select GPIO_EXTRA_HEADER
1525         imply SCSI
1526
1527 config TARGET_PG_WCOM_SELI8
1528         bool "Support Hitachi-Powergrids SELI8 service unit card"
1529         select ARCH_LS1021A
1530         select ARCH_SUPPORT_PSCI
1531         select BOARD_EARLY_INIT_F
1532         select BOARD_LATE_INIT
1533         select CPU_V7A
1534         select CPU_V7_HAS_NONSEC
1535         select CPU_V7_HAS_VIRT
1536         select SYS_FSL_DDR
1537         select FSL_DDR_INTERACTIVE
1538         select GPIO_EXTRA_HEADER
1539         select VENDOR_KM
1540         imply SCSI
1541         help
1542          Support for Hitachi-Powergrids SELI8 service unit card.
1543          SELI8 is a QorIQ LS1021a based service unit card used
1544          in XMC20 and FOX615 product families.
1545
1546 config TARGET_PG_WCOM_EXPU1
1547         bool "Support Hitachi-Powergrids EXPU1 service unit card"
1548         select ARCH_LS1021A
1549         select ARCH_SUPPORT_PSCI
1550         select BOARD_EARLY_INIT_F
1551         select BOARD_LATE_INIT
1552         select CPU_V7A
1553         select CPU_V7_HAS_NONSEC
1554         select CPU_V7_HAS_VIRT
1555         select SYS_FSL_DDR
1556         select FSL_DDR_INTERACTIVE
1557         select VENDOR_KM
1558         imply SCSI
1559         help
1560          Support for Hitachi-Powergrids EXPU1 service unit card.
1561          EXPU1 is a QorIQ LS1021a based service unit card used
1562          in XMC20 and FOX615 product families.
1563
1564 config TARGET_LS1021ATSN
1565         bool "Support ls1021atsn"
1566         select ARCH_LS1021A
1567         select ARCH_SUPPORT_PSCI
1568         select BOARD_EARLY_INIT_F
1569         select BOARD_LATE_INIT
1570         select CPU_V7A
1571         select CPU_V7_HAS_NONSEC
1572         select CPU_V7_HAS_VIRT
1573         select LS1_DEEP_SLEEP
1574         select SUPPORT_SPL
1575         select GPIO_EXTRA_HEADER
1576         imply SCSI
1577
1578 config TARGET_LS1021AIOT
1579         bool "Support ls1021aiot"
1580         select ARCH_LS1021A
1581         select ARCH_SUPPORT_PSCI
1582         select BOARD_LATE_INIT
1583         select CPU_V7A
1584         select CPU_V7_HAS_NONSEC
1585         select CPU_V7_HAS_VIRT
1586         select SUPPORT_SPL
1587         select DM_SPI_FLASH if FSL_DSPI || FSL_QSPI
1588         select GPIO_EXTRA_HEADER
1589         imply SCSI
1590         help
1591           Support for Freescale LS1021AIOT platform.
1592           The LS1021A Freescale board (IOT) is a high-performance
1593           development platform that supports the QorIQ LS1021A
1594           Layerscape Architecture processor.
1595
1596 config TARGET_LS1043AQDS
1597         bool "Support ls1043aqds"
1598         select ARCH_LS1043A
1599         select ARM64
1600         select ARMV8_MULTIENTRY
1601         select ARCH_SUPPORT_TFABOOT
1602         select BOARD_EARLY_INIT_F
1603         select BOARD_LATE_INIT
1604         select SUPPORT_SPL
1605         select FSL_DDR_INTERACTIVE if !SPL
1606         select FSL_DSPI if !SPL_NO_DSPI
1607         select DM_SPI_FLASH if FSL_DSPI
1608         select GPIO_EXTRA_HEADER
1609         imply SCSI
1610         imply SCSI_AHCI
1611         help
1612           Support for Freescale LS1043AQDS platform.
1613
1614 config TARGET_LS1043ARDB
1615         bool "Support ls1043ardb"
1616         select ARCH_LS1043A
1617         select ARM64
1618         select ARMV8_MULTIENTRY
1619         select ARCH_SUPPORT_TFABOOT
1620         select BOARD_EARLY_INIT_F
1621         select BOARD_LATE_INIT
1622         select SUPPORT_SPL
1623         select FSL_DSPI if !SPL_NO_DSPI
1624         select DM_SPI_FLASH if FSL_DSPI
1625         select GPIO_EXTRA_HEADER
1626         help
1627           Support for Freescale LS1043ARDB platform.
1628
1629 config TARGET_LS1046AQDS
1630         bool "Support ls1046aqds"
1631         select ARCH_LS1046A
1632         select ARM64
1633         select ARMV8_MULTIENTRY
1634         select ARCH_SUPPORT_TFABOOT
1635         select BOARD_EARLY_INIT_F
1636         select BOARD_LATE_INIT
1637         select DM_SPI_FLASH if DM_SPI
1638         select SUPPORT_SPL
1639         select FSL_DDR_BIST if !SPL
1640         select FSL_DDR_INTERACTIVE  if !SPL
1641         select FSL_DDR_INTERACTIVE if !SPL
1642         select GPIO_EXTRA_HEADER
1643         imply SCSI
1644         help
1645           Support for Freescale LS1046AQDS platform.
1646           The LS1046A Development System (QDS) is a high-performance
1647           development platform that supports the QorIQ LS1046A
1648           Layerscape Architecture processor.
1649
1650 config TARGET_LS1046ARDB
1651         bool "Support ls1046ardb"
1652         select ARCH_LS1046A
1653         select ARM64
1654         select ARMV8_MULTIENTRY
1655         select ARCH_SUPPORT_TFABOOT
1656         select BOARD_EARLY_INIT_F
1657         select BOARD_LATE_INIT
1658         select DM_SPI_FLASH if DM_SPI
1659         select POWER_MC34VR500
1660         select SUPPORT_SPL
1661         select FSL_DDR_BIST
1662         select FSL_DDR_INTERACTIVE if !SPL
1663         select GPIO_EXTRA_HEADER
1664         imply SCSI
1665         help
1666           Support for Freescale LS1046ARDB platform.
1667           The LS1046A Reference Design Board (RDB) is a high-performance
1668           development platform that supports the QorIQ LS1046A
1669           Layerscape Architecture processor.
1670
1671 config TARGET_LS1046AFRWY
1672         bool "Support ls1046afrwy"
1673         select ARCH_LS1046A
1674         select ARM64
1675         select ARMV8_MULTIENTRY
1676         select ARCH_SUPPORT_TFABOOT
1677         select BOARD_EARLY_INIT_F
1678         select BOARD_LATE_INIT
1679         select DM_SPI_FLASH if DM_SPI
1680         select GPIO_EXTRA_HEADER
1681         imply SCSI
1682         help
1683           Support for Freescale LS1046AFRWY platform.
1684           The LS1046A Freeway Board (FRWY) is a high-performance
1685           development platform that supports the QorIQ LS1046A
1686           Layerscape Architecture processor.
1687
1688 config TARGET_SL28
1689         bool "Support sl28"
1690         select ARCH_LS1028A
1691         select ARM64
1692         select ARMV8_MULTIENTRY
1693         select SUPPORT_SPL
1694         select BINMAN
1695         select DM
1696         select DM_GPIO
1697         select DM_I2C
1698         select DM_MMC
1699         select DM_SPI_FLASH
1700         select DM_ETH
1701         select DM_MDIO
1702         select DM_PCI
1703         select DM_RNG
1704         select DM_RTC
1705         select DM_SCSI
1706         select DM_SERIAL
1707         select DM_SPI
1708         select DM_USB
1709         select GPIO_EXTRA_HEADER
1710         select SPL_DM if SPL
1711         select SPL_DM_SPI if SPL
1712         select SPL_DM_SPI_FLASH if SPL
1713         select SPL_DM_I2C if SPL
1714         select SPL_DM_MMC if SPL
1715         select SPL_DM_SERIAL if SPL
1716         help
1717           Support for Kontron SMARC-sAL28 board.
1718
1719 config TARGET_COLIBRI_PXA270
1720         bool "Support colibri_pxa270"
1721         select CPU_PXA
1722         select GPIO_EXTRA_HEADER
1723
1724 config ARCH_UNIPHIER
1725         bool "Socionext UniPhier SoCs"
1726         select BOARD_LATE_INIT
1727         select DM
1728         select DM_ETH
1729         select DM_GPIO
1730         select DM_I2C
1731         select DM_MMC
1732         select DM_MTD
1733         select DM_RESET
1734         select DM_SERIAL
1735         select DM_USB
1736         select OF_BOARD_SETUP
1737         select OF_CONTROL
1738         select OF_LIBFDT
1739         select PINCTRL
1740         select SPL_BOARD_INIT if SPL
1741         select SPL_DM if SPL
1742         select SPL_LIBCOMMON_SUPPORT if SPL
1743         select SPL_LIBGENERIC_SUPPORT if SPL
1744         select SPL_OF_CONTROL if SPL
1745         select SPL_PINCTRL if SPL
1746         select SUPPORT_SPL
1747         imply CMD_DM
1748         imply DISTRO_DEFAULTS
1749         imply FAT_WRITE
1750         help
1751           Support for UniPhier SoC family developed by Socionext Inc.
1752           (formerly, System LSI Business Division of Panasonic Corporation)
1753
1754 config ARCH_SYNQUACER
1755         bool "Socionext SynQuacer SoCs"
1756         select ARM64
1757         select DM
1758         select GIC_V3
1759         select PSCI_RESET
1760         select SYSRESET
1761         select SYSRESET_PSCI
1762         select OF_CONTROL
1763         help
1764           Support for SynQuacer SoC family developed by Socionext Inc.
1765           This SoC is used on 96boards EE DeveloperBox.
1766
1767 config ARCH_STM32
1768         bool "Support STMicroelectronics STM32 MCU with cortex M"
1769         select CPU_V7M
1770         select DM
1771         select DM_SERIAL
1772         select GPIO_EXTRA_HEADER
1773         imply CMD_DM
1774
1775 config ARCH_STI
1776         bool "Support STMicrolectronics SoCs"
1777         select BLK
1778         select CPU_V7A
1779         select DM
1780         select DM_MMC
1781         select DM_RESET
1782         select DM_SERIAL
1783         imply CMD_DM
1784         help
1785           Support for STMicroelectronics STiH407/10 SoC family.
1786           This SoC is used on Linaro 96Board STiH410-B2260
1787
1788 config ARCH_STM32MP
1789         bool "Support STMicroelectronics STM32MP Socs with cortex A"
1790         select ARCH_MISC_INIT
1791         select ARCH_SUPPORT_TFABOOT
1792         select BOARD_LATE_INIT
1793         select CLK
1794         select DM
1795         select DM_GPIO
1796         select DM_RESET
1797         select DM_SERIAL
1798         select GPIO_EXTRA_HEADER
1799         select MISC
1800         select OF_CONTROL
1801         select OF_LIBFDT
1802         select OF_SYSTEM_SETUP
1803         select PINCTRL
1804         select REGMAP
1805         select SUPPORT_SPL
1806         select SYSCON
1807         select SYSRESET
1808         select SYS_THUMB_BUILD
1809         imply SPL_SYSRESET
1810         imply CMD_DM
1811         imply CMD_POWEROFF
1812         imply OF_LIBFDT_OVERLAY
1813         imply ENV_VARS_UBOOT_RUNTIME_CONFIG
1814         imply USE_PREBOOT
1815         help
1816           Support for STM32MP SoC family developed by STMicroelectronics,
1817           MPUs based on ARM cortex A core
1818           U-BOOT is running in DDR, loaded by the First Stage BootLoader (FSBL).
1819           FSBL can be TF-A: Trusted Firmware for Cortex A, for trusted boot
1820           chain.
1821           SPL is the unsecure FSBL for the basic boot chain.
1822
1823 config ARCH_ROCKCHIP
1824         bool "Support Rockchip SoCs"
1825         select BLK
1826         select BINMAN if SPL_OPTEE
1827         select DM
1828         select DM_GPIO
1829         select DM_I2C
1830         select DM_MMC
1831         select DM_PWM
1832         select DM_REGULATOR
1833         select DM_SERIAL
1834         select DM_SPI
1835         select DM_SPI_FLASH
1836         select DM_USB if USB
1837         select ENABLE_ARM_SOC_BOOT0_HOOK
1838         select OF_CONTROL
1839         select SPI
1840         select SPL_DM if SPL
1841         select SPL_DM_SPI if SPL
1842         select SPL_DM_SPI_FLASH if SPL
1843         select SYS_MALLOC_F
1844         select SYS_THUMB_BUILD if !ARM64
1845         imply ADC
1846         imply CMD_DM
1847         imply DEBUG_UART_BOARD_INIT
1848         imply DISTRO_DEFAULTS
1849         imply FAT_WRITE
1850         imply SARADC_ROCKCHIP
1851         imply SPL_SYSRESET
1852         imply SPL_SYS_MALLOC_SIMPLE
1853         imply SYS_NS16550
1854         imply TPL_SYSRESET
1855         imply USB_FUNCTION_FASTBOOT
1856
1857 config ARCH_OCTEONTX
1858         bool "Support OcteonTX SoCs"
1859         select CLK
1860         select DM
1861         select GPIO_EXTRA_HEADER
1862         select ARM64
1863         select OF_CONTROL
1864         select OF_LIVE
1865         select BOARD_LATE_INIT
1866         select SYS_CACHE_SHIFT_7
1867
1868 config ARCH_OCTEONTX2
1869         bool "Support OcteonTX2 SoCs"
1870         select CLK
1871         select DM
1872         select GPIO_EXTRA_HEADER
1873         select ARM64
1874         select OF_CONTROL
1875         select OF_LIVE
1876         select BOARD_LATE_INIT
1877         select SYS_CACHE_SHIFT_7
1878
1879 config TARGET_THUNDERX_88XX
1880         bool "Support ThunderX 88xx"
1881         select ARM64
1882         select GPIO_EXTRA_HEADER
1883         select OF_CONTROL
1884         select PL01X_SERIAL
1885         select SYS_CACHE_SHIFT_7
1886
1887 config ARCH_ASPEED
1888         bool "Support Aspeed SoCs"
1889         select DM
1890         select OF_CONTROL
1891         imply CMD_DM
1892
1893 config TARGET_DURIAN
1894         bool "Support Phytium Durian Platform"
1895         select ARM64
1896         select GPIO_EXTRA_HEADER
1897         help
1898           Support for durian platform.
1899           It has 2GB Sdram, uart and pcie.
1900
1901 config TARGET_PRESIDIO_ASIC
1902         bool "Support Cortina Presidio ASIC Platform"
1903         select ARM64
1904
1905 config TARGET_XENGUEST_ARM64
1906         bool "Xen guest ARM64"
1907         select ARM64
1908         select XEN
1909         select OF_CONTROL
1910         select LINUX_KERNEL_IMAGE_HEADER
1911         select XEN_SERIAL
1912         select SSCANF
1913 endchoice
1914
1915 config ARCH_SUPPORT_TFABOOT
1916         bool
1917
1918 config TFABOOT
1919         bool "Support for booting from TF-A"
1920         depends on ARCH_SUPPORT_TFABOOT
1921         default n
1922         help
1923           Some platforms support the setup of secure registers (for instance
1924           for CPU errata handling) or provide secure services like PSCI.
1925           Those services could also be provided by other firmware parts
1926           like TF-A (Trusted Firmware for Cortex-A), in which case U-Boot
1927           does not need to (and cannot) execute this code.
1928           Enabling this option will make a U-Boot binary that is relying
1929           on other firmware layers to provide secure functionality.
1930
1931 config TI_SECURE_DEVICE
1932         bool "HS Device Type Support"
1933         depends on ARCH_KEYSTONE || ARCH_OMAP2PLUS || ARCH_K3
1934         help
1935           If a high secure (HS) device type is being used, this config
1936           must be set. This option impacts various aspects of the
1937           build system (to create signed boot images that can be
1938           authenticated) and the code. See the doc/README.ti-secure
1939           file for further details.
1940
1941 if AM43XX || AM33XX || OMAP54XX || ARCH_KEYSTONE
1942 config ISW_ENTRY_ADDR
1943         hex "Address in memory or XIP address of bootloader entry point"
1944         default 0x402F4000 if AM43XX
1945         default 0x402F0400 if AM33XX
1946         default 0x40301350 if OMAP54XX
1947         help
1948           After any reset, the boot ROM searches the boot media for a valid
1949           boot image. For non-XIP devices, the ROM then copies the image into
1950           internal memory. For all boot modes, after the ROM processes the
1951           boot image it eventually computes the entry point address depending
1952           on the device type (secure/non-secure), boot media (xip/non-xip) and
1953           image headers.
1954 endif
1955
1956 source "arch/arm/mach-aspeed/Kconfig"
1957
1958 source "arch/arm/mach-at91/Kconfig"
1959
1960 source "arch/arm/mach-bcm283x/Kconfig"
1961
1962 source "arch/arm/mach-bcmstb/Kconfig"
1963
1964 source "arch/arm/mach-davinci/Kconfig"
1965
1966 source "arch/arm/mach-exynos/Kconfig"
1967
1968 source "arch/arm/mach-highbank/Kconfig"
1969
1970 source "arch/arm/mach-integrator/Kconfig"
1971
1972 source "arch/arm/mach-ipq40xx/Kconfig"
1973
1974 source "arch/arm/mach-k3/Kconfig"
1975
1976 source "arch/arm/mach-keystone/Kconfig"
1977
1978 source "arch/arm/mach-kirkwood/Kconfig"
1979
1980 source "arch/arm/mach-lpc32xx/Kconfig"
1981
1982 source "arch/arm/mach-mvebu/Kconfig"
1983
1984 source "arch/arm/mach-octeontx/Kconfig"
1985
1986 source "arch/arm/mach-octeontx2/Kconfig"
1987
1988 source "arch/arm/cpu/armv7/ls102xa/Kconfig"
1989
1990 source "arch/arm/mach-imx/mx2/Kconfig"
1991
1992 source "arch/arm/mach-imx/mx3/Kconfig"
1993
1994 source "arch/arm/mach-imx/mx5/Kconfig"
1995
1996 source "arch/arm/mach-imx/mx6/Kconfig"
1997
1998 source "arch/arm/mach-imx/mx7/Kconfig"
1999
2000 source "arch/arm/mach-imx/mx7ulp/Kconfig"
2001
2002 source "arch/arm/mach-imx/imx8/Kconfig"
2003
2004 source "arch/arm/mach-imx/imx8m/Kconfig"
2005
2006 source "arch/arm/mach-imx/imxrt/Kconfig"
2007
2008 source "arch/arm/mach-imx/mxs/Kconfig"
2009
2010 source "arch/arm/mach-omap2/Kconfig"
2011
2012 source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
2013
2014 source "arch/arm/mach-orion5x/Kconfig"
2015
2016 source "arch/arm/mach-owl/Kconfig"
2017
2018 source "arch/arm/mach-rmobile/Kconfig"
2019
2020 source "arch/arm/mach-meson/Kconfig"
2021
2022 source "arch/arm/mach-mediatek/Kconfig"
2023
2024 source "arch/arm/mach-qemu/Kconfig"
2025
2026 source "arch/arm/mach-rockchip/Kconfig"
2027
2028 source "arch/arm/mach-s5pc1xx/Kconfig"
2029
2030 source "arch/arm/mach-snapdragon/Kconfig"
2031
2032 source "arch/arm/mach-socfpga/Kconfig"
2033
2034 source "arch/arm/mach-sti/Kconfig"
2035
2036 source "arch/arm/mach-stm32/Kconfig"
2037
2038 source "arch/arm/mach-stm32mp/Kconfig"
2039
2040 source "arch/arm/mach-sunxi/Kconfig"
2041
2042 source "arch/arm/mach-tegra/Kconfig"
2043
2044 source "arch/arm/mach-u8500/Kconfig"
2045
2046 source "arch/arm/mach-uniphier/Kconfig"
2047
2048 source "arch/arm/cpu/armv7/vf610/Kconfig"
2049
2050 source "arch/arm/mach-zynq/Kconfig"
2051
2052 source "arch/arm/mach-zynqmp/Kconfig"
2053
2054 source "arch/arm/mach-versal/Kconfig"
2055
2056 source "arch/arm/mach-zynqmp-r5/Kconfig"
2057
2058 source "arch/arm/cpu/armv7/Kconfig"
2059
2060 source "arch/arm/cpu/armv8/Kconfig"
2061
2062 source "arch/arm/mach-imx/Kconfig"
2063
2064 source "arch/arm/mach-nexell/Kconfig"
2065
2066 source "board/armltd/total_compute/Kconfig"
2067
2068 source "board/bosch/shc/Kconfig"
2069 source "board/bosch/guardian/Kconfig"
2070 source "board/CarMediaLab/flea3/Kconfig"
2071 source "board/Marvell/aspenite/Kconfig"
2072 source "board/Marvell/octeontx/Kconfig"
2073 source "board/Marvell/octeontx2/Kconfig"
2074 source "board/armltd/vexpress64/Kconfig"
2075 source "board/cortina/presidio-asic/Kconfig"
2076 source "board/broadcom/bcm963158/Kconfig"
2077 source "board/broadcom/bcm968360bg/Kconfig"
2078 source "board/broadcom/bcm968580xref/Kconfig"
2079 source "board/broadcom/bcmns3/Kconfig"
2080 source "board/cavium/thunderx/Kconfig"
2081 source "board/eets/pdu001/Kconfig"
2082 source "board/emulation/qemu-arm/Kconfig"
2083 source "board/freescale/ls2080aqds/Kconfig"
2084 source "board/freescale/ls2080ardb/Kconfig"
2085 source "board/freescale/ls1088a/Kconfig"
2086 source "board/freescale/ls1028a/Kconfig"
2087 source "board/freescale/ls1021aqds/Kconfig"
2088 source "board/freescale/ls1043aqds/Kconfig"
2089 source "board/freescale/ls1021atwr/Kconfig"
2090 source "board/freescale/ls1021atsn/Kconfig"
2091 source "board/freescale/ls1021aiot/Kconfig"
2092 source "board/freescale/ls1046aqds/Kconfig"
2093 source "board/freescale/ls1043ardb/Kconfig"
2094 source "board/freescale/ls1046ardb/Kconfig"
2095 source "board/freescale/ls1046afrwy/Kconfig"
2096 source "board/freescale/ls1012aqds/Kconfig"
2097 source "board/freescale/ls1012ardb/Kconfig"
2098 source "board/freescale/ls1012afrdm/Kconfig"
2099 source "board/freescale/lx2160a/Kconfig"
2100 source "board/grinn/chiliboard/Kconfig"
2101 source "board/hisilicon/hikey/Kconfig"
2102 source "board/hisilicon/hikey960/Kconfig"
2103 source "board/hisilicon/poplar/Kconfig"
2104 source "board/isee/igep003x/Kconfig"
2105 source "board/kontron/sl28/Kconfig"
2106 source "board/myir/mys_6ulx/Kconfig"
2107 source "board/seeed/npi_imx6ull/Kconfig"
2108 source "board/socionext/developerbox/Kconfig"
2109 source "board/spear/spear320/Kconfig"
2110 source "board/spear/spear600/Kconfig"
2111 source "board/spear/x600/Kconfig"
2112 source "board/st/stv0991/Kconfig"
2113 source "board/tcl/sl50/Kconfig"
2114 source "board/toradex/colibri_pxa270/Kconfig"
2115 source "board/variscite/dart_6ul/Kconfig"
2116 source "board/vscom/baltos/Kconfig"
2117 source "board/phytium/durian/Kconfig"
2118 source "board/xen/xenguest_arm64/Kconfig"
2119 source "board/keymile/Kconfig"
2120
2121 source "arch/arm/Kconfig.debug"
2122
2123 endmenu
2124
2125 config SPL_LDSCRIPT
2126         default "arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" if (ARCH_MX23 || ARCH_MX28) && !SPL_FRAMEWORK
2127         default "arch/arm/cpu/arm1136/u-boot-spl.lds" if CPU_ARM1136
2128         default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64