xref: /openbmc/linux/arch/arm/mach-imx/Kconfig (revision 42f4754a)
1config ARCH_MXC
2	bool "Freescale i.MX family" if ARCH_MULTI_V4_V5 || ARCH_MULTI_V6_V7
3	select ARCH_REQUIRE_GPIOLIB
4	select ARM_CPU_SUSPEND if PM
5	select CLKSRC_MMIO
6	select GENERIC_ALLOCATOR
7	select GENERIC_IRQ_CHIP
8	select PINCTRL
9	select SOC_BUS
10	help
11	  Support for Freescale MXC/iMX-based family of processors
12
13menu "Freescale i.MX support"
14	depends on ARCH_MXC
15
16config MXC_TZIC
17	bool
18
19config MXC_AVIC
20	bool
21
22config MXC_DEBUG_BOARD
23	bool "Enable MXC debug board(for 3-stack)"
24	help
25	  The debug board is an integral part of the MXC 3-stack(PDK)
26	  platforms, it can be attached or removed from the peripheral
27	  board. On debug board, several debug devices(ethernet, UART,
28	  buttons, LEDs and JTAG) are implemented. Between the MCU and
29	  these devices, a CPLD is added as a bridge which performs
30	  data/address de-multiplexing and decode, signal level shift,
31	  interrupt control and various board functions.
32
33config HAVE_EPIT
34	bool
35
36config MXC_USE_EPIT
37	bool "Use EPIT instead of GPT"
38	depends on HAVE_EPIT
39	help
40	  Use EPIT as the system timer on systems that have it. Normally you
41	  don't have a reason to do so as the EPIT has the same features and
42	  uses the same clocks as the GPT. Anyway, on some systems the GPT
43	  may be in use for other purposes.
44
45config ARCH_HAS_RNGA
46	bool
47
48config HAVE_IMX_ANATOP
49	bool
50
51config HAVE_IMX_GPC
52	bool
53
54config HAVE_IMX_MMDC
55	bool
56
57config HAVE_IMX_SRC
58	def_bool y if SMP
59	select ARCH_HAS_RESET_CONTROLLER
60
61config IMX_HAVE_IOMUX_V1
62	bool
63
64config ARCH_MXC_IOMUX_V3
65	bool
66
67config ARCH_MX1
68	bool
69
70config ARCH_MX25
71	bool
72
73config MACH_MX27
74	bool
75
76config SOC_IMX1
77	bool
78	select ARCH_MX1
79	select CPU_ARM920T
80	select IMX_HAVE_IOMUX_V1
81	select MXC_AVIC
82
83config SOC_IMX21
84	bool
85	select CPU_ARM926T
86	select IMX_HAVE_IOMUX_V1
87	select MXC_AVIC
88
89config SOC_IMX25
90	bool
91	select ARCH_MX25
92	select ARCH_MXC_IOMUX_V3
93	select CPU_ARM926T
94	select MXC_AVIC
95	select PINCTRL_IMX25
96
97config SOC_IMX27
98	bool
99	select ARCH_HAS_CPUFREQ
100	select ARCH_HAS_OPP
101	select CPU_ARM926T
102	select IMX_HAVE_IOMUX_V1
103	select MACH_MX27
104	select MXC_AVIC
105	select PINCTRL_IMX27
106
107config SOC_IMX31
108	bool
109	select CPU_V6
110	select IMX_HAVE_PLATFORM_MXC_RNGA
111	select MXC_AVIC
112	select SMP_ON_UP if SMP
113
114config SOC_IMX35
115	bool
116	select ARCH_MXC_IOMUX_V3
117	select HAVE_EPIT
118	select MXC_AVIC
119	select SMP_ON_UP if SMP
120	select PINCTRL
121
122config SOC_IMX5
123	bool
124	select ARCH_HAS_CPUFREQ
125	select ARCH_HAS_OPP
126	select ARCH_MXC_IOMUX_V3
127	select MXC_TZIC
128
129config	SOC_IMX51
130	bool
131	select HAVE_IMX_SRC
132	select PINCTRL_IMX51
133	select SOC_IMX5
134
135if ARCH_MULTI_V4T
136
137comment "MX1 platforms:"
138config MACH_MXLADS
139	bool
140
141config ARCH_MX1ADS
142	bool "MX1ADS platform"
143	select IMX_HAVE_PLATFORM_IMX_I2C
144	select IMX_HAVE_PLATFORM_IMX_UART
145	select MACH_MXLADS
146	select SOC_IMX1
147	help
148	  Say Y here if you are using Motorola MX1ADS/MXLADS boards
149
150config MACH_SCB9328
151	bool "Synertronixx scb9328"
152	select IMX_HAVE_PLATFORM_IMX_UART
153	select SOC_IMX1
154	help
155	  Say Y here if you are using a Synertronixx scb9328 board
156
157config MACH_APF9328
158	bool "APF9328"
159	select IMX_HAVE_PLATFORM_IMX_I2C
160	select IMX_HAVE_PLATFORM_IMX_UART
161	select SOC_IMX1
162	help
163	  Say Yes here if you are using the Armadeus APF9328 development board
164
165endif
166
167if ARCH_MULTI_V5
168
169comment "MX21 platforms:"
170
171config MACH_MX21ADS
172	bool "MX21ADS platform"
173	select IMX_HAVE_PLATFORM_IMX_FB
174	select IMX_HAVE_PLATFORM_IMX_UART
175	select IMX_HAVE_PLATFORM_MXC_MMC
176	select IMX_HAVE_PLATFORM_MXC_NAND
177	select SOC_IMX21
178	help
179	  Include support for MX21ADS platform. This includes specific
180	  configurations for the board and its peripherals.
181
182comment "MX25 platforms:"
183
184config MACH_MX25_3DS
185	bool "Support MX25PDK (3DS) Platform"
186	select IMX_HAVE_PLATFORM_FLEXCAN
187	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
188	select IMX_HAVE_PLATFORM_IMX2_WDT
189	select IMX_HAVE_PLATFORM_IMXDI_RTC
190	select IMX_HAVE_PLATFORM_IMX_FB
191	select IMX_HAVE_PLATFORM_IMX_I2C
192	select IMX_HAVE_PLATFORM_IMX_KEYPAD
193	select IMX_HAVE_PLATFORM_IMX_UART
194	select IMX_HAVE_PLATFORM_MXC_EHCI
195	select IMX_HAVE_PLATFORM_MXC_NAND
196	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
197	select SOC_IMX25
198
199config MACH_EUKREA_CPUIMX25SD
200	bool "Support Eukrea CPUIMX25 Platform"
201	select IMX_HAVE_PLATFORM_FLEXCAN
202	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
203	select IMX_HAVE_PLATFORM_IMX2_WDT
204	select IMX_HAVE_PLATFORM_IMXDI_RTC
205	select IMX_HAVE_PLATFORM_IMX_FB
206	select IMX_HAVE_PLATFORM_IMX_I2C
207	select IMX_HAVE_PLATFORM_IMX_UART
208	select IMX_HAVE_PLATFORM_MXC_EHCI
209	select IMX_HAVE_PLATFORM_MXC_NAND
210	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
211	select USB_ULPI_VIEWPORT if USB_ULPI
212	select SOC_IMX25
213
214choice
215	prompt "Baseboard"
216	depends on MACH_EUKREA_CPUIMX25SD
217	default MACH_EUKREA_MBIMXSD25_BASEBOARD
218
219config MACH_EUKREA_MBIMXSD25_BASEBOARD
220	bool "Eukrea MBIMXSD development board"
221	select IMX_HAVE_PLATFORM_GPIO_KEYS
222	select IMX_HAVE_PLATFORM_IMX_SSI
223	select IMX_HAVE_PLATFORM_SPI_IMX
224	select LEDS_GPIO_REGISTER
225	help
226	  This adds board specific devices that can be found on Eukrea's
227	  MBIMXSD evaluation board.
228
229endchoice
230
231config MACH_IMX25_DT
232	bool "Support i.MX25 platforms from device tree"
233	select SOC_IMX25
234	help
235	  Include support for Freescale i.MX25 based platforms
236	  using the device tree for discovery
237
238comment "MX27 platforms:"
239
240config MACH_MX27ADS
241	bool "MX27ADS platform"
242	select IMX_HAVE_PLATFORM_IMX_FB
243	select IMX_HAVE_PLATFORM_IMX_I2C
244	select IMX_HAVE_PLATFORM_IMX_UART
245	select IMX_HAVE_PLATFORM_MXC_MMC
246	select IMX_HAVE_PLATFORM_MXC_NAND
247	select IMX_HAVE_PLATFORM_MXC_W1
248	select SOC_IMX27
249	help
250	  Include support for MX27ADS platform. This includes specific
251	  configurations for the board and its peripherals.
252
253config MACH_PCM038
254	bool "Phytec phyCORE-i.MX27 CPU module (pcm038)"
255	select IMX_HAVE_PLATFORM_IMX2_WDT
256	select IMX_HAVE_PLATFORM_IMX_I2C
257	select IMX_HAVE_PLATFORM_IMX_UART
258	select IMX_HAVE_PLATFORM_MXC_EHCI
259	select IMX_HAVE_PLATFORM_MXC_NAND
260	select IMX_HAVE_PLATFORM_MXC_W1
261	select IMX_HAVE_PLATFORM_SPI_IMX
262	select USB_ULPI_VIEWPORT if USB_ULPI
263	select SOC_IMX27
264	help
265	  Include support for phyCORE-i.MX27 (aka pcm038) platform. This
266	  includes specific configurations for the module and its peripherals.
267
268choice
269	prompt "Baseboard"
270	depends on MACH_PCM038
271	default MACH_PCM970_BASEBOARD
272
273config MACH_PCM970_BASEBOARD
274	bool "PHYTEC PCM970 development board"
275	select IMX_HAVE_PLATFORM_IMX_FB
276	select IMX_HAVE_PLATFORM_MXC_MMC
277	help
278	  This adds board specific devices that can be found on Phytec's
279	  PCM970 evaluation board.
280
281endchoice
282
283config MACH_CPUIMX27
284	bool "Eukrea CPUIMX27 module"
285	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
286	select IMX_HAVE_PLATFORM_IMX2_WDT
287	select IMX_HAVE_PLATFORM_IMX_I2C
288	select IMX_HAVE_PLATFORM_IMX_UART
289	select IMX_HAVE_PLATFORM_MXC_EHCI
290	select IMX_HAVE_PLATFORM_MXC_NAND
291	select IMX_HAVE_PLATFORM_MXC_W1
292	select USB_ULPI_VIEWPORT if USB_ULPI
293	select SOC_IMX27
294	help
295	  Include support for Eukrea CPUIMX27 platform. This includes
296	  specific configurations for the module and its peripherals.
297
298config MACH_EUKREA_CPUIMX27_USESDHC2
299	bool "CPUIMX27 integrates SDHC2 module"
300	depends on MACH_CPUIMX27
301	select IMX_HAVE_PLATFORM_MXC_MMC
302	help
303	  This adds support for the internal SDHC2 used on CPUIMX27
304	  for wifi or eMMC.
305
306config MACH_EUKREA_CPUIMX27_USEUART4
307	bool "CPUIMX27 integrates UART4 module"
308	depends on MACH_CPUIMX27
309	help
310	  This adds support for the internal UART4 used on CPUIMX27
311	  for bluetooth.
312
313choice
314	prompt "Baseboard"
315	depends on MACH_CPUIMX27
316	default MACH_EUKREA_MBIMX27_BASEBOARD
317
318config MACH_EUKREA_MBIMX27_BASEBOARD
319	bool "Eukrea MBIMX27 development board"
320	select IMX_HAVE_PLATFORM_IMX_FB
321	select IMX_HAVE_PLATFORM_IMX_KEYPAD
322	select IMX_HAVE_PLATFORM_IMX_SSI
323	select IMX_HAVE_PLATFORM_IMX_UART
324	select IMX_HAVE_PLATFORM_MXC_MMC
325	select IMX_HAVE_PLATFORM_SPI_IMX
326	select LEDS_GPIO_REGISTER
327	help
328	  This adds board specific devices that can be found on Eukrea's
329	  MBIMX27 evaluation board.
330
331endchoice
332
333config MACH_MX27_3DS
334	bool "MX27PDK platform"
335	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
336	select IMX_HAVE_PLATFORM_IMX2_WDT
337	select IMX_HAVE_PLATFORM_IMX_FB
338	select IMX_HAVE_PLATFORM_IMX_I2C
339	select IMX_HAVE_PLATFORM_IMX_KEYPAD
340	select IMX_HAVE_PLATFORM_IMX_SSI
341	select IMX_HAVE_PLATFORM_IMX_UART
342	select IMX_HAVE_PLATFORM_MX2_CAMERA
343	select IMX_HAVE_PLATFORM_MXC_EHCI
344	select IMX_HAVE_PLATFORM_MXC_MMC
345	select IMX_HAVE_PLATFORM_SPI_IMX
346	select MXC_DEBUG_BOARD
347	select USB_ULPI_VIEWPORT if USB_ULPI
348	select SOC_IMX27
349	help
350	  Include support for MX27PDK platform. This includes specific
351	  configurations for the board and its peripherals.
352
353config MACH_IMX27_VISSTRIM_M10
354	bool "Vista Silicon i.MX27 Visstrim_m10"
355	select IMX_HAVE_PLATFORM_GPIO_KEYS
356	select IMX_HAVE_PLATFORM_IMX_I2C
357	select IMX_HAVE_PLATFORM_IMX_SSI
358	select IMX_HAVE_PLATFORM_IMX_UART
359	select IMX_HAVE_PLATFORM_MX2_CAMERA
360	select IMX_HAVE_PLATFORM_MX2_EMMA
361	select IMX_HAVE_PLATFORM_MXC_EHCI
362	select IMX_HAVE_PLATFORM_MXC_MMC
363	select LEDS_GPIO_REGISTER
364	select SOC_IMX27
365	help
366	  Include support for Visstrim_m10 platform and its different variants.
367	  This includes specific configurations for the board and its
368	  peripherals.
369
370config MACH_IMX27LITE
371	bool "LogicPD MX27 LITEKIT platform"
372	select IMX_HAVE_PLATFORM_IMX_SSI
373	select IMX_HAVE_PLATFORM_IMX_UART
374	select SOC_IMX27
375	help
376	  Include support for MX27 LITEKIT platform. This includes specific
377	  configurations for the board and its peripherals.
378
379config MACH_PCA100
380	bool "Phytec phyCARD-s (pca100)"
381	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
382	select IMX_HAVE_PLATFORM_IMX2_WDT
383	select IMX_HAVE_PLATFORM_IMX_FB
384	select IMX_HAVE_PLATFORM_IMX_I2C
385	select IMX_HAVE_PLATFORM_IMX_SSI
386	select IMX_HAVE_PLATFORM_IMX_UART
387	select IMX_HAVE_PLATFORM_MXC_EHCI
388	select IMX_HAVE_PLATFORM_MXC_MMC
389	select IMX_HAVE_PLATFORM_MXC_NAND
390	select IMX_HAVE_PLATFORM_MXC_W1
391	select IMX_HAVE_PLATFORM_SPI_IMX
392	select USB_ULPI_VIEWPORT if USB_ULPI
393	select SOC_IMX27
394	help
395	  Include support for phyCARD-s (aka pca100) platform. This
396	  includes specific configurations for the module and its peripherals.
397
398config MACH_MXT_TD60
399	bool "Maxtrack i-MXT TD60"
400	select IMX_HAVE_PLATFORM_IMX_FB
401	select IMX_HAVE_PLATFORM_IMX_I2C
402	select IMX_HAVE_PLATFORM_IMX_UART
403	select IMX_HAVE_PLATFORM_MXC_MMC
404	select IMX_HAVE_PLATFORM_MXC_NAND
405	select SOC_IMX27
406	help
407	  Include support for i-MXT (aka td60) platform. This
408	  includes specific configurations for the module and its peripherals.
409
410config MACH_IMX27IPCAM
411	bool "IMX27 IPCAM platform"
412	select IMX_HAVE_PLATFORM_IMX2_WDT
413	select IMX_HAVE_PLATFORM_IMX_UART
414	select SOC_IMX27
415	help
416	  Include support for IMX27 IPCAM platform. This includes specific
417	  configurations for the board and its peripherals.
418
419config MACH_IMX27_DT
420	bool "Support i.MX27 platforms from device tree"
421	select SOC_IMX27
422	help
423	  Include support for Freescale i.MX27 based platforms
424	  using the device tree for discovery
425
426endif
427
428if ARCH_MULTI_V6
429
430comment "MX31 platforms:"
431
432config MACH_MX31ADS
433	bool "Support MX31ADS platforms"
434	default y
435	select IMX_HAVE_PLATFORM_IMX_I2C
436	select IMX_HAVE_PLATFORM_IMX_SSI
437	select IMX_HAVE_PLATFORM_IMX_UART
438	select SOC_IMX31
439	help
440	  Include support for MX31ADS platform. This includes specific
441	  configurations for the board and its peripherals.
442
443config MACH_MX31ADS_WM1133_EV1
444	bool "Support Wolfson Microelectronics 1133-EV1 module"
445	depends on MACH_MX31ADS
446	depends on MFD_WM8350_I2C
447	depends on REGULATOR_WM8350 = y
448	help
449	  Include support for the Wolfson Microelectronics 1133-EV1 PMU
450	  and audio module for the MX31ADS platform.
451
452config MACH_MX31LILLY
453	bool "Support MX31 LILLY-1131 platforms (INCO startec)"
454	select IMX_HAVE_PLATFORM_IMX_UART
455	select IMX_HAVE_PLATFORM_IPU_CORE
456	select IMX_HAVE_PLATFORM_MXC_EHCI
457	select IMX_HAVE_PLATFORM_MXC_MMC
458	select IMX_HAVE_PLATFORM_SPI_IMX
459	select USB_ULPI_VIEWPORT if USB_ULPI
460	select SOC_IMX31
461	help
462	  Include support for mx31 based LILLY1131 modules. This includes
463	  specific configurations for the board and its peripherals.
464
465config MACH_MX31LITE
466	bool "Support MX31 LITEKIT (LogicPD)"
467	select IMX_HAVE_PLATFORM_IMX2_WDT
468	select IMX_HAVE_PLATFORM_IMX_UART
469	select IMX_HAVE_PLATFORM_MXC_EHCI
470	select IMX_HAVE_PLATFORM_MXC_MMC
471	select IMX_HAVE_PLATFORM_MXC_NAND
472	select IMX_HAVE_PLATFORM_MXC_RTC
473	select IMX_HAVE_PLATFORM_SPI_IMX
474	select LEDS_GPIO_REGISTER
475	select USB_ULPI_VIEWPORT if USB_ULPI
476	select SOC_IMX31
477	help
478	  Include support for MX31 LITEKIT platform. This includes specific
479	  configurations for the board and its peripherals.
480
481config MACH_PCM037
482	bool "Support Phytec pcm037 (i.MX31) platforms"
483	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
484	select IMX_HAVE_PLATFORM_IMX2_WDT
485	select IMX_HAVE_PLATFORM_IMX_I2C
486	select IMX_HAVE_PLATFORM_IMX_UART
487	select IMX_HAVE_PLATFORM_IPU_CORE
488	select IMX_HAVE_PLATFORM_MXC_EHCI
489	select IMX_HAVE_PLATFORM_MXC_MMC
490	select IMX_HAVE_PLATFORM_MXC_NAND
491	select IMX_HAVE_PLATFORM_MXC_W1
492	select USB_ULPI_VIEWPORT if USB_ULPI
493	select SOC_IMX31
494	help
495	  Include support for Phytec pcm037 platform. This includes
496	  specific configurations for the board and its peripherals.
497
498config MACH_PCM037_EET
499	bool "Support pcm037 EET board extensions"
500	depends on MACH_PCM037
501	select IMX_HAVE_PLATFORM_GPIO_KEYS
502	select IMX_HAVE_PLATFORM_SPI_IMX
503	help
504	  Add support for PCM037 EET baseboard extensions. If you are using the
505	  OLED display with EET, use "video=mx3fb:CMEL-OLED" kernel
506	  command-line parameter.
507
508config MACH_MX31_3DS
509	bool "Support MX31PDK (3DS)"
510	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
511	select IMX_HAVE_PLATFORM_IMX2_WDT
512	select IMX_HAVE_PLATFORM_IMX_I2C
513	select IMX_HAVE_PLATFORM_IMX_KEYPAD
514	select IMX_HAVE_PLATFORM_IMX_SSI
515	select IMX_HAVE_PLATFORM_IMX_UART
516	select IMX_HAVE_PLATFORM_IPU_CORE
517	select IMX_HAVE_PLATFORM_MXC_EHCI
518	select IMX_HAVE_PLATFORM_MXC_MMC
519	select IMX_HAVE_PLATFORM_MXC_NAND
520	select IMX_HAVE_PLATFORM_SPI_IMX
521	select MXC_DEBUG_BOARD
522	select USB_ULPI_VIEWPORT if USB_ULPI
523	select SOC_IMX31
524	help
525	  Include support for MX31PDK (3DS) platform. This includes specific
526	  configurations for the board and its peripherals.
527
528config MACH_MX31_3DS_MXC_NAND_USE_BBT
529	bool "Make the MXC NAND driver use the in flash Bad Block Table"
530	depends on MACH_MX31_3DS
531	depends on MTD_NAND_MXC
532	help
533	  Enable this if you want that the MXC NAND driver uses the in flash
534	  Bad Block Table to know what blocks are bad instead of scanning the
535	  entire flash looking for bad block markers.
536
537config MACH_MX31MOBOARD
538	bool "Support mx31moboard platforms (EPFL Mobots group)"
539	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
540	select IMX_HAVE_PLATFORM_IMX2_WDT
541	select IMX_HAVE_PLATFORM_IMX_I2C
542	select IMX_HAVE_PLATFORM_IMX_SSI
543	select IMX_HAVE_PLATFORM_IMX_UART
544	select IMX_HAVE_PLATFORM_IPU_CORE
545	select IMX_HAVE_PLATFORM_MXC_EHCI
546	select IMX_HAVE_PLATFORM_MXC_MMC
547	select IMX_HAVE_PLATFORM_SPI_IMX
548	select LEDS_GPIO_REGISTER
549	select USB_ULPI_VIEWPORT if USB_ULPI
550	select SOC_IMX31
551	help
552	  Include support for mx31moboard platform. This includes specific
553	  configurations for the board and its peripherals.
554
555config MACH_QONG
556	bool "Support Dave/DENX QongEVB-LITE platform"
557	select IMX_HAVE_PLATFORM_IMX2_WDT
558	select IMX_HAVE_PLATFORM_IMX_UART
559	select SOC_IMX31
560	help
561	  Include support for Dave/DENX QongEVB-LITE platform. This includes
562	  specific configurations for the board and its peripherals.
563
564config MACH_ARMADILLO5X0
565	bool "Support Atmark Armadillo-500 Development Base Board"
566	select IMX_HAVE_PLATFORM_GPIO_KEYS
567	select IMX_HAVE_PLATFORM_IMX_I2C
568	select IMX_HAVE_PLATFORM_IMX_UART
569	select IMX_HAVE_PLATFORM_IPU_CORE
570	select IMX_HAVE_PLATFORM_MXC_EHCI
571	select IMX_HAVE_PLATFORM_MXC_MMC
572	select IMX_HAVE_PLATFORM_MXC_NAND
573	select USB_ULPI_VIEWPORT if USB_ULPI
574	select SOC_IMX31
575	help
576	  Include support for Atmark Armadillo-500 platform. This includes
577	  specific configurations for the board and its peripherals.
578
579config MACH_KZM_ARM11_01
580	bool "Support KZM-ARM11-01(Kyoto Microcomputer)"
581	select IMX_HAVE_PLATFORM_IMX_UART
582	select SOC_IMX31
583	help
584	  Include support for KZM-ARM11-01. This includes specific
585	  configurations for the board and its peripherals.
586
587config MACH_BUG
588	bool "Support Buglabs BUGBase platform"
589	default y
590	select IMX_HAVE_PLATFORM_IMX_UART
591	select SOC_IMX31
592	help
593	  Include support for BUGBase 1.3 platform. This includes specific
594	  configurations for the board and its peripherals.
595
596config MACH_IMX31_DT
597	bool "Support i.MX31 platforms from device tree"
598	select SOC_IMX31
599	help
600	  Include support for Freescale i.MX31 based platforms
601	  using the device tree for discovery.
602
603comment "MX35 platforms:"
604
605config MACH_IMX35_DT
606	bool "Support i.MX35 platforms from device tree"
607	select SOC_IMX35
608	help
609	  Include support for Freescale i.MX35 based platforms
610	  using the device tree for discovery.
611
612config MACH_PCM043
613	bool "Support Phytec pcm043 (i.MX35) platforms"
614	select IMX_HAVE_PLATFORM_FLEXCAN
615	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
616	select IMX_HAVE_PLATFORM_IMX2_WDT
617	select IMX_HAVE_PLATFORM_IMX_I2C
618	select IMX_HAVE_PLATFORM_IMX_SSI
619	select IMX_HAVE_PLATFORM_IMX_UART
620	select IMX_HAVE_PLATFORM_IPU_CORE
621	select IMX_HAVE_PLATFORM_MXC_EHCI
622	select IMX_HAVE_PLATFORM_MXC_NAND
623	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
624	select USB_ULPI_VIEWPORT if USB_ULPI
625	select SOC_IMX35
626	help
627	  Include support for Phytec pcm043 platform. This includes
628	  specific configurations for the board and its peripherals.
629
630config MACH_MX35_3DS
631	bool "Support MX35PDK platform"
632	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
633	select IMX_HAVE_PLATFORM_IMX2_WDT
634	select IMX_HAVE_PLATFORM_IMX_FB
635	select IMX_HAVE_PLATFORM_IMX_I2C
636	select IMX_HAVE_PLATFORM_IMX_UART
637	select IMX_HAVE_PLATFORM_IPU_CORE
638	select IMX_HAVE_PLATFORM_MXC_EHCI
639	select IMX_HAVE_PLATFORM_MXC_NAND
640	select IMX_HAVE_PLATFORM_MXC_RTC
641	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
642	select MXC_DEBUG_BOARD
643	select SOC_IMX35
644	help
645	  Include support for MX35PDK platform. This includes specific
646	  configurations for the board and its peripherals.
647
648config MACH_EUKREA_CPUIMX35SD
649	bool "Support Eukrea CPUIMX35 Platform"
650	select IMX_HAVE_PLATFORM_FLEXCAN
651	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
652	select IMX_HAVE_PLATFORM_IMX2_WDT
653	select IMX_HAVE_PLATFORM_IMX_I2C
654	select IMX_HAVE_PLATFORM_IMX_UART
655	select IMX_HAVE_PLATFORM_MXC_EHCI
656	select IMX_HAVE_PLATFORM_MXC_NAND
657	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
658	select USB_ULPI_VIEWPORT if USB_ULPI
659	select SOC_IMX35
660	help
661	  Include support for Eukrea CPUIMX35 platform. This includes
662	  specific configurations for the board and its peripherals.
663
664choice
665	prompt "Baseboard"
666	depends on MACH_EUKREA_CPUIMX35SD
667	default MACH_EUKREA_MBIMXSD35_BASEBOARD
668
669config MACH_EUKREA_MBIMXSD35_BASEBOARD
670	bool "Eukrea MBIMXSD development board"
671	select IMX_HAVE_PLATFORM_GPIO_KEYS
672	select IMX_HAVE_PLATFORM_IMX_SSI
673	select IMX_HAVE_PLATFORM_IPU_CORE
674	select IMX_HAVE_PLATFORM_SPI_IMX
675	select LEDS_GPIO_REGISTER
676	help
677	  This adds board specific devices that can be found on Eukrea's
678	  MBIMXSD evaluation board.
679
680endchoice
681
682config MACH_VPR200
683	bool "Support VPR200 platform"
684	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
685	select IMX_HAVE_PLATFORM_GPIO_KEYS
686	select IMX_HAVE_PLATFORM_IMX2_WDT
687	select IMX_HAVE_PLATFORM_IMX_I2C
688	select IMX_HAVE_PLATFORM_IMX_UART
689	select IMX_HAVE_PLATFORM_IPU_CORE
690	select IMX_HAVE_PLATFORM_MXC_EHCI
691	select IMX_HAVE_PLATFORM_MXC_NAND
692	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
693	select SOC_IMX35
694	help
695	  Include support for VPR200 platform. This includes specific
696	  configurations for the board and its peripherals.
697
698endif
699
700if ARCH_MULTI_V7
701
702comment "i.MX51 machines:"
703
704config MACH_IMX51_DT
705	bool "Support i.MX51 platforms from device tree"
706	select SOC_IMX51
707	help
708	  Include support for Freescale i.MX51 based platforms
709	  using the device tree for discovery
710
711config MACH_MX51_BABBAGE
712	bool "Support MX51 BABBAGE platforms"
713	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
714	select IMX_HAVE_PLATFORM_IMX2_WDT
715	select IMX_HAVE_PLATFORM_IMX_I2C
716	select IMX_HAVE_PLATFORM_IMX_UART
717	select IMX_HAVE_PLATFORM_MXC_EHCI
718	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
719	select IMX_HAVE_PLATFORM_SPI_IMX
720	select SOC_IMX51
721	help
722	  Include support for MX51 Babbage platform, also known as MX51EVK in
723	  u-boot. This includes specific configurations for the board and its
724	  peripherals.
725
726config MACH_EUKREA_CPUIMX51SD
727	bool "Support Eukrea CPUIMX51SD module"
728	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
729	select IMX_HAVE_PLATFORM_IMX2_WDT
730	select IMX_HAVE_PLATFORM_IMX_I2C
731	select IMX_HAVE_PLATFORM_IMX_UART
732	select IMX_HAVE_PLATFORM_MXC_EHCI
733	select IMX_HAVE_PLATFORM_MXC_NAND
734	select IMX_HAVE_PLATFORM_SPI_IMX
735	select SOC_IMX51
736	help
737	  Include support for Eukrea CPUIMX51SD platform. This includes
738	  specific configurations for the module and its peripherals.
739
740choice
741	prompt "Baseboard"
742	depends on MACH_EUKREA_CPUIMX51SD
743	default MACH_EUKREA_MBIMXSD51_BASEBOARD
744
745config MACH_EUKREA_MBIMXSD51_BASEBOARD
746	prompt "Eukrea MBIMXSD development board"
747	bool
748	select IMX_HAVE_PLATFORM_IMX_SSI
749	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
750	select LEDS_GPIO_REGISTER
751	help
752	  This adds board specific devices that can be found on Eukrea's
753	  MBIMXSD evaluation board.
754
755endchoice
756
757comment "Device tree only"
758
759config	SOC_IMX50
760	bool "i.MX50 support"
761	select HAVE_IMX_SRC
762	select PINCTRL_IMX50
763	select SOC_IMX5
764
765	help
766	  This enables support for Freescale i.MX50 processor.
767
768config	SOC_IMX53
769	bool "i.MX53 support"
770	select HAVE_IMX_SRC
771	select IMX_HAVE_PLATFORM_IMX2_WDT
772	select PINCTRL_IMX53
773	select SOC_IMX5
774
775	help
776	  This enables support for Freescale i.MX53 processor.
777
778config SOC_IMX6Q
779	bool "i.MX6 Quad/DualLite support"
780	select ARCH_HAS_CPUFREQ
781	select ARCH_HAS_OPP
782	select ARM_ERRATA_754322
783	select ARM_ERRATA_764369 if SMP
784	select ARM_ERRATA_775420
785	select ARM_GIC
786	select HAVE_ARM_SCU if SMP
787	select HAVE_ARM_TWD if SMP
788	select HAVE_IMX_ANATOP
789	select HAVE_IMX_GPC
790	select HAVE_IMX_MMDC
791	select HAVE_IMX_SRC
792	select MFD_SYSCON
793	select MIGHT_HAVE_PCI
794	select PCI_DOMAINS if PCI
795	select PINCTRL_IMX6Q
796	select PL310_ERRATA_588369 if CACHE_PL310
797	select PL310_ERRATA_727915 if CACHE_PL310
798	select PL310_ERRATA_769419 if CACHE_PL310
799	select PM_OPP if PM
800
801	help
802	  This enables support for Freescale i.MX6 Quad processor.
803
804config SOC_IMX6SL
805	bool "i.MX6 SoloLite support"
806	select ARM_ERRATA_754322
807	select ARM_ERRATA_775420
808	select ARM_GIC
809	select HAVE_IMX_ANATOP
810	select HAVE_IMX_GPC
811	select HAVE_IMX_MMDC
812	select HAVE_IMX_SRC
813	select MFD_SYSCON
814	select PINCTRL_IMX6SL
815	select PL310_ERRATA_588369 if CACHE_PL310
816	select PL310_ERRATA_727915 if CACHE_PL310
817	select PL310_ERRATA_769419 if CACHE_PL310
818
819	help
820	  This enables support for Freescale i.MX6 SoloLite processor.
821
822config SOC_VF610
823	bool "Vybrid Family VF610 support"
824	select ARM_GIC
825	select PINCTRL_VF610
826	select VF_PIT_TIMER
827	select PL310_ERRATA_588369 if CACHE_PL310
828	select PL310_ERRATA_727915 if CACHE_PL310
829	select PL310_ERRATA_769419 if CACHE_PL310
830
831	help
832	  This enable support for Freescale Vybrid VF610 processor.
833
834endif
835
836source "arch/arm/mach-imx/devices/Kconfig"
837
838endmenu
839