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 "Support i.MX1 platforms from device tree"
109 Include support for Freescale i.MX1 based platforms
110 using the device tree for discovery.
116 comment "MX21 platforms:"
119 bool "MX21ADS platform"
120 select IMX_HAVE_PLATFORM_IMX_FB
121 select IMX_HAVE_PLATFORM_IMX_UART
122 select IMX_HAVE_PLATFORM_MXC_MMC
123 select IMX_HAVE_PLATFORM_MXC_NAND
126 Include support for MX21ADS platform. This includes specific
127 configurations for the board and its peripherals.
129 comment "MX27 platforms:"
132 bool "MX27ADS platform"
133 select IMX_HAVE_PLATFORM_IMX_FB
134 select IMX_HAVE_PLATFORM_IMX_I2C
135 select IMX_HAVE_PLATFORM_IMX_UART
136 select IMX_HAVE_PLATFORM_MXC_MMC
137 select IMX_HAVE_PLATFORM_MXC_NAND
138 select IMX_HAVE_PLATFORM_MXC_W1
141 Include support for MX27ADS platform. This includes specific
142 configurations for the board and its peripherals.
145 bool "MX27PDK platform"
146 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
147 select IMX_HAVE_PLATFORM_IMX2_WDT
148 select IMX_HAVE_PLATFORM_IMX_FB
149 select IMX_HAVE_PLATFORM_IMX_I2C
150 select IMX_HAVE_PLATFORM_IMX_KEYPAD
151 select IMX_HAVE_PLATFORM_IMX_SSI
152 select IMX_HAVE_PLATFORM_IMX_UART
153 select IMX_HAVE_PLATFORM_MX2_CAMERA
154 select IMX_HAVE_PLATFORM_MXC_EHCI
155 select IMX_HAVE_PLATFORM_MXC_MMC
156 select IMX_HAVE_PLATFORM_SPI_IMX
157 select MXC_DEBUG_BOARD
158 select USB_ULPI_VIEWPORT if USB_ULPI
161 Include support for MX27PDK platform. This includes specific
162 configurations for the board and its peripherals.
164 config MACH_IMX27_VISSTRIM_M10
165 bool "Vista Silicon i.MX27 Visstrim_m10"
166 select IMX_HAVE_PLATFORM_GPIO_KEYS
167 select IMX_HAVE_PLATFORM_IMX_I2C
168 select IMX_HAVE_PLATFORM_IMX_SSI
169 select IMX_HAVE_PLATFORM_IMX_UART
170 select IMX_HAVE_PLATFORM_MX2_CAMERA
171 select IMX_HAVE_PLATFORM_MX2_EMMA
172 select IMX_HAVE_PLATFORM_MXC_EHCI
173 select IMX_HAVE_PLATFORM_MXC_MMC
174 select LEDS_GPIO_REGISTER
177 Include support for Visstrim_m10 platform and its different variants.
178 This includes specific configurations for the board and its
182 bool "Phytec phyCARD-s (pca100)"
183 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
184 select IMX_HAVE_PLATFORM_IMX2_WDT
185 select IMX_HAVE_PLATFORM_IMX_FB
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_MXC_EHCI
190 select IMX_HAVE_PLATFORM_MXC_MMC
191 select IMX_HAVE_PLATFORM_MXC_NAND
192 select IMX_HAVE_PLATFORM_MXC_W1
193 select IMX_HAVE_PLATFORM_SPI_IMX
194 select USB_ULPI_VIEWPORT if USB_ULPI
197 Include support for phyCARD-s (aka pca100) platform. This
198 includes specific configurations for the module and its peripherals.
201 bool "Support i.MX27 platforms from device tree"
204 Include support for Freescale i.MX27 based platforms
205 using the device tree for discovery
211 comment "MX31 platforms:"
214 bool "Support MX31ADS platforms"
216 select IMX_HAVE_PLATFORM_IMX_I2C
217 select IMX_HAVE_PLATFORM_IMX_SSI
218 select IMX_HAVE_PLATFORM_IMX_UART
221 Include support for MX31ADS platform. This includes specific
222 configurations for the board and its peripherals.
224 config MACH_MX31ADS_WM1133_EV1
225 bool "Support Wolfson Microelectronics 1133-EV1 module"
226 depends on MACH_MX31ADS
227 depends on MFD_WM8350_I2C
228 depends on REGULATOR_WM8350 = y
230 Include support for the Wolfson Microelectronics 1133-EV1 PMU
231 and audio module for the MX31ADS platform.
233 config MACH_MX31LILLY
234 bool "Support MX31 LILLY-1131 platforms (INCO startec)"
235 select IMX_HAVE_PLATFORM_IMX_UART
236 select IMX_HAVE_PLATFORM_IPU_CORE
237 select IMX_HAVE_PLATFORM_MXC_EHCI
238 select IMX_HAVE_PLATFORM_MXC_MMC
239 select IMX_HAVE_PLATFORM_SPI_IMX
240 select USB_ULPI_VIEWPORT if USB_ULPI
243 Include support for mx31 based LILLY1131 modules. This includes
244 specific configurations for the board and its peripherals.
247 bool "Support MX31 LITEKIT (LogicPD)"
248 select IMX_HAVE_PLATFORM_IMX2_WDT
249 select IMX_HAVE_PLATFORM_IMX_UART
250 select IMX_HAVE_PLATFORM_MXC_EHCI
251 select IMX_HAVE_PLATFORM_MXC_MMC
252 select IMX_HAVE_PLATFORM_MXC_NAND
253 select IMX_HAVE_PLATFORM_MXC_RTC
254 select IMX_HAVE_PLATFORM_SPI_IMX
255 select LEDS_GPIO_REGISTER
256 select USB_ULPI_VIEWPORT if USB_ULPI
259 Include support for MX31 LITEKIT platform. This includes specific
260 configurations for the board and its peripherals.
263 bool "Support Phytec pcm037 (i.MX31) platforms"
264 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
265 select IMX_HAVE_PLATFORM_IMX2_WDT
266 select IMX_HAVE_PLATFORM_IMX_I2C
267 select IMX_HAVE_PLATFORM_IMX_UART
268 select IMX_HAVE_PLATFORM_IPU_CORE
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_W1
273 select USB_ULPI_VIEWPORT if USB_ULPI
276 Include support for Phytec pcm037 platform. This includes
277 specific configurations for the board and its peripherals.
279 config MACH_PCM037_EET
280 bool "Support pcm037 EET board extensions"
281 depends on MACH_PCM037
282 select IMX_HAVE_PLATFORM_GPIO_KEYS
283 select IMX_HAVE_PLATFORM_SPI_IMX
285 Add support for PCM037 EET baseboard extensions. If you are using the
286 OLED display with EET, use "video=mx3fb:CMEL-OLED" kernel
287 command-line parameter.
290 bool "Support MX31PDK (3DS)"
291 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
292 select IMX_HAVE_PLATFORM_IMX2_WDT
293 select IMX_HAVE_PLATFORM_IMX_I2C
294 select IMX_HAVE_PLATFORM_IMX_KEYPAD
295 select IMX_HAVE_PLATFORM_IMX_SSI
296 select IMX_HAVE_PLATFORM_IMX_UART
297 select IMX_HAVE_PLATFORM_IPU_CORE
298 select IMX_HAVE_PLATFORM_MXC_EHCI
299 select IMX_HAVE_PLATFORM_MXC_MMC
300 select IMX_HAVE_PLATFORM_MXC_NAND
301 select IMX_HAVE_PLATFORM_SPI_IMX
302 select MXC_DEBUG_BOARD
303 select USB_ULPI_VIEWPORT if USB_ULPI
306 Include support for MX31PDK (3DS) platform. This includes specific
307 configurations for the board and its peripherals.
309 config MACH_MX31_3DS_MXC_NAND_USE_BBT
310 bool "Make the MXC NAND driver use the in flash Bad Block Table"
311 depends on MACH_MX31_3DS
312 depends on MTD_NAND_MXC
314 Enable this if you want that the MXC NAND driver uses the in flash
315 Bad Block Table to know what blocks are bad instead of scanning the
316 entire flash looking for bad block markers.
318 config MACH_MX31MOBOARD
319 bool "Support mx31moboard platforms (EPFL Mobots group)"
320 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
321 select IMX_HAVE_PLATFORM_IMX2_WDT
322 select IMX_HAVE_PLATFORM_IMX_I2C
323 select IMX_HAVE_PLATFORM_IMX_SSI
324 select IMX_HAVE_PLATFORM_IMX_UART
325 select IMX_HAVE_PLATFORM_IPU_CORE
326 select IMX_HAVE_PLATFORM_MXC_EHCI
327 select IMX_HAVE_PLATFORM_MXC_MMC
328 select IMX_HAVE_PLATFORM_SPI_IMX
329 select LEDS_GPIO_REGISTER
330 select USB_ULPI_VIEWPORT if USB_ULPI
333 Include support for mx31moboard platform. This includes specific
334 configurations for the board and its peripherals.
337 bool "Support Dave/DENX QongEVB-LITE platform"
338 select IMX_HAVE_PLATFORM_IMX2_WDT
339 select IMX_HAVE_PLATFORM_IMX_UART
342 Include support for Dave/DENX QongEVB-LITE platform. This includes
343 specific configurations for the board and its peripherals.
345 config MACH_ARMADILLO5X0
346 bool "Support Atmark Armadillo-500 Development Base Board"
347 select IMX_HAVE_PLATFORM_GPIO_KEYS
348 select IMX_HAVE_PLATFORM_IMX_I2C
349 select IMX_HAVE_PLATFORM_IMX_UART
350 select IMX_HAVE_PLATFORM_IPU_CORE
351 select IMX_HAVE_PLATFORM_MXC_EHCI
352 select IMX_HAVE_PLATFORM_MXC_MMC
353 select IMX_HAVE_PLATFORM_MXC_NAND
354 select USB_ULPI_VIEWPORT if USB_ULPI
357 Include support for Atmark Armadillo-500 platform. This includes
358 specific configurations for the board and its peripherals.
360 config MACH_KZM_ARM11_01
361 bool "Support KZM-ARM11-01(Kyoto Microcomputer)"
362 select IMX_HAVE_PLATFORM_IMX_UART
365 Include support for KZM-ARM11-01. This includes specific
366 configurations for the board and its peripherals.
369 bool "Support Buglabs BUGBase platform"
371 select IMX_HAVE_PLATFORM_IMX_UART
374 Include support for BUGBase 1.3 platform. This includes specific
375 configurations for the board and its peripherals.
378 bool "Support i.MX31 platforms from device tree"
381 Include support for Freescale i.MX31 based platforms
382 using the device tree for discovery.
384 comment "MX35 platforms:"
387 bool "Support i.MX35 platforms from device tree"
390 Include support for Freescale i.MX35 based platforms
391 using the device tree for discovery.
394 bool "Support Phytec pcm043 (i.MX35) platforms"
395 select IMX_HAVE_PLATFORM_FLEXCAN
396 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
397 select IMX_HAVE_PLATFORM_IMX2_WDT
398 select IMX_HAVE_PLATFORM_IMX_I2C
399 select IMX_HAVE_PLATFORM_IMX_SSI
400 select IMX_HAVE_PLATFORM_IMX_UART
401 select IMX_HAVE_PLATFORM_IPU_CORE
402 select IMX_HAVE_PLATFORM_MXC_EHCI
403 select IMX_HAVE_PLATFORM_MXC_NAND
404 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
405 select USB_ULPI_VIEWPORT if USB_ULPI
408 Include support for Phytec pcm043 platform. This includes
409 specific configurations for the board and its peripherals.
412 bool "Support MX35PDK platform"
413 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
414 select IMX_HAVE_PLATFORM_IMX2_WDT
415 select IMX_HAVE_PLATFORM_IMX_FB
416 select IMX_HAVE_PLATFORM_IMX_I2C
417 select IMX_HAVE_PLATFORM_IMX_UART
418 select IMX_HAVE_PLATFORM_IPU_CORE
419 select IMX_HAVE_PLATFORM_MXC_EHCI
420 select IMX_HAVE_PLATFORM_MXC_NAND
421 select IMX_HAVE_PLATFORM_MXC_RTC
422 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
423 select MXC_DEBUG_BOARD
426 Include support for MX35PDK platform. This includes specific
427 configurations for the board and its peripherals.
430 bool "Support VPR200 platform"
431 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
432 select IMX_HAVE_PLATFORM_GPIO_KEYS
433 select IMX_HAVE_PLATFORM_IMX2_WDT
434 select IMX_HAVE_PLATFORM_IMX_I2C
435 select IMX_HAVE_PLATFORM_IMX_UART
436 select IMX_HAVE_PLATFORM_IPU_CORE
437 select IMX_HAVE_PLATFORM_MXC_EHCI
438 select IMX_HAVE_PLATFORM_MXC_NAND
439 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
442 Include support for VPR200 platform. This includes specific
443 configurations for the board and its peripherals.
447 comment "Device tree only"
452 bool "i.MX25 support"
453 select ARCH_MXC_IOMUX_V3
458 This enables support for Freescale i.MX25 processor
463 comment "Cortex-A platforms"
471 bool "i.MX50 support"
476 This enables support for Freescale i.MX50 processor.
479 bool "i.MX51 support"
483 This enables support for Freescale i.MX51 processor
486 bool "i.MX53 support"
491 This enables support for Freescale i.MX53 processor.
495 select ARM_CPU_SUSPEND if PM
496 select ARM_ERRATA_754322
497 select ARM_ERRATA_775420
499 select HAVE_IMX_ANATOP
504 select PL310_ERRATA_769419 if CACHE_L2X0
507 bool "i.MX6 Quad/DualLite support"
508 select ARM_ERRATA_764369 if SMP
509 select HAVE_ARM_SCU if SMP
511 select PCI_DOMAINS if PCI
516 This enables support for Freescale i.MX6 Quad processor.
519 bool "i.MX6 SoloLite support"
520 select PINCTRL_IMX6SL
524 This enables support for Freescale i.MX6 SoloLite processor.
527 bool "i.MX6 SoloX support"
528 select PINCTRL_IMX6SX
532 This enables support for Freescale i.MX6 SoloX processor.
535 bool "i.MX6 UltraLite support"
536 select PINCTRL_IMX6UL
540 This enables support for Freescale i.MX6 UltraLite processor.
543 bool "i.MX7 Dual support"
546 select HAVE_ARM_ARCH_TIMER
547 select HAVE_IMX_ANATOP
551 This enables support for Freescale i.MX7 Dual processor.
554 bool "Freescale LS1021A support"
556 select HAVE_ARM_ARCH_TIMER
557 select PCI_DOMAINS if PCI
558 select ZONE_DMA if ARM_LPAE
560 This enables support for Freescale LS1021A processor.
564 comment "Cortex-A/Cortex-M asymmetric multiprocessing platforms"
566 if ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M
569 bool "Vybrid Family VF610 support"
570 select ARM_GIC if ARCH_MULTI_V7
572 select PL310_ERRATA_769419 if CACHE_L2X0
573 select SMP_ON_UP if SMP
576 This enables support for Freescale Vybrid VF610 processor.
579 prompt "Clocksource for scheduler clock"
581 default VF_USE_ARM_GLOBAL_TIMER
583 config VF_USE_ARM_GLOBAL_TIMER
584 bool "Use ARM Global Timer"
585 depends on ARCH_MULTI_V7
586 select ARM_GLOBAL_TIMER
587 select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
589 Use the ARM Global Timer as clocksource
591 config VF_USE_PIT_TIMER
595 Use SoC Periodic Interrupt Timer (PIT) as clocksource
601 source "arch/arm/mach-imx/devices/Kconfig"