imx31_phycore: Split the eet variant out into a different TARGET
[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 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 config CPU_ARM720T
23         bool
24         select SYS_CACHE_SHIFT_5
25
26 config CPU_ARM920T
27         bool
28         select SYS_CACHE_SHIFT_5
29
30 config CPU_ARM926EJS
31         bool
32         select SYS_CACHE_SHIFT_5
33
34 config CPU_ARM946ES
35         bool
36         select SYS_CACHE_SHIFT_5
37
38 config CPU_ARM1136
39         bool
40         select SYS_CACHE_SHIFT_5
41
42 config CPU_ARM1176
43         bool
44         select HAS_VBAR
45         select SYS_CACHE_SHIFT_5
46
47 config CPU_V7
48         bool
49         select HAS_VBAR
50         select HAS_THUMB2
51         select SYS_CACHE_SHIFT_6
52
53 config CPU_V7M
54         bool
55         select HAS_THUMB2
56         select SYS_CACHE_SHIFT_5
57
58 config CPU_PXA
59         bool
60         select SYS_CACHE_SHIFT_5
61
62 config CPU_SA1100
63         bool
64         select SYS_CACHE_SHIFT_5
65
66 config SYS_CPU
67         default "arm720t" if CPU_ARM720T
68         default "arm920t" if CPU_ARM920T
69         default "arm926ejs" if CPU_ARM926EJS
70         default "arm946es" if CPU_ARM946ES
71         default "arm1136" if CPU_ARM1136
72         default "arm1176" if CPU_ARM1176
73         default "armv7" if CPU_V7
74         default "armv7m" if CPU_V7M
75         default "pxa" if CPU_PXA
76         default "sa1100" if CPU_SA1100
77         default "armv8" if ARM64
78
79 config SYS_ARM_ARCH
80         int
81         default 4 if CPU_ARM720T
82         default 4 if CPU_ARM920T
83         default 5 if CPU_ARM926EJS
84         default 5 if CPU_ARM946ES
85         default 6 if CPU_ARM1136
86         default 6 if CPU_ARM1176
87         default 7 if CPU_V7
88         default 7 if CPU_V7M
89         default 5 if CPU_PXA
90         default 4 if CPU_SA1100
91         default 8 if ARM64
92
93 config SYS_CACHE_SHIFT_5
94         bool
95
96 config SYS_CACHE_SHIFT_6
97         bool
98
99 config SYS_CACHE_SHIFT_7
100         bool
101
102 config SYS_CACHELINE_SIZE
103         int
104         default 128 if SYS_CACHE_SHIFT_7
105         default 64 if SYS_CACHE_SHIFT_6
106         default 32 if SYS_CACHE_SHIFT_5
107
108 config SEMIHOSTING
109         bool "support boot from semihosting"
110         help
111           In emulated environments, semihosting is a way for
112           the hosted environment to call out to the emulator to
113           retrieve files from the host machine.
114
115 config SYS_L2CACHE_OFF
116         bool "L2cache off"
117         help
118           If SoC does not support L2CACHE or one do not want to enable
119           L2CACHE, choose this option.
120
121 config ENABLE_ARM_SOC_BOOT0_HOOK
122         bool "prepare BOOT0 header"
123         help
124           If the SoC's BOOT0 requires a header area filled with (magic)
125           values, then choose this option, and create a define called
126           ARM_SOC_BOOT0_HOOK which contains the required assembler
127           preprocessor code.
128
129 config USE_ARCH_MEMCPY
130         bool "Use an assembly optimized implementation of memcpy"
131         default y
132         depends on !ARM64
133         help
134           Enable the generation of an optimized version of memcpy.
135           Such implementation may be faster under some conditions
136           but may increase the binary size.
137
138 config SPL_USE_ARCH_MEMCPY
139         bool "Use an assembly optimized implementation of memcpy"
140         default y if USE_ARCH_MEMCPY
141         depends on !ARM64
142         help
143           Enable the generation of an optimized version of memcpy.
144           Such implementation may be faster under some conditions
145           but may increase the binary size.
146
147 config USE_ARCH_MEMSET
148         bool "Use an assembly optimized implementation of memset"
149         default y
150         depends on !ARM64
151         help
152           Enable the generation of an optimized version of memset.
153           Such implementation may be faster under some conditions
154           but may increase the binary size.
155
156 config SPL_USE_ARCH_MEMSET
157         bool "Use an assembly optimized implementation of memset"
158         default y if USE_ARCH_MEMSET
159         depends on !ARM64
160         help
161           Enable the generation of an optimized version of memset.
162           Such implementation may be faster under some conditions
163           but may increase the binary size.
164
165 config ARCH_OMAP2
166         bool
167         select CPU_V7
168         select SUPPORT_SPL
169
170 config ARM64_SUPPORT_AARCH32
171         bool "ARM64 system support AArch32 execution state"
172         default y if ARM64 && !TARGET_THUNDERX_88XX
173         help
174           This ARM64 system supports AArch32 execution state.
175
176 choice
177         prompt "Target select"
178         default TARGET_HIKEY
179
180 config ARCH_AT91
181         bool "Atmel AT91"
182
183 config TARGET_EDB93XX
184         bool "Support edb93xx"
185         select CPU_ARM920T
186
187 config TARGET_ASPENITE
188         bool "Support aspenite"
189         select CPU_ARM926EJS
190
191 config TARGET_GPLUGD
192         bool "Support gplugd"
193         select CPU_ARM926EJS
194
195 config ARCH_DAVINCI
196         bool "TI DaVinci"
197         select CPU_ARM926EJS
198         help
199           Support for TI's DaVinci platform.
200
201 config KIRKWOOD
202         bool "Marvell Kirkwood"
203         select CPU_ARM926EJS
204
205 config ARCH_MVEBU
206         bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)"
207         select OF_CONTROL
208         select OF_SEPARATE
209         select DM
210         select DM_ETH
211         select DM_SERIAL
212         select DM_SPI
213         select DM_SPI_FLASH
214
215 config TARGET_DEVKIT3250
216         bool "Support devkit3250"
217         select CPU_ARM926EJS
218         select SUPPORT_SPL
219
220 config TARGET_WORK_92105
221         bool "Support work_92105"
222         select CPU_ARM926EJS
223         select SUPPORT_SPL
224
225 config TARGET_MX25PDK
226         bool "Support mx25pdk"
227         select CPU_ARM926EJS
228
229 config TARGET_ZMX25
230         bool "Support zmx25"
231         select CPU_ARM926EJS
232
233 config TARGET_APF27
234         bool "Support apf27"
235         select CPU_ARM926EJS
236         select SUPPORT_SPL
237
238 config TARGET_APX4DEVKIT
239         bool "Support apx4devkit"
240         select CPU_ARM926EJS
241         select SUPPORT_SPL
242
243 config TARGET_XFI3
244         bool "Support xfi3"
245         select CPU_ARM926EJS
246         select SUPPORT_SPL
247
248 config TARGET_M28EVK
249         bool "Support m28evk"
250         select CPU_ARM926EJS
251         select SUPPORT_SPL
252
253 config TARGET_MX23EVK
254         bool "Support mx23evk"
255         select CPU_ARM926EJS
256         select SUPPORT_SPL
257
258 config TARGET_MX28EVK
259         bool "Support mx28evk"
260         select CPU_ARM926EJS
261         select SUPPORT_SPL
262
263 config TARGET_MX23_OLINUXINO
264         bool "Support mx23_olinuxino"
265         select CPU_ARM926EJS
266         select SUPPORT_SPL
267
268 config TARGET_BG0900
269         bool "Support bg0900"
270         select CPU_ARM926EJS
271         select SUPPORT_SPL
272
273 config TARGET_SANSA_FUZE_PLUS
274         bool "Support sansa_fuze_plus"
275         select CPU_ARM926EJS
276         select SUPPORT_SPL
277
278 config TARGET_SC_SPS_1
279         bool "Support sc_sps_1"
280         select CPU_ARM926EJS
281         select SUPPORT_SPL
282
283 config ORION5X
284         bool "Marvell Orion"
285         select CPU_ARM926EJS
286
287 config TARGET_SPEAR300
288         bool "Support spear300"
289         select CPU_ARM926EJS
290
291 config TARGET_SPEAR310
292         bool "Support spear310"
293         select CPU_ARM926EJS
294
295 config TARGET_SPEAR320
296         bool "Support spear320"
297         select CPU_ARM926EJS
298
299 config TARGET_SPEAR600
300         bool "Support spear600"
301         select CPU_ARM926EJS
302
303 config TARGET_STV0991
304         bool "Support stv0991"
305         select CPU_V7
306         select DM
307         select DM_SERIAL
308         select DM_SPI
309         select DM_SPI_FLASH
310         select SPI_FLASH
311
312 config TARGET_X600
313         bool "Support x600"
314         select CPU_ARM926EJS
315         select SUPPORT_SPL
316
317 config TARGET_IMX31_PHYCORE
318         bool "Support imx31_phycore_eet"
319         select CPU_ARM1136
320
321 config TARGET_IMX31_PHYCORE_EET
322         bool "Support imx31_phycore_eet"
323         select CPU_ARM1136
324
325 config TARGET_MX31ADS
326         bool "Support mx31ads"
327         select CPU_ARM1136
328
329 config TARGET_MX31PDK
330         bool "Support mx31pdk"
331         select CPU_ARM1136
332         select SUPPORT_SPL
333
334 config TARGET_WOODBURN
335         bool "Support woodburn"
336         select CPU_ARM1136
337
338 config TARGET_WOODBURN_SD
339         bool "Support woodburn_sd"
340         select CPU_ARM1136
341         select SUPPORT_SPL
342
343 config TARGET_FLEA3
344         bool "Support flea3"
345         select CPU_ARM1136
346
347 config TARGET_MX35PDK
348         bool "Support mx35pdk"
349         select CPU_ARM1136
350
351 config ARCH_BCM283X
352         bool "Broadcom BCM283X family"
353         select DM
354         select DM_SERIAL
355         select DM_GPIO
356         select OF_CONTROL
357
358 config TARGET_VEXPRESS_CA15_TC2
359         bool "Support vexpress_ca15_tc2"
360         select CPU_V7
361         select CPU_V7_HAS_NONSEC
362         select CPU_V7_HAS_VIRT
363
364 config TARGET_VEXPRESS_CA5X2
365         bool "Support vexpress_ca5x2"
366         select CPU_V7
367
368 config TARGET_VEXPRESS_CA9X4
369         bool "Support vexpress_ca9x4"
370         select CPU_V7
371
372 config TARGET_BRXRE1
373         bool "Support BRXRE1"
374         select ARCH_OMAP2
375
376 config TARGET_BRPPT1
377         bool "Support BRPPT1"
378         select ARCH_OMAP2
379
380 config TARGET_DRACO
381         bool "Support draco"
382         select ARCH_OMAP2
383         select DM
384         select DM_SERIAL
385         select DM_GPIO
386
387 config TARGET_THUBAN
388         bool "Support thuban"
389         select ARCH_OMAP2
390         select DM
391         select DM_SERIAL
392         select DM_GPIO
393
394 config TARGET_RASTABAN
395         bool "Support rastaban"
396         select ARCH_OMAP2
397         select DM
398         select DM_SERIAL
399         select DM_GPIO
400
401 config TARGET_ETAMIN
402         bool "Support etamin"
403         select ARCH_OMAP2
404         select DM
405         select DM_SERIAL
406         select DM_GPIO
407
408 config TARGET_PXM2
409         bool "Support pxm2"
410         select ARCH_OMAP2
411         select DM
412         select DM_SERIAL
413         select DM_GPIO
414
415 config TARGET_RUT
416         bool "Support rut"
417         select ARCH_OMAP2
418         select DM
419         select DM_SERIAL
420         select DM_GPIO
421
422 config TARGET_TI814X_EVM
423         bool "Support ti814x_evm"
424         select ARCH_OMAP2
425
426 config TARGET_TI816X_EVM
427         bool "Support ti816x_evm"
428         select ARCH_OMAP2
429
430 config TARGET_BCM23550_W1D
431         bool "Support bcm23550_w1d"
432         select CPU_V7
433
434 config TARGET_BCM28155_AP
435         bool "Support bcm28155_ap"
436         select CPU_V7
437
438 config TARGET_BCMCYGNUS
439         bool "Support bcmcygnus"
440         select CPU_V7
441
442 config TARGET_BCMNSP
443         bool "Support bcmnsp"
444         select CPU_V7
445
446 config ARCH_EXYNOS
447         bool "Samsung EXYNOS"
448         select DM
449         select DM_I2C
450         select DM_SPI_FLASH
451         select DM_SERIAL
452         select DM_SPI
453         select DM_GPIO
454         select DM_KEYBOARD
455
456 config ARCH_S5PC1XX
457         bool "Samsung S5PC1XX"
458         select CPU_V7
459         select DM
460         select DM_SERIAL
461         select DM_GPIO
462         select DM_I2C
463
464 config ARCH_HIGHBANK
465         bool "Calxeda Highbank"
466         select CPU_V7
467
468 config ARCH_INTEGRATOR
469         bool "ARM Ltd. Integrator family"
470         select DM
471         select DM_SERIAL
472
473 config ARCH_KEYSTONE
474         bool "TI Keystone"
475         select CPU_V7
476         select SUPPORT_SPL
477         select CMD_POWEROFF
478
479 config ARCH_MESON
480         bool "Amlogic Meson"
481         help
482           Support for the Meson SoC family developed by Amlogic Inc.,
483           targeted at media players and tablet computers. We currently
484           support the S905 (GXBaby) 64-bit SoC.
485
486 config ARCH_MX7
487         bool "Freescale MX7"
488         select CPU_V7
489         select SYS_FSL_HAS_SEC if SECURE_BOOT
490         select SYS_FSL_SEC_COMPAT_4
491         select SYS_FSL_SEC_LE
492
493 config ARCH_MX6
494         bool "Freescale MX6"
495         select CPU_V7
496         select SYS_FSL_HAS_SEC if SECURE_BOOT
497         select SYS_FSL_SEC_COMPAT_4
498         select SYS_FSL_SEC_LE
499
500 config ARCH_MX5
501         bool "Freescale MX5"
502         select CPU_V7
503
504 config TARGET_M53EVK
505         bool "Support m53evk"
506         select CPU_V7
507         select SUPPORT_SPL
508
509 config TARGET_MX51EVK
510         bool "Support mx51evk"
511         select CPU_V7
512
513 config TARGET_MX53ARD
514         bool "Support mx53ard"
515         select CPU_V7
516
517 config TARGET_MX53EVK
518         bool "Support mx53evk"
519         select CPU_V7
520
521 config TARGET_MX53LOCO
522         bool "Support mx53loco"
523         select CPU_V7
524
525 config TARGET_MX53SMD
526         bool "Support mx53smd"
527         select CPU_V7
528
529 config OMAP34XX
530         bool "OMAP34XX SoC"
531         select ARCH_OMAP2
532         select USE_TINY_PRINTF
533
534 config OMAP44XX
535         bool "OMAP44XX SoC"
536         select ARCH_OMAP2
537         select USE_TINY_PRINTF
538
539 config OMAP54XX
540         bool "OMAP54XX SoC"
541         select ARCH_OMAP2
542
543 config AM43XX
544         bool "AM43XX SoC"
545         select ARCH_OMAP2
546         help
547           Support for AM43xx SOC from Texas Instruments.
548           The AM43xx high performance SOC features a Cortex-A9
549           ARM core, a quad core PRU-ICSS for industrial Ethernet
550           protocols, dual camera support, optional 3D graphics
551           and an optional customer programmable secure boot.
552
553 config AM33XX
554         bool "AM33XX SoC"
555         select ARCH_OMAP2
556         help
557           Support for AM335x SOC from Texas Instruments.
558           The AM335x high performance SOC features a Cortex-A8
559           ARM core, a dual core PRU-ICSS for industrial Ethernet
560           protocols, optional 3D graphics and an optional customer
561           programmable secure boot.
562
563 config ARCH_RMOBILE
564         bool "Renesas ARM SoCs"
565         select DM
566         select DM_SERIAL
567
568 config TARGET_S32V234EVB
569         bool "Support s32v234evb"
570         select ARM64
571         select SYS_FSL_ERRATUM_ESDHC111
572
573 config ARCH_SNAPDRAGON
574         bool "Qualcomm Snapdragon SoCs"
575         select ARM64
576         select DM
577         select DM_GPIO
578         select DM_SERIAL
579         select SPMI
580         select OF_CONTROL
581         select OF_SEPARATE
582
583 config ARCH_SOCFPGA
584         bool "Altera SOCFPGA family"
585         select CPU_V7
586         select SUPPORT_SPL
587         select OF_CONTROL
588         select SPL_OF_CONTROL
589         select DM
590         select DM_SPI_FLASH
591         select DM_SPI
592         select ENABLE_ARM_SOC_BOOT0_HOOK
593
594 config TARGET_CM_T43
595         bool "Support cm_t43"
596         select ARCH_OMAP2
597
598 config ARCH_SUNXI
599         bool "Support sunxi (Allwinner) SoCs"
600         select CMD_GPIO
601         select CMD_MMC if MMC
602         select CMD_USB if DISTRO_DEFAULTS
603         select DM
604         select DM_ETH
605         select DM_GPIO
606         select DM_KEYBOARD
607         select DM_SERIAL
608         select DM_USB if DISTRO_DEFAULTS
609         select OF_BOARD_SETUP
610         select OF_CONTROL
611         select OF_SEPARATE
612         select SPL_STACK_R if SUPPORT_SPL
613         select SPL_SYS_MALLOC_SIMPLE if SUPPORT_SPL
614         select SYS_NS16550
615         select USB if DISTRO_DEFAULTS
616         select USB_STORAGE if DISTRO_DEFAULTS
617         select USB_KEYBOARD if DISTRO_DEFAULTS
618         select USE_TINY_PRINTF
619
620 config TARGET_TS4600
621         bool "Support TS4600"
622         select CPU_ARM926EJS
623         select SUPPORT_SPL
624
625 config TARGET_TS4800
626         bool "Support TS4800"
627         select CPU_V7
628         select SYS_FSL_ERRATUM_ESDHC_A001
629
630 config TARGET_VF610TWR
631         bool "Support vf610twr"
632         select CPU_V7
633         select SYS_FSL_ERRATUM_ESDHC111
634
635 config TARGET_COLIBRI_VF
636         bool "Support Colibri VF50/61"
637         select CPU_V7
638         select SYS_FSL_ERRATUM_ESDHC111
639
640 config TARGET_PCM052
641         bool "Support pcm-052"
642         select CPU_V7
643         select SYS_FSL_ERRATUM_ESDHC111
644         select SYS_FSL_ERRATUM_ESDHC135
645         select SYS_FSL_ERRATUM_ESDHC_A001
646
647 config TARGET_BK4R1
648         bool "Support BK4r1"
649         select CPU_V7
650         select SYS_FSL_ERRATUM_ESDHC111
651         select SYS_FSL_ERRATUM_ESDHC135
652         select SYS_FSL_ERRATUM_ESDHC_A001
653
654 config ARCH_ZYNQ
655         bool "Xilinx Zynq Platform"
656         select CPU_V7
657         select SUPPORT_SPL
658         select OF_CONTROL
659         select SPL_OF_CONTROL if SPL
660         select DM
661         select DM_ETH
662         select DM_GPIO
663         select SPL_DM if SPL
664         select DM_MMC
665         select DM_MMC_OPS
666         select DM_SPI
667         select DM_SERIAL
668         select DM_SPI_FLASH
669         select SPL_SEPARATE_BSS if SPL
670         select DM_USB if USB
671         select BLK
672
673 config ARCH_ZYNQMP
674         bool "Support Xilinx ZynqMP Platform"
675         select ARM64
676         select DM
677         select OF_CONTROL
678         select DM_SERIAL
679         select SUPPORT_SPL
680         select CLK
681         select SPL_CLK
682         select DM_USB if USB
683
684 config TEGRA
685         bool "NVIDIA Tegra"
686
687 config TARGET_VEXPRESS64_AEMV8A
688         bool "Support vexpress_aemv8a"
689         select ARM64
690
691 config TARGET_VEXPRESS64_BASE_FVP
692         bool "Support Versatile Express ARMv8a FVP BASE model"
693         select ARM64
694         select SEMIHOSTING
695
696 config TARGET_VEXPRESS64_BASE_FVP_DRAM
697         bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
698         select ARM64
699         help
700           This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
701           the default config to allow the user to load the images directly into
702           DRAM using model parameters rather than by using semi-hosting to load
703           the files from the host filesystem.
704
705 config TARGET_VEXPRESS64_JUNO
706         bool "Support Versatile Express Juno Development Platform"
707         select ARM64
708
709 config TARGET_LS2080A_EMU
710         bool "Support ls2080a_emu"
711         select ARCH_LS2080A
712         select ARM64
713         select ARMV8_MULTIENTRY
714         help
715           Support for Freescale LS2080A_EMU platform
716           The LS2080A Development System (EMULATOR) is a pre silicon
717           development platform that supports the QorIQ LS2080A
718           Layerscape Architecture processor.
719
720 config TARGET_LS2080A_SIMU
721         bool "Support ls2080a_simu"
722         select ARCH_LS2080A
723         select ARM64
724         select ARMV8_MULTIENTRY
725         help
726           Support for Freescale LS2080A_SIMU platform
727           The LS2080A Development System (QDS) is a pre silicon
728           development platform that supports the QorIQ LS2080A
729           Layerscape Architecture processor.
730
731 config TARGET_LS2080AQDS
732         bool "Support ls2080aqds"
733         select ARCH_LS2080A
734         select ARM64
735         select ARMV8_MULTIENTRY
736         select SUPPORT_SPL
737         help
738           Support for Freescale LS2080AQDS platform
739           The LS2080A Development System (QDS) is a high-performance
740           development platform that supports the QorIQ LS2080A
741           Layerscape Architecture processor.
742
743 config TARGET_LS2080ARDB
744         bool "Support ls2080ardb"
745         select ARCH_LS2080A
746         select ARM64
747         select ARMV8_MULTIENTRY
748         select SUPPORT_SPL
749         help
750           Support for Freescale LS2080ARDB platform.
751           The LS2080A Reference design board (RDB) is a high-performance
752           development platform that supports the QorIQ LS2080A
753           Layerscape Architecture processor.
754
755 config TARGET_HIKEY
756         bool "Support HiKey 96boards Consumer Edition Platform"
757         select ARM64
758         select DM
759         select DM_GPIO
760         select DM_SERIAL
761         select OF_CONTROL
762           help
763           Support for HiKey 96boards platform. It features a HI6220
764           SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
765
766 config TARGET_LS1012AQDS
767         bool "Support ls1012aqds"
768         select ARCH_LS1012A
769         select ARM64
770         help
771           Support for Freescale LS1012AQDS platform.
772           The LS1012A Development System (QDS) is a high-performance
773           development platform that supports the QorIQ LS1012A
774           Layerscape Architecture processor.
775
776 config TARGET_LS1012ARDB
777         bool "Support ls1012ardb"
778         select ARCH_LS1012A
779         select ARM64
780         help
781           Support for Freescale LS1012ARDB platform.
782           The LS1012A Reference design board (RDB) is a high-performance
783           development platform that supports the QorIQ LS1012A
784           Layerscape Architecture processor.
785
786 config TARGET_LS1012AFRDM
787         bool "Support ls1012afrdm"
788         select ARCH_LS1012A
789         select ARM64
790         help
791           Support for Freescale LS1012AFRDM platform.
792           The LS1012A Freedom  board (FRDM) is a high-performance
793           development platform that supports the QorIQ LS1012A
794           Layerscape Architecture processor.
795
796 config TARGET_LS1021AQDS
797         bool "Support ls1021aqds"
798         select CPU_V7
799         select CPU_V7_HAS_NONSEC
800         select CPU_V7_HAS_VIRT
801         select SUPPORT_SPL
802         select ARCH_LS1021A
803         select ARCH_SUPPORT_PSCI
804         select LS1_DEEP_SLEEP
805         select SYS_FSL_DDR
806
807 config TARGET_LS1021ATWR
808         bool "Support ls1021atwr"
809         select CPU_V7
810         select CPU_V7_HAS_NONSEC
811         select CPU_V7_HAS_VIRT
812         select SUPPORT_SPL
813         select ARCH_LS1021A
814         select ARCH_SUPPORT_PSCI
815         select LS1_DEEP_SLEEP
816
817 config TARGET_LS1021AIOT
818         bool "Support ls1021aiot"
819         select CPU_V7
820         select CPU_V7_HAS_NONSEC
821         select CPU_V7_HAS_VIRT
822         select SUPPORT_SPL
823         select ARCH_LS1021A
824         select ARCH_SUPPORT_PSCI
825         help
826           Support for Freescale LS1021AIOT platform.
827           The LS1021A Freescale board (IOT) is a high-performance
828           development platform that supports the QorIQ LS1021A
829           Layerscape Architecture processor.
830
831 config TARGET_LS1043AQDS
832         bool "Support ls1043aqds"
833         select ARCH_LS1043A
834         select ARM64
835         select ARMV8_MULTIENTRY
836         select SUPPORT_SPL
837         help
838           Support for Freescale LS1043AQDS platform.
839
840 config TARGET_LS1043ARDB
841         bool "Support ls1043ardb"
842         select ARCH_LS1043A
843         select ARM64
844         select ARMV8_MULTIENTRY
845         select SUPPORT_SPL
846         help
847           Support for Freescale LS1043ARDB platform.
848
849 config TARGET_LS1046AQDS
850         bool "Support ls1046aqds"
851         select ARCH_LS1046A
852         select ARM64
853         select ARMV8_MULTIENTRY
854         select SUPPORT_SPL
855         select DM_SPI_FLASH if DM_SPI
856         help
857           Support for Freescale LS1046AQDS platform.
858           The LS1046A Development System (QDS) is a high-performance
859           development platform that supports the QorIQ LS1046A
860           Layerscape Architecture processor.
861
862 config TARGET_LS1046ARDB
863         bool "Support ls1046ardb"
864         select ARCH_LS1046A
865         select ARM64
866         select ARMV8_MULTIENTRY
867         select SUPPORT_SPL
868         select DM_SPI_FLASH if DM_SPI
869         select POWER_MC34VR500
870         help
871           Support for Freescale LS1046ARDB platform.
872           The LS1046A Reference Design Board (RDB) is a high-performance
873           development platform that supports the QorIQ LS1046A
874           Layerscape Architecture processor.
875
876 config TARGET_H2200
877         bool "Support h2200"
878         select CPU_PXA
879
880 config TARGET_ZIPITZ2
881         bool "Support zipitz2"
882         select CPU_PXA
883
884 config TARGET_COLIBRI_PXA270
885         bool "Support colibri_pxa270"
886         select CPU_PXA
887
888 config ARCH_UNIPHIER
889         bool "Socionext UniPhier SoCs"
890         select CLK_UNIPHIER
891         select DM
892         select DM_GPIO
893         select DM_I2C
894         select DM_MMC
895         select DM_RESET
896         select DM_SERIAL
897         select DM_USB
898         select OF_CONTROL
899         select OF_LIBFDT
900         select PINCTRL
901         select SPL_DM if SPL
902         select SPL_LIBCOMMON_SUPPORT if SPL
903         select SPL_LIBGENERIC_SUPPORT if SPL
904         select SPL_OF_CONTROL if SPL
905         select SPL_PINCTRL if SPL
906         select SUPPORT_SPL
907         help
908           Support for UniPhier SoC family developed by Socionext Inc.
909           (formerly, System LSI Business Division of Panasonic Corporation)
910
911 config STM32
912         bool "Support STM32"
913         select CPU_V7M
914         select DM
915         select DM_SERIAL
916
917 config ARCH_ROCKCHIP
918         bool "Support Rockchip SoCs"
919         select OF_CONTROL
920         select BLK
921         select DM
922         select SPL_DM if SPL
923         select SYS_MALLOC_F
924         select SPL_SYS_MALLOC_SIMPLE if SPL
925         select DM_GPIO
926         select DM_I2C
927         select DM_MMC
928         select DM_MMC_OPS
929         select DM_SERIAL
930         select DM_SPI
931         select DM_SPI_FLASH
932         select DM_USB if USB
933         select DM_PWM
934         select DM_REGULATOR
935
936 config TARGET_THUNDERX_88XX
937         bool "Support ThunderX 88xx"
938         select ARM64
939         select OF_CONTROL
940         select SYS_CACHE_SHIFT_7
941
942 endchoice
943
944 source "arch/arm/mach-at91/Kconfig"
945
946 source "arch/arm/mach-bcm283x/Kconfig"
947
948 source "arch/arm/mach-davinci/Kconfig"
949
950 source "arch/arm/mach-exynos/Kconfig"
951
952 source "arch/arm/mach-highbank/Kconfig"
953
954 source "arch/arm/mach-integrator/Kconfig"
955
956 source "arch/arm/mach-keystone/Kconfig"
957
958 source "arch/arm/mach-kirkwood/Kconfig"
959
960 source "arch/arm/mach-litesom/Kconfig"
961
962 source "arch/arm/mach-mvebu/Kconfig"
963
964 source "arch/arm/cpu/armv7/ls102xa/Kconfig"
965
966 source "arch/arm/cpu/armv7/mx7/Kconfig"
967
968 source "arch/arm/cpu/armv7/mx6/Kconfig"
969
970 source "arch/arm/cpu/armv7/mx5/Kconfig"
971
972 source "arch/arm/mach-omap2/Kconfig"
973
974 source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
975
976 source "arch/arm/mach-orion5x/Kconfig"
977
978 source "arch/arm/mach-rmobile/Kconfig"
979
980 source "arch/arm/mach-meson/Kconfig"
981
982 source "arch/arm/mach-rockchip/Kconfig"
983
984 source "arch/arm/mach-s5pc1xx/Kconfig"
985
986 source "arch/arm/mach-snapdragon/Kconfig"
987
988 source "arch/arm/mach-socfpga/Kconfig"
989
990 source "arch/arm/mach-stm32/Kconfig"
991
992 source "arch/arm/mach-tegra/Kconfig"
993
994 source "arch/arm/mach-uniphier/Kconfig"
995
996 source "arch/arm/mach-zynq/Kconfig"
997
998 source "arch/arm/cpu/armv7/Kconfig"
999
1000 source "arch/arm/cpu/armv8/zynqmp/Kconfig"
1001
1002 source "arch/arm/cpu/armv8/Kconfig"
1003
1004 source "arch/arm/imx-common/Kconfig"
1005
1006 source "board/bosch/shc/Kconfig"
1007 source "board/BuR/brxre1/Kconfig"
1008 source "board/BuR/brppt1/Kconfig"
1009 source "board/CarMediaLab/flea3/Kconfig"
1010 source "board/Marvell/aspenite/Kconfig"
1011 source "board/Marvell/gplugd/Kconfig"
1012 source "board/armadeus/apf27/Kconfig"
1013 source "board/armltd/vexpress/Kconfig"
1014 source "board/armltd/vexpress64/Kconfig"
1015 source "board/bluegiga/apx4devkit/Kconfig"
1016 source "board/broadcom/bcm23550_w1d/Kconfig"
1017 source "board/broadcom/bcm28155_ap/Kconfig"
1018 source "board/broadcom/bcmcygnus/Kconfig"
1019 source "board/broadcom/bcmnsp/Kconfig"
1020 source "board/cavium/thunderx/Kconfig"
1021 source "board/cirrus/edb93xx/Kconfig"
1022 source "board/compulab/cm_t335/Kconfig"
1023 source "board/compulab/cm_t43/Kconfig"
1024 source "board/creative/xfi3/Kconfig"
1025 source "board/denx/m28evk/Kconfig"
1026 source "board/denx/m53evk/Kconfig"
1027 source "board/freescale/ls2080a/Kconfig"
1028 source "board/freescale/ls2080aqds/Kconfig"
1029 source "board/freescale/ls2080ardb/Kconfig"
1030 source "board/freescale/ls1021aqds/Kconfig"
1031 source "board/freescale/ls1043aqds/Kconfig"
1032 source "board/freescale/ls1021atwr/Kconfig"
1033 source "board/freescale/ls1021aiot/Kconfig"
1034 source "board/freescale/ls1046aqds/Kconfig"
1035 source "board/freescale/ls1043ardb/Kconfig"
1036 source "board/freescale/ls1046ardb/Kconfig"
1037 source "board/freescale/ls1012aqds/Kconfig"
1038 source "board/freescale/ls1012ardb/Kconfig"
1039 source "board/freescale/ls1012afrdm/Kconfig"
1040 source "board/freescale/mx23evk/Kconfig"
1041 source "board/freescale/mx25pdk/Kconfig"
1042 source "board/freescale/mx28evk/Kconfig"
1043 source "board/freescale/mx31ads/Kconfig"
1044 source "board/freescale/mx31pdk/Kconfig"
1045 source "board/freescale/mx35pdk/Kconfig"
1046 source "board/freescale/mx51evk/Kconfig"
1047 source "board/freescale/mx53ard/Kconfig"
1048 source "board/freescale/mx53evk/Kconfig"
1049 source "board/freescale/mx53loco/Kconfig"
1050 source "board/freescale/mx53smd/Kconfig"
1051 source "board/freescale/s32v234evb/Kconfig"
1052 source "board/freescale/vf610twr/Kconfig"
1053 source "board/gumstix/pepper/Kconfig"
1054 source "board/h2200/Kconfig"
1055 source "board/hisilicon/hikey/Kconfig"
1056 source "board/imx31_phycore/Kconfig"
1057 source "board/isee/igep0033/Kconfig"
1058 source "board/olimex/mx23_olinuxino/Kconfig"
1059 source "board/phytec/pcm051/Kconfig"
1060 source "board/phytec/pcm052/Kconfig"
1061 source "board/ppcag/bg0900/Kconfig"
1062 source "board/sandisk/sansa_fuze_plus/Kconfig"
1063 source "board/schulercontrol/sc_sps_1/Kconfig"
1064 source "board/siemens/draco/Kconfig"
1065 source "board/siemens/pxm2/Kconfig"
1066 source "board/siemens/rut/Kconfig"
1067 source "board/silica/pengwyn/Kconfig"
1068 source "board/spear/spear300/Kconfig"
1069 source "board/spear/spear310/Kconfig"
1070 source "board/spear/spear320/Kconfig"
1071 source "board/spear/spear600/Kconfig"
1072 source "board/spear/x600/Kconfig"
1073 source "board/st/stv0991/Kconfig"
1074 source "board/sunxi/Kconfig"
1075 source "board/syteco/zmx25/Kconfig"
1076 source "board/tcl/sl50/Kconfig"
1077 source "board/ti/am335x/Kconfig"
1078 source "board/ti/am43xx/Kconfig"
1079 source "board/birdland/bav335x/Kconfig"
1080 source "board/ti/ti814x/Kconfig"
1081 source "board/ti/ti816x/Kconfig"
1082 source "board/timll/devkit3250/Kconfig"
1083 source "board/toradex/colibri_pxa270/Kconfig"
1084 source "board/toradex/colibri_vf/Kconfig"
1085 source "board/technologic/ts4600/Kconfig"
1086 source "board/technologic/ts4800/Kconfig"
1087 source "board/vscom/baltos/Kconfig"
1088 source "board/woodburn/Kconfig"
1089 source "board/work-microwave/work_92105/Kconfig"
1090 source "board/zipitz2/Kconfig"
1091
1092 source "arch/arm/Kconfig.debug"
1093
1094 endmenu