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