1# arch/arm/mach-exynos/Kconfig
2#
3# Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
4#		http://www.samsung.com/
5#
6# Licensed under GPLv2
7
8# Configuration options for the EXYNOS4
9
10if ARCH_EXYNOS
11
12menu "SAMSUNG EXYNOS SoCs Support"
13
14config ARCH_EXYNOS4
15	bool "SAMSUNG EXYNOS4"
16	default y
17	select HAVE_SMP
18	select MIGHT_HAVE_CACHE_L2X0
19	help
20	  Samsung EXYNOS4 SoCs based systems
21
22config ARCH_EXYNOS5
23	bool "SAMSUNG EXYNOS5"
24	select HAVE_SMP
25	help
26	  Samsung EXYNOS5 (Cortex-A15) SoC based systems
27
28comment "EXYNOS SoCs"
29
30config CPU_EXYNOS4210
31	bool "SAMSUNG EXYNOS4210"
32	default y
33	depends on ARCH_EXYNOS4
34	select SAMSUNG_DMADEV
35	select ARM_CPU_SUSPEND if PM
36	select S5P_PM if PM
37	select S5P_SLEEP if PM
38	select PM_GENERIC_DOMAINS
39	help
40	  Enable EXYNOS4210 CPU support
41
42config SOC_EXYNOS4212
43	bool "SAMSUNG EXYNOS4212"
44	default y
45	depends on ARCH_EXYNOS4
46	select SAMSUNG_DMADEV
47	select S5P_PM if PM
48	select S5P_SLEEP if PM
49	help
50	  Enable EXYNOS4212 SoC support
51
52config SOC_EXYNOS4412
53	bool "SAMSUNG EXYNOS4412"
54	default y
55	depends on ARCH_EXYNOS4
56	select SAMSUNG_DMADEV
57	help
58	  Enable EXYNOS4412 SoC support
59
60config SOC_EXYNOS5250
61	bool "SAMSUNG EXYNOS5250"
62	default y
63	depends on ARCH_EXYNOS5
64	help
65	  Enable EXYNOS5250 SoC support
66
67config EXYNOS4_MCT
68	bool
69	default y
70	help
71	  Use MCT (Multi Core Timer) as kernel timers
72
73config EXYNOS4_DEV_DMA
74	bool
75	help
76	  Compile in amba device definitions for DMA controller
77
78config EXYNOS4_DEV_AHCI
79	bool
80	help
81	  Compile in platform device definitions for AHCI
82
83config EXYNOS4_SETUP_FIMD0
84	bool
85	help
86	  Common setup code for FIMD0.
87
88config EXYNOS4_DEV_SYSMMU
89	bool
90	help
91	  Common setup code for SYSTEM MMU in EXYNOS4
92
93config EXYNOS4_DEV_DWMCI
94	bool
95	help
96	  Compile in platform device definitions for DWMCI
97
98config EXYNOS4_DEV_USB_OHCI
99	bool
100	help
101	  Compile in platform device definition for USB OHCI
102
103config EXYNOS4_SETUP_I2C1
104	bool
105	help
106	  Common setup code for i2c bus 1.
107
108config EXYNOS4_SETUP_I2C2
109	bool
110	help
111	  Common setup code for i2c bus 2.
112
113config EXYNOS4_SETUP_I2C3
114	bool
115	help
116	  Common setup code for i2c bus 3.
117
118config EXYNOS4_SETUP_I2C4
119	bool
120	help
121	  Common setup code for i2c bus 4.
122
123config EXYNOS4_SETUP_I2C5
124	bool
125	help
126	  Common setup code for i2c bus 5.
127
128config EXYNOS4_SETUP_I2C6
129	bool
130	help
131	  Common setup code for i2c bus 6.
132
133config EXYNOS4_SETUP_I2C7
134	bool
135	help
136	  Common setup code for i2c bus 7.
137
138config EXYNOS4_SETUP_KEYPAD
139	bool
140	help
141	  Common setup code for keypad.
142
143config EXYNOS4_SETUP_SDHCI
144	bool
145	select EXYNOS4_SETUP_SDHCI_GPIO
146	help
147	  Internal helper functions for EXYNOS4 based SDHCI systems.
148
149config EXYNOS4_SETUP_SDHCI_GPIO
150	bool
151	help
152	  Common setup code for SDHCI gpio.
153
154config EXYNOS4_SETUP_FIMC
155	bool
156	help
157	  Common setup code for the camera interfaces.
158
159config EXYNOS4_SETUP_USB_PHY
160	bool
161	help
162	  Common setup code for USB PHY controller
163
164config EXYNOS4_SETUP_SPI
165	bool
166	help
167	  Common setup code for SPI GPIO configurations.
168
169# machine support
170
171if ARCH_EXYNOS4
172
173comment "EXYNOS4210 Boards"
174
175config MACH_SMDKC210
176	bool "SMDKC210"
177	select MACH_SMDKV310
178	help
179	  Machine support for Samsung SMDKC210
180
181config MACH_SMDKV310
182	bool "SMDKV310"
183	select CPU_EXYNOS4210
184	select S5P_DEV_FIMD0
185	select S3C_DEV_RTC
186	select S3C_DEV_WDT
187	select S3C_DEV_I2C1
188	select S5P_DEV_FIMC0
189	select S5P_DEV_FIMC1
190	select S5P_DEV_FIMC2
191	select S5P_DEV_FIMC3
192	select S5P_DEV_G2D
193	select S5P_DEV_I2C_HDMIPHY
194	select S5P_DEV_JPEG
195	select S5P_DEV_MFC
196	select S5P_DEV_TV
197	select S5P_DEV_USB_EHCI
198	select S3C_DEV_HSMMC
199	select S3C_DEV_HSMMC1
200	select S3C_DEV_HSMMC2
201	select S3C_DEV_HSMMC3
202	select SAMSUNG_DEV_BACKLIGHT
203	select EXYNOS4_DEV_AHCI
204	select SAMSUNG_DEV_KEYPAD
205	select EXYNOS4_DEV_DMA
206	select SAMSUNG_DEV_PWM
207	select EXYNOS4_DEV_USB_OHCI
208	select EXYNOS4_DEV_SYSMMU
209	select EXYNOS4_SETUP_FIMD0
210	select EXYNOS4_SETUP_I2C1
211	select EXYNOS4_SETUP_KEYPAD
212	select EXYNOS4_SETUP_SDHCI
213	select EXYNOS4_SETUP_USB_PHY
214	help
215	  Machine support for Samsung SMDKV310
216
217config MACH_ARMLEX4210
218	bool "ARMLEX4210"
219	select CPU_EXYNOS4210
220	select S3C_DEV_RTC
221	select S3C_DEV_WDT
222	select S3C_DEV_HSMMC
223	select S3C_DEV_HSMMC2
224	select S3C_DEV_HSMMC3
225	select EXYNOS4_DEV_AHCI
226	select EXYNOS4_DEV_DMA
227	select EXYNOS4_DEV_SYSMMU
228	select EXYNOS4_SETUP_SDHCI
229	help
230	  Machine support for Samsung ARMLEX4210 based on EXYNOS4210
231
232config MACH_UNIVERSAL_C210
233	bool "Mobile UNIVERSAL_C210 Board"
234	select CPU_EXYNOS4210
235	select S5P_HRT
236	select CLKSRC_MMIO
237	select HAVE_SCHED_CLOCK
238	select S5P_GPIO_INT
239	select S5P_DEV_FIMC0
240	select S5P_DEV_FIMC1
241	select S5P_DEV_FIMC2
242	select S5P_DEV_FIMC3
243	select S5P_DEV_G2D
244	select S5P_DEV_CSIS0
245	select S5P_DEV_JPEG
246	select S5P_DEV_FIMD0
247	select S3C_DEV_HSMMC
248	select S3C_DEV_HSMMC2
249	select S3C_DEV_HSMMC3
250	select S3C_DEV_I2C1
251	select S3C_DEV_I2C3
252	select S3C_DEV_I2C5
253	select S5P_DEV_I2C_HDMIPHY
254	select S5P_DEV_MFC
255	select S5P_DEV_ONENAND
256	select S5P_DEV_TV
257	select EXYNOS4_DEV_DMA
258	select EXYNOS4_SETUP_FIMD0
259	select EXYNOS4_SETUP_I2C1
260	select EXYNOS4_SETUP_I2C3
261	select EXYNOS4_SETUP_I2C5
262	select EXYNOS4_SETUP_SDHCI
263	select EXYNOS4_SETUP_FIMC
264	select S5P_SETUP_MIPIPHY
265	help
266	  Machine support for Samsung Mobile Universal S5PC210 Reference
267	  Board.
268
269config MACH_NURI
270	bool "Mobile NURI Board"
271	select CPU_EXYNOS4210
272	select S5P_GPIO_INT
273	select S3C_DEV_WDT
274	select S3C_DEV_RTC
275	select S5P_DEV_FIMD0
276	select S3C_DEV_HSMMC
277	select S3C_DEV_HSMMC2
278	select S3C_DEV_HSMMC3
279	select S3C_DEV_I2C1
280	select S3C_DEV_I2C3
281	select S3C_DEV_I2C5
282	select S3C_DEV_I2C6
283	select S5P_DEV_CSIS0
284	select S5P_DEV_JPEG
285	select S5P_DEV_FIMC0
286	select S5P_DEV_FIMC1
287	select S5P_DEV_FIMC2
288	select S5P_DEV_FIMC3
289	select S5P_DEV_G2D
290	select S5P_DEV_MFC
291	select S5P_DEV_USB_EHCI
292	select S5P_SETUP_MIPIPHY
293	select EXYNOS4_DEV_DMA
294	select EXYNOS4_SETUP_FIMC
295	select EXYNOS4_SETUP_FIMD0
296	select EXYNOS4_SETUP_I2C1
297	select EXYNOS4_SETUP_I2C3
298	select EXYNOS4_SETUP_I2C5
299	select EXYNOS4_SETUP_I2C6
300	select EXYNOS4_SETUP_SDHCI
301	select EXYNOS4_SETUP_USB_PHY
302	select S5P_SETUP_MIPIPHY
303	select SAMSUNG_DEV_PWM
304	select SAMSUNG_DEV_ADC
305	help
306	  Machine support for Samsung Mobile NURI Board.
307
308config MACH_ORIGEN
309	bool "ORIGEN"
310	select CPU_EXYNOS4210
311	select S3C_DEV_RTC
312	select S3C_DEV_WDT
313	select S3C_DEV_HSMMC
314	select S3C_DEV_HSMMC2
315	select S5P_DEV_FIMC0
316	select S5P_DEV_FIMC1
317	select S5P_DEV_FIMC2
318	select S5P_DEV_FIMC3
319	select S5P_DEV_FIMD0
320	select S5P_DEV_G2D
321	select S5P_DEV_I2C_HDMIPHY
322	select S5P_DEV_JPEG
323	select S5P_DEV_MFC
324	select S5P_DEV_TV
325	select S5P_DEV_USB_EHCI
326	select SAMSUNG_DEV_BACKLIGHT
327	select SAMSUNG_DEV_PWM
328	select EXYNOS4_DEV_DMA
329	select EXYNOS4_DEV_USB_OHCI
330	select EXYNOS4_SETUP_FIMD0
331	select EXYNOS4_SETUP_SDHCI
332	select EXYNOS4_SETUP_USB_PHY
333	help
334	  Machine support for ORIGEN based on Samsung EXYNOS4210
335
336comment "EXYNOS4212 Boards"
337
338config MACH_SMDK4212
339	bool "SMDK4212"
340	select SOC_EXYNOS4212
341	select S3C_DEV_HSMMC2
342	select S3C_DEV_HSMMC3
343	select S3C_DEV_I2C1
344	select S3C_DEV_I2C3
345	select S3C_DEV_I2C7
346	select S3C_DEV_RTC
347	select S3C_DEV_WDT
348	select SAMSUNG_DEV_BACKLIGHT
349	select SAMSUNG_DEV_KEYPAD
350	select SAMSUNG_DEV_PWM
351	select EXYNOS4_DEV_DMA
352	select EXYNOS4_SETUP_I2C1
353	select EXYNOS4_SETUP_I2C3
354	select EXYNOS4_SETUP_I2C7
355	select EXYNOS4_SETUP_KEYPAD
356	select EXYNOS4_SETUP_SDHCI
357	help
358	  Machine support for Samsung SMDK4212
359
360comment "EXYNOS4412 Boards"
361
362config MACH_SMDK4412
363	bool "SMDK4412"
364	select SOC_EXYNOS4412
365	select MACH_SMDK4212
366	help
367	  Machine support for Samsung SMDK4412
368endif
369
370comment "Flattened Device Tree based board for EXYNOS SoCs"
371
372config MACH_EXYNOS4_DT
373	bool "Samsung Exynos4 Machine using device tree"
374	depends on ARCH_EXYNOS4
375	select CPU_EXYNOS4210
376	select USE_OF
377	select ARM_AMBA
378	select HAVE_SAMSUNG_KEYPAD if INPUT_KEYBOARD
379	help
380	  Machine support for Samsung Exynos4 machine with device tree enabled.
381	  Select this if a fdt blob is available for the Exynos4 SoC based board.
382	  Note: This is under development and not all peripherals can be supported
383	  with this machine file.
384
385config MACH_EXYNOS5_DT
386	bool "SAMSUNG EXYNOS5 Machine using device tree"
387	depends on ARCH_EXYNOS5
388	select SOC_EXYNOS5250
389	select USE_OF
390	select ARM_AMBA
391	help
392	  Machine support for Samsung Exynos4 machine with device tree enabled.
393	  Select this if a fdt blob is available for the EXYNOS4 SoC based board.
394
395if ARCH_EXYNOS4
396
397comment "Configuration for HSMMC 8-bit bus width"
398
399config EXYNOS4_SDHCI_CH0_8BIT
400	bool "Channel 0 with 8-bit bus"
401	help
402	  Support HSMMC Channel 0 8-bit bus.
403	  If selected, Channel 1 is disabled.
404
405config EXYNOS4_SDHCI_CH2_8BIT
406	bool "Channel 2 with 8-bit bus"
407	help
408	  Support HSMMC Channel 2 8-bit bus.
409	  If selected, Channel 3 is disabled.
410endif
411
412endmenu
413
414endif
415