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