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