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