2 bool "Freescale i.MX family" if ARCH_MULTI_V4_V5 || ARCH_MULTI_V6_V7 || ARM_SINGLE_ARMV7M
3 select ARCH_REQUIRE_GPIOLIB
4 select ARM_CPU_SUSPEND if PM
6 select GENERIC_IRQ_CHIP
12 Support for Freescale MXC/iMX-based family of processors
22 config MXC_DEBUG_BOARD
23 bool "Enable MXC debug board(for 3-stack)"
24 depends on MACH_MX27_3DS || MACH_MX31_3DS || MACH_MX35_3DS
26 The debug board is an integral part of the MXC 3-stack(PDK)
27 platforms, it can be attached or removed from the peripheral
28 board. On debug board, several debug devices(ethernet, UART,
29 buttons, LEDs and JTAG) are implemented. Between the MCU and
30 these devices, a CPLD is added as a bridge which performs
31 data/address de-multiplexing and decode, signal level shift,
32 interrupt control and various board functions.
38 bool "Use EPIT instead of GPT"
41 Use EPIT as the system timer on systems that have it. Normally you
42 don't have a reason to do so as the EPIT has the same features and
43 uses the same clocks as the GPT. Anyway, on some systems the GPT
44 may be in use for other purposes.
49 config HAVE_IMX_ANATOP
54 select PM_GENERIC_DOMAINS if PM
61 select ARCH_HAS_RESET_CONTROLLER
63 config IMX_HAVE_IOMUX_V1
66 config ARCH_MXC_IOMUX_V3
72 select IMX_HAVE_IOMUX_V1
79 select IMX_HAVE_IOMUX_V1
85 select IMX_HAVE_IOMUX_V1
92 select IMX_HAVE_PLATFORM_MXC_RNGA
94 select SMP_ON_UP if SMP
98 select ARCH_MXC_IOMUX_V3
102 select SMP_ON_UP if SMP
106 comment "MX1 platforms:"
109 bool "Synertronixx scb9328"
110 select IMX_HAVE_PLATFORM_IMX_UART
113 Say Y here if you are using a Synertronixx scb9328 board
117 select IMX_HAVE_PLATFORM_IMX_I2C
118 select IMX_HAVE_PLATFORM_IMX_UART
121 Say Yes here if you are using the Armadeus APF9328 development board
124 bool "Support i.MX1 platforms from device tree"
127 Include support for Freescale i.MX1 based platforms
128 using the device tree for discovery.
134 comment "MX21 platforms:"
137 bool "MX21ADS platform"
138 select IMX_HAVE_PLATFORM_IMX_FB
139 select IMX_HAVE_PLATFORM_IMX_UART
140 select IMX_HAVE_PLATFORM_MXC_MMC
141 select IMX_HAVE_PLATFORM_MXC_NAND
144 Include support for MX21ADS platform. This includes specific
145 configurations for the board and its peripherals.
147 comment "MX27 platforms:"
150 bool "MX27ADS platform"
151 select IMX_HAVE_PLATFORM_IMX_FB
152 select IMX_HAVE_PLATFORM_IMX_I2C
153 select IMX_HAVE_PLATFORM_IMX_UART
154 select IMX_HAVE_PLATFORM_MXC_MMC
155 select IMX_HAVE_PLATFORM_MXC_NAND
156 select IMX_HAVE_PLATFORM_MXC_W1
159 Include support for MX27ADS platform. This includes specific
160 configurations for the board and its peripherals.
163 bool "MX27PDK platform"
164 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
165 select IMX_HAVE_PLATFORM_IMX2_WDT
166 select IMX_HAVE_PLATFORM_IMX_FB
167 select IMX_HAVE_PLATFORM_IMX_I2C
168 select IMX_HAVE_PLATFORM_IMX_KEYPAD
169 select IMX_HAVE_PLATFORM_IMX_SSI
170 select IMX_HAVE_PLATFORM_IMX_UART
171 select IMX_HAVE_PLATFORM_MX2_CAMERA
172 select IMX_HAVE_PLATFORM_MXC_EHCI
173 select IMX_HAVE_PLATFORM_MXC_MMC
174 select IMX_HAVE_PLATFORM_SPI_IMX
175 select MXC_DEBUG_BOARD
176 select USB_ULPI_VIEWPORT if USB_ULPI
179 Include support for MX27PDK platform. This includes specific
180 configurations for the board and its peripherals.
182 config MACH_IMX27_VISSTRIM_M10
183 bool "Vista Silicon i.MX27 Visstrim_m10"
184 select IMX_HAVE_PLATFORM_GPIO_KEYS
185 select IMX_HAVE_PLATFORM_IMX_I2C
186 select IMX_HAVE_PLATFORM_IMX_SSI
187 select IMX_HAVE_PLATFORM_IMX_UART
188 select IMX_HAVE_PLATFORM_MX2_CAMERA
189 select IMX_HAVE_PLATFORM_MX2_EMMA
190 select IMX_HAVE_PLATFORM_MXC_EHCI
191 select IMX_HAVE_PLATFORM_MXC_MMC
192 select LEDS_GPIO_REGISTER
195 Include support for Visstrim_m10 platform and its different variants.
196 This includes specific configurations for the board and its
200 bool "Phytec phyCARD-s (pca100)"
201 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
202 select IMX_HAVE_PLATFORM_IMX2_WDT
203 select IMX_HAVE_PLATFORM_IMX_FB
204 select IMX_HAVE_PLATFORM_IMX_I2C
205 select IMX_HAVE_PLATFORM_IMX_SSI
206 select IMX_HAVE_PLATFORM_IMX_UART
207 select IMX_HAVE_PLATFORM_MXC_EHCI
208 select IMX_HAVE_PLATFORM_MXC_MMC
209 select IMX_HAVE_PLATFORM_MXC_NAND
210 select IMX_HAVE_PLATFORM_MXC_W1
211 select IMX_HAVE_PLATFORM_SPI_IMX
212 select USB_ULPI_VIEWPORT if USB_ULPI
215 Include support for phyCARD-s (aka pca100) platform. This
216 includes specific configurations for the module and its peripherals.
219 bool "Support i.MX27 platforms from device tree"
222 Include support for Freescale i.MX27 based platforms
223 using the device tree for discovery
229 comment "MX31 platforms:"
232 bool "Support MX31ADS platforms"
234 select IMX_HAVE_PLATFORM_IMX_I2C
235 select IMX_HAVE_PLATFORM_IMX_SSI
236 select IMX_HAVE_PLATFORM_IMX_UART
239 Include support for MX31ADS platform. This includes specific
240 configurations for the board and its peripherals.
242 config MACH_MX31ADS_WM1133_EV1
243 bool "Support Wolfson Microelectronics 1133-EV1 module"
244 depends on MACH_MX31ADS
245 depends on MFD_WM8350_I2C
246 depends on REGULATOR_WM8350 = y
248 Include support for the Wolfson Microelectronics 1133-EV1 PMU
249 and audio module for the MX31ADS platform.
251 config MACH_MX31LILLY
252 bool "Support MX31 LILLY-1131 platforms (INCO startec)"
253 select IMX_HAVE_PLATFORM_IMX_UART
254 select IMX_HAVE_PLATFORM_IPU_CORE
255 select IMX_HAVE_PLATFORM_MXC_EHCI
256 select IMX_HAVE_PLATFORM_MXC_MMC
257 select IMX_HAVE_PLATFORM_SPI_IMX
258 select USB_ULPI_VIEWPORT if USB_ULPI
261 Include support for mx31 based LILLY1131 modules. This includes
262 specific configurations for the board and its peripherals.
265 bool "Support MX31 LITEKIT (LogicPD)"
266 select IMX_HAVE_PLATFORM_IMX2_WDT
267 select IMX_HAVE_PLATFORM_IMX_UART
268 select IMX_HAVE_PLATFORM_MXC_EHCI
269 select IMX_HAVE_PLATFORM_MXC_MMC
270 select IMX_HAVE_PLATFORM_MXC_NAND
271 select IMX_HAVE_PLATFORM_MXC_RTC
272 select IMX_HAVE_PLATFORM_SPI_IMX
273 select LEDS_GPIO_REGISTER
274 select USB_ULPI_VIEWPORT if USB_ULPI
277 Include support for MX31 LITEKIT platform. This includes specific
278 configurations for the board and its peripherals.
281 bool "Support Phytec pcm037 (i.MX31) platforms"
282 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
283 select IMX_HAVE_PLATFORM_IMX2_WDT
284 select IMX_HAVE_PLATFORM_IMX_I2C
285 select IMX_HAVE_PLATFORM_IMX_UART
286 select IMX_HAVE_PLATFORM_IPU_CORE
287 select IMX_HAVE_PLATFORM_MXC_EHCI
288 select IMX_HAVE_PLATFORM_MXC_MMC
289 select IMX_HAVE_PLATFORM_MXC_NAND
290 select IMX_HAVE_PLATFORM_MXC_W1
291 select USB_ULPI_VIEWPORT if USB_ULPI
294 Include support for Phytec pcm037 platform. This includes
295 specific configurations for the board and its peripherals.
297 config MACH_PCM037_EET
298 bool "Support pcm037 EET board extensions"
299 depends on MACH_PCM037
300 select IMX_HAVE_PLATFORM_GPIO_KEYS
301 select IMX_HAVE_PLATFORM_SPI_IMX
303 Add support for PCM037 EET baseboard extensions. If you are using the
304 OLED display with EET, use "video=mx3fb:CMEL-OLED" kernel
305 command-line parameter.
308 bool "Support MX31PDK (3DS)"
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_KEYPAD
313 select IMX_HAVE_PLATFORM_IMX_SSI
314 select IMX_HAVE_PLATFORM_IMX_UART
315 select IMX_HAVE_PLATFORM_IPU_CORE
316 select IMX_HAVE_PLATFORM_MXC_EHCI
317 select IMX_HAVE_PLATFORM_MXC_MMC
318 select IMX_HAVE_PLATFORM_MXC_NAND
319 select IMX_HAVE_PLATFORM_SPI_IMX
320 select MXC_DEBUG_BOARD
321 select USB_ULPI_VIEWPORT if USB_ULPI
324 Include support for MX31PDK (3DS) platform. This includes specific
325 configurations for the board and its peripherals.
327 config MACH_MX31_3DS_MXC_NAND_USE_BBT
328 bool "Make the MXC NAND driver use the in flash Bad Block Table"
329 depends on MACH_MX31_3DS
330 depends on MTD_NAND_MXC
332 Enable this if you want that the MXC NAND driver uses the in flash
333 Bad Block Table to know what blocks are bad instead of scanning the
334 entire flash looking for bad block markers.
336 config MACH_MX31MOBOARD
337 bool "Support mx31moboard platforms (EPFL Mobots group)"
338 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
339 select IMX_HAVE_PLATFORM_IMX2_WDT
340 select IMX_HAVE_PLATFORM_IMX_I2C
341 select IMX_HAVE_PLATFORM_IMX_SSI
342 select IMX_HAVE_PLATFORM_IMX_UART
343 select IMX_HAVE_PLATFORM_IPU_CORE
344 select IMX_HAVE_PLATFORM_MXC_EHCI
345 select IMX_HAVE_PLATFORM_MXC_MMC
346 select IMX_HAVE_PLATFORM_SPI_IMX
347 select LEDS_GPIO_REGISTER
348 select USB_ULPI_VIEWPORT if USB_ULPI
351 Include support for mx31moboard platform. This includes specific
352 configurations for the board and its peripherals.
355 bool "Support Dave/DENX QongEVB-LITE platform"
356 select IMX_HAVE_PLATFORM_IMX2_WDT
357 select IMX_HAVE_PLATFORM_IMX_UART
360 Include support for Dave/DENX QongEVB-LITE platform. This includes
361 specific configurations for the board and its peripherals.
363 config MACH_ARMADILLO5X0
364 bool "Support Atmark Armadillo-500 Development Base Board"
365 select IMX_HAVE_PLATFORM_GPIO_KEYS
366 select IMX_HAVE_PLATFORM_IMX_I2C
367 select IMX_HAVE_PLATFORM_IMX_UART
368 select IMX_HAVE_PLATFORM_IPU_CORE
369 select IMX_HAVE_PLATFORM_MXC_EHCI
370 select IMX_HAVE_PLATFORM_MXC_MMC
371 select IMX_HAVE_PLATFORM_MXC_NAND
372 select USB_ULPI_VIEWPORT if USB_ULPI
375 Include support for Atmark Armadillo-500 platform. This includes
376 specific configurations for the board and its peripherals.
378 config MACH_KZM_ARM11_01
379 bool "Support KZM-ARM11-01(Kyoto Microcomputer)"
380 select IMX_HAVE_PLATFORM_IMX_UART
383 Include support for KZM-ARM11-01. This includes specific
384 configurations for the board and its peripherals.
387 bool "Support Buglabs BUGBase platform"
389 select IMX_HAVE_PLATFORM_IMX_UART
392 Include support for BUGBase 1.3 platform. This includes specific
393 configurations for the board and its peripherals.
396 bool "Support i.MX31 platforms from device tree"
399 Include support for Freescale i.MX31 based platforms
400 using the device tree for discovery.
402 comment "MX35 platforms:"
405 bool "Support i.MX35 platforms from device tree"
408 Include support for Freescale i.MX35 based platforms
409 using the device tree for discovery.
412 bool "Support Phytec pcm043 (i.MX35) platforms"
413 select IMX_HAVE_PLATFORM_FLEXCAN
414 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
415 select IMX_HAVE_PLATFORM_IMX2_WDT
416 select IMX_HAVE_PLATFORM_IMX_I2C
417 select IMX_HAVE_PLATFORM_IMX_SSI
418 select IMX_HAVE_PLATFORM_IMX_UART
419 select IMX_HAVE_PLATFORM_IPU_CORE
420 select IMX_HAVE_PLATFORM_MXC_EHCI
421 select IMX_HAVE_PLATFORM_MXC_NAND
422 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
423 select USB_ULPI_VIEWPORT if USB_ULPI
426 Include support for Phytec pcm043 platform. This includes
427 specific configurations for the board and its peripherals.
430 bool "Support MX35PDK platform"
431 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
432 select IMX_HAVE_PLATFORM_IMX2_WDT
433 select IMX_HAVE_PLATFORM_IMX_FB
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_MXC_RTC
440 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
441 select MXC_DEBUG_BOARD
444 Include support for MX35PDK platform. This includes specific
445 configurations for the board and its peripherals.
448 bool "Support VPR200 platform"
449 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
450 select IMX_HAVE_PLATFORM_GPIO_KEYS
451 select IMX_HAVE_PLATFORM_IMX2_WDT
452 select IMX_HAVE_PLATFORM_IMX_I2C
453 select IMX_HAVE_PLATFORM_IMX_UART
454 select IMX_HAVE_PLATFORM_IPU_CORE
455 select IMX_HAVE_PLATFORM_MXC_EHCI
456 select IMX_HAVE_PLATFORM_MXC_NAND
457 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
460 Include support for VPR200 platform. This includes specific
461 configurations for the board and its peripherals.
465 comment "Device tree only"
470 bool "i.MX25 support"
471 select ARCH_MXC_IOMUX_V3
476 This enables support for Freescale i.MX25 processor
481 comment "Cortex-A platforms"
489 bool "i.MX50 support"
494 This enables support for Freescale i.MX50 processor.
497 bool "i.MX51 support"
501 This enables support for Freescale i.MX51 processor
504 bool "i.MX53 support"
509 This enables support for Freescale i.MX53 processor.
513 select ARM_ERRATA_754322
514 select ARM_ERRATA_775420
516 select HAVE_IMX_ANATOP
521 select PL310_ERRATA_769419 if CACHE_L2X0
524 bool "i.MX6 Quad/DualLite support"
525 select ARM_ERRATA_764369 if SMP
526 select HAVE_ARM_SCU if SMP
527 select HAVE_ARM_TWD if SMP
528 select PCI_DOMAINS if PCI
533 This enables support for Freescale i.MX6 Quad processor.
536 bool "i.MX6 SoloLite support"
537 select PINCTRL_IMX6SL
541 This enables support for Freescale i.MX6 SoloLite processor.
544 bool "i.MX6 SoloX support"
545 select PINCTRL_IMX6SX
549 This enables support for Freescale i.MX6 SoloX processor.
552 bool "i.MX6 UltraLite support"
553 select PINCTRL_IMX6UL
557 This enables support for Freescale i.MX6 UltraLite processor.
560 bool "i.MX7 Dual support"
563 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" if ARCH_MULTI_V7
600 select ARM_GLOBAL_TIMER
601 select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
603 Use the ARM Global Timer as clocksource
605 config VF_USE_PIT_TIMER
609 Use SoC Periodic Interrupt Timer (PIT) as clocksource
615 source "arch/arm/mach-imx/devices/Kconfig"