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