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