Convert CONFIG_BOARD_EARLY_INIT_F to Kconfig
[platform/kernel/u-boot.git] / arch / arm / Kconfig
1 menu "ARM architecture"
2         depends on ARM
3
4 config SYS_ARCH
5         default "arm"
6
7 config ARM64
8         bool
9         select PHYS_64BIT
10         select SYS_CACHE_SHIFT_6
11
12 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         select BOARD_EARLY_INIT_F
205
206 config ARCH_MVEBU
207         bool "Marvell MVEBU family (Armada XP/375/38x/3700/7K/8K)"
208         select OF_CONTROL
209         select OF_SEPARATE
210         select DM
211         select DM_ETH
212         select DM_SERIAL
213         select DM_SPI
214         select DM_SPI_FLASH
215
216 config TARGET_DEVKIT3250
217         bool "Support devkit3250"
218         select CPU_ARM926EJS
219         select SUPPORT_SPL
220
221 config TARGET_WORK_92105
222         bool "Support work_92105"
223         select CPU_ARM926EJS
224         select SUPPORT_SPL
225
226 config TARGET_MX25PDK
227         bool "Support mx25pdk"
228         select BOARD_LATE_INIT
229         select CPU_ARM926EJS
230         select BOARD_EARLY_INIT_F
231
232 config TARGET_ZMX25
233         bool "Support zmx25"
234         select BOARD_LATE_INIT
235         select CPU_ARM926EJS
236
237 config TARGET_APF27
238         bool "Support apf27"
239         select CPU_ARM926EJS
240         select SUPPORT_SPL
241
242 config TARGET_APX4DEVKIT
243         bool "Support apx4devkit"
244         select CPU_ARM926EJS
245         select SUPPORT_SPL
246
247 config TARGET_XFI3
248         bool "Support xfi3"
249         select CPU_ARM926EJS
250         select SUPPORT_SPL
251
252 config TARGET_M28EVK
253         bool "Support m28evk"
254         select CPU_ARM926EJS
255         select SUPPORT_SPL
256
257 config TARGET_MX23EVK
258         bool "Support mx23evk"
259         select CPU_ARM926EJS
260         select SUPPORT_SPL
261         select BOARD_EARLY_INIT_F
262
263 config TARGET_MX28EVK
264         bool "Support mx28evk"
265         select CPU_ARM926EJS
266         select SUPPORT_SPL
267         select BOARD_EARLY_INIT_F
268
269 config TARGET_MX23_OLINUXINO
270         bool "Support mx23_olinuxino"
271         select CPU_ARM926EJS
272         select SUPPORT_SPL
273         select BOARD_EARLY_INIT_F
274
275 config TARGET_BG0900
276         bool "Support bg0900"
277         select CPU_ARM926EJS
278         select SUPPORT_SPL
279
280 config TARGET_SANSA_FUZE_PLUS
281         bool "Support sansa_fuze_plus"
282         select CPU_ARM926EJS
283         select SUPPORT_SPL
284
285 config TARGET_SC_SPS_1
286         bool "Support sc_sps_1"
287         select CPU_ARM926EJS
288         select SUPPORT_SPL
289
290 config ORION5X
291         bool "Marvell Orion"
292         select CPU_ARM926EJS
293
294 config TARGET_SPEAR300
295         bool "Support spear300"
296         select CPU_ARM926EJS
297         select BOARD_EARLY_INIT_F
298
299 config TARGET_SPEAR310
300         bool "Support spear310"
301         select CPU_ARM926EJS
302         select BOARD_EARLY_INIT_F
303
304 config TARGET_SPEAR320
305         bool "Support spear320"
306         select CPU_ARM926EJS
307         select BOARD_EARLY_INIT_F
308
309 config TARGET_SPEAR600
310         bool "Support spear600"
311         select CPU_ARM926EJS
312         select BOARD_EARLY_INIT_F
313
314 config TARGET_STV0991
315         bool "Support stv0991"
316         select CPU_V7
317         select DM
318         select DM_SERIAL
319         select DM_SPI
320         select DM_SPI_FLASH
321         select SPI_FLASH
322
323 config TARGET_X600
324         bool "Support x600"
325         select BOARD_LATE_INIT
326         select CPU_ARM926EJS
327         select SUPPORT_SPL
328
329 config TARGET_IMX31_PHYCORE
330         bool "Support imx31_phycore_eet"
331         select CPU_ARM1136
332         select BOARD_EARLY_INIT_F
333
334 config TARGET_IMX31_PHYCORE_EET
335         bool "Support imx31_phycore_eet"
336         select BOARD_LATE_INIT
337         select CPU_ARM1136
338         select BOARD_EARLY_INIT_F
339
340 config TARGET_MX31ADS
341         bool "Support mx31ads"
342         select CPU_ARM1136
343         select BOARD_EARLY_INIT_F
344
345 config TARGET_MX31PDK
346         bool "Support mx31pdk"
347         select BOARD_LATE_INIT
348         select CPU_ARM1136
349         select SUPPORT_SPL
350         select BOARD_EARLY_INIT_F
351
352 config TARGET_WOODBURN
353         bool "Support woodburn"
354         select CPU_ARM1136
355
356 config TARGET_WOODBURN_SD
357         bool "Support woodburn_sd"
358         select CPU_ARM1136
359         select SUPPORT_SPL
360
361 config TARGET_FLEA3
362         bool "Support flea3"
363         select CPU_ARM1136
364
365 config TARGET_MX35PDK
366         bool "Support mx35pdk"
367         select BOARD_LATE_INIT
368         select CPU_ARM1136
369
370 config ARCH_BCM283X
371         bool "Broadcom BCM283X family"
372         select DM
373         select DM_SERIAL
374         select DM_GPIO
375         select OF_CONTROL
376
377 config TARGET_VEXPRESS_CA15_TC2
378         bool "Support vexpress_ca15_tc2"
379         select CPU_V7
380         select CPU_V7_HAS_NONSEC
381         select CPU_V7_HAS_VIRT
382
383 config TARGET_VEXPRESS_CA5X2
384         bool "Support vexpress_ca5x2"
385         select CPU_V7
386
387 config TARGET_VEXPRESS_CA9X4
388         bool "Support vexpress_ca9x4"
389         select CPU_V7
390
391 config TARGET_BRXRE1
392         bool "Support BRXRE1"
393         select ARCH_OMAP2
394         select BOARD_LATE_INIT
395
396 config TARGET_BRPPT1
397         bool "Support BRPPT1"
398         select ARCH_OMAP2
399         select BOARD_LATE_INIT
400
401 config TARGET_DRACO
402         bool "Support draco"
403         select ARCH_OMAP2
404         select BOARD_LATE_INIT
405         select DM
406         select DM_SERIAL
407         select DM_GPIO
408
409 config TARGET_THUBAN
410         bool "Support thuban"
411         select ARCH_OMAP2
412         select BOARD_LATE_INIT
413         select DM
414         select DM_SERIAL
415         select DM_GPIO
416
417 config TARGET_RASTABAN
418         bool "Support rastaban"
419         select ARCH_OMAP2
420         select BOARD_LATE_INIT
421         select DM
422         select DM_SERIAL
423         select DM_GPIO
424
425 config TARGET_ETAMIN
426         bool "Support etamin"
427         select ARCH_OMAP2
428         select BOARD_LATE_INIT
429         select DM
430         select DM_SERIAL
431         select DM_GPIO
432
433 config TARGET_PXM2
434         bool "Support pxm2"
435         select ARCH_OMAP2
436         select BOARD_LATE_INIT
437         select DM
438         select DM_SERIAL
439         select DM_GPIO
440
441 config TARGET_RUT
442         bool "Support rut"
443         select ARCH_OMAP2
444         select BOARD_LATE_INIT
445         select DM
446         select DM_SERIAL
447         select DM_GPIO
448
449 config TARGET_TI814X_EVM
450         bool "Support ti814x_evm"
451         select ARCH_OMAP2
452
453 config TARGET_TI816X_EVM
454         bool "Support ti816x_evm"
455         select ARCH_OMAP2
456
457 config TARGET_BCM23550_W1D
458         bool "Support bcm23550_w1d"
459         select CPU_V7
460
461 config TARGET_BCM28155_AP
462         bool "Support bcm28155_ap"
463         select CPU_V7
464
465 config TARGET_BCMCYGNUS
466         bool "Support bcmcygnus"
467         select CPU_V7
468
469 config TARGET_BCMNSP
470         bool "Support bcmnsp"
471         select CPU_V7
472
473 config ARCH_EXYNOS
474         bool "Samsung EXYNOS"
475         select DM
476         select DM_I2C
477         select DM_SPI_FLASH
478         select DM_SERIAL
479         select DM_SPI
480         select DM_GPIO
481         select DM_KEYBOARD
482
483 config ARCH_S5PC1XX
484         bool "Samsung S5PC1XX"
485         select CPU_V7
486         select DM
487         select DM_SERIAL
488         select DM_GPIO
489         select DM_I2C
490
491 config ARCH_HIGHBANK
492         bool "Calxeda Highbank"
493         select CPU_V7
494
495 config ARCH_INTEGRATOR
496         bool "ARM Ltd. Integrator family"
497         select DM
498         select DM_SERIAL
499
500 config ARCH_KEYSTONE
501         bool "TI Keystone"
502         select CPU_V7
503         select SUPPORT_SPL
504         select CMD_POWEROFF
505
506 config ARCH_MESON
507         bool "Amlogic Meson"
508         help
509           Support for the Meson SoC family developed by Amlogic Inc.,
510           targeted at media players and tablet computers. We currently
511           support the S905 (GXBaby) 64-bit SoC.
512
513 config ARCH_MX7
514         bool "Freescale MX7"
515         select CPU_V7
516         select SYS_FSL_HAS_SEC if SECURE_BOOT
517         select SYS_FSL_SEC_COMPAT_4
518         select SYS_FSL_SEC_LE
519         select BOARD_EARLY_INIT_F
520
521 config ARCH_MX6
522         bool "Freescale MX6"
523         select CPU_V7
524         select SYS_FSL_HAS_SEC if SECURE_BOOT
525         select SYS_FSL_SEC_COMPAT_4
526         select SYS_FSL_SEC_LE
527
528 config ARCH_MX5
529         bool "Freescale MX5"
530         select CPU_V7
531         select BOARD_EARLY_INIT_F
532
533 config TARGET_M53EVK
534         bool "Support m53evk"
535         select CPU_V7
536         select SUPPORT_SPL
537         select BOARD_EARLY_INIT_F
538
539 config TARGET_MX51EVK
540         bool "Support mx51evk"
541         select BOARD_LATE_INIT
542         select CPU_V7
543         select BOARD_EARLY_INIT_F
544
545 config TARGET_MX53ARD
546         bool "Support mx53ard"
547         select CPU_V7
548         select BOARD_EARLY_INIT_F
549
550 config TARGET_MX53EVK
551         bool "Support mx53evk"
552         select BOARD_LATE_INIT
553         select CPU_V7
554         select BOARD_EARLY_INIT_F
555
556 config TARGET_MX53LOCO
557         bool "Support mx53loco"
558         select BOARD_LATE_INIT
559         select CPU_V7
560         select BOARD_EARLY_INIT_F
561
562 config TARGET_MX53SMD
563         bool "Support mx53smd"
564         select CPU_V7
565         select BOARD_EARLY_INIT_F
566
567 config OMAP34XX
568         bool "OMAP34XX SoC"
569         select ARCH_OMAP2
570         select USE_TINY_PRINTF
571
572 config OMAP44XX
573         bool "OMAP44XX SoC"
574         select ARCH_OMAP2
575         select USE_TINY_PRINTF
576
577 config OMAP54XX
578         bool "OMAP54XX SoC"
579         select ARCH_OMAP2
580
581 config AM43XX
582         bool "AM43XX SoC"
583         select ARCH_OMAP2
584         help
585           Support for AM43xx SOC from Texas Instruments.
586           The AM43xx high performance SOC features a Cortex-A9
587           ARM core, a quad core PRU-ICSS for industrial Ethernet
588           protocols, dual camera support, optional 3D graphics
589           and an optional customer programmable secure boot.
590
591 config AM33XX
592         bool "AM33XX SoC"
593         select ARCH_OMAP2
594         help
595           Support for AM335x SOC from Texas Instruments.
596           The AM335x high performance SOC features a Cortex-A8
597           ARM core, a dual core PRU-ICSS for industrial Ethernet
598           protocols, optional 3D graphics and an optional customer
599           programmable secure boot.
600
601 config ARCH_RMOBILE
602         bool "Renesas ARM SoCs"
603         select DM
604         select DM_SERIAL
605         select BOARD_EARLY_INIT_F
606
607 config TARGET_S32V234EVB
608         bool "Support s32v234evb"
609         select ARM64
610         select SYS_FSL_ERRATUM_ESDHC111
611
612 config ARCH_SNAPDRAGON
613         bool "Qualcomm Snapdragon SoCs"
614         select ARM64
615         select DM
616         select DM_GPIO
617         select DM_SERIAL
618         select SPMI
619         select OF_CONTROL
620         select OF_SEPARATE
621
622 config ARCH_SOCFPGA
623         bool "Altera SOCFPGA family"
624         select CPU_V7
625         select SUPPORT_SPL
626         select OF_CONTROL
627         select SPL_OF_CONTROL
628         select DM
629         select DM_SPI_FLASH
630         select DM_SPI
631         select ENABLE_ARM_SOC_BOOT0_HOOK
632         select ARCH_EARLY_INIT_R
633
634 config TARGET_CM_T43
635         bool "Support cm_t43"
636         select ARCH_OMAP2
637
638 config ARCH_SUNXI
639         bool "Support sunxi (Allwinner) SoCs"
640         select CMD_GPIO
641         select CMD_MMC if MMC
642         select CMD_USB if DISTRO_DEFAULTS
643         select DM
644         select DM_ETH
645         select DM_GPIO
646         select DM_KEYBOARD
647         select DM_SERIAL
648         select DM_USB if DISTRO_DEFAULTS
649         select OF_BOARD_SETUP
650         select OF_CONTROL
651         select OF_SEPARATE
652         select SPL_STACK_R if SUPPORT_SPL
653         select SPL_SYS_MALLOC_SIMPLE if SUPPORT_SPL
654         select SYS_NS16550
655         select USB if DISTRO_DEFAULTS
656         select USB_STORAGE if DISTRO_DEFAULTS
657         select USB_KEYBOARD if DISTRO_DEFAULTS
658         select USE_TINY_PRINTF
659
660 config TARGET_TS4600
661         bool "Support TS4600"
662         select CPU_ARM926EJS
663         select SUPPORT_SPL
664
665 config TARGET_TS4800
666         bool "Support TS4800"
667         select CPU_V7
668         select SYS_FSL_ERRATUM_ESDHC_A001
669
670 config TARGET_VF610TWR
671         bool "Support vf610twr"
672         select CPU_V7
673         select SYS_FSL_ERRATUM_ESDHC111
674
675 config TARGET_COLIBRI_VF
676         bool "Support Colibri VF50/61"
677         select BOARD_LATE_INIT
678         select CPU_V7
679         select SYS_FSL_ERRATUM_ESDHC111
680
681 config TARGET_PCM052
682         bool "Support pcm-052"
683         select CPU_V7
684         select SYS_FSL_ERRATUM_ESDHC111
685         select SYS_FSL_ERRATUM_ESDHC135
686         select SYS_FSL_ERRATUM_ESDHC_A001
687
688 config TARGET_BK4R1
689         bool "Support BK4r1"
690         select CPU_V7
691         select SYS_FSL_ERRATUM_ESDHC111
692         select SYS_FSL_ERRATUM_ESDHC135
693         select SYS_FSL_ERRATUM_ESDHC_A001
694
695 config ARCH_ZYNQ
696         bool "Xilinx Zynq Platform"
697         select BOARD_LATE_INIT
698         select CPU_V7
699         select SUPPORT_SPL
700         select OF_CONTROL
701         select SPL_OF_CONTROL if SPL
702         select DM
703         select DM_ETH
704         select DM_GPIO
705         select SPL_DM if SPL
706         select DM_MMC
707         select DM_MMC_OPS
708         select DM_SPI
709         select DM_SERIAL
710         select DM_SPI_FLASH
711         select SPL_SEPARATE_BSS if SPL
712         select DM_USB if USB
713         select BLK
714
715 config ARCH_ZYNQMP
716         bool "Support Xilinx ZynqMP Platform"
717         select ARM64
718         select BOARD_LATE_INIT
719         select DM
720         select OF_CONTROL
721         select DM_SERIAL
722         select SUPPORT_SPL
723         select CLK
724         select SPL_CLK
725         select DM_USB if USB
726
727 config TEGRA
728         bool "NVIDIA Tegra"
729
730 config TARGET_VEXPRESS64_AEMV8A
731         bool "Support vexpress_aemv8a"
732         select ARM64
733
734 config TARGET_VEXPRESS64_BASE_FVP
735         bool "Support Versatile Express ARMv8a FVP BASE model"
736         select ARM64
737         select SEMIHOSTING
738
739 config TARGET_VEXPRESS64_BASE_FVP_DRAM
740         bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
741         select ARM64
742         help
743           This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
744           the default config to allow the user to load the images directly into
745           DRAM using model parameters rather than by using semi-hosting to load
746           the files from the host filesystem.
747
748 config TARGET_VEXPRESS64_JUNO
749         bool "Support Versatile Express Juno Development Platform"
750         select ARM64
751
752 config TARGET_LS2080A_EMU
753         bool "Support ls2080a_emu"
754         select ARCH_LS2080A
755         select ARM64
756         select ARMV8_MULTIENTRY
757         help
758           Support for Freescale LS2080A_EMU platform
759           The LS2080A Development System (EMULATOR) is a pre silicon
760           development platform that supports the QorIQ LS2080A
761           Layerscape Architecture processor.
762
763 config TARGET_LS2080A_SIMU
764         bool "Support ls2080a_simu"
765         select ARCH_LS2080A
766         select ARM64
767         select ARMV8_MULTIENTRY
768         help
769           Support for Freescale LS2080A_SIMU platform
770           The LS2080A Development System (QDS) is a pre silicon
771           development platform that supports the QorIQ LS2080A
772           Layerscape Architecture processor.
773
774 config TARGET_LS2080AQDS
775         bool "Support ls2080aqds"
776         select ARCH_LS2080A
777         select ARM64
778         select ARMV8_MULTIENTRY
779         select BOARD_LATE_INIT
780         select SUPPORT_SPL
781         help
782           Support for Freescale LS2080AQDS platform
783           The LS2080A Development System (QDS) is a high-performance
784           development platform that supports the QorIQ LS2080A
785           Layerscape Architecture processor.
786
787 config TARGET_LS2080ARDB
788         bool "Support ls2080ardb"
789         select ARCH_LS2080A
790         select ARM64
791         select ARMV8_MULTIENTRY
792         select BOARD_LATE_INIT
793         select SUPPORT_SPL
794         help
795           Support for Freescale LS2080ARDB platform.
796           The LS2080A Reference design board (RDB) is a high-performance
797           development platform that supports the QorIQ LS2080A
798           Layerscape Architecture processor.
799
800 config TARGET_HIKEY
801         bool "Support HiKey 96boards Consumer Edition Platform"
802         select ARM64
803         select DM
804         select DM_GPIO
805         select DM_SERIAL
806         select OF_CONTROL
807           help
808           Support for HiKey 96boards platform. It features a HI6220
809           SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
810
811 config TARGET_LS1012AQDS
812         bool "Support ls1012aqds"
813         select ARCH_LS1012A
814         select ARM64
815         select BOARD_LATE_INIT
816         help
817           Support for Freescale LS1012AQDS platform.
818           The LS1012A Development System (QDS) is a high-performance
819           development platform that supports the QorIQ LS1012A
820           Layerscape Architecture processor.
821
822 config TARGET_LS1012ARDB
823         bool "Support ls1012ardb"
824         select ARCH_LS1012A
825         select ARM64
826         select BOARD_LATE_INIT
827         help
828           Support for Freescale LS1012ARDB platform.
829           The LS1012A Reference design board (RDB) is a high-performance
830           development platform that supports the QorIQ LS1012A
831           Layerscape Architecture processor.
832
833 config TARGET_LS1012AFRDM
834         bool "Support ls1012afrdm"
835         select ARCH_LS1012A
836         select ARM64
837         help
838           Support for Freescale LS1012AFRDM platform.
839           The LS1012A Freedom  board (FRDM) is a high-performance
840           development platform that supports the QorIQ LS1012A
841           Layerscape Architecture processor.
842
843 config TARGET_LS1021AQDS
844         bool "Support ls1021aqds"
845         select BOARD_LATE_INIT
846         select CPU_V7
847         select CPU_V7_HAS_NONSEC
848         select CPU_V7_HAS_VIRT
849         select SUPPORT_SPL
850         select ARCH_LS1021A
851         select ARCH_SUPPORT_PSCI
852         select LS1_DEEP_SLEEP
853         select SYS_FSL_DDR
854         select BOARD_EARLY_INIT_F
855
856 config TARGET_LS1021ATWR
857         bool "Support ls1021atwr"
858         select BOARD_LATE_INIT
859         select CPU_V7
860         select CPU_V7_HAS_NONSEC
861         select CPU_V7_HAS_VIRT
862         select SUPPORT_SPL
863         select ARCH_LS1021A
864         select ARCH_SUPPORT_PSCI
865         select LS1_DEEP_SLEEP
866         select BOARD_EARLY_INIT_F
867
868 config TARGET_LS1021AIOT
869         bool "Support ls1021aiot"
870         select BOARD_LATE_INIT
871         select CPU_V7
872         select CPU_V7_HAS_NONSEC
873         select CPU_V7_HAS_VIRT
874         select SUPPORT_SPL
875         select ARCH_LS1021A
876         select ARCH_SUPPORT_PSCI
877         help
878           Support for Freescale LS1021AIOT platform.
879           The LS1021A Freescale board (IOT) is a high-performance
880           development platform that supports the QorIQ LS1021A
881           Layerscape Architecture processor.
882
883 config TARGET_LS1043AQDS
884         bool "Support ls1043aqds"
885         select ARCH_LS1043A
886         select ARM64
887         select ARMV8_MULTIENTRY
888         select BOARD_LATE_INIT
889         select SUPPORT_SPL
890         select BOARD_EARLY_INIT_F
891         help
892           Support for Freescale LS1043AQDS platform.
893
894 config TARGET_LS1043ARDB
895         bool "Support ls1043ardb"
896         select ARCH_LS1043A
897         select ARM64
898         select ARMV8_MULTIENTRY
899         select BOARD_LATE_INIT
900         select SUPPORT_SPL
901         select BOARD_EARLY_INIT_F
902         help
903           Support for Freescale LS1043ARDB platform.
904
905 config TARGET_LS1046AQDS
906         bool "Support ls1046aqds"
907         select ARCH_LS1046A
908         select ARM64
909         select ARMV8_MULTIENTRY
910         select BOARD_LATE_INIT
911         select SUPPORT_SPL
912         select DM_SPI_FLASH if DM_SPI
913         select BOARD_EARLY_INIT_F
914         help
915           Support for Freescale LS1046AQDS platform.
916           The LS1046A Development System (QDS) is a high-performance
917           development platform that supports the QorIQ LS1046A
918           Layerscape Architecture processor.
919
920 config TARGET_LS1046ARDB
921         bool "Support ls1046ardb"
922         select ARCH_LS1046A
923         select ARM64
924         select ARMV8_MULTIENTRY
925         select BOARD_LATE_INIT
926         select SUPPORT_SPL
927         select DM_SPI_FLASH if DM_SPI
928         select POWER_MC34VR500
929         select BOARD_EARLY_INIT_F
930         help
931           Support for Freescale LS1046ARDB platform.
932           The LS1046A Reference Design Board (RDB) is a high-performance
933           development platform that supports the QorIQ LS1046A
934           Layerscape Architecture processor.
935
936 config TARGET_H2200
937         bool "Support h2200"
938         select CPU_PXA
939
940 config TARGET_ZIPITZ2
941         bool "Support zipitz2"
942         select CPU_PXA
943
944 config TARGET_COLIBRI_PXA270
945         bool "Support colibri_pxa270"
946         select CPU_PXA
947
948 config ARCH_UNIPHIER
949         bool "Socionext UniPhier SoCs"
950         select BOARD_LATE_INIT
951         select CLK_UNIPHIER
952         select DM
953         select DM_GPIO
954         select DM_I2C
955         select DM_MMC
956         select DM_RESET
957         select DM_SERIAL
958         select DM_USB
959         select OF_CONTROL
960         select OF_LIBFDT
961         select PINCTRL
962         select SPL_DM if SPL
963         select SPL_LIBCOMMON_SUPPORT if SPL
964         select SPL_LIBGENERIC_SUPPORT if SPL
965         select SPL_OF_CONTROL if SPL
966         select SPL_PINCTRL if SPL
967         select SUPPORT_SPL
968         help
969           Support for UniPhier SoC family developed by Socionext Inc.
970           (formerly, System LSI Business Division of Panasonic Corporation)
971
972 config STM32
973         bool "Support STM32"
974         select CPU_V7M
975         select DM
976         select DM_SERIAL
977
978 config ARCH_ROCKCHIP
979         bool "Support Rockchip SoCs"
980         select OF_CONTROL
981         select BLK
982         select DM
983         select SPL_DM if SPL
984         select SYS_MALLOC_F
985         select SPL_SYS_MALLOC_SIMPLE if SPL
986         select DM_GPIO
987         select DM_I2C
988         select DM_MMC
989         select DM_MMC_OPS
990         select DM_SERIAL
991         select DM_SPI
992         select DM_SPI_FLASH
993         select DM_USB if USB
994         select DM_PWM
995         select DM_REGULATOR
996
997 config TARGET_THUNDERX_88XX
998         bool "Support ThunderX 88xx"
999         select ARM64
1000         select OF_CONTROL
1001         select SYS_CACHE_SHIFT_7
1002
1003 endchoice
1004
1005 source "arch/arm/mach-at91/Kconfig"
1006
1007 source "arch/arm/mach-bcm283x/Kconfig"
1008
1009 source "arch/arm/mach-davinci/Kconfig"
1010
1011 source "arch/arm/mach-exynos/Kconfig"
1012
1013 source "arch/arm/mach-highbank/Kconfig"
1014
1015 source "arch/arm/mach-integrator/Kconfig"
1016
1017 source "arch/arm/mach-keystone/Kconfig"
1018
1019 source "arch/arm/mach-kirkwood/Kconfig"
1020
1021 source "arch/arm/mach-litesom/Kconfig"
1022
1023 source "arch/arm/mach-mvebu/Kconfig"
1024
1025 source "arch/arm/cpu/armv7/ls102xa/Kconfig"
1026
1027 source "arch/arm/cpu/armv7/mx7/Kconfig"
1028
1029 source "arch/arm/cpu/armv7/mx6/Kconfig"
1030
1031 source "arch/arm/cpu/armv7/mx5/Kconfig"
1032
1033 source "arch/arm/mach-omap2/Kconfig"
1034
1035 source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
1036
1037 source "arch/arm/mach-orion5x/Kconfig"
1038
1039 source "arch/arm/mach-rmobile/Kconfig"
1040
1041 source "arch/arm/mach-meson/Kconfig"
1042
1043 source "arch/arm/mach-rockchip/Kconfig"
1044
1045 source "arch/arm/mach-s5pc1xx/Kconfig"
1046
1047 source "arch/arm/mach-snapdragon/Kconfig"
1048
1049 source "arch/arm/mach-socfpga/Kconfig"
1050
1051 source "arch/arm/mach-stm32/Kconfig"
1052
1053 source "arch/arm/mach-tegra/Kconfig"
1054
1055 source "arch/arm/mach-uniphier/Kconfig"
1056
1057 source "arch/arm/mach-zynq/Kconfig"
1058
1059 source "arch/arm/cpu/armv7/Kconfig"
1060
1061 source "arch/arm/cpu/armv8/zynqmp/Kconfig"
1062
1063 source "arch/arm/cpu/armv8/Kconfig"
1064
1065 source "arch/arm/imx-common/Kconfig"
1066
1067 source "board/bosch/shc/Kconfig"
1068 source "board/BuR/brxre1/Kconfig"
1069 source "board/BuR/brppt1/Kconfig"
1070 source "board/CarMediaLab/flea3/Kconfig"
1071 source "board/Marvell/aspenite/Kconfig"
1072 source "board/Marvell/gplugd/Kconfig"
1073 source "board/armadeus/apf27/Kconfig"
1074 source "board/armltd/vexpress/Kconfig"
1075 source "board/armltd/vexpress64/Kconfig"
1076 source "board/bluegiga/apx4devkit/Kconfig"
1077 source "board/broadcom/bcm23550_w1d/Kconfig"
1078 source "board/broadcom/bcm28155_ap/Kconfig"
1079 source "board/broadcom/bcmcygnus/Kconfig"
1080 source "board/broadcom/bcmnsp/Kconfig"
1081 source "board/cavium/thunderx/Kconfig"
1082 source "board/cirrus/edb93xx/Kconfig"
1083 source "board/compulab/cm_t335/Kconfig"
1084 source "board/compulab/cm_t43/Kconfig"
1085 source "board/creative/xfi3/Kconfig"
1086 source "board/denx/m28evk/Kconfig"
1087 source "board/denx/m53evk/Kconfig"
1088 source "board/freescale/ls2080a/Kconfig"
1089 source "board/freescale/ls2080aqds/Kconfig"
1090 source "board/freescale/ls2080ardb/Kconfig"
1091 source "board/freescale/ls1021aqds/Kconfig"
1092 source "board/freescale/ls1043aqds/Kconfig"
1093 source "board/freescale/ls1021atwr/Kconfig"
1094 source "board/freescale/ls1021aiot/Kconfig"
1095 source "board/freescale/ls1046aqds/Kconfig"
1096 source "board/freescale/ls1043ardb/Kconfig"
1097 source "board/freescale/ls1046ardb/Kconfig"
1098 source "board/freescale/ls1012aqds/Kconfig"
1099 source "board/freescale/ls1012ardb/Kconfig"
1100 source "board/freescale/ls1012afrdm/Kconfig"
1101 source "board/freescale/mx23evk/Kconfig"
1102 source "board/freescale/mx25pdk/Kconfig"
1103 source "board/freescale/mx28evk/Kconfig"
1104 source "board/freescale/mx31ads/Kconfig"
1105 source "board/freescale/mx31pdk/Kconfig"
1106 source "board/freescale/mx35pdk/Kconfig"
1107 source "board/freescale/mx51evk/Kconfig"
1108 source "board/freescale/mx53ard/Kconfig"
1109 source "board/freescale/mx53evk/Kconfig"
1110 source "board/freescale/mx53loco/Kconfig"
1111 source "board/freescale/mx53smd/Kconfig"
1112 source "board/freescale/s32v234evb/Kconfig"
1113 source "board/freescale/vf610twr/Kconfig"
1114 source "board/gumstix/pepper/Kconfig"
1115 source "board/h2200/Kconfig"
1116 source "board/hisilicon/hikey/Kconfig"
1117 source "board/imx31_phycore/Kconfig"
1118 source "board/isee/igep0033/Kconfig"
1119 source "board/olimex/mx23_olinuxino/Kconfig"
1120 source "board/phytec/pcm051/Kconfig"
1121 source "board/phytec/pcm052/Kconfig"
1122 source "board/ppcag/bg0900/Kconfig"
1123 source "board/sandisk/sansa_fuze_plus/Kconfig"
1124 source "board/schulercontrol/sc_sps_1/Kconfig"
1125 source "board/siemens/draco/Kconfig"
1126 source "board/siemens/pxm2/Kconfig"
1127 source "board/siemens/rut/Kconfig"
1128 source "board/silica/pengwyn/Kconfig"
1129 source "board/spear/spear300/Kconfig"
1130 source "board/spear/spear310/Kconfig"
1131 source "board/spear/spear320/Kconfig"
1132 source "board/spear/spear600/Kconfig"
1133 source "board/spear/x600/Kconfig"
1134 source "board/st/stv0991/Kconfig"
1135 source "board/sunxi/Kconfig"
1136 source "board/syteco/zmx25/Kconfig"
1137 source "board/tcl/sl50/Kconfig"
1138 source "board/ti/am335x/Kconfig"
1139 source "board/ti/am43xx/Kconfig"
1140 source "board/birdland/bav335x/Kconfig"
1141 source "board/ti/ti814x/Kconfig"
1142 source "board/ti/ti816x/Kconfig"
1143 source "board/timll/devkit3250/Kconfig"
1144 source "board/toradex/colibri_pxa270/Kconfig"
1145 source "board/toradex/colibri_vf/Kconfig"
1146 source "board/technologic/ts4600/Kconfig"
1147 source "board/technologic/ts4800/Kconfig"
1148 source "board/vscom/baltos/Kconfig"
1149 source "board/woodburn/Kconfig"
1150 source "board/work-microwave/work_92105/Kconfig"
1151 source "board/zipitz2/Kconfig"
1152
1153 source "arch/arm/Kconfig.debug"
1154
1155 endmenu