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