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