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