Merge tag 'trace-printf-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/trace...
[drm/drm-misc.git] / arch / arm / mach-imx / Kconfig
blobe4fe059cd861411a442bcde33933fd74a8766fa2
1 # SPDX-License-Identifier: GPL-2.0-only
2 menuconfig ARCH_MXC
3         bool "Freescale i.MX family"
4         depends on ((ARCH_MULTI_V4T || ARCH_MULTI_V5) && CPU_LITTLE_ENDIAN) || \
5                 ARCH_MULTI_V6_V7 || ARM_SINGLE_ARMV7M
6         select CLKSRC_IMX_GPT
7         select GENERIC_IRQ_CHIP
8         select GPIOLIB
9         select PM_OPP if PM
10         select SOC_BUS
11         select SRAM
12         help
13           Support for Freescale MXC/iMX-based family of processors
15 if ARCH_MXC
17 config MXC_TZIC
18         bool
20 config MXC_AVIC
21         bool
23 config HAVE_IMX_ANATOP
24         bool
26 config HAVE_IMX_GPC
27         bool
28         select PM_GENERIC_DOMAINS if PM
30 config HAVE_IMX_MMDC
31         bool
33 config HAVE_IMX_SRC
34         def_bool y if SMP
35         select ARCH_HAS_RESET_CONTROLLER
37 if ARCH_MULTI_V6
39 comment "ARM1136 platforms"
41 config SOC_IMX31
42         bool "i.MX31 support"
43         select CPU_V6
44         select MXC_AVIC
45         help
46           This enables support for Freescale i.MX31 processor
48 config SOC_IMX35
49         bool "i.MX35 support"
50         select MXC_AVIC
51         help
52           This enables support for Freescale i.MX35 processor
54 endif
56 if ARCH_MULTI_V4T
58 config SOC_IMX1
59         bool "i.MX1 support"
60         select CPU_ARM920T
61         select MXC_AVIC
62         help
63           This enables support for Freescale i.MX1 processor
65 endif
67 if ARCH_MULTI_V5
69 config SOC_IMX25
70         bool "i.MX25 support"
71         select CPU_ARM926T
72         select MXC_AVIC
73         help
74           This enables support for Freescale i.MX25 processor
76 config SOC_IMX27
77         bool "i.MX27 support"
78         select CPU_ARM926T
79         select MXC_AVIC
80         help
81           This enables support for Freescale i.MX27 processor
83 endif
85 if ARCH_MULTI_V7
87 comment "Cortex-A platforms"
89 config SOC_IMX5
90         bool
91         select HAVE_IMX_SRC
92         select MXC_TZIC
94 config SOC_IMX50
95         bool "i.MX50 support"
96         select SOC_IMX5
98         help
99           This enables support for Freescale i.MX50 processor.
101 config SOC_IMX51
102         bool "i.MX51 support"
103         select SOC_IMX5
104         help
105           This enables support for Freescale i.MX51 processor
107 config SOC_IMX53
108         bool "i.MX53 support"
109         select SOC_IMX5
111         help
112           This enables support for Freescale i.MX53 processor.
114 config SOC_IMX6
115         bool
116         select ARM_CPU_SUSPEND if (PM || CPU_IDLE)
117         select ARM_GIC
118         select HAVE_IMX_ANATOP
119         select HAVE_IMX_GPC
120         select HAVE_IMX_MMDC
121         select HAVE_IMX_SRC
122         select MFD_SYSCON
123         select PL310_ERRATA_769419 if CACHE_L2X0
125 config SOC_IMX6Q
126         bool "i.MX6 Quad/DualLite support"
127         select ARM_ERRATA_764369 if SMP
128         select ARM_ERRATA_754322
129         select ARM_ERRATA_775420
130         select HAVE_ARM_SCU if SMP
131         select HAVE_ARM_TWD
132         select SOC_IMX6
134         help
135           This enables support for Freescale i.MX6 Quad processor.
137 config SOC_IMX6SL
138         bool "i.MX6 SoloLite support"
139         select ARM_ERRATA_754322
140         select ARM_ERRATA_775420
141         select SOC_IMX6
143         help
144           This enables support for Freescale i.MX6 SoloLite processor.
146 config SOC_IMX6SLL
147         bool "i.MX6 SoloLiteLite support"
148         select ARM_ERRATA_754322
149         select ARM_ERRATA_775420
150         select SOC_IMX6
152         help
153           This enables support for Freescale i.MX6 SoloLiteLite processor.
155 config SOC_IMX6SX
156         bool "i.MX6 SoloX support"
157         select ARM_ERRATA_754322
158         select ARM_ERRATA_775420
159         select SOC_IMX6
161         help
162           This enables support for Freescale i.MX6 SoloX processor.
164 config SOC_IMX6UL
165         bool "i.MX6 UltraLite support"
166         select SOC_IMX6
167         select ARM_ERRATA_814220
169         help
170           This enables support for Freescale i.MX6 UltraLite processor.
172 config SOC_LS1021A
173         bool "Freescale LS1021A support"
174         select ARM_GIC
175         select HAVE_ARM_ARCH_TIMER
176         select ZONE_DMA if ARM_LPAE
177         help
178           This enables support for Freescale LS1021A processor.
180 endif
182 if ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M
184 comment "Cortex-A/Cortex-M asymmetric multiprocessing platforms"
186 config SOC_IMX7D_CA7
187         bool
188         select ARM_GIC
189         select HAVE_ARM_ARCH_TIMER
190         select HAVE_IMX_ANATOP
191         select HAVE_IMX_MMDC
192         select HAVE_IMX_SRC
193         select IMX_GPCV2
195 config SOC_IMX7D_CM4
196         bool
197         select ARMV7M_SYSTICK
199 config SOC_IMX7D
200         bool "i.MX7 Dual support"
201         select SOC_IMX7D_CA7 if ARCH_MULTI_V7
202         select SOC_IMX7D_CM4 if ARM_SINGLE_ARMV7M
203         select ARM_ERRATA_814220 if ARCH_MULTI_V7
204         help
205           This enables support for Freescale i.MX7 Dual processor.
207 config SOC_IMX7ULP
208         bool "i.MX7ULP support"
209         select CLKSRC_IMX_TPM
210         select SOC_IMX7D_CA7 if ARCH_MULTI_V7
211         select SOC_IMX7D_CM4 if ARM_SINGLE_ARMV7M
212         help
213           This enables support for Freescale i.MX7 Ultra Low Power processor.
215 config SOC_IMXRT
216         bool "i.MXRT support"
217         depends on ARM_SINGLE_ARMV7M
218         select ARMV7M_SYSTICK if ARM_SINGLE_ARMV7M
219         help
220           This enables support for Freescale i.MXRT Crossover processor.
222 config SOC_VF610
223         bool "Vybrid Family VF610 support"
224         select ARM_GIC if ARCH_MULTI_V7
226         help
227           This enables support for Freescale Vybrid VF610 processor.
229 choice
230         prompt "Clocksource for scheduler clock"
231         depends on SOC_VF610
232         default VF_USE_ARM_GLOBAL_TIMER
234         config VF_USE_ARM_GLOBAL_TIMER
235                 bool "Use ARM Global Timer"
236                 depends on ARCH_MULTI_V7
237                 select ARM_GLOBAL_TIMER
238                 select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
239                 help
240                   Use the ARM Global Timer as clocksource
242         config VF_USE_PIT_TIMER
243                 bool "Use PIT timer"
244                 select VF_PIT_TIMER
245                 help
246                   Use SoC Periodic Interrupt Timer (PIT) as clocksource
248 endchoice
250 endif
252 endif