1 # SPDX-License-Identifier: GPL-2.0-only
3 bool "Freescale i.MX family"
4 depends on ARCH_MULTI_V4_V5 || ARCH_MULTI_V6_V7 || ARM_SINGLE_ARMV7M
5 select ARCH_SUPPORTS_BIG_ENDIAN
7 select GENERIC_IRQ_CHIP
14 Support for Freescale MXC/iMX-based family of processors
24 config HAVE_IMX_ANATOP
29 select PM_GENERIC_DOMAINS if PM
36 select ARCH_HAS_RESET_CONTROLLER
40 comment "ARM1136 platforms"
47 This enables support for Freescale i.MX31 processor
54 This enables support for Freescale i.MX35 processor
66 This enables support for Freescale i.MX1 processor
78 This enables support for Freescale i.MX25 processor
86 This enables support for Freescale i.MX27 processor
92 comment "Cortex-A platforms"
100 bool "i.MX50 support"
105 This enables support for Freescale i.MX50 processor.
108 bool "i.MX51 support"
112 This enables support for Freescale i.MX51 processor
115 bool "i.MX53 support"
120 This enables support for Freescale i.MX53 processor.
124 select ARM_CPU_SUSPEND if (PM || CPU_IDLE)
126 select HAVE_IMX_ANATOP
131 select PL310_ERRATA_769419 if CACHE_L2X0
134 bool "i.MX6 Quad/DualLite support"
135 select ARM_ERRATA_764369 if SMP
136 select ARM_ERRATA_754322
137 select ARM_ERRATA_775420
138 select HAVE_ARM_SCU if SMP
144 This enables support for Freescale i.MX6 Quad processor.
147 bool "i.MX6 SoloLite support"
148 select ARM_ERRATA_754322
149 select ARM_ERRATA_775420
150 select PINCTRL_IMX6SL
154 This enables support for Freescale i.MX6 SoloLite processor.
157 bool "i.MX6 SoloLiteLite support"
158 select ARM_ERRATA_754322
159 select ARM_ERRATA_775420
160 select PINCTRL_IMX6SLL
164 This enables support for Freescale i.MX6 SoloLiteLite processor.
167 bool "i.MX6 SoloX support"
168 select ARM_ERRATA_754322
169 select ARM_ERRATA_775420
170 select PINCTRL_IMX6SX
174 This enables support for Freescale i.MX6 SoloX processor.
177 bool "i.MX6 UltraLite support"
178 select PINCTRL_IMX6UL
180 select ARM_ERRATA_814220
183 This enables support for Freescale i.MX6 UltraLite processor.
186 bool "Freescale LS1021A support"
188 select HAVE_ARM_ARCH_TIMER
189 select ZONE_DMA if ARM_LPAE
191 This enables support for Freescale LS1021A processor.
195 if ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M
197 comment "Cortex-A/Cortex-M asymmetric multiprocessing platforms"
202 select HAVE_ARM_ARCH_TIMER
203 select HAVE_IMX_ANATOP
210 select ARMV7M_SYSTICK
213 bool "i.MX7 Dual support"
215 select SOC_IMX7D_CA7 if ARCH_MULTI_V7
216 select SOC_IMX7D_CM4 if ARM_SINGLE_ARMV7M
217 select ARM_ERRATA_814220 if ARCH_MULTI_V7
219 This enables support for Freescale i.MX7 Dual processor.
222 bool "i.MX7ULP support"
223 select CLKSRC_IMX_TPM
224 select PINCTRL_IMX7ULP
225 select SOC_IMX7D_CA7 if ARCH_MULTI_V7
226 select SOC_IMX7D_CM4 if ARM_SINGLE_ARMV7M
228 This enables support for Freescale i.MX7 Ultra Low Power processor.
231 bool "Vybrid Family VF610 support"
232 select ARM_GIC if ARCH_MULTI_V7
236 This enables support for Freescale Vybrid VF610 processor.
239 prompt "Clocksource for scheduler clock"
241 default VF_USE_ARM_GLOBAL_TIMER
243 config VF_USE_ARM_GLOBAL_TIMER
244 bool "Use ARM Global Timer"
245 depends on ARCH_MULTI_V7
246 select ARM_GLOBAL_TIMER
247 select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
249 Use the ARM Global Timer as clocksource
251 config VF_USE_PIT_TIMER
255 Use SoC Periodic Interrupt Timer (PIT) as clocksource