imx: Introduce CONFIG_MACH_IMX
[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 MACH_IMX
798         select OF_CONTROL
799         select ENABLE_ARM_SOC_BOOT0_HOOK
800
801 config ARCH_IMX8M
802         bool "NXP i.MX8M platform"
803         select ARM64
804         select GPIO_EXTRA_HEADER
805         select MACH_IMX
806         select SYS_FSL_HAS_SEC if IMX_HAB
807         select SYS_FSL_SEC_COMPAT_4
808         select SYS_FSL_SEC_LE
809         select SYS_I2C_MXC
810         select DM
811         select SUPPORT_SPL
812         imply CMD_DM
813
814 config ARCH_IMX8ULP
815         bool "NXP i.MX8ULP platform"
816         select ARM64
817         select DM
818         select MACH_IMX
819         select OF_CONTROL
820         select SUPPORT_SPL
821         select GPIO_EXTRA_HEADER
822         imply CMD_DM
823
824 config ARCH_IMXRT
825         bool "NXP i.MXRT platform"
826         select CPU_V7M
827         select DM
828         select DM_SERIAL
829         select GPIO_EXTRA_HEADER
830         select MACH_IMX
831         select SUPPORT_SPL
832         imply CMD_DM
833
834 config ARCH_MX23
835         bool "NXP i.MX23 family"
836         select CPU_ARM926EJS
837         select GPIO_EXTRA_HEADER
838         select MACH_IMX
839         select PL011_SERIAL
840         select SUPPORT_SPL
841
842 config ARCH_MX25
843         bool "NXP MX25"
844         select CPU_ARM926EJS
845         select GPIO_EXTRA_HEADER
846         select MACH_IMX
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 MACH_IMX
855         select SUPPORT_SPL
856
857 config ARCH_MX31
858         bool "NXP i.MX31 family"
859         select CPU_ARM1136
860         select GPIO_EXTRA_HEADER
861         select MACH_IMX
862
863 config ARCH_MX7ULP
864         bool "NXP MX7ULP"
865         select CPU_V7A
866         select GPIO_EXTRA_HEADER
867         select MACH_IMX
868         select SYS_FSL_HAS_SEC if IMX_HAB
869         select SYS_FSL_SEC_COMPAT_4
870         select SYS_FSL_SEC_LE
871         select ROM_UNIFIED_SECTIONS
872         imply MXC_GPIO
873         imply SYS_THUMB_BUILD
874
875 config ARCH_MX7
876         bool "Freescale MX7"
877         select ARCH_MISC_INIT
878         select CPU_V7A
879         select GPIO_EXTRA_HEADER
880         select MACH_IMX
881         select SYS_FSL_HAS_SEC if IMX_HAB
882         select SYS_FSL_SEC_COMPAT_4
883         select SYS_FSL_SEC_LE
884         imply BOARD_EARLY_INIT_F
885         imply MXC_GPIO
886         imply SYS_THUMB_BUILD
887
888 config ARCH_MX6
889         bool "Freescale MX6"
890         select CPU_V7A
891         select GPIO_EXTRA_HEADER
892         select MACH_IMX
893         select SYS_FSL_HAS_SEC
894         select SYS_FSL_SEC_COMPAT_4
895         select SYS_FSL_SEC_LE
896         imply MXC_GPIO
897         imply SYS_THUMB_BUILD
898
899 if ARCH_MX6
900 config SPL_LDSCRIPT
901         default "arch/arm/mach-omap2/u-boot-spl.lds"
902 endif
903
904 config ARCH_MX5
905         bool "Freescale MX5"
906         select BOARD_EARLY_INIT_F
907         select CPU_V7A
908         select GPIO_EXTRA_HEADER
909         select MACH_IMX
910         imply MXC_GPIO
911
912 config ARCH_NEXELL
913         bool "Nexell S5P4418/S5P6818 SoC"
914         select ENABLE_ARM_SOC_BOOT0_HOOK
915         select DM
916         select GPIO_EXTRA_HEADER
917
918 config ARCH_OWL
919         bool "Actions Semi OWL SoCs"
920         select DM
921         select DM_ETH
922         select DM_SERIAL
923         select GPIO_EXTRA_HEADER
924         select OWL_SERIAL
925         select CLK
926         select CLK_OWL
927         select OF_CONTROL
928         select SYS_RELOC_GD_ENV_ADDR
929         imply CMD_DM
930
931 config ARCH_QEMU
932         bool "QEMU Virtual Platform"
933         select DM
934         select DM_SERIAL
935         select OF_CONTROL
936         select PL01X_SERIAL
937         imply CMD_DM
938         imply DM_RNG
939         imply DM_RTC
940         imply RTC_PL031
941
942 config ARCH_RMOBILE
943         bool "Renesas ARM SoCs"
944         select DM
945         select DM_SERIAL
946         select GPIO_EXTRA_HEADER
947         imply BOARD_EARLY_INIT_F
948         imply CMD_DM
949         imply FAT_WRITE
950         imply SYS_THUMB_BUILD
951         imply ARCH_MISC_INIT if DISPLAY_CPUINFO
952
953 config ARCH_SNAPDRAGON
954         bool "Qualcomm Snapdragon SoCs"
955         select ARM64
956         select DM
957         select DM_GPIO
958         select DM_SERIAL
959         select GPIO_EXTRA_HEADER
960         select MSM_SMEM
961         select OF_CONTROL
962         select OF_SEPARATE
963         select SMEM
964         select SPMI
965         imply CMD_DM
966
967 config ARCH_SOCFPGA
968         bool "Altera SOCFPGA family"
969         select ARCH_EARLY_INIT_R
970         select ARCH_MISC_INIT if !TARGET_SOCFPGA_ARRIA10
971         select ARM64 if TARGET_SOCFPGA_SOC64
972         select CPU_V7A if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
973         select DM
974         select DM_SERIAL
975         select GICV2
976         select GPIO_EXTRA_HEADER
977         select ENABLE_ARM_SOC_BOOT0_HOOK if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
978         select OF_CONTROL
979         select SPL_DM_RESET if DM_RESET
980         select SPL_DM_SERIAL
981         select SPL_LIBCOMMON_SUPPORT
982         select SPL_LIBGENERIC_SUPPORT
983         select SPL_NAND_SUPPORT if SPL_NAND_DENALI
984         select SPL_OF_CONTROL
985         select SPL_SEPARATE_BSS if TARGET_SOCFPGA_SOC64
986         select SPL_SERIAL_SUPPORT
987         select SPL_SYSRESET
988         select SPL_WATCHDOG
989         select SUPPORT_SPL
990         select SYS_NS16550
991         select SYS_THUMB_BUILD if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
992         select SYSRESET
993         select SYSRESET_SOCFPGA if TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10
994         select SYSRESET_SOCFPGA_SOC64 if TARGET_SOCFPGA_SOC64
995         imply CMD_DM
996         imply CMD_MTDPARTS
997         imply CRC32_VERIFY
998         imply DM_SPI
999         imply DM_SPI_FLASH
1000         imply FAT_WRITE
1001         imply SPL
1002         imply SPL_DM
1003         imply SPL_DM_SPI
1004         imply SPL_DM_SPI_FLASH
1005         imply SPL_LIBDISK_SUPPORT
1006         imply SPL_MMC_SUPPORT
1007         imply SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
1008         imply SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE
1009         imply SPL_SPI_FLASH_SUPPORT
1010         imply SPL_SPI_SUPPORT
1011         imply L2X0_CACHE
1012
1013 config ARCH_SUNXI
1014         bool "Support sunxi (Allwinner) SoCs"
1015         select BINMAN
1016         select CMD_GPIO
1017         select CMD_MMC if MMC
1018         select CMD_USB if DISTRO_DEFAULTS && USB_HOST
1019         select CLK
1020         select DM
1021         select DM_ETH
1022         select DM_GPIO
1023         select DM_KEYBOARD
1024         select DM_MMC if MMC
1025         select DM_SCSI if SCSI
1026         select DM_SERIAL
1027         select GPIO_EXTRA_HEADER
1028         select OF_BOARD_SETUP
1029         select OF_CONTROL
1030         select OF_SEPARATE
1031         select SPECIFY_CONSOLE_INDEX
1032         select SPL_STACK_R if SPL
1033         select SPL_SYS_MALLOC_SIMPLE if SPL
1034         select SPL_SYS_THUMB_BUILD if !ARM64
1035         select SUNXI_GPIO
1036         select SYS_NS16550
1037         select SYS_THUMB_BUILD if !ARM64
1038         select USB if DISTRO_DEFAULTS
1039         select USB_KEYBOARD if DISTRO_DEFAULTS && USB_HOST
1040         select USB_STORAGE if DISTRO_DEFAULTS && USB_HOST
1041         select SPL_USE_TINY_PRINTF
1042         select USE_PREBOOT
1043         select SYS_RELOC_GD_ENV_ADDR
1044         imply BOARD_LATE_INIT
1045         imply CMD_DM
1046         imply CMD_GPT
1047         imply CMD_UBI if MTD_RAW_NAND
1048         imply DISTRO_DEFAULTS
1049         imply FAT_WRITE
1050         imply FIT
1051         imply OF_LIBFDT_OVERLAY
1052         imply PRE_CONSOLE_BUFFER
1053         imply SPL_GPIO
1054         imply SPL_LIBCOMMON_SUPPORT
1055         imply SPL_LIBGENERIC_SUPPORT
1056         imply SPL_MMC_SUPPORT if MMC
1057         imply SPL_POWER
1058         imply SPL_SERIAL_SUPPORT
1059         imply USB_GADGET
1060
1061 config ARCH_U8500
1062         bool "ST-Ericsson U8500 Series"
1063         select CPU_V7A
1064         select DM
1065         select DM_GPIO
1066         select DM_MMC if MMC
1067         select DM_SERIAL
1068         select OF_CONTROL
1069         select SYSRESET
1070         select TIMER
1071         imply ARM_PL180_MMCI
1072         imply DM_RTC
1073         imply NOMADIK_MTU_TIMER
1074         imply PL01X_SERIAL
1075         imply RTC_PL031
1076         imply SYSRESET_SYSCON
1077
1078 config ARCH_VERSAL
1079         bool "Support Xilinx Versal Platform"
1080         select ARM64
1081         select CLK
1082         select DM
1083         select DM_ETH if NET
1084         select DM_MMC if MMC
1085         select DM_SERIAL
1086         select GICV3
1087         select GPIO_EXTRA_HEADER
1088         select OF_CONTROL
1089         select SOC_DEVICE
1090         imply BOARD_LATE_INIT
1091         imply ENV_VARS_UBOOT_RUNTIME_CONFIG
1092
1093 config ARCH_VF610
1094         bool "Freescale Vybrid"
1095         select CPU_V7A
1096         select GPIO_EXTRA_HEADER
1097         select MACH_IMX
1098         select SYS_FSL_ERRATUM_ESDHC111
1099         imply CMD_MTDPARTS
1100         imply MTD_RAW_NAND
1101
1102 config ARCH_ZYNQ
1103         bool "Xilinx Zynq based platform"
1104         select CLK
1105         select CLK_ZYNQ
1106         select CPU_V7A
1107         select DM
1108         select DM_ETH if NET
1109         select DM_MMC if MMC
1110         select DM_SERIAL
1111         select DM_SPI
1112         select DM_SPI_FLASH
1113         select GPIO_EXTRA_HEADER
1114         select OF_CONTROL
1115         select SPI
1116         select SPL_BOARD_INIT if SPL
1117         select SPL_CLK if SPL
1118         select SPL_DM if SPL
1119         select SPL_DM_SPI if SPL
1120         select SPL_DM_SPI_FLASH if SPL
1121         select SPL_OF_CONTROL if SPL
1122         select SPL_SEPARATE_BSS if SPL
1123         select SUPPORT_SPL
1124         imply ARCH_EARLY_INIT_R
1125         imply BOARD_LATE_INIT
1126         imply CMD_CLK
1127         imply CMD_DM
1128         imply CMD_SPL
1129         imply ENV_VARS_UBOOT_RUNTIME_CONFIG
1130         imply FAT_WRITE
1131
1132 config ARCH_ZYNQMP_R5
1133         bool "Xilinx ZynqMP R5 based platform"
1134         select CLK
1135         select CPU_V7R
1136         select DM
1137         select DM_ETH if NET
1138         select DM_MMC if MMC
1139         select DM_SERIAL
1140         select GPIO_EXTRA_HEADER
1141         select OF_CONTROL
1142         imply CMD_DM
1143         imply DM_USB_GADGET
1144
1145 config ARCH_ZYNQMP
1146         bool "Xilinx ZynqMP based platform"
1147         select ARM64
1148         select CLK
1149         select DM
1150         select DM_ETH if NET
1151         select DM_MAILBOX
1152         select DM_MMC if MMC
1153         select DM_SERIAL
1154         select DM_SPI if SPI
1155         select DM_SPI_FLASH if DM_SPI
1156         select FIRMWARE
1157         select GICV2
1158         select GPIO_EXTRA_HEADER
1159         select OF_CONTROL
1160         select SPL_BOARD_INIT if SPL
1161         select SPL_CLK if SPL
1162         select SPL_DM if SPL
1163         select SPL_DM_SPI if SPI && SPL_DM
1164         select SPL_DM_SPI_FLASH if SPL_DM_SPI
1165         select SPL_DM_MAILBOX if SPL
1166         select SPL_FIRMWARE if SPL
1167         select SPL_SEPARATE_BSS if SPL
1168         select SUPPORT_SPL
1169         select ZYNQMP_IPI
1170         select SOC_DEVICE
1171         imply BOARD_LATE_INIT
1172         imply CMD_DM
1173         imply ENV_VARS_UBOOT_RUNTIME_CONFIG
1174         imply FAT_WRITE
1175         imply MP
1176         imply DM_USB_GADGET
1177
1178 config ARCH_TEGRA
1179         bool "NVIDIA Tegra"
1180         select GPIO_EXTRA_HEADER
1181         imply DISTRO_DEFAULTS
1182         imply FAT_WRITE
1183
1184 config TARGET_VEXPRESS64_AEMV8A
1185         bool "Support vexpress_aemv8a"
1186         select ARM64
1187         select GPIO_EXTRA_HEADER
1188         select PL01X_SERIAL
1189
1190 config TARGET_VEXPRESS64_BASE_FVP
1191         bool "Support Versatile Express ARMv8a FVP BASE model"
1192         select ARM64
1193         select GPIO_EXTRA_HEADER
1194         select PL01X_SERIAL
1195         select SEMIHOSTING
1196
1197 config TARGET_VEXPRESS64_JUNO
1198         bool "Support Versatile Express Juno Development Platform"
1199         select ARM64
1200         select GPIO_EXTRA_HEADER
1201         select PL01X_SERIAL
1202         select DM
1203         select OF_CONTROL
1204         select OF_BOARD
1205         select CLK
1206         select DM_SERIAL
1207         select ARM_PSCI_FW
1208         select PSCI_RESET
1209         select DM_ETH
1210         select BLK
1211         select USB
1212
1213 config TARGET_TOTAL_COMPUTE
1214         bool "Support Total Compute Platform"
1215         select ARM64
1216         select PL01X_SERIAL
1217         select DM
1218         select DM_SERIAL
1219         select DM_MMC
1220         select DM_GPIO
1221
1222 config TARGET_LS2080A_EMU
1223         bool "Support ls2080a_emu"
1224         select ARCH_LS2080A
1225         select ARM64
1226         select ARMV8_MULTIENTRY
1227         select FSL_DDR_SYNC_REFRESH
1228         select GPIO_EXTRA_HEADER
1229         help
1230           Support for Freescale LS2080A_EMU platform.
1231           The LS2080A Development System (EMULATOR) is a pre-silicon
1232           development platform that supports the QorIQ LS2080A
1233           Layerscape Architecture processor.
1234
1235 config TARGET_LS1088AQDS
1236         bool "Support ls1088aqds"
1237         select ARCH_LS1088A
1238         select ARM64
1239         select ARMV8_MULTIENTRY
1240         select ARCH_SUPPORT_TFABOOT
1241         select BOARD_LATE_INIT
1242         select GPIO_EXTRA_HEADER
1243         select SUPPORT_SPL
1244         select FSL_DDR_INTERACTIVE if !SD_BOOT
1245         help
1246           Support for NXP LS1088AQDS platform.
1247           The LS1088A Development System (QDS) is a high-performance
1248           development platform that supports the QorIQ LS1088A
1249           Layerscape Architecture processor.
1250
1251 config TARGET_LS2080AQDS
1252         bool "Support ls2080aqds"
1253         select ARCH_LS2080A
1254         select ARM64
1255         select ARMV8_MULTIENTRY
1256         select ARCH_SUPPORT_TFABOOT
1257         select BOARD_LATE_INIT
1258         select GPIO_EXTRA_HEADER
1259         select SUPPORT_SPL
1260         imply SCSI
1261         imply SCSI_AHCI
1262         select FSL_DDR_BIST
1263         select FSL_DDR_INTERACTIVE if !SPL
1264         help
1265           Support for Freescale LS2080AQDS platform.
1266           The LS2080A Development System (QDS) is a high-performance
1267           development platform that supports the QorIQ LS2080A
1268           Layerscape Architecture processor.
1269
1270 config TARGET_LS2080ARDB
1271         bool "Support ls2080ardb"
1272         select ARCH_LS2080A
1273         select ARM64
1274         select ARMV8_MULTIENTRY
1275         select ARCH_SUPPORT_TFABOOT
1276         select BOARD_LATE_INIT
1277         select SUPPORT_SPL
1278         select FSL_DDR_BIST
1279         select FSL_DDR_INTERACTIVE if !SPL
1280         select GPIO_EXTRA_HEADER
1281         imply SCSI
1282         imply SCSI_AHCI
1283         help
1284           Support for Freescale LS2080ARDB platform.
1285           The LS2080A Reference design board (RDB) is a high-performance
1286           development platform that supports the QorIQ LS2080A
1287           Layerscape Architecture processor.
1288
1289 config TARGET_LS2081ARDB
1290         bool "Support ls2081ardb"
1291         select ARCH_LS2080A
1292         select ARM64
1293         select ARMV8_MULTIENTRY
1294         select BOARD_LATE_INIT
1295         select GPIO_EXTRA_HEADER
1296         select SUPPORT_SPL
1297         help
1298           Support for Freescale LS2081ARDB platform.
1299           The LS2081A Reference design board (RDB) is a high-performance
1300           development platform that supports the QorIQ LS2081A/LS2041A
1301           Layerscape Architecture processor.
1302
1303 config TARGET_LX2160ARDB
1304         bool "Support lx2160ardb"
1305         select ARCH_LX2160A
1306         select ARM64
1307         select ARMV8_MULTIENTRY
1308         select ARCH_SUPPORT_TFABOOT
1309         select BOARD_LATE_INIT
1310         select GPIO_EXTRA_HEADER
1311         help
1312           Support for NXP LX2160ARDB platform.
1313           The lx2160ardb (LX2160A Reference design board (RDB)
1314           is a high-performance development platform that supports the
1315           QorIQ LX2160A/LX2120A/LX2080A Layerscape Architecture processor.
1316
1317 config TARGET_LX2160AQDS
1318         bool "Support lx2160aqds"
1319         select ARCH_LX2160A
1320         select ARM64
1321         select ARMV8_MULTIENTRY
1322         select ARCH_SUPPORT_TFABOOT
1323         select BOARD_LATE_INIT
1324         select GPIO_EXTRA_HEADER
1325         help
1326           Support for NXP LX2160AQDS platform.
1327           The lx2160aqds (LX2160A QorIQ Development System (QDS)
1328           is a high-performance development platform that supports the
1329           QorIQ LX2160A/LX2120A/LX2080A Layerscape Architecture processor.
1330
1331 config TARGET_LX2162AQDS
1332         bool "Support lx2162aqds"
1333         select ARCH_LX2162A
1334         select ARCH_MISC_INIT
1335         select ARM64
1336         select ARMV8_MULTIENTRY
1337         select ARCH_SUPPORT_TFABOOT
1338         select BOARD_LATE_INIT
1339         select GPIO_EXTRA_HEADER
1340         help
1341           Support for NXP LX2162AQDS platform.
1342           The lx2162aqds support is based on LX2160A Layerscape Architecture processor.
1343
1344 config TARGET_HIKEY
1345         bool "Support HiKey 96boards Consumer Edition Platform"
1346         select ARM64
1347         select DM
1348         select DM_GPIO
1349         select DM_SERIAL
1350         select GPIO_EXTRA_HEADER
1351         select OF_CONTROL
1352         select PL01X_SERIAL
1353         select SPECIFY_CONSOLE_INDEX
1354         imply CMD_DM
1355           help
1356           Support for HiKey 96boards platform. It features a HI6220
1357           SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
1358
1359 config TARGET_HIKEY960
1360         bool "Support HiKey960 96boards Consumer 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 HiKey960 96boards platform. It features a HI3660
1370           SoC, with 4xA73 CPU, 4xA53 CPU, MALI-G71 GPU, and 3GB RAM.
1371
1372 config TARGET_POPLAR
1373         bool "Support Poplar 96boards Enterprise Edition Platform"
1374         select ARM64
1375         select DM
1376         select DM_SERIAL
1377         select GPIO_EXTRA_HEADER
1378         select OF_CONTROL
1379         select PL01X_SERIAL
1380         imply CMD_DM
1381           help
1382           Support for Poplar 96boards EE platform. It features a HI3798cv200
1383           SoC, with 4xA53 CPU, 1GB RAM and the high performance Mali T720 GPU
1384           making it capable of running any commercial set-top solution based on
1385           Linux or Android.
1386
1387 config TARGET_LS1012AQDS
1388         bool "Support ls1012aqds"
1389         select ARCH_LS1012A
1390         select ARM64
1391         select ARCH_SUPPORT_TFABOOT
1392         select BOARD_LATE_INIT
1393         select GPIO_EXTRA_HEADER
1394         help
1395           Support for Freescale LS1012AQDS platform.
1396           The LS1012A Development System (QDS) is a high-performance
1397           development platform that supports the QorIQ LS1012A
1398           Layerscape Architecture processor.
1399
1400 config TARGET_LS1012ARDB
1401         bool "Support ls1012ardb"
1402         select ARCH_LS1012A
1403         select ARM64
1404         select ARCH_SUPPORT_TFABOOT
1405         select BOARD_LATE_INIT
1406         select GPIO_EXTRA_HEADER
1407         imply SCSI
1408         imply SCSI_AHCI
1409         help
1410           Support for Freescale LS1012ARDB platform.
1411           The LS1012A Reference design board (RDB) is a high-performance
1412           development platform that supports the QorIQ LS1012A
1413           Layerscape Architecture processor.
1414
1415 config TARGET_LS1012A2G5RDB
1416         bool "Support ls1012a2g5rdb"
1417         select ARCH_LS1012A
1418         select ARM64
1419         select ARCH_SUPPORT_TFABOOT
1420         select BOARD_LATE_INIT
1421         select GPIO_EXTRA_HEADER
1422         imply SCSI
1423         help
1424           Support for Freescale LS1012A2G5RDB platform.
1425           The LS1012A 2G5 Reference design board (RDB) is a high-performance
1426           development platform that supports the QorIQ LS1012A
1427           Layerscape Architecture processor.
1428
1429 config TARGET_LS1012AFRWY
1430         bool "Support ls1012afrwy"
1431         select ARCH_LS1012A
1432         select ARM64
1433         select ARCH_SUPPORT_TFABOOT
1434         select BOARD_LATE_INIT
1435         select GPIO_EXTRA_HEADER
1436         imply SCSI
1437         imply SCSI_AHCI
1438         help
1439          Support for Freescale LS1012AFRWY platform.
1440          The LS1012A FRWY board (FRWY) is a high-performance
1441          development platform that supports the QorIQ LS1012A
1442          Layerscape Architecture processor.
1443
1444 config TARGET_LS1012AFRDM
1445         bool "Support ls1012afrdm"
1446         select ARCH_LS1012A
1447         select ARM64
1448         select ARCH_SUPPORT_TFABOOT
1449         select GPIO_EXTRA_HEADER
1450         help
1451           Support for Freescale LS1012AFRDM platform.
1452           The LS1012A Freedom  board (FRDM) is a high-performance
1453           development platform that supports the QorIQ LS1012A
1454           Layerscape Architecture processor.
1455
1456 config TARGET_LS1028AQDS
1457         bool "Support ls1028aqds"
1458         select ARCH_LS1028A
1459         select ARM64
1460         select ARMV8_MULTIENTRY
1461         select ARCH_SUPPORT_TFABOOT
1462         select BOARD_LATE_INIT
1463         select GPIO_EXTRA_HEADER
1464         help
1465           Support for Freescale LS1028AQDS platform
1466           The LS1028A Development System (QDS) is a high-performance
1467           development platform that supports the QorIQ LS1028A
1468           Layerscape Architecture processor.
1469
1470 config TARGET_LS1028ARDB
1471         bool "Support ls1028ardb"
1472         select ARCH_LS1028A
1473         select ARM64
1474         select ARMV8_MULTIENTRY
1475         select ARCH_SUPPORT_TFABOOT
1476         select BOARD_LATE_INIT
1477         select GPIO_EXTRA_HEADER
1478         help
1479           Support for Freescale LS1028ARDB platform
1480           The LS1028A Development System (RDB) is a high-performance
1481           development platform that supports the QorIQ LS1028A
1482           Layerscape Architecture processor.
1483
1484 config TARGET_LS1088ARDB
1485         bool "Support ls1088ardb"
1486         select ARCH_LS1088A
1487         select ARM64
1488         select ARMV8_MULTIENTRY
1489         select ARCH_SUPPORT_TFABOOT
1490         select BOARD_LATE_INIT
1491         select SUPPORT_SPL
1492         select FSL_DDR_INTERACTIVE if !SD_BOOT
1493         select GPIO_EXTRA_HEADER
1494         help
1495           Support for NXP LS1088ARDB platform.
1496           The LS1088A Reference design board (RDB) is a high-performance
1497           development platform that supports the QorIQ LS1088A
1498           Layerscape Architecture processor.
1499
1500 config TARGET_LS1021AQDS
1501         bool "Support ls1021aqds"
1502         select ARCH_LS1021A
1503         select ARCH_SUPPORT_PSCI
1504         select BOARD_EARLY_INIT_F
1505         select BOARD_LATE_INIT
1506         select CPU_V7A
1507         select CPU_V7_HAS_NONSEC
1508         select CPU_V7_HAS_VIRT
1509         select LS1_DEEP_SLEEP
1510         select SUPPORT_SPL
1511         select SYS_FSL_DDR
1512         select FSL_DDR_INTERACTIVE
1513         select DM_SPI_FLASH if FSL_DSPI || FSL_QSPI
1514         select GPIO_EXTRA_HEADER
1515         select SPI_FLASH_DATAFLASH if FSL_DSPI || FSL_QSPI
1516         imply SCSI
1517
1518 config TARGET_LS1021ATWR
1519         bool "Support ls1021atwr"
1520         select ARCH_LS1021A
1521         select ARCH_SUPPORT_PSCI
1522         select BOARD_EARLY_INIT_F
1523         select BOARD_LATE_INIT
1524         select CPU_V7A
1525         select CPU_V7_HAS_NONSEC
1526         select CPU_V7_HAS_VIRT
1527         select LS1_DEEP_SLEEP
1528         select SUPPORT_SPL
1529         select DM_SPI_FLASH if FSL_DSPI || FSL_QSPI
1530         select GPIO_EXTRA_HEADER
1531         imply SCSI
1532
1533 config TARGET_PG_WCOM_SELI8
1534         bool "Support Hitachi-Powergrids SELI8 service unit card"
1535         select ARCH_LS1021A
1536         select ARCH_SUPPORT_PSCI
1537         select BOARD_EARLY_INIT_F
1538         select BOARD_LATE_INIT
1539         select CPU_V7A
1540         select CPU_V7_HAS_NONSEC
1541         select CPU_V7_HAS_VIRT
1542         select SYS_FSL_DDR
1543         select FSL_DDR_INTERACTIVE
1544         select GPIO_EXTRA_HEADER
1545         select VENDOR_KM
1546         imply SCSI
1547         help
1548          Support for Hitachi-Powergrids SELI8 service unit card.
1549          SELI8 is a QorIQ LS1021a based service unit card used
1550          in XMC20 and FOX615 product families.
1551
1552 config TARGET_PG_WCOM_EXPU1
1553         bool "Support Hitachi-Powergrids EXPU1 service unit card"
1554         select ARCH_LS1021A
1555         select ARCH_SUPPORT_PSCI
1556         select BOARD_EARLY_INIT_F
1557         select BOARD_LATE_INIT
1558         select CPU_V7A
1559         select CPU_V7_HAS_NONSEC
1560         select CPU_V7_HAS_VIRT
1561         select SYS_FSL_DDR
1562         select FSL_DDR_INTERACTIVE
1563         select VENDOR_KM
1564         imply SCSI
1565         help
1566          Support for Hitachi-Powergrids EXPU1 service unit card.
1567          EXPU1 is a QorIQ LS1021a based service unit card used
1568          in XMC20 and FOX615 product families.
1569
1570 config TARGET_LS1021ATSN
1571         bool "Support ls1021atsn"
1572         select ARCH_LS1021A
1573         select ARCH_SUPPORT_PSCI
1574         select BOARD_EARLY_INIT_F
1575         select BOARD_LATE_INIT
1576         select CPU_V7A
1577         select CPU_V7_HAS_NONSEC
1578         select CPU_V7_HAS_VIRT
1579         select LS1_DEEP_SLEEP
1580         select SUPPORT_SPL
1581         select GPIO_EXTRA_HEADER
1582         imply SCSI
1583
1584 config TARGET_LS1021AIOT
1585         bool "Support ls1021aiot"
1586         select ARCH_LS1021A
1587         select ARCH_SUPPORT_PSCI
1588         select BOARD_LATE_INIT
1589         select CPU_V7A
1590         select CPU_V7_HAS_NONSEC
1591         select CPU_V7_HAS_VIRT
1592         select SUPPORT_SPL
1593         select DM_SPI_FLASH if FSL_DSPI || FSL_QSPI
1594         select GPIO_EXTRA_HEADER
1595         imply SCSI
1596         help
1597           Support for Freescale LS1021AIOT platform.
1598           The LS1021A Freescale board (IOT) is a high-performance
1599           development platform that supports the QorIQ LS1021A
1600           Layerscape Architecture processor.
1601
1602 config TARGET_LS1043AQDS
1603         bool "Support ls1043aqds"
1604         select ARCH_LS1043A
1605         select ARM64
1606         select ARMV8_MULTIENTRY
1607         select ARCH_SUPPORT_TFABOOT
1608         select BOARD_EARLY_INIT_F
1609         select BOARD_LATE_INIT
1610         select SUPPORT_SPL
1611         select FSL_DDR_INTERACTIVE if !SPL
1612         select FSL_DSPI if !SPL_NO_DSPI
1613         select DM_SPI_FLASH if FSL_DSPI
1614         select GPIO_EXTRA_HEADER
1615         imply SCSI
1616         imply SCSI_AHCI
1617         help
1618           Support for Freescale LS1043AQDS platform.
1619
1620 config TARGET_LS1043ARDB
1621         bool "Support ls1043ardb"
1622         select ARCH_LS1043A
1623         select ARM64
1624         select ARMV8_MULTIENTRY
1625         select ARCH_SUPPORT_TFABOOT
1626         select BOARD_EARLY_INIT_F
1627         select BOARD_LATE_INIT
1628         select SUPPORT_SPL
1629         select FSL_DSPI if !SPL_NO_DSPI
1630         select DM_SPI_FLASH if FSL_DSPI
1631         select GPIO_EXTRA_HEADER
1632         help
1633           Support for Freescale LS1043ARDB platform.
1634
1635 config TARGET_LS1046AQDS
1636         bool "Support ls1046aqds"
1637         select ARCH_LS1046A
1638         select ARM64
1639         select ARMV8_MULTIENTRY
1640         select ARCH_SUPPORT_TFABOOT
1641         select BOARD_EARLY_INIT_F
1642         select BOARD_LATE_INIT
1643         select DM_SPI_FLASH if DM_SPI
1644         select SUPPORT_SPL
1645         select FSL_DDR_BIST if !SPL
1646         select FSL_DDR_INTERACTIVE  if !SPL
1647         select FSL_DDR_INTERACTIVE if !SPL
1648         select GPIO_EXTRA_HEADER
1649         imply SCSI
1650         help
1651           Support for Freescale LS1046AQDS platform.
1652           The LS1046A Development System (QDS) is a high-performance
1653           development platform that supports the QorIQ LS1046A
1654           Layerscape Architecture processor.
1655
1656 config TARGET_LS1046ARDB
1657         bool "Support ls1046ardb"
1658         select ARCH_LS1046A
1659         select ARM64
1660         select ARMV8_MULTIENTRY
1661         select ARCH_SUPPORT_TFABOOT
1662         select BOARD_EARLY_INIT_F
1663         select BOARD_LATE_INIT
1664         select DM_SPI_FLASH if DM_SPI
1665         select POWER_MC34VR500
1666         select SUPPORT_SPL
1667         select FSL_DDR_BIST
1668         select FSL_DDR_INTERACTIVE if !SPL
1669         select GPIO_EXTRA_HEADER
1670         imply SCSI
1671         help
1672           Support for Freescale LS1046ARDB platform.
1673           The LS1046A Reference Design Board (RDB) is a high-performance
1674           development platform that supports the QorIQ LS1046A
1675           Layerscape Architecture processor.
1676
1677 config TARGET_LS1046AFRWY
1678         bool "Support ls1046afrwy"
1679         select ARCH_LS1046A
1680         select ARM64
1681         select ARMV8_MULTIENTRY
1682         select ARCH_SUPPORT_TFABOOT
1683         select BOARD_EARLY_INIT_F
1684         select BOARD_LATE_INIT
1685         select DM_SPI_FLASH if DM_SPI
1686         select GPIO_EXTRA_HEADER
1687         imply SCSI
1688         help
1689           Support for Freescale LS1046AFRWY platform.
1690           The LS1046A Freeway Board (FRWY) is a high-performance
1691           development platform that supports the QorIQ LS1046A
1692           Layerscape Architecture processor.
1693
1694 config TARGET_SL28
1695         bool "Support sl28"
1696         select ARCH_LS1028A
1697         select ARM64
1698         select ARMV8_MULTIENTRY
1699         select SUPPORT_SPL
1700         select BINMAN
1701         select DM
1702         select DM_GPIO
1703         select DM_I2C
1704         select DM_MMC
1705         select DM_SPI_FLASH
1706         select DM_ETH
1707         select DM_MDIO
1708         select DM_PCI
1709         select DM_RNG
1710         select DM_RTC
1711         select DM_SCSI
1712         select DM_SERIAL
1713         select DM_SPI
1714         select GPIO_EXTRA_HEADER
1715         select SPL_DM if SPL
1716         select SPL_DM_SPI if SPL
1717         select SPL_DM_SPI_FLASH if SPL
1718         select SPL_DM_I2C if SPL
1719         select SPL_DM_MMC if SPL
1720         select SPL_DM_SERIAL if SPL
1721         help
1722           Support for Kontron SMARC-sAL28 board.
1723
1724 config TARGET_COLIBRI_PXA270
1725         bool "Support colibri_pxa270"
1726         select CPU_PXA
1727         select GPIO_EXTRA_HEADER
1728
1729 config ARCH_UNIPHIER
1730         bool "Socionext UniPhier SoCs"
1731         select BOARD_LATE_INIT
1732         select DM
1733         select DM_ETH
1734         select DM_GPIO
1735         select DM_I2C
1736         select DM_MMC
1737         select DM_MTD
1738         select DM_RESET
1739         select DM_SERIAL
1740         select OF_BOARD_SETUP
1741         select OF_CONTROL
1742         select OF_LIBFDT
1743         select PINCTRL
1744         select SPL_BOARD_INIT if SPL
1745         select SPL_DM if SPL
1746         select SPL_LIBCOMMON_SUPPORT if SPL
1747         select SPL_LIBGENERIC_SUPPORT if SPL
1748         select SPL_OF_CONTROL if SPL
1749         select SPL_PINCTRL if SPL
1750         select SUPPORT_SPL
1751         imply CMD_DM
1752         imply DISTRO_DEFAULTS
1753         imply FAT_WRITE
1754         help
1755           Support for UniPhier SoC family developed by Socionext Inc.
1756           (formerly, System LSI Business Division of Panasonic Corporation)
1757
1758 config ARCH_SYNQUACER
1759         bool "Socionext SynQuacer SoCs"
1760         select ARM64
1761         select DM
1762         select GIC_V3
1763         select PSCI_RESET
1764         select SYSRESET
1765         select SYSRESET_PSCI
1766         select OF_CONTROL
1767         help
1768           Support for SynQuacer SoC family developed by Socionext Inc.
1769           This SoC is used on 96boards EE DeveloperBox.
1770
1771 config ARCH_STM32
1772         bool "Support STMicroelectronics STM32 MCU with cortex M"
1773         select CPU_V7M
1774         select DM
1775         select DM_SERIAL
1776         select GPIO_EXTRA_HEADER
1777         imply CMD_DM
1778
1779 config ARCH_STI
1780         bool "Support STMicrolectronics SoCs"
1781         select BLK
1782         select CPU_V7A
1783         select DM
1784         select DM_MMC
1785         select DM_RESET
1786         select DM_SERIAL
1787         imply CMD_DM
1788         help
1789           Support for STMicroelectronics STiH407/10 SoC family.
1790           This SoC is used on Linaro 96Board STiH410-B2260
1791
1792 config ARCH_STM32MP
1793         bool "Support STMicroelectronics STM32MP Socs with cortex A"
1794         select ARCH_MISC_INIT
1795         select ARCH_SUPPORT_TFABOOT
1796         select BOARD_LATE_INIT
1797         select CLK
1798         select DM
1799         select DM_GPIO
1800         select DM_RESET
1801         select DM_SERIAL
1802         select GPIO_EXTRA_HEADER
1803         select MISC
1804         select OF_CONTROL
1805         select OF_LIBFDT
1806         select OF_SYSTEM_SETUP
1807         select PINCTRL
1808         select REGMAP
1809         select SUPPORT_SPL
1810         select SYSCON
1811         select SYSRESET
1812         select SYS_THUMB_BUILD
1813         imply SPL_SYSRESET
1814         imply CMD_DM
1815         imply CMD_POWEROFF
1816         imply OF_LIBFDT_OVERLAY
1817         imply ENV_VARS_UBOOT_RUNTIME_CONFIG
1818         imply USE_PREBOOT
1819         help
1820           Support for STM32MP SoC family developed by STMicroelectronics,
1821           MPUs based on ARM cortex A core
1822           U-BOOT is running in DDR, loaded by the First Stage BootLoader (FSBL).
1823           FSBL can be TF-A: Trusted Firmware for Cortex A, for trusted boot
1824           chain.
1825           SPL is the unsecure FSBL for the basic boot chain.
1826
1827 config ARCH_ROCKCHIP
1828         bool "Support Rockchip SoCs"
1829         select BLK
1830         select BINMAN if SPL_OPTEE || (SPL && !ARM64)
1831         select DM
1832         select DM_GPIO
1833         select DM_I2C
1834         select DM_MMC
1835         select DM_PWM
1836         select DM_REGULATOR
1837         select DM_SERIAL
1838         select DM_SPI
1839         select DM_SPI_FLASH
1840         select ENABLE_ARM_SOC_BOOT0_HOOK
1841         select OF_CONTROL
1842         select SPI
1843         select SPL_DM if SPL
1844         select SPL_DM_SPI if SPL
1845         select SPL_DM_SPI_FLASH if SPL
1846         select SYS_MALLOC_F
1847         select SYS_THUMB_BUILD if !ARM64
1848         imply ADC
1849         imply CMD_DM
1850         imply DEBUG_UART_BOARD_INIT
1851         imply DISTRO_DEFAULTS
1852         imply FAT_WRITE
1853         imply SARADC_ROCKCHIP
1854         imply SPL_SYSRESET
1855         imply SPL_SYS_MALLOC_SIMPLE
1856         imply SYS_NS16550
1857         imply TPL_SYSRESET
1858         imply USB_FUNCTION_FASTBOOT
1859
1860 config ARCH_OCTEONTX
1861         bool "Support OcteonTX SoCs"
1862         select CLK
1863         select DM
1864         select GPIO_EXTRA_HEADER
1865         select ARM64
1866         select OF_CONTROL
1867         select OF_LIVE
1868         select BOARD_LATE_INIT
1869         select SYS_CACHE_SHIFT_7
1870
1871 config ARCH_OCTEONTX2
1872         bool "Support OcteonTX2 SoCs"
1873         select CLK
1874         select DM
1875         select GPIO_EXTRA_HEADER
1876         select ARM64
1877         select OF_CONTROL
1878         select OF_LIVE
1879         select BOARD_LATE_INIT
1880         select SYS_CACHE_SHIFT_7
1881
1882 config TARGET_THUNDERX_88XX
1883         bool "Support ThunderX 88xx"
1884         select ARM64
1885         select GPIO_EXTRA_HEADER
1886         select OF_CONTROL
1887         select PL01X_SERIAL
1888         select SYS_CACHE_SHIFT_7
1889
1890 config ARCH_ASPEED
1891         bool "Support Aspeed SoCs"
1892         select DM
1893         select OF_CONTROL
1894         imply CMD_DM
1895
1896 config TARGET_DURIAN
1897         bool "Support Phytium Durian Platform"
1898         select ARM64
1899         select GPIO_EXTRA_HEADER
1900         help
1901           Support for durian platform.
1902           It has 2GB Sdram, uart and pcie.
1903
1904 config TARGET_PRESIDIO_ASIC
1905         bool "Support Cortina Presidio ASIC Platform"
1906         select ARM64
1907         select GICV2
1908
1909 config TARGET_XENGUEST_ARM64
1910         bool "Xen guest ARM64"
1911         select ARM64
1912         select XEN
1913         select OF_CONTROL
1914         select LINUX_KERNEL_IMAGE_HEADER
1915         select XEN_SERIAL
1916         select SSCANF
1917 endchoice
1918
1919 config ARCH_SUPPORT_TFABOOT
1920         bool
1921
1922 config TFABOOT
1923         bool "Support for booting from TF-A"
1924         depends on ARCH_SUPPORT_TFABOOT
1925         default n
1926         help
1927           Some platforms support the setup of secure registers (for instance
1928           for CPU errata handling) or provide secure services like PSCI.
1929           Those services could also be provided by other firmware parts
1930           like TF-A (Trusted Firmware for Cortex-A), in which case U-Boot
1931           does not need to (and cannot) execute this code.
1932           Enabling this option will make a U-Boot binary that is relying
1933           on other firmware layers to provide secure functionality.
1934
1935 config TI_SECURE_DEVICE
1936         bool "HS Device Type Support"
1937         depends on ARCH_KEYSTONE || ARCH_OMAP2PLUS || ARCH_K3
1938         help
1939           If a high secure (HS) device type is being used, this config
1940           must be set. This option impacts various aspects of the
1941           build system (to create signed boot images that can be
1942           authenticated) and the code. See the doc/README.ti-secure
1943           file for further details.
1944
1945 if AM43XX || AM33XX || OMAP54XX || ARCH_KEYSTONE
1946 config ISW_ENTRY_ADDR
1947         hex "Address in memory or XIP address of bootloader entry point"
1948         default 0x402F4000 if AM43XX
1949         default 0x402F0400 if AM33XX
1950         default 0x40301350 if OMAP54XX
1951         help
1952           After any reset, the boot ROM searches the boot media for a valid
1953           boot image. For non-XIP devices, the ROM then copies the image into
1954           internal memory. For all boot modes, after the ROM processes the
1955           boot image it eventually computes the entry point address depending
1956           on the device type (secure/non-secure), boot media (xip/non-xip) and
1957           image headers.
1958 endif
1959
1960 source "arch/arm/mach-aspeed/Kconfig"
1961
1962 source "arch/arm/mach-at91/Kconfig"
1963
1964 source "arch/arm/mach-bcm283x/Kconfig"
1965
1966 source "arch/arm/mach-bcmstb/Kconfig"
1967
1968 source "arch/arm/mach-davinci/Kconfig"
1969
1970 source "arch/arm/mach-exynos/Kconfig"
1971
1972 source "arch/arm/mach-highbank/Kconfig"
1973
1974 source "arch/arm/mach-integrator/Kconfig"
1975
1976 source "arch/arm/mach-ipq40xx/Kconfig"
1977
1978 source "arch/arm/mach-k3/Kconfig"
1979
1980 source "arch/arm/mach-keystone/Kconfig"
1981
1982 source "arch/arm/mach-kirkwood/Kconfig"
1983
1984 source "arch/arm/mach-lpc32xx/Kconfig"
1985
1986 source "arch/arm/mach-mvebu/Kconfig"
1987
1988 source "arch/arm/mach-octeontx/Kconfig"
1989
1990 source "arch/arm/mach-octeontx2/Kconfig"
1991
1992 source "arch/arm/cpu/armv7/ls102xa/Kconfig"
1993
1994 source "arch/arm/mach-imx/mx2/Kconfig"
1995
1996 source "arch/arm/mach-imx/mx3/Kconfig"
1997
1998 source "arch/arm/mach-imx/mx5/Kconfig"
1999
2000 source "arch/arm/mach-imx/mx6/Kconfig"
2001
2002 source "arch/arm/mach-imx/mx7/Kconfig"
2003
2004 source "arch/arm/mach-imx/mx7ulp/Kconfig"
2005
2006 source "arch/arm/mach-imx/imx8/Kconfig"
2007
2008 source "arch/arm/mach-imx/imx8m/Kconfig"
2009
2010 source "arch/arm/mach-imx/imx8ulp/Kconfig"
2011
2012 source "arch/arm/mach-imx/imxrt/Kconfig"
2013
2014 source "arch/arm/mach-imx/mxs/Kconfig"
2015
2016 source "arch/arm/mach-omap2/Kconfig"
2017
2018 source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
2019
2020 source "arch/arm/mach-orion5x/Kconfig"
2021
2022 source "arch/arm/mach-owl/Kconfig"
2023
2024 source "arch/arm/mach-rmobile/Kconfig"
2025
2026 source "arch/arm/mach-meson/Kconfig"
2027
2028 source "arch/arm/mach-mediatek/Kconfig"
2029
2030 source "arch/arm/mach-qemu/Kconfig"
2031
2032 source "arch/arm/mach-rockchip/Kconfig"
2033
2034 source "arch/arm/mach-s5pc1xx/Kconfig"
2035
2036 source "arch/arm/mach-snapdragon/Kconfig"
2037
2038 source "arch/arm/mach-socfpga/Kconfig"
2039
2040 source "arch/arm/mach-sti/Kconfig"
2041
2042 source "arch/arm/mach-stm32/Kconfig"
2043
2044 source "arch/arm/mach-stm32mp/Kconfig"
2045
2046 source "arch/arm/mach-sunxi/Kconfig"
2047
2048 source "arch/arm/mach-tegra/Kconfig"
2049
2050 source "arch/arm/mach-u8500/Kconfig"
2051
2052 source "arch/arm/mach-uniphier/Kconfig"
2053
2054 source "arch/arm/cpu/armv7/vf610/Kconfig"
2055
2056 source "arch/arm/mach-zynq/Kconfig"
2057
2058 source "arch/arm/mach-zynqmp/Kconfig"
2059
2060 source "arch/arm/mach-versal/Kconfig"
2061
2062 source "arch/arm/mach-zynqmp-r5/Kconfig"
2063
2064 source "arch/arm/cpu/armv7/Kconfig"
2065
2066 source "arch/arm/cpu/armv8/Kconfig"
2067
2068 source "arch/arm/mach-imx/Kconfig"
2069
2070 source "arch/arm/mach-nexell/Kconfig"
2071
2072 source "board/armltd/total_compute/Kconfig"
2073
2074 source "board/bosch/shc/Kconfig"
2075 source "board/bosch/guardian/Kconfig"
2076 source "board/CarMediaLab/flea3/Kconfig"
2077 source "board/Marvell/aspenite/Kconfig"
2078 source "board/Marvell/octeontx/Kconfig"
2079 source "board/Marvell/octeontx2/Kconfig"
2080 source "board/armltd/vexpress64/Kconfig"
2081 source "board/cortina/presidio-asic/Kconfig"
2082 source "board/broadcom/bcm963158/Kconfig"
2083 source "board/broadcom/bcm968360bg/Kconfig"
2084 source "board/broadcom/bcm968580xref/Kconfig"
2085 source "board/broadcom/bcmns3/Kconfig"
2086 source "board/cavium/thunderx/Kconfig"
2087 source "board/eets/pdu001/Kconfig"
2088 source "board/emulation/qemu-arm/Kconfig"
2089 source "board/freescale/ls2080aqds/Kconfig"
2090 source "board/freescale/ls2080ardb/Kconfig"
2091 source "board/freescale/ls1088a/Kconfig"
2092 source "board/freescale/ls1028a/Kconfig"
2093 source "board/freescale/ls1021aqds/Kconfig"
2094 source "board/freescale/ls1043aqds/Kconfig"
2095 source "board/freescale/ls1021atwr/Kconfig"
2096 source "board/freescale/ls1021atsn/Kconfig"
2097 source "board/freescale/ls1021aiot/Kconfig"
2098 source "board/freescale/ls1046aqds/Kconfig"
2099 source "board/freescale/ls1043ardb/Kconfig"
2100 source "board/freescale/ls1046ardb/Kconfig"
2101 source "board/freescale/ls1046afrwy/Kconfig"
2102 source "board/freescale/ls1012aqds/Kconfig"
2103 source "board/freescale/ls1012ardb/Kconfig"
2104 source "board/freescale/ls1012afrdm/Kconfig"
2105 source "board/freescale/lx2160a/Kconfig"
2106 source "board/grinn/chiliboard/Kconfig"
2107 source "board/hisilicon/hikey/Kconfig"
2108 source "board/hisilicon/hikey960/Kconfig"
2109 source "board/hisilicon/poplar/Kconfig"
2110 source "board/isee/igep003x/Kconfig"
2111 source "board/kontron/sl28/Kconfig"
2112 source "board/myir/mys_6ulx/Kconfig"
2113 source "board/seeed/npi_imx6ull/Kconfig"
2114 source "board/socionext/developerbox/Kconfig"
2115 source "board/st/stv0991/Kconfig"
2116 source "board/tcl/sl50/Kconfig"
2117 source "board/toradex/colibri_pxa270/Kconfig"
2118 source "board/variscite/dart_6ul/Kconfig"
2119 source "board/vscom/baltos/Kconfig"
2120 source "board/phytium/durian/Kconfig"
2121 source "board/xen/xenguest_arm64/Kconfig"
2122 source "board/keymile/Kconfig"
2123
2124 source "arch/arm/Kconfig.debug"
2125
2126 endmenu
2127
2128 config SPL_LDSCRIPT
2129         default "arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds" if (ARCH_MX23 || ARCH_MX28) && !SPL_FRAMEWORK
2130         default "arch/arm/cpu/arm1136/u-boot-spl.lds" if CPU_ARM1136
2131         default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARM64