blob: 15df34fbdf44c5abd4182f1c5a0514162e7fe635 [file] [log] [blame]
Rob Herring21278ae2014-06-10 09:06:10 -05001menuconfig ARCH_MXC
Masahiro Yamadae3246542015-11-16 12:06:10 +09002 bool "Freescale i.MX family"
3 depends on ARCH_MULTI_V4_V5 || ARCH_MULTI_V6_V7 || ARM_SINGLE_ARMV7M
Shawn Guoc5a0d492012-09-17 09:38:39 +08004 select ARCH_REQUIRE_GPIOLIB
Fabio Estevamf36b5942013-07-26 00:17:35 -03005 select ARM_CPU_SUSPEND if PM
Shawn Guobea5af42015-05-15 15:41:00 +08006 select CLKSRC_IMX_GPT
Shawn Guoc5a0d492012-09-17 09:38:39 +08007 select GENERIC_IRQ_CHIP
Shawn Guof7f3d4b2013-11-16 22:25:02 +08008 select PINCTRL
John Tobias5a1513f2014-01-14 06:36:47 -08009 select PM_OPP if PM
Shawn Guoa2887542013-08-13 16:59:28 +080010 select SOC_BUS
Fabio Estevam67f5b302014-02-17 14:04:17 -030011 select SRAM
Shawn Guoc5a0d492012-09-17 09:38:39 +080012 help
13 Support for Freescale MXC/iMX-based family of processors
14
Rob Herring21278ae2014-06-10 09:06:10 -050015if ARCH_MXC
Shawn Guo3995eb82012-09-13 19:48:07 +080016
Shawn Guo3995eb82012-09-13 19:48:07 +080017config MXC_TZIC
18 bool
19
20config MXC_AVIC
21 bool
22
23config MXC_DEBUG_BOARD
24 bool "Enable MXC debug board(for 3-stack)"
Stefan Agnerae4aee92015-03-13 00:36:15 +010025 depends on MACH_MX27_3DS || MACH_MX31_3DS || MACH_MX35_3DS
Shawn Guo3995eb82012-09-13 19:48:07 +080026 help
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.
34
35config HAVE_EPIT
36 bool
37
38config MXC_USE_EPIT
39 bool "Use EPIT instead of GPT"
40 depends on HAVE_EPIT
41 help
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.
46
Shawn Guo3995eb82012-09-13 19:48:07 +080047config ARCH_HAS_RNGA
48 bool
49
Anson Huange95dddb2013-03-20 19:39:42 -040050config HAVE_IMX_ANATOP
51 bool
52
Shawn Guo9fbbe682011-09-06 14:39:44 +080053config HAVE_IMX_GPC
54 bool
Philipp Zabel00eb60a82015-02-23 18:40:12 +010055 select PM_GENERIC_DOMAINS if PM
Shawn Guo9fbbe682011-09-06 14:39:44 +080056
57config HAVE_IMX_MMDC
58 bool
59
60config HAVE_IMX_SRC
Shawn Guo68b25322012-10-23 15:23:59 +080061 def_bool y if SMP
Philipp Zabel02985b92013-03-28 17:35:19 +010062 select ARCH_HAS_RESET_CONTROLLER
Shawn Guo9fbbe682011-09-06 14:39:44 +080063
Shawn Guo267dd342012-09-13 13:26:00 +080064config IMX_HAVE_IOMUX_V1
65 bool
66
67config ARCH_MXC_IOMUX_V3
68 bool
69
Uwe Kleine-Könige780d232010-06-14 17:39:21 +020070config SOC_IMX1
Uwe Kleine-Könige48ab1c2010-11-11 18:06:17 +010071 bool
Uwe Kleine-Könige780d232010-06-14 17:39:21 +020072 select CPU_ARM920T
73 select IMX_HAVE_IOMUX_V1
Sascha Hauerc7259df2010-11-05 09:37:22 +010074 select MXC_AVIC
Alexander Shiyan24980dc2014-07-26 13:45:28 +040075 select PINCTRL_IMX1
Uwe Kleine-Könige48ab1c2010-11-11 18:06:17 +010076
77config SOC_IMX21
Uwe Kleine-Könige780d232010-06-14 17:39:21 +020078 bool
Russell Kingb1b3f492012-10-06 17:12:25 +010079 select CPU_ARM926T
Uwe Kleine-Könige48ab1c2010-11-11 18:06:17 +010080 select IMX_HAVE_IOMUX_V1
Sascha Hauerc7259df2010-11-05 09:37:22 +010081 select MXC_AVIC
Uwe Kleine-Könige48ab1c2010-11-11 18:06:17 +010082
Uwe Kleine-Könige48ab1c2010-11-11 18:06:17 +010083config SOC_IMX27
84 bool
Russell Kingb1b3f492012-10-06 17:12:25 +010085 select CPU_ARM926T
Uwe Kleine-Könige48ab1c2010-11-11 18:06:17 +010086 select IMX_HAVE_IOMUX_V1
Sascha Hauerc7259df2010-11-05 09:37:22 +010087 select MXC_AVIC
Markus Pargmannacb350e2013-11-12 09:50:10 +010088 select PINCTRL_IMX27
Uwe Kleine-Könige48ab1c2010-11-11 18:06:17 +010089
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +010090config SOC_IMX31
91 bool
92 select CPU_V6
93 select IMX_HAVE_PLATFORM_MXC_RNGA
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +010094 select MXC_AVIC
Sascha Hauera89cf592011-09-27 13:48:02 +080095 select SMP_ON_UP if SMP
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +010096
97config SOC_IMX35
98 bool
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +010099 select ARCH_MXC_IOMUX_V3
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100100 select HAVE_EPIT
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100101 select MXC_AVIC
Denis Cariklic51bcd12014-01-10 16:40:39 +0100102 select PINCTRL_IMX35
Sascha Hauera89cf592011-09-27 13:48:02 +0800103 select SMP_ON_UP if SMP
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100104
Shawn Guoc5a0d492012-09-17 09:38:39 +0800105if ARCH_MULTI_V4T
Uwe Kleine-Könige780d232010-06-14 17:39:21 +0200106
Uwe Kleine-König07469492010-06-14 15:56:58 +0200107comment "MX1 platforms:"
Uwe Kleine-König07469492010-06-14 15:56:58 +0200108
109config MACH_SCB9328
110 bool "Synertronixx scb9328"
Uwe Kleine-Königd112f4e2010-06-22 14:50:59 +0200111 select IMX_HAVE_PLATFORM_IMX_UART
Arnd Bergmann123860e2013-06-03 15:46:53 +0200112 select SOC_IMX1
Uwe Kleine-König07469492010-06-14 15:56:58 +0200113 help
114 Say Y here if you are using a Synertronixx scb9328 board
115
Gwenhael Goavec-Merou7fc92c62011-04-29 05:21:39 +0000116config MACH_APF9328
117 bool "APF9328"
Gwenhael Goavec-Merou7a994812011-10-08 17:19:49 +0200118 select IMX_HAVE_PLATFORM_IMX_I2C
Gwenhael Goavec-Merou7fc92c62011-04-29 05:21:39 +0000119 select IMX_HAVE_PLATFORM_IMX_UART
Russell Kingb1b3f492012-10-06 17:12:25 +0100120 select SOC_IMX1
Gwenhael Goavec-Merou7fc92c62011-04-29 05:21:39 +0000121 help
122 Say Yes here if you are using the Armadeus APF9328 development board
123
Alexander Shiyan24980dc2014-07-26 13:45:28 +0400124config MACH_IMX1_DT
125 bool "Support i.MX1 platforms from device tree"
126 select SOC_IMX1
127 help
128 Include support for Freescale i.MX1 based platforms
129 using the device tree for discovery.
130
Shawn Guoc5a0d492012-09-17 09:38:39 +0800131endif
132
133if ARCH_MULTI_V5
134
Uwe Kleine-Königb6b06be2010-06-14 16:56:46 +0200135comment "MX21 platforms:"
Juergen Beisert80eedae2008-07-05 10:03:00 +0200136
Ivo Clarysse6b91edd2009-04-15 15:39:27 +0200137config MACH_MX21ADS
138 bool "MX21ADS platform"
Uwe Kleine-Königad851bf2010-11-04 17:07:48 +0100139 select IMX_HAVE_PLATFORM_IMX_FB
Uwe Kleine-König3c5227f2010-06-22 17:59:58 +0200140 select IMX_HAVE_PLATFORM_IMX_UART
Uwe Kleine-König9d3d9452010-11-05 17:26:09 +0100141 select IMX_HAVE_PLATFORM_MXC_MMC
Uwe Kleine-König1f8d7212010-06-16 11:17:45 +0200142 select IMX_HAVE_PLATFORM_MXC_NAND
Russell Kingb1b3f492012-10-06 17:12:25 +0100143 select SOC_IMX21
Ivo Clarysse6b91edd2009-04-15 15:39:27 +0200144 help
145 Include support for MX21ADS platform. This includes specific
146 configurations for the board and its peripherals.
147
Uwe Kleine-Königb6b06be2010-06-14 16:56:46 +0200148comment "MX27 platforms:"
149
Juergen Beisert80eedae2008-07-05 10:03:00 +0200150config MACH_MX27ADS
151 bool "MX27ADS platform"
Uwe Kleine-Königad851bf2010-11-04 17:07:48 +0100152 select IMX_HAVE_PLATFORM_IMX_FB
Uwe Kleine-Königc6987152010-06-16 17:25:40 +0200153 select IMX_HAVE_PLATFORM_IMX_I2C
Uwe Kleine-Königd5dac4a2010-06-23 09:36:01 +0200154 select IMX_HAVE_PLATFORM_IMX_UART
Uwe Kleine-König9d3d9452010-11-05 17:26:09 +0100155 select IMX_HAVE_PLATFORM_MXC_MMC
Uwe Kleine-König0e7a29a2010-06-16 07:35:31 +0200156 select IMX_HAVE_PLATFORM_MXC_NAND
Uwe Kleine-Königae71a562010-10-29 10:56:07 +0200157 select IMX_HAVE_PLATFORM_MXC_W1
Russell Kingb1b3f492012-10-06 17:12:25 +0100158 select SOC_IMX27
Juergen Beisert80eedae2008-07-05 10:03:00 +0200159 help
160 Include support for MX27ADS platform. This includes specific
161 configurations for the board and its peripherals.
Juergen Beisert7e5e9f52008-07-05 10:03:00 +0200162
Fabio Estevamec9be0d2009-04-16 12:45:01 -0700163config MACH_MX27_3DS
164 bool "MX27PDK platform"
Fabio Estevam96cf4232010-12-22 12:25:31 -0200165 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
Fabio Estevam8be92522010-12-07 17:14:45 -0200166 select IMX_HAVE_PLATFORM_IMX2_WDT
Fabio Estevam1abcb4c2011-06-22 09:25:25 -0300167 select IMX_HAVE_PLATFORM_IMX_FB
Fabio Estevam5885f032011-03-01 16:59:46 -0300168 select IMX_HAVE_PLATFORM_IMX_I2C
Uwe Kleine-König3f880142010-11-10 09:58:56 +0100169 select IMX_HAVE_PLATFORM_IMX_KEYPAD
Fabio Estevam688b5cb2012-07-03 15:44:57 -0300170 select IMX_HAVE_PLATFORM_IMX_SSI
Uwe Kleine-Königd5dac4a2010-06-23 09:36:01 +0200171 select IMX_HAVE_PLATFORM_IMX_UART
Fabio Estevam4c11c282012-02-15 19:36:10 -0200172 select IMX_HAVE_PLATFORM_MX2_CAMERA
Fabio Estevam96cf4232010-12-22 12:25:31 -0200173 select IMX_HAVE_PLATFORM_MXC_EHCI
Uwe Kleine-König9d3d9452010-11-05 17:26:09 +0100174 select IMX_HAVE_PLATFORM_MXC_MMC
Fabio Estevamc67a3e02011-01-03 11:16:39 -0200175 select IMX_HAVE_PLATFORM_SPI_IMX
Fabio Estevam92cb33f2011-01-10 18:17:37 -0200176 select MXC_DEBUG_BOARD
Markus Pargmann794987a2013-06-06 14:41:57 +0200177 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100178 select SOC_IMX27
Fabio Estevamec9be0d2009-04-16 12:45:01 -0700179 help
180 Include support for MX27PDK platform. This includes specific
181 configurations for the board and its peripherals.
Daniel Schaeffer8c032ec2009-06-03 17:23:54 -0400182
Javier Martin3b161e52010-07-30 10:06:01 +0200183config MACH_IMX27_VISSTRIM_M10
184 bool "Vista Silicon i.MX27 Visstrim_m10"
Uwe Kleine-König53094982011-02-28 18:04:33 +0100185 select IMX_HAVE_PLATFORM_GPIO_KEYS
Javier Martin3b161e52010-07-30 10:06:01 +0200186 select IMX_HAVE_PLATFORM_IMX_I2C
Uwe Kleine-König5658bff2011-03-18 12:24:08 +0100187 select IMX_HAVE_PLATFORM_IMX_SSI
Javier Martin3b161e52010-07-30 10:06:01 +0200188 select IMX_HAVE_PLATFORM_IMX_UART
Javier Martinf52f5a52012-02-28 17:31:51 +0100189 select IMX_HAVE_PLATFORM_MX2_CAMERA
Gaëtan Carlier3ab3a352012-09-05 13:06:15 +0200190 select IMX_HAVE_PLATFORM_MX2_EMMA
Uwe Kleine-König2eb42d52010-11-05 18:52:09 +0100191 select IMX_HAVE_PLATFORM_MXC_EHCI
Javier Martin32189132012-02-28 17:31:48 +0100192 select IMX_HAVE_PLATFORM_MXC_MMC
Javier Martinacb64642012-02-29 13:17:33 +0100193 select LEDS_GPIO_REGISTER
Russell Kingb1b3f492012-10-06 17:12:25 +0100194 select SOC_IMX27
Javier Martin3b161e52010-07-30 10:06:01 +0200195 help
196 Include support for Visstrim_m10 platform and its different variants.
197 This includes specific configurations for the board and its
198 peripherals.
199
Luotao Fu33731692009-08-06 11:19:39 +0200200config MACH_PCA100
201 bool "Phytec phyCARD-s (pca100)"
Uwe Kleine-Königbd455ed2010-11-09 17:52:14 +0100202 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
Uwe Kleine-Könige0a19612010-11-04 10:09:10 +0100203 select IMX_HAVE_PLATFORM_IMX2_WDT
Uwe Kleine-Königad851bf2010-11-04 17:07:48 +0100204 select IMX_HAVE_PLATFORM_IMX_FB
Uwe Kleine-Königc6987152010-06-16 17:25:40 +0200205 select IMX_HAVE_PLATFORM_IMX_I2C
Uwe Kleine-König4697bb922010-08-25 17:37:45 +0200206 select IMX_HAVE_PLATFORM_IMX_SSI
Uwe Kleine-Königd5dac4a2010-06-23 09:36:01 +0200207 select IMX_HAVE_PLATFORM_IMX_UART
Uwe Kleine-König2eb42d52010-11-05 18:52:09 +0100208 select IMX_HAVE_PLATFORM_MXC_EHCI
Uwe Kleine-König9d3d9452010-11-05 17:26:09 +0100209 select IMX_HAVE_PLATFORM_MXC_MMC
Uwe Kleine-König0e7a29a2010-06-16 07:35:31 +0200210 select IMX_HAVE_PLATFORM_MXC_NAND
Uwe Kleine-Königae71a562010-10-29 10:56:07 +0200211 select IMX_HAVE_PLATFORM_MXC_W1
Uwe Kleine-König7536cf92010-06-22 09:00:22 +0200212 select IMX_HAVE_PLATFORM_SPI_IMX
Markus Pargmann794987a2013-06-06 14:41:57 +0200213 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100214 select SOC_IMX27
Luotao Fu33731692009-08-06 11:19:39 +0200215 help
216 Include support for phyCARD-s (aka pca100) platform. This
217 includes specific configurations for the module and its peripherals.
218
Sascha Hauer9f0749e2012-02-28 21:57:50 +0100219config MACH_IMX27_DT
220 bool "Support i.MX27 platforms from device tree"
221 select SOC_IMX27
Sascha Hauer9f0749e2012-02-28 21:57:50 +0100222 help
223 Include support for Freescale i.MX27 based platforms
224 using the device tree for discovery
225
Holger Schurig6bbdbf22009-01-29 14:42:25 +0100226endif
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100227
Shawn Guoc5a0d492012-09-17 09:38:39 +0800228if ARCH_MULTI_V6
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100229
230comment "MX31 platforms:"
231
232config MACH_MX31ADS
233 bool "Support MX31ADS platforms"
Russell Kingb1b3f492012-10-06 17:12:25 +0100234 default y
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100235 select IMX_HAVE_PLATFORM_IMX_I2C
236 select IMX_HAVE_PLATFORM_IMX_SSI
237 select IMX_HAVE_PLATFORM_IMX_UART
Russell Kingb1b3f492012-10-06 17:12:25 +0100238 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100239 help
240 Include support for MX31ADS platform. This includes specific
241 configurations for the board and its peripherals.
242
243config MACH_MX31ADS_WM1133_EV1
244 bool "Support Wolfson Microelectronics 1133-EV1 module"
245 depends on MACH_MX31ADS
246 depends on MFD_WM8350_I2C
Arnd Bergmann69eb3832013-02-14 17:45:58 +0100247 depends on REGULATOR_WM8350 = y
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100248 help
249 Include support for the Wolfson Microelectronics 1133-EV1 PMU
250 and audio module for the MX31ADS platform.
251
252config MACH_MX31LILLY
253 bool "Support MX31 LILLY-1131 platforms (INCO startec)"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100254 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
Markus Pargmann794987a2013-06-06 14:41:57 +0200259 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100260 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100261 help
262 Include support for mx31 based LILLY1131 modules. This includes
263 specific configurations for the board and its peripherals.
264
265config MACH_MX31LITE
266 bool "Support MX31 LITEKIT (LogicPD)"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100267 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
Uwe Kleine-König47e837b2011-05-28 21:05:01 +0200274 select LEDS_GPIO_REGISTER
Markus Pargmann794987a2013-06-06 14:41:57 +0200275 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100276 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100277 help
278 Include support for MX31 LITEKIT platform. This includes specific
279 configurations for the board and its peripherals.
280
281config MACH_PCM037
282 bool "Support Phytec pcm037 (i.MX31) platforms"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100283 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
Markus Pargmann794987a2013-06-06 14:41:57 +0200292 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100293 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100294 help
295 Include support for Phytec pcm037 platform. This includes
296 specific configurations for the board and its peripherals.
297
298config 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
303 help
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.
307
308config MACH_MX31_3DS
309 bool "Support MX31PDK (3DS)"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100310 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
Fabio Estevam3ef7cf12012-05-21 16:09:06 -0300314 select IMX_HAVE_PLATFORM_IMX_SSI
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100315 select IMX_HAVE_PLATFORM_IMX_UART
316 select IMX_HAVE_PLATFORM_IPU_CORE
317 select IMX_HAVE_PLATFORM_MXC_EHCI
Fabio Estevamd093d5b2011-09-14 14:04:38 -0300318 select IMX_HAVE_PLATFORM_MXC_MMC
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100319 select IMX_HAVE_PLATFORM_MXC_NAND
320 select IMX_HAVE_PLATFORM_SPI_IMX
Russell Kingb1b3f492012-10-06 17:12:25 +0100321 select MXC_DEBUG_BOARD
Markus Pargmann794987a2013-06-06 14:41:57 +0200322 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100323 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100324 help
325 Include support for MX31PDK (3DS) platform. This includes specific
326 configurations for the board and its peripherals.
327
328config 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
332 help
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.
336
337config MACH_MX31MOBOARD
338 bool "Support mx31moboard platforms (EPFL Mobots group)"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100339 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
Philippe Rétornaz31776fb2012-01-20 18:58:23 +0100340 select IMX_HAVE_PLATFORM_IMX2_WDT
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100341 select IMX_HAVE_PLATFORM_IMX_I2C
Philippe Rétornaz2f7b9452012-05-15 13:53:52 +0200342 select IMX_HAVE_PLATFORM_IMX_SSI
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100343 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
Uwe Kleine-König47e837b2011-05-28 21:05:01 +0200348 select LEDS_GPIO_REGISTER
Markus Pargmann794987a2013-06-06 14:41:57 +0200349 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100350 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100351 help
352 Include support for mx31moboard platform. This includes specific
353 configurations for the board and its peripherals.
354
355config MACH_QONG
356 bool "Support Dave/DENX QongEVB-LITE platform"
Fabio Estevambbb43362011-09-19 10:59:46 -0300357 select IMX_HAVE_PLATFORM_IMX2_WDT
Russell Kingb1b3f492012-10-06 17:12:25 +0100358 select IMX_HAVE_PLATFORM_IMX_UART
359 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100360 help
361 Include support for Dave/DENX QongEVB-LITE platform. This includes
362 specific configurations for the board and its peripherals.
363
364config MACH_ARMADILLO5X0
365 bool "Support Atmark Armadillo-500 Development Base Board"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100366 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
Markus Pargmann794987a2013-06-06 14:41:57 +0200373 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100374 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100375 help
376 Include support for Atmark Armadillo-500 platform. This includes
377 specific configurations for the board and its peripherals.
378
379config MACH_KZM_ARM11_01
380 bool "Support KZM-ARM11-01(Kyoto Microcomputer)"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100381 select IMX_HAVE_PLATFORM_IMX_UART
Russell Kingb1b3f492012-10-06 17:12:25 +0100382 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100383 help
384 Include support for KZM-ARM11-01. This includes specific
385 configurations for the board and its peripherals.
386
387config MACH_BUG
388 bool "Support Buglabs BUGBase platform"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100389 default y
Russell Kingb1b3f492012-10-06 17:12:25 +0100390 select IMX_HAVE_PLATFORM_IMX_UART
391 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100392 help
393 Include support for BUGBase 1.3 platform. This includes specific
394 configurations for the board and its peripherals.
395
Denis 'GNUtoo' Cariklid2a37b32012-07-09 21:39:12 +0200396config MACH_IMX31_DT
397 bool "Support i.MX31 platforms from device tree"
398 select SOC_IMX31
Denis 'GNUtoo' Cariklid2a37b32012-07-09 21:39:12 +0200399 help
400 Include support for Freescale i.MX31 based platforms
401 using the device tree for discovery.
402
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100403comment "MX35 platforms:"
404
Steffen Trumtrara55a3d72013-12-18 15:10:25 +0100405config MACH_IMX35_DT
406 bool "Support i.MX35 platforms from device tree"
407 select SOC_IMX35
408 help
409 Include support for Freescale i.MX35 based platforms
410 using the device tree for discovery.
411
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100412config MACH_PCM043
413 bool "Support Phytec pcm043 (i.MX35) platforms"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100414 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
Markus Pargmann794987a2013-06-06 14:41:57 +0200424 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100425 select SOC_IMX35
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100426 help
427 Include support for Phytec pcm043 platform. This includes
428 specific configurations for the board and its peripherals.
429
430config MACH_MX35_3DS
431 bool "Support MX35PDK platform"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100432 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
433 select IMX_HAVE_PLATFORM_IMX2_WDT
Marc Kleine-Budde8e3e26a2012-04-24 17:48:18 +0200434 select IMX_HAVE_PLATFORM_IMX_FB
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100435 select IMX_HAVE_PLATFORM_IMX_I2C
436 select IMX_HAVE_PLATFORM_IMX_UART
Marc Kleine-Budde8e3e26a2012-04-24 17:48:18 +0200437 select IMX_HAVE_PLATFORM_IPU_CORE
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100438 select IMX_HAVE_PLATFORM_MXC_EHCI
439 select IMX_HAVE_PLATFORM_MXC_NAND
Benoît Thébaudeauc6fd6d12012-07-04 16:36:28 +0200440 select IMX_HAVE_PLATFORM_MXC_RTC
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100441 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
Russell Kingb1b3f492012-10-06 17:12:25 +0100442 select MXC_DEBUG_BOARD
443 select SOC_IMX35
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100444 help
445 Include support for MX35PDK platform. This includes specific
446 configurations for the board and its peripherals.
447
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100448config MACH_VPR200
449 bool "Support VPR200 platform"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100450 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
451 select IMX_HAVE_PLATFORM_GPIO_KEYS
452 select IMX_HAVE_PLATFORM_IMX2_WDT
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100453 select IMX_HAVE_PLATFORM_IMX_I2C
Russell Kingb1b3f492012-10-06 17:12:25 +0100454 select IMX_HAVE_PLATFORM_IMX_UART
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100455 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
Russell Kingb1b3f492012-10-06 17:12:25 +0100459 select SOC_IMX35
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100460 help
461 Include support for VPR200 platform. This includes specific
462 configurations for the board and its peripherals.
463
Shawn Guoc5a0d492012-09-17 09:38:39 +0800464endif
465
Fabio Estevam11b05d62015-03-10 22:40:03 -0300466comment "Device tree only"
467
Stefan Agner80648872015-05-20 00:03:52 +0200468if ARCH_MULTI_V5
469
Fabio Estevam11b05d62015-03-10 22:40:03 -0300470config SOC_IMX25
471 bool "i.MX25 support"
472 select ARCH_MXC_IOMUX_V3
473 select CPU_ARM926T
474 select MXC_AVIC
475 select PINCTRL_IMX25
476 help
477 This enables support for Freescale i.MX25 processor
478endif
479
Shawn Guoc5a0d492012-09-17 09:38:39 +0800480if ARCH_MULTI_V7
481
Stefan Agner80648872015-05-20 00:03:52 +0200482comment "Cortex-A platforms"
Sascha Hauer784a90c2011-11-07 12:36:48 +0100483
Shawn Guo50e177c2014-05-19 13:37:50 +0800484config SOC_IMX5
485 bool
Shawn Guo50e177c2014-05-19 13:37:50 +0800486 select HAVE_IMX_SRC
487 select MXC_TZIC
488
Greg Ungerer361b0a42013-10-29 15:15:54 +1000489config SOC_IMX50
490 bool "i.MX50 support"
Shawn Guof7f3d4b2013-11-16 22:25:02 +0800491 select PINCTRL_IMX50
Greg Ungerer361b0a42013-10-29 15:15:54 +1000492 select SOC_IMX5
493
494 help
495 This enables support for Freescale i.MX50 processor.
496
Shawn Guo1ecdde92014-05-19 13:47:43 +0800497config SOC_IMX51
Fabio Estevam8da4d6b2014-05-10 12:47:36 -0300498 bool "i.MX51 support"
Shawn Guo1ecdde92014-05-19 13:47:43 +0800499 select PINCTRL_IMX51
500 select SOC_IMX5
Fabio Estevam8da4d6b2014-05-10 12:47:36 -0300501 help
502 This enables support for Freescale i.MX51 processor
503
Shawn Guo442279d2012-08-12 23:21:39 +0800504config SOC_IMX53
505 bool "i.MX53 support"
Shawn Guo442279d2012-08-12 23:21:39 +0800506 select PINCTRL_IMX53
Russell Kingb1b3f492012-10-06 17:12:25 +0100507 select SOC_IMX5
Shawn Guo442279d2012-08-12 23:21:39 +0800508
Sascha Hauer784a90c2011-11-07 12:36:48 +0100509 help
Shawn Guo442279d2012-08-12 23:21:39 +0800510 This enables support for Freescale i.MX53 processor.
Shawn Guobac89d72011-10-02 15:09:11 +0800511
Shawn Guo94f890e2014-02-27 15:22:49 +0800512config SOC_IMX6
513 bool
Shawn Guo96efb442012-10-23 19:44:34 +0800514 select ARM_ERRATA_754322
Shawn Guo96efb442012-10-23 19:44:34 +0800515 select ARM_ERRATA_775420
Shawn Guobac89d72011-10-02 15:09:11 +0800516 select ARM_GIC
Anson Huange95dddb2013-03-20 19:39:42 -0400517 select HAVE_IMX_ANATOP
Shawn Guo9fbbe682011-09-06 14:39:44 +0800518 select HAVE_IMX_GPC
519 select HAVE_IMX_MMDC
Shawn Guoaec99b72013-01-11 22:08:27 +0800520 select HAVE_IMX_SRC
Dong Aishengbaa64152012-09-05 10:57:15 +0800521 select MFD_SYSCON
Russell Kinga641f3a2014-06-19 10:19:10 +0100522 select PL310_ERRATA_769419 if CACHE_L2X0
Shawn Guobac89d72011-10-02 15:09:11 +0800523
Shawn Guo94f890e2014-02-27 15:22:49 +0800524config SOC_IMX6Q
525 bool "i.MX6 Quad/DualLite support"
526 select ARM_ERRATA_764369 if SMP
527 select HAVE_ARM_SCU if SMP
528 select HAVE_ARM_TWD if SMP
Shawn Guo94f890e2014-02-27 15:22:49 +0800529 select PCI_DOMAINS if PCI
530 select PINCTRL_IMX6Q
531 select SOC_IMX6
532
Shawn Guobac89d72011-10-02 15:09:11 +0800533 help
534 This enables support for Freescale i.MX6 Quad processor.
535
Shawn Guo31a2fbf2013-05-03 11:24:47 +0800536config SOC_IMX6SL
537 bool "i.MX6 SoloLite support"
Shawn Guo31a2fbf2013-05-03 11:24:47 +0800538 select PINCTRL_IMX6SL
Shawn Guo94f890e2014-02-27 15:22:49 +0800539 select SOC_IMX6
Shawn Guo31a2fbf2013-05-03 11:24:47 +0800540
541 help
542 This enables support for Freescale i.MX6 SoloLite processor.
543
Shawn Guod9654dc2014-05-13 21:46:16 +0800544config SOC_IMX6SX
545 bool "i.MX6 SoloX support"
546 select PINCTRL_IMX6SX
547 select SOC_IMX6
548
549 help
550 This enables support for Freescale i.MX6 SoloX processor.
551
Frank Li022d0712015-07-10 02:09:41 +0800552config SOC_IMX6UL
553 bool "i.MX6 UltraLite support"
554 select PINCTRL_IMX6UL
555 select SOC_IMX6
556
557 help
558 This enables support for Freescale i.MX6 UltraLite processor.
559
Anson Huang5739b912015-05-08 01:35:55 +0800560config SOC_IMX7D
561 bool "i.MX7 Dual support"
562 select PINCTRL_IMX7D
563 select ARM_GIC
Arnd Bergmann0be5da92015-05-29 11:28:05 +0200564 select HAVE_IMX_ANATOP
565 select HAVE_IMX_MMDC
Arnd Bergmannf1858b02015-12-18 16:40:26 +0100566 select HAVE_IMX_SRC
Anson Huang5739b912015-05-08 01:35:55 +0800567 help
568 This enables support for Freescale i.MX7 Dual processor.
569
Stefan Agner80648872015-05-20 00:03:52 +0200570config SOC_LS1021A
571 bool "Freescale LS1021A support"
572 select ARM_GIC
573 select HAVE_ARM_ARCH_TIMER
574 select PCI_DOMAINS if PCI
575 select ZONE_DMA if ARM_LPAE
576 help
577 This enables support for Freescale LS1021A processor.
578
579endif
580
581comment "Cortex-A/Cortex-M asymmetric multiprocessing platforms"
582
583if ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M
584
Jingchang Lu5be913c2013-05-28 17:12:21 +0800585config SOC_VF610
586 bool "Vybrid Family VF610 support"
Stefan Agner80648872015-05-20 00:03:52 +0200587 select ARM_GIC if ARCH_MULTI_V7
Jingchang Lu5be913c2013-05-28 17:12:21 +0800588 select PINCTRL_VF610
Russell Kinga641f3a2014-06-19 10:19:10 +0100589 select PL310_ERRATA_769419 if CACHE_L2X0
Stefan Agneraf321d22015-01-21 00:12:45 +0100590 select SMP_ON_UP if SMP
Jingchang Lu5be913c2013-05-28 17:12:21 +0800591
592 help
Fabio Estevamc6891ef2015-02-28 12:47:46 -0300593 This enables support for Freescale Vybrid VF610 processor.
Jingchang Lu5be913c2013-05-28 17:12:21 +0800594
Stefan Agner2a61cba2014-09-24 18:20:10 +0200595choice
596 prompt "Clocksource for scheduler clock"
597 depends on SOC_VF610
598 default VF_USE_ARM_GLOBAL_TIMER
599
600 config VF_USE_ARM_GLOBAL_TIMER
Masahiro Yamadae3246542015-11-16 12:06:10 +0900601 bool "Use ARM Global Timer"
602 depends on ARCH_MULTI_V7
Stefan Agner2a61cba2014-09-24 18:20:10 +0200603 select ARM_GLOBAL_TIMER
604 select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
605 help
606 Use the ARM Global Timer as clocksource
607
608 config VF_USE_PIT_TIMER
609 bool "Use PIT timer"
610 select VF_PIT_TIMER
611 help
612 Use SoC Periodic Interrupt Timer (PIT) as clocksource
613
614endchoice
615
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100616endif
Shawn Guoe0557c02012-09-13 15:51:15 +0800617
618source "arch/arm/mach-imx/devices/Kconfig"
Shawn Guo3995eb82012-09-13 19:48:07 +0800619
Rob Herring21278ae2014-06-10 09:06:10 -0500620endif