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
113 bool "Support i.MX1 platforms from device tree"
116 Include support for Freescale i.MX1 based platforms
117 using the device tree for discovery.
123 comment "MX21 platforms:"
126 bool "MX21ADS platform"
127 select IMX_HAVE_PLATFORM_IMX_FB
128 select IMX_HAVE_PLATFORM_IMX_UART
129 select IMX_HAVE_PLATFORM_MXC_MMC
130 select IMX_HAVE_PLATFORM_MXC_NAND
133 Include support for MX21ADS platform. This includes specific
134 configurations for the board and its peripherals.
136 comment "MX27 platforms:"
139 bool "MX27ADS platform"
140 select IMX_HAVE_PLATFORM_IMX_FB
141 select IMX_HAVE_PLATFORM_IMX_I2C
142 select IMX_HAVE_PLATFORM_IMX_UART
143 select IMX_HAVE_PLATFORM_MXC_MMC
144 select IMX_HAVE_PLATFORM_MXC_NAND
145 select IMX_HAVE_PLATFORM_MXC_W1
148 Include support for MX27ADS platform. This includes specific
149 configurations for the board and its peripherals.
152 bool "MX27PDK platform"
153 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
154 select IMX_HAVE_PLATFORM_IMX2_WDT
155 select IMX_HAVE_PLATFORM_IMX_FB
156 select IMX_HAVE_PLATFORM_IMX_I2C
157 select IMX_HAVE_PLATFORM_IMX_KEYPAD
158 select IMX_HAVE_PLATFORM_IMX_SSI
159 select IMX_HAVE_PLATFORM_IMX_UART
160 select IMX_HAVE_PLATFORM_MX2_CAMERA
161 select IMX_HAVE_PLATFORM_MXC_EHCI
162 select IMX_HAVE_PLATFORM_MXC_MMC
163 select IMX_HAVE_PLATFORM_SPI_IMX
164 select MXC_DEBUG_BOARD
165 select USB_ULPI_VIEWPORT if USB_ULPI
168 Include support for MX27PDK platform. This includes specific
169 configurations for the board and its peripherals.
171 config MACH_IMX27_VISSTRIM_M10
172 bool "Vista Silicon i.MX27 Visstrim_m10"
173 select IMX_HAVE_PLATFORM_GPIO_KEYS
174 select IMX_HAVE_PLATFORM_IMX_I2C
175 select IMX_HAVE_PLATFORM_IMX_SSI
176 select IMX_HAVE_PLATFORM_IMX_UART
177 select IMX_HAVE_PLATFORM_MX2_CAMERA
178 select IMX_HAVE_PLATFORM_MX2_EMMA
179 select IMX_HAVE_PLATFORM_MXC_EHCI
180 select IMX_HAVE_PLATFORM_MXC_MMC
181 select LEDS_GPIO_REGISTER
184 Include support for Visstrim_m10 platform and its different variants.
185 This includes specific configurations for the board and its
189 bool "Phytec phyCARD-s (pca100)"
190 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
191 select IMX_HAVE_PLATFORM_IMX2_WDT
192 select IMX_HAVE_PLATFORM_IMX_FB
193 select IMX_HAVE_PLATFORM_IMX_I2C
194 select IMX_HAVE_PLATFORM_IMX_SSI
195 select IMX_HAVE_PLATFORM_IMX_UART
196 select IMX_HAVE_PLATFORM_MXC_EHCI
197 select IMX_HAVE_PLATFORM_MXC_MMC
198 select IMX_HAVE_PLATFORM_MXC_NAND
199 select IMX_HAVE_PLATFORM_MXC_W1
200 select IMX_HAVE_PLATFORM_SPI_IMX
201 select USB_ULPI_VIEWPORT if USB_ULPI
204 Include support for phyCARD-s (aka pca100) platform. This
205 includes specific configurations for the module and its peripherals.
208 bool "Support i.MX27 platforms from device tree"
211 Include support for Freescale i.MX27 based platforms
212 using the device tree for discovery
218 comment "MX31 platforms:"
221 bool "Support MX31ADS platforms"
223 select IMX_HAVE_PLATFORM_IMX_I2C
224 select IMX_HAVE_PLATFORM_IMX_SSI
225 select IMX_HAVE_PLATFORM_IMX_UART
228 Include support for MX31ADS platform. This includes specific
229 configurations for the board and its peripherals.
231 config MACH_MX31ADS_WM1133_EV1
232 bool "Support Wolfson Microelectronics 1133-EV1 module"
233 depends on MACH_MX31ADS
234 depends on MFD_WM8350_I2C
235 depends on REGULATOR_WM8350 = y
237 Include support for the Wolfson Microelectronics 1133-EV1 PMU
238 and audio module for the MX31ADS platform.
240 config MACH_MX31LILLY
241 bool "Support MX31 LILLY-1131 platforms (INCO startec)"
242 select IMX_HAVE_PLATFORM_IMX_UART
243 select IMX_HAVE_PLATFORM_IPU_CORE
244 select IMX_HAVE_PLATFORM_MXC_EHCI
245 select IMX_HAVE_PLATFORM_MXC_MMC
246 select IMX_HAVE_PLATFORM_SPI_IMX
247 select USB_ULPI_VIEWPORT if USB_ULPI
250 Include support for mx31 based LILLY1131 modules. This includes
251 specific configurations for the board and its peripherals.
254 bool "Support MX31 LITEKIT (LogicPD)"
255 select IMX_HAVE_PLATFORM_IMX2_WDT
256 select IMX_HAVE_PLATFORM_IMX_UART
257 select IMX_HAVE_PLATFORM_MXC_EHCI
258 select IMX_HAVE_PLATFORM_MXC_MMC
259 select IMX_HAVE_PLATFORM_MXC_NAND
260 select IMX_HAVE_PLATFORM_MXC_RTC
261 select IMX_HAVE_PLATFORM_SPI_IMX
262 select LEDS_GPIO_REGISTER
263 select USB_ULPI_VIEWPORT if USB_ULPI
266 Include support for MX31 LITEKIT platform. This includes specific
267 configurations for the board and its peripherals.
270 bool "Support Phytec pcm037 (i.MX31) platforms"
271 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
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_IPU_CORE
276 select IMX_HAVE_PLATFORM_MXC_EHCI
277 select IMX_HAVE_PLATFORM_MXC_MMC
278 select IMX_HAVE_PLATFORM_MXC_NAND
279 select IMX_HAVE_PLATFORM_MXC_W1
280 select USB_ULPI_VIEWPORT if USB_ULPI
283 Include support for Phytec pcm037 platform. This includes
284 specific configurations for the board and its peripherals.
286 config MACH_PCM037_EET
287 bool "Support pcm037 EET board extensions"
288 depends on MACH_PCM037
289 select IMX_HAVE_PLATFORM_GPIO_KEYS
290 select IMX_HAVE_PLATFORM_SPI_IMX
292 Add support for PCM037 EET baseboard extensions. If you are using the
293 OLED display with EET, use "video=mx3fb:CMEL-OLED" kernel
294 command-line parameter.
297 bool "Support MX31PDK (3DS)"
298 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
299 select IMX_HAVE_PLATFORM_IMX2_WDT
300 select IMX_HAVE_PLATFORM_IMX_I2C
301 select IMX_HAVE_PLATFORM_IMX_KEYPAD
302 select IMX_HAVE_PLATFORM_IMX_SSI
303 select IMX_HAVE_PLATFORM_IMX_UART
304 select IMX_HAVE_PLATFORM_IPU_CORE
305 select IMX_HAVE_PLATFORM_MXC_EHCI
306 select IMX_HAVE_PLATFORM_MXC_MMC
307 select IMX_HAVE_PLATFORM_MXC_NAND
308 select IMX_HAVE_PLATFORM_SPI_IMX
309 select MXC_DEBUG_BOARD
310 select USB_ULPI_VIEWPORT if USB_ULPI
313 Include support for MX31PDK (3DS) platform. This includes specific
314 configurations for the board and its peripherals.
316 config MACH_MX31_3DS_MXC_NAND_USE_BBT
317 bool "Make the MXC NAND driver use the in flash Bad Block Table"
318 depends on MACH_MX31_3DS
319 depends on MTD_NAND_MXC
321 Enable this if you want that the MXC NAND driver uses the in flash
322 Bad Block Table to know what blocks are bad instead of scanning the
323 entire flash looking for bad block markers.
325 config MACH_MX31MOBOARD
326 bool "Support mx31moboard platforms (EPFL Mobots group)"
327 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
328 select IMX_HAVE_PLATFORM_IMX2_WDT
329 select IMX_HAVE_PLATFORM_IMX_I2C
330 select IMX_HAVE_PLATFORM_IMX_SSI
331 select IMX_HAVE_PLATFORM_IMX_UART
332 select IMX_HAVE_PLATFORM_IPU_CORE
333 select IMX_HAVE_PLATFORM_MXC_EHCI
334 select IMX_HAVE_PLATFORM_MXC_MMC
335 select IMX_HAVE_PLATFORM_SPI_IMX
336 select LEDS_GPIO_REGISTER
337 select USB_ULPI_VIEWPORT if USB_ULPI
340 Include support for mx31moboard platform. This includes specific
341 configurations for the board and its peripherals.
344 bool "Support Dave/DENX QongEVB-LITE platform"
345 select IMX_HAVE_PLATFORM_IMX2_WDT
346 select IMX_HAVE_PLATFORM_IMX_UART
349 Include support for Dave/DENX QongEVB-LITE platform. This includes
350 specific configurations for the board and its peripherals.
352 config MACH_ARMADILLO5X0
353 bool "Support Atmark Armadillo-500 Development Base Board"
354 select IMX_HAVE_PLATFORM_GPIO_KEYS
355 select IMX_HAVE_PLATFORM_IMX_I2C
356 select IMX_HAVE_PLATFORM_IMX_UART
357 select IMX_HAVE_PLATFORM_IPU_CORE
358 select IMX_HAVE_PLATFORM_MXC_EHCI
359 select IMX_HAVE_PLATFORM_MXC_MMC
360 select IMX_HAVE_PLATFORM_MXC_NAND
361 select USB_ULPI_VIEWPORT if USB_ULPI
364 Include support for Atmark Armadillo-500 platform. This includes
365 specific configurations for the board and its peripherals.
367 config MACH_KZM_ARM11_01
368 bool "Support KZM-ARM11-01(Kyoto Microcomputer)"
369 select IMX_HAVE_PLATFORM_IMX_UART
372 Include support for KZM-ARM11-01. This includes specific
373 configurations for the board and its peripherals.
376 bool "Support Buglabs BUGBase platform"
378 select IMX_HAVE_PLATFORM_IMX_UART
381 Include support for BUGBase 1.3 platform. This includes specific
382 configurations for the board and its peripherals.
385 bool "Support i.MX31 platforms from device tree"
388 Include support for Freescale i.MX31 based platforms
389 using the device tree for discovery.
391 comment "MX35 platforms:"
394 bool "Support i.MX35 platforms from device tree"
397 Include support for Freescale i.MX35 based platforms
398 using the device tree for discovery.
401 bool "Support Phytec pcm043 (i.MX35) platforms"
402 select IMX_HAVE_PLATFORM_FLEXCAN
403 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
404 select IMX_HAVE_PLATFORM_IMX2_WDT
405 select IMX_HAVE_PLATFORM_IMX_I2C
406 select IMX_HAVE_PLATFORM_IMX_SSI
407 select IMX_HAVE_PLATFORM_IMX_UART
408 select IMX_HAVE_PLATFORM_IPU_CORE
409 select IMX_HAVE_PLATFORM_MXC_EHCI
410 select IMX_HAVE_PLATFORM_MXC_NAND
411 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
412 select USB_ULPI_VIEWPORT if USB_ULPI
415 Include support for Phytec pcm043 platform. This includes
416 specific configurations for the board and its peripherals.
419 bool "Support MX35PDK platform"
420 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
421 select IMX_HAVE_PLATFORM_IMX2_WDT
422 select IMX_HAVE_PLATFORM_IMX_FB
423 select IMX_HAVE_PLATFORM_IMX_I2C
424 select IMX_HAVE_PLATFORM_IMX_UART
425 select IMX_HAVE_PLATFORM_IPU_CORE
426 select IMX_HAVE_PLATFORM_MXC_EHCI
427 select IMX_HAVE_PLATFORM_MXC_NAND
428 select IMX_HAVE_PLATFORM_MXC_RTC
429 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
430 select MXC_DEBUG_BOARD
433 Include support for MX35PDK platform. This includes specific
434 configurations for the board and its peripherals.
437 bool "Support VPR200 platform"
438 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
439 select IMX_HAVE_PLATFORM_GPIO_KEYS
440 select IMX_HAVE_PLATFORM_IMX2_WDT
441 select IMX_HAVE_PLATFORM_IMX_I2C
442 select IMX_HAVE_PLATFORM_IMX_UART
443 select IMX_HAVE_PLATFORM_IPU_CORE
444 select IMX_HAVE_PLATFORM_MXC_EHCI
445 select IMX_HAVE_PLATFORM_MXC_NAND
446 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
449 Include support for VPR200 platform. This includes specific
450 configurations for the board and its peripherals.
454 comment "Device tree only"
459 bool "i.MX25 support"
460 select ARCH_MXC_IOMUX_V3
465 This enables support for Freescale i.MX25 processor
470 comment "Cortex-A platforms"
478 bool "i.MX50 support"
483 This enables support for Freescale i.MX50 processor.
486 bool "i.MX51 support"
490 This enables support for Freescale i.MX51 processor
493 bool "i.MX53 support"
498 This enables support for Freescale i.MX53 processor.
502 select ARM_CPU_SUSPEND if PM
503 select ARM_ERRATA_754322
504 select ARM_ERRATA_775420
506 select HAVE_IMX_ANATOP
511 select PL310_ERRATA_769419 if CACHE_L2X0
514 bool "i.MX6 Quad/DualLite support"
515 select ARM_ERRATA_764369 if SMP
516 select HAVE_ARM_SCU if SMP
518 select PCI_DOMAINS if PCI
523 This enables support for Freescale i.MX6 Quad processor.
526 bool "i.MX6 SoloLite support"
527 select PINCTRL_IMX6SL
531 This enables support for Freescale i.MX6 SoloLite processor.
534 bool "i.MX6 SoloX support"
535 select PINCTRL_IMX6SX
539 This enables support for Freescale i.MX6 SoloX processor.
542 bool "i.MX6 UltraLite support"
543 select PINCTRL_IMX6UL
547 This enables support for Freescale i.MX6 UltraLite processor.
550 bool "i.MX7 Dual support"
553 select HAVE_ARM_ARCH_TIMER
554 select HAVE_IMX_ANATOP
558 This enables support for Freescale i.MX7 Dual processor.
561 bool "Freescale LS1021A support"
563 select HAVE_ARM_ARCH_TIMER
564 select PCI_DOMAINS if PCI
565 select ZONE_DMA if ARM_LPAE
567 This enables support for Freescale LS1021A processor.
571 comment "Cortex-A/Cortex-M asymmetric multiprocessing platforms"
573 if ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M
576 bool "Vybrid Family VF610 support"
577 select ARM_GIC if ARCH_MULTI_V7
579 select PL310_ERRATA_769419 if CACHE_L2X0
580 select SMP_ON_UP if SMP
583 This enables support for Freescale Vybrid VF610 processor.
586 prompt "Clocksource for scheduler clock"
588 default VF_USE_ARM_GLOBAL_TIMER
590 config VF_USE_ARM_GLOBAL_TIMER
591 bool "Use ARM Global Timer"
592 depends on ARCH_MULTI_V7
593 select ARM_GLOBAL_TIMER
594 select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
596 Use the ARM Global Timer as clocksource
598 config VF_USE_PIT_TIMER
602 Use SoC Periodic Interrupt Timer (PIT) as clocksource
608 source "arch/arm/mach-imx/devices/Kconfig"