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