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