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