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