xref: /openbmc/u-boot/arch/arm/Kconfig (revision 9d4f7a31)
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
574config OMAP44XX
575	bool "OMAP44XX SoC"
576	select ARCH_OMAP2
577	select USE_TINY_PRINTF
578
579config OMAP54XX
580	bool "OMAP54XX SoC"
581	select ARCH_OMAP2
582	imply SPL_DISPLAY_PRINT
583	imply SPL_ENV_SUPPORT
584	imply SPL_EXT_SUPPORT
585	imply SPL_FAT_SUPPORT
586	imply SPL_GPIO_SUPPORT
587	imply SPL_I2C_SUPPORT
588	imply SPL_LIBCOMMON_SUPPORT
589	imply SPL_LIBDISK_SUPPORT
590	imply SPL_LIBGENERIC_SUPPORT
591	imply SPL_MMC_SUPPORT
592	imply SPL_NAND_SUPPORT
593	imply SPL_POWER_SUPPORT
594	imply SPL_SERIAL_SUPPORT
595
596config AM43XX
597	bool "AM43XX SoC"
598	select ARCH_OMAP2
599	help
600	  Support for AM43xx SOC from Texas Instruments.
601	  The AM43xx high performance SOC features a Cortex-A9
602	  ARM core, a quad core PRU-ICSS for industrial Ethernet
603	  protocols, dual camera support, optional 3D graphics
604	  and an optional customer programmable secure boot.
605
606config AM33XX
607	bool "AM33XX SoC"
608	select ARCH_OMAP2
609	help
610	  Support for AM335x SOC from Texas Instruments.
611	  The AM335x high performance SOC features a Cortex-A8
612	  ARM core, a dual core PRU-ICSS for industrial Ethernet
613	  protocols, optional 3D graphics and an optional customer
614	  programmable secure boot.
615
616config ARCH_RMOBILE
617	bool "Renesas ARM SoCs"
618	select DM
619	select DM_SERIAL
620	select BOARD_EARLY_INIT_F
621
622config TARGET_S32V234EVB
623	bool "Support s32v234evb"
624	select ARM64
625	select SYS_FSL_ERRATUM_ESDHC111
626
627config ARCH_SNAPDRAGON
628	bool "Qualcomm Snapdragon SoCs"
629	select ARM64
630	select DM
631	select DM_GPIO
632	select DM_SERIAL
633	select SPMI
634	select OF_CONTROL
635	select OF_SEPARATE
636
637config ARCH_SOCFPGA
638	bool "Altera SOCFPGA family"
639	select CPU_V7
640	select SUPPORT_SPL
641	select OF_CONTROL
642	select SPL_OF_CONTROL
643	select DM
644	select DM_SPI_FLASH
645	select DM_SPI
646	select ENABLE_ARM_SOC_BOOT0_HOOK
647	select ARCH_EARLY_INIT_R
648	select ARCH_MISC_INIT
649	select SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
650
651config TARGET_CM_T43
652	bool "Support cm_t43"
653	select ARCH_OMAP2
654
655config ARCH_SUNXI
656	bool "Support sunxi (Allwinner) SoCs"
657	select CMD_GPIO
658	select CMD_MMC if MMC
659	select CMD_USB if DISTRO_DEFAULTS
660	select DM
661	select DM_ETH
662	select DM_GPIO
663	select DM_KEYBOARD
664	select DM_SERIAL
665	select DM_USB if DISTRO_DEFAULTS
666	select OF_BOARD_SETUP
667	select OF_CONTROL
668	select OF_SEPARATE
669	select SPL_STACK_R if SUPPORT_SPL
670	select SPL_SYS_MALLOC_SIMPLE if SUPPORT_SPL
671	select SYS_NS16550
672	select USB if DISTRO_DEFAULTS
673	select USB_STORAGE if DISTRO_DEFAULTS
674	select USB_KEYBOARD if DISTRO_DEFAULTS
675	select USE_TINY_PRINTF
676
677config TARGET_TS4600
678	bool "Support TS4600"
679	select CPU_ARM926EJS
680	select SUPPORT_SPL
681
682config TARGET_TS4800
683	bool "Support TS4800"
684	select CPU_V7
685	select SYS_FSL_ERRATUM_ESDHC_A001
686
687config TARGET_VF610TWR
688	bool "Support vf610twr"
689	select CPU_V7
690	select SYS_FSL_ERRATUM_ESDHC111
691
692config TARGET_COLIBRI_VF
693	bool "Support Colibri VF50/61"
694	select BOARD_LATE_INIT
695	select CPU_V7
696	select SYS_FSL_ERRATUM_ESDHC111
697
698config TARGET_PCM052
699	bool "Support pcm-052"
700	select CPU_V7
701	select SYS_FSL_ERRATUM_ESDHC111
702	select SYS_FSL_ERRATUM_ESDHC135
703	select SYS_FSL_ERRATUM_ESDHC_A001
704
705config TARGET_BK4R1
706	bool "Support BK4r1"
707	select CPU_V7
708	select SYS_FSL_ERRATUM_ESDHC111
709	select SYS_FSL_ERRATUM_ESDHC135
710	select SYS_FSL_ERRATUM_ESDHC_A001
711
712config ARCH_ZYNQ
713	bool "Xilinx Zynq Platform"
714	select BOARD_LATE_INIT
715	select CPU_V7
716	select SUPPORT_SPL
717	select OF_CONTROL
718	select SPL_OF_CONTROL if SPL
719	select DM
720	select DM_ETH
721	select DM_GPIO
722	select SPL_DM if SPL
723	select DM_MMC
724	select DM_MMC_OPS
725	select DM_SPI
726	select DM_SERIAL
727	select DM_SPI_FLASH
728	select SPL_SEPARATE_BSS if SPL
729	select DM_USB if USB
730	select BLK
731
732config ARCH_ZYNQMP
733	bool "Support Xilinx ZynqMP Platform"
734	select ARM64
735	select BOARD_LATE_INIT
736	select DM
737	select OF_CONTROL
738	select DM_SERIAL
739	select SUPPORT_SPL
740	select CLK
741	select SPL_CLK
742	select DM_USB if USB
743
744config TEGRA
745	bool "NVIDIA Tegra"
746
747config TARGET_VEXPRESS64_AEMV8A
748	bool "Support vexpress_aemv8a"
749	select ARM64
750
751config TARGET_VEXPRESS64_BASE_FVP
752	bool "Support Versatile Express ARMv8a FVP BASE model"
753	select ARM64
754	select SEMIHOSTING
755
756config TARGET_VEXPRESS64_BASE_FVP_DRAM
757	bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
758	select ARM64
759	help
760	  This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
761	  the default config to allow the user to load the images directly into
762	  DRAM using model parameters rather than by using semi-hosting to load
763	  the files from the host filesystem.
764
765config TARGET_VEXPRESS64_JUNO
766	bool "Support Versatile Express Juno Development Platform"
767	select ARM64
768
769config TARGET_LS2080A_EMU
770	bool "Support ls2080a_emu"
771	select ARCH_LS2080A
772	select ARM64
773	select ARMV8_MULTIENTRY
774	select ARCH_MISC_INIT
775	help
776	  Support for Freescale LS2080A_EMU platform
777	  The LS2080A Development System (EMULATOR) is a pre silicon
778	  development platform that supports the QorIQ LS2080A
779	  Layerscape Architecture processor.
780
781config TARGET_LS2080A_SIMU
782	bool "Support ls2080a_simu"
783	select ARCH_LS2080A
784	select ARM64
785	select ARMV8_MULTIENTRY
786	select ARCH_MISC_INIT
787	help
788	  Support for Freescale LS2080A_SIMU platform
789	  The LS2080A Development System (QDS) is a pre silicon
790	  development platform that supports the QorIQ LS2080A
791	  Layerscape Architecture processor.
792
793config TARGET_LS2080AQDS
794	bool "Support ls2080aqds"
795	select ARCH_LS2080A
796	select ARM64
797	select ARMV8_MULTIENTRY
798	select BOARD_LATE_INIT
799	select SUPPORT_SPL
800	select ARCH_MISC_INIT
801	help
802	  Support for Freescale LS2080AQDS platform
803	  The LS2080A Development System (QDS) is a high-performance
804	  development platform that supports the QorIQ LS2080A
805	  Layerscape Architecture processor.
806
807config TARGET_LS2080ARDB
808	bool "Support ls2080ardb"
809	select ARCH_LS2080A
810	select ARM64
811	select ARMV8_MULTIENTRY
812	select BOARD_LATE_INIT
813	select SUPPORT_SPL
814	select ARCH_MISC_INIT
815	help
816	  Support for Freescale LS2080ARDB platform.
817	  The LS2080A Reference design board (RDB) is a high-performance
818	  development platform that supports the QorIQ LS2080A
819	  Layerscape Architecture processor.
820
821config TARGET_HIKEY
822	bool "Support HiKey 96boards Consumer Edition Platform"
823	select ARM64
824	select DM
825	select DM_GPIO
826	select DM_SERIAL
827	select OF_CONTROL
828	  help
829	  Support for HiKey 96boards platform. It features a HI6220
830	  SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.
831
832config TARGET_LS1012AQDS
833	bool "Support ls1012aqds"
834	select ARCH_LS1012A
835	select ARM64
836	select BOARD_LATE_INIT
837	help
838	  Support for Freescale LS1012AQDS platform.
839	  The LS1012A Development System (QDS) is a high-performance
840	  development platform that supports the QorIQ LS1012A
841	  Layerscape Architecture processor.
842
843config TARGET_LS1012ARDB
844	bool "Support ls1012ardb"
845	select ARCH_LS1012A
846	select ARM64
847	select BOARD_LATE_INIT
848	help
849	  Support for Freescale LS1012ARDB platform.
850	  The LS1012A Reference design board (RDB) is a high-performance
851	  development platform that supports the QorIQ LS1012A
852	  Layerscape Architecture processor.
853
854config TARGET_LS1012AFRDM
855	bool "Support ls1012afrdm"
856	select ARCH_LS1012A
857	select ARM64
858	help
859	  Support for Freescale LS1012AFRDM platform.
860	  The LS1012A Freedom  board (FRDM) is a high-performance
861	  development platform that supports the QorIQ LS1012A
862	  Layerscape Architecture processor.
863
864config TARGET_LS1021AQDS
865	bool "Support ls1021aqds"
866	select BOARD_LATE_INIT
867	select CPU_V7
868	select CPU_V7_HAS_NONSEC
869	select CPU_V7_HAS_VIRT
870	select SUPPORT_SPL
871	select ARCH_LS1021A
872	select ARCH_SUPPORT_PSCI
873	select LS1_DEEP_SLEEP
874	select SYS_FSL_DDR
875	select BOARD_EARLY_INIT_F
876
877config TARGET_LS1021ATWR
878	bool "Support ls1021atwr"
879	select BOARD_LATE_INIT
880	select CPU_V7
881	select CPU_V7_HAS_NONSEC
882	select CPU_V7_HAS_VIRT
883	select SUPPORT_SPL
884	select ARCH_LS1021A
885	select ARCH_SUPPORT_PSCI
886	select LS1_DEEP_SLEEP
887	select BOARD_EARLY_INIT_F
888
889config TARGET_LS1021AIOT
890	bool "Support ls1021aiot"
891	select BOARD_LATE_INIT
892	select CPU_V7
893	select CPU_V7_HAS_NONSEC
894	select CPU_V7_HAS_VIRT
895	select SUPPORT_SPL
896	select ARCH_LS1021A
897	select ARCH_SUPPORT_PSCI
898	help
899	  Support for Freescale LS1021AIOT platform.
900	  The LS1021A Freescale board (IOT) is a high-performance
901	  development platform that supports the QorIQ LS1021A
902	  Layerscape Architecture processor.
903
904config TARGET_LS1043AQDS
905	bool "Support ls1043aqds"
906	select ARCH_LS1043A
907	select ARM64
908	select ARMV8_MULTIENTRY
909	select BOARD_LATE_INIT
910	select SUPPORT_SPL
911	select BOARD_EARLY_INIT_F
912	help
913	  Support for Freescale LS1043AQDS platform.
914
915config TARGET_LS1043ARDB
916	bool "Support ls1043ardb"
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 LS1043ARDB platform.
925
926config TARGET_LS1046AQDS
927	bool "Support ls1046aqds"
928	select ARCH_LS1046A
929	select ARM64
930	select ARMV8_MULTIENTRY
931	select BOARD_LATE_INIT
932	select SUPPORT_SPL
933	select DM_SPI_FLASH if DM_SPI
934	select BOARD_EARLY_INIT_F
935	help
936	  Support for Freescale LS1046AQDS platform.
937	  The LS1046A Development System (QDS) is a high-performance
938	  development platform that supports the QorIQ LS1046A
939	  Layerscape Architecture processor.
940
941config TARGET_LS1046ARDB
942	bool "Support ls1046ardb"
943	select ARCH_LS1046A
944	select ARM64
945	select ARMV8_MULTIENTRY
946	select BOARD_LATE_INIT
947	select SUPPORT_SPL
948	select DM_SPI_FLASH if DM_SPI
949	select POWER_MC34VR500
950	select BOARD_EARLY_INIT_F
951	help
952	  Support for Freescale LS1046ARDB platform.
953	  The LS1046A Reference Design Board (RDB) is a high-performance
954	  development platform that supports the QorIQ LS1046A
955	  Layerscape Architecture processor.
956
957config TARGET_H2200
958	bool "Support h2200"
959	select CPU_PXA
960
961config TARGET_ZIPITZ2
962	bool "Support zipitz2"
963	select CPU_PXA
964
965config TARGET_COLIBRI_PXA270
966	bool "Support colibri_pxa270"
967	select CPU_PXA
968
969config ARCH_UNIPHIER
970	bool "Socionext UniPhier SoCs"
971	select BOARD_LATE_INIT
972	select CLK_UNIPHIER
973	select DM
974	select DM_GPIO
975	select DM_I2C
976	select DM_MMC
977	select DM_RESET
978	select DM_SERIAL
979	select DM_USB
980	select OF_CONTROL
981	select OF_LIBFDT
982	select PINCTRL
983	select SPL_DM if SPL
984	select SPL_LIBCOMMON_SUPPORT if SPL
985	select SPL_LIBGENERIC_SUPPORT if SPL
986	select SPL_OF_CONTROL if SPL
987	select SPL_PINCTRL if SPL
988	select SUPPORT_SPL
989	help
990	  Support for UniPhier SoC family developed by Socionext Inc.
991	  (formerly, System LSI Business Division of Panasonic Corporation)
992
993config STM32
994	bool "Support STM32"
995	select CPU_V7M
996	select DM
997	select DM_SERIAL
998
999config ARCH_ROCKCHIP
1000	bool "Support Rockchip SoCs"
1001	select OF_CONTROL
1002	select BLK
1003	select DM
1004	select SPL_DM if SPL
1005	select SYS_MALLOC_F
1006	select SPL_SYS_MALLOC_SIMPLE if SPL
1007	select DM_GPIO
1008	select DM_I2C
1009	select DM_MMC
1010	select DM_MMC_OPS
1011	select DM_SERIAL
1012	select DM_SPI
1013	select DM_SPI_FLASH
1014	select DM_USB if USB
1015	select DM_PWM
1016	select DM_REGULATOR
1017
1018config TARGET_THUNDERX_88XX
1019	bool "Support ThunderX 88xx"
1020	select ARM64
1021	select OF_CONTROL
1022	select SYS_CACHE_SHIFT_7
1023
1024config ARCH_ASPEED
1025	bool "Support Aspeed SoCs"
1026	select OF_CONTROL
1027	select DM
1028
1029endchoice
1030
1031source "arch/arm/mach-aspeed/Kconfig"
1032
1033source "arch/arm/mach-at91/Kconfig"
1034
1035source "arch/arm/mach-bcm283x/Kconfig"
1036
1037source "arch/arm/mach-davinci/Kconfig"
1038
1039source "arch/arm/mach-exynos/Kconfig"
1040
1041source "arch/arm/mach-highbank/Kconfig"
1042
1043source "arch/arm/mach-integrator/Kconfig"
1044
1045source "arch/arm/mach-keystone/Kconfig"
1046
1047source "arch/arm/mach-kirkwood/Kconfig"
1048
1049source "arch/arm/mach-mvebu/Kconfig"
1050
1051source "arch/arm/cpu/armv7/ls102xa/Kconfig"
1052
1053source "arch/arm/cpu/armv7/mx7/Kconfig"
1054
1055source "arch/arm/cpu/armv7/mx6/Kconfig"
1056
1057source "arch/arm/cpu/armv7/mx5/Kconfig"
1058
1059source "arch/arm/mach-omap2/Kconfig"
1060
1061source "arch/arm/cpu/armv8/fsl-layerscape/Kconfig"
1062
1063source "arch/arm/mach-orion5x/Kconfig"
1064
1065source "arch/arm/mach-rmobile/Kconfig"
1066
1067source "arch/arm/mach-meson/Kconfig"
1068
1069source "arch/arm/mach-rockchip/Kconfig"
1070
1071source "arch/arm/mach-s5pc1xx/Kconfig"
1072
1073source "arch/arm/mach-snapdragon/Kconfig"
1074
1075source "arch/arm/mach-socfpga/Kconfig"
1076
1077source "arch/arm/mach-stm32/Kconfig"
1078
1079source "arch/arm/mach-tegra/Kconfig"
1080
1081source "arch/arm/mach-uniphier/Kconfig"
1082
1083source "arch/arm/mach-zynq/Kconfig"
1084
1085source "arch/arm/cpu/armv7/Kconfig"
1086
1087source "arch/arm/cpu/armv8/zynqmp/Kconfig"
1088
1089source "arch/arm/cpu/armv8/Kconfig"
1090
1091source "arch/arm/imx-common/Kconfig"
1092
1093source "board/bosch/shc/Kconfig"
1094source "board/BuR/brxre1/Kconfig"
1095source "board/BuR/brppt1/Kconfig"
1096source "board/CarMediaLab/flea3/Kconfig"
1097source "board/Marvell/aspenite/Kconfig"
1098source "board/Marvell/gplugd/Kconfig"
1099source "board/armadeus/apf27/Kconfig"
1100source "board/armltd/vexpress/Kconfig"
1101source "board/armltd/vexpress64/Kconfig"
1102source "board/bluegiga/apx4devkit/Kconfig"
1103source "board/broadcom/bcm23550_w1d/Kconfig"
1104source "board/broadcom/bcm28155_ap/Kconfig"
1105source "board/broadcom/bcmcygnus/Kconfig"
1106source "board/broadcom/bcmnsp/Kconfig"
1107source "board/cavium/thunderx/Kconfig"
1108source "board/cirrus/edb93xx/Kconfig"
1109source "board/compulab/cm_t335/Kconfig"
1110source "board/compulab/cm_t43/Kconfig"
1111source "board/creative/xfi3/Kconfig"
1112source "board/denx/m28evk/Kconfig"
1113source "board/denx/m53evk/Kconfig"
1114source "board/freescale/ls2080a/Kconfig"
1115source "board/freescale/ls2080aqds/Kconfig"
1116source "board/freescale/ls2080ardb/Kconfig"
1117source "board/freescale/ls1021aqds/Kconfig"
1118source "board/freescale/ls1043aqds/Kconfig"
1119source "board/freescale/ls1021atwr/Kconfig"
1120source "board/freescale/ls1021aiot/Kconfig"
1121source "board/freescale/ls1046aqds/Kconfig"
1122source "board/freescale/ls1043ardb/Kconfig"
1123source "board/freescale/ls1046ardb/Kconfig"
1124source "board/freescale/ls1012aqds/Kconfig"
1125source "board/freescale/ls1012ardb/Kconfig"
1126source "board/freescale/ls1012afrdm/Kconfig"
1127source "board/freescale/mx23evk/Kconfig"
1128source "board/freescale/mx25pdk/Kconfig"
1129source "board/freescale/mx28evk/Kconfig"
1130source "board/freescale/mx31ads/Kconfig"
1131source "board/freescale/mx31pdk/Kconfig"
1132source "board/freescale/mx35pdk/Kconfig"
1133source "board/freescale/mx51evk/Kconfig"
1134source "board/freescale/mx53ard/Kconfig"
1135source "board/freescale/mx53evk/Kconfig"
1136source "board/freescale/mx53loco/Kconfig"
1137source "board/freescale/mx53smd/Kconfig"
1138source "board/freescale/s32v234evb/Kconfig"
1139source "board/freescale/vf610twr/Kconfig"
1140source "board/grinn/chiliboard/Kconfig"
1141source "board/gumstix/pepper/Kconfig"
1142source "board/h2200/Kconfig"
1143source "board/hisilicon/hikey/Kconfig"
1144source "board/imx31_phycore/Kconfig"
1145source "board/isee/igep0033/Kconfig"
1146source "board/olimex/mx23_olinuxino/Kconfig"
1147source "board/phytec/pcm051/Kconfig"
1148source "board/phytec/pcm052/Kconfig"
1149source "board/ppcag/bg0900/Kconfig"
1150source "board/sandisk/sansa_fuze_plus/Kconfig"
1151source "board/schulercontrol/sc_sps_1/Kconfig"
1152source "board/siemens/draco/Kconfig"
1153source "board/siemens/pxm2/Kconfig"
1154source "board/siemens/rut/Kconfig"
1155source "board/silica/pengwyn/Kconfig"
1156source "board/spear/spear300/Kconfig"
1157source "board/spear/spear310/Kconfig"
1158source "board/spear/spear320/Kconfig"
1159source "board/spear/spear600/Kconfig"
1160source "board/spear/x600/Kconfig"
1161source "board/st/stv0991/Kconfig"
1162source "board/sunxi/Kconfig"
1163source "board/syteco/zmx25/Kconfig"
1164source "board/tcl/sl50/Kconfig"
1165source "board/ti/am335x/Kconfig"
1166source "board/ti/am43xx/Kconfig"
1167source "board/birdland/bav335x/Kconfig"
1168source "board/ti/ti814x/Kconfig"
1169source "board/ti/ti816x/Kconfig"
1170source "board/timll/devkit3250/Kconfig"
1171source "board/toradex/colibri_pxa270/Kconfig"
1172source "board/toradex/colibri_vf/Kconfig"
1173source "board/technologic/ts4600/Kconfig"
1174source "board/technologic/ts4800/Kconfig"
1175source "board/vscom/baltos/Kconfig"
1176source "board/woodburn/Kconfig"
1177source "board/work-microwave/work_92105/Kconfig"
1178source "board/zipitz2/Kconfig"
1179
1180source "arch/arm/Kconfig.debug"
1181
1182endmenu
1183