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