Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
[cascardo/linux.git] / arch / arm / mach-imx / Kconfig
1 config 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
17 menu "Freescale i.MX support"
18         depends on ARCH_MXC
19
20 config 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
30 config MXC_TZIC
31         bool
32
33 config MXC_AVIC
34         bool
35
36 config 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
47 config HAVE_EPIT
48         bool
49
50 config 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
59 config ARCH_HAS_RNGA
60         bool
61
62 config HAVE_IMX_ANATOP
63         bool
64
65 config HAVE_IMX_GPC
66         bool
67
68 config HAVE_IMX_MMDC
69         bool
70
71 config HAVE_IMX_SRC
72         def_bool y if SMP
73         select ARCH_HAS_RESET_CONTROLLER
74
75 config IMX_HAVE_IOMUX_V1
76         bool
77
78 config ARCH_MXC_IOMUX_V3
79         bool
80
81 config ARCH_MX1
82         bool
83
84 config ARCH_MX25
85         bool
86
87 config MACH_MX27
88         bool
89
90 config 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
98 config SOC_IMX21
99         bool
100         select COMMON_CLK
101         select CPU_ARM926T
102         select IMX_HAVE_IOMUX_V1
103         select MXC_AVIC
104
105 config 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
113 config 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
123 config 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
131 config 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
140 config 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
149 config  SOC_IMX51
150         bool
151         select HAVE_IMX_SRC
152         select PINCTRL
153         select PINCTRL_IMX51
154         select SOC_IMX5
155
156 if ARCH_MULTI_V4T
157
158 comment "MX1 platforms:"
159 config MACH_MXLADS
160         bool
161
162 config 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
171 config 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
178 config 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
186 endif
187
188 if ARCH_MULTI_V5
189
190 comment "MX21 platforms:"
191
192 config 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
203 comment "MX25 platforms:"
204
205 config 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
220 config 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
235 choice
236         prompt "Baseboard"
237         depends on MACH_EUKREA_CPUIMX25SD
238         default MACH_EUKREA_MBIMXSD25_BASEBOARD
239
240 config 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
250 endchoice
251
252 config 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
259 comment "MX27 platforms:"
260
261 config 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
274 config 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
289 choice
290         prompt "Baseboard"
291         depends on MACH_PCM038
292         default MACH_PCM970_BASEBOARD
293
294 config 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
302 endchoice
303
304 config 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
319 config 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
327 config 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
334 choice
335         prompt "Baseboard"
336         depends on MACH_CPUIMX27
337         default MACH_EUKREA_MBIMX27_BASEBOARD
338
339 config 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
352 endchoice
353
354 config 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
374 config 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
391 config 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
400 config 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
419 config 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
431 config 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
440 config 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
447 endif
448
449 if ARCH_MULTI_V6
450
451 comment "MX31 platforms:"
452
453 config 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
464 config 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
473 config 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
486 config 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
502 config 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
519 config 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
529 config 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
549 config 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
558 config 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
576 config 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
585 config 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
600 config 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
608 config 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
617 config 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
624 comment "MX35 platforms:"
625
626 config 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
644 config 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
662 config 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
678 choice
679         prompt "Baseboard"
680         depends on MACH_EUKREA_CPUIMX35SD
681         default MACH_EUKREA_MBIMXSD35_BASEBOARD
682
683 config 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
694 endchoice
695
696 config 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
712 endif
713
714 if ARCH_MULTI_V7
715
716 comment "i.MX51 machines:"
717
718 config 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
725 config 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
740 config 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
754 choice
755         prompt "Baseboard"
756         depends on MACH_EUKREA_CPUIMX51SD
757         default MACH_EUKREA_MBIMXSD51_BASEBOARD
758
759 config 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
769 endchoice
770
771 comment "Device tree only"
772
773 config  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
784 config 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
813 config 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
833 config 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
848 endif
849
850 source "arch/arm/mach-imx/devices/Kconfig"
851
852 endmenu