blob: 573536f1bb739200e8a234a3a4844c5b591aa0ff [file] [log] [blame]
Rob Herring21278ae2014-06-10 09:06:10 -05001menuconfig ARCH_MXC
Stefan Agner80648872015-05-20 00:03:52 +02002 bool "Freescale i.MX family" if ARCH_MULTI_V4_V5 || ARCH_MULTI_V6_V7 || ARM_SINGLE_ARMV7M
Shawn Guoc5a0d492012-09-17 09:38:39 +08003 select ARCH_REQUIRE_GPIOLIB
Fabio Estevamf36b5942013-07-26 00:17:35 -03004 select ARM_CPU_SUSPEND if PM
Shawn Guobea5af42015-05-15 15:41:00 +08005 select CLKSRC_IMX_GPT
Shawn Guoc5a0d492012-09-17 09:38:39 +08006 select GENERIC_IRQ_CHIP
Shawn Guof7f3d4b2013-11-16 22:25:02 +08007 select PINCTRL
John Tobias5a1513f2014-01-14 06:36:47 -08008 select PM_OPP if PM
Shawn Guoa2887542013-08-13 16:59:28 +08009 select SOC_BUS
Fabio Estevam67f5b302014-02-17 14:04:17 -030010 select SRAM
Shawn Guoc5a0d492012-09-17 09:38:39 +080011 help
12 Support for Freescale MXC/iMX-based family of processors
13
Rob Herring21278ae2014-06-10 09:06:10 -050014if ARCH_MXC
Shawn Guo3995eb82012-09-13 19:48:07 +080015
Shawn Guo3995eb82012-09-13 19:48:07 +080016config MXC_TZIC
17 bool
18
19config MXC_AVIC
20 bool
21
22config MXC_DEBUG_BOARD
23 bool "Enable MXC debug board(for 3-stack)"
Stefan Agnerae4aee92015-03-13 00:36:15 +010024 depends on MACH_MX27_3DS || MACH_MX31_3DS || MACH_MX35_3DS
Shawn Guo3995eb82012-09-13 19:48:07 +080025 help
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.
33
34config HAVE_EPIT
35 bool
36
37config MXC_USE_EPIT
38 bool "Use EPIT instead of GPT"
39 depends on HAVE_EPIT
40 help
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.
45
Shawn Guo3995eb82012-09-13 19:48:07 +080046config ARCH_HAS_RNGA
47 bool
48
Anson Huange95dddb2013-03-20 19:39:42 -040049config HAVE_IMX_ANATOP
50 bool
51
Shawn Guo9fbbe682011-09-06 14:39:44 +080052config HAVE_IMX_GPC
53 bool
Philipp Zabel00eb60a82015-02-23 18:40:12 +010054 select PM_GENERIC_DOMAINS if PM
Shawn Guo9fbbe682011-09-06 14:39:44 +080055
56config HAVE_IMX_MMDC
57 bool
58
59config HAVE_IMX_SRC
Shawn Guo68b25322012-10-23 15:23:59 +080060 def_bool y if SMP
Philipp Zabel02985b92013-03-28 17:35:19 +010061 select ARCH_HAS_RESET_CONTROLLER
Shawn Guo9fbbe682011-09-06 14:39:44 +080062
Shawn Guo267dd342012-09-13 13:26:00 +080063config IMX_HAVE_IOMUX_V1
64 bool
65
66config ARCH_MXC_IOMUX_V3
67 bool
68
Uwe Kleine-Könige780d232010-06-14 17:39:21 +020069config SOC_IMX1
Uwe Kleine-Könige48ab1c2010-11-11 18:06:17 +010070 bool
Uwe Kleine-Könige780d232010-06-14 17:39:21 +020071 select CPU_ARM920T
72 select IMX_HAVE_IOMUX_V1
Sascha Hauerc7259df2010-11-05 09:37:22 +010073 select MXC_AVIC
Alexander Shiyan24980dc2014-07-26 13:45:28 +040074 select PINCTRL_IMX1
Uwe Kleine-Könige48ab1c2010-11-11 18:06:17 +010075
76config SOC_IMX21
Uwe Kleine-Könige780d232010-06-14 17:39:21 +020077 bool
Russell Kingb1b3f492012-10-06 17:12:25 +010078 select CPU_ARM926T
Uwe Kleine-Könige48ab1c2010-11-11 18:06:17 +010079 select IMX_HAVE_IOMUX_V1
Sascha Hauerc7259df2010-11-05 09:37:22 +010080 select MXC_AVIC
Uwe Kleine-Könige48ab1c2010-11-11 18:06:17 +010081
Uwe Kleine-Könige48ab1c2010-11-11 18:06:17 +010082config SOC_IMX27
83 bool
Russell Kingb1b3f492012-10-06 17:12:25 +010084 select CPU_ARM926T
Uwe Kleine-Könige48ab1c2010-11-11 18:06:17 +010085 select IMX_HAVE_IOMUX_V1
Sascha Hauerc7259df2010-11-05 09:37:22 +010086 select MXC_AVIC
Markus Pargmannacb350e2013-11-12 09:50:10 +010087 select PINCTRL_IMX27
Uwe Kleine-Könige48ab1c2010-11-11 18:06:17 +010088
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +010089config SOC_IMX31
90 bool
91 select CPU_V6
92 select IMX_HAVE_PLATFORM_MXC_RNGA
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +010093 select MXC_AVIC
Sascha Hauera89cf592011-09-27 13:48:02 +080094 select SMP_ON_UP if SMP
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +010095
96config SOC_IMX35
97 bool
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +010098 select ARCH_MXC_IOMUX_V3
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +010099 select HAVE_EPIT
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100100 select MXC_AVIC
Denis Cariklic51bcd12014-01-10 16:40:39 +0100101 select PINCTRL_IMX35
Sascha Hauera89cf592011-09-27 13:48:02 +0800102 select SMP_ON_UP if SMP
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100103
Shawn Guoc5a0d492012-09-17 09:38:39 +0800104if ARCH_MULTI_V4T
Uwe Kleine-Könige780d232010-06-14 17:39:21 +0200105
Uwe Kleine-König07469492010-06-14 15:56:58 +0200106comment "MX1 platforms:"
Uwe Kleine-König07469492010-06-14 15:56:58 +0200107
108config MACH_SCB9328
109 bool "Synertronixx scb9328"
Uwe Kleine-Königd112f4e2010-06-22 14:50:59 +0200110 select IMX_HAVE_PLATFORM_IMX_UART
Arnd Bergmann123860e2013-06-03 15:46:53 +0200111 select SOC_IMX1
Uwe Kleine-König07469492010-06-14 15:56:58 +0200112 help
113 Say Y here if you are using a Synertronixx scb9328 board
114
Gwenhael Goavec-Merou7fc92c62011-04-29 05:21:39 +0000115config MACH_APF9328
116 bool "APF9328"
Gwenhael Goavec-Merou7a994812011-10-08 17:19:49 +0200117 select IMX_HAVE_PLATFORM_IMX_I2C
Gwenhael Goavec-Merou7fc92c62011-04-29 05:21:39 +0000118 select IMX_HAVE_PLATFORM_IMX_UART
Russell Kingb1b3f492012-10-06 17:12:25 +0100119 select SOC_IMX1
Gwenhael Goavec-Merou7fc92c62011-04-29 05:21:39 +0000120 help
121 Say Yes here if you are using the Armadeus APF9328 development board
122
Alexander Shiyan24980dc2014-07-26 13:45:28 +0400123config MACH_IMX1_DT
124 bool "Support i.MX1 platforms from device tree"
125 select SOC_IMX1
126 help
127 Include support for Freescale i.MX1 based platforms
128 using the device tree for discovery.
129
Shawn Guoc5a0d492012-09-17 09:38:39 +0800130endif
131
132if ARCH_MULTI_V5
133
Uwe Kleine-Königb6b06be2010-06-14 16:56:46 +0200134comment "MX21 platforms:"
Juergen Beisert80eedae2008-07-05 10:03:00 +0200135
Ivo Clarysse6b91edd2009-04-15 15:39:27 +0200136config MACH_MX21ADS
137 bool "MX21ADS platform"
Uwe Kleine-Königad851bf2010-11-04 17:07:48 +0100138 select IMX_HAVE_PLATFORM_IMX_FB
Uwe Kleine-König3c5227f2010-06-22 17:59:58 +0200139 select IMX_HAVE_PLATFORM_IMX_UART
Uwe Kleine-König9d3d9452010-11-05 17:26:09 +0100140 select IMX_HAVE_PLATFORM_MXC_MMC
Uwe Kleine-König1f8d7212010-06-16 11:17:45 +0200141 select IMX_HAVE_PLATFORM_MXC_NAND
Russell Kingb1b3f492012-10-06 17:12:25 +0100142 select SOC_IMX21
Ivo Clarysse6b91edd2009-04-15 15:39:27 +0200143 help
144 Include support for MX21ADS platform. This includes specific
145 configurations for the board and its peripherals.
146
Uwe Kleine-Königb6b06be2010-06-14 16:56:46 +0200147comment "MX27 platforms:"
148
Juergen Beisert80eedae2008-07-05 10:03:00 +0200149config MACH_MX27ADS
150 bool "MX27ADS platform"
Uwe Kleine-Königad851bf2010-11-04 17:07:48 +0100151 select IMX_HAVE_PLATFORM_IMX_FB
Uwe Kleine-Königc6987152010-06-16 17:25:40 +0200152 select IMX_HAVE_PLATFORM_IMX_I2C
Uwe Kleine-Königd5dac4a2010-06-23 09:36:01 +0200153 select IMX_HAVE_PLATFORM_IMX_UART
Uwe Kleine-König9d3d9452010-11-05 17:26:09 +0100154 select IMX_HAVE_PLATFORM_MXC_MMC
Uwe Kleine-König0e7a29a2010-06-16 07:35:31 +0200155 select IMX_HAVE_PLATFORM_MXC_NAND
Uwe Kleine-Königae71a562010-10-29 10:56:07 +0200156 select IMX_HAVE_PLATFORM_MXC_W1
Russell Kingb1b3f492012-10-06 17:12:25 +0100157 select SOC_IMX27
Juergen Beisert80eedae2008-07-05 10:03:00 +0200158 help
159 Include support for MX27ADS platform. This includes specific
160 configurations for the board and its peripherals.
Juergen Beisert7e5e9f52008-07-05 10:03:00 +0200161
Fabio Estevamec9be0d2009-04-16 12:45:01 -0700162config MACH_MX27_3DS
163 bool "MX27PDK platform"
Fabio Estevam96cf4232010-12-22 12:25:31 -0200164 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
Fabio Estevam8be92522010-12-07 17:14:45 -0200165 select IMX_HAVE_PLATFORM_IMX2_WDT
Fabio Estevam1abcb4c2011-06-22 09:25:25 -0300166 select IMX_HAVE_PLATFORM_IMX_FB
Fabio Estevam5885f032011-03-01 16:59:46 -0300167 select IMX_HAVE_PLATFORM_IMX_I2C
Uwe Kleine-König3f880142010-11-10 09:58:56 +0100168 select IMX_HAVE_PLATFORM_IMX_KEYPAD
Fabio Estevam688b5cb2012-07-03 15:44:57 -0300169 select IMX_HAVE_PLATFORM_IMX_SSI
Uwe Kleine-Königd5dac4a2010-06-23 09:36:01 +0200170 select IMX_HAVE_PLATFORM_IMX_UART
Fabio Estevam4c11c282012-02-15 19:36:10 -0200171 select IMX_HAVE_PLATFORM_MX2_CAMERA
Fabio Estevam96cf4232010-12-22 12:25:31 -0200172 select IMX_HAVE_PLATFORM_MXC_EHCI
Uwe Kleine-König9d3d9452010-11-05 17:26:09 +0100173 select IMX_HAVE_PLATFORM_MXC_MMC
Fabio Estevamc67a3e02011-01-03 11:16:39 -0200174 select IMX_HAVE_PLATFORM_SPI_IMX
Fabio Estevam92cb33f2011-01-10 18:17:37 -0200175 select MXC_DEBUG_BOARD
Markus Pargmann794987a2013-06-06 14:41:57 +0200176 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100177 select SOC_IMX27
Fabio Estevamec9be0d2009-04-16 12:45:01 -0700178 help
179 Include support for MX27PDK platform. This includes specific
180 configurations for the board and its peripherals.
Daniel Schaeffer8c032ec2009-06-03 17:23:54 -0400181
Javier Martin3b161e52010-07-30 10:06:01 +0200182config MACH_IMX27_VISSTRIM_M10
183 bool "Vista Silicon i.MX27 Visstrim_m10"
Uwe Kleine-König53094982011-02-28 18:04:33 +0100184 select IMX_HAVE_PLATFORM_GPIO_KEYS
Javier Martin3b161e52010-07-30 10:06:01 +0200185 select IMX_HAVE_PLATFORM_IMX_I2C
Uwe Kleine-König5658bff2011-03-18 12:24:08 +0100186 select IMX_HAVE_PLATFORM_IMX_SSI
Javier Martin3b161e52010-07-30 10:06:01 +0200187 select IMX_HAVE_PLATFORM_IMX_UART
Javier Martinf52f5a52012-02-28 17:31:51 +0100188 select IMX_HAVE_PLATFORM_MX2_CAMERA
Gaëtan Carlier3ab3a352012-09-05 13:06:15 +0200189 select IMX_HAVE_PLATFORM_MX2_EMMA
Uwe Kleine-König2eb42d52010-11-05 18:52:09 +0100190 select IMX_HAVE_PLATFORM_MXC_EHCI
Javier Martin32189132012-02-28 17:31:48 +0100191 select IMX_HAVE_PLATFORM_MXC_MMC
Javier Martinacb64642012-02-29 13:17:33 +0100192 select LEDS_GPIO_REGISTER
Russell Kingb1b3f492012-10-06 17:12:25 +0100193 select SOC_IMX27
Javier Martin3b161e52010-07-30 10:06:01 +0200194 help
195 Include support for Visstrim_m10 platform and its different variants.
196 This includes specific configurations for the board and its
197 peripherals.
198
Luotao Fu33731692009-08-06 11:19:39 +0200199config MACH_PCA100
200 bool "Phytec phyCARD-s (pca100)"
Uwe Kleine-Königbd455ed2010-11-09 17:52:14 +0100201 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
Uwe Kleine-Könige0a19612010-11-04 10:09:10 +0100202 select IMX_HAVE_PLATFORM_IMX2_WDT
Uwe Kleine-Königad851bf2010-11-04 17:07:48 +0100203 select IMX_HAVE_PLATFORM_IMX_FB
Uwe Kleine-Königc6987152010-06-16 17:25:40 +0200204 select IMX_HAVE_PLATFORM_IMX_I2C
Uwe Kleine-König4697bb922010-08-25 17:37:45 +0200205 select IMX_HAVE_PLATFORM_IMX_SSI
Uwe Kleine-Königd5dac4a2010-06-23 09:36:01 +0200206 select IMX_HAVE_PLATFORM_IMX_UART
Uwe Kleine-König2eb42d52010-11-05 18:52:09 +0100207 select IMX_HAVE_PLATFORM_MXC_EHCI
Uwe Kleine-König9d3d9452010-11-05 17:26:09 +0100208 select IMX_HAVE_PLATFORM_MXC_MMC
Uwe Kleine-König0e7a29a2010-06-16 07:35:31 +0200209 select IMX_HAVE_PLATFORM_MXC_NAND
Uwe Kleine-Königae71a562010-10-29 10:56:07 +0200210 select IMX_HAVE_PLATFORM_MXC_W1
Uwe Kleine-König7536cf92010-06-22 09:00:22 +0200211 select IMX_HAVE_PLATFORM_SPI_IMX
Markus Pargmann794987a2013-06-06 14:41:57 +0200212 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100213 select SOC_IMX27
Luotao Fu33731692009-08-06 11:19:39 +0200214 help
215 Include support for phyCARD-s (aka pca100) platform. This
216 includes specific configurations for the module and its peripherals.
217
Sascha Hauer9f0749e2012-02-28 21:57:50 +0100218config MACH_IMX27_DT
219 bool "Support i.MX27 platforms from device tree"
220 select SOC_IMX27
Sascha Hauer9f0749e2012-02-28 21:57:50 +0100221 help
222 Include support for Freescale i.MX27 based platforms
223 using the device tree for discovery
224
Holger Schurig6bbdbf22009-01-29 14:42:25 +0100225endif
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100226
Shawn Guoc5a0d492012-09-17 09:38:39 +0800227if ARCH_MULTI_V6
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100228
229comment "MX31 platforms:"
230
231config MACH_MX31ADS
232 bool "Support MX31ADS platforms"
Russell Kingb1b3f492012-10-06 17:12:25 +0100233 default y
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100234 select IMX_HAVE_PLATFORM_IMX_I2C
235 select IMX_HAVE_PLATFORM_IMX_SSI
236 select IMX_HAVE_PLATFORM_IMX_UART
Russell Kingb1b3f492012-10-06 17:12:25 +0100237 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100238 help
239 Include support for MX31ADS platform. This includes specific
240 configurations for the board and its peripherals.
241
242config MACH_MX31ADS_WM1133_EV1
243 bool "Support Wolfson Microelectronics 1133-EV1 module"
244 depends on MACH_MX31ADS
245 depends on MFD_WM8350_I2C
Arnd Bergmann69eb3832013-02-14 17:45:58 +0100246 depends on REGULATOR_WM8350 = y
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100247 help
248 Include support for the Wolfson Microelectronics 1133-EV1 PMU
249 and audio module for the MX31ADS platform.
250
251config MACH_MX31LILLY
252 bool "Support MX31 LILLY-1131 platforms (INCO startec)"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100253 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
Markus Pargmann794987a2013-06-06 14:41:57 +0200258 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100259 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100260 help
261 Include support for mx31 based LILLY1131 modules. This includes
262 specific configurations for the board and its peripherals.
263
264config MACH_MX31LITE
265 bool "Support MX31 LITEKIT (LogicPD)"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100266 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
Uwe Kleine-König47e837b2011-05-28 21:05:01 +0200273 select LEDS_GPIO_REGISTER
Markus Pargmann794987a2013-06-06 14:41:57 +0200274 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100275 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100276 help
277 Include support for MX31 LITEKIT platform. This includes specific
278 configurations for the board and its peripherals.
279
280config MACH_PCM037
281 bool "Support Phytec pcm037 (i.MX31) platforms"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100282 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
Markus Pargmann794987a2013-06-06 14:41:57 +0200291 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100292 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100293 help
294 Include support for Phytec pcm037 platform. This includes
295 specific configurations for the board and its peripherals.
296
297config 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
302 help
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.
306
307config MACH_MX31_3DS
308 bool "Support MX31PDK (3DS)"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100309 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
Fabio Estevam3ef7cf12012-05-21 16:09:06 -0300313 select IMX_HAVE_PLATFORM_IMX_SSI
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100314 select IMX_HAVE_PLATFORM_IMX_UART
315 select IMX_HAVE_PLATFORM_IPU_CORE
316 select IMX_HAVE_PLATFORM_MXC_EHCI
Fabio Estevamd093d5b2011-09-14 14:04:38 -0300317 select IMX_HAVE_PLATFORM_MXC_MMC
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100318 select IMX_HAVE_PLATFORM_MXC_NAND
319 select IMX_HAVE_PLATFORM_SPI_IMX
Russell Kingb1b3f492012-10-06 17:12:25 +0100320 select MXC_DEBUG_BOARD
Markus Pargmann794987a2013-06-06 14:41:57 +0200321 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100322 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100323 help
324 Include support for MX31PDK (3DS) platform. This includes specific
325 configurations for the board and its peripherals.
326
327config 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
331 help
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.
335
336config MACH_MX31MOBOARD
337 bool "Support mx31moboard platforms (EPFL Mobots group)"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100338 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
Philippe Rétornaz31776fb2012-01-20 18:58:23 +0100339 select IMX_HAVE_PLATFORM_IMX2_WDT
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100340 select IMX_HAVE_PLATFORM_IMX_I2C
Philippe Rétornaz2f7b9452012-05-15 13:53:52 +0200341 select IMX_HAVE_PLATFORM_IMX_SSI
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100342 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
Uwe Kleine-König47e837b2011-05-28 21:05:01 +0200347 select LEDS_GPIO_REGISTER
Markus Pargmann794987a2013-06-06 14:41:57 +0200348 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100349 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100350 help
351 Include support for mx31moboard platform. This includes specific
352 configurations for the board and its peripherals.
353
354config MACH_QONG
355 bool "Support Dave/DENX QongEVB-LITE platform"
Fabio Estevambbb43362011-09-19 10:59:46 -0300356 select IMX_HAVE_PLATFORM_IMX2_WDT
Russell Kingb1b3f492012-10-06 17:12:25 +0100357 select IMX_HAVE_PLATFORM_IMX_UART
358 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100359 help
360 Include support for Dave/DENX QongEVB-LITE platform. This includes
361 specific configurations for the board and its peripherals.
362
363config MACH_ARMADILLO5X0
364 bool "Support Atmark Armadillo-500 Development Base Board"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100365 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
Markus Pargmann794987a2013-06-06 14:41:57 +0200372 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100373 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100374 help
375 Include support for Atmark Armadillo-500 platform. This includes
376 specific configurations for the board and its peripherals.
377
378config MACH_KZM_ARM11_01
379 bool "Support KZM-ARM11-01(Kyoto Microcomputer)"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100380 select IMX_HAVE_PLATFORM_IMX_UART
Russell Kingb1b3f492012-10-06 17:12:25 +0100381 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100382 help
383 Include support for KZM-ARM11-01. This includes specific
384 configurations for the board and its peripherals.
385
386config MACH_BUG
387 bool "Support Buglabs BUGBase platform"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100388 default y
Russell Kingb1b3f492012-10-06 17:12:25 +0100389 select IMX_HAVE_PLATFORM_IMX_UART
390 select SOC_IMX31
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100391 help
392 Include support for BUGBase 1.3 platform. This includes specific
393 configurations for the board and its peripherals.
394
Denis 'GNUtoo' Cariklid2a37b32012-07-09 21:39:12 +0200395config MACH_IMX31_DT
396 bool "Support i.MX31 platforms from device tree"
397 select SOC_IMX31
Denis 'GNUtoo' Cariklid2a37b32012-07-09 21:39:12 +0200398 help
399 Include support for Freescale i.MX31 based platforms
400 using the device tree for discovery.
401
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100402comment "MX35 platforms:"
403
Steffen Trumtrara55a3d72013-12-18 15:10:25 +0100404config MACH_IMX35_DT
405 bool "Support i.MX35 platforms from device tree"
406 select SOC_IMX35
407 help
408 Include support for Freescale i.MX35 based platforms
409 using the device tree for discovery.
410
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100411config MACH_PCM043
412 bool "Support Phytec pcm043 (i.MX35) platforms"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100413 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
Markus Pargmann794987a2013-06-06 14:41:57 +0200423 select USB_ULPI_VIEWPORT if USB_ULPI
Russell Kingb1b3f492012-10-06 17:12:25 +0100424 select SOC_IMX35
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100425 help
426 Include support for Phytec pcm043 platform. This includes
427 specific configurations for the board and its peripherals.
428
429config MACH_MX35_3DS
430 bool "Support MX35PDK platform"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100431 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
432 select IMX_HAVE_PLATFORM_IMX2_WDT
Marc Kleine-Budde8e3e26a2012-04-24 17:48:18 +0200433 select IMX_HAVE_PLATFORM_IMX_FB
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100434 select IMX_HAVE_PLATFORM_IMX_I2C
435 select IMX_HAVE_PLATFORM_IMX_UART
Marc Kleine-Budde8e3e26a2012-04-24 17:48:18 +0200436 select IMX_HAVE_PLATFORM_IPU_CORE
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100437 select IMX_HAVE_PLATFORM_MXC_EHCI
438 select IMX_HAVE_PLATFORM_MXC_NAND
Benoît Thébaudeauc6fd6d12012-07-04 16:36:28 +0200439 select IMX_HAVE_PLATFORM_MXC_RTC
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100440 select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
Russell Kingb1b3f492012-10-06 17:12:25 +0100441 select MXC_DEBUG_BOARD
442 select SOC_IMX35
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100443 help
444 Include support for MX35PDK platform. This includes specific
445 configurations for the board and its peripherals.
446
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100447config MACH_VPR200
448 bool "Support VPR200 platform"
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100449 select IMX_HAVE_PLATFORM_FSL_USB2_UDC
450 select IMX_HAVE_PLATFORM_GPIO_KEYS
451 select IMX_HAVE_PLATFORM_IMX2_WDT
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100452 select IMX_HAVE_PLATFORM_IMX_I2C
Russell Kingb1b3f492012-10-06 17:12:25 +0100453 select IMX_HAVE_PLATFORM_IMX_UART
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100454 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
Russell Kingb1b3f492012-10-06 17:12:25 +0100458 select SOC_IMX35
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100459 help
460 Include support for VPR200 platform. This includes specific
461 configurations for the board and its peripherals.
462
Shawn Guoc5a0d492012-09-17 09:38:39 +0800463endif
464
Fabio Estevam11b05d62015-03-10 22:40:03 -0300465comment "Device tree only"
466
Stefan Agner80648872015-05-20 00:03:52 +0200467if ARCH_MULTI_V5
468
Fabio Estevam11b05d62015-03-10 22:40:03 -0300469config SOC_IMX25
470 bool "i.MX25 support"
471 select ARCH_MXC_IOMUX_V3
472 select CPU_ARM926T
473 select MXC_AVIC
474 select PINCTRL_IMX25
475 help
476 This enables support for Freescale i.MX25 processor
477endif
478
Shawn Guoc5a0d492012-09-17 09:38:39 +0800479if ARCH_MULTI_V7
480
Stefan Agner80648872015-05-20 00:03:52 +0200481comment "Cortex-A platforms"
Sascha Hauer784a90c2011-11-07 12:36:48 +0100482
Shawn Guo50e177c2014-05-19 13:37:50 +0800483config SOC_IMX5
484 bool
Shawn Guo50e177c2014-05-19 13:37:50 +0800485 select HAVE_IMX_SRC
486 select MXC_TZIC
487
Greg Ungerer361b0a42013-10-29 15:15:54 +1000488config SOC_IMX50
489 bool "i.MX50 support"
Shawn Guof7f3d4b2013-11-16 22:25:02 +0800490 select PINCTRL_IMX50
Greg Ungerer361b0a42013-10-29 15:15:54 +1000491 select SOC_IMX5
492
493 help
494 This enables support for Freescale i.MX50 processor.
495
Shawn Guo1ecdde92014-05-19 13:47:43 +0800496config SOC_IMX51
Fabio Estevam8da4d6b2014-05-10 12:47:36 -0300497 bool "i.MX51 support"
Shawn Guo1ecdde92014-05-19 13:47:43 +0800498 select PINCTRL_IMX51
499 select SOC_IMX5
Fabio Estevam8da4d6b2014-05-10 12:47:36 -0300500 help
501 This enables support for Freescale i.MX51 processor
502
Shawn Guo442279d2012-08-12 23:21:39 +0800503config SOC_IMX53
504 bool "i.MX53 support"
Shawn Guo442279d2012-08-12 23:21:39 +0800505 select PINCTRL_IMX53
Russell Kingb1b3f492012-10-06 17:12:25 +0100506 select SOC_IMX5
Shawn Guo442279d2012-08-12 23:21:39 +0800507
Sascha Hauer784a90c2011-11-07 12:36:48 +0100508 help
Shawn Guo442279d2012-08-12 23:21:39 +0800509 This enables support for Freescale i.MX53 processor.
Shawn Guobac89d72011-10-02 15:09:11 +0800510
Shawn Guo94f890e2014-02-27 15:22:49 +0800511config SOC_IMX6
512 bool
Shawn Guo96efb442012-10-23 19:44:34 +0800513 select ARM_ERRATA_754322
Shawn Guo96efb442012-10-23 19:44:34 +0800514 select ARM_ERRATA_775420
Shawn Guobac89d72011-10-02 15:09:11 +0800515 select ARM_GIC
Anson Huange95dddb2013-03-20 19:39:42 -0400516 select HAVE_IMX_ANATOP
Shawn Guo9fbbe682011-09-06 14:39:44 +0800517 select HAVE_IMX_GPC
518 select HAVE_IMX_MMDC
Shawn Guoaec99b72013-01-11 22:08:27 +0800519 select HAVE_IMX_SRC
Dong Aishengbaa64152012-09-05 10:57:15 +0800520 select MFD_SYSCON
Russell Kinga641f3a2014-06-19 10:19:10 +0100521 select PL310_ERRATA_769419 if CACHE_L2X0
Shawn Guobac89d72011-10-02 15:09:11 +0800522
Shawn Guo94f890e2014-02-27 15:22:49 +0800523config SOC_IMX6Q
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
Shawn Guo94f890e2014-02-27 15:22:49 +0800528 select PCI_DOMAINS if PCI
529 select PINCTRL_IMX6Q
530 select SOC_IMX6
531
Shawn Guobac89d72011-10-02 15:09:11 +0800532 help
533 This enables support for Freescale i.MX6 Quad processor.
534
Shawn Guo31a2fbf2013-05-03 11:24:47 +0800535config SOC_IMX6SL
536 bool "i.MX6 SoloLite support"
Shawn Guo31a2fbf2013-05-03 11:24:47 +0800537 select PINCTRL_IMX6SL
Shawn Guo94f890e2014-02-27 15:22:49 +0800538 select SOC_IMX6
Shawn Guo31a2fbf2013-05-03 11:24:47 +0800539
540 help
541 This enables support for Freescale i.MX6 SoloLite processor.
542
Shawn Guod9654dc2014-05-13 21:46:16 +0800543config SOC_IMX6SX
544 bool "i.MX6 SoloX support"
545 select PINCTRL_IMX6SX
546 select SOC_IMX6
547
548 help
549 This enables support for Freescale i.MX6 SoloX processor.
550
Anson Huang5739b912015-05-08 01:35:55 +0800551config SOC_IMX7D
552 bool "i.MX7 Dual support"
553 select PINCTRL_IMX7D
554 select ARM_GIC
Arnd Bergmann0be5da92015-05-29 11:28:05 +0200555 select HAVE_IMX_ANATOP
556 select HAVE_IMX_MMDC
Anson Huang5739b912015-05-08 01:35:55 +0800557 help
558 This enables support for Freescale i.MX7 Dual processor.
559
Stefan Agner80648872015-05-20 00:03:52 +0200560config SOC_LS1021A
561 bool "Freescale LS1021A support"
562 select ARM_GIC
563 select HAVE_ARM_ARCH_TIMER
564 select PCI_DOMAINS if PCI
565 select ZONE_DMA if ARM_LPAE
566 help
567 This enables support for Freescale LS1021A processor.
568
569endif
570
571comment "Cortex-A/Cortex-M asymmetric multiprocessing platforms"
572
573if ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M
574
Jingchang Lu5be913c2013-05-28 17:12:21 +0800575config SOC_VF610
576 bool "Vybrid Family VF610 support"
Stefan Agner80648872015-05-20 00:03:52 +0200577 select ARM_GIC if ARCH_MULTI_V7
Jingchang Lu5be913c2013-05-28 17:12:21 +0800578 select PINCTRL_VF610
Russell Kinga641f3a2014-06-19 10:19:10 +0100579 select PL310_ERRATA_769419 if CACHE_L2X0
Stefan Agneraf321d22015-01-21 00:12:45 +0100580 select SMP_ON_UP if SMP
Jingchang Lu5be913c2013-05-28 17:12:21 +0800581
582 help
Fabio Estevamc6891ef2015-02-28 12:47:46 -0300583 This enables support for Freescale Vybrid VF610 processor.
Jingchang Lu5be913c2013-05-28 17:12:21 +0800584
Stefan Agner2a61cba2014-09-24 18:20:10 +0200585choice
586 prompt "Clocksource for scheduler clock"
587 depends on SOC_VF610
588 default VF_USE_ARM_GLOBAL_TIMER
589
590 config VF_USE_ARM_GLOBAL_TIMER
Stefan Agner80648872015-05-20 00:03:52 +0200591 bool "Use ARM Global Timer" if ARCH_MULTI_V7
Stefan Agner2a61cba2014-09-24 18:20:10 +0200592 select ARM_GLOBAL_TIMER
593 select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
594 help
595 Use the ARM Global Timer as clocksource
596
597 config VF_USE_PIT_TIMER
598 bool "Use PIT timer"
599 select VF_PIT_TIMER
600 help
601 Use SoC Periodic Interrupt Timer (PIT) as clocksource
602
603endchoice
604
Uwe Kleine-König27ad4bf2011-03-17 09:40:29 +0100605endif
Shawn Guoe0557c02012-09-13 15:51:15 +0800606
607source "arch/arm/mach-imx/devices/Kconfig"
Shawn Guo3995eb82012-09-13 19:48:07 +0800608
Rob Herring21278ae2014-06-10 09:06:10 -0500609endif