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