xref: /openbmc/linux/arch/arm/mach-imx/Kconfig (revision b6bec26c)
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
275config MACH_IMX25_DT
276	bool "Support i.MX25 platforms from device tree"
277	select SOC_IMX25
278	help
279	  Include support for Freescale i.MX25 based platforms
280	  using the device tree for discovery
281
282comment "MX27 platforms:"
283
284config MACH_MX27ADS
285	bool "MX27ADS platform"
286	select IMX_HAVE_PLATFORM_IMX_FB
287	select IMX_HAVE_PLATFORM_IMX_I2C
288	select IMX_HAVE_PLATFORM_IMX_UART
289	select IMX_HAVE_PLATFORM_MXC_MMC
290	select IMX_HAVE_PLATFORM_MXC_NAND
291	select IMX_HAVE_PLATFORM_MXC_W1
292	select SOC_IMX27
293	help
294	  Include support for MX27ADS platform. This includes specific
295	  configurations for the board and its peripherals.
296
297config MACH_PCM038
298	bool "Phytec phyCORE-i.MX27 CPU module (pcm038)"
299	select IMX_HAVE_PLATFORM_IMX2_WDT
300	select IMX_HAVE_PLATFORM_IMX_I2C
301	select IMX_HAVE_PLATFORM_IMX_UART
302	select IMX_HAVE_PLATFORM_MXC_EHCI
303	select IMX_HAVE_PLATFORM_MXC_NAND
304	select IMX_HAVE_PLATFORM_MXC_W1
305	select IMX_HAVE_PLATFORM_SPI_IMX
306	select MXC_ULPI if USB_ULPI
307	select SOC_IMX27
308	help
309	  Include support for phyCORE-i.MX27 (aka pcm038) platform. This
310	  includes specific configurations for the module and its peripherals.
311
312choice
313	prompt "Baseboard"
314	depends on MACH_PCM038
315	default MACH_PCM970_BASEBOARD
316
317config MACH_PCM970_BASEBOARD
318	bool "PHYTEC PCM970 development board"
319	select IMX_HAVE_PLATFORM_IMX_FB
320	select IMX_HAVE_PLATFORM_MXC_MMC
321	help
322	  This adds board specific devices that can be found on Phytec's
323	  PCM970 evaluation board.
324
325endchoice
326
327config MACH_CPUIMX27
328	bool "Eukrea CPUIMX27 module"
329	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
330	select IMX_HAVE_PLATFORM_IMX2_WDT
331	select IMX_HAVE_PLATFORM_IMX_I2C
332	select IMX_HAVE_PLATFORM_IMX_UART
333	select IMX_HAVE_PLATFORM_MXC_EHCI
334	select IMX_HAVE_PLATFORM_MXC_NAND
335	select IMX_HAVE_PLATFORM_MXC_W1
336	select MXC_ULPI if USB_ULPI
337	select SOC_IMX27
338	help
339	  Include support for Eukrea CPUIMX27 platform. This includes
340	  specific configurations for the module and its peripherals.
341
342config MACH_EUKREA_CPUIMX27_USESDHC2
343	bool "CPUIMX27 integrates SDHC2 module"
344	depends on MACH_CPUIMX27
345	select IMX_HAVE_PLATFORM_MXC_MMC
346	help
347	  This adds support for the internal SDHC2 used on CPUIMX27
348	  for wifi or eMMC.
349
350config MACH_EUKREA_CPUIMX27_USEUART4
351	bool "CPUIMX27 integrates UART4 module"
352	depends on MACH_CPUIMX27
353	help
354	  This adds support for the internal UART4 used on CPUIMX27
355	  for bluetooth.
356
357choice
358	prompt "Baseboard"
359	depends on MACH_CPUIMX27
360	default MACH_EUKREA_MBIMX27_BASEBOARD
361
362config MACH_EUKREA_MBIMX27_BASEBOARD
363	bool "Eukrea MBIMX27 development board"
364	select IMX_HAVE_PLATFORM_IMX_FB
365	select IMX_HAVE_PLATFORM_IMX_KEYPAD
366	select IMX_HAVE_PLATFORM_IMX_SSI
367	select IMX_HAVE_PLATFORM_IMX_UART
368	select IMX_HAVE_PLATFORM_MXC_MMC
369	select IMX_HAVE_PLATFORM_SPI_IMX
370	select LEDS_GPIO_REGISTER
371	help
372	  This adds board specific devices that can be found on Eukrea's
373	  MBIMX27 evaluation board.
374
375endchoice
376
377config MACH_MX27_3DS
378	bool "MX27PDK platform"
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_KEYPAD
384	select IMX_HAVE_PLATFORM_IMX_SSI
385	select IMX_HAVE_PLATFORM_IMX_UART
386	select IMX_HAVE_PLATFORM_MX2_CAMERA
387	select IMX_HAVE_PLATFORM_MXC_EHCI
388	select IMX_HAVE_PLATFORM_MXC_MMC
389	select IMX_HAVE_PLATFORM_SPI_IMX
390	select MXC_DEBUG_BOARD
391	select MXC_ULPI if USB_ULPI
392	select SOC_IMX27
393	help
394	  Include support for MX27PDK platform. This includes specific
395	  configurations for the board and its peripherals.
396
397config MACH_IMX27_VISSTRIM_M10
398	bool "Vista Silicon i.MX27 Visstrim_m10"
399	select IMX_HAVE_PLATFORM_GPIO_KEYS
400	select IMX_HAVE_PLATFORM_IMX_I2C
401	select IMX_HAVE_PLATFORM_IMX_SSI
402	select IMX_HAVE_PLATFORM_IMX_UART
403	select IMX_HAVE_PLATFORM_MX2_CAMERA
404	select IMX_HAVE_PLATFORM_MX2_EMMA
405	select IMX_HAVE_PLATFORM_MXC_EHCI
406	select IMX_HAVE_PLATFORM_MXC_MMC
407	select LEDS_GPIO_REGISTER
408	select SOC_IMX27
409	help
410	  Include support for Visstrim_m10 platform and its different variants.
411	  This includes specific configurations for the board and its
412	  peripherals.
413
414config MACH_IMX27LITE
415	bool "LogicPD MX27 LITEKIT platform"
416	select IMX_HAVE_PLATFORM_IMX_SSI
417	select IMX_HAVE_PLATFORM_IMX_UART
418	select SOC_IMX27
419	help
420	  Include support for MX27 LITEKIT platform. This includes specific
421	  configurations for the board and its peripherals.
422
423config MACH_PCA100
424	bool "Phytec phyCARD-s (pca100)"
425	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
426	select IMX_HAVE_PLATFORM_IMX2_WDT
427	select IMX_HAVE_PLATFORM_IMX_FB
428	select IMX_HAVE_PLATFORM_IMX_I2C
429	select IMX_HAVE_PLATFORM_IMX_SSI
430	select IMX_HAVE_PLATFORM_IMX_UART
431	select IMX_HAVE_PLATFORM_MXC_EHCI
432	select IMX_HAVE_PLATFORM_MXC_MMC
433	select IMX_HAVE_PLATFORM_MXC_NAND
434	select IMX_HAVE_PLATFORM_MXC_W1
435	select IMX_HAVE_PLATFORM_SPI_IMX
436	select MXC_ULPI if USB_ULPI
437	select SOC_IMX27
438	help
439	  Include support for phyCARD-s (aka pca100) platform. This
440	  includes specific configurations for the module and its peripherals.
441
442config MACH_MXT_TD60
443	bool "Maxtrack i-MXT TD60"
444	select IMX_HAVE_PLATFORM_IMX_FB
445	select IMX_HAVE_PLATFORM_IMX_I2C
446	select IMX_HAVE_PLATFORM_IMX_UART
447	select IMX_HAVE_PLATFORM_MXC_MMC
448	select IMX_HAVE_PLATFORM_MXC_NAND
449	select SOC_IMX27
450	help
451	  Include support for i-MXT (aka td60) platform. This
452	  includes specific configurations for the module and its peripherals.
453
454config MACH_IMX27IPCAM
455	bool "IMX27 IPCAM platform"
456	select IMX_HAVE_PLATFORM_IMX2_WDT
457	select IMX_HAVE_PLATFORM_IMX_UART
458	select SOC_IMX27
459	help
460	  Include support for IMX27 IPCAM platform. This includes specific
461	  configurations for the board and its peripherals.
462
463config MACH_IMX27_DT
464	bool "Support i.MX27 platforms from device tree"
465	select SOC_IMX27
466	help
467	  Include support for Freescale i.MX27 based platforms
468	  using the device tree for discovery
469
470endif
471
472if ARCH_MULTI_V6
473
474comment "MX31 platforms:"
475
476config MACH_MX31ADS
477	bool "Support MX31ADS platforms"
478	default y
479	select IMX_HAVE_PLATFORM_IMX_I2C
480	select IMX_HAVE_PLATFORM_IMX_SSI
481	select IMX_HAVE_PLATFORM_IMX_UART
482	select SOC_IMX31
483	help
484	  Include support for MX31ADS platform. This includes specific
485	  configurations for the board and its peripherals.
486
487config MACH_MX31ADS_WM1133_EV1
488	bool "Support Wolfson Microelectronics 1133-EV1 module"
489	depends on MACH_MX31ADS
490	depends on MFD_WM8350_I2C
491	depends on REGULATOR_WM8350
492	select MFD_WM8350_CONFIG_MODE_0
493	select MFD_WM8352_CONFIG_MODE_0
494	help
495	  Include support for the Wolfson Microelectronics 1133-EV1 PMU
496	  and audio module for the MX31ADS platform.
497
498config MACH_MX31LILLY
499	bool "Support MX31 LILLY-1131 platforms (INCO startec)"
500	select IMX_HAVE_PLATFORM_IMX_UART
501	select IMX_HAVE_PLATFORM_IPU_CORE
502	select IMX_HAVE_PLATFORM_MXC_EHCI
503	select IMX_HAVE_PLATFORM_MXC_MMC
504	select IMX_HAVE_PLATFORM_SPI_IMX
505	select MXC_ULPI if USB_ULPI
506	select SOC_IMX31
507	help
508	  Include support for mx31 based LILLY1131 modules. This includes
509	  specific configurations for the board and its peripherals.
510
511config MACH_MX31LITE
512	bool "Support MX31 LITEKIT (LogicPD)"
513	select IMX_HAVE_PLATFORM_IMX2_WDT
514	select IMX_HAVE_PLATFORM_IMX_UART
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_MXC_RTC
519	select IMX_HAVE_PLATFORM_SPI_IMX
520	select LEDS_GPIO_REGISTER
521	select MXC_ULPI if USB_ULPI
522	select SOC_IMX31
523	help
524	  Include support for MX31 LITEKIT platform. This includes specific
525	  configurations for the board and its peripherals.
526
527config MACH_PCM037
528	bool "Support Phytec pcm037 (i.MX31) platforms"
529	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
530	select IMX_HAVE_PLATFORM_IMX2_WDT
531	select IMX_HAVE_PLATFORM_IMX_I2C
532	select IMX_HAVE_PLATFORM_IMX_UART
533	select IMX_HAVE_PLATFORM_IPU_CORE
534	select IMX_HAVE_PLATFORM_MXC_EHCI
535	select IMX_HAVE_PLATFORM_MXC_MMC
536	select IMX_HAVE_PLATFORM_MXC_NAND
537	select IMX_HAVE_PLATFORM_MXC_W1
538	select MXC_ULPI if USB_ULPI
539	select SOC_IMX31
540	help
541	  Include support for Phytec pcm037 platform. This includes
542	  specific configurations for the board and its peripherals.
543
544config MACH_PCM037_EET
545	bool "Support pcm037 EET board extensions"
546	depends on MACH_PCM037
547	select IMX_HAVE_PLATFORM_GPIO_KEYS
548	select IMX_HAVE_PLATFORM_SPI_IMX
549	help
550	  Add support for PCM037 EET baseboard extensions. If you are using the
551	  OLED display with EET, use "video=mx3fb:CMEL-OLED" kernel
552	  command-line parameter.
553
554config MACH_MX31_3DS
555	bool "Support MX31PDK (3DS)"
556	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
557	select IMX_HAVE_PLATFORM_IMX2_WDT
558	select IMX_HAVE_PLATFORM_IMX_I2C
559	select IMX_HAVE_PLATFORM_IMX_KEYPAD
560	select IMX_HAVE_PLATFORM_IMX_SSI
561	select IMX_HAVE_PLATFORM_IMX_UART
562	select IMX_HAVE_PLATFORM_IPU_CORE
563	select IMX_HAVE_PLATFORM_MXC_EHCI
564	select IMX_HAVE_PLATFORM_MXC_MMC
565	select IMX_HAVE_PLATFORM_MXC_NAND
566	select IMX_HAVE_PLATFORM_SPI_IMX
567	select MXC_DEBUG_BOARD
568	select MXC_ULPI if USB_ULPI
569	select SOC_IMX31
570	help
571	  Include support for MX31PDK (3DS) platform. This includes specific
572	  configurations for the board and its peripherals.
573
574config MACH_MX31_3DS_MXC_NAND_USE_BBT
575	bool "Make the MXC NAND driver use the in flash Bad Block Table"
576	depends on MACH_MX31_3DS
577	depends on MTD_NAND_MXC
578	help
579	  Enable this if you want that the MXC NAND driver uses the in flash
580	  Bad Block Table to know what blocks are bad instead of scanning the
581	  entire flash looking for bad block markers.
582
583config MACH_MX31MOBOARD
584	bool "Support mx31moboard platforms (EPFL Mobots group)"
585	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
586	select IMX_HAVE_PLATFORM_IMX2_WDT
587	select IMX_HAVE_PLATFORM_IMX_I2C
588	select IMX_HAVE_PLATFORM_IMX_SSI
589	select IMX_HAVE_PLATFORM_IMX_UART
590	select IMX_HAVE_PLATFORM_IPU_CORE
591	select IMX_HAVE_PLATFORM_MXC_EHCI
592	select IMX_HAVE_PLATFORM_MXC_MMC
593	select IMX_HAVE_PLATFORM_SPI_IMX
594	select LEDS_GPIO_REGISTER
595	select MXC_ULPI if USB_ULPI
596	select SOC_IMX31
597	help
598	  Include support for mx31moboard platform. This includes specific
599	  configurations for the board and its peripherals.
600
601config MACH_QONG
602	bool "Support Dave/DENX QongEVB-LITE platform"
603	select IMX_HAVE_PLATFORM_IMX2_WDT
604	select IMX_HAVE_PLATFORM_IMX_UART
605	select SOC_IMX31
606	help
607	  Include support for Dave/DENX QongEVB-LITE platform. This includes
608	  specific configurations for the board and its peripherals.
609
610config MACH_ARMADILLO5X0
611	bool "Support Atmark Armadillo-500 Development Base Board"
612	select IMX_HAVE_PLATFORM_GPIO_KEYS
613	select IMX_HAVE_PLATFORM_IMX_I2C
614	select IMX_HAVE_PLATFORM_IMX_UART
615	select IMX_HAVE_PLATFORM_IPU_CORE
616	select IMX_HAVE_PLATFORM_MXC_EHCI
617	select IMX_HAVE_PLATFORM_MXC_MMC
618	select IMX_HAVE_PLATFORM_MXC_NAND
619	select MXC_ULPI if USB_ULPI
620	select SOC_IMX31
621	help
622	  Include support for Atmark Armadillo-500 platform. This includes
623	  specific configurations for the board and its peripherals.
624
625config MACH_KZM_ARM11_01
626	bool "Support KZM-ARM11-01(Kyoto Microcomputer)"
627	select IMX_HAVE_PLATFORM_IMX_UART
628	select SOC_IMX31
629	help
630	  Include support for KZM-ARM11-01. This includes specific
631	  configurations for the board and its peripherals.
632
633config MACH_BUG
634	bool "Support Buglabs BUGBase platform"
635	default y
636	select IMX_HAVE_PLATFORM_IMX_UART
637	select SOC_IMX31
638	help
639	  Include support for BUGBase 1.3 platform. This includes specific
640	  configurations for the board and its peripherals.
641
642config MACH_IMX31_DT
643	bool "Support i.MX31 platforms from device tree"
644	select SOC_IMX31
645	help
646	  Include support for Freescale i.MX31 based platforms
647	  using the device tree for discovery.
648
649comment "MX35 platforms:"
650
651config MACH_PCM043
652	bool "Support Phytec pcm043 (i.MX35) platforms"
653	select IMX_HAVE_PLATFORM_FLEXCAN
654	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
655	select IMX_HAVE_PLATFORM_IMX2_WDT
656	select IMX_HAVE_PLATFORM_IMX_I2C
657	select IMX_HAVE_PLATFORM_IMX_SSI
658	select IMX_HAVE_PLATFORM_IMX_UART
659	select IMX_HAVE_PLATFORM_IPU_CORE
660	select IMX_HAVE_PLATFORM_MXC_EHCI
661	select IMX_HAVE_PLATFORM_MXC_NAND
662	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
663	select MXC_ULPI if USB_ULPI
664	select SOC_IMX35
665	help
666	  Include support for Phytec pcm043 platform. This includes
667	  specific configurations for the board and its peripherals.
668
669config MACH_MX35_3DS
670	bool "Support MX35PDK platform"
671	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
672	select IMX_HAVE_PLATFORM_IMX2_WDT
673	select IMX_HAVE_PLATFORM_IMX_FB
674	select IMX_HAVE_PLATFORM_IMX_I2C
675	select IMX_HAVE_PLATFORM_IMX_UART
676	select IMX_HAVE_PLATFORM_IPU_CORE
677	select IMX_HAVE_PLATFORM_MXC_EHCI
678	select IMX_HAVE_PLATFORM_MXC_NAND
679	select IMX_HAVE_PLATFORM_MXC_RTC
680	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
681	select MXC_DEBUG_BOARD
682	select SOC_IMX35
683	help
684	  Include support for MX35PDK platform. This includes specific
685	  configurations for the board and its peripherals.
686
687config MACH_EUKREA_CPUIMX35SD
688	bool "Support Eukrea CPUIMX35 Platform"
689	select IMX_HAVE_PLATFORM_FLEXCAN
690	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
691	select IMX_HAVE_PLATFORM_IMX2_WDT
692	select IMX_HAVE_PLATFORM_IMX_I2C
693	select IMX_HAVE_PLATFORM_IMX_UART
694	select IMX_HAVE_PLATFORM_MXC_EHCI
695	select IMX_HAVE_PLATFORM_MXC_NAND
696	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
697	select MXC_ULPI if USB_ULPI
698	select SOC_IMX35
699	help
700	  Include support for Eukrea CPUIMX35 platform. This includes
701	  specific configurations for the board and its peripherals.
702
703choice
704	prompt "Baseboard"
705	depends on MACH_EUKREA_CPUIMX35SD
706	default MACH_EUKREA_MBIMXSD35_BASEBOARD
707
708config MACH_EUKREA_MBIMXSD35_BASEBOARD
709	bool "Eukrea MBIMXSD development board"
710	select IMX_HAVE_PLATFORM_GPIO_KEYS
711	select IMX_HAVE_PLATFORM_IMX_SSI
712	select IMX_HAVE_PLATFORM_IPU_CORE
713	select IMX_HAVE_PLATFORM_SPI_IMX
714	select LEDS_GPIO_REGISTER
715	help
716	  This adds board specific devices that can be found on Eukrea's
717	  MBIMXSD evaluation board.
718
719endchoice
720
721config MACH_VPR200
722	bool "Support VPR200 platform"
723	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
724	select IMX_HAVE_PLATFORM_GPIO_KEYS
725	select IMX_HAVE_PLATFORM_IMX2_WDT
726	select IMX_HAVE_PLATFORM_IMX_I2C
727	select IMX_HAVE_PLATFORM_IMX_UART
728	select IMX_HAVE_PLATFORM_IPU_CORE
729	select IMX_HAVE_PLATFORM_MXC_EHCI
730	select IMX_HAVE_PLATFORM_MXC_NAND
731	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
732	select SOC_IMX35
733	help
734	  Include support for VPR200 platform. This includes specific
735	  configurations for the board and its peripherals.
736
737endif
738
739if ARCH_MULTI_V7
740
741comment "i.MX5 platforms:"
742
743config MACH_MX50_RDP
744	bool "Support MX50 reference design platform"
745	depends on BROKEN
746	select IMX_HAVE_PLATFORM_IMX_I2C
747	select IMX_HAVE_PLATFORM_IMX_UART
748	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
749	select IMX_HAVE_PLATFORM_SPI_IMX
750	select SOC_IMX50
751	help
752	  Include support for MX50 reference design platform (RDP) board. This
753	  includes specific configurations for the board and its peripherals.
754
755comment "i.MX51 machines:"
756
757config MACH_IMX51_DT
758	bool "Support i.MX51 platforms from device tree"
759	select MACH_MX51_BABBAGE
760	select SOC_IMX51
761	help
762	  Include support for Freescale i.MX51 based platforms
763	  using the device tree for discovery
764
765config MACH_MX51_BABBAGE
766	bool "Support MX51 BABBAGE platforms"
767	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
768	select IMX_HAVE_PLATFORM_IMX2_WDT
769	select IMX_HAVE_PLATFORM_IMX_I2C
770	select IMX_HAVE_PLATFORM_IMX_UART
771	select IMX_HAVE_PLATFORM_MXC_EHCI
772	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
773	select IMX_HAVE_PLATFORM_SPI_IMX
774	select SOC_IMX51
775	help
776	  Include support for MX51 Babbage platform, also known as MX51EVK in
777	  u-boot. This includes specific configurations for the board and its
778	  peripherals.
779
780config MACH_MX51_3DS
781	bool "Support MX51PDK (3DS)"
782	select IMX_HAVE_PLATFORM_IMX2_WDT
783	select IMX_HAVE_PLATFORM_IMX_KEYPAD
784	select IMX_HAVE_PLATFORM_IMX_UART
785	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
786	select IMX_HAVE_PLATFORM_SPI_IMX
787	select MXC_DEBUG_BOARD
788	select SOC_IMX51
789	help
790	  Include support for MX51PDK (3DS) platform. This includes specific
791	  configurations for the board and its peripherals.
792
793config MACH_EUKREA_CPUIMX51SD
794	bool "Support Eukrea CPUIMX51SD module"
795	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
796	select IMX_HAVE_PLATFORM_IMX2_WDT
797	select IMX_HAVE_PLATFORM_IMX_I2C
798	select IMX_HAVE_PLATFORM_IMX_UART
799	select IMX_HAVE_PLATFORM_MXC_EHCI
800	select IMX_HAVE_PLATFORM_MXC_NAND
801	select IMX_HAVE_PLATFORM_SPI_IMX
802	select SOC_IMX51
803	help
804	  Include support for Eukrea CPUIMX51SD platform. This includes
805	  specific configurations for the module and its peripherals.
806
807choice
808	prompt "Baseboard"
809	depends on MACH_EUKREA_CPUIMX51SD
810	default MACH_EUKREA_MBIMXSD51_BASEBOARD
811
812config MACH_EUKREA_MBIMXSD51_BASEBOARD
813	prompt "Eukrea MBIMXSD development board"
814	bool
815	select IMX_HAVE_PLATFORM_IMX_SSI
816	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
817	select LEDS_GPIO_REGISTER
818	help
819	  This adds board specific devices that can be found on Eukrea's
820	  MBIMXSD evaluation board.
821
822endchoice
823
824comment "Device tree only"
825
826config	SOC_IMX53
827	bool "i.MX53 support"
828	select ARCH_MX5
829	select ARCH_MX53
830	select HAVE_CAN_FLEXCAN if CAN
831	select IMX_HAVE_PLATFORM_IMX2_WDT
832	select PINCTRL
833	select PINCTRL_IMX53
834	select SOC_IMX5
835
836	help
837	  This enables support for Freescale i.MX53 processor.
838
839config SOC_IMX6Q
840	bool "i.MX6 Quad support"
841	select ARCH_HAS_CPUFREQ
842	select ARCH_HAS_OPP
843	select ARM_CPU_SUSPEND if PM
844	select ARM_ERRATA_754322
845	select ARM_ERRATA_764369 if SMP
846	select ARM_ERRATA_775420
847	select ARM_GIC
848	select COMMON_CLK
849	select CPU_V7
850	select HAVE_ARM_SCU
851	select HAVE_CAN_FLEXCAN if CAN
852	select HAVE_IMX_GPC
853	select HAVE_IMX_MMDC
854	select HAVE_IMX_SRC
855	select HAVE_SMP
856	select MFD_SYSCON
857	select PINCTRL
858	select PINCTRL_IMX6Q
859	select PL310_ERRATA_588369 if CACHE_PL310
860	select PL310_ERRATA_727915 if CACHE_PL310
861	select PL310_ERRATA_769419 if CACHE_PL310
862	select PM_OPP if PM
863
864	help
865	  This enables support for Freescale i.MX6 Quad processor.
866
867endif
868
869source "arch/arm/mach-imx/devices/Kconfig"
870
871endmenu
872