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