Linux-libre 5.3.12-gnu
[librecmc/linux-libre.git] / arch / arm / mach-omap2 / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "TI OMAP/AM/DM/DRA Family"
3         depends on ARCH_MULTI_V6 || ARCH_MULTI_V7
4
5 config ARCH_OMAP2
6         bool "TI OMAP2"
7         depends on ARCH_MULTI_V6
8         select ARCH_OMAP2PLUS
9         select CPU_V6
10         select SOC_HAS_OMAP2_SDRC
11
12 config ARCH_OMAP3
13         bool "TI OMAP3"
14         depends on ARCH_MULTI_V7
15         select ARCH_OMAP2PLUS
16         select ARM_CPU_SUSPEND if PM
17         select OMAP_INTERCONNECT
18         select PM_OPP if PM
19         select PM if CPU_IDLE
20         select SOC_HAS_OMAP2_SDRC
21         select ARM_ERRATA_430973
22
23 config ARCH_OMAP4
24         bool "TI OMAP4"
25         depends on ARCH_MULTI_V7
26         select ARCH_OMAP2PLUS
27         select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP
28         select ARM_CPU_SUSPEND if PM
29         select ARM_ERRATA_720789
30         select ARM_GIC
31         select HAVE_ARM_SCU if SMP
32         select HAVE_ARM_TWD if SMP
33         select OMAP_INTERCONNECT
34         select OMAP_INTERCONNECT_BARRIER
35         select PL310_ERRATA_588369 if CACHE_L2X0
36         select PL310_ERRATA_727915 if CACHE_L2X0
37         select PM_OPP if PM
38         select PM if CPU_IDLE
39         select ARM_ERRATA_754322
40         select ARM_ERRATA_775420
41         select OMAP_INTERCONNECT
42
43 config SOC_OMAP5
44         bool "TI OMAP5"
45         depends on ARCH_MULTI_V7
46         select ARCH_OMAP2PLUS
47         select ARM_CPU_SUSPEND if PM
48         select ARM_GIC
49         select HAVE_ARM_SCU if SMP
50         select HAVE_ARM_ARCH_TIMER
51         select ARM_ERRATA_798181 if SMP
52         select OMAP_INTERCONNECT
53         select OMAP_INTERCONNECT_BARRIER
54         select PM_OPP if PM
55         select ZONE_DMA if ARM_LPAE
56
57 config SOC_AM33XX
58         bool "TI AM33XX"
59         depends on ARCH_MULTI_V7
60         select ARCH_OMAP2PLUS
61         select ARM_CPU_SUSPEND if PM
62
63 config SOC_AM43XX
64         bool "TI AM43x"
65         depends on ARCH_MULTI_V7
66         select ARCH_OMAP2PLUS
67         select ARM_GIC
68         select MACH_OMAP_GENERIC
69         select MIGHT_HAVE_CACHE_L2X0
70         select HAVE_ARM_SCU
71         select GENERIC_CLOCKEVENTS_BROADCAST
72         select HAVE_ARM_TWD
73         select ARM_ERRATA_754322
74         select ARM_ERRATA_775420
75         select OMAP_INTERCONNECT
76         select ARM_CPU_SUSPEND if PM
77
78 config SOC_DRA7XX
79         bool "TI DRA7XX"
80         depends on ARCH_MULTI_V7
81         select ARCH_OMAP2PLUS
82         select ARM_CPU_SUSPEND if PM
83         select ARM_GIC
84         select HAVE_ARM_SCU if SMP
85         select HAVE_ARM_ARCH_TIMER
86         select IRQ_CROSSBAR
87         select ARM_ERRATA_798181 if SMP
88         select OMAP_INTERCONNECT
89         select OMAP_INTERCONNECT_BARRIER
90         select PM_OPP if PM
91         select ZONE_DMA if ARM_LPAE
92         select PINCTRL_TI_IODELAY if OF && PINCTRL
93
94 config ARCH_OMAP2PLUS
95         bool
96         select ARCH_HAS_BANDGAP
97         select ARCH_HAS_HOLES_MEMORYMODEL
98         select ARCH_OMAP
99         select CLKSRC_MMIO
100         select GENERIC_IRQ_CHIP
101         select GPIOLIB
102         select MACH_OMAP_GENERIC
103         select MEMORY
104         select MFD_SYSCON
105         select OMAP_DM_TIMER
106         select OMAP_GPMC
107         select PINCTRL
108         select SOC_BUS
109         select TI_SYSC
110         select OMAP_IRQCHIP
111         select CLKSRC_TI_32K
112         help
113           Systems based on OMAP2, OMAP3, OMAP4 or OMAP5
114
115 config OMAP_INTERCONNECT_BARRIER
116         bool
117         select ARM_HEAVY_MB
118         
119
120 if ARCH_OMAP2PLUS
121
122 menu "TI OMAP2/3/4 Specific Features"
123
124 config ARCH_OMAP2PLUS_TYPICAL
125         bool "Typical OMAP configuration"
126         default y
127         select AEABI
128         select HIGHMEM
129         select I2C
130         select I2C_OMAP
131         select MENELAUS if ARCH_OMAP2
132         select NEON if CPU_V7
133         select PM
134         select REGULATOR
135         select REGULATOR_FIXED_VOLTAGE
136         select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4
137         select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4
138         select VFP
139         help
140           Compile a kernel suitable for booting most boards
141
142 config SOC_HAS_OMAP2_SDRC
143         bool "OMAP2 SDRAM Controller support"
144
145 config SOC_HAS_REALTIME_COUNTER
146         bool "Real time free running counter"
147         depends on SOC_OMAP5 || SOC_DRA7XX
148         default y
149
150 comment "OMAP Core Type"
151         depends on ARCH_OMAP2
152
153 config SOC_OMAP2420
154         bool "OMAP2420 support"
155         depends on ARCH_OMAP2
156         default y
157         select OMAP_DM_TIMER
158         select SOC_HAS_OMAP2_SDRC
159
160 config SOC_OMAP2430
161         bool "OMAP2430 support"
162         depends on ARCH_OMAP2
163         default y
164         select SOC_HAS_OMAP2_SDRC
165
166 config SOC_OMAP3430
167         bool "OMAP3430 support"
168         depends on ARCH_OMAP3
169         default y
170         select SOC_HAS_OMAP2_SDRC
171
172 config SOC_TI81XX
173         bool "TI81XX support"
174         depends on ARCH_OMAP3
175         default y
176
177 config OMAP_PACKAGE_CBC
178        bool
179
180 config OMAP_PACKAGE_CBB
181        bool
182
183 config OMAP_PACKAGE_CUS
184        bool
185
186 config OMAP_PACKAGE_CBP
187        bool
188
189 comment "OMAP Legacy Platform Data Board Type"
190         depends on ARCH_OMAP2PLUS
191
192 config MACH_OMAP_GENERIC
193         bool
194
195 config MACH_OMAP2_TUSB6010
196         bool
197         depends on ARCH_OMAP2 && SOC_OMAP2420
198         default y if MACH_NOKIA_N8X0
199
200 config MACH_OMAP3517EVM
201         bool "OMAP3517/ AM3517 EVM board"
202         depends on ARCH_OMAP3
203         default y
204
205 config MACH_OMAP3_PANDORA
206         bool "OMAP3 Pandora"
207         depends on ARCH_OMAP3
208         default y
209         select OMAP_PACKAGE_CBB
210
211 config MACH_NOKIA_N810
212        bool
213
214 config MACH_NOKIA_N810_WIMAX
215        bool
216
217 config MACH_NOKIA_N8X0
218         bool "Nokia N800/N810"
219         depends on SOC_OMAP2420
220         default y
221         select MACH_NOKIA_N810
222         select MACH_NOKIA_N810_WIMAX
223
224 config OMAP3_SDRC_AC_TIMING
225         bool "Enable SDRC AC timing register changes"
226         depends on ARCH_OMAP3
227         help
228           If you know that none of your system initiators will attempt to
229           access SDRAM during CORE DVFS, select Y here.  This should boost
230           SDRAM performance at lower CORE OPPs.  There are relatively few
231           users who will wish to say yes at this point - almost everyone will
232           wish to say no.  Selecting yes without understanding what is
233           going on could result in system crashes;
234
235 endmenu
236
237 endif
238
239 config OMAP5_ERRATA_801819
240         bool "Errata 801819: An eviction from L1 data cache might stall indefinitely"
241         depends on SOC_OMAP5 || SOC_DRA7XX
242         help
243           A livelock can occur in the L2 cache arbitration that might prevent
244           a snoop from completing. Under certain conditions this can cause the
245           system to deadlock.
246
247 endmenu