2 bool "Freescale i.MX family"
3 depends on ARCH_MULTI_V4_V5 || ARCH_MULTI_V6_V7 || ARM_SINGLE_ARMV7M
4 select ARCH_REQUIRE_GPIOLIB
5 select ARCH_SUPPORTS_BIG_ENDIAN
7 select GENERIC_IRQ_CHIP
13 Support for Freescale MXC/iMX-based family of processors
23 config MXC_DEBUG_BOARD
24 bool "Enable MXC debug board(for 3-stack)"
25 depends on MACH_MX27_3DS || MACH_MX31_3DS || MACH_MX35_3DS
27 The debug board is an integral part of the MXC 3-stack(PDK)
28 platforms, it can be attached or removed from the peripheral
29 board. On debug board, several debug devices(ethernet, UART,
30 buttons, LEDs and JTAG) are implemented. Between the MCU and
31 these devices, a CPLD is added as a bridge which performs
32 data/address de-multiplexing and decode, signal level shift,
33 interrupt control and various board functions.
39 bool "Use EPIT instead of GPT"
42 Use EPIT as the system timer on systems that have it. Normally you
43 don't have a reason to do so as the EPIT has the same features and
44 uses the same clocks as the GPT. Anyway, on some systems the GPT
45 may be in use for other purposes.
50 config HAVE_IMX_ANATOP
55 select PM_GENERIC_DOMAINS if PM
62 select ARCH_HAS_RESET_CONTROLLER
64 config IMX_HAVE_IOMUX_V1
67 config ARCH_MXC_IOMUX_V3
73 select IMX_HAVE_IOMUX_V1
80 select IMX_HAVE_IOMUX_V1
86 select IMX_HAVE_IOMUX_V1
93 select IMX_HAVE_PLATFORM_MXC_RNGA
95 select SMP_ON_UP if SMP
99 select ARCH_MXC_IOMUX_V3
103 select SMP_ON_UP if SMP
107 comment "MX1 platforms:"
110 bool "Synertronixx scb9328"
111 select IMX_HAVE_PLATFORM_IMX_UART
114 Say Y here if you are using a Synertronixx scb9328 board
118 select IMX_HAVE_PLATFORM_IMX_I2C
119 select IMX_HAVE_PLATFORM_IMX_UART
122 Say Yes here if you are using the Armadeus APF9328 development board
125 bool "Support i.MX1 platforms from device tree"
128 Include support for Freescale i.MX1 based platforms
129 using the device tree for discovery.
135 comment "MX21 platforms:"
138 bool "MX21ADS platform"
139 select IMX_HAVE_PLATFORM_IMX_FB
140 select IMX_HAVE_PLATFORM_IMX_UART
141 select IMX_HAVE_PLATFORM_MXC_MMC
142 select IMX_HAVE_PLATFORM_MXC_NAND
145 Include support for MX21ADS platform. This includes specific
146 configurations for the board and its peripherals.
148 comment "MX27 platforms:"
151 bool "MX27ADS platform"
152 select IMX_HAVE_PLATFORM_IMX_FB
153 select IMX_HAVE_PLATFORM_IMX_I2C
154 select IMX_HAVE_PLATFORM_IMX_UART
155 select IMX_HAVE_PLATFORM_MXC_MMC
156 select IMX_HAVE_PLATFORM_MXC_NAND
157 select IMX_HAVE_PLATFORM_MXC_W1
160 Include support for MX27ADS platform. This includes specific
161 configurations for the board and its peripherals.
164 bool "MX27PDK platform"
165 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
166 select IMX_HAVE_PLATFORM_IMX2_WDT
167 select IMX_HAVE_PLATFORM_IMX_FB
168 select IMX_HAVE_PLATFORM_IMX_I2C
169 select IMX_HAVE_PLATFORM_IMX_KEYPAD
170 select IMX_HAVE_PLATFORM_IMX_SSI
171 select IMX_HAVE_PLATFORM_IMX_UART
172 select IMX_HAVE_PLATFORM_MX2_CAMERA
173 select IMX_HAVE_PLATFORM_MXC_EHCI
174 select IMX_HAVE_PLATFORM_MXC_MMC
175 select IMX_HAVE_PLATFORM_SPI_IMX
176 select MXC_DEBUG_BOARD
177 select USB_ULPI_VIEWPORT if USB_ULPI
180 Include support for MX27PDK platform. This includes specific
181 configurations for the board and its peripherals.
183 config MACH_IMX27_VISSTRIM_M10
184 bool "Vista Silicon i.MX27 Visstrim_m10"
185 select IMX_HAVE_PLATFORM_GPIO_KEYS
186 select IMX_HAVE_PLATFORM_IMX_I2C
187 select IMX_HAVE_PLATFORM_IMX_SSI
188 select IMX_HAVE_PLATFORM_IMX_UART
189 select IMX_HAVE_PLATFORM_MX2_CAMERA
190 select IMX_HAVE_PLATFORM_MX2_EMMA
191 select IMX_HAVE_PLATFORM_MXC_EHCI
192 select IMX_HAVE_PLATFORM_MXC_MMC
193 select LEDS_GPIO_REGISTER
196 Include support for Visstrim_m10 platform and its different variants.
197 This includes specific configurations for the board and its
201 bool "Phytec phyCARD-s (pca100)"
202 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
203 select IMX_HAVE_PLATFORM_IMX2_WDT
204 select IMX_HAVE_PLATFORM_IMX_FB
205 select IMX_HAVE_PLATFORM_IMX_I2C
206 select IMX_HAVE_PLATFORM_IMX_SSI
207 select IMX_HAVE_PLATFORM_IMX_UART
208 select IMX_HAVE_PLATFORM_MXC_EHCI
209 select IMX_HAVE_PLATFORM_MXC_MMC
210 select IMX_HAVE_PLATFORM_MXC_NAND
211 select IMX_HAVE_PLATFORM_MXC_W1
212 select IMX_HAVE_PLATFORM_SPI_IMX
213 select USB_ULPI_VIEWPORT if USB_ULPI
216 Include support for phyCARD-s (aka pca100) platform. This
217 includes specific configurations for the module and its peripherals.
220 bool "Support i.MX27 platforms from device tree"
223 Include support for Freescale i.MX27 based platforms
224 using the device tree for discovery
230 comment "MX31 platforms:"
233 bool "Support MX31ADS platforms"
235 select IMX_HAVE_PLATFORM_IMX_I2C
236 select IMX_HAVE_PLATFORM_IMX_SSI
237 select IMX_HAVE_PLATFORM_IMX_UART
240 Include support for MX31ADS platform. This includes specific
241 configurations for the board and its peripherals.
243 config MACH_MX31ADS_WM1133_EV1
244 bool "Support Wolfson Microelectronics 1133-EV1 module"
245 depends on MACH_MX31ADS
246 depends on MFD_WM8350_I2C
247 depends on REGULATOR_WM8350 = y
249 Include support for the Wolfson Microelectronics 1133-EV1 PMU
250 and audio module for the MX31ADS platform.
252 config MACH_MX31LILLY
253 bool "Support MX31 LILLY-1131 platforms (INCO startec)"
254 select IMX_HAVE_PLATFORM_IMX_UART
255 select IMX_HAVE_PLATFORM_IPU_CORE
256 select IMX_HAVE_PLATFORM_MXC_EHCI
257 select IMX_HAVE_PLATFORM_MXC_MMC
258 select IMX_HAVE_PLATFORM_SPI_IMX
259 select USB_ULPI_VIEWPORT if USB_ULPI
262 Include support for mx31 based LILLY1131 modules. This includes
263 specific configurations for the board and its peripherals.
266 bool "Support MX31 LITEKIT (LogicPD)"
267 select IMX_HAVE_PLATFORM_IMX2_WDT
268 select IMX_HAVE_PLATFORM_IMX_UART
269 select IMX_HAVE_PLATFORM_MXC_EHCI
270 select IMX_HAVE_PLATFORM_MXC_MMC
271 select IMX_HAVE_PLATFORM_MXC_NAND
272 select IMX_HAVE_PLATFORM_MXC_RTC
273 select IMX_HAVE_PLATFORM_SPI_IMX
274 select LEDS_GPIO_REGISTER
275 select USB_ULPI_VIEWPORT if USB_ULPI
278 Include support for MX31 LITEKIT platform. This includes specific
279 configurations for the board and its peripherals.
282 bool "Support Phytec pcm037 (i.MX31) platforms"
283 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
284 select IMX_HAVE_PLATFORM_IMX2_WDT
285 select IMX_HAVE_PLATFORM_IMX_I2C
286 select IMX_HAVE_PLATFORM_IMX_UART
287 select IMX_HAVE_PLATFORM_IPU_CORE
288 select IMX_HAVE_PLATFORM_MXC_EHCI
289 select IMX_HAVE_PLATFORM_MXC_MMC
290 select IMX_HAVE_PLATFORM_MXC_NAND
291 select IMX_HAVE_PLATFORM_MXC_W1
292 select USB_ULPI_VIEWPORT if USB_ULPI
295 Include support for Phytec pcm037 platform. This includes
296 specific configurations for the board and its peripherals.
298 config MACH_PCM037_EET
299 bool "Support pcm037 EET board extensions"
300 depends on MACH_PCM037
301 select IMX_HAVE_PLATFORM_GPIO_KEYS
302 select IMX_HAVE_PLATFORM_SPI_IMX
304 Add support for PCM037 EET baseboard extensions. If you are using the
305 OLED display with EET, use "video=mx3fb:CMEL-OLED" kernel
306 command-line parameter.
309 bool "Support MX31PDK (3DS)"
310 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
311 select IMX_HAVE_PLATFORM_IMX2_WDT
312 select IMX_HAVE_PLATFORM_IMX_I2C
313 select IMX_HAVE_PLATFORM_IMX_KEYPAD
314 select IMX_HAVE_PLATFORM_IMX_SSI
315 select IMX_HAVE_PLATFORM_IMX_UART
316 select IMX_HAVE_PLATFORM_IPU_CORE
317 select IMX_HAVE_PLATFORM_MXC_EHCI
318 select IMX_HAVE_PLATFORM_MXC_MMC
319 select IMX_HAVE_PLATFORM_MXC_NAND
320 select IMX_HAVE_PLATFORM_SPI_IMX
321 select MXC_DEBUG_BOARD
322 select USB_ULPI_VIEWPORT if USB_ULPI
325 Include support for MX31PDK (3DS) platform. This includes specific
326 configurations for the board and its peripherals.
328 config MACH_MX31_3DS_MXC_NAND_USE_BBT
329 bool "Make the MXC NAND driver use the in flash Bad Block Table"
330 depends on MACH_MX31_3DS
331 depends on MTD_NAND_MXC
333 Enable this if you want that the MXC NAND driver uses the in flash
334 Bad Block Table to know what blocks are bad instead of scanning the
335 entire flash looking for bad block markers.
337 config MACH_MX31MOBOARD
338 bool "Support mx31moboard platforms (EPFL Mobots group)"
339 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
340 select IMX_HAVE_PLATFORM_IMX2_WDT
341 select IMX_HAVE_PLATFORM_IMX_I2C
342 select IMX_HAVE_PLATFORM_IMX_SSI
343 select IMX_HAVE_PLATFORM_IMX_UART
344 select IMX_HAVE_PLATFORM_IPU_CORE
345 select IMX_HAVE_PLATFORM_MXC_EHCI
346 select IMX_HAVE_PLATFORM_MXC_MMC
347 select IMX_HAVE_PLATFORM_SPI_IMX
348 select LEDS_GPIO_REGISTER
349 select USB_ULPI_VIEWPORT if USB_ULPI
352 Include support for mx31moboard platform. This includes specific
353 configurations for the board and its peripherals.
356 bool "Support Dave/DENX QongEVB-LITE platform"
357 select IMX_HAVE_PLATFORM_IMX2_WDT
358 select IMX_HAVE_PLATFORM_IMX_UART
361 Include support for Dave/DENX QongEVB-LITE platform. This includes
362 specific configurations for the board and its peripherals.
364 config MACH_ARMADILLO5X0
365 bool "Support Atmark Armadillo-500 Development Base Board"
366 select IMX_HAVE_PLATFORM_GPIO_KEYS
367 select IMX_HAVE_PLATFORM_IMX_I2C
368 select IMX_HAVE_PLATFORM_IMX_UART
369 select IMX_HAVE_PLATFORM_IPU_CORE
370 select IMX_HAVE_PLATFORM_MXC_EHCI
371 select IMX_HAVE_PLATFORM_MXC_MMC
372 select IMX_HAVE_PLATFORM_MXC_NAND
373 select USB_ULPI_VIEWPORT if USB_ULPI
376 Include support for Atmark Armadillo-500 platform. This includes
377 specific configurations for the board and its peripherals.
379 config MACH_KZM_ARM11_01
380 bool "Support KZM-ARM11-01(Kyoto Microcomputer)"
381 select IMX_HAVE_PLATFORM_IMX_UART
384 Include support for KZM-ARM11-01. This includes specific
385 configurations for the board and its peripherals.
388 bool "Support Buglabs BUGBase platform"
390 select IMX_HAVE_PLATFORM_IMX_UART
393 Include support for BUGBase 1.3 platform. This includes specific
394 configurations for the board and its peripherals.
397 bool "Support i.MX31 platforms from device tree"
400 Include support for Freescale i.MX31 based platforms
401 using the device tree for discovery.
403 comment "MX35 platforms:"
406 bool "Support i.MX35 platforms from device tree"
409 Include support for Freescale i.MX35 based platforms
410 using the device tree for discovery.
413 bool "Support Phytec pcm043 (i.MX35) platforms"
414 select IMX_HAVE_PLATFORM_FLEXCAN
415 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
416 select IMX_HAVE_PLATFORM_IMX2_WDT
417 select IMX_HAVE_PLATFORM_IMX_I2C
418 select IMX_HAVE_PLATFORM_IMX_SSI
419 select IMX_HAVE_PLATFORM_IMX_UART
420 select IMX_HAVE_PLATFORM_IPU_CORE
421 select IMX_HAVE_PLATFORM_MXC_EHCI
422 select IMX_HAVE_PLATFORM_MXC_NAND
423 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
424 select USB_ULPI_VIEWPORT if USB_ULPI
427 Include support for Phytec pcm043 platform. This includes
428 specific configurations for the board and its peripherals.
431 bool "Support MX35PDK platform"
432 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
433 select IMX_HAVE_PLATFORM_IMX2_WDT
434 select IMX_HAVE_PLATFORM_IMX_FB
435 select IMX_HAVE_PLATFORM_IMX_I2C
436 select IMX_HAVE_PLATFORM_IMX_UART
437 select IMX_HAVE_PLATFORM_IPU_CORE
438 select IMX_HAVE_PLATFORM_MXC_EHCI
439 select IMX_HAVE_PLATFORM_MXC_NAND
440 select IMX_HAVE_PLATFORM_MXC_RTC
441 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
442 select MXC_DEBUG_BOARD
445 Include support for MX35PDK platform. This includes specific
446 configurations for the board and its peripherals.
449 bool "Support VPR200 platform"
450 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
451 select IMX_HAVE_PLATFORM_GPIO_KEYS
452 select IMX_HAVE_PLATFORM_IMX2_WDT
453 select IMX_HAVE_PLATFORM_IMX_I2C
454 select IMX_HAVE_PLATFORM_IMX_UART
455 select IMX_HAVE_PLATFORM_IPU_CORE
456 select IMX_HAVE_PLATFORM_MXC_EHCI
457 select IMX_HAVE_PLATFORM_MXC_NAND
458 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
461 Include support for VPR200 platform. This includes specific
462 configurations for the board and its peripherals.
466 comment "Device tree only"
471 bool "i.MX25 support"
472 select ARCH_MXC_IOMUX_V3
477 This enables support for Freescale i.MX25 processor
482 comment "Cortex-A platforms"
490 bool "i.MX50 support"
495 This enables support for Freescale i.MX50 processor.
498 bool "i.MX51 support"
502 This enables support for Freescale i.MX51 processor
505 bool "i.MX53 support"
510 This enables support for Freescale i.MX53 processor.
514 select ARM_CPU_SUSPEND if PM
515 select ARM_ERRATA_754322
516 select ARM_ERRATA_775420
518 select HAVE_IMX_ANATOP
523 select PL310_ERRATA_769419 if CACHE_L2X0
526 bool "i.MX6 Quad/DualLite support"
527 select ARM_ERRATA_764369 if SMP
528 select HAVE_ARM_SCU if SMP
529 select HAVE_ARM_TWD if SMP
530 select PCI_DOMAINS if PCI
535 This enables support for Freescale i.MX6 Quad processor.
538 bool "i.MX6 SoloLite support"
539 select PINCTRL_IMX6SL
543 This enables support for Freescale i.MX6 SoloLite processor.
546 bool "i.MX6 SoloX support"
547 select PINCTRL_IMX6SX
551 This enables support for Freescale i.MX6 SoloX processor.
554 bool "i.MX6 UltraLite support"
555 select PINCTRL_IMX6UL
559 This enables support for Freescale i.MX6 UltraLite processor.
562 bool "i.MX7 Dual support"
565 select HAVE_ARM_ARCH_TIMER
566 select HAVE_IMX_ANATOP
570 This enables support for Freescale i.MX7 Dual processor.
573 bool "Freescale LS1021A support"
575 select HAVE_ARM_ARCH_TIMER
576 select PCI_DOMAINS if PCI
577 select ZONE_DMA if ARM_LPAE
579 This enables support for Freescale LS1021A processor.
583 comment "Cortex-A/Cortex-M asymmetric multiprocessing platforms"
585 if ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M
588 bool "Vybrid Family VF610 support"
589 select ARM_GIC if ARCH_MULTI_V7
591 select PL310_ERRATA_769419 if CACHE_L2X0
592 select SMP_ON_UP if SMP
595 This enables support for Freescale Vybrid VF610 processor.
598 prompt "Clocksource for scheduler clock"
600 default VF_USE_ARM_GLOBAL_TIMER
602 config VF_USE_ARM_GLOBAL_TIMER
603 bool "Use ARM Global Timer"
604 depends on ARCH_MULTI_V7
605 select ARM_GLOBAL_TIMER
606 select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
608 Use the ARM Global Timer as clocksource
610 config VF_USE_PIT_TIMER
614 Use SoC Periodic Interrupt Timer (PIT) as clocksource
620 source "arch/arm/mach-imx/devices/Kconfig"