2 bool "Freescale i.MX family"
3 depends on ARCH_MULTI_V4_V5 || ARCH_MULTI_V6_V7 || ARM_SINGLE_ARMV7M
4 select ARCH_SUPPORTS_BIG_ENDIAN
6 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.
47 config HAVE_IMX_ANATOP
52 select PM_GENERIC_DOMAINS if PM
59 select ARCH_HAS_RESET_CONTROLLER
61 config IMX_HAVE_IOMUX_V1
64 config ARCH_MXC_IOMUX_V3
70 select IMX_HAVE_IOMUX_V1
77 select IMX_HAVE_IOMUX_V1
83 select IMX_HAVE_IOMUX_V1
91 select SMP_ON_UP if SMP
95 select ARCH_MXC_IOMUX_V3
99 select SMP_ON_UP if SMP
103 comment "MX1 platforms:"
106 bool "Synertronixx scb9328"
107 select IMX_HAVE_PLATFORM_IMX_UART
110 Say Y here if you are using a Synertronixx scb9328 board
114 select IMX_HAVE_PLATFORM_IMX_I2C
115 select IMX_HAVE_PLATFORM_IMX_UART
118 Say Yes here if you are using the Armadeus APF9328 development board
121 bool "Support i.MX1 platforms from device tree"
124 Include support for Freescale i.MX1 based platforms
125 using the device tree for discovery.
131 comment "MX21 platforms:"
134 bool "MX21ADS platform"
135 select IMX_HAVE_PLATFORM_IMX_FB
136 select IMX_HAVE_PLATFORM_IMX_UART
137 select IMX_HAVE_PLATFORM_MXC_MMC
138 select IMX_HAVE_PLATFORM_MXC_NAND
141 Include support for MX21ADS platform. This includes specific
142 configurations for the board and its peripherals.
144 comment "MX27 platforms:"
147 bool "MX27ADS platform"
148 select IMX_HAVE_PLATFORM_IMX_FB
149 select IMX_HAVE_PLATFORM_IMX_I2C
150 select IMX_HAVE_PLATFORM_IMX_UART
151 select IMX_HAVE_PLATFORM_MXC_MMC
152 select IMX_HAVE_PLATFORM_MXC_NAND
153 select IMX_HAVE_PLATFORM_MXC_W1
156 Include support for MX27ADS platform. This includes specific
157 configurations for the board and its peripherals.
160 bool "MX27PDK platform"
161 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
162 select IMX_HAVE_PLATFORM_IMX2_WDT
163 select IMX_HAVE_PLATFORM_IMX_FB
164 select IMX_HAVE_PLATFORM_IMX_I2C
165 select IMX_HAVE_PLATFORM_IMX_KEYPAD
166 select IMX_HAVE_PLATFORM_IMX_SSI
167 select IMX_HAVE_PLATFORM_IMX_UART
168 select IMX_HAVE_PLATFORM_MX2_CAMERA
169 select IMX_HAVE_PLATFORM_MXC_EHCI
170 select IMX_HAVE_PLATFORM_MXC_MMC
171 select IMX_HAVE_PLATFORM_SPI_IMX
172 select MXC_DEBUG_BOARD
173 select USB_ULPI_VIEWPORT if USB_ULPI
176 Include support for MX27PDK platform. This includes specific
177 configurations for the board and its peripherals.
179 config MACH_IMX27_VISSTRIM_M10
180 bool "Vista Silicon i.MX27 Visstrim_m10"
181 select IMX_HAVE_PLATFORM_GPIO_KEYS
182 select IMX_HAVE_PLATFORM_IMX_I2C
183 select IMX_HAVE_PLATFORM_IMX_SSI
184 select IMX_HAVE_PLATFORM_IMX_UART
185 select IMX_HAVE_PLATFORM_MX2_CAMERA
186 select IMX_HAVE_PLATFORM_MX2_EMMA
187 select IMX_HAVE_PLATFORM_MXC_EHCI
188 select IMX_HAVE_PLATFORM_MXC_MMC
189 select LEDS_GPIO_REGISTER
192 Include support for Visstrim_m10 platform and its different variants.
193 This includes specific configurations for the board and its
197 bool "Phytec phyCARD-s (pca100)"
198 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
199 select IMX_HAVE_PLATFORM_IMX2_WDT
200 select IMX_HAVE_PLATFORM_IMX_FB
201 select IMX_HAVE_PLATFORM_IMX_I2C
202 select IMX_HAVE_PLATFORM_IMX_SSI
203 select IMX_HAVE_PLATFORM_IMX_UART
204 select IMX_HAVE_PLATFORM_MXC_EHCI
205 select IMX_HAVE_PLATFORM_MXC_MMC
206 select IMX_HAVE_PLATFORM_MXC_NAND
207 select IMX_HAVE_PLATFORM_MXC_W1
208 select IMX_HAVE_PLATFORM_SPI_IMX
209 select USB_ULPI_VIEWPORT if USB_ULPI
212 Include support for phyCARD-s (aka pca100) platform. This
213 includes specific configurations for the module and its peripherals.
216 bool "Support i.MX27 platforms from device tree"
219 Include support for Freescale i.MX27 based platforms
220 using the device tree for discovery
226 comment "MX31 platforms:"
229 bool "Support MX31ADS platforms"
231 select IMX_HAVE_PLATFORM_IMX_I2C
232 select IMX_HAVE_PLATFORM_IMX_SSI
233 select IMX_HAVE_PLATFORM_IMX_UART
236 Include support for MX31ADS platform. This includes specific
237 configurations for the board and its peripherals.
239 config MACH_MX31ADS_WM1133_EV1
240 bool "Support Wolfson Microelectronics 1133-EV1 module"
241 depends on MACH_MX31ADS
242 depends on MFD_WM8350_I2C
243 depends on REGULATOR_WM8350 = y
245 Include support for the Wolfson Microelectronics 1133-EV1 PMU
246 and audio module for the MX31ADS platform.
248 config MACH_MX31LILLY
249 bool "Support MX31 LILLY-1131 platforms (INCO startec)"
250 select IMX_HAVE_PLATFORM_IMX_UART
251 select IMX_HAVE_PLATFORM_IPU_CORE
252 select IMX_HAVE_PLATFORM_MXC_EHCI
253 select IMX_HAVE_PLATFORM_MXC_MMC
254 select IMX_HAVE_PLATFORM_SPI_IMX
255 select USB_ULPI_VIEWPORT if USB_ULPI
258 Include support for mx31 based LILLY1131 modules. This includes
259 specific configurations for the board and its peripherals.
262 bool "Support MX31 LITEKIT (LogicPD)"
263 select IMX_HAVE_PLATFORM_IMX2_WDT
264 select IMX_HAVE_PLATFORM_IMX_UART
265 select IMX_HAVE_PLATFORM_MXC_EHCI
266 select IMX_HAVE_PLATFORM_MXC_MMC
267 select IMX_HAVE_PLATFORM_MXC_NAND
268 select IMX_HAVE_PLATFORM_MXC_RTC
269 select IMX_HAVE_PLATFORM_SPI_IMX
270 select LEDS_GPIO_REGISTER
271 select USB_ULPI_VIEWPORT if USB_ULPI
274 Include support for MX31 LITEKIT platform. This includes specific
275 configurations for the board and its peripherals.
278 bool "Support Phytec pcm037 (i.MX31) platforms"
279 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
280 select IMX_HAVE_PLATFORM_IMX2_WDT
281 select IMX_HAVE_PLATFORM_IMX_I2C
282 select IMX_HAVE_PLATFORM_IMX_UART
283 select IMX_HAVE_PLATFORM_IPU_CORE
284 select IMX_HAVE_PLATFORM_MXC_EHCI
285 select IMX_HAVE_PLATFORM_MXC_MMC
286 select IMX_HAVE_PLATFORM_MXC_NAND
287 select IMX_HAVE_PLATFORM_MXC_W1
288 select USB_ULPI_VIEWPORT if USB_ULPI
291 Include support for Phytec pcm037 platform. This includes
292 specific configurations for the board and its peripherals.
294 config MACH_PCM037_EET
295 bool "Support pcm037 EET board extensions"
296 depends on MACH_PCM037
297 select IMX_HAVE_PLATFORM_GPIO_KEYS
298 select IMX_HAVE_PLATFORM_SPI_IMX
300 Add support for PCM037 EET baseboard extensions. If you are using the
301 OLED display with EET, use "video=mx3fb:CMEL-OLED" kernel
302 command-line parameter.
305 bool "Support MX31PDK (3DS)"
306 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
307 select IMX_HAVE_PLATFORM_IMX2_WDT
308 select IMX_HAVE_PLATFORM_IMX_I2C
309 select IMX_HAVE_PLATFORM_IMX_KEYPAD
310 select IMX_HAVE_PLATFORM_IMX_SSI
311 select IMX_HAVE_PLATFORM_IMX_UART
312 select IMX_HAVE_PLATFORM_IPU_CORE
313 select IMX_HAVE_PLATFORM_MXC_EHCI
314 select IMX_HAVE_PLATFORM_MXC_MMC
315 select IMX_HAVE_PLATFORM_MXC_NAND
316 select IMX_HAVE_PLATFORM_SPI_IMX
317 select MXC_DEBUG_BOARD
318 select USB_ULPI_VIEWPORT if USB_ULPI
321 Include support for MX31PDK (3DS) platform. This includes specific
322 configurations for the board and its peripherals.
324 config MACH_MX31_3DS_MXC_NAND_USE_BBT
325 bool "Make the MXC NAND driver use the in flash Bad Block Table"
326 depends on MACH_MX31_3DS
327 depends on MTD_NAND_MXC
329 Enable this if you want that the MXC NAND driver uses the in flash
330 Bad Block Table to know what blocks are bad instead of scanning the
331 entire flash looking for bad block markers.
333 config MACH_MX31MOBOARD
334 bool "Support mx31moboard platforms (EPFL Mobots group)"
335 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
336 select IMX_HAVE_PLATFORM_IMX2_WDT
337 select IMX_HAVE_PLATFORM_IMX_I2C
338 select IMX_HAVE_PLATFORM_IMX_SSI
339 select IMX_HAVE_PLATFORM_IMX_UART
340 select IMX_HAVE_PLATFORM_IPU_CORE
341 select IMX_HAVE_PLATFORM_MXC_EHCI
342 select IMX_HAVE_PLATFORM_MXC_MMC
343 select IMX_HAVE_PLATFORM_SPI_IMX
344 select LEDS_GPIO_REGISTER
345 select USB_ULPI_VIEWPORT if USB_ULPI
348 Include support for mx31moboard platform. This includes specific
349 configurations for the board and its peripherals.
352 bool "Support Dave/DENX QongEVB-LITE platform"
353 select IMX_HAVE_PLATFORM_IMX2_WDT
354 select IMX_HAVE_PLATFORM_IMX_UART
357 Include support for Dave/DENX QongEVB-LITE platform. This includes
358 specific configurations for the board and its peripherals.
360 config MACH_ARMADILLO5X0
361 bool "Support Atmark Armadillo-500 Development Base Board"
362 select IMX_HAVE_PLATFORM_GPIO_KEYS
363 select IMX_HAVE_PLATFORM_IMX_I2C
364 select IMX_HAVE_PLATFORM_IMX_UART
365 select IMX_HAVE_PLATFORM_IPU_CORE
366 select IMX_HAVE_PLATFORM_MXC_EHCI
367 select IMX_HAVE_PLATFORM_MXC_MMC
368 select IMX_HAVE_PLATFORM_MXC_NAND
369 select USB_ULPI_VIEWPORT if USB_ULPI
372 Include support for Atmark Armadillo-500 platform. This includes
373 specific configurations for the board and its peripherals.
375 config MACH_KZM_ARM11_01
376 bool "Support KZM-ARM11-01(Kyoto Microcomputer)"
377 select IMX_HAVE_PLATFORM_IMX_UART
380 Include support for KZM-ARM11-01. This includes specific
381 configurations for the board and its peripherals.
384 bool "Support Buglabs BUGBase platform"
386 select IMX_HAVE_PLATFORM_IMX_UART
389 Include support for BUGBase 1.3 platform. This includes specific
390 configurations for the board and its peripherals.
393 bool "Support i.MX31 platforms from device tree"
396 Include support for Freescale i.MX31 based platforms
397 using the device tree for discovery.
399 comment "MX35 platforms:"
402 bool "Support i.MX35 platforms from device tree"
405 Include support for Freescale i.MX35 based platforms
406 using the device tree for discovery.
409 bool "Support Phytec pcm043 (i.MX35) platforms"
410 select IMX_HAVE_PLATFORM_FLEXCAN
411 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
412 select IMX_HAVE_PLATFORM_IMX2_WDT
413 select IMX_HAVE_PLATFORM_IMX_I2C
414 select IMX_HAVE_PLATFORM_IMX_SSI
415 select IMX_HAVE_PLATFORM_IMX_UART
416 select IMX_HAVE_PLATFORM_IPU_CORE
417 select IMX_HAVE_PLATFORM_MXC_EHCI
418 select IMX_HAVE_PLATFORM_MXC_NAND
419 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
420 select USB_ULPI_VIEWPORT if USB_ULPI
423 Include support for Phytec pcm043 platform. This includes
424 specific configurations for the board and its peripherals.
427 bool "Support MX35PDK platform"
428 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
429 select IMX_HAVE_PLATFORM_IMX2_WDT
430 select IMX_HAVE_PLATFORM_IMX_FB
431 select IMX_HAVE_PLATFORM_IMX_I2C
432 select IMX_HAVE_PLATFORM_IMX_UART
433 select IMX_HAVE_PLATFORM_IPU_CORE
434 select IMX_HAVE_PLATFORM_MXC_EHCI
435 select IMX_HAVE_PLATFORM_MXC_NAND
436 select IMX_HAVE_PLATFORM_MXC_RTC
437 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
438 select MXC_DEBUG_BOARD
441 Include support for MX35PDK platform. This includes specific
442 configurations for the board and its peripherals.
445 bool "Support VPR200 platform"
446 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
447 select IMX_HAVE_PLATFORM_GPIO_KEYS
448 select IMX_HAVE_PLATFORM_IMX2_WDT
449 select IMX_HAVE_PLATFORM_IMX_I2C
450 select IMX_HAVE_PLATFORM_IMX_UART
451 select IMX_HAVE_PLATFORM_IPU_CORE
452 select IMX_HAVE_PLATFORM_MXC_EHCI
453 select IMX_HAVE_PLATFORM_MXC_NAND
454 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
457 Include support for VPR200 platform. This includes specific
458 configurations for the board and its peripherals.
462 comment "Device tree only"
467 bool "i.MX25 support"
468 select ARCH_MXC_IOMUX_V3
473 This enables support for Freescale i.MX25 processor
478 comment "Cortex-A platforms"
486 bool "i.MX50 support"
491 This enables support for Freescale i.MX50 processor.
494 bool "i.MX51 support"
498 This enables support for Freescale i.MX51 processor
501 bool "i.MX53 support"
506 This enables support for Freescale i.MX53 processor.
510 select ARM_CPU_SUSPEND if PM
511 select ARM_ERRATA_754322
512 select ARM_ERRATA_775420
514 select HAVE_IMX_ANATOP
519 select PL310_ERRATA_769419 if CACHE_L2X0
522 bool "i.MX6 Quad/DualLite support"
523 select ARM_ERRATA_764369 if SMP
524 select HAVE_ARM_SCU if SMP
526 select PCI_DOMAINS if PCI
531 This enables support for Freescale i.MX6 Quad processor.
534 bool "i.MX6 SoloLite support"
535 select PINCTRL_IMX6SL
539 This enables support for Freescale i.MX6 SoloLite processor.
542 bool "i.MX6 SoloX support"
543 select PINCTRL_IMX6SX
547 This enables support for Freescale i.MX6 SoloX processor.
550 bool "i.MX6 UltraLite support"
551 select PINCTRL_IMX6UL
555 This enables support for Freescale i.MX6 UltraLite processor.
558 bool "i.MX7 Dual support"
561 select HAVE_ARM_ARCH_TIMER
562 select HAVE_IMX_ANATOP
566 This enables support for Freescale i.MX7 Dual processor.
569 bool "Freescale LS1021A support"
571 select HAVE_ARM_ARCH_TIMER
572 select PCI_DOMAINS if PCI
573 select ZONE_DMA if ARM_LPAE
575 This enables support for Freescale LS1021A processor.
579 comment "Cortex-A/Cortex-M asymmetric multiprocessing platforms"
581 if ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M
584 bool "Vybrid Family VF610 support"
585 select ARM_GIC if ARCH_MULTI_V7
587 select PL310_ERRATA_769419 if CACHE_L2X0
588 select SMP_ON_UP if SMP
591 This enables support for Freescale Vybrid VF610 processor.
594 prompt "Clocksource for scheduler clock"
596 default VF_USE_ARM_GLOBAL_TIMER
598 config VF_USE_ARM_GLOBAL_TIMER
599 bool "Use ARM Global Timer"
600 depends on ARCH_MULTI_V7
601 select ARM_GLOBAL_TIMER
602 select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
604 Use the ARM Global Timer as clocksource
606 config VF_USE_PIT_TIMER
610 Use SoC Periodic Interrupt Timer (PIT) as clocksource
616 source "arch/arm/mach-imx/devices/Kconfig"